如何测量dicom中的距离

时间:2012-01-13 08:14:11

标签: dicom

我想知道如何测量dicom中两个像素之间的距离。已经做了一些谷歌发现像素间距(0028,0030)需要找到的距离。有人可以清楚解释......

感谢

2 个答案:

答案 0 :(得分:14)

假设您正在尝试测量主体/动物/幻像/中的距离,这一切都取决于您是想测量不同切片之间的距离还是仅测量同一切片中的距离。

体积DICOM系列除了需要考虑的像素间距外,通常还有一个切片间距(0012,0088)。请注意,切片厚度也是如此,这是不同的,应该用于计算距离,因为连续切片之间可能存在间隙或重叠。

如下定义体素间距矢量(伪代码)是有帮助的:

voxelspacing.x = first element of PixelSpacing (0028,0030), i.e. before "\"
voxelspacing.y = second element of PixelSpacing (0028,0030), i.e. after "\"
voxelspacing.z = SliceSpacing (0018,0088) or 0 if 2D and/or not specified 

一些脑死亡的制造商和去识别工具会破坏切片间距标签,在这种情况下,您必须从其他来源计算它,例如连续切片位置,患者图像位置等的差异,但这是另一回事

继续前进,您现在每个维度的体素之间的距离以毫米为单位。然后,您可以在pointA和pointB中给定体素坐标的情况下计算真实世界的欧氏距离:

delta = (pointA - pointB) * voxelspacing
distance = sqrt(delta.x^2 + delta.y^2 + delta.z^2);

所有操作符都是元素的。在计算距离之前将体素坐标与它们各自的间距相乘是至关重要的,因为体素通常不是各向同性的。

答案 1 :(得分:-5)

您需要知道显示器的点距。例如,jumbotron具有巨大的像素(猜测),因此距离大于典型的桌面监视器。请向显示器制造商咨询此信息。之后使用pythogorean theorum。 sqrt(a ^ 2 + b ^ 2)= c c是总距离,a / b是x和y距离。找到一个并且你会找到一个像素的坐标并从另一个像素中减去。 a =(x1-x2)b =(