程式碼運行報錯指向指標 pCapture,典型原因:
cvCreateCameraCapture 或 cvCaptureFromFile 失敗回傳 NULL,未檢查直接使用。CvCapture* pCapture = cvCaptureFromFile("video.avi"); // 或 cvCreateCameraCapture(0)
if (!pCapture) {
fprintf(stderr, "無法開啟影片來源\n");
return -1;
}
IplImage* frame;
while ((frame = cvQueryFrame(pCapture)) != NULL) {
// 處理 frame
cvShowImage("Vehicle Detection", frame);
if (cvWaitKey(30) >= 0) break;
}
cvReleaseCapture(&pCapture);
cvDestroyAllWindows();
cv::VideoCapture C++ 介面,自動管理資源,避免指標錯誤。