Imshow视频的特定部分

时间:2016-05-24 16:51:01

标签: c++ opencv

我有一个视频捕捉,没什么特别的:

VideoCapture cap("video.mp4"); 
Mat frame;

while (true)  { 
cap >> frame;
//some other stuff...
}

然后我将显示分辨率为800,600的视频。 我的问题是,我如何显示视频的预定义区域,例如坐标50x,100y?

1 个答案:

答案 0 :(得分:3)

您可以只显示每个帧的裁剪,可以使用Rect定义感兴趣区域(ROI):

VideoCapture cap("video.mp4"); 
Mat frame;
Mat crop;
Rect roi(50, 100, 200, 200); // Your Region of Interest

while (true)  { 
    cap >> frame;
    crop = frame(roi);
    imshow("Cropped Video", crop);
    waitKey(1);
}