请教错误提示的含义
在运行函数时出现了如下的提示<BR>??? Index exceeds matrix dimensions.<BR>函数代码如下:<BR>function idxLocalMax=cannyFindLocalMaxima(direction,ix,iy,mag);<BR>=size(mag);<BR>switch direction<BR> case 1<BR> idx=find((iy<=0&ix>-iy)|(iy>=0&ix<-iy));<BR> case 2<BR> idx=find((ix>0&-iy>=ix)|(ix<0&-iy<=ix));<BR> case 3<BR> idx=find((ix<=0&ix>iy)|(ix>=0&ix<iy));<BR> case 4<BR> idx=find((iy<0&ix<=iy)|(iy>0&ix>=iy));<BR>end<BR>ixv=ix(idx);<BR>iyv=iy(idx);<BR>gradmag=mag(idx);<BR>switch direction<BR> case 1<BR> d=abs(iyv./ixv);<BR> gradmag1=mag(idx+m).*(1-d)+mag(idx+m-1).*d;<BR> gradmag2=mag(idx-m).*(1-d)+mag(idx-m+1).*d;<BR> case 2<BR> d=abs(ixv./iyv);<BR> gradmag1=mag(idx-1).*(1-d)+mag(idx+m-1).*d;<BR> gradmag2=mag(idx+1).*(1-d)+mag(idx-m+1).*d;<BR> case 3<BR> d=abs(ixv./iyv);<BR> gradmag1=mag(idx-1).*(1-d)+mag(idx-m-1).*d;<BR> gradmag2=mag(idx+1).*(1-d)+mag(idx+m+1).*d;<BR> case 4<BR> d=abs(iyv./ixv);<BR> gradmag1=mag(idx-m).*(1-d)+mag(idx-m-1).*d;<BR> gradmag2=mag(idx+m).*(1-d)+mag(idx+m+1).*d;<BR>end<BR>idxLocalMax=idx(gradmag>=gradmag1&gradmag>=gradmag2);<BR>请问该如何解决回复:(tpx840520)请教错误提示的含义
矩阵维数不相容
页:
[1]