OpenCV スティッチャーを使用して一連の画像をつなぎ合わせ、このエラーが発生し続けるコードを作成しようとしています。
OpenCV エラー: アサーションに失敗しました (dsize.area() > 0 || (inv_scale_x > 0 && inv_scale_y > 0)) cv::resize、ファイル C:\Users\car4p\Downloads\opencv-master\opencv-master\modules で\imgproc\src\imgwarp.cpp、3230行目
私は周りを検索しましたが、これは画像の読み取りに問題がないことがわかりました。画像は両方とも正常に表示され、列が0を超えています。出力にエラーがあると思いますが、修正方法がわかりません。誰かが以前にこれに対処したことがある場合、または解決策を知っている場合は、大歓迎です。
OpenCV 3.1 と Visual Studio 2015 を使用して、C++ で書いています。
画像を読み取るためのコード
imgs.push_back(imread("testerer1.jpg"));
imgs.push_back(imread("testerer2.jpg"));
imgs.push_back(imread("testerer3.jpg"));
imgs.push_back(imread("testerer4.jpg"));
画像をスティッチするためのコード
Mat stitchImages(vector<Mat> imgs) {
Stitcher stitchs;
vector<Mat> stitchedImg;
stitchs.createDefault(false);
Stitcher::Status status = stitchs.stitch(imgs, stitchedImg);
return stitchedImg[0];
}