1

我正在开发一个程序,将来自无人机的图像拼接在一起,我似乎无法获得任何可以在网上找到的拼接方法。最值得注意的是 openCV 具有的简单 Stitcher 类。这些是我的两个输入图像是最后两个,结果是第一个图像

http://imgur.com/a/JyJiN

所以显然这是不对的,但我不知道我哪里出错了,因为这只是对缝合器的简单调用。

int main(int argc, char** argv)
{

// Load the images
//Mat image1 = imread(argv[2]);
//Mat image2 = imread(argv[1]);

VideoCapture cap("vid.mp4");

vector<Mat> Vimg;
Mat result;

cout << "Grabbing Images" << endl;
for (int i = 0; i < 3; i++)
{
    cout << "Grabbing Frame" << i << endl;
    Mat temp;
    cap.read(temp);
    Vimg.push_back(temp);
    imwrite("image" + to_string(i) + ".jpg", temp);
    for (int j = 0; j < 80; j++)
        cap.grab();
}

Stitcher stitch = Stitcher::createDefault();
cout << "Starting Stitching" << endl;
stitch.stitch(Vimg, result);

imwrite("result.jpg", result);

}
4

0 回答 0