我试图将在 8x8 邻域中重复次数较多的值指定为该邻域中所有像素的值。
我调用了以下函数:
function ret = spatial_val(x)
[m,n]=size(x);
[a,b]=hist(x(:),unique(x));
most_frequent_value=mode(x(:));
for i=1:m
for j=1:n
x(i,j)=most_frequent_value;
ret(i,j)=x(i,j);
end
end
end
使用:
new_img = nlfilter(img, [8,8], @spatial_val);
但是,我收到以下错误:
Subscripted assignment dimension mismatch.
Error in nlfilter (line 75)
b(i,j) = feval(fun,x,params{:});
Error in Fuzzy_CMeans_ali (line 186)
new_img = nlfilter(img, [8,8], @spatial_val);
我该如何解决这个问题?