我有一个覆盖了补丁的图像,我希望能够在同一个图上显示多个图像,所有图像都有不同的叠加补丁。我尝试使用subplot命令,但它不起作用。我在下面定义了我的轴和父图。
hFig = figure;
hAx = axes('Parent',hFig);
hAx2 = axes('Parent',hFig);
fh = figure('units','pixels',...
'position',[300 300 440 500],...
'menubar','none',...
'name','SliderTool',...
'numbertitle','off',...
'resize','off');
subplot(1,2,1) imshow(image1,'Parent','hAx');
patch(....,'parent', 'hAx');
subplot(1,2,2) imshow(image2,'Parent','hAx2');
patch(....,'parent', 'hAx2');
这是我想要做的基本想法,但由于某种原因,我无法让它发挥作用。我不正确地使用手柄吗?
答案 0 :(得分:1)
我不完全确定这会解决你想要做的事情,但我认为这会给你一个正确的方向。
您可能还需要使用Hold来应用修补程序而不替换您首先显示的图像。
答案 1 :(得分:1)
你是否想要做这样的事情:
image1 = imread('street1.jpg');
image2 = imread('street2.jpg');
ha1 = subplot(1,2,1) ;
imshow(image1);
X = get(ha1,'Xlim')/2;
Y = get(ha1,'Ylim')/2;
patch(X([1 2 2 1]),Y([1 1 2 2]),'m','FaceAlpha',0.5,'parent', ha1 );
ha2 = subplot(1,2,2) ;
imshow(image2);
X = get(ha2,'Xlim')/2;
Y = get(ha2,'Ylim')/2;
patch(X([1 2 2 1]),Y([1 1 2 2]),'b','FaceAlpha',0.3,'parent', ha2);