学习Opencv 第四章课后习题解答(Exercise 1a)
来源:互联网 发布:java删除文件夹删不掉 编辑:程序博客网 时间:2024/05/21 18:50
题目内容:
a. Create a program that (1)reads frames from a video, (2) turns the result to grayscale,
and (3) performs Canny edge detection on the image.Display all three
stages of processing in three diff erent windows,with each window appropriately
named for its function.
程序:
#include "stdafx.h"#include "cv.h"#include "highgui.h"IplImage* Canny(IplImage* img ,double lowThread,double highThread,double aperture)//边缘检测,使用canny算子{if(img->nChannels!=1){return NULL;}IplImage* out =cvCreateImage(cvGetSize(img),img->depth,1);cvCanny(img,out,lowThread,highThread,aperture);return (out);}IplImage* colorchange(IplImage* in)//单通道灰度图像转变{IplImage* out = cvCreateImage(cvGetSize(in),in->depth,1);cvCvtColor(in,out,CV_RGB2GRAY);return (out);}int main(int argc,char** argv){CvCapture* capture = NULL;IplImage* frame=NULL;IplImage* gray=NULL;IplImage* canny=NULL;cvNamedWindow("Primary",CV_WINDOW_AUTOSIZE);cvNamedWindow("Gray",CV_WINDOW_AUTOSIZE);cvNamedWindow("Canny",CV_WINDOW_AUTOSIZE);capture = cvCreateFileCapture("d:\\opencv\\test1.avi");while (1){frame=cvQueryFrame(capture);if (!frame){break;}cvShowImage("Primary",frame);gray=colorchange(frame);cvShowImage("Gray",gray);canny = Canny(gray,120,160,3);cvShowImage("Canny",canny); if (cvWaitKey(33)==27) {break; }} #if 1 /*测试*/cvSaveImage("d:\\opencv\\experiment\\frame.jpg",frame);cvSaveImage("d:\\opencv\\experiment\\gray.jpg",gray);cvSaveImage("d:\\opencv\\experiment\\canny.jpg",canny); #endifcvReleaseCapture(&capture);cvDestroyWindow("Primary");cvDestroyWindow("Gray");cvDestroyWindow("Canny"); return 0;}
实验结果:
- 学习Opencv 第四章课后习题解答(Exercise 1a)
- 《学习OpenCV》课后习题解答(第四章)(仅供参考)(不断更新)
- 《学习opencv》第四章课后习题1
- 《学习OpenCV》课后习题解答1
- 《学习opencv》第四章课后习题2
- 《学习opencv》第四章课后习题3
- 《学习opencv》第四章课后习题4
- 《学习OpenCV》课后习题解答(第三章)(仅供参考)
- 《学习OpenCV》课后习题解答2
- 《学习OpenCV》课后习题解答3
- 《学习OpenCV》课后习题解答4
- 《学习OpenCV》课后习题解答5
- 《学习OpenCV》课后习题解答6
- 《学习OpenCV》课后习题解答7
- 《学习OpenCV》课后习题解答8
- 《学习OpenCV》课后习题解答9
- 谭浩强C语言程序设计课后习题解答(第四章)
- C++程序设计课后习题及解答(第四章)
- 珍惜哟,亲!
- 基于struts2+spring+ibatis开发的例子
- javascript基础
- 全面解析oracle中的锁机制4
- 用CSS3玩一下链接信息介绍方式
- 学习Opencv 第四章课后习题解答(Exercise 1a)
- tomcat的大概工作原理
- 身份证最后一位校验码PHP版
- EPOLL理解的不错,很有启发
- 在Z-stack中,我们调用数据发送函数,可以发送的最大字节数即ASDU最大是多少呢?
- 开学第一天就做幸运儿
- HTML及XML语言的转义字符
- Eclipse安装CDT插件
- MST/UFS——HDOJ 1232