图像处理中的高斯核表达式怎样离散化?

(32) 2023-10-05 18:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说图像处理中的高斯核表达式怎样离散化?,希望能够帮助你!!!。

对于一个均值为零的高斯卷积核,知道其方差,怎样求出其离散表达形式,

例如matlab中,输入filter=fspecial('gaussian',3,1)

会得到:

filter =

0.0751 0.1238 0.0751

0.1238 0.2042 0.1238

0.0751 0.1238 0.0751

请问这是怎么求出来的?

自己琢磨了一下,写了一个程序,与matlab的程序结果一致。

sigma=3; %sigma  
delta=1; %取值步长为1  
width=9; %卷积核尺寸  
filter=zeros(width,width);  
for i=-1*floor(width/2):floor(width/2)  
for j=-1*floor(width/2):floor(width/2)  
filter(i+1+floor(width/2),j+1+floor(width/2))=exp(-1*((i*delta)^2+(j*delta)^2)/(2*sigma^2))/(2*sigma^2);  
end  
end  

filtersum=sum(sum(filter));  
filter=filter/filtersum;  

Note: 实际上在上一篇文章(图像处理中的高斯(核)函数简介)中,理解透了“径向基函数”的概念原理,以及其后对高斯核函数的matlab代码实现,就可以掌握 连续滤波器函数->离散模板化 的方法。

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复