Dilation プロセスは、画像 A に構造要素 B を配置し、畳み込みと同様の方法で画像上をスライドさせることによって実行されます。
グレースケール画像の数学的形態膨張の背後にある主な概念を理解していますが、まだ1つの質問があります:
構造要素の値をユーザーが選択できないようにすることはできますか? つまり、構造要素の要素を指定せずに、サイズと形状を選択するだけで、画像の膨張処理を実行できますか?
より正確にするために、例を使って私の質問をよく説明します。サイズ 8 x 8 の近傍によって処理される (この場合は膨張する)I
サイズのグレースケール画像を想定160 x 160
します。この近傍の要素を指定しなかったので、それらの要素は画像自体からのものです。たとえば、以下の matlab コードを書きました。
Max_image = max_filter(I, [0 0 7 7]);
関数max_filterは次のとおりです。
[n m] = size(I); % n=160 and m=160
B = I;
for i = 1:m-7,
B(:,i) = max(I(:,i:i+7),[],2);
end
for i=m-7+1:m
B(:,i) = max(I(:,i:min(end,i+7),[],2);
end
for i = 1:n-7,
I(i,:) = max(B(max(1,i):min(end,i+7),:),[],1);
end
for i = n-7+1:n,
I(i,:) = max(B(i:min(end,i+7),:),[],1);
end
それはまだ形態学的拡張操作と見なされますか? サイズ 8 x 8 の構造要素を使用したことを思い出してください。