Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

dicomread

读取 DICOM 图像

说明

示例

X = dicomread(filename) 从符合医学数字成像和通信 (DICOM) 标准的文件 filename 中读取图像数据。要读取包含一系列图像(这些图像构成一个图像体)的一组 DICOM 文件,请使用 dicomreadVolume

X = dicomread(info) 从 DICOM 元数据结构体 info 引用的消息中读取 DICOM 图像数据。

X = dicomread(___,"frames",f) 从图像中仅读取指定的帧 f,支持使用上述语法中输入参数的任意组合。

X = dicomread(___,Name,Value) 使用名称-值参数配置解析器来读取 DICOM 图像数据。

[X,cmap] = dicomread(___) 还返回颜色图 cmap

[X,cmap,alpha] = dicomread(___) 还返回 alpha,即 X 的 alpha 通道矩阵。

[X,cmap,alpha,overlays] = dicomread(___) 还返回 DICOM 文件中的任何重叠。

示例

全部折叠

从 DICOM 文件中读取索引图像,并使用 montage 显示它。

[X,map] = dicomread("US-PAL-8-10x-echo.dcm");
montage(X,map,"Size",[2 5]);

Figure contains an axes object. The axes object contains an object of type image.

从另一个 DICOM 文件中读取图像,并使用 imshow 显示它。

info = dicominfo("CT-MONO2-16-ankle.dcm");
Y = dicomread(info);
figure
imshow(Y,[]);

Figure contains an axes object. The axes object contains an object of type image.

输入参数

全部折叠

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

数据类型: char | string

DICOM 元数据,指定为一种结构体。您可以使用 dicominfo 函数创建 info 结构体。

要读取的帧,指定为正整数标量、正整数向量或 "all"。当 f 为数值时,dicomread 仅从图像中读取指定编号的帧。默认情况下,dicomread 读取 DICOM 图像的所有帧。

名称-值参数

将可选的参数对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参数名称,Value 是对应的值。名称-值参数必须出现在其他参数后,但对各个参数对组的顺序没有要求。

示例: dicomread("CT-MONO2-16-ankle.dcm",UseVRHeuristic=false) 在不使用启发式方法的条件下从 DICOM 文件中读取图像数据。

如果使用的是 R2021a 之前的版本,请使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: dicomread("CT-MONO2-16-ankle.dcm","UseVRHeuristic",false) 在不使用启发式方法的条件下从 DICOM 文件中读取图像数据。

读取那些值表示法 (VR) 模式切换不当的不符合 DICOM 标准的文件,指定为逻辑值 1 (true) 或 0 (false)。

当设置为 true 时,dicomread 使用启发式方法来帮助读取某些 VR 模式切换不当的不符合 DICOM 标准的文件。如果使用此启发式方法,dicomread 将显示一条警告。如果启用此启发式方法,少量符合标准的文件将无法正确读取。请将 UseVRHeuristic 设置为 false 以读取这些符合标准的文件。

数据类型: logical

输出参数

全部折叠

DICOM 图像,返回为下列选项之一:

  • 表示单帧灰度图像或索引图像的 m×n 矩阵。

  • 表示单帧真彩色 (RGB) 图像的 m×n×3 数组。

  • 表示多帧图像的四维数组。

数据类型: int8 | int16 | uint8 | uint16

与图像 X 关联的颜色图,返回为下列选项之一:

  • 如果 X 是索引图像,则 cmap 将以由 [0, 1] 范围内的值组成的 c×3 数值矩阵形式返回。每行是一个三元素 RGB 三元组,指定颜色图的单个颜色的红、绿和蓝分量。

  • 如果 X 是灰度或真彩色图像,则 cmap 为空 ([])。

数据类型: double

图像 X 的 alpha 通道矩阵,以 m×n 矩阵或非负整数的四维数组形式返回。如果像素不透明,则 alpha 的值为 0。否则,其值则为 cmap 的行索引。要使用 alpha,您应该使用 cmap 中的 RGB 值代换 X 中的值。alpha 输出具有与 X 相同的高度和宽度;对于多帧图像,其值是四维数组。alphaX 具有相同的数据类型。

数据类型: int8 | int16 | uint8 | uint16

DICOM 文件中的重叠区域,以 m×n 矩阵或二值四维数组形式返回。每个重叠区域均为 1 位黑白图像,其高度和宽度与 X 相同。如果文件中存在多个重叠区域,则 overlays 是四维多帧图像。如果文件中没有重叠区域,则 overlays 为空 ([])。

数据类型: logical

提示

  • 此函数从任何具有以下像素格式的文件中读取图像:

    • little-endian,隐式 VR,未压缩

    • little-endian,显式 VR,未压缩

    • big-endian,显式 VR,未压缩

    • JPEG(有损或无损)

    • JPEG2000(有损或无损)

    • 行程长度编码 (RLE)

    • GE 隐式 VR,带未压缩 BE 像素的 LE (1.2.840.113619.5.2)

版本历史记录

在 R2006a 之前推出