如何在不降低c ++或opencv图像质量的情况下调整图像大小

时间:2015-10-17 05:49:06

标签: c++ image opencv

  • 我正在开展一个项目,为此我需要扩展图像。

  • 我已经尝试过OpenCv库的 re size 功能来重新调整大小。但是图像质量会降低。

  • 假设我有136x136大小的图像,我想以相同的质量将其大小调整为209x209。我该怎么办?

1 个答案:

答案 0 :(得分:3)

正如评论中所建议的那样,无法增加图像的大小并在像素之间生成新信息。所有调整大小的方法都涉及原始信息之间的某种插值。

如果查看OpenCV documentation for the resize function,您会看到以下选项:

  • INTER_NEAREST - 最近邻插值
  • INTER_LINEAR - 双线性插值(默认使用)
  • INTER_AREA - 使用像素区域关系重新采样。它可能是图像抽取的首选方法,因为它可以提供无莫尔条纹的结果。但是当图像被缩放时,它类似于INTER_NEAREST方法。
  • INTER_CUBIC - 4x4像素邻域的双三次插值
  • INTER_LANCZOS4 - 8x8像素邻域的Lanczos插值

您可能会发现INTER_CUBIC或INTER_LANCZOS4生成的图像质量更高"。