使用imfilter2时出现问题
我想用库函数做个简单的平滑滤波器,程序如下:c=imread('l.jpg');
a1=imfilter2(fspecial('average',3),d); %3*3均值滤波
imshow(a1);
出现:
??? Undefined function or method 'imfilter2' for input arguments of type 'uint8'.
Error in ==> jzlb at 2
a1=imfilter2(fspecial('average',3),c); %3*3均值滤波
我想是图像的位数问题,但不知怎么搞。。。。。刚学MATLAB。。。求高人指点。。 用的版本是R2006a, 找不到imfilter2 ??
c=imread('l.jpg');
a1=imfilter(c,fspecial('average',3));
imshow(a1); 是2007的,程序也是参照书上的,但就是会出现问题,试过用不同的图像,不同的格式,还是不行,还有什么可以试的请帮忙,谢谢~ 回复 dingz 的帖子
LZ确定有imfilter2函数吗? 请用下式检查下
which imfilter2 -all 有这个函数,路径也对,就是图像不知有什么问题,也试过其他图像。
还有把他转成double和16位也试过。。就是不行。这个函数对输入图像有要求的吗? 怪! 刚又用R2009a查下, 也是找不到imfilter2 !? 也上了官网查, 也没找到!?
是否为自订函数?
LZ可否贴上which imfilter2 -all的输出(路径)及help imfilter2的输出 >> which imfilter2 -all
'imfilter2' not found.
>> help imfilter2
imfilter2.m not found.
Use the Help browser Search tab to search the documentation, or
type "help help" for help command options, such as help for methods.
居然也找不到。。但是有这个m文件喔
还有那段里a1=imfilter2(fspecial('average',3),d); %3*3均值滤波
d打错了应该是c,不过还是这个问题 见到有个imfilter函数
我不知道这两个函数有什么不同,求赐教。。。
这个可以找的到
C:\Documents and Settings\D\My Documents\MATLAB\imfilter.m
C:\Program Files\MATLAB\R2007a\toolbox\images\images\imfilter.m% Shadowed
不好意思,是没有这个函数,应该用imfilter,
??? Function IMFILTER expected its second input, H,
to be one of these types:
double
Instead its type was uint8.
Error in ==> imfilter>parse_inputs at 358
iptcheckinput(h,{'double'},{'nonsparse'},mfilename,'H',2);
Error in ==> imfilter at 127
= parse_inputs(varargin{:});
Error in ==> jzlb at 2
a1=imfilter(fspecial('average',3),c); %3*3均值滤波
我想是double型的,改为
c=double(imread('l.jpg'));
a1=imfilter(fspecial('average',3),c); %3*3均值滤波
imshow(a1);
出现:??? Undefined function or method 'imfilter_mex' for input arguments of type 'int32'.
Error in ==> imfilter at 330
b1 = imfilter_mex(a,im_size,real(h),real(nonzero_h),conn,start,flags);
Error in ==> jzlb at 2
a1=imfilter(fspecial('average',3),c); %3*3均值滤波
还有。。。可以给个程序我吗,就实现均值滤波的,处理的图像最后随便都可以,谢谢
页:
[1]