資源簡介
關于sobel算子的算法,分為x和y方向的梯度,看完可以對sobel有個很好的了解
代碼片段和文件信息
%?function?[gra_xgra_y]?=?grad(I)
%%%讀入圖像并預處理
clear?all;
close?all;
f=imread(‘lenna_gray.jpg‘);
f=rgb2gray(f);
I=double(f);
[m?n]?=?size(I);
gra_x?=?zeros(mn);
gra_y?=?zeros(nn);
%%%求圖像四個角x和y方向梯度
gra_x(11)?=?+2*I(21)?+?I(22);
gra_x(1n)?=?+I(2n-1)?+?2*I(2n);
gra_x(m1)?=?-2*I(m-11)?-?I(m-12);
gra_x(mm)?=?-I(m-1n-1)?-?2*I(m-1n);
gra_y(11)?=?+2*I(12)?+?I(22);
gra_y(1n)?=?-2*I(1n-1)-I(2n-1);
gra_y(m1)?=?+I(m-12)+2*I(m2);
gra_y(mn)?=?-I(m-1n-1)-2*I(mn-1);
%%%求圖像最右邊和最左邊一列元素的x和y方向梯度
for?j=2:n-1
????gra_x(1j)?=?+I(2j-1)+2*I(2j)+I(2j+1);
????gra_x(mj)?=?-I(m-1j-1)-2*I(m-1j)?-?I(m-1j+1);
????gra_y(1j)?=?-2*I(1j-1)-I(2j-1)+2*I(1j+1)+I(2j+1);
????gra_y(mj)?=?-I(m-1j-1)-2*I(mj-1)+2*I(m-1j+1)+I(mj+1);
end
%%%求圖像最上邊和最下邊一列元素的x和y方向梯度
fo
- 上一篇:廣義預測控制說明文檔
- 下一篇:數字圖像處理MATLAB版工具箱
評論
共有 條評論