Я пытался сделать распознавание лица с помощью opencv и сохранить изображение, обнаруженное в cvRect, при вводе с клавиатуры (в моем случае, когда нажата клавиша "c" на клавиатуре, изображение должно быть создано с обнаруженным лицом в папке.) Однако, я думаю, прерывание (cvWaitKey()
) дает мне много проблем и ответа от системы нет. Был бы очень признателен за ваш вклад в эту область!
Код находится здесь:
char d = cvWaitKey(33);
if (d==67) // if the keyboard c is pressed
{
// r is the cvRect created for the face detected
cvSetImageROI(img, cvRect(pt1.x,pt1.y,r->width,r->height));
//img is the video frame passed in here
IplImage* img2 = cvCreateImage(cvGetSize(img),img->depth,img->nChannels);
cvCopy(img, img2, NULL);
cvResetImageROI(img);
cvSaveImage("roi.jpg",img2);
}
Код перед этим будет очень стандартным распознаванием лиц с веб-камеры. И это работает. благодарю!
67? Яснее писать 'C'
. Это также показало бы вам настоящую проблему: вы, вероятно, имели в виду 'c'