【数字图像处理】图像边缘锐化之梯度锐化
边缘 图像 梯度 数字图像处理
2023-09-14 08:56:57 时间
关于具体在实际场景的使用和图像会慢慢更新。
梯度锐化方法
图像平滑往往使图像中的边界、轮廓变得模糊,为了减少影响,需要利用图像锐化技术,使边缘变得清晰。常用的方法有:
- 直接以梯度值代替
- 辅以门限判断
- 给边缘规定一个特定的灰度级
- 给背景规定灰度级
- 根据梯度二值化图像
梯度运算
梯度锐化中,首先应该知道梯度是什么,怎么计算。
梯度是一个矢量,由分别沿x方向和y方向计算微分的结果构成。
构成有以下几种方式:
梯度锐化
直接以梯度值代替
思路:目标图像像素点用双向一次微分结果替代。
for(int i = 1; i < Use_ROWS- 1; i++) { for(int j = 1; j < Use_Line -1; j++) { Image_Use[i][j] = sqrt((Image_Use[i][j+1] - Image_Use[i][j])*(Image_Use[i][j+1] - Image_Use[i][j])+(Image_Use[i+1][j] - Image_Use[i][j])*(Image_Use[i+1][j] - Image_Use[i][j])); } }
辅以门限判断
思路:我们对梯度(变化率)取了一个预值,当图像的梯度变化很小时,本来是物体内部的数据的亮度分布不均匀产生的偏差,可以不考虑进去。只有大于等于一定预值,才认为是边界,否则恢复为原灰度值。
如果变化率超过了一定的预值,认为是边界,因为边界值还是很小,所以加上100,目的增强亮度(梯度),需要判断一下这个值,如果大于255,直接等于255.
给边缘规定一个特定的灰度级
思路:La为规定灰度值,我们对变化率取了一个预值,如果梯度大于等于预值,直接设置为la,否则恢复为原灰度值。
给背景规定灰度级
思路:Lb为规定灰度值,我们对变化率取了一个预值,如果梯度大于等于预值,使用梯度替代原像素值,否则为Lb。
根据梯度二值化图像
思路:我们对变化率取了一个预值,如果梯度大于等于预值,置为255,否则置为0。
int tidu=0,tidu_Threshold=50;for(int i = 1; i < Use_ROWS- 1; i++) { for(int j = 1; j < Use_Line -1; j++) { tidu = sqrt((Image_Use[i][j+1] - Image_Use[i][j])*(Image_Use[i][j+1] - Image_Use[i][j])+(Image_Use[i+1][j] - Image_Use[i][j])*(Image_Use[i+1][j] - Image_Use[i][j])); if(tidu>tidu_Threshold) Image_Use[i][j] = 0; else Image_Use[i][j] = 255; } }
相关文章
- 【数字图像处理】图像边缘锐化之微分运算
- CNStack 云边协同平台:实现原生边缘竟能如此简单
- 【转载】gen_server 边缘
- Android版OpenCV图像处理技术亲自验证[六]之sobel边缘检测
- OpenCV每日函数 图像过滤模块 (19) Scharr边缘检测函数
- 计算机视觉 特征检测与匹配 边缘检测
- 基于无人机的移动边缘计算网络研究(Matlab代码实现)
- 【图像处理】图像的边缘检测(Matlab代码实现)
- 基于小波变换的图像边缘检测算法的研究(Matlab代码实现)
- 基于热传导矩阵(HCM)边缘检测方法在红外图像中的应用(Matlab代码实现)
- 【图像处理】基于matlab蚁群聚类图像边缘检测
- 使用opencv读入并显示一幅彩色图像,灰度化并显示,用canny算子得到图像边缘并显示
- KubeEdge:下一代云原生边缘设备管理标准DMI的设计与实现
- 如何计算边缘计算的成本
- 漫谈边缘计算(二):各怀心事的玩家
- CSharpGL(24)用ComputeShader实现一个简单的图像边缘检测功能
- 《多接入边缘计算(MEC)及关键技术》读书笔记 | 第3章 MEC系统架构及部署组网策略
- 【边缘检测】BDCN:Bi-Directional Cascade Network for Perceptual Edge Detection
- 【边缘设备】基于RK3399核心板的nanoPC-T4 线刷桌面版系统