如题:我是直接让两个元素相减,但是当小的数减去大的数的时候,差值为0,而我希望得到两者差值的绝对值,请朋友们指点,谢谢
可能我问题描述的不够清楚 具体是这样的:我有一个矩阵,我以其中一个数据位中心,想找到周围相邻8个数据中与之距离相近最小的5个元素。比如中心元素是13,相邻有一个元素是10,当我用For循环处理的时候用10-13=0,而我想得到距离3.。。。。应该怎么结局呢
实现追问里说的功能
for i=m:row-1
for j=n:col-1
tmp=[];
tmp(1)=abs(I(m,n-1)-I(m,n));
tmp(2)=abs(I(m,n+1)-I(m,n));
tmp(3)=abs(I(m+1,n-1)-I(m,n));
tmp(4)=abs(I(m+1,n)-I(m,n));
tmp(5)=abs(I(m+1,n+1)-I(m,n));
tmp(6)=abs(I(m-1,n-1)-I(m,n));
tmp(7)=abs(I(m-1,n)-I(m,n));
tmp(8)=abs(I(m-1,n+1)-I(m,n));
end
end
是不是要把tmp=[];
放在for循环的外面啊?要不每次循环都给清空了啊。
不会 字数限制 没有贴完整的程序 主要两个问题:1、求元素只差怎么求 2、matlab里定义一维数组我那样做好像不对 该怎么使用一维数组呢
追答不是吧?!你用一维数组?那哪来的相邻八个数据?QQ:584505127
本回答被提问者采纳