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 .
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 11/05/2024, 01/15/2026 is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statements are being considered by the examiner.
Allowable Subject Matter
Claim 7-10, 12-15 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.
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.
Claim(s) 1-6, 16, and 19-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Ray et al. (US Patent Number 20220108491-A1, hereinafter “Ray”) in view of G-PCC (G-PCC Future Enhancements", 130. MPEG MEETING; 20200420 - 20200424; ALPBACH; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), no. n19328 21 July 2020 (2020-07-21), XP030289575 (Year: 2020), hereinafter “G-PCC”).
Regarding claim 1, Ray teaches: A point cloud processing method, performed by a computer device, the method comprising: obtaining encoded data of a point cloud; (Fig. 1; [0036], "FIG. 1 is a block diagram illustrating an example encoding and decoding system 100 that may perform the techniques of this disclosure. The techniques of this disclosure are generally directed to coding (encoding and/or decoding) point cloud data, i.e., to support point cloud compression. In general, point cloud data includes any data for processing a point cloud. The coding may be effective in compressing and/or decompressing point cloud data.")
Ray does not teach: analyzing the encoded data to obtain shift data, the shift data being obtained by performing shift processing on target encoding information of the point cloud in an encoding process of the point cloud; and performing shift reconstruction on the shift data to obtain reconstructed encoding information of the target encoding information.
However, G-PCC does teach: analyzing the encoded data to obtain shift data, the shift data being obtained by performing shift processing on target encoding information of the point cloud in an encoding process of the point cloud; and performing shift reconstruction on the shift data to obtain reconstructed encoding information of the target encoding information.
(5.6 Bit-wise operators, "x >> y Arithmetic right shift of a two's complement integer representation of x by y binary digits. This function is defined only for non-negative integer values of y. Bits shifted into the most significant bits (MSBs) as a result of the right shift have a value equal to the MSB of x prior to the shift operation.
x << y Arithmetic left shift of a two's complement integer representation of x by y binary digits. This function is defined only for non-negative integer values of y. Bits shifted into the least significant bits (LSBs) as a result of the left shift have a value equal to 0.";
7.4.3.11 Geometry Predictive tree node semantics,
"for (k = 0; k < 3; k++)
PtnResidual[nodeIdx][k] =
(2 × ptn_residual_sign_flag – 1)
× (!ptn_residual_eq0_flag[k]
+ ((1 << ptn_residual_abs_log2[k]) >> 1)
+ ptn_residual_abs_remaining[k])
")
At the time the invention was made, it would have been obvious to one of ordinary skill in the art to modify point cloud decoding (as taught my Ray) to include bit shifting for point cloud decoding (as taught by G-PCC) because such a modification is the result of combining prior art elements according to known methods to yield predictable results. More specifically, point cloud decoding as modified by bit shifting can yield a predictable result of decoding of bit shifted data .Thus, a person of ordinary skill would have appreciated including in point cloud decoding the ability to do bit shifting since the claimed invention is merely a combination of old elements, and in the combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Regarding claim 2, Ray in view of G-PCC teaches: The method according to claim 1, wherein the analyzing the encoded data to obtain shift data comprises: obtaining an encoding mode; (G-PCC, 7.4.2.2 Attribute parameters semantics, "bitwise_occupancy_coding_flag equal to 1 indicates that geometry node occupancy is encoded using bit-wise contextualisation of the syntax element ocupancy_map. bitwise_occupancy_coding_flag equal to 0 indicates that geometry node occupancy is encoded using the dictionary encoded syntax element occypancy_byte.")
and analyzing the encoded data based on the encoding mode to obtain the shift data.
(G-PCC,
7.4.3.11 Geometry Predictive tree node semantics,
"for (k = 0; k < 3; k++)
PtnResidual[nodeIdx][k] =
(2 × ptn_residual_sign_flag – 1)
× (!ptn_residual_eq0_flag[k]
+ ((1 << ptn_residual_abs_log2[k]) >> 1)
+ ptn_residual_abs_remaining[k])
")
Regarding claim 4, Ray in view of G-PCC teaches: The method according to claim 2, wherein the encoding mode comprises a second encoding mode, the shift data comprises an encoding shift quotient and an encoding shift remainder of the target encoding information, the encoded data comprises an encoding information flag field,
(G-PCC, 5.6 Bit-wise operators,
"x >> y Arithmetic right shift of a two's complement integer representation of x by y binary digits. This function is defined only for non-negative integer values of y. Bits shifted into the most significant bits (MSBs) as a result of the right shift have a value equal to the MSB of x prior to the shift operation.
x << y Arithmetic left shift of a two's complement integer representation of x by y binary digits. This function is defined only for non-negative integer values of y. Bits shifted into the least significant bits (LSBs) as a result of the left shift have a value equal to 0.";
7.4.3.11 Geometry Predictive tree node semantics,
"for (k = 0; k < 3; k++)
PtnResidual[nodeIdx][k] =
(2 × ptn_residual_sign_flag – 1)
× (!ptn_residual_eq0_flag[k]
+ ((1 << ptn_residual_abs_log2[k]) >> 1)
+ ptn_residual_abs_remaining[k])
")
and the analyzing the encoded data based on the encoding mode to obtain the shift data comprises: analyzing the encoding information flag field, and determining whether an analytic value of the encoding information flag field satisfies a shift analysis condition;
(G-PCC, 7.3.3.11 Geometry Predictive tree node syntax, “if(!ptn_residual_eq0_flag[k]))”)
and in response to the analytic value of the encoding information flag field satisfying the shift analysis condition, in which case the encoded data further comprises an encoding result of the encoding shift quotient and an encoding result of the encoding shift remainder,
(G-PCC, 7.3.3.11 Geometry Predictive tree node syntax, “ptn_residual_abs_log2[k]”)
analyzing the encoding result of the encoding shift quotient to obtain the encoding shift quotient, and analyzing the encoding result of the encoding shift remainder to obtain the encoding shift remainder.
(G-PCC, 7.4.3.11 Geometry Predictive tree node semantics,
"for (k = 0; k < 3; k++)
PtnResidual[nodeIdx][k] =
(2 × ptn_residual_sign_flag – 1)
× (!ptn_residual_eq0_flag[k]
+ ((1 << ptn_residual_abs_log2[k]) >> 1)
+ ptn_residual_abs_remaining[k])")
Regarding claim 5, Ray in view of G-PCC teaches: The method according to claim 2, wherein the encoding mode comprises a third encoding mode, the shift data comprises an encoding shift quotient and an encoding shift remainder, (G-PCC, 7.3.3.11 Geometry Predictive tree node syntax, “ptn_residual_abs_log2[k] … ptn_residual_abs_remainder”)
the encoded data comprises a shift quotient flag field, (G-PCC, 7.3.3.11 Geometry Predictive tree node syntax, “ptn_residial_eq0_flag[k]”)
and the analyzing the encoded data based on the encoding mode to obtain the shift data comprises: analyzing the shift quotient flag field, and determining whether an analytic value of the shift quotient flag field satisfies an indirect analysis condition for discrimination; (G-PCC, 7.3.3.11 Geometry Predictive tree node syntax, “if(!ptn_residual_eq0_flag[k]))”)
and in response to the analytic value of the shift quotient flag field satisfies the indirect analysis condition, in which case the encoded data further comprises an encoding result of the encoding shift quotient and an encoding result of the encoding shift remainder, (G-PCC, 7.3.3.11 Geometry Predictive tree node syntax, “ptn_residual_abs_log2[k] … ptn_residual_abs_remainder”)
analyzing the encoding result of the encoding shift quotient to obtain the encoding shift quotient, and analyzing the encoding result of the encoding shift remainder to obtain the encoding shift remainder.
(G-PCC, 7.4.3.11 Geometry Predictive tree node semantics,
"for (k = 0; k < 3; k++)
PtnResidual[nodeIdx][k] =
(2 × ptn_residual_sign_flag – 1)
× (!ptn_residual_eq0_flag[k]
+ ((1 << ptn_residual_abs_log2[k]) >> 1)
+ ptn_residual_abs_remaining[k])
")
Regarding claim 6, Ray in view of G-PCC teaches: The method according to claim 2, wherein the encoding mode comprises a fourth encoding mode, the shift data comprises an encoding shift quotient and an encoding shift remainder, the encoded data comprises an encoding result of the encoding shift quotient and an encoding result of the encoding shift remainder, (G-PCC, 7.3.3.11 Geometry Predictive tree node syntax, “ptn_residual_abs_log2[k] … ptn_residual_abs_remainder”)
and the analyzing the encoded data based on the encoding mode to obtain the shift data comprises: analyzing the encoding result of the encoding shift quotient to obtain the encoding shift quotient; and analyzing the encoding result of the encoding shift remainder to obtain the encoding shift remainder.
(G-PCC, 7.4.3.11 Geometry Predictive tree node semantics,
"for (k = 0; k < 3; k++)
PtnResidual[nodeIdx][k] =
(2 × ptn_residual_sign_flag – 1)
× (!ptn_residual_eq0_flag[k]
+ ((1 << ptn_residual_abs_log2[k]) >> 1)
+ ptn_residual_abs_remaining[k])
")
Regarding claim 16, Ray in view of G-PCC teaches: The method according to claim 1, wherein the shift data comprises an encoding shift quotient and an encoding shift remainder; (G-PCC, 7.3.3.11 Geometry Predictive tree node syntax, “ptn_residual_abs_log2[k] … ptn_residual_abs_remainder”)
and the performing shift reconstruction on the shift data to obtain reconstructed encoding information of the target encoding information comprises: determining a shift bit count; performing shift processing on the encoding shift quotient based on the shift bit count to obtain a shifted encoding shift quotient; and adding the shifted encoding shift quotient and the encoding shift remainder to obtain the reconstructed encoding information of the target encoding information.
(G-PCC, 7.4.3.11 Geometry Predictive tree node semantics,
"for (k = 0; k < 3; k++)
PtnResidual[nodeIdx][k] =
(2 × ptn_residual_sign_flag – 1)
× (!ptn_residual_eq0_flag[k]
+ ((1 << ptn_residual_abs_log2[k]) >> 1)
+ ptn_residual_abs_remaining[k])
")
Regarding claim 18, claim 18 has been analyzed with regard to claim 1 and is rejected for the same reasons of obviousness as used above as well as in accordance with Ray further teaching on: A point cloud processing method, performed by a computer device, the method comprising: (Fig. 1)
Regarding claim 19, claim 19 has been analyzed with regard to claim 2 and is rejected for the same reasons of obviousness as used above as well as in accordance with Ray further teaching on: A point cloud processing method, performed by a computer device, the method comprising: (Fig. 1)
Regarding claim 20, claim 20 has been analyzed with regard to claim 1 and is rejected for the same reasons of obviousness as used above as well as in accordance with Ray further teaching on: A point cloud processing method, performed by a computer device, the method comprising: (Fig. 1)
Claim(s) 11, and 17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Ray et al. (US Patent Number 20220108491-A1, hereinafter “Ray”) in view of G-PCC (G-PCC Future Enhancements", 130. MPEG MEETING; 20200420 - 20200424; ALPBACH; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), no. n19328 21 July 2020 (2020-07-21), XP030289575 (Year: 2020), hereinafter “G-PCC”) and Richardson et al. (Richardson, Iain (2010). The H.264 Advanced Video Compression Standard. Wiley. pp. 208, 221. ISBN 978-0-470-51692-8, hereinafter “Richardson”).
Regarding claim 11, Ray in view of G-PCC does not teach: The method according to claim 3, wherein the analyzing the encoding result of the encoding shift quotient to obtain the encoding shift quotient comprises: analyzing the encoding result of the encoding shift quotient based on an exponential-Golomb encoding mode to obtain the encoding shift quotient, an order for the exponential-Golomb encoding mode being a K1th order, and K1 being a nonnegative integer; or analyzing the encoding result of the encoding shift quotient based on a bit encoding mode to obtain the encoding shift quotient; and the analyzing the encoding result of the encoding shift remainder to obtain the encoding shift remainder comprises: analyzing the encoding result of the encoding shift remainder based on the bit encoding mode to obtain the encoding shift remainder; or analyzing the encoding result of the encoding shift remainder based on the exponential-Golomb encoding mode to obtain the encoding shift remainder, the order for the exponential-Golomb encoding mode being a K2th order, and K2 being a positive integer.
However, Richardson does teach: analyzing the encoding result of the encoding shift quotient based on an exponential-Golomb encoding mode to obtain the encoding shift quotient, (7.4.1 Exp-Golomb Coding, “Exponential Golomb codes, Exp Golombor , ExpG, are binary codes with varying lengths constructed according to a regular pattern [x,xi]… The codeword consists of a prefix of M zeros, where M is 0 or a positive integer, a 1 and an M-bit information field, INFO. Each codeword may be generated algorithmically from the parameter code num:”; 7.4.2 Context Adaptive Variable Length Coding, CAVLC, “(i) If upper and left blocks are both available, i.e. in the same coded slice, nC = (nA + nB +1) ≫1,where ≫indicates binary right shift. (ii) If only the upper is available, nC = nB. (iii) If only the left block is available, nC = nA. (iv) If neither neighbouring block is available, nC = 0”)
an order for the exponential-Golomb encoding mode being a K1th order, and K1 being a nonnegative integer; or analyzing the encoding result of the encoding shift quotient based on a bit encoding mode to obtain the encoding shift quotient;(7.4.2 Exp=Golomb Coding, “The codeword consists of a prefix of M zeros, where M is 0 or a positive integer, a 1 and an M-bit information field, INFO. Each codeword may be generated algorithmically from the parameter code num: M = floor(log INFO = code 2 [code num + 1]) num + 1 − 2M Conversely, code num may be decoded as follows”)
and the analyzing the encoding result of the encoding shift remainder to obtain the encoding shift remainder comprises: analyzing the encoding result of the encoding shift remainder based on the bit encoding mode to obtain the encoding shift remainder; or analyzing the encoding result of the encoding shift remainder based on the exponential-Golomb encoding mode to obtain the encoding shift remainder, the order for the exponential-Golomb encoding mode being a K2th order, and K2 being a positive integer. (7.4.1 Exp-Golomb Coding, “Exponential Golomb codes, Exp Golombor , ExpG, are binary codes with varying lengths constructed according to a regular pattern [x,xi]… The codeword consists of a prefix of M zeros, where M is 0 or a positive integer, a 1 and an M-bit information field, INFO. Each codeword may be generated algorithmically from the parameter code num:”; 7.4.2 Context Adaptive Variable Length Coding, CAVLC, “(i) If upper and left blocks are both available, i.e. in the same coded slice, nC = (nA + nB +1) ≫1,where ≫indicates binary right shift. (ii) If only the upper is available, nC = nB. (iii) If only the left block is available, nC = nA. (iv) If neither neighbouring block is available, nC = 0”)
At the time the invention was made, it would have been obvious to one of ordinary skill in the art to modify a method of encoding and decoding cloud points to include Exponential Golomb coding because such a modification is the result of simple substitution of one known element for another producing a predictable result. More specifically, the encoding and decoding modes of the cloud point methods and exponential Golomb coding perform the same general and predictable function, the predictable function being encoding and decoding bit data. Since each individual element and its function are shown in the prior art, albeit shown in separate references, the difference between the claimed subject matter and the prior art rests not on any individual element or function but in the very combination itself - that is in the substitution of encoding and decoding mode of Ray inview of G-PCC by replacing it with exponential Golomb coding. Thus, the simple substitution of one known element for another producing a predictable result renders the claim obvious.
Regarding claim 17, Ray in view of G-PCC and Richardson does teach: The method according to claim 1, wherein the method further comprises: determining an order for an exponential-Golomb encoding mode if an analysis process of the encoded data relates to an exponential-Golomb encoding mode-based analysis process. (7.4.1 Exp-Golomb Coding, “Exponential Golomb codes, Exp Golombor , ExpG, are binary codes with varying lengths constructed according to a regular pattern [x,xi]… The codeword consists of a prefix of M zeros, where M is 0 or a positive integer, a 1 and an M-bit information field, INFO. Each codeword may be generated algorithmically from the parameter code num:”; 7.4.2 Context Adaptive Variable Length Coding, CAVLC, “(i) If upper and left blocks are both available, i.e. in the same coded slice, nC = (nA + nB +1) ≫1,where ≫indicates binary right shift. (ii) If only the upper is available, nC = nB. (iii) If only the left block is available, nC = nA. (iv) If neither neighbouring block is available, nC = 0”)
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Jinsu Hwang whose telephone number is (703)756-1370. The examiner can normally be reached Mon -Thu 10am-8am EST.
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, Matthew Bella can be reached at (571) 272-7778. 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.
/JINSU HWANG/Examiner, Art Unit 2667
/MATTHEW C BELLA/Supervisory Patent Examiner, Art Unit 2667