使用 DCMTK - DICOM-Toolkit 3.6.0 Win - dcmdump.exe 因 DVT 图像而失败。
D:\dcmtk-3.6.0-win32-i386\bin>dcmdump -M -L +Qn -Un dicom-dvt-image-file
像这样的输出
=================[OUTPUT]=====================================================================
W: DcmItem: Length of element (ffff,000d) is odd
E: DcmElement: Unknown Tag & Data (ffff,000d) larger (1313013767) than remaining bytes in file
E: dcmdump: I/O suspension or premature end of stream: reading file: dicom-dvt-image-file
这是哪种 DICOM 图像类型 (0008,0008)?有什么提示吗?
编辑
使用选项“-E”我得到
========================================================
W: DcmItem: Length of element (ffff,000d) is odd
E: DcmElement: Unknown Tag & Data (ffff,000d) larger (1313013767) than remaining bytes in file
E: dcmdump: I/O suspension or premature end of stream: reading file: 6.1180118095212400.122.a000
# Dicom-File-Format
# Dicom-Meta-Information-Header
# Used TransferSyntax: Unknown Transfer Syntax
# Dicom-Data-Set
# Used TransferSyntax: Little Endian Implicit
(ffff,000d) ?? (not loaded) # 1313013767, 1 Unknown Tag & Data
使用选项“-d”我得到
D: $dcmtk: dcmdump v3.6.0 2011-01-06 $
D:
D: DcmItem::checkTransferSyntax() TransferSyntax="Little Endian Implicit"
D: DcmItem::checkTransferSyntax() TransferSyntax="Little Endian Implicit"
W: DcmItem: Length of element (ffff,000d) is odd
E: DcmElement: Unknown Tag & Data (ffff,000d) larger (1313013767) than remaining bytes in file
E: dcmdump: I/O suspension or premature end of stream: reading file: 6.1180118095212400.122.a000
看起来像 TransferSyntax:隐式小端序就是问题所在。
PS我从 Stack Overflow 移出了这个问题 https://stackoverflow.com/questions/49508699/using-dcmtk-dicom-toolkit-3-6-0-dcmdump-exe-failed
编辑1
尝试使用 dcmtk 3.6.3
D: $dcmtk: dcmdump v3.6.3 2018-02-05 $
D:
D: DcmFileFormat::lookForXfer() no MetaInfo found
D: DcmDataset::read() trying to detect transfer syntax of data set (because it is unknown)
D: DcmDataset::read() TransferSyntax="Little Endian Implicit"
W: DcmItem: Length of element (ffff,000d) is odd
E: DcmElement: Unknown Tag & Data (ffff,000d) larger (1313013767) than remaining bytes in file
W: DcmItem: Invalid Element (ffff,000d) found in data set
E: dcmdump: I/O suspension or premature end of stream: reading file:
编辑2
仔细看看 makhaon DICOMDUMP 我得到了这个“错误”
Detect if file is of Part10 format and detect encoding...
Read Preamble and DICOM Prefix..
DICOM Prefix ("DICM") not found; file is probably not of Part10 format
Try to parse file as non-Part10 file...
read DICOM Prefix ("DICM") at begining of file
DICOM Prefix ("DICM") is not found at the begining of file
Detect Encoding (Big Endian or Little Endian) by reading Group Number of first Element..
EDICOMParseError: Group number of first Element is larger than 0008
答案1
您可以尝试使用最新 DCMTK 版本(即版本 3.6.3)中的 dcmdump 转储 DICOM 文件,但在我看来该文件不是 DICOM 文件(缺少文件元信息)。
您能否提供二进制文件以供进一步分析?