为了提升学习效率,今天开始在学完每一章的内容之后完成课后题,就当给自己留的家庭作业了吧~
今天第一道:《学习opencv》的第四章 4.1 题:灰度图转换,canny检测,先使用图片读入吧。
下面是我的程序:
#pragma region (exercise 4.1)
//---------------------------4.1-----------------------
//题目说明:1-读取图片,2-处理得到灰度图,3-进行canny检测,4-显示在不同图片中。
//-----------------------------------------------------
//头文件包含
#include<opencv\cv.h>
#include<highgui.h>
//主函数
int main()
{
//读取图片
IplImage* srcImage = cvLoadImage("racingcar.jpg");
//进行判断是否成功读入图片
if (!srcImage)
{
return -1;
}
//创建一个空图片用来装灰度图片
IplImage* dstImage_gray = cvCreateImage(CvSize(srcImage->width, srcImage->height), IPL_DEPTH_8U, 1);
//创建孔图片装canny检测的图片
IplImage* dstImage_canny = cvCreateImage(CvSize(srcImage->width, srcImage->height), IPL_DEPTH_8U, 1);
//转化灰度图
cvConvertImage(srcImage,dstImage_gray,0);
//进行canny检测
cvCanny(dstImage_gray, dstImage_canny, 30, 100, 3);
//显示图片
cvNamedWindow("racingcar", CV_WINDOW_FREERATIO);
cvShowImage("racingcar",srcImage);
cvNamedWindow("huidu", CV_WINDOW_FREERATIO);
cvShowImage("huidu", dstImage_gray);
cvNamedWindow("canny", CV_WINDOW_FREERATIO);
cvShowImage("canny", dstImage_canny);
//等待输入
cvWaitKey(0);
return 0;
}
#pragma endregion