opencv
文章平均质量分 57
justkong
专注于网络通信,音视频处理
展开
-
OpenCV使用中的一些总结
一、threshold阈值操作1、阈值可以被视作最简单的图像分割方法。例如,从一副图像中利用阈值分割出我们需要的物体部分,这样的图像分割方法基于图像中的物体与背景之间的灰度差异。2、threshold对单通道数组应用固定阈值操作。原型:double threshold( InputArray src, OutputArray dst,double thresh, double maxv...原创 2017-08-16 10:23:00 · 147 阅读 · 0 评论 -
OpenCV中RGB和HSV转换的问题
1、一般情况下HSV模型各分量的取值范围为:H为0到360°,S为0到100%,V为0到255。但是在OpenCV中在由RGB转换到HSV的过程中,发现HSV中H为0到180°,S为0到255,V为0到255。代码如下:IplImage* src = cvLoadImage("1.jpg",1); IplImage* imghsv = cvCreateImage(cvGetSize(s...原创 2017-03-20 15:27:00 · 847 阅读 · 0 评论 -
YUV的数据格式
一、YUV格式分为两大类:planar(平面)和packed(打包)。planar格式,先连续存储所有像素点的Y分量,紧接着存储所有像素点的U,随后存储所有像素点的V。packed格式,每个像素点的Y、U、V分量是连续存储的。二、YUV码流的存储格式其实与其采样的方式密切相关,主流的采样方式有三种,YUV4:4:4,YUV4:2:2,YUV4:2:0。用三个图来直观地表示采集的方式,以黑点表示...原创 2017-03-20 16:09:00 · 248 阅读 · 0 评论 -
OpenCV中Mat总结
一、数字图像存储概述数字图像存储时,我们存储的是图像每个像素点的数值,对应的是一个数字矩阵。二、Mat的存储1、OpenCV1基于C接口定义的图像存储格式IplImage*,直接暴露内存,如果忘记释放内存,就会造成内存泄漏。2、从OpenCV2开始,开始使用Mat类存储图像,具有以下优势:(1)图像的内存分配和释放由Mat类自动管理(2)Mat类由两部分数据组成:矩阵头(包...原创 2017-08-03 11:04:00 · 267 阅读 · 0 评论 -
OpenCV3编程入门-读书笔记1
一、OpenCV概述1、OpenCV全程Open Source Computer Vision Library,即开源计算机视觉库。它是一个跨平台的开源计算机视觉库,可以运行在windows、linux、Mac OS、Android、iOS等操作系统上。OpenCV用C/C++编写,轻量且高效,还支持使用C#、Ch、Ruby等编程语言,同时提供对Python、Ruby、MATLAB等语言的接口...原创 2017-08-03 13:51:00 · 194 阅读 · 0 评论 -
OpenCV3编程入门-读书笔记2-core组件
一、颜色空间缩减1、概念如果图像是3通道,深度为1个字节,则每个像素有256*256*256种可能值,这么多的可能值会对算法性能造成严重影响。利用颜色空间缩减就能解决这个问题,例如将颜色值0~9取为新值0,10~19取为10,以此类推,这样每个像素有26*26*26种可能值,比上面的可能值要小很多。2、公式P_New = ( P_Old / divide ) * divide ...原创 2017-08-03 18:16:00 · 262 阅读 · 0 评论 -
OpenCV掩模mask的原理和作用
一、什么是掩模maskOpenCV中很多函数都带有一个mask参数,mask被称为掩模。图像掩模一般用来对处理的图像(全部或者局部)进行遮挡,来控制图像处理的区域或处理过程。二、掩模原理掩模一般是小于等于源图像的单通道矩阵,掩模中的值分为两种0和非0。以Mat::copyTo为例,当mask的值不为0,则将源图像拷贝到目标图像,当mask为0,则不进行拷贝,目标图像保持不变。源图像...原创 2017-08-04 14:37:00 · 930 阅读 · 0 评论 -
OpenCV3编程入门-读书笔记3-滤波
一、领域滤波(卷积)邻域算子值利用给定像素周围像素的值决定此像素的最终输出。如图左边图像与中间图像卷积得到右边图像。目标图像中绿色的像素由原图像中蓝色标记的像素计算得到。通用线性邻域滤波是一种常用的邻域算子,输入像素加权得到输出像素:其中权重核为“滤波系数”。上面的式子可以简记为:二、线性滤波1、方框滤波(box Filter)最简单的线性滤波是移动平均或...原创 2017-08-04 17:30:00 · 131 阅读 · 0 评论 -
OpenCV3编程入门读书笔记4-形态学滤波
一、腐蚀和膨胀1、腐蚀和膨胀的主要功能(1)消除噪声(2)分割出独立的图像元素,在图像中连接相邻的元素(3)寻找图像中的极大值或者极小值区域(4)求出图像的梯度2、膨胀(dilate)膨胀就是求局部最大值的操作。从数学角度来说,就是将图像与核进行卷积,计算核B覆盖区域的像素点的最大值,并把这个最大值赋值给参考点指定的元素。这样就会使图像中的高亮区域逐渐增长。3、腐蚀...原创 2017-08-05 10:41:00 · 213 阅读 · 0 评论 -
OpenCV3编程入门读书笔记5-边缘检测
一、边缘检测的一般步骤1、滤波边缘检测的算法主要是基于图像强度的一阶和二阶导数,但导数通常对噪声很敏感,因此必须采用滤波器来改善与噪声有关的边缘检测器的性能。2、增强增强边缘的基础是确定图像各点领域强度的变化值。增强算法可以将图像灰度点领域强度值有显著变化的点凸显出来。在具体编程实现时,可通过计算梯度幅值来确定。3、检测经过增强的图像,往往领域中有很多点的梯度值比较大,而在...原创 2017-08-07 10:22:00 · 175 阅读 · 0 评论 -
RGB、YUV和HSV颜色空间模型
一、概述颜色通常用三个独立的属性来描述,三个独立变量综合作用,自然就构成一个空间坐标,这就是颜色空间。但被描述的颜色对象本身是客观的,不同颜色空间只是从不同的角度去衡量同一个对象。颜色空间按照基本机构可以分为两大类:基色颜色空间和色、亮分离颜色空间。前者典型的是RGB,后者包括YUV和HSV等等。二、RGB颜色空间1、计算机色彩显示器和彩色电视机显示色彩的原理一样,都是采用R、G、B相...原创 2017-03-18 12:48:00 · 474 阅读 · 0 评论