我正在用OpenCV做图像拼接,在那里我从不同的位置拍摄一个平面场景的照片,并试图组成一个全景图。我已经修改了缝合示例以满足我的需要。openCV拼接管道的问题是,它假设相机是纯旋转的,这对我来说不是这样。当拍摄的照片与场景完全正交时(没有相机旋转,只有平移),结果相当好,但当两者都有时,相机旋转和平移的结果并不令人满意。
我能够计算摄像机位置之间的单应性,这是可以做到的,因为场景是平面的,但我不知道下一步是什么。我的想法是以这样的方式使用单应性来消除图像的失真,相机正交面对平面,然后应用拼接。这样做的问题是,我不知道特征点的真实位置。我该怎么做呢?有没有其他我可以尝试获得更好的拼接效果的平面场景与任意相机移动?
发布于 2016-09-02 12:49:02
opencv拼接代码的工作原理是假设平移为零。因此,如果平移在一个范围内,它将工作得很好。否则,它将拒绝遥远的图像。如果你想使用平移图像集,你需要使用分解同形算法,它会给出非零的平移和旋转。但对于扭曲和混合,opencv仅使用摄影机参数的旋转。所以你需要设计一种全新的非旋转拼接方法,也许你可以研究一下微软的光合作用工作。我不确定,但它确实只适用于翻译后的图像。
https://stackoverflow.com/questions/17790954
复制相似问题