Re: [討論] 如何將八連通後的區域挖出來儲存?

看板MATLAB作者 (Jemmy)時間12年前 (2013/07/02 19:46), 編輯推噓0(003)
留言3則, 3人參與, 最新討論串2/2 (看更多)
小弟不才,剛剛有去MATLAB網站上查詢關於regionprops的語法, 但是仿效centroids的寫法改以Image方法卻不得其門而入, 相信應該是.Image這個語法不對,請各位高手指導小弟一下吧.... [L,bw]= bwlabel(im,8); s = regionprops(im, 'Image'); centroids = cat(1, s.Image); imshow(im) hold on plot(centroids(:,1),centroids(:,2),'r*') hold off ※ 引述《windowsdtr (Jemmy)》之銘言: : 小弟初次接觸MATLAB : 在使用連通標記法(bwlabel)時發現一個問題, : 有去其他地方爬文過,但是多半是模模糊糊的, : 我認為應該有比較簡單的作法或指令可以達到, : 不知道有沒有強者能幫小弟解答一下?! : 我有一張二值化的圖image已經使用八連通法[L,bw]=bwlabel(image,8) : 得到bw=3個區塊,圖片陣列大致如下: : 0 0 0 0 0 0 0 0 0 0 0 : 0 1 1 1 0 0 2 2 2 0 0 : 0 1 0 1 0 2 2 2 2 2 0 : 0 1 1 1 0 0 2 2 2 0 0 : 0 0 0 0 0 0 0 0 0 0 0 : 0 3 3 3 3 3 3 0 0 0 0 : 0 3 3 3 3 3 3 3 0 0 0 : 0 0 0 0 0 0 0 0 0 0 0 : 請問我要怎麼個別把區塊1、2還有3抓出來儲存變成如下這樣? : 1 1 1 : 1 0 1 : 1 1 1 : 0 2 2 2 0 : 2 2 2 2 2 : 0 2 2 2 0 : 3 3 3 3 3 3 : 3 3 3 3 3 3 3 : 懇請各位大大幫忙!! Orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.110.7.56

07/02 21:00, , 1F
regionprop的內建參數就有centroid,先細讀一下help...
07/02 21:00, 1F

07/02 21:46, , 2F
問題是我不是要用centroids語法阿...我要用的是Image..
07/02 21:46, 2F

07/03 08:28, , 3F
img1=s(1).Image; img2=s(2).Image; img3=s(3).Image
07/03 08:28, 3F
文章代碼(AID): #1HqhrzJd (MATLAB)
文章代碼(AID): #1HqhrzJd (MATLAB)