我处于提供相对低分辨率图像的位置(通过API,无法获得更高分辨率的图像),并且需要生成高分辨率图像。
我已经看了PIL,这对于所有事情都很棒......除了放大图片外。
它有共同的resizing algorithms:
我想使用Fractal Resizing(根据jeff's post on coding horror),但唉,PIL不支持这种调整大小。
进一步的Google搜索不会产生任何替代库来提供分形图像调整大小。
是否存在这样的事情,或者我真的不得不扣下并编写自己的分形调整算法?
我不是专家,但从我目前的观点来看,这看起来像一条相当陡峭的学习曲线:(
如果不存在这样的库,也许你有一些建议去哪里学习分形压缩算法?
答案 0 :(得分:9)
有算法,你绝对不会在Python中找到它们。首先,您可以使用此paper:
Daniel Glasner,Shai Bagon和Michal Irani,“单一形象的超级决议”,载于IEEE国际计算机视觉会议论文集,日本京都,2009年。
这是非常先进的技术,非常复杂,并且产生了有希望的结果。如果您将它变成python实现,请将其发布给公众:)
答案 1 :(得分:2)
基于分形的图像缩放仍然非常不寻常,并且尚未确定为一种接受最佳算法。我担心你不会在标准图像处理库中找到它。
它也不总是优于双三次方。它可能具有对于某些类型的图像而言不合需要的伪像。对我来说,杰夫的示例图像在尖锐的边缘周围看起来有点奇怪和不自然,就像鼻子的右手边一样。对于某些“更好”的值更好,当然,但我不会将它应用于我的所有图像。
(其他'高级'升级技术也是这种情况,包括更为人熟知且更广泛实施的Lanczos/Sinc方法。)
答案 2 :(得分:1)
使用残差密集网络查看此解决方案: https://github.com/idealo/image-super-resolution
良好的文档并且相当容易实现。他们甚至可以使用 docker builds 和 google collab notebooks。请参阅docs