dcm4che - 标签是“8 字节整数”?
dcm4che - tag is a "8 byte integer"?
我是dcm4che新手我指的是the javadoc of dcm4che2 api
请原谅我的问题很基础
我正在尝试从文件创建 DICOM 对象 "org.dcm4che2.data.DicomObject"。
大多数与 DICOM 标签一起使用的 DicomObject 成员函数都希望将标签值指定为 "ggggeeee" ,其中 gggg 是四位数字组 ID,eeee 是四位数字元素 ID。
dcm4j 文档将标记值称为 "tag - (group, element) as 8 byte integer: ggggeeee." - 预期的数据类型是 int
我想这只是一个用词不当(遗憾的是,尽管 api 文档中始终遵循它)
java "int" 数据类型只能容纳四个字节,不是吗?
所以我们宁愿需要提供一个 8 位数字而不是 8 个字节,不是吗。
例如,如果我指定 DICOM 标签传输语法 UID - 这是第 2 组标签 10,那么我应该很好地传递一个值,不是吗?
int dicomTagXferSyntaxUid=0x00020010;
虽然很明显,但我想知道为什么 dcm4che 文档始终将其称为“8 字节整数”……我错过了什么?
欢迎评论
约格什
一定是打错了,因为那个“8字节整数”用来描述int
类型的方法参数,只有4字节。
正如您自己所说,本意是“8 位整数”是有道理的。
DCM4CHE文档中的说法是正确的。快速浏览标签 class 的 Java 文档显示:
org.dcm4che2.data
Class 标签
java.lang.Object
由 org.dcm4che2.data.Tag
扩展
public class Tag
extends java.lang.Object
提供标签常量。
字段摘要
static int _3DRenderingType
(0072,0520) VR=CS, VM=1-n 3D Rendering Type
static int AbsoluteChannelDisplayScale
(003A,0248) VR=FL, VM=1 Absolute Channel Display Scale
.
.
.
这些值显然是 int 类型,在 Java 中是 32 位或 4 字节,完全按照 DCM4CHE 文档。我认为您的误解是您假设标签表示形式 (gggg,eeee) 中的每个 g 和 e 都是一个字节。它不是;相反,它是一个十六进制数字,因此每对 ee 代表一个字节。
我是dcm4che新手我指的是the javadoc of dcm4che2 api
请原谅我的问题很基础 我正在尝试从文件创建 DICOM 对象 "org.dcm4che2.data.DicomObject"。
大多数与 DICOM 标签一起使用的 DicomObject 成员函数都希望将标签值指定为 "ggggeeee" ,其中 gggg 是四位数字组 ID,eeee 是四位数字元素 ID。
dcm4j 文档将标记值称为 "tag - (group, element) as 8 byte integer: ggggeeee." - 预期的数据类型是 int
我想这只是一个用词不当(遗憾的是,尽管 api 文档中始终遵循它)
java "int" 数据类型只能容纳四个字节,不是吗? 所以我们宁愿需要提供一个 8 位数字而不是 8 个字节,不是吗。
例如,如果我指定 DICOM 标签传输语法 UID - 这是第 2 组标签 10,那么我应该很好地传递一个值,不是吗?
int dicomTagXferSyntaxUid=0x00020010;
虽然很明显,但我想知道为什么 dcm4che 文档始终将其称为“8 字节整数”……我错过了什么?
欢迎评论
约格什
一定是打错了,因为那个“8字节整数”用来描述int
类型的方法参数,只有4字节。
正如您自己所说,本意是“8 位整数”是有道理的。
DCM4CHE文档中的说法是正确的。快速浏览标签 class 的 Java 文档显示:
org.dcm4che2.data Class 标签
java.lang.Object 由 org.dcm4che2.data.Tag
扩展public class Tag
extends java.lang.Object
提供标签常量。
字段摘要
static int _3DRenderingType
(0072,0520) VR=CS, VM=1-n 3D Rendering Type
static int AbsoluteChannelDisplayScale
(003A,0248) VR=FL, VM=1 Absolute Channel Display Scale
.
.
.
这些值显然是 int 类型,在 Java 中是 32 位或 4 字节,完全按照 DCM4CHE 文档。我认为您的误解是您假设标签表示形式 (gggg,eeee) 中的每个 g 和 e 都是一个字节。它不是;相反,它是一个十六进制数字,因此每对 ee 代表一个字节。