是一種一階微分運算元的邊緣檢測,利用畫素點上下、左右鄰點的灰度差,在邊緣處達到
極值檢測邊緣,去掉部分偽邊緣,對雜訊具有平滑作用 。其原理是在影象空間利用兩個方向模板與圖
像進行鄰域卷積來完成的,這兩個方向模板乙個檢測水平邊緣,乙個檢測垂直邊緣。
對數字影象f(x,y),prewitt運算元的定義如下:
g(i)=|[f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)]-[f(i+1,j-1)+f(i+1,j)+f(i+1,j+1)]|
g(j)=|[f(i-1,j+1)+f(i,j+1)+f(i+1,j+1)]-[f(i-1,j-1)+f(i,j-1)+f(i+1,j-1)]|
則 p(i,j)=max[g(i),g(j)]或 p(i,j)=g(i)+g(j)
經典prewitt運算元認為:凡灰度新值大於或等於閾值的畫素點都是邊緣點。即選擇適當的閾值t,若p(i,j)≥t,則(i,j)為邊緣點,p(i,j)為邊緣影象。這種判定是欠合理的,會造成邊緣點的誤判,因為許多雜訊點的灰度值也很大,而且對於幅值較小的邊緣點,其邊緣反而丟失了。
title('原影象');
%% x方向
[m n]=size(i);
i1=zeros(m,n);
gx=[1 1 1;0 0 0;-1 -1 -1];
gy=[-1 0 1;-1 0 1;-1 0 1];
for i=2:m-1
for j=2:n-1
for k=-1:1
for p=-1:1
i1(i,j)=i1(i,j)+i(i+k,j+p)*gx(k+2,p+2);
endend
endend
subplot(2,2,2);
imshow(i1,);
%%%% y方向
i2=zeros(m,n);
for i=2:m-1
for j=2:n-1
for k=-1:1
for p=-1:1
i2(i,j)=i2(i,j)+i(i+k,j+p)*gy(k+2,p+2);
endend
endend
subplot(2,2,3);
imshow(i2,);
%% prewit 運算元
i3=zeros(m,n);
for i=2:m-1
for j=2:n-1
i3(i,j)=i1(i,j)+i2(i,j);
endend
subplot(2,2,4);
imshow(abs(i3),);
運算元的分類和 寬依賴運算元 窄依賴運算元
過濾 rdd t rdd t 窄依賴 rdd t rdd o 窄依賴 rdd t rdd o 一對多 窄依賴,抽樣運算元 rdd t rdd o 窄依賴 rdd t rdd t 根據你指定的內容排序 寬依賴 根據你的k排序,要求rdd中必須是kv的,寬依賴 根據rdd的k分組之後聚合 累加,字串連線...
方法的運用 強效方法的實際運用
瑪爾西 席莫芙 真正過著這種神奇生活的人,與不是如此生活的人,差別只在 真正過著神奇生活的人已經習慣這種存在的方式,他們已經習慣運用吸引力法則,不論走到哪兒,奇蹟都會發生在他們身上,因為他們記得要使用它。他們一直在使用它,而不是只做一次就算了。這裡有兩個真實的故事,把強有力的吸引力法則及宇宙完美無瑕...
pushpop指令的運算元必須是字運算元 指令格式
指令字長 整個指令的長度,與機器字長沒有固定關係。通常把指令字長 機器字長的指令稱為單字長指令,同理還有半字長指令和雙字長指令。在乙個指令系統 指令集 arm,x86 中,若所有指令的長度都相等,則稱為定長指令字結構。定長指令的執行速度快,控制簡單。同樣與之對應的有變長指令字結構。由於主存一般是按位...