2013-04-18 32 views
1

我有一個矩陣與圖像的每個像素段索引。我如何可視化細分的邊界?最明顯的想法是使用diff過濾器來獲得邊緣映射,但它看起來非常難看。我怎樣才能讓圖像看起來像這裏? http://www.vlfeat.org/overview/slic.html如何在Matlab中可視化圖像片段邊界?

UPD:我試過這個,看起來沒問題。代碼本身看起來很醜,也許它可以用更優雅的形式寫出來。

boundaries = zeros(size(segments)); 
boundaries(2:end, :) = boundaries(2:end, :) + (segments(2:end, :) ~= segments(1:end-1, :)); 
boundaries(:, 2:end) = boundaries(:, 2:end) + (segments(:, 2:end) ~= segments(:, 1:end-1)); 

回答

0

如果你有指標(例如邊界在哪裏的二元掩模)的地方,你可以使用imoverlay做到這一點。

http://www.mathworks.co.uk/matlabcentral/fileexchange/10502-image-overlay

對於一些速度更快,特別是如果你只需要一個顏色,你爲什麼不只是做類似

(假設邊框存儲在邏輯陣列:borders和你形象img

img(borders) = 0 

盡在borders黑色面具的所有像素

+0

我沒有邊界數組,問題是如何創建它。 – lizarisk