2013-03-17 34 views
0

我需要使用Matlab將圖像A轉換爲圖像B。我是Matlab新手,沒有找到這麼做的好來源。任何人都可以幫助我解決這個問題?使用Matlab剪影人體圖像

圖片甲

enter image description here

圖像B

enter image description here

在圖像B中的水平線可以忽略。我只想得到身體的形狀,在圖B

+1

Canny邊緣檢測器可能會幫助你:http://en.wikipedia.org/wiki/Canny_edge_detector – Maroun 2013-03-17 09:16:50

+1

搜索'邊緣檢測',你會得到很多方法。 – 2013-03-17 09:25:46

回答

2

一個簡單的解決辦法是將源圖像轉換爲二進制和減去的侵蝕副本是這樣的:

bw = any(I, 3); 
n = 5; 
s = bw - bwmorph(bw, 'erode', n); 

n值將發生變化最終圖像中輪廓的粗細。

+1

您可以使用'bwmorph(bw,'remove')'來獲得輪廓。 – 2013-03-17 10:16:53