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]);

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

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

输入参数

全部折叠

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

详细信息

全部折叠

支持的传输语法 UID

dicomread 函数读取具有以下像素格式和传输语法 UID 的文件:

像素格式传输语法 UID
Implicit VR Little Endian1.2.840.10008.1.2
Explicit VR Little Endian1.2.840.10008.1.2.1
Explicit VR Big Endian1.2.840.10008.1.2.2
JPEG Baseline (Process 1)1.2.840.10008.1.2.4.50

JPEG Extended (Process 2 & 4)

1.2.840.10008.1.2.4.51

JPEG Spectral Selection, Non-Hierarchical (Process 6 & 8)

1.2.840.10008.1.2.4.53

JPEG Full Progression, Non-Hierarchical (Process 10 & 12)

1.2.840.10008.1.2.4.55

JPEG Lossless, Non-Hierarchical (Process 14)

1.2.840.10008.1.2.4.57

JPEG Extended, Hierarchical (Process 16 & 18)

1.2.840.10008.1.2.4.59

JPEG Spectral Selection, Hierarchical (Process 20 & 22)

1.2.840.10008.1.2.4.61

JPEG Full Progression, Hierarchical (Process 24 & 26)

1.2.840.10008.1.2.4.63

JPEG Lossless, Hierarchical (Process 28)

1.2.840.10008.1.2.4.65

JPEG Lossless, Non-Hierarchical, First-Order Prediction (Process 14 [Selection Value 1])

1.2.840.10008.1.2.4.70

RLE Lossless

1.2.840.10008.1.2.5

GE Implicit VR Little Endian Except Big Endian Pixels

1.2.840.113619.5.2

MPEG2 Main Profile / Main Level

1.2.840.10008.1.2.4.100

MPEG2 Main Profile / High Level

1.2.840.10008.1.2.4.101

MPEG-4 AVC/H.264 High Profile / Level 4.1

1.2.840.10008.1.2.4.102

MPEG-4 AVC/H.264 BD-compatible High Profile / Level 4.1

1.2.840.10008.1.2.4.103

MPEG-4 AVC/H.264 High Profile / Level 4.2 For 2D Video

1.2.840.10008.1.2.4.104

MPEG-4 AVC/H.264 High Profile / Level 4.2 For 3D Video

1.2.840.10008.1.2.4.105

MPEG-4 AVC/H.264 Stereo High Profile / Level 4.2

1.2.840.10008.1.2.4.106

HEVC/H.265 Main Profile / Level 5.1

1.2.840.10008.1.2.4.107

HEVC/H.265 Main 10 Profile / Level 5.1

1.2.840.10008.1.2.4.108

版本历史记录

在 R2006a 之前推出

全部展开

另请参阅

| | | | | | | | (Medical Imaging Toolbox) | (Medical Imaging Toolbox)