在matlab中显示原始大小的小图像

时间:2014-08-19 13:50:17

标签: image matlab image-processing size

我有两张小图片。

当我运行下面的代码时,我的图像会以更大的尺寸显示。我的意思是图像显示适合子图。我只是想显示我的小图像原始大小不适合大小。

figure,subplot(121);imshow(IM1);
subplot(122);imshow(IM2);

我尝试了axis imagetruesize,但失败了。

有没有办法做到这一点?

1 个答案:

答案 0 :(得分:3)

以下设置图中显示的轴的大小为原始图像中的像素数...

注意:这将阻止轴自动调整图形窗口

Hax = subplot(2,2,4);
imshow('image.bmp');

[x,y] = size(imread('image.bmp'));
set(Hax,'units','pixel');
pos = get(Hax,'position');
pos(3:4) = [y,x];

set(Hax,'position',pos)

图像将从子图轴之前的左下角开始 要使其显示在中心,请在pos(3:4) = [y,x];

之前添加以下行
pos(1:2) = ceil([pos(1)+pos(3)/2-y/2,pos(2)+pos(4)/2-x/2])