2015-04-04 76 views
1

任何人都可以在这里请告诉我如何拼接在OpenCv中工作。我的意思是缝合多少张照片应该相同?我从黑色背景的不同侧面拍摄了三张椅子,第一张和第二张相同,第三张相同,第二张相同,80%相同。我想缝合它们,然后做一些像旋转一样的3D建模。我对拼接下面的代码这里在OpenCv C++中拼接

INT主要()

{ 



    //stiching function 
    Mat img1 = imread("back.jpg", CV_LOAD_IMAGE_COLOR); 
    Mat img2 = imread("back1.jpg", CV_LOAD_IMAGE_COLOR); 
    Mat img3 = imread("back2.jpg", CV_LOAD_IMAGE_COLOR); 

    vector<Mat> image; 
    Mat stitchedImage; 
    Stitcher stitchx = Stitcher::createDefault(true); 
    image.push_back(img1); 
    image.push_back(img2); 
    image.push_back(img3); 
    Stitcher::Status stitcherStatus = stitchx.stitch(image, stitchedImage); 
    imshow("Stitched", stitchedImage); 




    Mat ou; 


    rotateImage(stitchedImage, ou, /*-30*/-90,/* 20*/-170.90, 90, 10, 0, -260, 250); 
    imshow("o", ou); 

    return 0; 
} 

当调试线stitchx.stitch它说ERR_NEED_MORE_PICS和imshow它给这样下面的异常中给出。 StitchedPerspec.exe中0x77002F71未处理的异常:Microsoft C++异常:内存位置0x00DBF210处的cv :: Exception。

请任何人可以帮助我通过这个! 我不能在这里上传图片我不知道为什么..但如果有人愿意帮我寄给我你的电子邮件ID,所以我可以告诉你我的照片。 我会非常感谢..

回答

0

没有上传的图片,我们不能帮你。但可能没有足够的功能在您的图像中检测到'针'可以使用...