Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Objections
Claims 1, 4, 5, 11 and 14 are objected to because of the following informalities:
Claim 1 recites “A method for determining a vertex ambient occlusion value,,”; it should be changed to A method for determining a vertex ambient occlusion value,[[,]].
Claims 4 and 11 recites “performing second interpolation calculations on interconnecting edges between the first vertex and the first interpolation points to obtain second interpolation points”; it should be changed to performing second interpolation calculations on interconnecting edges between the first vertex and the first interpolation points [[ ]] to obtain second interpolation points.
Claims 5 and 14 recite “acquiring ambient basic occlusion values of the first vertex respectively for the first one or more triangles based on the sampling points ;”; it should be changed to acquiring ambient basic occlusion values of the first vertex respectively for the first one or more triangles based on the sampling points[[ ]];.
Appropriate correction is required.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1, 7-8 and 16-17 are rejected under 35 U.S.C. 103 as being unpatentable over Garland et al. (Surface Simplification Using Quadric Error Metrics, SIGGRAPH '97, 1997) in view of Bunnell (Dynamic Ambient Occlusion and Indirect Lighting, 2005).
Regarding claim 1, Garland et al. (hereinafter Garland) discloses a method (Garland, 1 Introduction, [0003], “We have developed an algorithm which produces simplified versions of such polygonal models”), comprising:
performing a triangular surface segmentation on a to-be-processed model to obtain a triangular surface model (Garland, 2 Background and Related work, [0001], “We assume that the input model (Mn) has been triangulated”), the triangular surface model comprising a plurality of triangles and a plurality of vertices (Garland, Fig. 1), each triangle being associated with three vertices that are connected by connecting edges (Gardland, Fig. 1);
calculating errors respectively associated with a plurality of connecting edges based on values of the plurality of vertices (Garland, 4 Approximating Error with Quadrics, [0001], “To define this cost, we attempt to characterize the error at each vertex”); and
collapsing a first connecting edge between two vertices based on the errors to obtain a simplified triangular surface model (Garland, 4.1 Algorithm Summary, [0001], “Our simplification algorithm is built around pair contractions and error quadrics”. Fig. 1).
Garland does not expressly disclose “calculating ambient occlusion values respectively of the plurality of vertices”;
Bunnell discloses determining a vertex ambient occlusion value (14.2 Ambient Occlusion, [0002], “We can calculate the accessibility value at each element as 1 minus the amount by which all the other elements shadow the element”);
calculating ambient occlusion values respectively of a plurality of vertices (Bunnell, 14.1 Surface Elements, [0001], “We create one element per vertex of the mesh. Assuming that the vertices are defined with a position and normal already, we just need to calculate the area of each element”. In addition, in 14.2 Ambient Occlusion, [0002], “We can calculate the accessibility value at each element as 1 minus the amount by which all the other elements shadow the element… We use an approximation based on the solid angle of an oriented disk to calculate the amount by which an emitter element shadows a receiver element”. Ambient occlusion is calculated per vertex),
a first ambient occlusion value of a first vertex being calculated based on first one or more triangles associated with the first vertex (Bunnell, 14.1 Surface Elements, [0001], “We can calculate the accessibility value at each element as 1 minus the amount by which all the other elements shadow the element…We calculate the area at a vertex as the sum of one third of the area of the triangles that share the vertex (or one-fourth of the area for quads)”. In addition, in 14.2 Ambient Occlusion, [0002], “. Given that A is the area of the emitter, the amount of shadow can be approximated by”).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to use the ambient occlusion values disclosed in Bunnell to compute the error approximation in Garland. The motivation for doing so would have been maintaining consistent global illumination effect.
Regarding claim 7, Garland discloses acquiring surface normals of the plurality of triangles (Garland, 5 Deriving error quadrics, [0001], “where p=[abcd]T represents the plane defined by the equation ax+by+cz+d=0”. A, B and C define the plane normal vector);
calculating distances from the plurality of vertices to the surface normal (Garland, 5 Deriving error quadrics, [0001], “we can define the error of the vertex with respect to this set as the sum of squared distances to its planes”);
calculating the errors associated with the connecting edges based on the distances (Garland, 5 Deriving error quadrics, [0002], “This fundamental error quadric Kp can be used to find the squared distance of any point in space to the plane p”);
Garland as modified by Bunnell with the same motivation from claim 1 discloses ambient occlusion values (Bunnell, 14.1 Surface Elements, [0001], “we just need to calculate the area of each element. We calculate the area at a vertex as the sum of one third of the area of the triangles that share the vertex”).
Regarding claim 8, Garland discloses selecting the first connecting edge that has a current smallest error from the errors in a current round of iteration (Garland, 4.1 Algorithm Summary, [0001], “Iteratively remove the pair(v1, v2) of least cost from the heap”); and
collapsing the first connecting edge to obtain the simplified triangular surface model that is an output of the current round of iteration and an input to a next round of iteration (Garland, 4.1 Algorithm Summary, [0001], “Iteratively remove the pair(v1, v2) of least cost from the heap, contract this pair”. The output becomes the input for the next loop).
Regarding claims 16-17, claims 16-17 recite functions that are similar in scope to the method steps recited in claims 7-8 and therefore are rejected under the same rationale.
Claims 2 and 11 are rejected under 35 U.S.C. 103 as being unpatentable over Garland et al. in view of Bunnell, as applied to claims 1 and 10, in further view of Graziosi et al. (US 2023/0306684).
Regarding claim 2, Garland as modified by Bunnell with the same motivation from claim 1 discloses calculating an ambient occlusion value of a vertex based on the first triangle associated with the vertex (Bunnell, 14.1 Surface Elements, [0001], “We can calculate the accessibility value at each element as 1 minus the amount by which all the other elements shadow the element…We calculate the area at a vertex as the sum of one third of the area of the triangles that share the vertex (or one-fourth of the area for quads)”. In addition, in 14.2 Ambient Occlusion, [0002], “. Given that A is the area of the emitter, the amount of shadow can be approximated by”);
Garland as modified by Bunnell does not expressly disclose “grouping plurality of vertices in the triangular surface model according to normal orientations of the plurality of triangles associated with the plurality of vertices to obtain at least a first vertex set, the first vertex set including first one or more vertices being at least associated with a first triangle”;
Graziosi et al. (hereinafter Graziosi) discloses grouping plurality of vertices in the triangular surface model according to normal orientations of the plurality of triangles associated with the plurality of vertices to obtain at least a first vertex set, the first vertex set including first one or more vertices being at least associated with a first triangle (Graziosi, [0023], “Normal calculation 150 is calculating the normals of each triangle (e.g., cross product of the triangle’s edges)… a normal of a triangle is able to point up, down, left, right, front, or back, and is able to be classified based on the direction/orientation. In some embodiments, the triangles are color-coded based on the orientation of their normals (e.g., all of the triangles with a normal pointing up are colored green)”. Vertices associated with triangles having a first normal orientation are grouped into a first vertex set).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to calculate the ambient occlusion values of Bunnell using the vertex set derived from the normal orientation of a plurality of triangles, as taught by Graziosi. The motivation for doing so would have been improving efficiency and better geometric representation of local surface structure.
Regarding claim 11, claim 11 recites functions that are similar in scope to the method steps recited in claim 2 and therefore are rejected under the same rationale.
Claim 3 and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Garland et al. in view of Bunnell, as applied to claims 1 and 10, in further view of Portsmouth (Efficient barycentric point sampling on meshes, Pacific Graphics, 2017).
Regarding claim 3, Garland discloses the one or more triangles associated with the vertex (Garland, Fig. 1);
Garland as modified by Bunnell with the same motivation from claim 1 discloses calculating areas of the first one or more triangles associated with the first vertex (Bunnell, 14.1 Surface Elements, [0001], “we just need to calculate the area of each element. We calculate the area at a vertex as the sum of one third of the area of the triangles that share the vertex”);
calculating the first ambient occlusion value of the first vertex based the first one or more triangles and the areas of the first one or more triangles (Bunnell, 14.1 Surface Elements, [0001], “We can calculate the accessibility value at each element as 1 minus the amount by which all the other elements shadow the element…We calculate the area at a vertex as the sum of one third of the area of the triangles that share the vertex (or one-fourth of the area for quads)”);
Garland as modified by Bunnell does not expressly disclose “acquiring sampling points in the first one or more triangles associated with the first vertex”;
Portsmouth discloses acquiring sampling points in a first one or more triangles associated with a first vertex (Portsmouth, 2. Method, “In Figure 3 we show a simple example of a point distribution sampled via this inversion method, in which the per-vertex weight m is taken to be the magnitude of the local discrete vertex curvature”).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to calculate the ambient occlusion values of Bunnell using the sampling points as taught by Portsmouth. The motivation for doing so would have been providing more accurate occlusion measurements for vertices of the mesh.
Regarding claim 12, claim 12 recites functions that are similar in scope to the method steps recited in claim 3 and therefore are rejected under the same rationale.
Claims 9 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Garland et al. in view of Bunnell, as applied to claims 1 and 17, in further view of Talton (A Short Survey of Mesh Simplification Algorithm, Course Notes for CS 598 MJG, 2004).
Regarding claim 9, Garland discloses updated connecting edges in the simplified triangular surface model in the next round of iteration (Garland, 4.1 Algorithm Summary, [0001], “Iteratively remove the pair(v1, v2) of least cost from the heap”); determining the simplified triangular surface model that is output from the current round of iteration to be a target triangular surface model to be used for rendering (Garland, Figs. 1 and 8-10);
Garland as modified by Bunnell does not expressly disclose “recalculating updated errors”;
Talton discloses when the updated errors in the next round of iteration are greater than or equal to an error threshold (Talton, 3 Local simplification strategies, [0003], “the user may allow the algorithm to run until the mesh contains k faces, or until the error at a given vertex exceeds some threshold”).
recalculating updated error (Talton, 3 Local simplification strategies, [0001], “local strategies that iteratively simplify the mesh by the repeated application of some local operator, and global strategies that are applied to the input mesh as a whole”. In addition, in paragraph [0003], “For example, the user may allow the algorithm to run until the mesh contains k faces, or until the error at a given vertex exceeds some threshold”).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify the iterative process in Garland to continue running until the error associated with a given vertex exceeds a threshold, as taught by Talton. The motivation for doing so would have been providing ability to control the mesh quality while still achieving surface simplification.
Regarding claim 18, claim 18 recites functions that are similar in scope to the method steps recited in claim 9 and therefore are rejected under the same rationale.
Claims 10 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Garland et al. in view of Bunnell in view of Hoppe (US 6,362,820).
Regarding claim 10, Garland as modified by Bunnell does not expressly disclose “an apparatus, comprising processing circuitry”;
Hoppe discloses an apparatus, comprising processing circuitry configured to (Hoppe, FIG. 2 is a block diagram of a computer system that can be used to implement a method and apparatus).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to implement the surface simplification algorithm of Garland using the apparatus including processing circuitry disclosed in Hoppe. The motivation for doing so would have been improving computation efficiency.
The remaining limitations recite in claim 10 are similar in scope to the method recited in claim 1 and therefore are rejected under the same rationale.
Regarding claim 19, Garland as modified by Bunnell and Hoppe with the same motivation from claim 10 discloses a non-transitory computer-readable storage medium storing instructions which when executed by at least one processor cause the at least one processor to perform (Hoppe, col 7, 64-67, “The drives and their associated computer-readable media provide nonvolatile storage of data, data structures, computer-executable instructions, etc. for the personal computer 20”).
The limitations recite in claim 19 are similar in scope to the method recited in claim 1 and therefore are rejected under the same rationale.
Claim 20 is rejected under 35 U.S.C. 103 as being unpatentable over Garland et al. in view of Bunnell in view of Hoppe (US 6,362,820), as applied to claim 1, in further view of Graziosi et al. (US 2023/0306684).
Regarding claim 20, claim 20 recites instructions that are similar in scope to the method steps recited in claim 2 and therefore are rejected under the same rationale.
Allowable Subject Matter
Claims 4-6 and 13-15 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to KYLE ZHAI whose telephone number is (571)270-3740. The examiner can normally be reached 9AM-5PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Ke Xiao can be reached at (571) 272 - 7776. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/KYLE ZHAI/Primary Examiner, Art Unit 2611