0

に次のように入力しましたmatlab

>> I=imread('23X41.jpg');
>> fun = @(x) sum(x(:).^2)/sum(x(:)).^2; 
>> en= nlfilter(I,[4 4],fun);

そして、次のエラーが発生しましたか?

??? Error using ==> plus
Matrix dimensions must agree.

Error in ==> nlfilter at 52
aa = mkconstarray(class(a), padval, size(a)+nhood-1);

特に画像4x4上でウィンドウをスライドさせているときに、このエラーが発生するのはなぜですか? 23x41ここで行列の次元が言及されているのはなぜですか?

ありがとう。

4

1 に答える 1

2

画像が 2D であり、3D 配列であるカラー画像ではないことを確認してください。

于 2013-01-30T11:28:32.453 に答える