Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab F高斯滤波器的特殊选择_Matlab_Filter_Signal Processing_Gaussian - Fatal编程技术网

Matlab F高斯滤波器的特殊选择

Matlab F高斯滤波器的特殊选择,matlab,filter,signal-processing,gaussian,Matlab,Filter,Signal Processing,Gaussian,我试图使用一个需要使用图像处理工具箱函数fspecial()的MATLAB脚本 我没有图像处理工具箱,但有信号处理工具箱,其中包含一套用于创建过滤器的工具。遗憾的是,我基本上不知道过滤器的创建,我想看看是否可以得到一些帮助,确定我是否可以使用信号处理工具箱中的过滤器创建工具复制以下代码行: fspecial('gaussian', [5 1], 0.75) fspecial()创建一组用户指定的二维筛选函数,并提供一组默认值 以下函数将生成等效的二维高斯函数。当使用选项“高斯”运行时,它也是f

我试图使用一个需要使用图像处理工具箱函数
fspecial()
的MATLAB脚本

我没有图像处理工具箱,但有信号处理工具箱,其中包含一套用于创建过滤器的工具。遗憾的是,我基本上不知道过滤器的创建,我想看看是否可以得到一些帮助,确定我是否可以使用信号处理工具箱中的过滤器创建工具复制以下代码行:

fspecial('gaussian', [5 1], 0.75)
fspecial()
创建一组用户指定的二维筛选函数,并提供一组默认值

以下函数将生成等效的二维高斯函数。当使用选项“高斯”运行时,它也是
fspecial
中的实现。

你可以通过
h=gaussian2D([51],0.75)来调用它,作为您的示例

%% 2D Gaussian filter
function h = gaussian2D(siz, std)

% create the grid of (x,y) values
siz = (siz-1)./2;
[x,y] = meshgrid(-siz(2):siz(2),-siz(1):siz(1));

% analytic function
h = exp(-(x.*x + y.*y)/(2*std*std));

% truncate very small values to zero
h(h<eps*max(h(:))) = 0;

% normalize filter to unit L1 energy 
sumh = sum(h(:));
if sumh ~= 0
    h = h/sumh;
end
%%2D高斯滤波器
函数h=gaussian2D(尺寸,标准)
%创建(x,y)值的网格
siz=(siz-1)。/2;
[x,y]=meshgrid(-siz(2):siz(2),-siz(1):siz(1));
%解析函数
h=exp(-x*x+y*y)/(2*std*std));
%将非常小的值截断为零
h(h