Я пытаюсь присвоить значение, которое чаще повторяется в районе 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);
Как я могу решить эту проблему?