例2-10 color video to gray video

来源:互联网 发布:360wifi防蹭网软件 编辑:程序博客网 时间:2024/06/03 22:09

注:《学习OpenCV》中此例程有错误,下面为自己修改后的能成功运行的程序

#include "cv.h"#include "highgui.h"int main(){ CvCapture* capture =cvCreateFileCapture("1.avi"); if(!capture){  return -1; } double fps = cvGetCaptureProperty(capture,CV_CAP_PROP_FPS); CvSize size =cvSize((int)cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_WIDTH),                  (int)cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_HEIGHT)); CvVideoWriter* writer =cvCreateVideoWriter("2.avi", CV_FOURCC('M', 'J', 'P', 'G'), fps,size); IplImage* frame =cvCreateImage(size, IPL_DEPTH_8U, 3); IplImage* gray = cvCreateImage(size,IPL_DEPTH_8U, 1); IplImage* gray_3 = cvCreateImage(size,IPL_DEPTH_8U, 3); while((frame =cvQueryFrame(capture)) != NULL){  cvCvtColor(frame, gray,CV_BGR2GRAY);  cvCvtColor(gray, gray_3,CV_GRAY2BGR);  cvWriteFrame(writer,gray_3); } cvWaitKey(0);  cvReleaseVideoWriter(&writer); cvReleaseImage(&frame); cvReleaseImage(&gray); cvReleaseImage(&gray_3); cvReleaseCapture(&capture); return0;}


原创粉丝点击