DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This office action is a response to an application filed on 06/25/2025, in which claims 1-20 are pending and ready for examination.
Priority
Applicant’s claim for the benefit of a prior-filed application under 35 U.S.C. 119(e) or under 35 U.S.C. 120, 121, 365(c), or 386(c) is acknowledged.
Information Disclosure Statement
The information disclosure statement (IDS) submitted was filed before the mailing date of the Office Action on the merits. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
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 conflicting claims 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); 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 nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP §§ 706.02(l)(1) - 706.02(l)(3) for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) 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 www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1-11, 13, 15-17, and 19 provisionally rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1, 3-4, 6-9, 13-19 of copending Application No. 2023/0231991 A1. Although the claims at issue are not identical, they are not patentably distinct from each other because of the reason indicated below.
Instant – 19/250,011
US Pub. 2023/0231991 A1
Claim 1 - A method for of video decoding, the method comprising:
Claim 1 - A method for generating an intra-predictor block of a current video block in a video stream, the current video block being intra-coded in a palette mode, the method comprising:
receiving a video bitstream comprising a plurality of blocks, including a current block;
determining that the current block is coded using a current palette that is based on at least one reference palette corresponding to at least one neighboring block;
determining from the video stream that the current video block is coded based on at least one reference palette corresponding to at least one neighboring video block;
determining a size, cacheN, of an inherited portion of the current palette using one or more palette size parameters corresponding to the at least one neighboring block;
determining a size of an inherited portion of a current palette, cacheN, associated with the current video block prior to performing any merging of the at least one reference palette, cacheN being an integer;
generating a cached palette with a number of unique palette entries, S, by merging the at least one reference palette;
Claim 15 - merging the at least one reference palette into a cached palette with S number of unique palette entries.
deriving the inherited portion of the current palette, including,
deriving the inherited portion of the current palette based on cacheN and the at least one reference palette; extracting, from the video stream, palette indexes into the current palette for elements of the current video block; and
when S < cacheN:
filling first S palette entries of the inherited portion of the current palette using the cached palette, and
filling remaining (cacheN-S) palette entries of the inherited portion of the current palette with first (cacheN-S) palette entries from a palette entry list; and
Claim 18 - when S<cacheN, the method further comprising:
filling first S palette entries of the inherited portion of the current palette using the cached palette; and
filling last (cacheN-S) palette entries of the inherited portion of the current palette with first (cacheN-S) palette entries from a palette entry list.
generating an intra predictor block of the current block based on the current palette.
generating the predictor block of the current video block based on at least the palette indexes and the current palette.
Claim 2 - the at least one neighboring video block is selected by scanning neighboring blocks of the current block in a predefined scanning order to determine a first set of neighboring blocks intra coded in a palette mode, and wherein a set of cached palettes of the first set of neighboring video blocks is used to determine the at least one reference palette.
Claim 14 - the at least one neighboring video block are selected from the three or more neighboring video blocks by scanning the three or more neighboring video blocks in a predefined scanning order to determine a first set of neighboring video blocks intra-coded in the palette mode; and a set of cached palettes of the first set of neighboring video blocks are used to determine or derive the at least one reference palette.
Claim 3 - the neighboring blocks of the current block comprise at least one block non-adjacent to the current block.
Claim 13 - the three or more neighboring video blocks comprises at least one block non-adjacent to the current video block.
Claim 4 - determining cacheN comprises:
determining a first palette size of a first neighboring block of the current block; determining a second palette size of a second neighboring block of the current block; and
determining cacheN based on the first palette size and the second palette size.
Claim 3 - determining cacheN comprises:
determining a first palette size of a first neighboring video block of the current video block;
determining a second palette size of a second neighboring video block of the current video block; and
determining cacheN based on the first palette size and the second palette size.
Claim 5 - the first neighboring block and the second neighboring block comprise a video block immediate above and left of the current block, respectively; and
Claim 4 - the first neighboring video block and the second neighboring video block comprise a video block immediate above and left of the current video block, respectively; and
determining cacheN based on the first palette size and the second palette size comprises determining the size of the inherited portion of the current palette as:
determining cacheN based on the first palette size and the second palette size comprises determining the size of the inherited portion of the current palette as:
a greater of the first palette size and the second palette size increased by N;
a smaller of the first palette size and the second palette size increased by N;
a smaller of a predetermined maximum inherited palette size and the greater of the first palette size and the second palette size increased by N; or
a smaller of the predetermined maximum inherited palette size and the smaller of the first palette size and the second palette size increased by N, wherein N is a predetermined palette size incremental, N being an integer between 0 and 8, inclusive.
a greater of the first palette size and the second palette size increased by N; or
a smaller of the first palette size and the second palette size increased by N; or
a smaller of a predetermined maximum inherited palette size and the greater of the first palette size and the second palette size increased by N; or
a smaller of the predetermined maximum inherited palette size and the smaller of the first palette size and the second palette size increased by N, wherein N is a predetermined palette size incremental, N being an integer between 0 and 8, inclusive.
Claim 6 - a size of the current palette is predetermined or signaled in a syntax element in the video bitstream.
Claim 6 - the palette size is predetermined or signaled in a syntax element in the video stream.
Claim 7 - the syntax element comprises one component of a video parameter set, a sequence parameter set, a picture parameter set, an adaptation parameter set, a frame header, a slice header, a picture header, a tile header, or a coding tree unit header associated with the current block.
Claim 7 - the syntax element comprises one component of a video parameter set, a sequence parameter set, a picture parameter set, an adaptation parameter set, a frame header, a slice header, a picture header, a tile header, or a coding tree unit header associated with the current video block.
Claim 8 - cacheN is derived using a coding information item of the current block or the at least one neighboring block, and wherein the coding information item comprises at least one of a block size or prediction mode associated with the current block or the at least one neighboring block.
Claim 8 - cacheN is derived from a coding information item of the current video block or the at least one neighboring video block.
Claim 9 - wherein the coded information item comprises at least one of a block size or prediction mode associated with the current video block or the at least one neighboring video block.
Claim 9 - when S> cacheN, the method further comprises one of:
selecting first cacheN palette entries from the cached palette following a predetermined scan order to generate the inherited portion of the current palette with cacheN number of palette entries;
selecting last cache cacheN palette entries from the cached palette following the predetermined scan order to generate the inherited portion of the current palette with cacheN number of palette entries;
Claim 16 - when S>cacheN, the method further comprising one of:
selecting first cacheN palette entries from the cached palette following a predetermined scan order to generate the inherited portion of the current palette with cacheN number of palette entries;
selecting last cache cacheN palette entries from the cached palette following a predetermined scan order to generate the inherited portion of the current palette with cacheN number of palette entries;
selecting duplicate palette entries from the at least one reference palette following the predetermined scan order, and if needed, additionally selecting first non-duplicated palette entries from the cached palette, to generate the inherited portion of the current palette with cacheN number of palette entries; or
selecting duplicative palette entries from the at least one reference palette following the predetermined scan order, and if needed, additionally selecting last non-duplicated palette entries from the cached palette, to generate the inherited portion of the current palette with cacheN number of palette entries.
selecting duplicate palette entries from the at least one reference palette following a predetermined scan order, and if needed, additionally selecting first non-duplicated palette entries from the cached palette, to generate the inherited portion of the current palette with cacheN number of palette entries; or
selecting duplicative palette entries from the at least one reference palette following a predetermined scan order, and if needed, additionally selecting last non-duplicated palette entries from the cached palette, to generate the inherited portion of the current palette with cacheN number of palette entries.
Claim 10 - when S < (cacheN), the method further comprises:
filling first S palette entries of the inherited portion of the current palette using the cached palette;
determining (cacheN-S) target palette entries from the cached palette;
Claim 17 - when S<(cacheN), the method further comprising:
filling first S palette entries of the inherited portion of the current palette using the cached palette;
determining (cacheN-S) target palette entries from the cached palette;
offsetting each of the (cacheN-S) target palette entries to generate modified target palette entries; and
including the modified target palette entries into last (cacheN-S) entries of the inherited portion of the current palette.
offsetting each of the (cacheN-S) target palette entries to generate modified target palette entries; and
including the modified target palette entries into last (cacheN-S) entries of the inherited portion of the current palette.
Claim 11 - the palette entry list is signaled in the video bitstream in one of a sequence parameter set, a picture parameter set, an adaptation parameter set, a frame header, a slice header, a picture header, a tile header, or a coding tree unit header.
Claim 19 - the palette entry list is signaled in the video stream in one of a sequence parameter set, a picture parameter set, an adaptation parameter set, a frame header, a slice header, a picture header, a tile header, or a coding tree unit header.
Claim 13 - the size of the inherited portion of the current palette is determined prior to performing a merging of the at least one reference palette.
Claim 1 - … determining a size of an inherited portion of a current palette, cacheN, associated with the current video block prior to performing any merging of the at least one reference palette, cacheN being an integer …
Although the conflicting claims are not identical, they are not patentably distinct from each other, because claim 1-11, 13, 16-17, and 19 of the instant application differs from claims 1, 3-4, 6-9, 13-19 of US Pub. 2023/0231991 A1 in that the instant application recites the common known and routinely performed steps of “receiving a video bitstream comprising a plurality of blocks, including a current block” while the claims in the copending Application claim does not. However, it would have been obvious to a person with ordinary skill in the pertinent art at the time of the invention to recognize that such processing steps are commonly known and routinely performed as a part of video coding process.
Claim 15 is provisionally rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1, 3-4, 6-9, 13-19 of copending Application No. 2023/0231991 A1 in view of Zhao (US Pub. 20220286701 A1).
Regarding claim 15, corresponding claims of US Pub. 2023/0231991 A1 teaches the claim limitation as shown in the table above.
But it does not teach the one or more palette size parameters are parsed from the video bitstream.
However, Zhao teaches the one or more palette size parameters are parsed from the video bitstream (Zhao; Para. [0219]. The palette size parameters are parsed from a bitstream.).
Therefore, it would have been obvious to a person with ordinary skill in the pertinent before the effective filing date of the claimed invention to modify the video coding system of claims 1, 3-4, 6-9, 13-19 of Application No. 2023/0231991 A1 to adapt a signaling approach, by incorporating Zhao’s teaching wherein palette size parameters are signaled, for the motivation to perform palette coding (Zhao; Abstract.).
Claims 16-17 are directed to a computing system, comprising: control circuitry; memory; and one or more sets of instructions stored in the memory and configured for execution by the control circuitry, the one or more sets of instructions comprising instructions for perform a sequence of processing steps corresponding to the same as claimed in claims 1, 13, and are non-patentable over the prior art for the same reason as previously indicated.
Claim 19 is directed to a non-transitory computer-readable storage medium storing one or more sets of instructions configured for execution by a computing device having control circuitry and memory, the one or more sets of instructions comprising instructions for perform a sequence of processing steps corresponding to the same as claimed in claims 1, and is non-patentable over the prior art for the same reason as previously indicated.
Allowable Subject Matter
Claims 1-11, 13, 15-17, and 19 would be allowable provided that all outstanding issues, objections, and/or requirements have been properly addressed.
Claims 12, 14, 18, and 20 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.
As allowable subject matter has been indicated, applicant's reply must either comply with all formal requirements or specifically traverse each requirement not complied with. See 37 CFR 1.111(b) and MPEP § 707.07(a).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Chao (US Pub. 20200296423 A1) teaches a video coding system that performs grouped coding for palette syntax.
Lai (US Pub. 20170026641 A1) teaches a video coding system that performs palette table initialization and management.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ALBERT KIR whose telephone number is (571)272-6245. The examiner can normally be reached Monday - Friday, 8:30am - 5:00pm.
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, Jay Patel can be reached on (571) 272-2988. 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.
/ALBERT KIR/ Primary Examiner, Art Unit 2485