パッチ イメージとソース イメージを一致させるプログラムを作成しました。パッチ イメージの作成に成功し、ファイルをコンパイルしてもエラーは発生しません。しかし、私はそれを表示したいとき; 次のエラーが表示されます
OpenCV エラー: crossCorr、ファイル /tmp/buildd/ros-fuerte-opencv2 でアサーションが失敗しました (corrsize.height<=img.rows+templ.rows-1 && corrsize.width<=img.cols+templ.cols-1) -2.4.2-1precise-20130312-1308/.../templmatch.cpp 行 70
cv::Exception /tmp/buildd/ros-fuerte-opencv2-2.4.2-1precise-20130312-1308/.../templmatch.cpp:70:error(-215) corrsize のインスタンスをスローした後に呼び出された後に終了します。関数 crossCorr の height<=img.rows+templ.rows-1 && corrsize.width<=img.cols+templ.cols-1)
私のコードは
Mat correlation=Mat::zeros(detected_edges.rows+patch.rows- 1,detected_edges.cols+patch.cols-1,CV_8UC1);
matchTemplate(detected_edges,patch,correlation,CV_TM_CCORR_NORMED);
namedWindow("corre",0);
imshow("corre",correlation);
waitKey(100);
ここで、detected_edges はソース イメージで、patch はテンプレート イメージです。