5
से ओपनसीवी फ्रेम कैप्चर मैं ओपनसीवी 2.2 के साथ एक परियोजना पर काम कर रहा हूं। मुझे एवीआई फ़ाइल के प्रत्येक फ्रेम पर प्रोसेसिंग करने की ज़रूरत है, लेकिन जब मैं अपना कोड चलाता हूं तो यह केवल फाइल के पहले फ्रेम को पकड़ लेता है। CV_CAP_PROP_POS_FRAMES काम नहीं कर रहा प्रतीत होता है। कोई विचार क्यों नहीं?एवीआई
CvCapture* capture = cvCaptureFromAVI("test1.avi");
IplImage *img = 0;
if (!cvGrabFrame(capture)) {
printf("Error: Couldn't open the image file.\n");
return 1;
}
int numFrames = (int) cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_COUNT);
int posFrame = 1;
for(int i =0; i <= numFrames; i++){
cvSetCaptureProperty(capture, CV_CAP_PROP_POS_FRAMES, i);
posFrame = cvGetCaptureProperty(capture, CV_CAP_PROP_POS_FRAMES);
img = cvGrabFrame(capture);
cvNamedWindow("Image:", CV_WINDOW_AUTOSIZE);
cvShowImage("Image:", img);
printf("%i\n",posFrame);
cvWaitKey(0);
cvDestroyWindow("Image:");
}
आप 2.3.1 या 2.4 का उपयोग क्यों नहीं करते? – Alex
मैंने इसे opencv 2.3.1 के साथ ट्रेस किया और समस्या अभी भी मौजूद है। –