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 .
Response to Arguments
Last, the examiner argues that LIM does teach outputting, with coded data of the current pixel block, data representing the difference between the developed motion vector for the first coding hypothesis and the predicted motion vector of the first coding hypothesis. First, LIM states a motion vector difference means a difference between the motion vector and the motion vector prediction (¶ 69). LIM establishes as previously stated that the motion vector prediction is represented by a scaled motion vector value (Figure 9; ¶ 85, 87). First, the examiner states that applicant’s “outputting” limitation establishes broad interpretation because the data only “represents” the difference but does not establish an actual calculation so even with applicant’s interpretation of paragraph 91; the claim limitation is met. The examiner further argues that one of ordinary skill in the art would make the connection that the motion vector difference would translate into a calculation of the difference based on paragraph ¶ 69 of LIM. One of ordinary skill in the art would further connect that the scacling_multi_hypothesis_flag connects the predicted motion vector (i.e. scaled motion vector) as part of the calculation to obtain the motion vector difference (¶ 91). For these reasons, the examiner maintains the rejection.
Claim Objections
Claim(s) 26 and 27 objected to because of the following informalities: “predicting the motion vector of a second coding hypothesis. This phrasing appears to lack consistency since a second coding hypothesis is already considered. The examiner argues that a better phrasing may be “a second one of the plurality of coding hypothesis” so that a proper appreciation for the distinction between the coding hypothesis can be made.
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 – 23 and 25 - 27 is/are rejected under 35 U.S.C. 103 as being unpatentable over LIM et al (US 2013/0077689, hereafter LIM) in view of Tourapis et al (US 2019/0246114, hereafter Tourapis).
As per claim 1, LIM discloses a method of coding video data, comprising:
developing a plurality of coding hypotheses each having a motion vector identifying a source of prediction for a current pixel block (¶ 31; An object of the present invention can be achieved by providing a method for processing a video signal, including determining whether a current unit performs a multi-hypothesis inter-screen prediction (inter prediction), obtaining a multiple of reference units (i.e.; source ) for the inter prediction in the case in which the current unit performs the multi-hypothesis inter prediction, obtaining a prediction value of the current unit by combining the obtained multiple of reference units),
generating a motion vector for a first one of the plurality of coding hypotheses from a motion vector of a second coding hypothesis (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
determining a difference between the developed motion vector for the first coding hypothesis and the predicted motion vector for the first coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit), and
outputting, with coded data of the current pixel block, data representing the difference between the developed motion vector for the first coding hypothesis and the predicted motion vector for the first coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit).
However, LIM does not explicitly teach predicting a motion vector for a first one of the plurality of coding hypotheses from a motion vector of a second coding hypothesis.
In the same field of endeavor, Tourapis teaches predicting a motion vector for a first one of the plurality of coding hypotheses from a motion vector of a second coding hypothesis (¶ 129; That is, an encoder may compute a predictor vector as
-> (mvpListL1)}=a*-> (mvListL0)+-> r(β) where (Eq. 6).; Here, Tourapis uses a scaling technique like LIM to predict the motion vector predictor. It is obvious that mvL0_scaled represented in LIM would be a motion vector predictor and thus the motion vector difference would be represented by mvL1 – mvL0_scaled).
Therefore, it would have been obvious for one of ordinary skill in the art at the time the invention was effectively filed to modify the invention of LIM in view of Tourapis. The advantage is an improvement in multi-hypothesis video coding.
As per claim 2, LIM discloses the method of claim 1, wherein the predicted motion vector is determined by: a magnitude of the second coding hypothesis, a temporal difference between a reference frame referenced by the first coding hypothesis and a frame to which the current pixel block belongs, and a temporal difference between a reference frame referenced by the second coding hypothesis and the frame to which the current pixel block belongs (Figure 9).
As per claim 3, LIM discloses the method of claim 1, further comprising outputting a representation of the motion vector of the second coding hypothesis (¶ 90; the flag (scaling_multi_hypothesys_flag), which gives information on whether the multi-hypothesis inter prediction will be performed using motion vector scaling, may be additionally transmitted).
As per claim 4, LIM discloses the method of claim 1, further comprising:
predicting the motion vector of a second coding hypothesis (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
determining a difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit), and
outputting, with coded data of the current pixel block, data representing the difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit).
As per claim 5, discloses the method of claim 4, further comprising:
predicting a motion vector prediction residual from the determined difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis,
wherein the determined difference for the first coding hypothesis represents a difference between the developed motion vector supplemented by the predicted motion vector for the first coding hypothesis and the predicted motion vector prediction residual.
As per claim 6, LIM discloses the method of claim 1, further comprising repeating the method for a second pair of coding hypotheses (¶ 87; That is, in the case in which the number of reference frames stored in the decoded picture buffer (DPB) is two or more, the number of available reference units may be increased by scaling the motion vector for each frame stored in the DPB).
As per claim 7,LIM discloses a method of coding video data, comprising:
developing a plurality of coding hypotheses each having a motion vector identifying a source of prediction for a current pixel block (¶ 31; An object of the present invention can be achieved by providing a method for processing a video signal, including determining whether a current unit performs a multi-hypothesis inter-screen prediction (inter prediction), obtaining a multiple of reference units (i.e.; source ) for the inter prediction in the case in which the current unit performs the multi-hypothesis inter prediction, obtaining a prediction value of the current unit by combining the obtained multiple of reference units,
predicting a motion vector for a first one of the coding hypotheses (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
determining a difference between the developed motion vector for the first coding hypothesis and the predicted motion vector for the first coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit), and
outputting, with coded data of the current pixel block, data representing the difference between the developed motion vector for the first coding hypothesis and the predicted motion vector for the first coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit).
As per claim 8, LIM discloses the method of claim 7, further comprising outputting a syntax element indicating that the outputted difference data applies to motion vectors for the first and second coding hypotheses (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit).
As per claim 9, LIM discloses the method of claim 7, further comprising repeating the method for a second pair of coding hypotheses (¶ 87; That is, in the case in which the number of reference frames stored in the decoded picture buffer (DPB) is two or more, the number of available reference units may be increased by scaling the motion vector for each frame stored in the DPB).
Regarding claim 10, arguments analogous to those presented for claim 1 are applicable for claim 10.
As per claim 11, LIM discloses a method of decoding coded video data, comprising:
responsive to a motion vector prediction residual supplied in coded video data for a first coding hypothesis applied to a current pixel block (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit),
predicting a motion vector for the first coding hypothesis from motion vector data supplied in the coded video data for a second coding hypothesis applied to the current pixel block (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
recovering a motion vector for the first coding hypothesis from the predicted motion vector and the motion vector prediction residual (¶ 76, 79, 90, and 91),
developing a prediction pixel block for the current pixel block for the first coding hypothesis using the recovered motion vector (¶ 76, 79, 90, and 91), and
decoding the current pixel block using the developed prediction pixel block (¶ 46 and 48).
As per claim 12, LIM discloses the method of claim 11, further comprising:
developing a prediction pixel block for the current pixel block for the second coding hypothesis using the motion vector data supplied in the coded video data for the second coding hypothesis (¶ 76, 79, 90, and 91),
wherein the decoding the current pixel block uses the developed prediction pixel block for the second coding hypothesis (¶ 48).
As per claim 13, LIM discloses the method of claim 11, further comprising:
predicting motion vector data for the second coding hypothesis (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
recovering a motion vector for the second coding hypothesis from the predicted motion vector and the motion vector data supplied in the coded video data for the second coding hypothesis (¶ 90 and 91),
developing a prediction pixel block for the current pixel block for the second coding hypothesis using the recovered motion vector data for the second coding hypothesis (¶ 90 and 91),
wherein the decoding the current pixel block uses the developed prediction pixel block for the second coding hypothesis (¶ 76, 79, 90, and 91).
As per claim 14, LIM discloses the method of claim 11, further comprising repeating the method for another pair of coding hypotheses (¶ 87; That is, in the case in which the number of reference frames stored in the decoded picture buffer (DPB) is two or more, the number of available reference units may be increased by scaling the motion vector for each frame stored in the DPB).
As per claim 15, LIM discloses a method of decoding coded video data, comprising:
predicting a motion vector for a first coding hypothesis for a current pixel block, predicting a motion vector for a second coding hypothesis for a current pixel block (¶ 76),
responsive to a motion vector prediction residual supplied in coded video data:
developing a first recovered motion vector from the predicted motion vector for the first coding hypothesis and the motion vector prediction residual, developing a second recovered motion vector from the predicted motion vector for the second coding hypothesis and the motion vector prediction residual (¶ 76),
predicting a motion vector for a second coding hypothesis for a current pixel block (¶ 76 and 79),
developing a first prediction pixel block for the current pixel block using the first recovered motion vector, developing a second prediction pixel block for the current pixel block using the second recovered motion vector, and decoding the current pixel block using the first and second prediction pixel blocks (¶ 46 and 48).
As per claim 16, LIM discloses the method of claim 15, further comprising repeating the method for another pair of coding hypotheses (¶ 87; That is, in the case in which the number of reference frames stored in the decoded picture buffer (DPB) is two or more, the number of available reference units may be increased by scaling the motion vector for each frame stored in the DPB).
As per claim 17, LIM discloses a video decoding system, comprising:
a predictor that:
responsive to a motion vector prediction residual supplied in coded video data for a first coding hypothesis applied to a current pixel block (¶ 90 and 91), predicting a motion vector for the first coding hypothesis from motion vector data supplied in the coded video data for a second coding hypothesis applied to the current pixel block (¶ 87),
recovering a motion vector for the first coding hypothesis from the predicted motion vector and the motion vector prediction residual (¶ 90 and 91),
developing a prediction pixel block for the current pixel block for the first coding hypothesis using the recovered motion vector (¶ 90 and 91); and
a pixel block decoder that decodes a current pixel block differentially with respect to prediction pixel block developed by the predictor and coded pixel block data (¶ 48).
As per claim 18, LIM discloses a non-transitory computer readable medium storing program instructions that, when executed by a processing device, cause the processing device to perform a method of coding video data, comprising:
developing a plurality of coding hypotheses each having a motion vector identifying a source of prediction for a current pixel block (¶ 31; An object of the present invention can be achieved by providing a method for processing a video signal, including determining whether a current unit performs a multi-hypothesis inter-screen prediction (inter prediction), obtaining a multiple of reference units (i.e.; source ) for the inter prediction in the case in which the current unit performs the multi-hypothesis inter prediction, obtaining a prediction value of the current unit by combining the obtained multiple of reference units,
predicting a motion vector for a first one of the coding hypotheses from the motion vector of a second coding hypothesis (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
determining a difference between the developed motion vector for the first coding hypothesis and the predicted motion vector for the first coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit), and
outputting, with coded data of the current pixel block, data representing the difference between the developed motion vector for the first coding hypothesis and the predicted motion vector for the first coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit).
As per claim 19, LIM discloses the non-transitory computer readable medium of claim 18, wherein the program instructions further cause the processing device to determine the predicted motion vector by: a magnitude of the second coding hypothesis, a temporal difference between a reference frame referenced by the first coding hypothesis and a frame to which the current pixel block belongs, and a temporal difference between a reference frame referenced by the second coding hypothesis and the frame to which the current pixel block belongs (Figure 9).
As per claim 20, LIM discloses the non-transitory computer readable medium of claim 18, wherein the program instructions further cause the processing device to output a representation of the motion vector of the second coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit).
As per claim 21, LIM discloses the non-transitory computer readable medium of claim 18, wherein the program instructions further cause the processing device to:
predict the motion vector of a second coding hypothesis (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
determine a difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit), and
output, with coded data of the current pixel block, data representing the difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit).
As per claim 22, LIM discloses the non-transitory computer readable medium of claim 21, wherein the program instructions further cause the processing device to:
predict a motion vector prediction residual from the determined difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
wherein the determined difference for the first coding hypothesis represents a difference between the developed motion vector supplemented by the predicted motion vector for the first coding hypothesis and the predicted motion vector prediction residual (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit).
As per claim 23, LIM discloses a non-transitory computer readable medium storing program instructions that, when executed by a processing device, cause the processing device to perform a method of coding video data, comprising:
developing a plurality of coding hypotheses each having a motion vector identifying a source of prediction for a current pixel block (¶ 31; An object of the present invention can be achieved by providing a method for processing a video signal, including determining whether a current unit performs a multi-hypothesis inter-screen prediction (inter prediction), obtaining a multiple of reference units (i.e.; source ) for the inter prediction in the case in which the current unit performs the multi-hypothesis inter prediction, obtaining a prediction value of the current unit by combining the obtained multiple of reference units,
predicting a motion vector for a first one of the coding hypotheses (Figure 9; ¶ 87; after the first reference unit is obtained in ref0 frame using motion vector mvL0 of the current unit, and the second reference unit is obtained from ref1 frame using scaled motion vector mvL0N_scaled of the current unit, the prediction value of the current unit may be obtained by combining the two reference units ),
determining a difference between the developed motion vector for the first coding hypothesis and the predicted motion vector for the first coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit), and
outputting, with coded data of the current pixel block, data representing the difference between the developed motion vector for the first coding hypothesis and the predicted motion vector for the first coding hypothesis (¶ 90; as in the conventional inter prediction method, the motion vector difference is transmitted by coding the motion vector of the current unit), and a syntax element indicating that the outputted difference data applies to motion vectors for the first and second coding hypotheses (¶ 90 and 91).
Regarding claim 25, arguments analogous to those presented for claim 11 are applicable for claim 25.
Further, claim 25 extends the prediction of the motion vector to multiple coding hypotheses (i.e. predictors). This is representing by stating in the claim:
predicting a motion vector for a first coding hypothesis for a current pixel block,
predicting a motion vector for a second coding hypothesis for a current pixel,
responsive to a motion vector prediction residual supplied in the coded video data (¶ 81 and 82; establishes obtaining multiple motion vectors and motion vector predictors and further indicates the use of motion vector difference).
As per claim 26, Lim discloses the method of claim 1, further comprising: predicting the motion vector of a second coding hypothesis from a motion vector difference associated with the first coding hypothesis, determining a difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis, and outputting, with coded data of the current pixel block, data representing the difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis (¶ 31, 69, and 91 ).
As per claim 27, Lim discloses the method of claim 1, further comprising: predicting a motion vector difference of a second coding hypothesis from a motion vector difference associated with the first coding hypothesis, determining (a) a difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis, and (b) a difference between the predicted motion vector difference and the determined difference between the developed motion vector for the second coding hypothesis and the predicted motion vector for the second coding hypothesis, and outputting, with coded data of the current pixel block, data representing the determined difference (b) (¶ 31, 69, and 91 ).
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHIKAODILI E ANYIKIRE whose telephone number is (571)270-1445. The examiner can normally be reached 8 am - 4:30 pm.
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, David Czekaj can be reached on 571-272-7327. 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.
/CHIKAODILI E ANYIKIRE/Primary Examiner, Art Unit 2487