c_cpp 边缘检测视频播放

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 边缘检测视频播放相关的知识,希望对你有一定的参考价值。

//---------------------------------【头文件、命名空间包含部分】----------------------------
//        描述:包含程序所使用的头文件和命名空间
//-------------------------------------------------------------------------------------------------
#include <opencv2/opencv.hpp>
using namespace cv;

//-----------------------------------【main( )函数】--------------------------------------------
//        描述:控制台应用程序的入口函数,我们的程序从这里开始
//-------------------------------------------------------------------------------------------------
int main( )
{
    //【1】读入视频
    VideoCapture capture("/Users/wangshiqi/Movies/1.avi");
    Mat edges;
    
    //【2】循环显示每一帧
    while(1)
    {
        Mat frame;//定义一个Mat变量,用于存储每一帧的图像
        capture>>frame;  //读取当前帧
        
        //将原图转化为灰度图像
        //此句代码的OpenCV3版为:
        cvtColor(frame, edges, COLOR_BGR2GRAY);//转化BGR彩色图 to GRAY灰度图
        
        //使用3×3内核来降噪(2×3+1=7)
        blur(edges, edges, Size(7, 7));//进行模糊
        
        //进行Canny边缘检测并显示
        Canny(edges, edges, 0, 30, 3);
        //若视频播放完成,退出循环
        if (frame.empty())
        {
            break;
        }
        
        imshow("读取视频",edges);  //显示当前帧
        if(waitKey(30) >= 0)
        {
            break;
        }  //延时30ms
    }
    return 0;
}

以上是关于c_cpp 边缘检测视频播放的主要内容,如果未能解决你的问题,请参考以下文章

c_cpp 边缘检测摄像头

基于opencv下对视频的灰度变换,高斯滤波,canny边缘检测处理,同窗体显示并保存

c_cpp 【6】播放视频

实时边缘视频流人物检测

实时边缘视频流人物检测

实时边缘视频流人物检测