
Opencv2学习笔记
Opencv2的学习过程中的一些笔记。
hwlfly
这个作者很懒,什么都没留下…
展开
-
opencv分水岭算法对图像进行分割
先看效果 说明 使用分水岭算法对图像进行分割,设置一个标记图像能达到比较好的效果,还能防止过度分割。 1、这里首先对阈值化的二值图像进行腐蚀,去掉小的白色区域,得到图像的前景区域。并对前景区域用255白色标记 2、同样对阈值化后的图像进行膨胀,然后再阈值化并取反。得到背景区域。并用128灰度表示 3、将前景和背景叠加在一起在同一幅图像中显示。 4、用标记图和原图,利用openc原创 2014-08-14 21:44:45 · 4020 阅读 · 2 评论 -
opencv对图像进行边缘及角点检测
opencv对图像进行边缘及角点检测 先看结果: 代码: // ConsoleApplication1_812.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "opencv2/opencv.hpp" class Imagedetector{原创 2014-08-12 21:45:02 · 3068 阅读 · 0 评论 -
opencv-访问Mat
Color Reduce 还是使用经典的Reduce Color的例子,即对图像中的像素表达进行量化。如常见的RGB24图像有256×256×256中颜色,通过Reduce Color将每个通道的像素减少8倍至256/8=32种,则图像只有32×32×32种颜色。假设量化减少的倍数是N,则代码实现时就是简单的value/N*N,通常我们会再加上N/2以得到相邻的N的倍数的中间值,最后图像被量转载 2014-06-27 20:49:24 · 711 阅读 · 0 评论 -
opencv-形态学处理
开运算 (Opening) 开运算是通过先对图像腐蚀再膨胀实现的。 能够排除小团块物体(假设物体较背景明亮) 请看下面,左图是原图像,右图是采用开运算转换之后的结果图。 观察发现字母拐弯处的白色空间消失。 闭运算(Closing) 闭运算是通过先对图像膨胀再腐蚀实现的。 能够排除小型黑洞(黑色区域)。原创 2014-06-23 20:07:08 · 1241 阅读 · 0 评论 -
opencv-图像金字塔
图像金字塔 目标 本文档尝试解答如下问题: 如何使用OpenCV函数 pyrUp 和 pyrDown 对图像进行向上和向下采样。 原理 Note 以下内容来自于Bradski和Kaehler的大作: Learning OpenCV 。 当我们需要将图像转换到另一个尺寸的时候, 有两种可能: 放大 图像 或者缩小 图像。原创 2014-06-23 21:17:07 · 1005 阅读 · 0 评论 -
opencv-阈值化处理
原理摘自:http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/threshold/threshold.html 目标: 本节简介: OpenCV中的阈值(threshold)函数: threshold 的运用。 基本理论: 注意: 本节的解释出自Bradski与Kae原创 2014-06-25 19:41:42 · 5266 阅读 · 0 评论 -
opencv-边缘检测
// ConsoleApplication3_6_23.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include #include using namespace std; using namespace cv; Mat src,dst,gray; int pro_typ原创 2014-06-25 21:12:39 · 1327 阅读 · 0 评论 -
opencv-霍夫变换
霍夫变换(直线) 原理摘自:http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/imgtrans/hough_lines/hough_lines.html 目标 在这个部分您将学习到: 使用OpenCV的以下函数 HoughLines 和 HoughLinesP 来检测图像中的直线.原创 2014-06-26 22:28:35 · 1829 阅读 · 0 评论 -
opencv-从图像旋转学习Mat数据访问
先看一个简单的例子 代码: // ConsoleApplication3_6_23.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include #include #include using namespace std; using namespace cv;原创 2014-06-27 21:21:14 · 2146 阅读 · 0 评论 -
用Camshift算法对指定目标进行跟踪
原理 Camshift算法是Continuously Adaptive Mean Shift algorithm的简称。它是一个基于MeanSift的改进算法。它首次由Gary R.Bradski等人提出和应用在人脸的跟踪上,并取得了不错的效果。由于它是利用颜色的概率信息进行的跟踪,使得它的运行效率比较高。 Camshift算法的过程由下面步骤组成: (1)确定初始目标及其区域;原创 2014-08-11 21:54:39 · 3512 阅读 · 0 评论 -
opencv直方图拉伸
1、首先计算出一幅图像的直方图 //计算直方图 cv::MatND ImageHist::getHist(const cv::Mat &image){ cv::Mat im; if(image.channels() == 3) cv::cvtColor(image,im,CV_RGB2GRAY,0); else im = image; float r[2]; r[0] = 0原创 2014-08-07 10:54:56 · 2976 阅读 · 1 评论