✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
个人主页:Matlab科研工作室
个人信条:格物致知。
更多Matlab仿真内容点击
智能优化算法 神经网络预测 雷达通信 无线传感器
信号处理 图像处理 路径规划 元胞自动机 无人机
⛄ 内容介绍
图像最基本的特征是边缘, 所谓边缘是指其周围像素灰度 有阶跃变化或屋顶变化的那些像素的集合。它存在于目标与背 景、目标与目标、区域与区域之间, 不仅是图像分割所依赖的最 重要的特征,也是纹理特征的重要信息源和形状特征的基础,而 图像的纹理形状特征的提取又常常要依赖于图像分割。图像的 边缘是由灰度不连续性所反映的。经典的边缘提取方法是考察 图像的每个像素在某个区域内灰度的变化, 利用边缘邻近一阶 或二阶方向导数变化规律,用简单的方法检测边缘,这种方法称 为边缘检测局部算子法。边缘的种类可以分为两种:①阶跃性边缘,它两边的像素的灰度值有显著的不同;②屋顶状边缘,它位于灰度值从增加到减 少的变化转折点。对于阶跃性边缘,二阶方向导数在边缘处呈零 交叉;对于屋顶状边缘,二阶方向导数在边缘处取极值。如果一 个像素落在图像中某一个物体的边界上, 那么它的领域将成为 一个灰度级的变化带。对这种变化最有用的两个特征是灰度的 变化率和方向,它们分别以梯度向量的幅度和方向来表示。边缘 检测算子检查每个像素的邻域并对灰度变化率进行量化, 也包 括其梯度方向的确定, 大多数使用基于方向导数掩模求卷积的 方法。下面介绍几种常用的边缘检测算子:
⛄ 部分代码
function conditionIdealEdgeImage(imageLocations, threshold_value)
% @param imageLocations Object holding direcotry locations of images.
% @param threshold_value ____
%Read ideal output image and convert to greyscale
rawImage_ideal=imread(imageLocations.outImgIdeal);
grayImage_ideal=rgb2gray(im2double(rawImage_ideal(:,:,1:3)));
%calcualte image sizes.
image_size = size(grayImage_ideal);
rows=image_size(1);
cols=image_size(2);
%Threholding.
grayImage_ideal_BW = im2bw(grayImage_ideal, threshold_value/255);
%Resize Image.
grayImage_ideal_BW = grayImage_ideal_BW(2:rows-3,2:cols-3);
%Write image.
imwrite(grayImage_ideal_BW, imageLocations.outImg);
end
⛄ 运行结果
⛄ 参考文献
[1]甘勇, 马芳, 熊坤,等. 基于遗传算法和梯度算子的图象边缘检测[J]. 微计算机信息, 2007(02X):3.
❤️ 关注我领取海量matlab电子书和数学建模资料
❤️部分理论引用网络文献,若有侵权联系博主删除