opencv
opencv
权律三爸爸
研究生 东南大学
展开
-
opencv 数据结构之一opencv cvScalar
c接口中定义为结构体CvScalar;c++接口中定义为类Scalar。 下面是c接口中的定义: 这个 CvScalar就是一个可以用来存放4个double数值的数组;一般用来存放像素值(不一定是灰度值哦)的,最多可以存放4个通道的。 typedef struct CvScalar { double val[4]; }CvScalar; 如何赋值呢? 1. inline CvSca转载 2016-07-18 16:25:16 · 2057 阅读 · 0 评论 -
VS2017中配置Opencv3.0
最近下了VS2017,其Opencv配置方式和VS2013并无二致。 以下我们从配置环境开始: 1.打开计算机的属性页,找到环境变量 2.在系统环境变量下新建下列选项 3.在系统变量中找到Path变量并在最后加上下面语句 ;%opencv%\x86\v原创 2017-07-16 15:44:47 · 5725 阅读 · 3 评论 -
Vs2013中opencv的配置(添加属性表)
网上有很多VS2013的opencv配置教程,我也走了不少弯路。终于找到了比较好的一种方式。 VS2013和opencv3.0的下载和安装就不再累述。 以下我们从配置环境开始: 1.打开计算机的属性页,找到环境变量 2.在系统环境变量下新建下列选项 3.在系统变量中找到Path变量并在最后加上下面语句 ;%OPE原创 2017-07-16 11:25:08 · 5987 阅读 · 0 评论 -
一些基本形态学算法------边缘提取算法
当处理二值图像时,形态学的主要应用是提取表示和描述形状的有用成分。特别是用形态学方法提取某一区域边界线,连接成分,骨骼,凸壳的算法是十分有效的。此外,区域填充,细化,加粗,裁剪等处理方法也经常与上述算法相结合在预处理和后处理中使用。 为使概念清楚,这些算法的讨论大部分采用的是二值图像,即只有黑白两级灰度,1表示黑,0表示白。 边缘提取算法 集合A的边界记为β(A),可以通过下原创 2016-09-15 13:36:55 · 5634 阅读 · 0 评论 -
一些基本形态学算法------区域填充算法
当处理二值图像时,形态学的主要应用是提取表示和描述形状的有用成分。特别是用形态学方法提取某一区域边界线,连接成分,骨骼,凸壳的算法是十分有效的。此外,区域填充,细化,加粗,裁剪等处理方法也经常与上述算法相结合在预处理和后处理中使用。 为使概念清楚,这些算法的讨论大部分采用的是二值图像,即只有黑白两级灰度,1表示黑,0表示白。 下面讨论的是一种基于膨胀,取补和取交的区域填充的简单原创 2016-09-15 13:57:46 · 4672 阅读 · 0 评论 -
一些基本形态学算法------连接部分提取算法
当处理二值图像时,形态学的主要应用是提取表示和描述形状的有用成分。特别是用形态学方法提取某一区域边界线,连接成分,骨骼,凸壳的算法是十分有效的。此外,区域填充,细化,加粗,裁剪等处理方法也经常与上述算法相结合在预处理和后处理中使用。 为使概念清楚,这些算法的讨论大部分采用的是二值图像,即只有黑白两级灰度,1表示黑,0表示白。 在实际应用中,在二值图像中提取相连接部分是许多自原创 2016-09-15 14:45:20 · 1315 阅读 · 2 评论 -
RGB与YCbCr颜色空间的转换
YCbCr是YUV经过缩放和偏移的翻版,可以看做YUV的子集。主要用于优化彩色视频信号的传输,使其向后相容老式黑白电视。与RGB视频信号传输相比,它最大的优点在于只需占用极少的频宽(RGB要求三个独立的视频信号同时传输)。 Y:明亮度(Luminance或Luma),也就是灰阶值。“亮度”是透过RGB输入信号来建立的,方法是将RGB信号的特定部分叠加到一起。 U&V:色度(Chrominanc转载 2016-08-17 20:13:30 · 1264 阅读 · 0 评论 -
Otsu算法
OTSU一维算法,我自己的理解是自适应阈值分割法,通过对灰度图的处理自行得到一个最佳的阈值,并最后用这个阈值二值化灰度图,参考了商丘师范学院的胡颖老师的>一文,但是我用的时候效果不是很理想,于是自己进行了稍微的变动, OTSU算法:就是计算出灰度图最佳阈值的算法 1.先对灰度图进行直方图计算并归一化处理,得到0-255之间每个像素在灰度图中出现的概率,即表示为某个像素在灰度图中出现了n转载 2016-08-17 09:09:38 · 1869 阅读 · 0 评论 -
opencv之convexHull()用法
[cpp] view plain copy print? #include #include #include using namespace cv; using namespace std; int main() { //先初始化变量 Mat srcImage(Size(600, 600转载 2016-08-16 21:16:35 · 1850 阅读 · 0 评论 -
opencv--convexHull()用法
[cpp] view plain copy print? #include #include #include using namespace cv; using namespace std; int main() { //先初始化变量 Mat srcImage(Size(600, 600转载 2016-08-16 21:12:16 · 1529 阅读 · 0 评论 -
opencv腐蚀与膨胀
腐蚀与膨胀 腐蚀和膨胀是图像的形态学处理中最基本的操作,之后遇见的开操作和闭操作都是腐蚀和膨胀操作的结合运算。腐蚀和 膨胀的应用广泛,而且效果也很好。 我们先来谈谈腐蚀与膨胀的原理: 对于二值图像: 膨胀算法:用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆盖的二值图像做“与”运算,如果都为0,结构图像的该像素为0,否则为1.结果:使二值图像扩大一圈。原创 2016-07-21 18:08:59 · 1333 阅读 · 2 评论 -
Opencv中在图片上显示文本
字体和文字 最后一种形式的绘图是绘制文字。当然,文字创建了一套自己的复杂格式,但是,在这类事情上,OpenCV一如既往地更关心提供一个简单的"一招解决问题"的方案,这个方案只适用于一些简单应用,而不适用于一个稳定的和完整的应用(这将降低由其他库提供的功能)。 OpenCV有一个主要的函数,叫cvPutText()。这个函数可以在图像上输出一些文本。参数text所指向的文本将打印到图像上原创 2016-07-21 09:16:36 · 3629 阅读 · 0 评论 -
VS2017+Opencv3.3+win7(亲测有用)
原料: 1.vs2017 2.opencv3.3 第一步:建立空项目 然后将x86改为x64(黄色处) 第二步:配置 先把属性管理器调出来: 双击Debug VC++目录-》包含目录 填入下面三个地址: (X取决与你opencv存放的位置,下面一样) X:\open原创 2017-08-16 16:31:55 · 1499 阅读 · 0 评论