画像処理のガウス分布の重み付け

4 vues (au cours des 30 derniers jours)
朋貴 熊田
朋貴 熊田 le 21 Oct 2021
Commenté : 朋貴 熊田 le 22 Oct 2021
画像処理における、ガウス分布の関数を使って任意サイズのカーネルの様な行列の係数を作りたいです。
この時のガウス分布の関数はf(x,y)=exp(-(x^2+y^2)/2σ^2)/(2pi*σ^2) になると思います。
これに準じて以下のコードを作りました。
a=7
b=7
sigma=1.3
gaussian=zeros(a,b);
for Y=1:b
for X=1:a
g1=1/(2*pi*sigma^2);
g2=exp(-((X^2)+(Y^2))/(2*sigma^2));
G=g1*g2;
gaussian(X,Y)=G;
end
end
しかし、よく見るガウシアンフィルタのような形の行列にならずにいます。
ご教授お願いいたします。
  2 commentaires
Shunichi Kusano
Shunichi Kusano le 21 Oct 2021
Modifié(e) : Shunichi Kusano le 21 Oct 2021
式まできちんと確認していませんが、実装は問題ないように思います。釣り鐘型を想定されているのであればオフセット(この場合は-4)を入れる必要があるのではと思いますが、いかがでしょうか。
a=7
a = 7
b=7
b = 7
offset_a = ceil(a/2);
offset_b = ceil(b/2);
sigma=1.3
sigma = 1.3000
gaussian=zeros(a,b);
for Y=1:b
for X=1:a
g1=1/(2*pi*sigma^2);
g2=exp(-(((X-offset_a)^2)+((Y-offset_b)^2))/(2*sigma^2));
G=g1*g2;
gaussian(X,Y)=G;
end
end
imagesc(gaussian)
朋貴 熊田
朋貴 熊田 le 22 Oct 2021
お早いご回答ありがとうございます。
釣り鐘型を予測してしていました。オフセットの存在を完全に忘れていました。
ありがとうございます。

Connectez-vous pour commenter.

Réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!