Main Content

平移所显示图像的 X 和 Y 坐标范围

此示例说明如何通过更改所显示图像的 XDataYData 属性来指定非默认世界坐标系。

读取一个图像。

I = imread("peppers.png");

使用内部坐标系显示该图像,在 ax 中返回图像的属性。打开轴以显示坐标系。

figure
ax = imshow(I);
title('Image Displayed with Intrinsic Coordinates')
axis on

Figure contains an axes. The axes with title Image Displayed with Intrinsic Coordinates contains an object of type image.

检查存储在 ax 的 XData 和 YData 属性中的 x 和 y 坐标的范围。范围与图像的维度相匹配。

xrange = ax.XData
xrange = 1×2

     1   512

yrange = ax.YData
yrange = 1×2

     1   384

更改 x 和 y 坐标的范围。此示例通过对 x 坐标加上 100 来右移图像,并通过从 y 坐标中减去 25 来上移图像。

xrangeNew = xrange + 100;
yrangeNew = yrange - 25;

显示图像,指定平移后的空间坐标。

figure
axNew = imshow(I,'XData',xrangeNew,'YData',yrangeNew);
title('Image Displayed with Nondefault Coordinates');
axis on

Figure contains an axes. The axes with title Image Displayed with Nondefault Coordinates contains an object of type image.

确认新图像的 x 和 y 坐标范围与 xrangeNewyrangeNew 指定的平移后的范围相匹配。

axNew.XData
ans = 1×2

   101   612

axNew.YData
ans = 1×2

   -24   359

相关主题