如何在 Matlab 中的图像上制作部分透明的叠加层?
How to make a partly transparent overlay on image in Matlab?
我有一个细分为切片超像素的图像。我正在使用 gui select 这些超像素中的一些。
现在我想将 selected 超像素突出显示为透明图块。
但是我只知道如何 a) 使用遮罩来抑制部分叠加图像或 b) 如何将整个叠加设置为透明。
一)
imshow(superPixelImage)
hold on;
h = imshow(overlayImage);
set(h,'AlphaData',overlayMask);
b)
imshow(superPixelImage)
hold on;
h = imshow(overlayImage);
set(h,'AlphaData',0.5);
有人知道如何将两者结合起来,使叠加层在非 selected 区域完全透明,在标记的超像素上部分透明吗?
编辑:
This 是我的 matlab 代码的测试版,可用于为图像数据库创建语义标签。
您可以插入一个与图像大小相匹配的矩阵来填充 'AlphaData' 参数。
imshow(superPixelImage)
hold on;
h = imshow(overlayImage);
AlphaMatrix = (~im2bw(overlayImage)>0)*0.5 %creation of your AlphaMatrix.
set(h,'AlphaData',AlphaMatrix);
我有一个细分为切片超像素的图像。我正在使用 gui select 这些超像素中的一些。
现在我想将 selected 超像素突出显示为透明图块。
但是我只知道如何 a) 使用遮罩来抑制部分叠加图像或 b) 如何将整个叠加设置为透明。
一)
imshow(superPixelImage)
hold on;
h = imshow(overlayImage);
set(h,'AlphaData',overlayMask);
b)
imshow(superPixelImage)
hold on;
h = imshow(overlayImage);
set(h,'AlphaData',0.5);
有人知道如何将两者结合起来,使叠加层在非 selected 区域完全透明,在标记的超像素上部分透明吗?
编辑:
This 是我的 matlab 代码的测试版,可用于为图像数据库创建语义标签。
您可以插入一个与图像大小相匹配的矩阵来填充 'AlphaData' 参数。
imshow(superPixelImage)
hold on;
h = imshow(overlayImage);
AlphaMatrix = (~im2bw(overlayImage)>0)*0.5 %creation of your AlphaMatrix.
set(h,'AlphaData',AlphaMatrix);