Bod*_*ard 10 c++ opencv image image-processing
我正在尝试缝合2张图片,仅用于开始拍摄.我已经找到了关键点,使用RANSAC找到了单应性,但我无法弄清楚如何对齐这两个图像(我是opencv的新手).现在是代码的一部分
vector<Point2f> points1, points2;
for( int i = 0; i < good_matches.size(); i++ )
{
//-- Get the keypoints from the good matches
points1.push_back( keypoints1[ good_matches[i].queryIdx ].pt );
points2.push_back( keypoints2[ good_matches[i].trainIdx ].pt );
}
/* Find Homography */
Mat H = findHomography( Mat(points2), Mat(points1), CV_RANSAC );
/* warp the image */
warpPerspective(mImg2, warpImage2, H, Size(mImg2.cols*2, mImg2.rows*2), INTER_CUBIC);
Run Code Online (Sandbox Code Playgroud)
我需要缝合Mat mImg1
加载第一张图像的位置和Mat warpImage2
扭曲的第二张图像.你能告诉我怎么做吗?我也有翘曲的图像切割,我知道我必须改变单应矩阵,但现在我需要对齐这两个图像.谢谢你的帮忙.
编辑:在Martin Beckett的帮助下,我添加了这段代码
//Point a cv::Mat header at it (no allocation is done)
Mat final(Size(mImg2.cols*2 + mImg1.cols, mImg2.rows*2),CV_8UC3);
//velikost img1
Mat roi1(final, Rect(0, 0, mImg1.cols, mImg1.rows));
Mat roi2(final, Rect(0, 0, warpImage2.cols, warpImage2.rows));
warpImage2.copyTo(roi2);
mImg1.copyTo(roi1);
imshow("final", final);
Run Code Online (Sandbox Code Playgroud)
它现在正在运作
归档时间: |
|
查看次数: |
11356 次 |
最近记录: |