Method and apparatus for transforming polygon data to voxel data for general purpose applications
First Claim
1. An efficient method of transforming scan-convertible 3D geometric data to voxel data, comprising the steps of:
- acquiring 3D geometric data;
obtaining the resolution of a final voxel grid to be produced;
mapping each geometric unit in the 3D geometric data to an imaginary voxel grid having a higher resolution than the resolution of the final voxel grid;
with respect to the geometric units that are mapped to the imaginary voxels in the imaginary voxel grid corresponding to a final voxel in the final voxel grid, obtaining a weighted average of the attribute values of those geometric units with respect to the imaginary voxels; and
storing the weighted average as the attribute value of the final voxel.
6 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus are provided for transforming 3D geometric data, such as polygon data (16) formed of polygons (18), into volumetric data (14) formed of voxels (12). According to the method, 3D geometric data to be converted to voxel data are acquired, and the resolution of a final voxel grid to be produced is obtained (e.g., user-defined). Then, each geometric unit (e.g., a polygon) in the 3D geometric data is mapped (or scan converted) to an imaginary voxel grid having a higher resolution than the resolution of the final voxel grid. Next, with respect to the geometric units that are mapped to the imaginary voxels in the imaginary voxel grid dividing one final (actual) voxel into smaller sub-volumes, a weighted average of the attribute values (color, normal, intensity, etc.) is obtained. The weighted average is stored as the attribute value of the final voxel.
180 Citations
38 Claims
-
1. An efficient method of transforming scan-convertible 3D geometric data to voxel data, comprising the steps of:
-
acquiring 3D geometric data;
obtaining the resolution of a final voxel grid to be produced;
mapping each geometric unit in the 3D geometric data to an imaginary voxel grid having a higher resolution than the resolution of the final voxel grid;
with respect to the geometric units that are mapped to the imaginary voxels in the imaginary voxel grid corresponding to a final voxel in the final voxel grid, obtaining a weighted average of the attribute values of those geometric units with respect to the imaginary voxels; and
storing the weighted average as the attribute value of the final voxel. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of transforming surface-based 3D data to voxel data, comprising the steps of:
-
(a) acquiring surface-based 3D data;
(b) acquiring a texture map associated with the surface-based 3D data;
(c) mapping each surface unit in the surface-based 3D data to a voxel grid;
(d) for each voxel in the voxel grid mapped from the surface unit, obtaining a color value by interpolating the surface unit'"'"'s texture coordinates and then performing a lookup of the interpolated coordinate in the texture map; and
(e) storing the obtained color value for each voxel, wherein the color value represents and replaces the texture map. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method of transforming surface-based 3D data to voxel data, comprising the steps of:
-
(a) acquiring surface-based 3D data;
(b) acquiring an attribute map associated with the surface-based 3D data;
(c) mapping each surface unit in the surface-based 3D data to a voxel grid;
(d) for each voxel in the voxel grid mapped from the surface unit, obtaining an attribute value by interpolating the surface unit'"'"'s attribute coordinates and then performing a lookup of the interpolated attribute coordinate in the attribute map; and
(e) storing the obtained attribute value for each voxel, wherein the attribute value represents and replaces the attribute map. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A method of transforming surface-based 3D data to voxel data for the purpose of complexity decimation, comprising the steps of:
-
acquiring surface-based 3D data;
obtaining the resolution of an intended display; and
mapping each surface unit in the surface-based 3D data to a voxel grid having a resolution corresponding to the resolution of the intended display. - View Dependent Claims (25, 26, 27, 28, 29)
-
-
30. A method of generating a normal for a voxel in voxel graphics, comprising:
-
(a) projecting a scan plane intersecting the voxel, wherein the scan plane is perpendicular to a first axis;
(b) using the scan plane, scanning for voxels in the direction perpendicular to the scan plane;
(c) recording the traversed distance before a voxel was found for each voxel space in the scan plane; and
(d) obtaining a normal (N1, N2, N3), wherein N1is the first component of the normal along the first axis, N2 is the second component of the normal along the second axis perpendicular to the first axis, and N3 is the third component of the normal perpendicular to both the first and second axes, by;
(i) setting N1 as 1;
(ii) obtaining N2 by adding incremental changes between the traversed distances recorded in each adjacent voxel spaces along the second axis and dividing the total incremental changes by the number of voxel spaces; and
(iii) obtaining N3 by adding incremental changes between the traversed distances recorded in each adjacent voxel spaces along the third axis and dividing the total incremental changes by the number of voxel spaces. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38)
-
Specification