2016-06-17 119 views
0

我有一個圖像細分爲切片超像素。我使用gui來選擇這些超像素中的一些。 現在我想突出顯示選定的超像素爲透明瓷磚。
但是我只知道如何a)使用遮罩來壓制部分覆蓋圖像或者b)如何將整個覆蓋層設置爲透明。如何在Matlab中對圖像進行部分透明疊加?

一)

imshow(superPixelImage) 
hold on; 
h = imshow(overlayImage); 
set(h,'AlphaData',overlayMask); 

B)

imshow(superPixelImage) 
hold on; 
h = imshow(overlayImage); 
set(h,'AlphaData',0.5); 

是否有人知道如何結合兩者使得覆蓋是在非選定的區域完全透明的,部分透明的標超像素?

編輯:
This是我的matlab代碼的beta版本,可用於爲圖像數據庫創建語義標籤。

a)

b)

回答

1

您可以將匹配您的圖像的大小,以填補「AlphaData」參數矩陣。

imshow(superPixelImage) 
hold on; 
h = imshow(overlayImage); 
AlphaMatrix = (~im2bw(overlayImage)>0)*0.5 %creation of your AlphaMatrix. 
set(h,'AlphaData',AlphaMatrix); 
+0

它工作:)。我不知道'AlphaMatrix'也可能包含double值。非常感謝! – mcExchange