DETAILED ACTION
Notice of Pre-AIA or AIA Status
1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
2. 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 (i.e., changing from AIA to pre-AIA ) 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.
Claim Rejections - 35 USC § 103
3. 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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
4. Claims 1-6 and 13-20 are rejected under 35 U.S.C. 103 as being unpatentable over Zakharchenko (US-2024/0242391) in view of Bo (US-2022/0360279).
Regarding claim 1: Zakharchenko discloses a method comprising, by a computing system: accessing a topology-coding list and a vertex list representing a three-dimensional (3D) mesh, wherein the vertex list comprises X, Y, and Z coordinates for ordered vertices in the 3D mesh (figs 1E-1H, [0052], and [0062]-[0065] of Zakharchenko – ordered list of vertices indicated by X,Y,Z coordinates which define the topology of the 3D mesh); constructing, based on the vertex list, a predicted vertex list comprising X, Y, Z coordinates for a first vertex in the vertex list and predicted X, Y, and Z coordinates for second vertices beyond the first vertex in the vertex list (figs 1A-1D and [0056]-[0060] of Zakharchenko – connectivity data used to construct predicted vertex list); generating X, Y, and Z coordinate bit streams, wherein each coordinate bit stream comprises ordered coordinate values for a corresponding coordinate in the predicted vertex list (figs 1A-1D and [0057]-[0058] of Zakharchenko), wherein each coordinate value in a coordinate bit stream is represented in a corresponding number of bits, wherein the corresponding number of bits is stored in a memory-size list corresponding to the coordinate bit stream ([0058]-[0059] of Zakharchenko – bitstream encoded, and thus stored according to data and number of bits); and encoding, using a coder, the topology-coding list and X, Y, and Z memory-size lists corresponding to the X, Y, and Z coordinate bit streams ([0034] and [0058] of Zakharchenko).
Zakharchenko does not disclose encoding, using Zstandard coder.
Bo discloses encoding, using a Zstandard coder (fig 6, [0023], and [0033]-[0034] of Bo).
Zakharchenko and Bo are analogous art because they are from similar problem solving areas, namely efficient processing, encoding, and decoding of large data sets. Before the effective filing date of the invention, it would have been obvious to one of ordinary skill in the art to specifically use a Zstandard coder for the encoding, as taught by Bo. The motivation for doing so would have been to improve the efficiency of the encoding and decoding processes. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify Zakharchenko according to the relied-upon teachings of Bo to obtain the invention as specified in claim 1.
Regarding claim 2: Zakharchenko in view of Bo discloses the method of claim 1 (as rejected above), wherein each code of the topology-coding list represents a relation of a corresponding triangle in the 3D mesh with respect to a boundary of already encoded region (figs 1A-1B and [0052]-[0056] of Zakharchenko – with respect to boundary of already encoded region, according to connectivity data).
Regarding claim 3: Zakharchenko in view of Bo discloses the method of claim 2 (as rejected above), wherein the code represents VERTEX, LEFT, RIGHT, END, BOUNDARY, DELAY, or SPLIT ([0052]-[0053] of Zakharchenko).
Regarding claim 4: Zakharchenko in view of Bo discloses the method of claim 1 (as rejected above), wherein the topology-coding list and the vertex list are generated by a topology coding algorithm used by a 3D mesh compression algorithm ([0034] and [0052] of Zakharchenko).
Regarding claim 5: Zakharchenko in view of Bo discloses the method of claim 4 (as rejected above), wherein the topology coding algorithm processes an original vertex list and a list of polygons, wherein a polygon in the list of polygons is represented by a number of connected vertices (fig 1E and [0062] of Zakharchenko).
Regarding claim 6: Zakharchenko in view of Bo discloses the method of claim 4 (as rejected above), wherein an order of the ordered vertices in the vertex list is determined by the topology coding algorithm (figs 1A-1B and [0052] of Zakharchenko).
Regarding claim 13: Zakharchenko in view of Bo discloses the method of claim 1 (as rejected above), further comprising: encoding the X, Y, and Z coordinate bit streams ([0067]-[0069] of Zakharchenko) using the Zstandard coder (fig 6, [0023], and [0074] of Bo). Zakharchenko and Bo are combined for the reasons set forth above with respect to claim 1.
Regarding claim 14: Zakharchenko in view of Bo discloses the method of claim 1 (as rejected above), further comprising: encoding additional data associated with vertices in the 3D mesh using the Zstandard coder ([0069] of Zakharchenko – 3D mesh bitstream can include a variety of other types of data; and [0032]-[0035] of Bo – post-processing data using Zstandard coder). Zakharchenko and Bo are combined for the reasons set forth above with respect to claim 1.
Regarding claim 15: Zakharchenko in view of Bo discloses the method of claim 14 (as rejected above), wherein the additional data associated with vertices in the 3D mesh comprises motion vectors, colors, or shades ([0069] of Zakharchenko).
Regarding claim 16: Zakharchenko discloses a system (fig 5 and [0090] of Zakharchenko) comprising: one or more processors and one or more computer-readable non-transitory storage media coupled to one or more of the processors, the one or more computer-readable non-transitory storage media comprising instructions operable when executed by one or more of the processors to cause the system to (fig 5 (504,506,510), [0091]-[0092], and [0095] of Zakharchenko): access a topology-coding list and a vertex list representing a three-dimensional (3D) mesh, wherein the vertex list comprises X, Y, and Z coordinates for ordered vertices in the 3D mesh (figs 1E-1H, [0052], and [0062]-[0065] of Zakharchenko – ordered list of vertices indicated by X,Y,Z coordinates which define the topology of the 3D mesh); construct, based on the vertex list, a predicted vertex list comprising X, Y, Z coordinates for a first vertex in the vertex list and predicted X, Y, and Z coordinates for second vertices beyond the first vertex in the vertex list (figs 1A-1D and [0056]-[0060] of Zakharchenko – connectivity data used to construct predicted vertex list); generate X, Y, and Z coordinate bit streams, wherein each coordinate bit stream comprises ordered coordinate values for a corresponding coordinate in the predicted vertex list (figs 1A-1D and [0057]-[0058] of Zakharchenko), wherein each coordinate value in a coordinate bit stream is represented in a corresponding number of bits, wherein the corresponding number of bits is stored in a memory-size list corresponding to the coordinate bit stream ([0058]-[0059] of Zakharchenko – bitstream encoded, and thus stored according to data and number of bits); and encode, using a coder, the topology-coding list and X, Y, and Z memory-size lists corresponding to the X, Y, and Z coordinate bit streams ([0034] and [0058] of Zakharchenko).
Zakharchenko does not disclose encoding, using Zstandard coder.
Bo discloses encoding, using a Zstandard coder (fig 6, [0023], and [0033]-[0034] of Bo).
Zakharchenko and Bo are analogous art because they are from similar problem solving areas, namely efficient processing, encoding, and decoding of large data sets. Before the effective filing date of the invention, it would have been obvious to one of ordinary skill in the art to specifically use a Zstandard coder for the encoding, as taught by Bo. The motivation for doing so would have been to improve the efficiency of the encoding and decoding processes. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify Zakharchenko according to the relied-upon teachings of Bo to obtain the invention as specified in claim 16.
Regarding claim 17: Zakharchenko in view of Bo discloses the system of claim 16 (as rejected above), wherein each code of the topology-coding list represents a relation of a corresponding triangle in the 3D mesh with respect to a boundary of already encoded region (figs 1A-1B and [0052]-[0056] of Zakharchenko – with respect to boundary of already encoded region, according to connectivity data).
Regarding claim 18: Zakharchenko in view of Bo discloses the system of claim 17 (as rejected above), wherein the code represents VERTEX, LEFT, RIGHT, END, BOUNDARY, DELAY, or SPLIT ([0052]-[0053] of Zakharchenko).
Regarding claim 19: Zakharchenko discloses one or more computer-readable non-transitory storage media embodying software that is operable when executed to cause one or more processors to (fig 5 (504,506,510), [0091]-[0092], and [0095] of Zakharchenko): access a topology-coding list and a vertex list representing a three-dimensional (3D) mesh, wherein the vertex list comprises X, Y, and Z coordinates for ordered vertices in the 3D mesh (figs 1E-1H, [0052], and [0062]-[0065] of Zakharchenko – ordered list of vertices indicated by X,Y,Z coordinates which define the topology of the 3D mesh); construct, based on the vertex list, a predicted vertex list comprising X, Y, Z coordinates for a first vertex in the vertex list and predicted X, Y, and Z coordinates for second vertices beyond the first vertex in the vertex list (figs 1A-1D and [0056]-[0060] of Zakharchenko – connectivity data used to construct predicted vertex list); generate X, Y, and Z coordinate bit streams, wherein each coordinate bit stream comprises ordered coordinate values for a corresponding coordinate in the predicted vertex list (figs 1A-1D and [0057]-[0058] of Zakharchenko), wherein each coordinate value in a coordinate bit stream is represented in a corresponding number of bits, wherein the corresponding number of bits is stored in a memory-size list corresponding to the coordinate bit stream ([0058]-[0059] of Zakharchenko – bitstream encoded, and thus stored according to data and number of bits); and encode, using a coder, the topology-coding list and X, Y, and Z memory-size lists corresponding to the X, Y, and Z coordinate bit streams ([0034] and [0058] of Zakharchenko).
Zakharchenko does not disclose encoding, using Zstandard coder.
Bo discloses encoding, using a Zstandard coder (fig 6, [0023], and [0033]-[0034] of Bo).
Zakharchenko and Bo are analogous art because they are from similar problem solving areas, namely efficient processing, encoding, and decoding of large data sets. Before the effective filing date of the invention, it would have been obvious to one of ordinary skill in the art to specifically use a Zstandard coder for the encoding, as taught by Bo. The motivation for doing so would have been to improve the efficiency of the encoding and decoding processes. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify Zakharchenko according to the relied-upon teachings of Bo to obtain the invention as specified in claim 19.
Regarding claim 20: Zakharchenko in view of Bo discloses the media of claim 19 (as rejected above), wherein each code of the topology-coding list represents a relation of a corresponding triangle in the 3D mesh with respect to a boundary of already encoded region (figs 1A-1B and [0052]-[0056] of Zakharchenko – with respect to boundary of already encoded region, according to connectivity data).
5. Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over Zakharchenko (US-2024/0242391) in view of Bo (US-2022/0360279), and in further view of Hellge (US-2023/0008125).
Regarding claim 7: Zakharchenko in view of Bo discloses the method of claim 4 (as rejected above). Zakharchenko in view of Bo does not disclose wherein the 3D mesh compression algorithm is Corto algorithm.
Hellge discloses wherein the 3D mesh compression algorithm is Corto algorithm ([0032] of Hellge).
Zakharchenko and Hellge are analogous art because they are from the same field of endeavor, namely 3D volumetric mesh encoding. Before the effective filing date of the invention, it would have been obvious to one of ordinary skill in the art to have the 3D mesh compression algorithm be specifically a Corto algorithm, as taught by Hellge. The suggestion for doing so would have been that a Corto algorithm is a highly efficient encoding process for particular applications. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify Zakharchenko further according to the relied-upon teachings of Hellge to obtain the invention as specified in claim 7.
6. Claims 8-12 are rejected under 35 U.S.C. 103 as being unpatentable over Zakharchenko (US-2024/0242391) in view of Bo (US-2022/0360279), and in further view of obvious engineering design choice.
Regarding claim 8: Zakharchenko in view of Bo discloses the method of claim 1 (as rejected above). Zakharchenko in view of Bo does not disclose wherein coordinate values for X coordinate in the vertex list are represented in N-bit integer, wherein coordinate values for Y coordinate in the vertex list are represented in N-bit integer, and wherein coordinate values for Z coordinate in the vertex list are represented in M-bit floating point.
However, it would have been an obvious engineering design choice to configure the data structure for the coordinate data specifically such that coordinate values for X coordinate in the vertex list are represented in N-bit integer, coordinate values for Y coordinate in the vertex list are represented in N-bit integer, and coordinate values for Z coordinate in the vertex list are represented in M-bit floating point. Doing so would allow the user to set planar X-Y coordinate according to set vertex position, while allowing a finer scale determination for depth (Z) values. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify Zakharchenko further according to the obvious engineering design choice to obtain the invention as specified in claim 8.
Regarding claim 9: Zakharchenko in view of Bo, and in further view of obvious engineering design choice, discloses the method of claim 8 (as rejected above), wherein a coordinate value in Z coordinate for a vertex indicates a depth of the vertex in the 3D mesh (fig 1G and [0064] of Zakharchenko – 3D vertex coordinates; z-values can be considered depth values in the 3D mesh).
Regarding claim 10: Zakharchenko in view of Bo, and in further view of obvious engineering design choice, discloses the method of claim 8 (as rejected above). While Zakharchenko in view of Bo does not expressly disclose wherein the coordinate values for Z coordinate in the predicted vertex list are converted into N-bit integer values from M-bit floating point values, such would be an obvious engineering design choice so that the vertex locations in the z-coordinate can be stored by integers and matched more easily between geometric mesh elements.
Regarding claim 11: Zakharchenko in view of Bo, and in further view of obvious engineering design choice, discloses the method of claim 10 (as rejected above). Zakharchenko in view of Bo does not expressly disclose wherein N is 16, and wherein M is 32, however such would be an obvious engineering design choice since both are standard digital data sizes, and M having twice as many bits as N allows for easier conversion from a floating point number to an integer consistent with N.
Regarding claim 12: Zakharchenko in view of Bo discloses the method of claim 1 (as rejected above). Zakharchenko in view of Bo does not disclose wherein the corresponding number of bits is a minimum number of bits required to represent the coordinate value. However, it would have been an obvious engineering design choice to have the corresponding number of bits be a minimum number of bits required to represent the coordinate value, since doing so would minimize data requirements, which is a common and key factor to consider when processing 3D data.
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to James A Thompson whose telephone number is (571)272-7441. The examiner can normally be reached M-F 8am-6pm.
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, Alicia Harrington can be reached at 571-272-2330. 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.
/JAMES A THOMPSON/Primary Examiner, Art Unit 2615