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 .
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 04/17/2026 has been entered.
Status of the Application
Claims 6 and 17 have been cancelled. Claims 1, 2, 11, and 18 have been amended. Claims 1-5, 7-16, and 18 are currently pending in this application.
Claim Rejections - 35 USC § 112
Claim 2 has been amended and claim 17 has been cancelled. Thus, the rejections under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph have been withdrawn.
Response to Arguments
Presented arguments have been fully considered, but are rendered moot in view of new ground(s) of rejection necessitated by amendment(s) initiated by the applicant(s).
Claim Rejections - 35 USC § 102
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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claim(s) 18 is/are rejected under 35 U.S.C. 102(a)(2) as being anticipated by JANG et al. (Hereafter, “Jang”) [US 2025/0142095 A1].
In regards to claim 18, the claim limitations and recitations of, “a non-transitory computer-readable recording medium storing a bitstream generated by a video encoding method, …” is a non- functional descriptive material, wherein no functional relationship exists between the recording medium and the data. "To be given patentable weight, the printed matter and associated product must be in a functional relationship. A functional relationship can be found where the printed matter performs some function with respect to the product to which it is associated". MPEP §2111.05(i)(A). When a claimed "computer-readable medium merely serves as a support for information or data, no functional relationship exists. MPEP §2111.05(III). The computer-readable recording medium storing the bitstream in claim 18 merely services as a support for the storage of the bitstream and provides no functional relationship between the bitstream and the computer-readable recording medium. Therefore, the structure data is non-functional descriptive material and given no patentable weight. MPEP §2111.05(III). Thus, the claim scope is just a non-transitory computer-readable recording medium storing a bitstream generated by a video encoding method and is anticipated by Jang which recites a computer-readable medium storing the bitstream ([0089] the bitstream may be stored in a digital storage medium).
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.
Claim(s) 1-5 and 10-16 is/are rejected under 35 U.S.C. 103 as being unpatentable over JANG et al. (Hereafter, “Jang”) [US 2025/0142095 A1] in view of ZHU et al. (Hereafter, “Zhu”) [US 2018/0041774 A1] in further view of JHU et al. (Hereafter, “Jhu”) [US 2022/0086464 A1].
In regards to claim 1, Jang discloses a method performed by a video decoding device for reconstructing a current block ([Abstract] an image decoding method performed by an image decoding apparatus [0098] The image decoding apparatus 200, which has received a bitstream including video/image information, may reconstruct an image by performing a process corresponding to a process performed by the image encoding apparatus 100 of FIG. 2.), the method comprising: determining a reference block in a reconstructed region in a current frame using at least one of a block vector or template matching ([0084] location of previously reconstructed reference block in the current picture may be encoded as a block vector); deriving a palette table of the current block ([Abstract] constructing a palette table for the current block) ([Abstract] generating a palette index map for the current block); and reconstructing samples of the current block based on the index map of the current block and the palette table of the current block ([Abstract] decoding the current block based on the palette table and the palette index map).
Zhu discloses a method performed by a video decoding device for reconstructing a current block ([Abstract] Method and apparatus for video coding using palette coding modes.), the method comprising: determining a reference block in a reconstructed region in a current frame ([0010] The reference block can be in the current picture or the current depth image. The reference block can be from a reconstructed picture/a reconstructed depth image or a prediction picture/a prediction depth image of the current block. [0041] reference block 610 is obtained [0044] The reference block can be from the reconstructed image or a prediction image of the current picture.) using at least one of a block vector ([0045] The position of the reference block can be signalled from the encoder to the decoder explicitly. Therefore, a decoder can locate the reference block according to the signalled position information. Furthermore, the position of the reference block can be signalled from the encoder to the decoder explicitly in the same way as the signalling method of block vector (BV) in the Intra block copy (IBC) mode) or template matching; deriving a palette table of the current block by ([0014] The current palette for the current block can be predicted by or copied from a reference palette of the reference block. [0042] In still another embodiment, the palette of the current block can be predicted by the palette of the reference block. In still another embodiment, the palette of the current block can be copied as the palette of the reference block.); determining an index map of the current block ([0006] An index map 230 is generated based on the palette and palette coding is applied to the index map. As mentioned above, the term ‘index map’ refers to the indices of pixels in a block. [0004] The basic idea behind the palette mode is that the samples in the CU can be represented by a small set of representative colour values. This set of representative colour values is referred to as the palette for the block. Each sample in the block can be assigned to a nearest index in the palette. FIG. 1 illustrates an example of palette coding, where pixels in a current block 110 are represented by palette indices from a palette 120. Since each pixel can be represented by one palette index from a small-size palette, therefore, the colour index coding becomes very effective for screen content materials.); and reconstructing samples of the current block based on the index map of the current block and the palette table of the current block ([0039] a sample in the current block can be reconstructed by using the colour indicated by the corresponding index in the palette).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Jang with the determination of a reconstructed reference block using a block vector method as taught by Zhu in order to improve coding efficiency over the conventional palette coding [See Zhu].
Jhu discloses determining a reference block in a reconstructed region in a current frame ([0082] Video encoder 20 and/or video decoder 30 may determine a block for palette prediction according to a predetermined order of block locations.) using at least one of a block vector or template matching ([0004] Spatial or temporal prediction based on a reference block that has been previously encoded, e.g., a neighboring block, results in a predictive block for a current video block to be coded. The process of finding the reference block may be accomplished by block matching algorithm.); deriving a palette table of the current block by classifying sample values of the reference block into multiple groups, wherein the multiple groups correspond to entries of the palette table, respectively ([0082] In some implementations, video encoder 20 and/or video decoder 30 may determine a predictive palette table based on multiple blocks and/or reconstructed samples of a neighboring block by applying one or more formulas, functions, rules or the like to generate a predictive palette table based on the palette tables of one or a combination of a plurality of neighboring blocks (spatially or in scan order).).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Jang with the determination of a palette table based on samples of a neighboring block as taught by Jhu in order to improve the overall coding efficiency of palette mode coding [See Jhu].
In regards to claim 2, the limitations of claim 1 have been addressed. Jang discloses further comprising: decoding, from a bitstream, an index map derivation flag that indicates whether to use the sample values of the reference block to derive the index map ([0253] Except for the topmost row of the current block in the horizontal traverse scan, the leftmost column of the current block in the vertical traverse scan and the case where an immediately previous palette sample mode is ‘COPY_ABOVE’, information on the palette sample mode be using may signaled a predetermined flag (e.g., copy_above_palette_indices_flag). For example, copy_above_palette_indices_flag having a first value (e.g., 0) may specify that the predetermined palette index mapped to the current block is encoded using the ‘INDEX’ mode. In contrast, copy_above_palette_indices_flag having a second value (e.g., 1) may specify that the predetermined palette index mapped to the current block is encoded using the ‘COPY_ABOVE’ mode.); and checking the index map derivation flag; wherein, when the index map derivation flag is true, the index map is derived based on the sample values of the reference block ([0367] The palette sample mode may include an ‘INDEX’ mode and a ‘COPY ABOVE’ mode, as described above. In contrast, when the ‘COPY_ABOVE’ mode applies to the current sample, the value of the palette index mapped to the current sample may be determined to be the value of the palette index mapped to a neighboring sample present above (in case of horizontal traverse scan) or to the left (in case of vertical traverse scan) of the current sample.).
In regards to claim 3, the limitations of claim 2 have been addressed. Jang discloses further comprising: when the index map derivation flag is false, decoding the index map from the bitstream ([0253] Except for the topmost row of the current block in the horizontal traverse scan, the leftmost column of the current block in the vertical traverse scan and the case where an immediately previous palette sample mode is ‘COPY_ABOVE’, information on the palette sample mode be using may signaled a predetermined flag (e.g., copy_above_palette_indices_flag). For example, copy_above_palette_indices_flag having a first value (e.g., 0) may specify that the predetermined palette index mapped to the current block is encoded using the ‘INDEX’ mode. In contrast, copy_above_palette_indices_flag having a second value (e.g., 1) may specify that the predetermined palette index mapped to the current block is encoded using the ‘COPY_ABOVE’ mode. [0367] When the ‘INDEX’ mode applies to the current sample, the value of the palette index mapped to the current sample may be directly obtained from the bitstream.).
In regards to claim 4, the limitations of claim 1 have been addressed. Jang discloses wherein generating the palette table comprises: decoding from a bitstream a series of reuse flags that indicate whether entries included in a palette prediction list are to be reused; and including reused entries from the palette prediction list in the palette table based on values of the series of reuse flags ([0242] The palette table may include at least one palette entry included in the palette predictor and at least one palette index for identifying the palette entry. For each palette entry included in the palette predictor, a reuse flag specifying whether the palette entry is included in the palette table may be signaled through a bitstream. In this case, the reuse flag having a first value (e.g., 0) may specify that the palette entry is not included in the palette table. In contrast, the reuse flag having a second value (e.g., 1) may specify that the corresponding palette entry is included in the palette table. The reuse flag may be encoded, for example, using run-length coding for a value of 0.).
In regards to claim 5, the limitations of claim 4 have been addressed. Jang discloses wherein generating the palette table ([0362] The image decoding apparatus may construct a palette table for the current block based on the palette predictor.) comprises: decoding new entries from the bitstream or implicitly deriving the new entries ([0243] In addition, the palette table may include at least one new palette entry which is not included in the palette predictor and at least one palette index for identifying the new palette entry. Information (e.g., a total number, a component value, etc.) on the new palette entry may be encoded, for example, using a 0-th exponential Golomb code and signaled through a bitstream. [0358] In addition, in an example, the image decoding apparatus may obtain the information on the new palette entry, by decoding new_palette_entries[cIdx][i] included in the bitstream. In PredictorPaletteEntries[cIdx][i] and new_palette_entries[cIdx][i], cIdx may mean a color component.); adding the new entries to the palette table ([0362] The palette table may include at least one of the palette entry included in the palette predictor or the new palette entry obtained from the bitstream and a palette index for identifying each palette entry.); and updating the palette prediction list ([0374] In an example, the image decoding apparatus may update the palette predictor by adding at least one palette entry included in the palette table to the palette predictor.).
In regards to claim 10, the limitations of claim 1 have been addressed. Jang fails to explicitly disclose wherein deriving the index map of the current block comprises: deriving an index map of the reference block based on the sample values of the reference block and sample values using the palette table of the current block; and setting the index map of the current block equal to the index map of the reference block.
Zhu discloses wherein deriving the index map of the current block ([0041] The derived non-local index map is then used to predict the current index map 630.) comprises: deriving an index map of the reference block based on the sample values of the reference block and sample values using the palette table of the current block ([0041] In yet another embodiment, the non-local index map is derived from a reference block comprising reference samples. The reference block 610 is first obtained, and then a colour quantization algorithm is used to derive the indices of the non-local index map 620 from the reference samples of the reference block as shown in FIG. 6. The derived non-local index map is then used to predict the current index map 630. Colour quantization is the process for converting samples to indices, where each sample is assigned a corresponding index according to some criteria. For example, the corresponding index is the index of the nearest, based on any distance measurement, palette entry of the current block.); and setting the index map of the current block equal to the index map of the reference block ([0039] In yet another embodiment, the non-local index map for a current block is determined first, and then the indices in the current index map can be derived by directly copying the corresponding indices in the non-local index map.).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teachings of Jang and Lim with the teachings of Zhu in order to improve coding efficiency over the conventional palette coding [See Zhu].
Claim 11 lists all the same elements of claim 1, but in encoding form rather than decoding form. Therefore, the supporting rationale of the rejection to claim 1 applies equally as well to claim 11. Furthermore, regarding claim 11, Jang discloses encoding information on whether a palette mode is applied to the current block ([0265] First, referring to FIG. 17, a palette mode flag pred_mode_plt_flag may specify whether the palette mode applies to the current block (or the current CU). For example, a first value (e.g., 0) of pred_mode_plt_flag may specify that the palette mode may not apply for the current block. In contrast, a second value (e.g., 1) of pred_mode_plt_flag may specify that the palette mode applies to the current block. [0400] Meanwhile, information on whether the palette mode applies to the current block may be signaled using a palette mode flag (e.g., pred_mode_plt_flag).).
Claims 12-14 list all the same elements of claims 2 and 3, but in encoding form rather than decoding form. Therefore, the supporting rationales of the rejections to claims 2 and 3 apply equally as well to claims 12-14.
Claims 15 and 16 list all the same elements of claims 4 and 5, but in encoding form rather than decoding form. Therefore, the supporting rationales of the rejections to claims 4 and 5 apply equally as well to claims 15 and 16.
Claim(s) 7 is/are rejected under 35 U.S.C. 103 as being unpatentable over Jang in view of Zhu in further view of Jhu in even further view of NAM et al. (Hereafter, “Nam”) [US 2022/0141485 A1].
In regards to claim 7, the limitations of claim 1 have been addressed. Jang fails to explicitly disclose wherein determining the reference block comprises: composing a block vector candidate list by using block vectors present at left, top, top- left, top-right, and bottom-left positions of the current block; decoding a candidate index; and determining the reference block based on a block vector derived from the block vector candidate list by using the candidate index.
Zhu discloses wherein determining the reference block comprises: determining the reference block based on a block vector derived from the block vector candidate list by using the candidate index ([0013] The reference block can be selected from multiple reference block candidates and selection of the reference block can be signalled explicitly by an encoder or implicitly derived by a decoder.).
Nam discloses wherein determining the reference block comprises: composing a block vector candidate list by using block vectors present at left, top, top- left, top-right, and bottom-left positions of the current block ([0134] the block vectors in the list from neighboring candidate IBC coded blocks, wherein the merge list consists of spatial, HMVP, and pairwise candidates [0086] The neighboring reference samples of the current block may include samples adjacent to the left boundary of the current block having a size of nW×nH and a total of 2×nH samples neighboring the bottom-left, samples adjacent to the top boundary of the current block and a total of 2×nW samples neighboring the top-right, and one sample neighboring the top-left of the current block [0112] the spatial neighboring blocks may include a bottom left corner neighboring block, a left neighboring block, a top right corner neighboring block, a top neighboring block, and a top left corner neighboring block of the current block); decoding a candidate index ([0134] a merge candidate index); and determining the reference block based on a block vector derived from the block vector candidate list by using the candidate index ([0129] The decoding apparatus may derive a reference block for the current block in the current picture through the signaled block vector (motion vector), thereby driving a prediction signal (predicted block or predicted samples) for the current block. [0134] The decoding apparatus may derive a reference block for the current block in the current picture through the signaled block vector (motion vector), thereby driving a prediction signal (predicted block or predicted samples) for the current block.).
It would have been obvious to modify the teachings of Jang with the teachings of Lim in order to improve the encoding/decoding efficiency of the palette mode. It would have been obvious to modify the teachings of Jang and Jhu with the selection of the reference block from multiple reference block candidates being signalled to the decoder as taught by Zhu in order to in order to improve coding efficiency over the conventional palette coding [See Zhu]. It would have been obvious to modify the teachings of Jang, Zhu, and Jhu with the deriving of a reference block for the current block using the merge candidate index to select the block vector in a list as taught by Nam in order to improve compression efficiency and increase coding efficiency for screen contents [See Nam].
Claim(s) 8-9 is/are rejected under 35 U.S.C. 103 as being unpatentable over Jang in view of Zhu in further view of Jhu in even further view of Nam in even further view of NIEN et al. (Hereafter, “Nien”) [US 2023/0217013 A1].
In regards to claim 8, the limitations of claim 1 have been addressed. Jang fails to explicitly disclose wherein determining the reference block comprises: composing a block vector candidate list by using block vectors present at left, top, top- left, top-right, and bottom-left positions of the current block; and determining the reference block based on costs obtained by performing template matching on the current block and a block indicated by each candidate block vector of the block vector candidate list.
Nam discloses wherein determining the reference block comprises: composing a block vector candidate list by using block vectors present at left, top, top- left, top-right, and bottom-left positions of the current block ([0134] the block vectors in the list from neighboring candidate IBC coded blocks, wherein the merge list consists of spatial, HMVP, and pairwise candidates [0086] The neighboring reference samples of the current block may include samples adjacent to the left boundary of the current block having a size of nW×nH and a total of 2×nH samples neighboring the bottom-left, samples adjacent to the top boundary of the current block and a total of 2×nW samples neighboring the top-right, and one sample neighboring the top-left of the current block [0112] the spatial neighboring blocks may include a bottom left corner neighboring block, a left neighboring block, a top right corner neighboring block, a top neighboring block, and a top left corner neighboring block of the current block); and determining the reference block based on costs obtained ([0116] select an optimal merge candidate among merge candidates configuring the merge candidate list based on a rate-distortion (RD) cost) by performing template matching on the current block and a block indicated by each candidate block vector of the block vector candidate list.
Nien discloses wherein determining the reference block comprises: composing a block vector candidate list by using block vectors present at left, top, top- left, top-right, and bottom-left positions of the current block ([0068] With reference to FIG. 1 and FIG. 2, the decoder module 124 determines a plurality of neighboring positions neighboring the block unit. The neighboring positions may be selected from at least one of a plurality of adjacent positions adjacent to the block unit or a plurality of non-adjacent positions non-adjacent to the block unit.); and determining the reference block based on costs obtained by performing template matching on the current block and a block indicated by each candidate block vector of the block vector candidate list ([0072] In some implementations, the at least one block vector predictor may be determined from the predictor candidate list based on at least one predictor index. In some implementations, N block vector predictors may be determined based on first N of the vector predictor candidates. In some implementations, the vector predictor candidates in the predictor candidate list may be sorted based on an initial cost function. [0094] Returning to FIG. 3, at block 350, the decoder module 124 determines a first cost value between the block template region and each of the plurality of candidate template regions. [0108] Returning to FIG. 3, at block 370, the decoder module 124 selects, based on the adjusted difference list, a reference block from the current frame for reconstructing the block unit.).
It would have been obvious to modify the teachings of Jang with the teachings of Nam in order to improve compression efficiency and increase coding efficiency for screen contents [See Nam]. It would have been obvious to modify the teachings of Jang with the determination of the candidate template regions based on the cost value and template matching as taught by Nien in order to improve coding efficiency.
In regards to claim 9, the limitations of claim 6 have been addressed. Jang fails to explicitly disclose wherein determining the reference block comprises: determining the reference block by applying template matching to the reconstructed region in the current frame.
Nien discloses determining the reference block comprises: determining the reference block by applying template matching to the reconstructed region in the current frame ([0095] With reference to FIG. 1 and FIG. 2, the decoder module 124 may determine a candidate cost value based on the block template region and each of the candidate template regions by using a cost function. With further reference to FIG. 5, since the candidate template regions 5210, 5220, 5230, and 5240 are reconstructed prior to reconstructing the block unit 550, the decoder module 124 may directly receive a plurality of reconstructed samples of the candidate template regions 5210, 5220, 5230, and 5240. The decoder module 124 may derive the candidate cost values between the block template region 5000 and each of the candidate template regions 5210, 5220, 5230, and 5240 by calculating a difference between the reconstructed samples in the block template region 5500 and the reconstructed samples in each of the candidate template regions 5210, 5220, 5230, and 5240. [0108] Returning to FIG. 3, at block 370, the decoder module 124 selects, based on the adjusted difference list, a reference block from the current frame for reconstructing the block unit.).
It would have been obvious to modify the teachings of Jang with the determination of the candidate template regions based on the cost value and template matching as taught by Nien in order to improve coding efficiency.
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Kaitlin A Retallick whose telephone number is (571)270-3841. The examiner can normally be reached Monday-Friday 8am-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 examiner’s supervisor, Chris Kelley can be reached at (571) 272-7331. 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.
/KAITLIN A RETALLICK/Primary Examiner, Art Unit 2482