1

私は2つの画像でステッチを行っていますが、デバッグ中にこのエラーが発生します(コンパイルは成功しますが、実行すると壊れます):

不明な関数でアサーションが失敗しました ==CV_8Uc3>。

コードは次のとおりです。

int main(int argc, char ** argv)
{
    Mat im1=imread("panorama_image1.jpg", CV_LOAD_IMAGE_GRAYSCALE);
    Mat im2=imread("panorama_image2.jpg", CV_LOAD_IMAGE_GRAYSCALE);

    Mat result;
    vector<Mat> imgs;
    imgs.push_back(im1);
    imgs.push_back(im2);
    cv::Stitcher stitcher=cv::Stitcher::createDefault(false);
    stitcher.stitch(imgs,result);

    namedWindow("Mosaic", CV_WINDOW_AUTOSIZE);
    imshow("Mosaic",result);
    waitKey(0);

    return 0;
}

このコードでエラーを見つけることができませんでした。そして、リンカーライブラリは正しいです(などのDバージョンを使用してopencv_core244d.libくださいopencv_stitching244d.lib

4

1 に答える 1

1

私はsgarizviが正しいと思います。カラーでロードすると、同様の問題が解決されました。

Mat im1=imread("panorama_image1.jpg", CV_LOAD_IMAGE_COLOR);
Mat im2=imread("panorama_image2.jpg", CV_LOAD_IMAGE_COLOR);
于 2015-05-02T03:42:02.283 に答える