0xC000001D가 표시됩니다. cvHaarDetectObject를 실행할 때 잘못된 명령이 표시됩니다. 아래 코드는0xC000001D : cvHaarDetectObjects를 실행할 때 잘못된 명령어입니다. opencv
int main() {
IplImage* img;
img = cvLoadImage("lena.jpg",1);
CvMemStorage* storage = cvCreateMemStorage(0);
CvHaarClassifierCascade* cascade = (CvHaarClassifierCascade*)cvLoad("haarcascade_frontalface_alt2.xml");
static CvScalar colors[] = { {{0,0,255}}, {{0,128,255}}, {{0,255,255}},
{{0,255,0}}, {{255,128,0}}, {{255,255,0}}, {{255,0,0}}, {{255,0,255}} };
// Detect objects
cvClearMemStorage(storage);
CvSeq* objects = cvHaarDetectObjects(img, cascade, storage, 1.1, 2, 0, cvSize(40, 40));
CvRect* r;
// Loop through objects and draw boxes
for(int i = 0; i < (objects ? objects->total : 0); i++){
r = (CvRect*)cvGetSeqElem(objects, i);
cvRectangle(img, cvPoint(r->x, r->y), cvPoint(r->x + r->width, r->y + r->height),
colors[i%8]);
}
cvNamedWindow("Output");
cvShowImage("Output", img);
cvWaitKey();
cvReleaseImage(&img);
return 0;
}
설정에 문제가 있습니까? 코드를 컴파일 할 수는 있지만 실행하면 cvHaarDetectObjects까지 프로그램이 실행될 때 잘못된 명령 오류가 발생합니다.
모든 lib 파일과 장소 이미지를 프로젝트의 동일한 디렉토리에 포함 시켰습니다. 내가 VS2010를 사용하고
, Opencv2.4.3
감사와 안부
답장을 보내 주셔서 감사합니다. Visual Studio 2010을 사용하여 저장 용량을 늘리는 방법은 무엇입니까? cvHaarDetectObjects 위에 이미지 로딩을 이동하면 cvWaitKey()를 제거하면 이미지를 표시 할 수 없다는 것을 발견했습니다. 이것이 문제입니까? cvWaitKey()가 필요합니까? 감사합니다. –