💥1 概述

边缘检测是图像处理的一个重要环节,也是进行信息提取与模式识别的一个基本手段。传统的边缘检测算子多为微分算子,主要包括一阶与二阶微分算子。 常用的一阶微分算子主要有 Rebort 算子、 Sobel 算子、Prewitt算子和 Canny 算子等,而常用的二阶微分算子则有 Laplician 算子和 LOG 算子等。
近年来,随着分数阶微积分理论在图像处理领域中的成功应用[2-5] ,利用分数阶微分进行边缘检测逐渐成为一个研究热点。Mathieu 等人 [6] 提出了分数阶鲁棒轮廓边缘检测器,适当选择分数阶微分的阶数时,该检测器不仅能选择性地检测出边缘;杨柱中等人[7] 构造了一种基于 0~1 阶分数阶微分的 Tiansi 掩模模板,相对于传统的微分算子,该模板在有效提取图像边缘的同时具有较
高的信噪比;王卫星等人 [8] 根据 Tiansi 掩模模板的特点,提出了一种改进的 Tiansi 算子,该算子在进行边缘检测时可大幅增强图像的纹理细节边缘信息值;Pu 等人 [9] 和 Gao 等人 [10] 分别利用分数阶微分替换传统一阶微分,构造了两种不同的分数阶边缘检测算子;汪成亮等人[11]
Tiansi 模板的最佳分数阶阶数需要人为指定这一缺陷,提出了一种基于图像纹理复杂度的自适应分数阶微分算法;何春等人[12] 首先利用分数阶微分和分数阶积分组成复合导数,然后在此基础上提出了一种基于复合导数的边缘检测算子;蒋伟等人[13] 基于 0~1 阶分数阶微分理论和传统的 Sobel 算子,提出了一种分数阶 Sobel 算子的边缘检测模型。

📚2 运行结果

利用2阶分数阶微分掩模的边缘检测(Matlab代码实现)-LMLPHP

 利用2阶分数阶微分掩模的边缘检测(Matlab代码实现)-LMLPHP

部分代码:b=filter2(op,a);
%设置过零检测的门限
%寻找滤波后的过零点,+-和-+表示水平方向从左到右和从右到左过零
%[+-]'和[-+]'表示垂直方向从上到下和从下到上过零
%这里我们选择边缘点为值为负的点
thresh=.75*mean2(abs(b(rr,cc)));
%[- +]的情况
[rx,cx]=find(b(rr,cc)<0&b(rr,cc+1)>0&abs(b(rr,cc)-b(rr,cc+1))>thresh); 
e((rx+1)+cx*m)=1;
%[- +]的情况
[rx,cx]=find(b(rr,cc-1)>0&b(rr,cc)<0&abs(b(rr,cc-1)-b(rr,cc))>thresh); 
e((rx+1)+cx*m)=1;
%[- +]的情况
[rx,cx]=find(b(rr,cc)<0&b(rr+1,cc)>0&abs(b(rr,cc)-b(rr+1,cc))>thresh); 
e((rx+1)+cx*m)=1;
%[- +]的情况
[rx,cx]=find(b(rr-1,cc)>0&b(rr,cc)<0&abs(b(rr-1,cc)-b(rr,cc))>thresh); 
e((rx+1)+cx*m)=1; 

🌈3 Matlab代码实现

🎉4 参考文献

[1]李军成.利用1~2阶分数阶微分掩模的边缘检测[J].计算机工程与应用,2014,50(21):14-18.

12-14 06:33