主要内容

imfinfo

有关图形文件的信息

说明

info = imfinfo(filename) 返回一个结构体,其字段包含有关指定图形文件中图像的信息。此文件的格式从其内容推知。

如果 filename 是包含多个图像的 CUR、GIF、HDF4、ICO、PBM、PGM、PPM、SVS 或 TIFF 文件,则 info 为一个结构体数组,其中每个元素对应文件中的一个图像。例如,info(3) 将包含文件中第三个图像的相关信息。

如果 filename 是包含多个图像的 HEIF 或 HEIC 文件,则 info 返回一个结构体,其字段包含有关图形文件中主图像的信息。 (自 R2025a 起)

示例

info = imfinfo(filename,fmt) 在函数找不到名为 filename 的文件时另外查找名为 filename.fmt 的文件。

示例

全部折叠

查找有关示例图像的信息。

info = imfinfo("ngc6543a.jpg");

info 结构体包括以下字段:FilenameFileModDateFileSizeFormatFormatVersionWidthHeightBitDepthColorTypeFormatSignatureNumberOfSamplesCodingMethodCodingProcessCommentAutoOrientedWidthAutoOrientedHeight

要显示结构体中的特定信息,请引用其字段。例如,显示结构体中的编码方法信息。

info.CodingMethod
ans = 
'Huffman'

输入参数

全部折叠

图形文件的名称,指定为字符串标量或字符向量。

根据文件的位置,filename 可以采用下列形式之一。

位置

形式

当前文件夹或 MATLAB® 路径上的文件夹

指定 filename 中文件的名称。

例如:"myImage.jpg"

文件夹中的文件

如果该文件不在当前文件夹或 MATLAB 路径下的文件夹中,则指定完整或相对路径名。

例如:"C:\myFolder\myImage.png"

例如:"\imgDir\myImage.bmp"

统一资源定位器 (URL)

如果文件是通过 Internet URL 定位的,则 filename 必须包含协议类型,例如 http://

例如:"http://my_hostname/my_path/my_image.jpg"

远程位置

如果文件存储在远程位置,则 filename 必须包含指定为 URL 形式的文件的完整路径:

scheme_name://path_to_file/my_file.ext

根据远程位置,scheme_name 可以是下表中的值之一。

远程位置scheme_name
Amazon S3™s3
Windows Azure® Blob 存储wasb, wasbs
HDFS™hdfs

有关详细信息,请参阅处理远程数据

示例:"s3://my_bucket/my_path/my_image.heif"

图像格式,指定为指示标准文件扩展名的字符串标量或字符向量。调用 imformats 可查看支持的格式及其文件扩展名列表。

示例: "png"

输出参量

全部折叠

有关图形文件的信息,以结构体数组形式返回。info 中的字段集取决于文件和文件格式。下表描述结构体的字段。

字段名称

描述

Filename

文件的名称。如果文件不在当前文件夹中或位于远程位置,Filename 包含文件的完整路径或地址。

字符向量

FileModDate

上次修改文件的日期。

字符向量

FileSize

文件大小(以字节为单位)。

整数

Format

文件格式,以文件扩展名形式表示。对于具有多个可能的扩展名的格式(例如 JPEG 和 TIFF),imfinfo 函数返回文件格式注册表中的第一个变体。(有关详细信息,请参阅 imformats。)

字符向量

FormatVersion

文件格式版本。

字符向量或数字

Width

图像宽度(以像素为单位)。

整数

Height

图像高度(以像素为单位)。(有关 BMP 文件的其他详细信息,请参阅提示。)

整数

BitDepth

每像素位数。

整数

ColorType

图像类型。ColorType 的可能值包括(但不限于)用于真彩色 (RGB) 图像的 'truecolor'、用于灰度强度图像的 'grayscale' 以及用于索引图像的 'indexed'

字符向量

AutoOrientedWidth (自 R2024b 起)

应用可交换图像文件格式 (Exif) Orientation 标记后图像的宽度,以像素为单位。如果文件没有 Exif Orientation 标记,则此字段的值与 Width 字段的值相同。整数

AutoOrientedHeight (自 R2024b 起)

应用 Exif Orientation 标记后图像的高度,以像素为单位。如果文件没有 Exif Orientation 标记,则此字段的值与 Height 字段的值相同。整数

注意

当指定 HEIF 或 HEIC 图像文件时,结构体数组包含表中除 BitDepthColorType 字段外的所有字段。

info 结构体数组包括一些文件格式的附加字段:

  • 仅限 DNG - imfinfo 函数以输出结构体中的各个命名字段返回属于 Adobe® DNG 文件版本 1.5 及之前版本的标记。有关 DNG 文件标记的完整列表,请参阅 Adobe Digital Negative (DNG) Specification 的第 4 章。

  • 仅限 DNG、JPEG 和 TIFF - 如果 filename 包含 Exif 标记,则 info 可能包含 DigitalCameraGPSInfo(全球定位系统信息)字段。

  • 仅限 GIF - info 结构体包括 DelayTime 字段,该字段包含以百分之一秒为单位的值。

  • 仅限 JPEG

    • 如果 filename 包含嵌入式可扩展元数据平台 (XMP) 元数据,则 info 包含 XMPData 字段。如果 filename 的 XMP 元数据包含国际新闻电信理事会 (IPTC) 数据,则此数据位于 XMPData 字段的 Iptc4xmpCore(核心元数据)和 Iptc4xmpExt(扩展元数据)子字段中。

    • 如果 filename 包含 Exif Orientation 标记,则 info 包含 Orientation 字段,该字段包含 Exif Orientation 标记的值。

  • 仅限 JPEG 2000 - info 结构体包括 ChannelDefinition 字段,该字段包含一个 m×3 元胞数组,其中 m 是图像数据的行数。

    • ChannelDefinition 的第一列报告文件中存在的通道的位置。

    • ChannelDefinition 的第二列报告通道的类型。

    • ChannelDefinition 的第三列报告通道映射。

  • 仅限 TIFF - info 结构体包括 Orientation 字段,其中包含 Exif Orientation 标记的值(如果没有 Exif Orientation 标记,则包含值 1)。

提示

  • 对于 JPEG、TIFF、HEIF 和 HEIC (自 R2025a 起) 文件,info 结构体可以包括 Orientation 字段,该字段包含图像文件中 Exif Orientation 标记的值。

    下表显示当 AutoOrient 名称-值参量为 true 时,imread 函数如何使用 Exif Orientation 标记的值来变换图像数据。

    Orientation 字段的值变换的描述
    1无变换
    2围绕垂直轴翻转
    3旋转 180°
    4绕垂直轴翻转,然后旋转 180°
    5绕垂直轴翻转,然后逆时针旋转 90°
    6顺时针旋转 90°
    7绕垂直轴翻转,然后顺时针旋转 90°
    8逆时针旋转 90°

    (自 R2024b 起)

  • 对于 Adobe DNG 文件,imfinfo 函数返回 info 结构体的 HeightWidth 字段中预览图像的图像维度。

  • 对于 BMP 文件,info 结构体可以包含负的 Height 值。负值表示图像的原点在其左上角。在这种情况下,以像素为单位的图像的实际高度是 Height 值的绝对值。

版本历史记录

在 R2006a 之前推出

全部展开

另请参阅

| | | (Image Processing Toolbox)