【问题标题】:Feature detection in OpenCV to merge two imagesOpenCV中的特征检测以合并两个图像
【发布时间】:2014-05-03 14:30:18
【问题描述】:

是否有可能通过在两个图像中搜索 OpenCV 中的相同特征来合并两个图像? 我的图像总是包含太大而无法在一个帧中捕获的纸张,因此我需要拍摄两个或更多帧 - 图像被捕获以便有一些重叠区域,请参阅:

顶图:http://i.imgur.com/0tvGVKG.jpg

下图:http://i.imgur.com/nmlO4gL.jpg

想法:将特征限制为仅向上/向下移动,而不是向右移动等。更重要的是,两个图像中两个相同特征之间的所有向量的长度必须或多或少相同,因为该区域是重叠的. OpenCV 也只需要查看图片一的最底部和图片二的最顶部即可找到重叠的特征。所有其他领域都不感兴趣...

编辑:好的,我终于找到了一些关于这个的来源,答案中有一些很好的链接:how to find overlapping region between images in opencv?

【问题讨论】:

    标签: java opencv image-processing feature-detection


    【解决方案1】:

    是的,您发布的链接问题是要走的路。本地功能可能不适用于您的案例(纸张),如果不是,您可能应该做一种行扫描仪,将一个图像的几行与另一个图像的行进行比较,直到行比较完成超过某个阈值的相似度。基本上找到图像应该相交的位置。

    对于 Java 图像拼接,您可以查看以下 OpenCV 替代方案:BoofCV

    或者这个专用的拼接库:Hugin

    在最坏的情况下,您可以检查他们如何进行拼接并自己编写一个更简单的版本。

    【讨论】:

    • 问题是,OpenCV 的拼接 API 没有 Java 绑定 :( 而且我在 Java 中肯定需要它 :( 行扫描也是一个好主意,但我想我觉得很难d 需要有一定的阈值来覆盖保险(概率模型),因为第二张图像肯定是捕获的有点不同/旋转、倾斜、不同的照明等)..
    • 是的,这是真的,我在答案中放置了一些替代方案。
    • 谢谢。不知道 BoofCV,看起来也不错,所以我会记住这一点。 Hugin 看起来也不错 - 我需要检查它是否也可以在 Android 下运行... :) 编辑:啊,我以为 Hugin 是一个库,但实际上它是一个完整的运行程序,我可能可以通过 API 访问它,但不是然后是安卓:(
    猜你喜欢
    • 1970-01-01
    • 2023-03-09
    • 2012-12-16
    • 2013-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-11
    相关资源
    最近更新 更多