Re: [問題] 簡化迴圈/判斷程式已回收
※ 引述《aada (aada)》之銘言:
: 大家好, 小弟目前要做一個影像處理的程式,
: 看到那麼多判斷式想要把程式精簡化,
: 不曉得版上的高手是否可以給點建議呢?
: for k=1:1:Nx
: for l=1:1:Ny
: if ( a(k,l)-b(k,l) > 0 ) && ( c(k,l)-d(k,l) > 0 );
: ee(k,l)=ee(k,l);
: elseif ( a(k,l)-b(k,l) > 0 ) && ( c(k,l)-d(k,l) < 0 );
: ee(k,l)=1+ee(k,l);
: elseif ( a(k,l)-b(k,l) < 0 ) && ( c(k,l)-d(k,l) < 0 );
: ee(k,l)=2+ee(k,l);
: elseif ( a(k,l)-b(k,l) < 0 ) && ( c(k,l)-d(k,l) > 0 );
: ee(k,l)=4+ee(k,l);
: elseif ( a(k,l)-b(k,l) == 0 ) && ( c(k,l)-d(k,l) >= 0 );
: ee(k,l)=0;
: elseif ( a(k,l)-b(k,l) == 0 ) && ( c(k,l)-d(k,l) < 0 );
: ee(k,l)=2;
: elseif ( a(k,l)-b(k,l) > 0 ) && ( c(k,l)-d(k,l) == 0 );
: ee(k,l)=1;
: elseif ( a(k,l)-b(k,l) < 0 ) && ( c(k,l)-d(k,l) == 0 );
: ee(k,l)=3;
: end
: end
: end
: 大家來想想看吧!!
agb=a>b;aeb=a==b;alb=a<b;
cgd=c>d;ced=c==d;cld=c<d;
ee(agb&cld)=ee(agb&cld)+1;
ee(alb&cld)=ee(alb&cld)+2;
ee(alb&cgd)=ee(alb&cgd)+4;
ee(aeb&(cld|ced))=0;
ee(aeb&cld)=2;
ee(agb&ced)=1;
ee(alb&ced)=3;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.195.210.172
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章