OpenCV透视问题 我目前正在尝试在Eclipse中实现一个基本的图像拼接C++(OpenCV)代码。特征检测部分对SURF特征显示了很好的结果。但是,当我尝试将这两个图像扭曲在一起时,我只得到一半的图像作为输出。我到处都试图找到解决办法,但都没有用。我甚至试着抵消单应矩阵,就像这个答案一样。到目前为止,一切都无济于事

OpenCV透视问题 我目前正在尝试在Eclipse中实现一个基本的图像拼接C++(OpenCV)代码。特征检测部分对SURF特征显示了很好的结果。但是,当我尝试将这两个图像扭曲在一起时,我只得到一半的图像作为输出。我到处都试图找到解决办法,但都没有用。我甚至试着抵消单应矩阵,就像这个答案一样。到目前为止,一切都无济于事,c++,image,image-processing,opencv,image-stitching,C++,Image,Image Processing,Opencv,Image Stitching,我将在评论中附加输出图像,因为我没有足够的信誉点 对于特征检测和单应性,我使用了这里的精确代码 然后我在给定的代码之后添加了下面的代码 Mat result; warpPerspective(img_object,result,H, Size(2*img_object.cols,img_object.rows)); Mat half(result,Rect(0,0,img_scene.cols,img_scene.rows)); img_scene.copyTo(half); imshow(

我将在评论中附加输出图像,因为我没有足够的信誉点

对于特征检测和单应性,我使用了这里的精确代码

然后我在给定的代码之后添加了下面的代码

Mat result;
warpPerspective(img_object,result,H, Size(2*img_object.cols,img_object.rows));
Mat half(result,Rect(0,0,img_scene.cols,img_scene.rows));
img_scene.copyTo(half);

imshow( "Warped Image", result);

我对这方面还不太熟悉,只是想把这些东西拼凑起来。因此,如果出现一些基本错误,我深表歉意。

如果您只是尝试将这些片段组合在一起,请尝试内置的OpenCV图像缝合器类:

我在这里发现了一个相关问题,并实现了所提供的附加代码。成功了

作为参考,我编写的编辑代码是

Mat result;
warpPerspective(img_scene, result, H, Size(img_scene.cols*2, img_scene.rows*2), INTER_CUBIC);
Mat final(Size(img_scene.cols + img_object.cols, img_scene.rows*2),CV_8UC3);
Mat roi1(final, Rect(0, 0,  img_object.cols, img_object.rows));
Mat roi2(final, Rect(0, 0, result.cols, result.rows));
result.copyTo(roi2);
img_object.copyTo(roi1);

功能检测:输出:感谢链接。实际上,我的意思是,我想通过学习底层步骤将代码片段组合在一起。我只是想了解出了什么问题,这样我就能解决它了。