我正在尝试使用OpenCV来拍摄立体图像对...即同一主体的左图像和右图像...然后在不知道相机的任何属性的情况下校正它们以进行旋转和平移.一旦图像被纠正,我应该能够将它们显示给用户.
到目前为止,我已经合并了两个来自OpenCV示例目录的演示程序,目前非常糟糕......我将清理代码并在我开始工作时更好地安排它...它似乎正在工作,但是当我尝试显示程序因调试错误而崩溃的结果.在命令窗口中,它显示文件中的未知函数中的"OpenCV错误:断言失败(scn == 1 &&(dcn == 3 || dcn == 4))........\opencv\modules\imgproc\src\color.cpp,第2453行"
注释掉代码的各个部分以显示结果只会导致不同的OpenCV错误.这是我的代码.如果有人能帮忙,我会永远爱你.
#include "stdafx.h"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/calib3d/calib3d.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/features2d/features2d.hpp"
#include <iostream>
using namespace cv;
using namespace std;
void help(char** argv)
{
cout << "\nThis program demonstrates keypoint finding and matching between 2 images using features2d framework.\n"
<< "Example of usage:\n"
<< argv[0] << " [detectorType] [descriptorType] [image1] [image2] [ransacReprojThreshold]\n"
<< "\n"
<< "Matches are filtered using homography matrix if ransacReprojThreshold>=0\n"
<< "Example:\n"
<< "./descriptor_extractor_matcher SURF SURF cola1.jpg …Run Code Online (Sandbox Code Playgroud)