提出了如此多的问题,并且我已经通过了大多数问题,但仍然无法解决我的问题,但这是错误代码:error(-215:Assertion failed)size.width> 0 && size.height> 0在函数'cv::imshow'中

 bool try_use_gpu = false;
        vector<Mat>imgs;
        Mat image, pano;
        image = imread("moscow1.jpg");
        if (image.empty())
        {

            cout << "check your input image" << endl;
            return EXIT_FAILURE;
        }
        imgs.push_back(imread("moscow1.jpg"));
        image = imread("moscow2.jpg");
        if (image.empty())
        {
            cout << "check your input image" << endl;
            return EXIT_FAILURE;
        }
        imgs.push_back(imread("moscow2.jpg"));

        Stitcher::Mode mode = Stitcher::PANORAMA;
        Ptr<Stitcher> stitcher = Stitcher::create(mode, try_use_gpu);
        //Stitcher stitcher = Stitcher::createDefault(try_use_gpu);
        Stitcher::Status status = stitcher->stitch(imgs, pano);

        if (status != Stitcher::OK)
        {
            cout << "Panorama unsuccessful" << endl;
        }

            imshow("panorama", pano);
            waitKey(0);
            imwrite("panoramaimg.jpg", pano);
}

我也在想如果不能很好地实现缝制器类,那么任何帮助都可以...

最佳答案

要拼接的图像必须具有公共(public)点,要使用该程序,如果两个图像没有公共(public)点,则无法使用两个不同的图像。

10-02 02:19