数字图像处理
文章平均质量分 60
笨笨的小棒棒
这个作者很懒,什么都没留下…
展开
-
霍夫直线变换和霍夫圆变换的原理和实现
一、霍夫直线的原理(1)本部分大部分学习来自《OpenCV3编程入门》,另外有一些自己的理解如上图所以,将一条直线由截距是表示为在极坐标系下化简为(2)对于一个点(x0,y0)来说,可以通过这个点的一族直线统一定义为每一对 代表一条通过点(x0,y0)的直线。(3)如果对于一个给定点(x0,y0),我们在极坐标对极径极角平面绘制出所有通过它的直线,将会得到...原创 2018-09-27 19:44:14 · 5307 阅读 · 0 评论 -
链码的平移归一化和旋转归一化
看《数字图像处理》的11.1.2链码一节最开始看得云里雾里,主要原因是翻译实在是太烂了,看了https://blog.csdn.net/yang6464158/article/details/39801381,才发现平移归一化和旋转归一化是如此简单的操作。平移归一化:将链码的方向编号列出来,组成一个循环序列,找到方向编号最小的数值,作为起始位。(如图a的归一化是以方向标号为0作为起始位...原创 2018-11-27 17:13:04 · 9229 阅读 · 0 评论 -
C++实现最简单的边缘连接(局部处理)
理想情况下,边缘检测应该仅产生位于边缘上的像素的集合.实际上,由于噪声,不均匀照明引起的边缘间断,以及其他引入灰度值虚假的不连续的影响,这些像素并不能完全描述边缘特性. 因此,一般在边缘检测后面会紧跟连接算法,将边缘像素组合成有意义的边缘或区域边界.局部处理是连接边缘点最简单的方法之一,是在每个点(x,y)处的一个小邻域内分析像素的特点,根据特定的准则,将所有的相似点连接起来,以形成根据特定准...原创 2018-11-12 10:53:45 · 6544 阅读 · 1 评论 -
Marr-Hildreth边缘检测器C++实现
1 Marr-Hildreth边缘检测器1.1 Marr-Hildreth边缘检测器的原理Marr-Hiddreth是基于以下两个事实的:1 灰度变换与图像尺寸无关,因此边缘检测可以使用不同的尺寸算子2 灰度的突然变换会在一阶导数中导致波峰或波谷,或在二阶导数中等效的引起零交叉 用于边缘检测的算子应该有两个明显的特点:1 它应该是一个能计算图像中每一点处的一阶导数或二...原创 2018-11-08 17:39:58 · 1576 阅读 · 3 评论 -
VS2015+opencv+MFC+显示图片
网上有很多关于在MFC显示图片的教程,但是看下来感觉对一个小白来说太过于麻烦,总有些东西没有写完成,操作下来总有些错误,实在没有办法我只好下了一个可以运行的例子,比较之后自己按照下载的例子模仿操作总算可以显示图片了, 下面是我对opencv在MFC显示图片的总结,我将一步一步的阐述,尽可能的详细来讲。 1 新建MFC应用程序2 选择基于对话框3 下面不再进...原创 2018-11-13 14:48:27 · 5627 阅读 · 11 评论 -
opencv实现图片的任意角度旋转
一 旋转角度坐标的计算1.如果O点为圆心,则点P绕点O旋转redian弧度之后,点P的坐标变换为点Q的计算公式为:Q.x=P.x*cos(redian)-P.y*sin(redian)Q.y=P.x*sin(redian)+P.y*cos(redian)redian表示的为弧度弧度与角度的变换公式为:redian=pi*180/angle2. 如果O点不是圆心,则点P绕...原创 2018-11-10 20:12:35 · 49969 阅读 · 5 评论 -
使用形态学操作实现边界提取
使用形态学操作实现边界提取的思路: 1.首先对图像A进行腐蚀, 2.之后再使用A减去腐蚀后的结果即是提取到的边界 opencv中代码如下:#include <iostream>#include <opencv2/opencv.hpp>int main() { cv::...原创 2018-11-06 15:14:32 · 4055 阅读 · 0 评论 -
击中击不中的变换
1.1 击中击不中的步骤击中击不中变换是形态学形状检测的基本工具。步骤为:使用模板s1腐蚀原图像X 使用模板s2(s2为是s1的补)对Y(Y为X的补)进行腐蚀 对两个结果进行取交集用击中结构去腐蚀原始图像得到击中结果X(这个过程可以理解为在原始图像中寻找和击中结构完全匹配的模块,匹配上了之后,保留匹配部分的中心元素,作为腐蚀结果的一个元素),然后用击不中结构去腐蚀原始图像的补...原创 2018-11-03 20:14:28 · 4814 阅读 · 1 评论 -
opencv中傅里叶变换的使用
一、频率域滤波:频率域滤波的原理:频率直接关系到空间变化率,低频对应于图像中变化缓慢的灰度成分,较高的频率对应于图像中越来越快的灰度变化: 1.频谱的直流低频分量对应于图像的平滑区域 2.频率的高频分量对应于图像的边沿或变化剧烈区域 3.外界叠加噪声对应于频谱中频率较高的成分 4.恒定的干扰条纹对应于频谱中的某些特征点频率域的滤波...原创 2018-10-25 16:56:10 · 1765 阅读 · 0 评论 -
直方图均衡化、规定化、局部直方图、直方图统计
一、直方图均衡如图3.16所示,是4个基本灰度级为特征的花粉图像:暗图像、亮图像、低对比度图像和高对比度图像,右侧显示了与这些图像对应的直方图。由四张图的对比我们可知,如一幅图像的像素倾向于占据整个可能的灰度级并分布均匀,则该图像会有高对比度的外观并展示灰色调的变换,最终效果将会是一幅灰度细节丰富且动态范围较大的图像。图像均衡化即是实现这种效果。2 直方图均衡化推导过程1.1 连续...原创 2018-10-09 19:39:17 · 9800 阅读 · 2 评论 -
均值滤波器的原理及实现
1.均值滤波器平滑线性空间滤波器的输出是包含在滤波器模板邻域内的像素的简单平均值,也就是均值滤波器。均值滤波器也是低通滤波器,均值滤波器很容易理解,即把邻域内的平均值赋给中心元素。均值滤波器用来降低噪声,均值滤波器的主要应用是去除图像中的不相关细节,不相关是指与滤波器的模板相比较小的像素区域。模糊图片以便得到感兴趣物体的粗略描述,因此那些较小的物体的灰度就会与背景混合在一起,较大的物体则变...原创 2018-10-14 17:03:41 · 41789 阅读 · 0 评论 -
利用opencv调用tensorflow的pb模型对jpg图片进行分类
利用的是opencv中的dnn模块进行调用的,之所以标题是对jpg的图片进行分类,主要的原因是我对bmp格式的图片分类还没有成功,成功之后再更新,使用比较常用的花卉分类图片进行分类,因为只是为了实验,并没有对图片分类精度进行追求,代码中有许多问题,比如有很多没用的,也没有删掉,也只是对花进行了二分类对这两种花进行二分类,daisy标签为0 dandelion为1首先进行分类,分类使...原创 2018-12-13 21:14:38 · 3643 阅读 · 13 评论