Opencv学习 Canny加滚动条
2013-06-02 17:14
148 查看
参考opencv教程基础篇的 第五章的代码 记录一下以备后用
效果图如下:
#include "cvliblink.h" #include <opencv2/opencv.hpp> char windowsname[]="Edge"; char tbarname[]="Threshold"; int edge_thresh=1; IplImage *image = 0; IplImage *cedge = 0; IplImage *gray = 0; IplImage *edge = 0; void on_trackbar(int handle) //滚动条函数 { cvSmooth(gray,edge,3,3,0); //先平滑边缘检测效果好 cvNot(gray,edge); cvCanny(gray,edge,(float)edge_thresh,(float)edge_thresh*3,3); //因为canny的经典是最低阈值是最高阈值的1/3 cvZero(cedge); cvCopy(image,cedge,edge); cvShowImage(windowsname,cedge); } int main(int argc,char **argv) { // char *filename = argc ==2?argv[1]:(char*)"1.bmp"; char *filename = argc ==2?argv[1]:(char*)"C:\\Users\\Public\\Pictures\\Sample Pictures\\perspective-quadrilateral-src-img.jpg"; //要说一下的是文件名最好是英文的,中文的可能会引发意想不到的问题 if ((image = cvLoadImage(filename,1))==0) { return -1; } cvNamedWindow("image"); cvShowImage("image",image); cedge = cvCreateImage(cvGetSize(image),IPL_DEPTH_8U,3); gray = cvCreateImage(cvGetSize(image),IPL_DEPTH_8U,1); edge = cvCreateImage(cvGetSize(image),IPL_DEPTH_8U,1); cvCvtColor(image,gray,CV_BGR2GRAY); cvNamedWindow(windowsname,1); cvCreateTrackbar(tbarname,windowsname,&edge_thresh,100,on_trackbar); on_trackbar(0); cvWaitKey(0); cvReleaseImage(&image); cvReleaseImage(&gray); cvReleaseImage(&edge); cvReleaseImage(&cedge); cvDestroyWindow("image"); cvDestroyWindow(windowsname); return 0; }
效果图如下:
相关文章推荐
- OpenCV学习笔记(三):Canny边缘检测和滚动条制作
- Python OpenCV 学习笔记之:Canny边缘检测
- opencv 学习第一天 学习opencv(中文版)中思考题 解决滚动条随视频播放而动
- OpenCV(学习笔记5)-Canny边缘检测
- 【opencv学习之二十六】边缘检测算子:Canny,Sobel,Laplacian
- OpenCV学习——滚动条
- OpenCV学习之滚动条播放视频
- Python OpenCV学习笔记之:处理滚动条事件
- opencv_tutorial_code学习——canny边缘检测后findContours
- 根据滚动条位置缩放图像(学习OpenCV课后题 2.5)
- opencv学习(三十二)之图像边缘检测Soble_Laplace_Canny
- iOS-Opencv 基础学习四(对图片进行图像模糊处理blur、边缘处理Canny)
- 【OpenCV学习笔记 004】 图像的缩放、Canny边缘检测和图像的二值化
- opencv学习(二)图像模糊及canny边缘检测
- opencv 2.x学习笔记(八)滚动条、混合图像
- opencv学习——canny边缘检测
- OpenCV学习笔记07--用滚动条控制图片缩放
- OpenCV中文网站例程——Canny边缘检测(带滚动条)
- Opencv学习笔记:Canny及HoughLines使用
- opencv 学习第一天 学习opencv(中文版)创建一个类似滚动条