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

18 ビュー (過去 30 日間)
朋貴 熊田
朋貴 熊田 2021 年 10 月 21 日
コメント済み: 朋貴 熊田 2021 年 10 月 22 日
画像処理における、ガウス分布の関数を使って任意サイズのカーネルの様な行列の係数を作りたいです。
この時のガウス分布の関数は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 件のコメント
Shunichi Kusano
Shunichi Kusano 2021 年 10 月 21 日
編集済み: Shunichi Kusano 2021 年 10 月 21 日
式まできちんと確認していませんが、実装は問題ないように思います。釣り鐘型を想定されているのであればオフセット(この場合は-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)
朋貴 熊田
朋貴 熊田 2021 年 10 月 22 日
お早いご回答ありがとうございます。
釣り鐘型を予測してしていました。オフセットの存在を完全に忘れていました。
ありがとうございます。

サインインしてコメントする。

回答 (0 件)

Community Treasure Hunt

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

Start Hunting!