使用八叉树来组织三维数据在GPU组织、数据、八叉树来、GPU

由网友(余生都是你)分享简介:我现在想实现光线投射体用C ++渲染,OpenGL和GLSL(用于GPU加速)。为了获得更好的质量和性能,我想用八叉树组织三维医学体数据,这样我就可以使用一些算法,如空间跳跃和自适应抽样容易。I am now trying to implement Ray Casting Volume Rendering using...

我现在想实现光线投射体用C ++渲染,OpenGL和GLSL(用于GPU加速)。为了获得更好的质量和性能,我想用八叉树组织三维医学体数据,这样我就可以使用一些算法,如空间跳跃和自适应抽样容易。

I am now trying to implement Ray Casting Volume Rendering using C++, OpenGL and GLSL (for GPU speeding). In order to get better quality and performance, I want to use octree to organize the 3D medical volume data,so I can use some algorithm such as Space Leaping and Adaptive Sampling easily.

但如何有效地建立八叉树?如何前往八叉树?当光线行进中的数据量,我怎么能确定哪个八叉树的细胞或叶的采样点属于?

But how to build the octree effectively? How to visit the octree? When the ray travels in the volume data, how can I determine which cell or leaf of the octree the sample point belong?

推荐答案

有GPU的八叉树的这里(这里也有可用的源代码 )。它是基于CG然而,但是,可以是考虑更多的优点。

There is an excellent article on GPU octree's available here (there is also source available here). It is based on Cg however, but that can be consider more an advantage.

看到你正在使用的医疗数据,随着更多的数据密集,你也可能有兴趣西里尔Crassin的pH值。 ð论文,它采用流GPU稀疏八叉树的为组织致密体素数据。这里八叉树是建立在使用3D体积纹理数据存储(叶节点)和一个砖池分配内部节点GPU上,从下向上内置然后MIP-map'ed为光线投射

Seeing as you are using medical data, with is more data dense, you may also be interested in Cyril Crassin's Ph. D Thesis, which uses streaming GPU sparse octree's for organisation of dense voxel data. Here the octree is built on the GPU using a 3D volume texture for data storage(leaf nodes) and a brick pool for allocating internal nodes, built from the bottom up then mip-map'ed for ray casting.

如果你愿意弯曲了一下,没有对稀疏的体素的一个大项目八叉树的使用CUDA,这将提供宝贵的见解稀疏八叉树的和光线投射到他们。

If you are willing to bend a bit, there is a big project on sparse voxel octree's using CUDA, which would provide valuable insight into sparse octree's and ray-casting into them.

阅读全文

相关推荐

最新文章