DETAILED ACTION
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 .
Drawings
The drawings are objected to as failing to comply with 37 CFR 1.84(p)(5) because they do not include the following reference sign(s) mentioned in the description: "422" on page 11. Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
The drawings are objected to as failing to comply with 37 CFR 1.84(p)(5) because they include the following reference character(s) not mentioned in the description: "420" in Fig. 4. Corrected drawing sheets in compliance with 37 CFR 1.121(d), or amendment to the specification to add the reference character(s) in the description in compliance with 37 CFR 1.121(b) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the claims at issue are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); and In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on a nonstatutory double patenting ground provided the reference application or patent either is shown to be commonly owned with this application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The USPTO internet Web site contains terminal disclaimer forms which may be used. Please visit http://www.uspto.gov/forms/. The filing date of the application will determine what form should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to http://www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1-7 and 12-17are provisionally rejected on the ground of nonstatutory double patenting as being unpatentable over claim 1-20 of copending Application No. 18231647 (reference application). Although the claims at issue are not identical, they are not patentably distinct from each other because claims 1-20 contain narrower scope of claims 1-7 and 12-17.
This is a provisional nonstatutory double patenting rejection because the patentably indistinct claims have not in fact been patented.
Instant Application claims
Co-pending Application No. 18231647
1. A computer-implemented
method for reducing a number of polygons in a polygon mesh model of an object, the polygon mesh model of the object comprising a set of one or more polygons, wherein the reducing a number of polygons in a polygon mesh model of an object includes:
determining one or more viewpoints;
for each viewpoint of the one or more viewpoints, determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model;
determining a first intersection of the respective first subsets of polygons; and
removing from the polygon mesh model at least some of the polygons in the first intersection.
5. The method of claim 1, wherein the object is a CAD model.
6. The method of claim 5, wherein the CAD model includes an internal surface, the internal surface non-visible for each viewpoint of the one or more viewpoints, wherein the removing from the polygon mesh model at least some of the polygons in the first intersection includes removing at least some of the polygons of the internal surface.
7. The method of claim 1, wherein the object is a simulated representation of a physical object.
12. The method of claim 1, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes identifying polygons of the set of one or more polygons which are non-visible from the viewpoint.
13. The method of claim 12, wherein the identifying polygons of the set of one or more polygons which are non-visible from the viewpoint includes determining which polygons of the set of one or more polygons are untouched by rays drawn to the object from the viewpoint.
14. The method of claim 13, wherein the determining which polygons of the set of one or more polygons are untouched by rays drawn to the object from the viewpoint includes determining which polygons of the set of one or more polygons are untouched by straight-line rays drawn to the object from the viewpoint.
15. The method of claim 1, wherein, in operation, the polygon mesh model of the object is used in a computer simulation, and the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes identifying polygons of the set of one or more polygons which are non-visible in the computer simulation from the viewpoint.
16. The method of claim 1, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes:
identifying a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are visible from the viewpoint; and
determining the respective first subset of polygons of the set of one or more polygons from at least some of the polygons in a complement of the respective second subset of polygons.
17. The method of claim 1, further comprising determining
one or more
articulations of the object, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes:
for each articulation, determining a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are non-visible from the viewpoint;
determining a second intersection of the respective second subsets of polygons; and
determining the respective first subset of polygons from at least some of the polygons in the second intersection.
2. The method of claim 1, wherein the object comprises a plurality of parts, and the reducing a number of polygons in a polygon mesh model of an object includes removing at least a portion of a first part.
3. The method of claim 2, wherein the polygon mesh model includes a first polygon mesh of the first part, the at least of a portion of the first part consists of a second subset of the set of one or more polygons, and the removing at least a portion of the first part includes removing the second subset from the polygon mesh model.
4. The method of claim 1, wherein the object comprises a plurality of parts, the polygon mesh model comprises a first polygon mesh for a first part of the plurality of parts, and the reducing a number of polygons in a polygon mesh model of an object includes decimating the first polygon mesh.
8. The method of claim 1, wherein the object includes a robot.
9. The method of claim 1, wherein the object includes an environment of a robot.
10. The method of claim 1, wherein the set of one or more polygons is a set of one or more triangles.
11. The method of claim 1, wherein the determining one or more viewpoints includes determining one or more randomly-located points on one or more bounding spheres of the object.
1. A computer system comprising:
a controller, the controller comprising at least one processor; and
at least one non-transitory processor-readable storage medium communicatively coupled to the at least one processor, the at least one non-transitory processor-readable storage medium storing processor-executable instructions and/or data that, when executed by the at least one processor, cause the computer system to perform a method for reducing a number of polygons in a polygon mesh model of an object, the polygon mesh model of the object comprising a set of one or more polygons, wherein the method includes:
determining one or more viewpoints;
for each viewpoint of the one or more viewpoints, determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model;
determining a first intersection of the respective first subsets of polygons; and
removing from the polygon mesh model at least some of the polygons in the first intersection.
2. The computer system of claim 1, wherein the object is a CAD model.
3. The computer system of claim 2, wherein the CAD model includes an internal surface, the internal surface non-visible for each viewpoint of the one or more viewpoints, wherein the removing from the polygon mesh model at least some of the polygons in the first intersection includes removing at least some of the polygons of the internal surface.
4. The computer system of claim 1, wherein the object is a simulated representation of a physical object.
5. The computer system of claim 1, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes identifying polygons of the set of one or more polygons which are non-visible from the viewpoint.
6. The computer system of claim 5, wherein the identifying polygons of the set of one or more polygons which are non-visible from the viewpoint includes determining which polygons of the set of one or more polygons are untouched by rays drawn to the object from the viewpoint.
7. The computer system of claim 6, wherein the determining which polygons of the set of one or more polygons are untouched by rays drawn to the object from the viewpoint includes determining which polygons of the set of one or more polygons are untouched by straight-line rays drawn to the object from the viewpoint.
8. The computer system of claim 1, wherein, in operation, the polygon mesh model of the object is used in a computer simulation, and the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes identifying polygons of the set of one or more polygons which are non-visible in the computer simulation from the viewpoint.
9. The computer system of claim 1, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes:
identifying a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are visible from the viewpoint; and
determining the respective first subset of polygons of the set of one or more polygons from at least some of the polygons in a complement of the respective second subset of polygons.
10. The computer system of claim 1, wherein the method for reducing a number of polygons in a polygon mesh model of an object further comprises determining one or more articulations of the object, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes:
for each articulation, determining a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are non-visible from the viewpoint;
determining a second intersection of the respective second subsets of polygons; and
determining the respective first subset of polygons from at least some of the polygons in the second intersection.
11. A computer program product comprising data and processor-executable instructions stored in a non-volatile processor-readable storage medium that, when executed by a processor communicatively coupled to the storage medium, causes the processor to perform a method for reducing a number of polygons in a polygon mesh model of an object, the polygon mesh model of the object comprising a set of one or more polygons, wherein the method includes:
determining one or more viewpoints;
for each viewpoint of the one or more viewpoints, determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model;
determining a first intersection of the respective first subsets of polygons; and
removing from the polygon mesh model at least some of the polygons in the first intersection.
12. The computer program product of claim 11, wherein the object is a CAD model.
13. The computer program product of claim 12, wherein the CAD model includes an internal surface, the internal surface non-visible for each viewpoint of the one or more viewpoints, wherein the removing from the polygon mesh model at least some of the polygons in the first intersection includes removing at least some of the polygons of the internal surface.
14. The computer program product of claim 11, wherein the object is a simulated representation of a physical object.
15. The computer program product of claim 11, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes identifying polygons of the set of one or more polygons which are non-visible from the viewpoint.
16. The computer program product of claim 15, wherein the identifying polygons of the set of one or more polygons which are non-visible from the viewpoint includes determining which polygons of the set of one or more polygons are untouched by rays drawn to the object from the viewpoint.
17. The computer program product of claim 16, wherein the determining which polygons of the set of one or more polygons are untouched by rays drawn to the object from the viewpoint includes determining which polygons of the set of one or more polygons are untouched by straight-line rays drawn to the object from the viewpoint.
18. The computer program product of claim 1, wherein, in operation, the polygon mesh model of the object is used in a computer simulation, and the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes identifying polygons of the set of one or more polygons which are non-visible in the computer simulation from the viewpoint.
19. The computer program product of claim 1, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes:
identifying a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are visible from the viewpoint; and
determining the respective first subset of polygons of the set of one or more polygons from at least some of the polygons in a complement of the respective second subset of polygons.
20. The computer program product of claim 1, wherein the method for reducing a number of polygons in a polygon mesh model of an object further comprises determining one or more articulations of the object, wherein, for each viewpoint of the one or more viewpoints, the determining a respective first subset of polygons of the set of one or more polygons, the respective first subset of polygons being candidates for removal from the polygon mesh model, includes:
for each articulation, determining a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are non-visible from the viewpoint;
determining a second intersection of the respective second subsets of polygons; and
determining the respective first subset of polygons from at least some of the polygons in the second intersection.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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-5, 7-10, 12-16 are rejected under 35 U.S.C. 103 as being unpatentable over Jenkins (US 9852538 B2) in view of Szilagyi (US 20210225075).
Regarding claim 1, Jenkins teaches:
a computer-implemented method (Col. 267 lines 34-37, teaches a computer system for implementing method of from-region visibility determination and delta-PVS based content streaming using conservative linearized umbral event surfaces according to the present invention”) for determining a number of visible polygons in a polygon mesh model of an object (Col. 24 lines 23-26 – “a computer-implemented method determines a set of mesh polygons or fragments of said mesh polygons visible from a navigation cell, said mesh polygons forming polygon meshes”; Note: the method that the computer system performs is for determining the polygons that are visible in a polygon mesh of a model), the polygon mesh model of the object comprising a set of one or more polygons (Col. 46 lines 21-24 – “polygon mesh refers to a finite collection of connected vertices, edges, and faces (also called polygons) formed from the vertices and edges”; Note: the polygon mesh contains polygons), wherein the method includes:
determining one or more viewpoints (Col. 24 lines 27-28 – “determining a composite view frustum containing predetermined view frusta in said navigation cell”; Note: the view frustrum is a viewpoint);
for each viewpoint of the one or more viewpoints, determining a respective first subset of polygons of the set of one or more polygons (Col. 24 lines 28-36 – “The method further includes determining mesh polygons contained in said composite view frustum. The method further includes determining at least one supporting polygon between said navigation cell and said contained mesh polygons. The method further includes constructing at least one wedge from said at least one supporting polygon, said at least one wedge extending away from said navigation cell beyond at least said contained mesh polygons”; Note: for the viewpoint, the contained polygons are determined. The contained polygons are a subset of polygons);
and determining a first intersection of the respective first subsets of polygons (Col. 24 lines 36-38 – “The method further includes determining one or more intersections of said at least one wedge with said contained mesh polygons”).
Jenkins does not teach a method for reducing a number of polygons in a polygon mesh model of an object wherein the method includes: the respective first subset of polygons being candidates for removal from the polygon mesh model; and removing from the polygon mesh model at least some of the polygons in the first intersection.
On the other hand, Szilagyi teaches a method for reducing a number of polygons in a polygon mesh model of an object (Paragraph 0005 – “a method is disclosed that comprises obtaining, by a device, visualization data that depicts at least one three-dimensional object…The method also comprises decimating, by the device, meshes of polygons in the sanitized visualization data”; Note: the method is for reducing the polygons in a polygon mesh of a 3D model of an object) wherein the method includes: the respective first subset of polygons being candidates for removal from the polygon mesh model (Paragraph 0006 – “the method further comprises determining, by the device, whether each polygon in the visualization data is a visible polygon, in part by testing whether that polygon is reachable by at least one of a plurality of light rays extending from infinity; and removing, by the device, any polygon from the visualization data that is not a visible polygon”; Note: polygons that are not visible are candidates for removal); and removing from the polygon mesh model (Paragraph 0006 – “the method further comprises…removing, by the device, any polygon from the visualization data that is not a visible polygon”; Note: polygons are removed from the polygon mesh). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to incorporate the teachings of Szilagyi to reduce the number of polygons in a polygon mesh by removing polygons for the benefit of simplifying “over-resolved 3D surface meshes, while controlling the loss of quality due to mesh reduction. Consequently, the amount of data of the file can be reduced, while still ensuring an acceptable level of image quality” (Szilagyi par. [0043]).
Regarding claim 2, Jenkins in view of Szilagyi teaches:
The method of claim 1, wherein the object comprises a plurality of parts, and the reducing a number of polygons in a polygon mesh model of an object includes removing at least a portion of a first part. (Szilagyi at least in par. [0006], removing any polygon from the visualization data that is not a visible polygon (first part from the polygon mesh model).)
Regarding claim 3, Jenkins in view of Szilagyi teaches:
The method of claim 2, wherein the polygon mesh model includes a first polygon mesh of the first part, the at least of a portion of the first part consists of a second subset of the set of one or more polygons, and the removing at least a portion of the first part includes removing the second subset from the polygon mesh model. (Szilagyi at least in par. [0006], removing any polygon from the visualization data that is not a visible polygon (from the polygon mesh model). The removed portion is a (second) subset from the polygon mesh model).
Regarding claim 4, Jenkins in view of Szilagyi teaches:
The method of claim 1, wherein the object comprises a plurality of parts, the polygon mesh model comprises a first polygon mesh for a first part of the plurality of parts, and the reducing a number of polygons in a polygon mesh model of an object includes decimating the first polygon mesh. (Szilagyi at least in par. [0006], removing (decimating), any polygon from the visualization data that is not a visible polygon (first part from the polygon mesh model).)
Regarding claim 5, Jenkins in view of Szilagyi teaches the method of claim 1. Jenkins does not teach wherein the object is a CAD model.
On the other hand, Szilagyi teaches wherein the object is a CAD model (Paragraph 0005, 0028 – “a method is disclosed that comprises obtaining, by a device, visualization data that depicts at least one three-dimensional object…Optimizing visualization data 108 can also be quite beneficial with respect to converting and exporting visualization data from one 3D file into another. Indeed, there are upwards of hundreds of different 3D file types, each of which is optimized for its own specific software. For instance, Blend uses the BLEND file format, AutoCAD uses the .DWG format, Clo uses the .zprj format, Browzwear uses the .bw format, etc.”; Note: the 3D object is represented by visualization data, which is a 3D file used in CAD). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to incorporate the teachings of Szilagyi to have the object be a CAD model for the benefit of “taking manufacturing design files for AutoCad or Solidworks that are too large to use in marketing materials for web, mobile, VR/AR, etc., and shrinking them down to a usable size without affecting the overall quality of the shape and image” (SZILAGYI: Paragraph 0042). CAD models are common in many fields, so optimizing a CAD model of an object would be useful.
Regarding claim 7, Jenkins in view of Szilagyi teaches:
The method of claim 1, wherein the object is a simulated representation of a physical object (Col. 261 lines 5-8 – “the modeled environment is a representation of an actual environment that may be used in a military simulation. FIG. 46B illustrates a moving object, such as a helicopter, included in the modeled environment”; Note: the object is a simulated representation of a helicopter).
Regarding claim 8, Jenkins in view of Szilagyi teaches:
The method of claim 1, wherein the object includes a robot (Jenkins par. [0139], teaches an autonomous moving object).
Regarding claim 9, Jenkins in view of Szilagyi teaches:
The method of claim 1, wherein the object includes an environment of a robot. (Jenkins par. [0139], teaches an autonomous moving object… [0569], information indicating a user's or autonomous agent's location in the modeled environment.)
Regarding claim 10, Jenkins in view of Szilagyi teaches:
The method of claim 1, wherein the set of one or more polygons is a set of one or more triangles. (Jenkins in Abstract and par. [0335], teaches set of mesh polygons or mesh triangles.)
Regarding claim 12, Jenkins in view of Szilagyi teaches the method of claim 1.
Szilagyi teaches a method for reducing a number of polygons in a polygon mesh model of an object (Paragraph 0005 – “a method is disclosed that comprises obtaining, by a device, visualization data that depicts at least one three-dimensional object…The method also comprises decimating, by the device, meshes of polygons in the sanitized visualization data”; Note: the method is for reducing the polygons in a polygon mesh of a 3D model of an object) wherein the method includes: the respective first subset of polygons being candidates for removal from the polygon mesh model (Paragraph 0006 – “the method further comprises determining, by the device, whether each polygon in the visualization data is a visible polygon, in part by testing whether that polygon is reachable by at least one of a plurality of light rays extending from infinity; and removing, by the device, any polygon from the visualization data that is not a visible polygon”; Note: polygons that are not visible are candidates for removal);
Jenkins further teaches identifying polygons of the set of one or more polygons which are non-visible from the viewpoint (Col. 83 lines 31-37, Col. 92 lines 51-59 – “An edge of a polygon mesh is a first-order from-region silhouette edge if one component polygon sharing the edge is front facing (visible) to any vertex of the region and the other component polygon is backfacing (invisible) to all vertices of the view region…If PA and PB are backfacing with respect to each other, process flow proceeds to step 350 which returns a result that the edge being tested is a first-order silhouette edge. If PA and PB are not backfacing to each other, process flow proceeds from 345 to 355. If PA is not frontfacing for at least one viewcell vertex, process flow proceeds from 340 to 355. If any of the tests in steps 320, 325, 330, 340, or 345 fail, then the mesh edge is not a first-order silhouette edge, as indicated in step 355”; Note: polygons PA and PB are identified as either backfacing (not visible) or frontfacing (visible) from the view region).
Regarding claim 13, Jenkins in view of Szilagyi teaches the method of claim 12. Jenkins further teaches determining which polygons of the set of one or more polygons are untouched by rays drawn to the object from the viewpoint (Col. 129 lines 47-52 – “the WL generated in step 1545 is intersected with mesh triangle/segments (all of which intersect the current wedge) in order to find the closest from-point visible triangle that intersects the current wedge. In one embodiment, this intersection is determined using ray casting, with the WL as the ray”; Note: the process of determining whether polygons touch a ray from a viewpoint is equivalent to ray casting. The mesh triangles are polygons and are a set of mesh triangles belonging to a mesh).
Regarding claim 14, Jenkins in view of Szilagyi teaches the method of claim 13. Jenkins further teaches determining which polygons of the set of one or more polygons are untouched by straight-line rays drawn to the object from the viewpoint (Fig. 41a, Col. 129 lines 47-52, Col. 225 lines 9-13 – “the WL generated in step 1545 is intersected with mesh triangle/segments (all of which intersect the current wedge) in order to find the closest from-point visible triangle that intersects the current wedge. In one embodiment, this intersection is determined using ray casting, with the WL as the ray… The wedge line (WL) 4109 is constructed incident on the CSV 4115 using the pivoting step of 1545 of FIG. 15. (i.e., pivot to the viewcell vertex supporting the first-order silhouette edge intersecting the current wedge)”; Note: in Fig. 41a, it can be seen that the wedge line 4109, which is equivalent to the ray, is a straight line; see modified screenshot 1 below).
PNG
media_image1.png
580
629
media_image1.png
Greyscale
Regarding claim 15, Jenkins in view of Szilagyi teaches the method of claim 1. Jenkins further teaches wherein, in operation, the model of the object is used in a computer simulation (Col. 261 lines 5-8 – “the modeled environment is a representation of an actual environment that may be used in a military simulation. FIG. 46B illustrates a moving object, such as a helicopter, included in the modeled environment”; Note: there is a modeled object in a computer simulation), and identifying polygons of the set of one or more polygons which are non-visible from the viewpoint (Col. 83 lines 31-37, Col. 92 lines 51-59 – “An edge of a polygon mesh is a first-order from-region silhouette edge if one component polygon sharing the edge is front facing (visible) to any vertex of the region and the other component polygon is backfacing (invisible) to all vertices of the view region…If PA and PB are backfacing with respect to each other, process flow proceeds to step 350 which returns a result that the edge being tested is a first-order silhouette edge. If PA and PB are not backfacing to each other, process flow proceeds from 345 to 355. If PA is not frontfacing for at least one viewcell vertex, process flow proceeds from 340 to 355. If any of the tests in steps 320, 325, 330, 340, or 345 fail, then the mesh edge is not a first-order silhouette edge, as indicated in step 355”; Note: polygons PA and PB are identified as either backfacing (not visible) or frontfacing (visible) from the view region). While Jenkins does not directly teach the polygon mesh model of the object being used in a computer simulation, Jenkins teaches a polygon mesh model of an object (Fig. 20N – Polygon mesh models of objects are shown in the figure; see screenshot 2 below) and a computer simulation (Col. 261 lines 5-8 – “the modeled environment is a representation of an actual environment that may be used in a military simulation. FIG. 46B illustrates a moving object, such as a helicopter, included in the modeled environment”) separately. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to use the polygon mesh model of an object in a computer simulation because it is already common in the state of the art to use mesh models in simulations.
PNG
media_image2.png
541
809
media_image2.png
Greyscale
Screenshot 2 (taken from Fig. 20N of Jenkins)
Furthermore, while Jenkins does not directly teach identifying polygons of the set of one or more polygons which are non-visible in the computer simulation from the viewpoint, Jenkins teaches identifying polygons of the set of one or more polygons which are non-visible from the viewpoint (Col. 83 lines 31-37, Col. 92 lines 51-59 – “An edge of a polygon mesh is a first-order from-region silhouette edge if one component polygon sharing the edge is front facing (visible) to any vertex of the region and the other component polygon is backfacing (invisible) to all vertices of the view region…If PA and PB are backfacing with respect to each other, process flow proceeds to step 350 which returns a result that the edge being tested is a first-order silhouette edge. If PA and PB are not backfacing to each other, process flow proceeds from 345 to 355. If PA is not frontfacing for at least one viewcell vertex, process flow proceeds from 340 to 355. If any of the tests in steps 320, 325, 330, 340, or 345 fail, then the mesh edge is not a first-order silhouette edge, as indicated in step 355”; Note: polygons PA and PB are identified as either backfacing (not visible) or frontfacing (visible) from the view region) and a computer simulation (Col. 261 lines 5-8 – “the modeled environment is a representation of an actual environment that may be used in a military simulation. FIG. 46B illustrates a moving object, such as a helicopter, included in the modeled environment”) separately.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to identify non-visible polygons in a computer simulation from the viewpoint for the benefit of further optimizing the simulation and reducing the computation load since only visible parts are required to be loaded (Jenkins: Col. 257 lines 49-52).
Regarding claim 16, Jenkins in view of Szilagyi teaches the method of claim 1.
Jenkins does not teach identifying a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are visible from the viewpoint; and determining the respective first subset of polygons of the set of one or more polygons from at least some of the polygons in a complement of the respective second subset of polygons.
On the other hand, Szilagyi teaches identifying a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are visible from the viewpoint (Paragraph 0150 – “visualization data optimization process 248 may first perform obstructed geometry removal, to flag polygons that are visible (e.g., from any of 128 possible directions or more)”; Note: a subset of polygons visible from certain directions, which are viewpoints, are identified and flagged); and determining the respective first subset of polygons of the set of one or more polygons from at least some of the polygons in a complement of the respective second subset of polygons (Paragraph 0150 – “Next, visualization data optimization process 248 may remove those polys that are immediately behind a visible polygon, facing the visible poly… Parallel obstructed geometry removal is helpful in that it removes layers that are never visible”; Note: polygons that are not visible are candidates for removal. These polygons are determined by finding the visible polygons and then any leftover polygons are considered not visible and are removed. That process is equivalent to taking the complement of a subset of visible polygons).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to incorporate the teachings of Szilagyi to identify visible polygons and take the complement to obtain non-visible polygons to remove because it “allows for uniform detection of visible polygons, resulting in a more accurate definition of what is ‘outside’ and should stay” (SZILAGYI: Paragraph 0079). “The benefits of mesh decimation are to reduce file size as well as faster rendering” (SZILAGYI: Paragraph 0096).
Claim 6 is rejected under 35 U.S.C. 103 as being unpatentable over Jenkins in view of Szilagyi as applied in claim 5 above and Buchowski et al. (US 8890867 B2), hereinafter Buchowski.
Regarding claim 6, Jenkins in view of Szilagyi teaches the method of claim 5.
Jenkins in view of Szilagyi does not teach the CAD model includes an internal surface, the internal surface non-visible for each viewpoint of the one or more viewpoints, wherein the removing from the polygon mesh model at least some of the polygons in the first intersection includes removing at least some of the polygons of the internal surface.
On the other hand, Buchowski teaches the CAD model includes an internal surface, the internal surface non-visible for each viewpoint of the one or more viewpoints (Fig. 5A, 5B; Col. 29 lines 16-38 – “the CAD application may determine a shell or set of outer, visible surfaces of the model, and store a geometric representation of these surfaces. This shell representation may be used to dynamically generate graphics, without needing to load geometry of underlying, hidden or internal surfaces…in FIG. 5A, the CAD application may load an overall modular structure of the truck, including the frame, cab, engine compartment, powertrain, etc., without loading individual elements of each sub-assembly”; Note: the CAD model in Fig. 5A includes internal surfaces that can be seen in Fig. 5B, but in the view in Fig. 5A, those internal surfaces are not visible; see screenshot 3 below).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to incorporate the teachings of Buchowski to have a CAD model with a non-visible internal surface because it is a common occurrence in the state of the art. A lot of CAD models have non-visible internal surfaces because they have components on the inside of the model, such as the vehicle with an engine inside, as shown in Fig. 5A and Fig. 5B of Buchowski. Jenkins modified by Buchowski still does not teach wherein the removing from the polygon mesh model at least some of the polygons in the first intersection includes removing at least some of the polygons of the internal surface. On the other hand, Szilagyi teaches removing at least some of the polygons of the internal surface (Paragraph 0150 – “visualization data optimization process 248 may remove those polys that are immediately behind a visible polygon, facing the visible poly… Parallel obstructed geometry removal is helpful in that it removes layers that are never visible. It also helps in that it removes the layer that is nearest to the outer, visible layer”; Note: polygons are removed from hidden layers, which include internal surfaces). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to incorporate the teachings of Szilagyi to remove polygons of an internal surface for the benefit of simplifying “over-resolved 3D surface meshes, while controlling the loss of quality due to mesh reduction. Consequently, the amount of data of the file can be reduced, while still ensuring an acceptable level of image quality” (SZILAGYI: Paragraph 0043). Since internal surfaces are not visible, they could be removed without damaging image quality.
PNG
media_image3.png
702
475
media_image3.png
Greyscale
Screenshot 3 (taken from Fig. 5A and Fig. 5B of Buchowski)
Claim 11 is rejected under 35 U.S.C. 103 as being unpatentable over Jenkins in view of Szilagyi, as applied in claim 1 above and further in view of An et al. (Novel calibration method for camera array in spherical arrangement).
Regarding claim 11, Jenkins in view of Szilagyi teaches the method of claim 1.
Jenkins in view of Szilagyi does not teach determining one or more randomly-located points on one or more bounding spheres of the object.
On the other hand, An teaches in Abstract and section. 4.1 Simulations on virtual camera array in spherical arrangement, teaches a camera array placed in a spherical arrangement.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins in view of Szilagyi to incorporate the teachings of an array of virtual cameras on a bounding sphere of the object. The virtual cameras are randomly evenly distributed in the spherical array arrangement. It is designer’s choice for the randomly selected viewpoints. The results of the combination would have been predictable.
Claim 17 is rejected under 35 U.S.C. 103 as being unpatentable over Jenkins in view of Szilagyi and Comer (US 11308673 B2).
Regarding claim 17, Jenkins in view of Szilagyi teaches the method of claim 1. Jenkins teaches determining a respective second subset of polygons of the set of one or more polygons, the respective second subset of polygons which are non-visible from the viewpoint (Col. 83 lines 31-37, Col. 92 lines 51-59 – “An edge of a polygon mesh is a first-order from-region silhouette edge if one component polygon sharing the edge is front facing (visible) to any vertex of the region and the other component polygon is backfacing (invisible) to all vertices of the view region…If PA and PB are backfacing with respect to each other, process flow proceeds to step 350 which returns a result that the edge being tested is a first-order silhouette edge. If PA and PB are not backfacing to each other, process flow proceeds from 345 to 355. If PA is not frontfacing for at least one viewcell vertex, process flow proceeds from 340 to 355. If any of the tests in steps 320, 325, 330, 340, or 345 fail, then the mesh edge is not a first-order silhouette edge, as indicated in step 355”; Note: polygons, like PA and PB, are identified as either backfacing (not visible) or frontfacing (visible) from the view region. The backfacing polygons make up a subset of the polygons); and
determining a second intersection of the respective second subsets of polygons (Col. 211 lines 53-61 – “In FIG. 30E a portion of the from-viewcell visibility map, using VIEWCELL as the source, is shown. Wedges constructed on first-order silhouette edges of MESH G intersect MESH F to produce an occlusion region labeled OR-G. The wedges are not shown here. Occlusion region OR-G is bounded by an occlusion boundary consisting of 7 occlusion boundary segments. OR-G is completely inside of the original mesh triangle formed by the vertices V1, V2, and V3”; Note: the intersection between non-visible polygons creates an occlusion region, which is an area on the object that is not visible from a viewpoint).
Jenkins in view of Szilagyi does not teach determining one or more articulations of the object; for each articulation, determining a respective second subset of polygons of the set of one or more polygons; and determining the respective first subset of polygons from at least some of the polygons in the second intersection.
On the other hand, Comer teaches determining one or more articulations of the object (Col. 36 lines 34-43 – “the DCC application can partition each of the polygon meshes 1304 into articulation segment. Each of the articulation segments may include a subset of the vertices which make up the complete polygon mesh for the virtual character. An articulation segment can consist essentially of those vertices which pertain to a given body part; or which change position and/or orientation substantially together as a group from one pose to another with articulation of a given anatomical joint or set of anatomical joints by the physical subject”; Note: the articulations of the object, which is a virtual character in this case, are determined) and performing a task for each articulation (Col. 37 lines 58-60 – “position and/or orientation indicators can be determined for each of the articulation segments in each of the polygon meshes”). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to incorporate the teachings of Comer to determine the articulations of an object and analyze each articulation because it would make it easier to track the movement and position of the articulations in a model, which affects what parts are visible. Additionally, Jenkins’ process of determining subsets of polygons can easily be applied to the articulations of an object since they are already a part of the polygon mesh of the object. Furthermore, Jenkins modified by Comer still does not teach determining the respective first subset of polygons from at least some of the polygons in the second intersection.
On the other hand, Szilagyi teaches determining the respective first subset of polygons from at least some of the polygons in the second intersection (Paragraph 0006 – “the method further comprises determining, by the device, whether each polygon in the visualization data is a visible polygon, in part by testing whether that polygon is reachable by at least one of a plurality of light rays extending from infinity; and removing, by the device, any polygon from the visualization data that is not a visible polygon”; Note: polygons that are not visible, meaning they are part of a second subset, are candidates for removal, meaning they are determined to be a part of the first subset).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Jenkins to incorporate the teachings of Szilagyi to have a subset of polygon candidates for removal be determined from a subset of non-visible polygons for the benefit of simplifying “over-resolved 3D surface meshes, while controlling the loss of quality due to mesh reduction. Consequently, the amount of data of the file can be reduced, while still ensuring an acceptable level of image quality” (SZILAGYI: Paragraph 0043). Since the polygons are not visible, they could be removed without damaging image quality.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Please see form PTO-892.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PHUC N DOAN whose telephone number is (571)270-3397. The examiner can normally be reached on Monday - Friday: 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 exami