Main Content

基本图像导入、处理和导出

此示例说明如何将图像读入工作区、调整图像的对比度,然后将调整后的图像写入文件。

步骤 1:读取并显示图像

使用 imread 函数将图像读入工作区。该示例读取工具箱附带的一个示例图像(名为 pout.tif 的文件中一个小女孩的图像),并将其存储在名为 I 的数组中。imread 函数根据文件推断图形文件格式为标记图像文件格式 (TIFF)。

I = imread("pout.tif");

使用 imshow 函数显示该图像。您还可以在 图像查看器 中查看图像,该 App 提供显示图像和执行一些常见图像处理任务的集成环境。图像查看器提供 imshow 的所有图像显示功能,还支持访问其他几个图像导航和浏览工具,如滚动条、像素区域工具、图像信息工具和对比度调节工具。

imshow(I)

步骤 2:检查图像在工作区中的显示方式

使用 whos 函数,检查 imread 函数如何在工作区中存储图像数据。您也可以在工作区浏览器中检查变量。imread 函数返回变量 I 中的图像数据,这是由 uint8 数据组成的 291×240 元素数组。

whos I
  Name        Size             Bytes  Class    Attributes

  I         291x240            69840  uint8              

步骤 3:提高图像对比度

查看图像像素强度的分布。图像 pout.tif 是一个对比度较低的图像。要查看图像中的强度分布,请通过调用 imhist 函数创建直方图。请注意直方图表明图像的强度范围相当窄。该范围未能涵盖 [0, 255] 之间尽可能多的范围,而且图像缺少能产生良好对比度的高值和低值。

imhist(I)

使用 imhist 函数提高图像的对比度,然后显示结果。直方图均衡使强度值扩展分布到了图像的完整范围内。工具箱包含用于执行对比度调整的其他几个函数,包括 imadjustadapthisteq,以及图像查看器中提供的交互式工具,如调整对比度工具。

I2 = histeq(I);
imshow(I2)

再次调用 imhist 函数,创建经过均衡处理的图像 I2 的直方图。如果比较这两个直方图,会看到 I2 的直方图比 I 的直方图在整个强度范围内散布得更广。

figure
imhist(I2)

步骤 4:将调整后的图像写入文件

使用 imwrite 函数将刚刚经过调整的图像 I2 写入一个文件。此示例在文件名中包含扩展名 ".png",因此 imwrite 函数将图像写入可移植网络图形 (PNG) 格式的文件中。您可以指定其他文件格式。

imwrite(I2,"pout2.png");

步骤 5:检查新写入文件的内容

通过使用 imfinfo 函数查看文件中图像的相关信息,例如图像的格式、大小、宽度和高度。

imfinfo("pout2.png")
ans = struct with fields:
                  Filename: '/tmp/Bdoc24a_2528353_1683069/tp7f72316a/images-ex89505080/pout2.png'
               FileModDate: '13-Feb-2024 00:46:39'
                  FileSize: 36938
                    Format: 'png'
             FormatVersion: []
                     Width: 240
                    Height: 291
                  BitDepth: 8
                 ColorType: 'grayscale'
           FormatSignature: [137 80 78 71 13 10 26 10]
                  Colormap: []
                 Histogram: []
             InterlaceType: 'none'
              Transparency: 'none'
    SimpleTransparencyData: []
           BackgroundColor: []
           RenderingIntent: []
            Chromaticities: []
                     Gamma: []
               XResolution: []
               YResolution: []
            ResolutionUnit: []
                   XOffset: []
                   YOffset: []
                OffsetUnit: []
           SignificantBits: []
              ImageModTime: '13 Feb 2024 05:46:39 +0000'
                     Title: []
                    Author: []
               Description: []
                 Copyright: []
              CreationTime: []
                  Software: []
                Disclaimer: []
                   Warning: []
                    Source: []
                   Comment: []
                 OtherText: []

另请参阅

| | |

相关主题