opencv来读取视频和写入视频时,要先设定capture属性格式。而且要严格按照属性的顺序设置,否则会设置失败,这样就会按照opencv默认的格式来读取和存储视频了(尤其是想要读取高分辨率图像)。
Mat frame;
capture.set(CAP_PROP_FOURCC, FOURCC('M', 'J', 'P', 'G'));
capture.set(CAP_PROP_FPS, 30);
capture.set(CAP_PROP_FRAME_WIDTH, 1920);
capture.set(CAP_PROP_FRAME_HEIGHT, 1080);
注意:读取高分辨率时,只能使用MJPG格式。但是还有一个问题没有解决,当用opencv录制了MJPG格式视频后,无法用opencv来读取,目前不知道什么原因。