我正在使用Qt Creator实现一个读取视频的应用程序,点击一个按钮我会保存正在显示的帧。然后我将使用Opencv处理该帧。
使用QmediaPlayer显示视频,如何从视频中提取帧?然后我应该能够在Matlab中将该帧转换为Mat图像。
由于
答案 0 :(得分:0)
QMediaPlayer *player = new QMediaPlayer();
QVideoProbe *probe = new QVideoProbe;
connect(probe, SIGNAL(videoFrameProbed(QVideoFrame)), this, SLOT(processFrame(QVideoFrame)));
probe->setSource(player); // Returns true, hopefully.
processFrame slot:
void processFrame(QVideoFrame const&) {
if (isButtonClicked == false) return;
isButtonClicked = false;
...
process frame
...
}
您可以使用QVideoFrame :: bits()来处理OpenCV
的图像