Registration 两幅图像的多波段混合产生异常
我正在做多视图遮挡图像配准。我已应用SURF查找和匹配特征。使用单应变换,生成参考图像的透视变换图像。我还应用了线性混合和加法加权混合来生成最终的注册图像。但是我没有得到好的结果。因此,我在C++中使用OpenCV库中的“多波段混合”。 我的代码编写如下:Registration 两幅图像的多波段混合产生异常,registration,blending,Registration,Blending,我正在做多视图遮挡图像配准。我已应用SURF查找和匹配特征。使用单应变换,生成参考图像的透视变换图像。我还应用了线性混合和加法加权混合来生成最终的注册图像。但是我没有得到好的结果。因此,我在C++中使用OpenCV库中的“多波段混合”。 我的代码编写如下: // Apply Multi Band Blender for overlaying of two images detail::MultiBandBlender blender; //Blender::MultiBandBlende
// Apply Multi Band Blender for overlaying of two images
detail::MultiBandBlender blender;
//Blender::MultiBandBlender blender;
try{
Rect bounding_box;
Rect dst_roi;
cout << "Before blend preparing" << endl;
blender.prepare(dst_roi);
cout << "After blend preparing" << endl;
Mat mask, bigImage, curImage;
// warpPerspective(image3, perImg1, H, cv::Size(image3.cols, image3.rows));
warpPerspective(image3, curImage, perImg1, bounding_box.size());
//Mat makeMask(Size sz, vector<Point2f> imageCorners, Mat homorgaphy)
mask = makeMask(curImage.size(), scene, curImage);
blender.feed(curImage.clone(), mask, Point(0, 0));
blender.blend(bigImage, mask);
bigImage.convertTo(bigImage, (bigImage.type() / 8) * 8);
imshow("Result", bigImage);
imwrite("Multi_Band_Register.jpg", bigImage);
}
catch (Exception e){ cout << "Exception is generated" << endl; }
你能帮我解决这个错误吗
谢谢,
blender.prepare(dst_roi);