
opencv2_tutorial学习
LHHopencv
图像算法
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
opencv2 tutorial_code ImgProc部分
1、BasicLinearTransforms.cpp 基本线性变换基本线性变换可以使用 image.convertTo(new_image, -1, alpha, beta) 实现。该程序使用 new_image.at(y,x)[c] = saturate_cast( alpha*( image.at(y,x)[c] ) + beta ) 实现。注意点:(1)saturate_cas原创 2017-11-07 09:52:26 · 328 阅读 · 0 评论 -
opencv_tutorial_code学习——opencv decolor效果
decolor(src,gray,color_boost);效果图:cvtColor(src, ggray, CV_RGB2GRAY);效果图如下:可见,用cvtColor()得到的灰度图颜色区分更佳。原创 2017-12-18 09:44:39 · 1500 阅读 · 1 评论 -
opencv_tutorial_code学习——matchTemplate模板匹配
tutorial_code\Histograms_Matching\MatchTemplate_Demo.cpp参考博客:http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/histograms/template_matching/template_matching.html转载 2017-12-26 14:16:06 · 496 阅读 · 0 评论 -
opencv_tutorial_code学习——视频播放&createBackgroundSubtractorMOG2&npos
tutorial_code\video\bg_sub.cppnpos:http://blog.youkuaiyun.com/jiejinquanil/article/details/51789682createBackgroundSubtractorMOG2官方说明http://opencv-python-tutroals.readthedocs.io/en/latest/py_tut转载 2017-12-26 15:56:03 · 422 阅读 · 0 评论 -
opencv_tutorial_code学习——hdr_imaging
From tutorial_code\photo\hdr_imaging.cpphdr_imaging方法是一种将不同曝光的同一场景合成一张场景的方法tutorial代码使用的图片可以通过此链接下载:原创 2017-12-18 13:46:41 · 540 阅读 · 0 评论 -
opencv_tutorial_code学习——VideoWriter生成视频流
tutorial_code\videoio\video-input-psnr-ssim\video-input-psnr-ssim.cpptutorial_code\videoio\video-write\video-write.cpp参考见博客:http://blog.youkuaiyun.com/zkl99999/article/details/51146363转载 2017-12-27 15:43:50 · 514 阅读 · 0 评论 -
opencv_tutorial_code学习——角点检测方法
Harris角点检测步骤:1、灰度化2、二值化3、角点检测:cornerHarris( src_gray, dst, blockSize, apertureSize, k, BORDER_DEFAULT );4、角点归一化:normalize( dst, dst_norm, 0, 255, NORM_MINMAX, CV_32FC1, Mat() );5、范围处理:conv原创 2017-12-21 14:20:08 · 509 阅读 · 0 评论 -
opencv_tutorial_code学习——canny边缘检测后findContours
tutorial_code\ShapeDescriptors\findContours_demo.cpp步骤:1、灰度化2、滤波3、canny边缘检测4、findContours(canny_output, contours, hierarchy, RETR_TREE, CHAIN_APPROX_SIMPLE, Point(0, 0) );5、Mat drawing =原创 2017-12-28 10:30:49 · 3955 阅读 · 3 评论 -
opencv_tutorial_code学习——findContours&drawContours&画最小包围矩形&画最小包围圆
tutorial_code\ShapeDescriptors\generalContours_demo1.cpp步骤:1、灰度化2、滤波3、二值化4、画轮廓findContours( threshold_output, contours, hierarchy, RETR_TREE, CHAIN_APPROX_SIMPLE, Point(0, 0) );for( size原创 2017-12-28 11:19:41 · 1113 阅读 · 0 评论 -
opencv_tutorial_code学习——画最小包围旋转矩形&画最小包围椭圆
tutorial_code\ShapeDescriptors\generalContours_demo2.cpp步骤:1、灰度化2、滤波3、二值化4、画轮廓 findContours()5、画最小包围旋转矩形和最小包围椭圆vector minRect( contours.size() );vector minEllipse( contours.size() );原创 2017-12-28 13:50:24 · 1167 阅读 · 0 评论 -
opencv_tutorial_code学习——画凸包convexHull()
tutorial_code\ShapeDescriptors\hull_demo.cpp步骤:1、灰度化2、滤波3、二值化4、画轮廓 findContours()5、画最小包围旋转矩形和最小包围椭圆第一步:vector >hull( contours.size() );for( size_t i = 0; i {原创 2017-12-28 14:35:07 · 466 阅读 · 0 评论 -
opencv_tutorial_code学习——moments()中心距&面积&边长
tutorial_code\ShapeDescriptors\moments_demo.cpp步骤:1、灰度化2、滤波3、Canny边缘检测4、画轮廓 findContours()5、画中心距第一步:vector mu(contours.size() );for( size_t i = 0; i { mu[i] = moments(原创 2017-12-28 16:25:14 · 974 阅读 · 0 评论 -
opencv_tutorial_code学习——equalizeHist直方图均衡化
tutorial_code\Histograms_Matching\EqualizeHist_Demo.cpp步骤:1、转化为灰度图2、equalizeHist( src, dst )原创 2017-12-26 10:45:26 · 340 阅读 · 0 评论 -
opencv_tutorial_code学习——compareHist直方图比较
tutorial_code\Histograms_Matching\compareHist_Demo.cpp结果数值的意义:https://www.cnblogs.com/tornadomeet/archive/2012/05/03/2480824.htmlcompareHist()的使用方法:http://blog.youkuaiyun.com/qq_23880193/article/details原创 2017-12-26 10:17:47 · 836 阅读 · 0 评论 -
opencv_tutorial_code学习——Mat创建方法
Mat创建方法From tutorial_code\core\mat_the_basic_image_container\mat_the_basic_image_container.cpp1、通过构造函数初始化:Mat M(2,2, CV_8UC3, Scalar(0,0,255));2、通过create()函数初始化M.create(4,4, CV_8UC原创 2017-11-22 17:05:06 · 509 阅读 · 0 评论 -
opencv博客
findContours函数参数详解:http://blog.youkuaiyun.com/dcrmg/article/details/51987348OpenCV Mat数据类型及位数总结:http://blog.sina.com.cn/s/blog_662c7859010105za.html原创 2017-11-13 13:18:47 · 375 阅读 · 0 评论 -
opencv_tutorial_code学习——图像滤波与风格化
ImgProc/Smoothing.cpp 与 photo/non_photorealistic_rendering 中算法对比:滤波器小结一、低通滤波器(模糊和平滑)1、均值(线性)2、高斯(线性) 去白噪声3、中值(非线性) 去椒盐噪声二、高通滤波器(可边缘检测)1、sobel算子(方向)2、拉普拉斯变换(二阶导数)三、邻域滤波1、方框2、高斯原创 2017-12-20 10:10:25 · 691 阅读 · 0 评论 -
opencv_tutorial_code学习——seamless cloning无缝融合、局部颜色变换、去高光镜面反射、平滑纹理
From tutorial_code\photo\seamless_cloning\cloning_demo.cpp该程序实现六种变换,分别是Normal Cloning(普通融合)、Mixed Cloning(混合融合)、Monochrome Transfer(单色画变换)、Local Color Change(局部颜色改变)、Local IlluminationChange(局部亮度改变)原创 2017-11-22 15:37:01 · 5044 阅读 · 1 评论 -
opencv_tutorial_code学习——建缩减表、计时、扫描图片
From tutorial_code\core\how_to_scan_images\how_to_scan_images.cpp建缩减表方法:int divideWith = 0;stringstream s;s << argv[2];s >> divideWith;if (!s || !divideWith){ cout << "Invalid number原创 2017-11-24 09:10:45 · 378 阅读 · 0 评论 -
opencv_tutorial_code学习——图片叠加
From tutorial_code\core\AddingImages\AddingImages.cppaddWeighted( src1, alpha, src2, beta, 0.0, dst);参数分别是输入图片1、图片1的权值、输入图片2、图片2的权值、偏差,输出图像。输出图像如下:原创 2017-11-24 16:56:36 · 317 阅读 · 0 评论 -
opencv_tutorial_code学习——opencv1语句
From tutorial_code\core\interoperability_with_OpenCV_1\interoperability_with_OpenCV_1.cppopencv1初始化图像const char* imagename = "lena.jpg";Ptr IplI(cvLoadImage(imagename)); Mat I = cv::cvarrToMat原创 2017-11-27 15:10:27 · 319 阅读 · 0 评论 -
opencv_tutorial_code学习——XML\YAML文件IO操作
存文件string filename = "C:\\Users\\111\\Desktop\\1.xml";FileStorage fs(filename, FileStorage::WRITE);fs 读文件fs.open(filename, FileStorage::READ);fs["iterationNr"] >> itNr;cout 存Stringfs <<原创 2017-11-27 11:22:51 · 327 阅读 · 0 评论 -
opencv_tutorial_code学习——画椭圆、圆、填充矩形、直线
From tutorial_code\core\Matrix\Drawing_1.cpp画椭圆ellipse( img, //源图 Point( w/2, w/2 ), //椭圆原点 Size( w/4, w/16 ), //椭圆长轴和短轴长 angle, //椭圆旋转角度 0,原创 2017-11-27 15:52:12 · 918 阅读 · 0 评论 -
opencv2 tutorial_code ImgTrans部分
1、CannyDetector_Demo.cpp Canny边缘检测(1)矩阵创建方法:Mat m; m.create(s.size(), s.type());(2)先灰度化,再滤波,最后进行边缘检测(3) Canny( detected_edges, detected_edges, lowThreshold, lowThreshold*ratio, kernel_size );原创 2017-11-10 17:30:53 · 367 阅读 · 0 评论 -
opencv_tutorial_code学习——图像直方图
void mixChannels (constMat* src , int nsrc ,Mat* dst , int ndst , constint* fromTo , size_t npairs );从输入中拷贝某通道到输出中特定的通道。src——输入矩阵,可以为一个也可以为多个,但是矩阵必须有相同的大小和深度.nsrcs——输入矩阵的个数。dst——输出矩阵,可以原创 2017-12-25 14:18:42 · 403 阅读 · 0 评论 -
opencv_tutorial_code学习——FloodFill漫水填充和物体选取
tutorial_code\Histograms_Matching\calcBackProject_Demo2.cpp见参考博客:http://blog.youkuaiyun.com/u011630458/article/details/44260119转载 2017-12-25 16:33:39 · 373 阅读 · 0 评论 -
opencv_tutorial_code学习——pointPolygonTest计算点到轮廓的距离
tutorial_code\ShapeDescriptors\pointPolygonTest_demo.cppdouble pointPolygonTest(InputArray contour, Point2f pt, bool measureDist)参数: contour ---输入轮廓 pt原创 2017-12-28 16:40:59 · 1805 阅读 · 0 评论