[問題] 多次影像剪裁已回收

看板MATLAB作者 (源豬)時間16年前 (2010/04/06 23:12), 編輯推噓2(204)
留言6則, 2人參與, 最新討論串1/1
我今天想對同一張圖切多個區塊 假設是4個區塊 起始點的座標值為一個4*2的矩陣 C=xlsread('imf.xls','B1:C4'); C=[ x1,y1 x2,y2 x3,y3 x4,y4 ] 今天使用 'imcrop(I,Xi,Yi,寬,高)' 想要寫成一個迴圈 可是怎樣寫都錯 下面是我寫的 Gray=rgb2gray(img1); threshold = graythresh(Gray); bw = im2bw(Gray,threshold); for ii=1:4 for jj=1:2 G(jj)=C(ii,jj); end bw(ii) = imcrop( bw, [G(1) G(2) 200 200 ] ); end 可是這樣會出現錯誤 ??? In an assignment A(:) = B, the number of elements in A and B must be the same. 那我把 bw(ii) = imcrop( bw, [G(1) G(2) 200 200 ] );中的200也改成 4*1的矩陣 R=[200;200;200;200] bw(ii) = imcrop( bw, [G(1) G(2) R R ] ); 就會出現錯誤 ??? Error using ==> horzcat CAT arguments dimensions are not consistent. 所以上來請教板友 怎樣可以把裁剪圖檔寫成一個迴圈 先謝謝了!! -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.5.25

04/06 23:15, , 1F
妳語法怪怪的 我的是 f2 = imcrop(f1,[x y 1024 768]);
04/06 23:15, 1F

04/06 23:19, , 2F
我只是大概寫一下 我想知道的是怎樣把起始點座標寫成迴
04/06 23:19, 2F

04/06 23:19, , 3F
04/06 23:19, 3F

04/06 23:23, , 4F
可能像是bw(ii) = imcrop(bw,[xii,yii,200,200])
04/06 23:23, 4F
※ 編輯: yuangpork 來自: 122.116.5.25 (04/07 00:02)

04/07 10:38, , 5F
G(jj)跟bw(ii)那邊要用eval...
04/07 10:38, 5F

04/07 10:38, , 6F
不過我還是寫不出G(1) G(2)這種格式 我只寫的出G1 G2這種
04/07 10:38, 6F
文章代碼(AID): #1Bkqzu19 (MATLAB)
文章代碼(AID): #1Bkqzu19 (MATLAB)