Opengl 平面分块多分辨率体绘制

Opengl 平面分块多分辨率体绘制,opengl,graphics,3d,volume-rendering,Opengl,Graphics,3d,Volume Rendering,为了将大体积数据加载到我的光线投射体绘制系统中,我想实现平面块多分辨率策略-根据子块的重要性,将体积划分为许多大小相同但分辨率或LOD(细节级别)不同的子块 我读了一篇文章,上面说我可以这样做: 通过分析内部数据的变化率,我们可以确定每个块的特定LOD,以显示块的重要性 图1:具有2D纹理的平面块 根据平坦阻塞策略,块的维数必须是2的幂,即将体积除以2 ^ n×2 ^ n×2 ^ n的大小,因此对于每个块,存在n+1个细节级别(0~n),因为内部数据的变化是块重要性的数学基础,砌块的每一细节等

为了将大体积数据加载到我的光线投射体绘制系统中,我想实现平面块多分辨率策略-根据子块的重要性,将体积划分为许多大小相同但分辨率或LOD(细节级别)不同的子块

我读了一篇文章,上面说我可以这样做:

通过分析内部数据的变化率,我们可以确定每个块的特定LOD,以显示块的重要性

图1:具有2D纹理的平面块

根据平坦阻塞策略,块的维数必须是2的幂,即将体积除以2 ^ n×2 ^ n×2 ^ n的大小,因此对于每个块,存在n+1个细节级别(0~n),因为内部数据的变化是块重要性的数学基础,砌块的每一细节等级可通过以下公式进行限定

公式1:

这是第i个块的变化,avgi表示某个父块的第i个子块中2^(3*max_l)标量值的平均值,max_l表示父块的最高细节级别,l表示分析当前的细节级别。Sj表示标量值。最后将标量值的变化范围设置为[0,1]带着约束

我的问题是:正如它所说的,在某个父块的第i个子块中有2^(3*max_l)个体素,在图像1中,什么是子块,什么是父块?此外,根据公式,似乎有2^(3*(max_l-l))个体素。我不明白~

平面分块多分辨率策略-将体积划分为大小相同的多个子块

“八叉树细分”将是更传统的术语,而不是“阻塞多分辨率策略”。事实上,min | max八叉树已经被用于加速体积光线投射数十年了,在这个主题上有大量的出版物和专利

正如它所说的,在特定图像的第i个子块中有2^(3*max_l)个体素

If(从根到叶的八叉树级别的计算为:0->max\l)

然后

2^(3*max_l)是所有体积中所有体素的数量

2^(3*(max_l-l))是级别“l”的细分体积(子体积)中的体素数

是块重要度

的数学基础
好吧,如果你这样定义它,那么它确实是一个“基础”;o) 你所采用的启发式方法确实是武断的;在这种情况下,您使用“标准偏差”作为度量;显然,你可能会对每一分册应用其他措施,如:(max-min)>>(max\u-l)或((max-avg)*(avg-min))>>(max\u-l)等。

我不确定帮助人们阅读技术论文是否适合这个问答网站。从(未引用的)论文中释义的上下文混乱且不完整。