[请益] 如何用for循环搭配mean取出影像值

楼主: LPD666   2017-05-31 23:47:05
如题,假设我目前有五张影像分别为a1,a2,a3,a4,a5
我想利用mean找出影像中大于0的各点数值之平均例如
a1_mean = mean(a1(find(a1>0)));
a2_mean = mean(a2(find(a2>0)));
.
.
.
a5_mean = mean(a5(find(a5>0)));
不想一张一张做
尝试了几种for循环的写法但是都不对,想请问该如何解决
谢谢各位!
作者: sppmg (sppmg)   2017-06-01 09:51:00
你把a1改成阵列a(I)就好啦
作者: YoursEver (猪是妳)   2017-06-01 12:55:00
eval ?
楼主: LPD666   2017-06-01 13:21:00
有试过写成mean(eval(['a',num2str(j),''](find(eval(['a',num2str(j),'']>0))); 但还是不对@@
作者: YoursEver (猪是妳)   2017-06-01 14:46:00
灰阶影像是二维矩阵,因此你最少要写成 mean(mean(Img))或是一楼所说的格式.mean( Img(:) )
作者: LiamIssac (Madchester)   2017-06-01 18:12:00
a = (a1, a2,...,an) 然后work on a为什么k要num2str两次?
作者: sunev (Veritas)   2017-06-03 01:24:00
for i=1:4eval(['b=a' num2str(i) ';'])AA(i)=mean(b(b>0));end

Links booklink

Contact Us: admin [ a t ] ucptt.com