Ray tracing on graphics hardware using kd-trees
    1.
    发明授权
    Ray tracing on graphics hardware using kd-trees 有权
    使用kd-tree对图形硬件进行光线跟踪

    公开(公告)号:US08963918B2

    公开(公告)日:2015-02-24

    申请号:US12241044

    申请日:2008-09-30

    IPC分类号: G06T15/00 G06T15/06 G06T17/00

    CPC分类号: G06T15/06 G06T17/005

    摘要: Described is a technology by which a ray tracer incorporates a GPU-based kd-tree builder for rendering arbitrary dynamic scenes. For each frame, the ray tracer builds a kd-tree for the scene geometry. The ray tracer spawns and traces eye rays, reflective and refractive rays, and shadow rays. For each ray to be traced, the ray tracer walks through the kd-tree until it reaches leaf nodes and associated triangles. When a ray passes through both sides of a splitting plane, the “far” sub-tree is pushed into the stack and the “near” sub-tree is traversed first.

    摘要翻译: 描述了一种技术,通过该技术,射线跟踪器结合了用于渲染任意动态场景的基于GPU的kd-tree构建器。 对于每个帧,光线跟踪器为场景几何构建一个kd-tree。 射线追踪器产生并追踪眼睛的光线,反射和折射光线以及阴影线。 对于要跟踪的每条光线,光线跟踪器穿过kd树,直到它到达叶节点和相关联的三角形。 当光线穿过分裂平面的两侧时,“远”子树被推入堆叠中,并且首先遍历“近”子树。

    Bulk-synchronous graphics processing unit programming
    2.
    发明授权
    Bulk-synchronous graphics processing unit programming 有权
    批量同步图形处理单元编程

    公开(公告)号:US08866827B2

    公开(公告)日:2014-10-21

    申请号:US12146715

    申请日:2008-06-26

    CPC分类号: G06F8/447 G06F8/31 G06F9/522

    摘要: Described is a technology in a computing environment comprising a programming language for general purpose computation on a graphics processing unit (GPU), along with an associated compiler. A Bulk-Synchronous GPU Programming (BSGP) program is programmed to include barriers to describe parallel processing on GPUs. A BSGP compiler detects barriers corresponding to supersteps, converts BSGP programs to kernels based on the barriers, and combines them. During compilation, the compiler aligns barriers in the statements and bundles the corresponding supersteps together. A par construct is provided to allow the programmer to control aspects of bundling, e.g., by specifying a block independent statements. Thread manipulation emulation is provided to transparently emulate thread creation and destruction, with operations fork and kill. Also provided is remote variable access intrinsics for efficient communications between threads, and collective primitive operations.

    摘要翻译: 描述了一种计算环境中的技术,包括用于图形处理单元(GPU)上的通用计算的编程语言以及相关联的编译器。 批量同步GPU编程(BSGP)程序被编程为包括描述GPU上的并行处理的障碍。 BSGP编译器检测与超级步骤相对应的障碍,基于障碍将BSGP程序转换为内核,并将其组合。 在编译期间,编译器将语句中的障碍放在一起,并将相应的超级步骤捆绑在一起。 提供了一个参考构造以允许程序员控制捆绑的方面,例如通过指定块独立语句。 线程处理仿真被提供以透明地模拟线程的创建和破坏,与操作fork和kill。 还提供了用于线程之间有效通信的远程变量访问内在函数和集合原语操作。

    BULK-SYNCHRONOUS GRAPHICS PROCESSING UNIT PROGRAMMING
    3.
    发明申请
    BULK-SYNCHRONOUS GRAPHICS PROCESSING UNIT PROGRAMMING 有权
    大容量图形处理单元编程

    公开(公告)号:US20090322769A1

    公开(公告)日:2009-12-31

    申请号:US12146715

    申请日:2008-06-26

    IPC分类号: G06T1/00

    CPC分类号: G06F8/447 G06F8/31 G06F9/522

    摘要: Described is a technology in a computing environment comprising a programming language for general purpose computation on a graphics processing unit (GPU), along with an associated compiler. A Bulk-Synchronous GPU Programming (BSGP) program is programmed to include barriers to describe parallel processing on GPUs. A BSGP compiler detects barriers corresponding to supersteps, converts BSGP programs to kernels based on the barriers, and combines them. During compilation, the compiler aligns barriers in the statements and bundles the corresponding supersteps together. A par construct is provided to allow the programmer to control aspects of bundling, e.g., by specifying a block independent statements. Thread manipulation emulation is provided to transparently emulate thread creation and destruction, with operations fork and kill. Also provided is remote variable access intrinsics for efficient communications between threads, and collective primitive operations.

    摘要翻译: 描述了一种计算环境中的技术,包括用于图形处理单元(GPU)上的通用计算的编程语言以及相关联的编译器。 批量同步GPU编程(BSGP)程序被编程为包括描述GPU上的并行处理的障碍。 BSGP编译器检测与超级步骤相对应的障碍,基于障碍将BSGP程序转换为内核,并将其组合。 在编译期间,编译器将语句中的障碍放在一起,并将相应的超级步骤捆绑在一起。 提供了一个参考构造以允许程序员控制捆绑的方面,例如通过指定块独立语句。 线程处理仿真被提供以透明地模拟线程的创建和破坏,与操作fork和kill。 还提供了用于线程之间有效通信的远程变量访问内在函数和集合原语操作。

    RAY TRACING ON GRAPHICS HARDWARE USING KD-TREES
    4.
    发明申请
    RAY TRACING ON GRAPHICS HARDWARE USING KD-TREES 有权
    使用KD-TREES对图形硬件进行RAY跟踪

    公开(公告)号:US20100079451A1

    公开(公告)日:2010-04-01

    申请号:US12241044

    申请日:2008-09-30

    IPC分类号: G06T17/00 G06T15/50

    CPC分类号: G06T15/06 G06T17/005

    摘要: Described is a technology by which a ray tracer incorporates a GPU-based kd-tree builder for rendering arbitrary dynamic scenes. For each frame, the ray tracer builds a kd-tree for the scene geometry. The ray tracer spawns and traces eye rays, reflective and refractive rays, and shadow rays. For each ray to be traced, the ray tracer walks through the kd-tree until it reaches leaf nodes and associated triangles. When a ray passes through both sides of a splitting plane, the “far” sub-tree is pushed into the stack and the “near” sub-tree is traversed first.

    摘要翻译: 描述了一种技术,通过该技术,射线跟踪器结合了用于渲染任意动态场景的基于GPU的kd-tree构建器。 对于每个帧,光线跟踪器为场景几何构建一个kd-tree。 射线追踪器产生并追踪眼睛的光线,反射和折射光线以及阴影线。 对于要跟踪的每条光线,光线跟踪器穿过kd树,直到它到达叶节点和相关联的三角形。 当光线穿过分裂平面的两侧时,“远”子树被推入堆叠中,并且首先遍历“近”子树。

    PHOTON MAPPING ON GRAPHICS HARDWARE USING KD-TREES
    5.
    发明申请
    PHOTON MAPPING ON GRAPHICS HARDWARE USING KD-TREES 有权
    使用KD-TREES的图形硬件上的照片映射

    公开(公告)号:US20100079452A1

    公开(公告)日:2010-04-01

    申请号:US12241046

    申请日:2008-09-30

    IPC分类号: G06T17/00 G06T15/60

    摘要: Described is a technology by which a GPU-based photon mapping mechanism/algorithm uses a kd-tree to render arbitrary dynamic scenes. For each frame, the mechanism emits and traces a set of photons into the scene. When a photon hits a surface, it can either be reflected, transmitted, or absorbed based on the surface material. Once photon tracing is done, a kd-tree is built for the stored photons. To estimate the radiance value at an arbitrary surface point, the k-nearest photons are located and filtered. The photon tracing and photon kd-tree construction, as well as the radiance estimation using k-nearest neighbor (KNN) searches are performed on graphics hardware, e.g., a GPU. In one example, only caustic photons are traced, whereby a photon is terminated and stored once it hits a diffuse surface.

    摘要翻译: 描述了基于GPU的光子映射机制/算法使用kd-tree渲染任意动态场景的技术。 对于每个帧,机制发射并跟踪一组光子到场景中。 当光子撞击表面时,它可以根据表面材料进行反射,透射或吸收。 光子跟踪完成后,为存储的光子建立一个kd树。 为了估计任意表面点处的辐射值,定位和过滤k个最近的光子。 在图形硬件(例如GPU)上执行光子跟踪和光子kd-tree构造以及使用k-最近邻(KNN)搜索的辐射估计。 在一个示例中,仅追踪苛性光子,由此一旦光子撞击漫射表面,就终止并存储光子。

    Photon mapping on graphics hardware using kd-trees
    6.
    发明授权
    Photon mapping on graphics hardware using kd-trees 有权
    使用kd-tree的图形硬件上的光子映射

    公开(公告)号:US08928658B2

    公开(公告)日:2015-01-06

    申请号:US12241046

    申请日:2008-09-30

    摘要: Described is a technology by which a GPU-based photon mapping mechanism/algorithm uses a kd-tree to render arbitrary dynamic scenes. For each frame, the mechanism emits and traces a set of photons into the scene. When a photon hits a surface, it can either be reflected, transmitted, or absorbed based on the surface material. Once photon tracing is done, a kd-tree is built for the stored photons. To estimate the radiance value at an arbitrary surface point, the k-nearest photons are located and filtered. The photon tracing and photon kd-tree construction, as well as the radiance estimation using k-nearest neighbor (KNN) searches are performed on graphics hardware, e.g., a GPU. In one example, only caustic photons are traced, whereby a photon is terminated and stored once it hits a diffuse surface.

    摘要翻译: 描述了基于GPU的光子映射机制/算法使用kd-tree渲染任意动态场景的技术。 对于每个帧,机制发射并跟踪一组光子到场景中。 当光子撞击表面时,它可以根据表面材料进行反射,透射或吸收。 光子跟踪完成后,为存储的光子建立一个kd树。 为了估计任意表面点处的辐射值,定位和过滤k个最近的光子。 在图形硬件(例如GPU)上执行光子跟踪和光子kd-tree构造以及使用k-最近邻(KNN)搜索的辐射估计。 在一个示例中,仅追踪苛性光子,由此一旦光子撞击漫射表面,就终止并存储光子。

    Real-time kd-tree construction on graphics hardware
    7.
    发明授权
    Real-time kd-tree construction on graphics hardware 有权
    图形硬件上的实时kd-tree构造

    公开(公告)号:US08581914B2

    公开(公告)日:2013-11-12

    申请号:US12241045

    申请日:2008-09-30

    IPC分类号: G06F17/30 G06F15/80

    CPC分类号: G06F17/30961

    摘要: Described is a technology for constructing kd-trees on GPUs, in a manner that is sufficiently fast to achieve real-time performance by exploiting GPU-based parallelism during the kd-tree construction. Tree nodes are built in breadth-first search order, e.g., to use a thread for each node at each level. For large nodes at upper tree levels, computations are parallelized over geometric primitives (instead of nodes). To this end, large nodes are split into child nodes by cutting off empty space based until an empty space ratio is achieved, and thereafter performing spatial splitting. Small nodes are split based on split candidate costs, e.g., computed by a surface area heuristic or a voxel volume heuristic (VVH).

    摘要翻译: 描述了一种用于在GPU上构建kd-tree的技术,其方法通过在kd-tree构造期间利用基于GPU的并行性足以快速实现实时性能。 树节点以宽度优先的搜索顺序构建,例如为每个级别的每个节点使用线程。 对于较高的树级别的大节点,计算是通过几何基元(而不是节点)并行化的。 为此,通过切断空白空间,直到实现空白比例,然后执行空间分割,将大型节点分割为子节点。 基于分组候选成本,例如由表面积启发式或体素体验启发式(VVH)计算的小节点被拆分。

    REAL-TIME KD-TREE CONSTRUCTION ON GRAPHICS HARDWARE
    8.
    发明申请
    REAL-TIME KD-TREE CONSTRUCTION ON GRAPHICS HARDWARE 有权
    图形硬件实时KD-TREE构造

    公开(公告)号:US20100082704A1

    公开(公告)日:2010-04-01

    申请号:US12241045

    申请日:2008-09-30

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30961

    摘要: Described is a technology for constructing kd-trees on GPUs, in a manner that is sufficiently fast to achieve real-time performance by exploiting GPU-bsaed parallelism during the kd-tree construction. Tree nodes are built in breadth-first search order, e.g., to use a thread for each node at each level. For large nodes at upper tree levels, computations are parallelized over geometric primitives (instead of nodes). To this end, large nodes are split into child nodes by cutting off empty space based until an empty space ratio is achieved, and thereafter performing spatial splitting. Small nodes are split based on split candidate costs, e.g., computed by a surface area heuristic or a voxel volume heuristic (VVH).

    摘要翻译: 描述了一种用于在GPU上构建kd-tree的技术,其方式通过在kd-tree构造期间利用GPU-bsaed并行性足够快地实现实时性能。 树节点以宽度优先的搜索顺序构建,例如为每个级别的每个节点使用线程。 对于较高的树级别的大节点,计算是通过几何基元(而不是节点)并行化的。 为此,通过切断空白空间,直到实现空白比例,然后执行空间分割,将大型节点分割为子节点。 基于分组候选成本,例如由表面积启发式或体素体验启发式(VVH)计算的小节点被拆分。

    Three dimensional polygon mesh deformation using subspace energy projection
    9.
    发明授权
    Three dimensional polygon mesh deformation using subspace energy projection 有权
    使用子空间能量投影的三维多边形网格变形

    公开(公告)号:US08749543B2

    公开(公告)日:2014-06-10

    申请号:US11464721

    申请日:2006-08-15

    CPC分类号: G06T17/20 G06T13/00

    摘要: A computer implemented method for deforming a 3D polygon mesh using non-linear and linear constraints. The method includes creating a coarse control 3D polygon mesh that completely encapsulates the 3D polygon mesh to be deformed, projecting the deformation energy of the 3D polygon mesh and the constraints of the 3D polygon mesh to the vertices, or subspace, of the coarse control 3D polygon mesh, and determining the resulting deformed 3D polygon mesh by iteratively determining the deformation energy of the subspace. The constraints may be either linear or non-linear constraints, for example, a Laplacian constraint, a position constraint, a projection constraint, a skeleton constraint, or a volume constraint.

    摘要翻译: 一种用于使用非线性和线性约束来变形3D多边形网格的计算机实现的方法。 该方法包括创建完全封装要变形的3D多边形网格的粗略控制3D多边形网格,将3D多边形网格的变形能量和3D多边形网格的约束投射到粗略控制3D的顶点或子空间 多边形网格,并且通过迭代地确定子空间的变形能量来确定产生的变形的3D多边形网格。 约束可以是线性或非线性约束,例如拉普拉斯约束,位置约束,投影约束,骨架约束或体积约束。

    High dynamic range image hallucination
    10.
    发明授权
    High dynamic range image hallucination 有权
    高动态范围图像幻象

    公开(公告)号:US08346002B2

    公开(公告)日:2013-01-01

    申请号:US11781227

    申请日:2007-07-20

    IPC分类号: G06K9/00

    CPC分类号: G06T5/008

    摘要: An apparatus and method provide for providing an output image from an input image. The input image may contain at least one portion that does not display certain desired information of the image, such as texture information. The desired information may be obtained from a second portion of the input image and applied to the at least one portion that does not contain the texture information or contains a diminished amount of the texture information. Also, at least one characteristic of the second portion of the input image may not be applied to the at least one portion such as illumination information. In another example, the input image may be decomposed into multiple parts such as a high frequency and a low frequency component. Each component may be hallucinated individually or independently and combined to form the output image.

    摘要翻译: 一种设备和方法提供从输入图像提供输出图像。 输入图像可以包含不显示图像的某些所需信息的至少一个部分,例如纹理信息。 可以从输入图像的第二部分获得期望的信息,并将其应用于不包含纹理信息的至少一个部分或者包含纹理信息的减少量。 此外,输入图像的第二部分的至少一个特征可以不被应用于诸如照明信息的至少一个部分。 在另一示例中,输入图像可以被分解成多个部分,例如高频和低频分量。 每个组件可以单独地或独立地幻影,并组合以形成输出图像。