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 .
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 6/16/2026 has been entered.
Claim Objections
Claim 12 is objected to under 37 CFR 1.75 as being a substantial duplicate of claim 9. When two claims in an application are duplicates or else are so close in content that they both cover the same thing, despite a slight difference in wording, it is proper after allowing one claim to object to the other as being a substantial duplicate of the allowed claim. See MPEP § 608.01(m).
Claim 12 does not further limit claim 9 for which it depends on.
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 (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.
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.
Claims 1-2, 7-13, and 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Han et al (US 20210144379 A1) in view of Tourapis et al (US20200314435A1).
Regarding claim 1, Han et al teaches an entropy encoding method, comprising (Para 576,The three-dimensional data encoding device then determines, for each slice, whether to initialize CABAC. ALSO see Para 462, CABAC is an abbreviation of context-based adaptive binary arithmetic coding, which is an encoding method that realizes an arithmetic encoding (entropy encoding) with high compression ratio by increasing the probability precision by successively updating a context (a model for estimating the probability of occurrence of an input binary symbol) based on the encoded information. i.e. CABAC is an entropy encoding method that is a type of an occupancy code context model):
obtaining, by an entropy encoding apparatus (Para 128, a three-dimensional data encoding device according to an aspect of the present disclosure includes: a processor; and memory), sparsity/density information of a to-be-encoded target point cloud (Para 574-588, The three-dimensional data encoding device determines an initialization with high coding efficiency based on the point cloud data density, for example. i.e. sparsity/density information of a 3D point cloud slice is determined);
and performing entropy encoding on the target point cloud based on the type of the occupancy code context model (Para 557-560 and Para 574-588, the three-dimensional data encoding device then determines, for each slice, whether to initialize CABAC for the encoding of geometry information and the encoding of attribute information based on the data density of the object of the slice (S5272). In other words, the three-dimensional data encoding device determines CABAC initialization information (CABAC initialization flag) for the encoding of geometry information and the encoding of attribute information based on the geometry information. The three-dimensional data encoding device determines an initialization with high coding efficiency based on the point cloud data density, for example. The CABAC initialization information may be indicated by cabac_init_flag that is common to the geometry information and the attribute information. i.e. the encoding device decides whether or not to initialize CABAC (entropy encoding code context model) for the target point cloud (3D point cloud slice as stated in Para 575) based on the sparsity/density information (density of the point cloud)).
Han et al does not expressly teach the following limitation as further recited. However, Tourapis et al teach selecting, based on the sparsity/density information, a type of an occupancy code context model used to perform entropy encoding on the target point cloud from different model types as now claimed (See Figs. 12B, 13A; Pars. 0273-0281 i.e., “context adaptive” entropy encoding).
“[0273] A binary information is encoded for each T×T block to indicate whether it is full (i.e., dense) or not (i.e., sparse). Various encoding strategies could be used. For instance, a context adaptive binary arithmetic encoder could be used. [0274] If the block is non-full, an extra information is encoded indicating the location of the full/empty sub-blocks. More precisely, the process may proceed as follows: [0275] Different traversal orders are defined for the sub-blocks. FIG. 12B, shows some examples. The traversal orders are predetermined and known to both the encoder and decoder. [0276] The encoder chooses one of the traversal orders and explicitly signals its index in the bit stream. [0277] The binary values associated with the sub-blocks are encoded by using a run-length encoding strategy. [0278] The binary value of the initial sub-block is encoded. Various encoding strategies could be used. For instance, fixed length coding or a context adaptive binary arithmetic encoder could be used. [0279] Continuous runs of Os and is are detected, while following the traversal order selected by the encoder. [0280] The number of detected runs is encoded. Various encoding strategies could be used. For instance, fixed length coding or a context adaptive binary arithmetic encoder, or a universal variable length encoder (UVLC) could be used. [0281] The length of each run, except of the last one, is then encoded. Various encoding strategies could be used. For instance, fixed length coding, a context adaptive binary arithmetic encoder, or a universal variable length encoder could be used.”
PNG
media_image1.png
622
898
media_image1.png
Greyscale
PNG
media_image2.png
282
844
media_image2.png
Greyscale
Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date to incorporate the teachings of Tourapis et al into Han et al to derive at claim 1, and to benefit from an adaptive context entropy coding strategy that ensures occupancy map remains efficient post compression. In other words, reduce or eliminate redundant points (point cloud) caused by down/up-sampling of the occupancy map (Tourapis et al, Abstract).
Regarding claim 2, Han et al in the combination teaches the method according to claim 1, wherein the obtaining sparsity/density information of a to-be-encoded target point cloud comprises: obtaining size information of a bounding box corresponding to the target point cloud and information on the number of points comprised in the target point cloud; and determining the sparsity/density information of the target point cloud based on the size information and the information on the number of points (Para 557-560, the three-dimensional data encoding device may determine the density of point cloud data for each slice, that is, the number of points per unit area belonging to each slice, compare the data density of the slice with the data density of another slice, and determine that the coding efficiency is better when CABAC is not initialized and determine not to initialize CABAC if the variation of the data density satisfies a predetermined condition. i.e. when determining the type of a type of occupancy code context model to use for the encoding (whether or not to use CABAC), the area of the bounding box (size of the bounding box) and the number of points are used to determine the 'sparsity/density information' of the target point cloud).
Regarding claim 7, Tourapis et al in the combination teaches the method according to claim 1, wherein after the selecting, based on the sparsity/density information, a type of an occupancy code context model used to perform entropy encoding on the target point cloud from different model types, the method further comprises: encoding second information into geometric slice header information of the target point cloud, wherein the second information comprises the sparsity/density information of the target point cloud or the type of the occupancy code context model used to perform entropy encoding on the target point cloud (Para 0436).
“[0436] As described above, all sub streams except the occupancy map are expected to be of the same resolution. Each point in the geometry sub stream essentially corresponds to a point in the final 3D reconstructed point cloud. In some embodiments, it is permitted for the signal to be encoded at a different resolution than the original representation. Also, in some embodiments, offsetting as well as rotating the point cloud is also possible. Seeing things from the encoder perspective, this is done by signaling in the stream header additional metadata that would identify the scaling, offset, and rotation that should be applied onto the original point cloud data prior to projecting it onto the target video planes. From the decoder perspective, these parameters are used after the reconstruction of a first 3D point cloud representation and utilized to generate the final 3D point cloud representation. In such a scheme, both geometry and attribute/texture video data are signaled at the same resolution as specified in the point cloud header. Per patch metadata including scaling factors and rotation parameters are also supported in such a scheme, with scaling though now applied on each projected patch independently.”
Regarding claim 8, Han et al in the combination teaches the method according to claim 1, wherein the target point cloud is a point cloud sequence or a point cloud slice in a point cloud sequence (Para 574-576, is a flowchart illustrating an example of the method of determining whether to initialize CABAC and determining a context initial value. First, the three-dimensional data encoding device divides point cloud data into slices based on an object determined from geometry information (S5271). i.e. target point cloud is a point cloud slice in a point cloud sequence).
Regarding claim 9, which is the corresponding decoding operation of the encoding of claim 1. Thus, the rejection of claim 1 in fully incorporated herein. Furthermore, Han et al in the combination teaches an entropy decoding method, comprising (Para 548 and Fig 64, a flowchart illustrating an example of a process of initializing the CABAC decoder in the combining (S5254) of information divided into slices and the combining (S5256) of information divided into tiles),
obtaining, by an entropy decoding apparatus (Para 128, a three-dimensional data encoding device according to an aspect of the present disclosure includes: a processor; and memory), a type of an occupancy code context model used to perform entropy decoding on a to-be-decoded target point cloud, and performing entropy decoding on the target point cloud based on the type of the occupancy code context model (Para 548-556, when the CABAC initialization flag is 1 (if Yes in S5262), the three-dimensional data decoding device reinitializes the CABAC decoder to the default state (S5263). […] The three-dimensional data decoding device then continues the decoding process until a condition for stopping the decoding process is satisfied, such as until there is no data to be decoded (S5264). i.e. the CABAC initialization flag is the type of occupancy code context model that was used to perform encoding of the target point cloud, and entropy decoding is performed based on this type of occupancy code context model, which was determined by sparsity/density information of the target point cloud (see Para 557-560 and Para 574-588)).
Han et al does not teach the following limitations as further recited. Tourapis et al teaches wherein the type of the occupancy code context model used to perform entropy decoding on the target point cloud is determined by sparsity/density information of the target point cloud (Figs. 5B, 5D; Pars. 0435, 0455 for example).
Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date to incorporate the teachings of Tourapis et al into Han et al to derive at claim 9, and to benefit from an adaptive context entropy coding strategy that ensures occupancy map remains efficient post compression/decompression. In other words, reduce or eliminate redundant points (point cloud) caused by down/up-sampling of the occupancy map (Tourapis et al, Abstract).
Regarding claim 10, claim 10 rejected for the same reasons as claim 9 and claim 7, above.
Regarding claim 11, claim 11 rejected for the same reasons as claim 9 and in consideration of claim 1 above. Claim 11 is the decoding operation as in claim 1 and the decoding is discussed in claim 9 above. Furthermore, Han et al in the combination teaches the method according to claim 10, wherein the second information comprises the type of the occupancy code context model used to perform entropy encoding on the target point cloud, and the determining the type of the occupancy code context model used to perform entropy decoding on the target point cloud comprises: determining that the type of the occupancy code context model used to perform entropy decoding on the target point cloud is the same as the type of the occupancy code context model used to perform entropy encoding on the target point cloud; or, wherein the second information comprises the sparsity/density information of the target point cloud(Para 548-556, when the CABAC initialization flag is 1 (if Yes in S5262), the three-dimensional data decoding device reinitializes the CABAC decoder to the default state (S5263). […] The three-dimensional data decoding device then continues the decoding process until a condition for stopping the decoding process is satisfied, such as until there is no data to be decoded (S5264). Furthermore, see, on the other hand, when the CABAC initialization flag is not 1 (if No in S5262), the three-dimensional data decoding device does not re-initialize the CABAC decoder and proceeds to step S5264. […] The three-dimensional data decoding device then continues the decoding process until a condition for stopping the decoding process is satisfied, such as until there is no data to be decoded (S5264). i.e. the CABAC initialization flag is the type of occupancy code context model that was used to perform encoding of the target point cloud, and entropy decoding is performed based on this type of occupancy code context model, therefore the entropy decoding model is confirmed to be the CABAC model, or the same as the encoding model). And Tourapis et al in the combination further teach the strike-through limitation above (see rejection in claim 9).
Regarding claim 12, claim 12 rejected for the same reasons as claims 7, 9, and 11, above. (It is noted that claim 12 is redundant and does not further limit claim 9).
Regarding claim 13, claim 13 rejected for the same reasons as claim 2.
Regarding claim 18, claim 18 rejected for the same reasons as claims 8.
Regarding claim 19, claim 19 rejected for the same reasons as claims 1.
Regarding claim 20, claim 20 rejected for the same reasons as claims 9.
Claims 3-4 and 14-15 are rejected under 35 U.S.C. 103 as being unpatentable over Han et al (US 20210144379 A1) in view of Tourapis et al (US20200314435A1) and further in view of Smirnov (US 20200342250 A1).
Regarding claim 3, the combination of Han et al and Tourapis et al does not teach, the method according to claim 2, wherein the determining the sparsity/density information of the target point cloud based on the size information and the information on the number of points comprises: determining a first volume based on the size information and the information on the number of points, wherein the first volume is an average volume occupied by each point in the target point cloud, in the bounding box; and determining the sparsity/density information of the target point cloud based on a relationship between the first volume and a preset threshold.
In a similar field of endeavor, Smirnov teaches, the method according to claim 2, wherein the determining the sparsity/density information of the target point cloud based on the size information and the information on the number of points comprises: determining a first volume based on the size information and the information on the number of points (Para 50-54, in such an example, a volume of the point cloud is determined based on the represented shape. Moreover, the location of each of the plurality of the points in the point cloud enables the data processing module to determine the centroid of the point cloud. Furthermore, the location of each point of the plurality of points enables the data processing module to determine a number of points per unit area which is the density of the point cloud. i.e. determining a first volume based on the size information and number of points),
wherein the first volume is an average volume occupied by each point in the target point cloud, in the bounding box (Para 50-54, in an example, a point cloud having one point per square metre is characterised as “sparse point cloud”, a point cloud having number of points in the range of one to two points per square metre is characterised as “low density point cloud”, a point cloud having number of points in the range of two to five points per square metre is characterised as “medium density point cloud”, a point cloud having number of points in the range of five to ten points per square metre is characterised as “dense point cloud”, and a point cloud having number of points more than ten points per square metre is characterised as “high density point cloud”. i.e. the area can be considered a bounding box, see also Fig 4 402 and 404, and 'average volume occupied by each point in the area (considered the bounding box or cube)' is 'five to ten points per square meter', see also Para 50: a size of the point cloud is determined based on the represented shape. Furthermore, the location and local density of the point having three-dimensional coordinates in the point cloud enables the data processing module to determine the volume of the point cloud);
and determining the sparsity/density information of the target point cloud based on a relationship between the first volume and a preset threshold (Para 50-54, in an example, a point cloud having one point per square metre is characterised as “sparse point cloud”, a point cloud having number of points in the range of one to two points per square metre is characterised as “low density point cloud”, a point cloud having number of points in the range of two to five points per square metre is characterised as “medium density point cloud”, a point cloud having number of points in the range of five to ten points per square metre is characterised as “dense point cloud”, and a point cloud having number of points more than ten points per square metre is characterised as “high density point cloud”. i.e. a low number of points taking up a certain amount of volume in the area (1 to 2 points per square meter) is considered sparse, and more points per area is considered dense).
Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date to incorporate the teachings of Han et al (US 20210144379 A1) and Tourapis et al (US20200314435A1) in view of Smirnov (US 20200342250 A1) so that the method includes determining a first volume based on the size information and the information on the number of points, wherein the first volume is an average volume occupied by each point in the target point cloud, in the bounding box; and determining the sparsity/density information of the target point cloud based on a relationship between the first volume and a preset threshold. Doing so would allow for normalisation of the point cloud that is done in order to regularise the number of plurality of points acquired. Such normalisation accelerates a processing speed of the data processing module as a smaller number of plurality of points are processed at a given instant of time (Smirnov, Para 51).
Regarding claim 4, Han et al teaches the method according to claim 3, wherein the determining the sparsity/density information of the target point cloud based on a relationship between the first volume and a preset threshold comprises at least one of the following: if the first volume is greater than the preset threshold, determining that the sparsity/density information of the target point cloud is a sparse point cloud; or if the first volume is less than or equal to the preset threshold, determining that the sparsity/density information of the target point cloud is a dense point cloud; or, wherein the preset threshold is determined by the entropy encoding apparatus or prescribed by a protocol (Para 557-560, here, “another slice” may be the preceding slice in the decoding order or a spatially neighboring slice, for example. The three-dimensional data encoding device may not perform the comparison of the data density with that of another slice and may determine whether to initialize CABAC based on whether the data density of the slice is a predetermined data density or not. i.e. if the first volume of point cloud data is greater than the threshold, the point cloud is determined to be dense and CABAC is used, and the opposite for if the volume of point cloud data is less than the threshold (considered sparse)).
Regarding claim 14, claim 14 rejected for the same reasons as claims 3 and 4.
Regarding claim 15, claim 15 rejected for the same reasons as claim 4.
Claims 5 and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Han et al (US 20210144379 A1) in view of Tourapis et al (US20200314435A1) and Smirnov (US 20200342250 A1), and further in view of Park et al (US 20220383553 A1).
Regarding claim 5, the combination of Han et al, Tourapis et al, and Smirnov teaches encoding a type of encoder used (when CABAC is utilized for encoding) into the header of the encoding information (see Para 575-580: the CABAC initialization information may be indicated by cabac_init_flag that is common to the geometry information and the attribute information), but does not teach after the determining the sparsity/density information of the target point cloud based on a relationship between the first volume and a preset threshold, the method further comprises: encoding first information into geometric slice header information of the target point cloud, wherein the first information is the preset threshold or identification information corresponding to the preset threshold.
In a similar field of endeavor, Park et al teaches, the method according to claim 3, wherein in a case that the preset threshold is determined by the entropy encoding apparatus, after the determining the sparsity/density information of the target point cloud based on a relationship between the first volume and a preset threshold, the method further comprises: encoding first information into geometric slice header information of the target point cloud, wherein the first information is the preset threshold or identification information corresponding to the preset threshold (Para 351 - 359, TPS is tile parameter set in header, (see Para 349: when there is configuration information in the TPS, the reception method/device according to the embodiments may use the information of the TPS. In the attribute slice header, each tile may be divided into slices. That is, configuration information may be configured for each slice). This includes the threshold information for a Morton code generation order that is transmitted in the bitstream, in order for a specific corresponding decoding to the encoding method be performed).
Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date to incorporate the teachings of Han et al in view of in view of Tourapis et al, Smirnov and Park et al so that the method includes encoding first information into geometric slice header information of the target point cloud, wherein the first information is the preset threshold or identification information corresponding to the preset threshold. Doing so would allow for the system to perform operations related to the condition and threshold for a Morton code generation order, parameter information related to the condition for generation and the threshold may be signaled (Park et al., Para 351).
Regarding claim 16, claim 16 rejected for the same reasons as claim 5 above.
Allowable Subject Matter
Claims 6 and 17 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.
Contact
Any inquiry concerning this communication or earlier communications from the examiner should be directed to VU LE whose telephone number is (571)272-7332. The examiner can normally be reached M-F 8:00 - 17:00.
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.
Vu Le can be reached at 2-7332. 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.
/VU LE/Supervisory Patent Examiner, Art Unit 2668