5

我处于提供相对低分辨率图像的位置(通过 API,无法获得更高分辨率的图像)并且需要生成高分辨率图像。

我看过PIL,它对一切都很好……除了放大图像。

它具有常见的调整大小算法

  • 最近的邻居
  • 双线性
  • 双三次
  • 抗锯齿

我想使用分形调整大小(根据杰夫关于编码恐怖的帖子),但可惜,PIL 不支持这种调整大小。

进一步的谷歌搜索也没有产生提供分形图像大小调整的替代库。

这样的事情是否存在,或者我真的必须屈服并编写自己的分形调整算法?

我不是专家,但从我目前的角度来看,这看起来像是一条非常陡峭的学习曲线:(

如果不存在这样的库,也许您有一些建议可以在哪里学习分形压缩算法?

4

3 回答 3

9

有算法,你肯定不会在 Python 中找到它们。首先,您可以阅读这篇论文

Daniel Glasner、Shai Bagon 和 Michal Irani,“单一图像的超分辨率”,IEEE 计算机视觉国际会议论文集,日本京都,2009 年。

它是非常先进的,高度复杂的,并且产生了有希望的结果。如果你曾经把它变成一个 python 实现,请将它发布给公众 :)

于 2009-11-17T17:09:27.660 回答
2

基于分形的图像缩放仍然很不寻常,并且还没有找到一种公认的最佳算法。恐怕您还不会在标准图像处理库中找到它。

它也并非总是比双三次更可取。它可能具有某些类型的图像不希望出现的伪影。对我来说,杰夫的示例图像在鼻子右侧等锐利边缘周围看起来有点奇怪和不自然。当然,对于“更好”的某些值来说更好,但我不会将它一揽子应用到我的所有图像上。

(其他“高级”放大技术也是如此,包括更为人所知和更广泛实施的Lanczos/Sinc方法。)

于 2009-11-17T18:48:42.613 回答
1

使用 Residual Dense Networks 查看此解决方案: https ://github.com/idealo/image-super-resolution

良好的文档和相当容易实现。他们甚至有 docker builds 和 google collab notebooks 可用。查看文档

于 2021-01-21T20:59:10.020 回答