나는 얼굴 인식과 관련된 프로젝트를 진행하고있다. 내 프로그램이 작동하려면 각 이미지가 img-> widthStep = 3 * img-> width의 조건을 만족해야한다.
각 이미지의 크기가 250x250 인 데이터베이스에서 코드를 작성하려고합니다. 그러나 데이터베이스의 widthstep은 752이므로 위 조건은 만족스럽지 않습니다. widthstep의 기능은 픽셀 (http://opencv-users.1802565.n2.nabble.com/What-is-widthstep-td2679559.html)에 액세스하는 것입니다.
이미지의 다른 매개 변수에 영향을주지 않고 widthstep 매개 변수를 750으로 변경할 수 있습니까?
다른 방법으로 img-> widthStep = 3 * img-> width를 얻을 수 있습니까? 내가 시도
한 가지 방법은 다음가 250x250 260x260에 이미지를 복사하여 것은 코드를이미지의 넓이를 바꾼다 opencv
Mat img1, img2=Mat::zeros(Size(260,260),CV_8UC3);
img1 = imread(ch);
img1.copyTo(img2.colRange(1,250).rowRange(1,250));
이다 그러나 오류 보여줍니다
OpenCV의 오류가 : 어설 션이 실패 (FixedSize (크기 고정)() || ((마 *)! obj) -> size.operator()() = = 알 수없는 함수의 파일 D : \ opencv2.4 \ opencv \ modules \ core \ src \ matrix.cpp 줄 1372
누구든지 나를 도울 수 있습니까?
감사합니다.
다음을보십시오. http://answers.opencv.org/question/22742/create-a-memory-continuous-cvmat-any-api-could-do/ – Micka