在图窗窗口中显示图像
概述
要显示图像数据,请使用 imshow
函数。以下示例将一个图像读入工作区中,然后使用 imshow
函数在图窗窗口中显示该图像。
moon = imread("moon.tif");
imshow(moon)
您还可以将包含图像的文件的文件名传递给 imshow
。
imshow("moon.tif");
此语法对于扫描图像非常有用。但是,请注意,当您使用此语法时,imread
不会将图像数据存储在工作区中。如果要将图像放入工作区,必须使用 getimage
函数,该函数从当前图像对象中检索图像数据。如果显示 moon.tif
图像数据的图窗窗口当前处于活动状态,则此示例会将其图像数据赋给变量 moon
。
moon = getimage;
有关使用 imshow
显示工具箱支持的各种图像类型的详细信息,请参阅Display Different Image Types。
指定初始图像放大倍率
默认情况下,imshow
尝试以 100% 的放大倍率显示整个图像(每个图像像素对应一个屏幕像素)。但是,如果图像太大,无法以 100% 的放大倍率显示在屏幕上的图窗窗口中,imshow
会缩放图像以适应屏幕并发出警告消息。
若要覆盖对 imshow
的特定调用的默认初始放大行为,请指定 InitialMagnification
参数。例如,要以 150% 的放大倍率查看图像,请使用以下代码。
pout = imread("pout.tif"); imshow(pout,"InitialMagnification",150)
imshow
尝试遵从您指定的放大倍率。但是,如果图像无法以指定的放大倍率显示在屏幕上,imshow
会将图像缩放至合适的大小。您还可以将 "fit"
指定为初始放大倍率值。在这种情况下,imshow
会缩放图像以适应图窗窗口的当前大小。
要更改 imshow
的默认初始放大行为,请设置 ImshowInitialMagnification
工具箱预设项。要设置预设项,请通过调用 iptprefs
打开 Image Processing Toolbox™“预设项”对话框,或在 MATLAB® 主页选项卡的环境部分中,点击 预设。
当 imshow
缩放图像时,它使用插值来确定与图像矩阵中的元素未直接对应的屏幕像素值。有关指定插值方法的详细信息,请参阅调整图像大小。
控制图窗的外观
默认情况下,当 imshow
在图窗中显示图像时,图像周围会有灰色边框。您可以更改此默认值,并使用 "Border"
名称-值参量隐藏边框,如以下示例所示。
imshow("moon.tif","Border","tight")
下面的图窗显示同一个图像,一个带边框,一个不带边框。
"Border"
参量仅影响调用 imshow
时显示的图像。如果您希望用 imshow
显示的所有图像都不带灰色边框,请将 Image Processing Toolbox 的 "ImshowBorder"
预设项设置为 "tight"
。您也可以使用预设项设置在图窗中包含可见坐标区。有关预设项的详细信息,请参阅 iptprefs
。