![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
opencv入门教程
初学opencv函数库记录
Rookie Linux
物联网工程专业
展开
-
opencv中图像直方图常见操作之直方图反向投影(三)
直方图反向投影(Back Projection)的原理:参考https://blog.csdn.net/michaelhan3/article/details/73550643直方图反向投影作用:如果两幅图的反向投影矩阵相似或相同,那么我们就可以判定这两幅图这个特征是相同的,区别于判断相似度,相似度参考https://blog.csdn.net/qq_37120369/article/...原创 2020-03-12 18:15:25 · 277 阅读 · 0 评论 -
opencv中图像直方图常见操作之直方图比较(二)
图像直方图常见操作(一):https://blog.csdn.net/qq_37120369/article/details/1047924271.概述:对输入的两张图像计算得到直方图H1与H2,归一化到相同的尺度空间 然后可以通过计算H1与H2的之间的距离得到两个直方图的相似程度进 而比较图像本身的相似程度。Opencv提供的比较方法有四种:Correlation 相关性比较...原创 2020-03-11 19:50:49 · 432 阅读 · 0 评论 -
opencv中图像直方图常见操作之直方图均衡化及直方图计算(一)
一、直方图均衡化1.直方图概念:图像直方图,是指对整个图像在灰度范围内的像素值(0~255)统计出现频率次数,据此生成的直方图,称为图像直方图。2.特征:直方图反映了图像灰度的分布情况,是图像的统计学特征。3.图像均衡化:图像均衡化是一种提高图像对比度的方法,拉伸图像灰度值范围。4.API:equalizeHist(InputArray src,//输入图像...原创 2020-03-11 13:30:03 · 673 阅读 · 1 评论 -
opencv中像素重映射操作(remap函数的使用)
像素重映射:简单点说就是把输入图像中各个像素按照一定的规则映射到另外一张图像的对应位置上去,形成一张新的图像。API:cv::remapremap(InputArray src,// 输入图像OutputArray dst,// 输出图像InputArray map1,// x 映射表 CV_32FC1/CV_32FC2InputArray map2,// y 映...原创 2020-03-09 18:17:50 · 848 阅读 · 1 评论 -
opencv中关于像素的常见操作
一、获取图像像素指针Mat.ptr<uchar>(int i=0) 获取像素矩阵的指针,索引i表示第几行,从0开始计行数。例如:我们通过imread获取了一张图片的Mat对象myImage,获得当前行指针const uchar* current= myImage.ptr<uchar>(row);获取当前像素点P(row, col)的像素值 p(row, c...原创 2020-03-04 21:02:07 · 831 阅读 · 0 评论 -
opencv利用卷积实现自定义线性滤波
为了实现自定义滤波我们先了解一下卷积与算子卷积是图像处理中一个操作,是kernel在图像的每个像素上的操作。 Kernel本质上一个固定大小的矩阵数组,其中心点称为锚点(anchor point),如下图把kernel放到像素数组之上,求锚点周围覆盖的像素乘积之和(包括锚点),用来替换锚点覆盖下像素点值称为卷积处理。例如:Sum = 8x1+6x1+6x1+2x1+8x1+...原创 2020-02-29 17:38:47 · 270 阅读 · 0 评论 -
opencv中Mat对象的使用
Mat对象OpenCV2.0之后引进的图像数据结构、自动分配内存、不存在内存泄漏的问题,是面向对象的数据结构。分了两个部分,头部与数据部分IplImage是从2001年OpenCV发布之后就一直存在,是C语言风格的数据结构,需要开发者自己分配与管理内存,对大的程序使用它容易导致内存泄漏问题Mat对象常用构造函数:Mat()Mat(int rows,int cols,int type...原创 2020-01-19 13:46:16 · 451 阅读 · 0 评论 -
opencv图像矩阵掩模
如上图所示,红色是中心像素,从上到下,从左到右对每个像素做同样的处理操作(上图的公式),得到最终结果就是对比度提高之后的输出图像Mat对象。Mat图像在opencv中的存储形式一般是二维向量(可以理解为二维数组),即从(0,0)到(rows-1,cols-1)。例如:RGB三通道彩色图的存储形式如下图:例如:单通道灰度图的存储形式如下图:那么我们在对像素点(row,co...原创 2020-01-15 18:09:22 · 432 阅读 · 0 评论 -
opencv图像加载、修改、保存
图像加载函数:imread函数原型:CV_EXPORTS_WMat imread(constString&filename,intflags=IMREAD_COLOR);返回值:Mat对象参数:第一个参数,文件名;第二个参数,表示加载的图像是什么类型,支持常见的三个参数值 IMREAD_UNCHANGED (<0) 表示加载原图,不做任何改变 IMREA...原创 2020-01-12 19:01:02 · 315 阅读 · 0 评论