opencv或imagemagick用于突出显示差异

时间:2012-03-30 18:34:25

标签: image opencv imagemagick

我正在开展一个项目,在这个项目中,我需要强调一对扫描的文本图像之间的区别。

示例图片为herehere

我正在构建基于HTML,JS的webapp。 我发现openCV确实支持突出显示2个图像之间的差异。 我也看到了imageMagick也有这样的支持。 openCV是否支持自动注册图像? 是否有openCV的JS模块? 哪一个更适合我的目的?

2 个答案:

答案 0 :(得分:2)

1。简单的方式:

假设图像完美对齐并且类似地照亮:从一个像素逐个减去一个图像,然后对结果进行阈值处理,滤除嘈杂的斑点,并选择最大的图像。适合学校项目

2。有点复杂: 对齐图像,然后找到统一照明的方法,然后应用简单的方法。 如何对齐:

  • 在两个图像中查找文本区域,因为它比文件颜色更暗。
  • 找到它的角落
  • 使用getPerspectiveTransform()查找图像之间的转换。
  • warpPerspective()一张图片到另一张图片。

注册两个图像的另一种方法是通过特征匹配。它在OpenCV中得到了广泛的支持。 findHomography()将估计来自更大匹配点集的两个图像之间的姿势。

3。典型答案: 对齐图像。 使用OCR引擎将其转换为文本。 比较两张图片中的文字。

答案 1 :(得分:1)

嗯,除了vasile提供的大力帮助外,您还需要网络应用程序答案。 为了使其在服务器中运行,您可能需要一个文件上载表单,以及来自服务器的应用算法的答案。根据您拥有的服务器限制,有几种方法可以执行此操作。如果可以运行命令行参数,则可能需要在opencv中实现突出显示算法,并将两个输入文件传递给程序的输出文件。应使用php脚本上传文件,调用命令行程序,并将结果输出给用户。 另一种方法可能是在Web容器中使用java和JavaCV,例如Apache Tomcat。

祝你好运, 丹尼尔