【问题标题】:How to scale JPEG image down so that text is clear as possible?如何缩小JPEG图像以使文本尽可能清晰?
【发布时间】:2010-05-06 11:42:07
【问题描述】:

我有一些 JPEG 图像,我需要将其缩小到原始大小的 80% 左右。原始图像尺寸约为 700px × 1000px。图像包含一些计算机生成的文本,可能还有一些图形(类似于您在公司 Word 文档中找到的内容)。

如何缩放图像以使文本尽可能清晰?目前我们正在使用双三次插值缩小图像,但这会使文本模糊不清。

【问题讨论】:

  • 与缩放算法无关:我想知道你为什么对文本使用 JPEG。还要记住,无论您如何缩放图像,文本周围已经存在伪影,并且在重新压缩后会得到新的伪影——这肯定不会提高可读性。
  • 我们已经有一大堆这样的 JPEG,我们不想重新生成它们。
  • 在这里不要争论 Joey(当然 JPEG 不是最好的文本图像格式),但质疑现状是没有帮助的......另外,如果说图像还包含图像(来自扫描杂志,比如说)JPEG 可能确实是最好的单一图像格式(考虑文件大小作为约束)。 (更好的两部分方法是将透明 png 与图像顶部的文本叠加起来作为慢跑,但这需要各种预处理和后处理......)

标签: algorithm image-processing jpeg image-scaling


【解决方案1】:

两个选项:

  1. 使用不同的重采样算法。 Lanczos 为您提供更模糊的结果。

  2. 您可以使用高级 JPEG 库,将 8x8 块重新采样为 6x6 像素。

【讨论】:

  • 我会调查 Lanczos。您知道与双三次相比它的性能密集程度如何吗?
  • 是的,您最多需要 25 个样本而不是 4 个,因此成本更高,但由于您有固定的调整大小,您可以预先计算所有不同子位置的样本重量,它应该像 JPEG 解码一样计算密集。
【解决方案2】:

如果您没有设置为 80%,您可以尝试从 http://www.ijg.org/ 获取和构建 djpeg,因为它可以将您的 jpeg 解压缩到 6/8ths (75%) 或 7/8ths (87.5%) 大小和文本质量还是不错的:

Original

7/8

3/4

(所以决定在内联显示图像时缩放图像)

可能有一种类似的缩放算法,但这是一个简单的现成解决方案。

【讨论】:

    【解决方案3】:

    缩小规模总是有损失,但这又取决于你的权衡。

    1. jpeg 图像产生模糊和伪像是正常的,因此建议您第一次生成正确大小的图像。
    2. Lanczos 是一个不错的解决方案,但您需要权衡取舍
    3. 如果它只是文本并且您担心它,您可以尝试对重新采样的图像进行膨胀过滤。这将纠正一些模糊,但也可能影响图形。如果你能忍受它,那就太好了。或者,如果您可以识别文本区域,则可以在这些区域上应用膨胀。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-09-14
      • 2013-03-25
      • 1970-01-01
      • 2013-07-26
      • 2013-06-04
      • 1970-01-01
      • 2011-10-18
      相关资源
      最近更新 更多