IP Library Granted Patent US 12,079,925
Granted Patent B2
US 12,079,925 · App. 18/126,047 · Granted Sep 3, 2024

Occluder generation for structures in digital applications

Inventors: Kui Wu (Palo Alto, CA); Xifeng Gao (Palo Alto, CA); Zherong Pan (Palo Alto, CA)
Assignee: TENCENT AMERICA LLC
G06T15/40G06T17/205
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,079,925
App. No.
18/126,047
Granted
Sep 3, 2024
Kind
B2
Abstract

A method is performed at a computing system for automatically generating an occluder, the method includes receiving an input model of the visual three-dimensional structure, the input model having a plurality of faces. The method includes simplifying the input model into an initial occluder including a plurality of candidate patches in a patch-based coarse mesh. The method includes determining a first quality metric of the initial occluder measured by a first number of pixels corresponding to objects behind the visual three-dimensional structure that are blocked by the input model and the initial occluder along a first view direction. The method includes removing one or more candidate patches associated with the first number of pixels from the initial occluder while maintaining the first quality metric above a first threshold to form the occluder for the visual three-dimensional structure.

Claims (53)

1. A method for automatically generating an occluder for a visual three-dimensional structure, the method comprising:

receiving an input model of the visual three-dimensional structure, the input model comprising a plurality of faces;

simplifying the input model into an initial occluder including a plurality of candidate patches in a patch-based coarse mesh;

determining a first quality metric of the initial occluder associated with a precision, wherein the precision is measured by a first number of pixels corresponding to objects behind the visual three-dimensional structure that are blocked by the input model and the initial occluder along a first view direction; and

removing one or more candidate patches associated with the first number of pixels from the initial occluder while maintaining the first quality metric above a first threshold to form the occluder for the visual three-dimensional structure, wherein the first threshold is determined based on a change in a precision when a face from the initial occluder is removed, and the occluder blocks the objects behind the visual three-dimensional structure from being rendered in an application along the first view direction.

2. The method of claim 1 , wherein simplifying the input model into an initial occluder including a plurality of candidate patches in a patch-based coarse mesh comprises merging a first number of faces in the plurality of faces into the plurality of candidate patches, the plurality of candidate patches satisfying a threshold for the first quality metric.

3. The method of claim 2 , wherein merging the first number of faces into the plurality of candidate patches comprises combining faces within a first degree of coplanarity into a candidate planar patch in the plurality of candidate patches.

4. The method of claim 1 , further comprising:

voxelizing the input model to obtain a plurality of voxels for generating a voxelization-based coarse mesh; and

combining the patch-based coarse mesh and the voxelization-based coarse mesh to form the initial occluder.

5. The method of claim 4 , wherein the generating a voxelization-based coarse mesh includes:

voxelizing a bounding box of the input model to obtain the plurality of voxels;

computing a winding number for each of the plurality of voxels;

extracting an isosurface based on the winding number; and

simplifying the isosurface to obtain the voxelization-based coarse mesh.

6. The method of claim 1 , wherein the removing one or more candidate patches from the initial occluder comprises:

discretizing space around and within the input model into a plurality of equally sized blocks, each of the equally sized blocks having a plurality of view directions;

merging a portion of the plurality of equally sized blocks into a plurality of larger blocks; and

removing a view direction from a respective one of the plurality of larger blocks for which the input model is outside a view frustrum of the view direction.

7. The method of claim 1 , further comprising hole-filling the patch-based coarse mesh.

8. The method of claim 1 , wherein a number of faces in the occluder is less than 10% of a number of faces in the input model.

9. The method of claim 1 , wherein the first quality metric of the initial occluder is determined by identifying one or more pixels that are within a first two-dimensional area occluded by the input model of the visual three-dimensional structure and a second two-dimensional area occluded by the initial occluder along the first view direction.

10. A computing system comprising:

one or more processors;

memory; and

a plurality of programs stored in the memory, wherein the plurality of programs, when executed by the one or more processors, cause the computing system to perform a method for automatically generating an occluder for a visual three-dimensional structure, the method including:

receiving an input model of the visual three-dimensional structure, the input model comprising a plurality of faces;

simplifying the input model into an initial occluder including a plurality of candidate patches in a patch-based coarse mesh;

determining a first quality metric of the initial occluder associated with a precision, wherein the precision is measured by a first number of pixels corresponding to objects behind the visual three-dimensional structure that are blocked by the input model and the initial occluder along a first view direction; and

removing one or more candidate patches associated with the first number of pixels from the initial occluder while maintaining the first quality metric above a first threshold to form the occluder for the visual three-dimensional structure, wherein the first threshold is determined based on a change in a precision when a face from the initial occluder is removed, and the occluder blocks the objects behind the visual three-dimensional structure from being rendered in an application along the first view direction.

11. The computing system of claim 10 , wherein simplifying the input model into an initial occluder including a plurality of candidate patches in a patch-based coarse mesh comprises merging a first number of faces in the plurality of faces into the plurality of candidate patches, the plurality of candidate patches satisfying a threshold for the first quality metric.

12. The computing system of claim 11 , wherein merging the first number of faces into the plurality of candidate patches comprises combining faces within a first degree of coplanarity into a candidate planar patch in the plurality of candidate patches.

13. The computing system of claim 10 , wherein the method further comprises:

voxelizing the input model to obtain a plurality of voxels for generating a voxelization-based coarse mesh; and

combining the patch-based coarse mesh and the voxelization-based coarse mesh to form the initial occluder.

14. The computing system of claim 13 , wherein the generating a voxelization-based coarse mesh includes:

voxelizing a bounding box of the input model to obtain the plurality of voxels;

computing a winding number for each of the plurality of voxels;

extracting an isosurface based on the winding number; and

simplifying the isosurface to obtain the voxelization-based coarse mesh.

15. The computing system of claim 10 , wherein the removing one or more candidate patches from the initial occluder comprises:

discretizing space around and within the input model into a plurality of equally sized blocks, each of the equally sized blocks having a plurality of view directions;

merging a portion of the plurality of equally sized blocks into a plurality of larger blocks; and

removing a view direction from a respective one of the plurality of larger blocks for which the input model is outside a view frustrum of the view direction.

16. The computing system of claim 10 , wherein the method further comprises hole-filling the patch-based coarse mesh.

17. The computing system of claim 10 , wherein a number of faces in the occluder is less than 10% of a number of faces in the input model.

18. The computing system of claim 10 , wherein the first quality metric of the initial occluder is determined by identifying one or more pixels that are within a first two-dimensional area occluded by the input model of the visual three-dimensional structure and a second two-dimensional area occluded by the initial occluder along the first view direction.

19. A non-transitory computer readable storage medium storing a plurality of programs, wherein the plurality of programs, when executed by one or more processors of a computer system, cause the computing system to perform a method for automatically generating an occluder for a visual three-dimensional structure, the method including:

receiving an input model of the visual three-dimensional structure, the input model comprising a plurality of faces;

simplifying the input model into an initial occluder including a plurality of candidate patches in a patch-based coarse mesh;

determining a first quality metric of the initial occluder associated with a precision, wherein the precision is measured by a first number of pixels corresponding to objects behind the visual three-dimensional structure that are blocked by the input model and the initial occluder along a first view direction; and

removing one or more candidate patches associated with the first number of pixels from the initial occluder while maintaining the first quality metric above a first threshold to form the occluder for the visual three-dimensional structure, wherein the first threshold is determined based on a change in a precision when a face from the initial occluder is removed, and the occluder blocks the objects behind the visual three-dimensional structure from being rendered in an application along the first view direction.

20. The non-transitory computer readable storage medium of claim 19 , wherein the first quality metric of the initial occluder is determined by identifying one or more pixels that are within a first two-dimensional area occluded by the input model of the visual three-dimensional structure and a second two-dimensional area occluded by the initial occluder along the first view direction.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2024
From: WU, KUI; GAO, XIFENG; PAN, ZHERONG
To: TENCENT AMERICA LLC
Reel/Frame 068056/0507 →
Continuity (3)
Continuation 17866413 · Jul 15, 2022
Provisional Application 63302916 · Jan 25, 2022
Related Publication 20230237733A1 · Jul 27, 2023