今晚偶来兴致, 想通过点击鼠标, 视频显示下一帧图像。
struct U { VideoCapture cap; Mat m; }; void mouse(int k, int x, int y, int s, void *p) { U * u = (U*)p; if ( k && s ) u->cap.read(u->m); } int main(int,char**) { U u; namedWindow("i",0); setMouseCallback("i",mouse,&u); u.cap.open("Megamind.avi"); while( u.cap.isOpened() ) { if (! u.m.empty()) imshow("i",u.m); int k = waitKey(10); if ( k==27 ) break; } return 0; }