C++로 코딩 중이며 이미지 2의 크기를 이미지 1과 동일한 크기로 조정하려하지만 이미지를 늘리지는 않겠습니다. 패딩 된 행렬에 image2를 복사하려고합니다 (점 0,0). 오류가 발생했습니다 :0으로 이미지 채우기
OpenCV Error: Assertion failed
(0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows)
inMat
, file C:\opencv\opencv\modules\core\src\matrix.cpp, line 323
코드는 다음과 같습니다. 이미지가 우리가 높이를 작성 세로 때 내가 여기 구문을 알고 있지만하지 않는 사전
Mat padded;
padded.setTo(cv::Scalar::all(0));
padded.create(image1.rows,image1.cols, image2.type());
image2.copyTo(padded(Rect(0, 0, image2.rows, image2.cols)));
어설 션 오류는 위에서 언급 한 조건 중 하나라도 실패했음을 의미합니다. 단언 조건에 언급 된 모든 매개 변수를 확인하면 왜 이런 일이 일어나는지 알 수 있습니다. –
image2.copyTo (padded (Rect (0, 0, image2.rows, image2.cols))); // 당신이 행과 열을 바꿨습니다 – berak