我在圖像中有一個對象。我想確定屬於內部邊界的點,外部邊界和沒有邊界的對象本身。如何確定屬於物體內部和外部邊界的點?
一個例子是圖像下方顯示
對象之間的中間區域也是背景。
該對象只包含黑色像素。
我們想確定外點內分點的
- 座標。
感謝
我在圖像中有一個對象。我想確定屬於內部邊界的點,外部邊界和沒有邊界的對象本身。如何確定屬於物體內部和外部邊界的點?
一個例子是圖像下方顯示
對象之間的中間區域也是背景。
該對象只包含黑色像素。
我們想確定外點內分點的
感謝
一個可能的策略:
點2-4可以在圖像的單次掃描中同時進行評估。
如果你想這樣做的速度非常快,你可以使用評估片段着色器的OpenGL。但是這涉及更多一點。
在MATLAB
l = bwlabel(img, 4); % label white regions using 4-connect neighbors
[or oc] = find((l == 0) & imdilate(l == 1, strel('disk',1,0))); % outer boundary
[ir ic] = find((l == 0) & imdilate(l == 2, strel('disk',1,0))); % inner boundary
我張貼一些flood-fill algorithm這裏。希望這可以幫助。
我沒有嘗試,但嘗試做一個僞邊緣檢測:
filter=[0 -1 0 ; -1 4 -1 ; 0 -1 0];
newImage=conv2(yourImage,filter);
它假設只(或主要),以確保外部和內部egdes。之後,如果您將執行yourImage-newImage,則會獲得不是邊緣的abject內部像素。
我認爲它可以使一些工作,以進一步解決問題。
不錯的做法。 +1 –