Patent classifications
G06T17/005
ACCELERATED PROCESSING VIA A PHYSICALLY BASED RENDERING ENGINE
One embodiment of a computer-implemented method for processing ray tracing operations in parallel includes receiving a plurality of rays and a corresponding set of importance sampling instructions for each ray included in the plurality of rays for processing, wherein each ray represents a path from a light source to at least one point within a three-dimensional (3D) environment, and each corresponding set of importance sampling instruction is based at least in part on one or more material properties associated with at least one surface of at least one object included in the 3D environment; assigning each ray included in the plurality of rays to a different processing core included in a plurality of processing cores; and for each ray included in the plurality of rays, causing the processing core assigned to the ray to execute the corresponding set of importance sampling instructions on the ray to generate a direction for a secondary ray that is produced when the ray intersects a surface of an object within the 3D environment.
DEVICE AND METHOD FOR PROCESSING POINT CLOUD DATA
A device for processing point cloud data according to embodiments may comprise the steps of: encoding point cloud data including geometry information and attribute information; and transmitting a bitstream including the encoded point cloud data.
OPERATIONS USING SPARSE VOLUMETRIC DATA
A volumetric data structure models a particular volume representing the particular volume at a plurality of levels of detail. A first entry in the volumetric data structure includes a first set of bits representing voxels at a first level of detail, the first level of detail includes the lowest level of detail in the volumetric data structure, values of the first set of bits indicate whether a corresponding one of the voxels is at least partially occupied by respective geometry, where the volumetric data structure further includes a number of second entries representing voxels at a second level of detail higher than the first level of detail, the voxels at the second level of detail represent subvolumes of volumes represented by voxels at the first level of detail, and the number of second entries corresponds to a number of bits in the first set of bits with values indicating that a corresponding voxel volume is occupied.
Virtual asset map and index generation systems and methods
A system for generating a nearest neighboring vertices index. The system includes a memory and one or more processors. The one or more processors receive a base figure asset and an item asset, determine nearest neighbor vertices between the base figure asset and the item asset using at least one of a k-dimensional tree algorithm and a geodesic algorithm, and generate the nearest neighboring vertices index based on the determined nearest neighbor vertices between the base figure asset and the item asset.
Point Cloud Compression
A system comprises an encoder configured to compress attribute information for a point cloud and/or a decoder configured to decompress compressed attribute information for the point cloud. Attribute values for at least one starting point are included in a compressed attribute information file and attribute correction values used to correct predicted attribute values are included in the compressed attribute information file. Attribute values are predicted based, at least in part, on attribute values of neighboring points and distances between a particular point for whom an attribute value is being predicted and the neighboring points. The predicted attribute values are compared to attribute values of a point cloud prior to compression to determine attribute correction values. A decoder follows a similar prediction process as an encoder and corrects predicted values using attribute correction values included in a compressed attribute information file.
Systems and methods for efficient rendering and processing of point clouds using textures
A rendering system adapts textures used by a Graphics Processing Unit (“GPU”) for the purpose of transferring data points of a point cloud to the GPU for processing and rendering. The rendering system determines the GPU constraints, and obtains a tree-based representation for the point cloud data points. The rendering system selects nodes from the tree-based representation that represent at least a first set of data points within the field-of-view with a first level of detail, that represent a second set of data points within the field-of-view with a different second level of detail, and that collectively satisfy the GPU constraints. The rendering system partitions a texture into chunks, encodes each chunk with data from different selected nodes, and presents an image based on rendered partial images generated by the GPU for the texture chunks.
Apparatus and method for identifying an articulatable part of a physical object using multiple 3D point clouds
An apparatus comprises an input interface configured to receive a first 3D point cloud associated with a physical object prior to articulation of an articulatable part, and a second 3D point cloud after articulation of the articulatable part. A processor is operably coupled to the input interface, an output interface, and memory. Program code, when executed by the processor, causes the processor to align the first and second point clouds, find nearest neighbors of points in the first point cloud to points in the second point cloud, eliminate the nearest neighbors of points in the second point cloud such that remaining points in the second point cloud comprise points associated with the articulatable part and points associated with noise, generate an output comprising at least the remaining points of the second point cloud associated with the articulatable part without the noise points, and communicate the output to the output interface.
SINGLE-IMAGE INVERSE RENDERING
A single two-dimensional (2D) image can be used as input to obtain a three-dimensional (3D) representation of the 2D image. This is done by extracting features from the 2D image by an encoder and determining a 3D representation of the 2D image utilizing a trained 2D convolutional neural network (CNN). Volumetric rendering is then run on the 3D representation to combine features within one or more viewing directions, and the combined features are provided as input to a multilayer perceptron (MLP) that predicts and outputs color (or multi-dimensional neural features) and density values for each point within the 3D representation. As a result, single-image inverse rendering may be performed using only a single 2D image as input to create a corresponding 3D representation of the scene in the single 2D image.
Virtual Object Structures and Interrelationships
A virtual object system can orchestrate virtual objects defined as a collection of components and with inheritance in an object hierarchy. Virtual object components can include a container, data, a template, and a controller. A container can define the volume the virtual object is authorized to write into. A virtual object's data can specify features such as visual elements, parameters, links to external data, meta-data, etc. The template can define view states of the virtual object and contextual breakpoints for transitioning between them. Each view state can control when and how the virtual object presents data elements. The controller can define logic for the virtual object to respond to input, context, etc. The definition of each object can specify which other object in an object hierarchy that object extends, where extending an object includes inheriting that object's components, which can be modified or overwritten as part of the extension.
Interactive medical data querying
A method of generating a digital audio-visual sequence comprising one or more three-dimensional structures and an audio stream in real time is disclosed, comprising the steps of capturing and processing vocal input from a user, identifying at least one semantic construct from the captured vocal input, matching identified semantic construct with at least one structure tag and at least one case tag, wherein the structure tag is associated with a three-dimensional structure and the case tag is associated with an alphanumerical description of the three-dimensional structure, and generating a sequence based on one or more matched structure tag(s) and one or more matched case tag(s). Generating comprises scheduling synchronous rendering of the three-dimensional structure in a user interface and voice synthesising of the alphanumerical description. An apparatus embodying the method is also disclosed, including display means for displaying the user interface, voice synthesising means for processing the alphanumerical description into an audio signal, and audio means for outputting the audio signal.