您的位置:首页 > 编程语言

将彩色视频转换为灰度视频源代码

2017-08-18 11:17 267 查看
很简单的功能,就是实现一个彩色视频转化为灰度视频

[cpp] view
plain copy

 print?

#include "cv.h"  

#include "highgui.h"  

#include "iostream.h"  

  

int main()  

{  

    CvCapture *capture = cvCreateFileCapture("C:\\超人不会飞.avi");  

    if(!capture)  

    {  

        cout<<"无法读取视频"<<endl;  

    }  

    IplImage * image;  

    cvNamedWindow("orign",CV_WINDOW_AUTOSIZE);  

    cvNamedWindow("after",CV_WINDOW_AUTOSIZE);  

    int i =0;  

    int ch;  

    while((image=cvQueryFrame(capture))!=NULL)  

    {  

        cout<<"开始转换"<<i++<<endl;  

        cvShowImage("orign",image);  

        IplImage * image_gray = cvCreateImage(cvGetSize(image),IPL_DEPTH_8U,1);//通道目前还是不太明白  

        image_gray->origin = image->origin;//不加图像,会出现倒转  

        cvCvtColor(image,image_gray,CV_RGB2GRAY);  

        cvShowImage("after",image_gray);  

        ch = cvWaitKey(33);//不加上等待时间无法正确显示数据  

        if(ch==27)  

            break;  

    }  

    cvDestroyWindow("orign");  

    cvDestroyWindow("after");  

    return 0;  

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  OpenCV C++