2

我正在尝试在 UIAxes 内的应用程序中显示 2 个重叠图像。我知道imshowpair(bg,fg,'blend'),虽然它确实有效,但它不允许我控制透明度级别。

我尝试按照史蒂夫的提示,他建议使用:

f1 = imshow(fig1); 
f2 = imshow(fig2);
set(f2,'AlphaData',alpha) 

但它在 UIAxes 中无法正常工作。当我设置'AlphaData'属性时,两个图像都变得透明。

我怎样才能做到这一点?这个想法是有一个滑块,用户可以在其中交互式设置顶部图像的透明度。

参考代码和图片

f1 = imshow(ref,'Parent',app.UIAxes);
hold on
f2 = imshow(gbT2,'Parent',app.UIAxes);
hold off
set(f2,'AlphaData', alpha);

它在图中的外观与它在 UIAxes 中的外观:

图与 UIAxes

4

1 回答 1

1

在 R2018a 中运行,我无法重现这一点。这是我使用的代码:

I = imread('cameraman.tif');
f1 = imshow(I,'Parent',app.UIAxes);
hold(app.UIAxes, 'on')

I2 = imread('pout.tif');
f2 = imshow(I2,'Parent',app.UIAxes);
hold(app.UIAxes, 'off')

set(f2,'AlphaData', 0.5);
于 2018-09-02T18:30:59.657 回答