0

我正在实现一个体积渲染器,我想使用窗口传递函数来使用户能够更改某些区域的不透明度。据我了解,window、offset和scale三个变量

窗口是我想要更改 alpha 值的多少,偏移量是我的窗口与最小值之间的距离。但我不确定规模是多少?是一个 alpha 值到下一个 alpha 值之间的增加,还是我当前窗口中的最大 alpha?

我有什么遗漏或有什么问题吗?

这就是我的想法

这就是我的想法

4

2 回答 2

0

通常,传递函数是从旧 alpha 到新 alpha 的重新映射。根据经验,进入传递函数的值范围与输出的值相同。

因此,如果您的原始 alpha 值在 [0,1] 范围内,那么您的函数产生的值也应该在 [0,1] 范围内。

(顺便说一句:窗口函数是不同的,你可以将它作为传入值的内积相乘)

于 2014-12-06T12:52:55.700 回答
0

在这种情况下,“规模”听起来不像是一个标准术语。您需要从向您提供参数的人那里获得确切的定义。

在主要用于医疗体积数据集的 DICOM 中,两个直接相关的标签是:

  • WindowCenter,即标签(0028,1050)。在您的图表中,这是倾斜部分的中心位置。
  • WindowWidth,即标记(0028,1051)。在您的图表中,这是倾斜部分的总宽度。

换句话说,如果 alpha 在值 Value0 之前为 0,并且从 Value1 开始为 1:

WindowCenter = (Value0 + Value1) / 2
WindowWidth = Value1 - Value2

或者以相反的方向编写关系:

Value0 = WindowCenter - WindowWidth / 2
Value1 = WindowCenter + WindowWidth / 2

我在这个领域听到的最接近“缩放”的标准术语是“RescaleIntercept”和“RescaleSlope”标签。但是那些定义了数据本身的线性映射,而不是传递函数。

我最好的猜测是“window”对应于上述定义中的“WindowWidth”,而“offset”对应于“WindowCenter”。但是您确实需要从这些参数的原始来源请求澄清。并问他们“规模”是什么意思。

于 2014-12-06T18:40:41.820 回答