【问题标题】:compare two images with low quality [closed]比较两个低质量的图像[关闭]
【发布时间】:2013-07-28 19:38:27
【问题描述】:

我正在研究一种算法来提取具有不同质量的两张图像之间的差异,例如,您有一个由设计师创建的 photoshop 文件,然后您使用某些设备将其打印出来,然后您已对其进行扫描并将其保存为.bmp 文件。 主要问题是我们如何比较这两个图像? 不可能两个像素一个像素地进行比较,因为在扫描版本中,许多对象都发生了变化,例如线条变得更粗。 我的想法是在两张图像中找到任何形状,然后根据位置和其他形状特征进行比较,但主要问题是在低质量图像中比较难以比较。因为在低质量中我们有噪音,并且在消除了一些形状的噪音之后会迷路。例如,当我使用打开和关闭或形态过滤器时,我会丢失一些字符,例如“i Q O 0”或其他形状。您的意见是什么?

【问题讨论】:

  • 如果正在研究这个算法,你应该已经有了一些结果。告诉我们,你做了什么。
  • 确定我会上传结果。

标签: c# image opencv compare emgucv


【解决方案1】:

你有 image1 和 image2 必须比较。在两个图像中通过霍夫变换找到角然后通过角注册两个图像。你可以使用findhomogrphy()。现在这两个图像的大小相同。在最后你可以使用matchTemplate() 用于查找两个图像之间的差异。

【讨论】:

  • 更多详情请使用this链接。
  • 非常感谢让我继续努力,这对我来说似乎很有用。 :)
【解决方案2】:

@Mostafa Sataki 的建议听起来不错。另一种方法是按照建议对齐图像,然后使用相似度度量,例如MSE or PSNR

另一种可能性是尝试从两张图片中match keypoints,看看它们是否是同一张图片。

【讨论】:

  • 表示感谢的正确方式是投票给答案。
猜你喜欢
  • 2021-12-31
  • 2016-10-30
  • 1970-01-01
  • 1970-01-01
  • 2011-11-24
  • 2019-09-29
  • 2012-11-25
  • 2020-05-09
  • 1970-01-01
相关资源
最近更新 更多