JPWO2020187329A5 - - Google Patents
Download PDFInfo
- Publication number
- JPWO2020187329A5 JPWO2020187329A5 JP2021554616A JP2021554616A JPWO2020187329A5 JP WO2020187329 A5 JPWO2020187329 A5 JP WO2020187329A5 JP 2021554616 A JP2021554616 A JP 2021554616A JP 2021554616 A JP2021554616 A JP 2021554616A JP WO2020187329 A5 JPWO2020187329 A5 JP WO2020187329A5
- Authority
- JP
- Japan
- Prior art keywords
- block
- mode
- intra
- prediction
- video
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Description
関連出願への相互参照
本願は2020年3月23日に出願された国際出願第PCT/CN2020/080632号であり、同出願は2019年3月21日に出願された国際特許出願第PCT/CN2019/079148号および2019年8月14日に出願された国際特許出願第PCT/CN2019/100616号の優先権および利益を適時に主張するものである。国際特許出願第PCT/CN2019/079148号および国際特許出願第PCT/CN2019/100616号の開示全体は参照により本願の開示の一部として組み込まれる。
Mutual reference to related applications This application is International Application No. PCT / CN2020 / 080632 filed on March 23, 2020, which is the International Patent Application No. PCT / CN2019 filed on March 21, 2019. It asserts the priority and interests of International Patent Application No. PCT / CN2019 / 100616 filed on / 079148 and August 14, 2019 in a timely manner. The entire disclosure of International Patent Application No. PCT / CN2019 / 079148 and International Patent Application No. PCT / CN2019 / 100616 is incorporated by reference as part of the disclosure of this application.
技術分野
本稿は、ビデオおよび画像のコーディング・復号技術に関する。
Technical Field This article relates to video and image coding and decoding techniques.
デジタル・ビデオは、インターネットおよびその他のデジタル通信ネットワークにおける最大の帯域幅使用を占める。ビデオの受信・表示が可能な接続されるユーザー装置の数が増加するにつれて、デジタル・ビデオの利用のための帯域幅需要は増加し続けることが予想される。 Digital video occupies the largest bandwidth usage on the Internet and other digital communication networks. Bandwidth demand for the use of digital video is expected to continue to increase as the number of connected user devices capable of receiving and displaying video increases.
開示される技術は、複合イントラ・インター予測が使用されるビデオまたは画像のデコーダまたはエンコーダの実施形態によって使用されうる。 The disclosed techniques can be used by embodiments of video or image decoders or encoders in which composite intra-inter-prediction is used.
ある例示的な側面では、ビデオを処理する方法が開示される。この方法は、第1のビデオ・ブロックのコーディングモード(coded mode)を決定するステップと;第1のビデオ・ブロックのコーディングモードの決定に基づいて、一つまたは複数のフラグをある動作状態に拘束するステップであって、前記動作状態は偽または真である、ステップと;前記一つまたは複数のフラグの動作状態に応じて、第2のビデオ・ブロックのさらなる処理を実行するステップであって、第1のビデオ・ブロックは、第2のビデオ・ブロックとの関係において、近傍ビデオ・ブロックまたは参照ビデオ・ブロックである、ステップとを含む。 In one exemplary aspect, a method of processing video is disclosed. This method is a step of determining the coded mode of the first video block; based on the determination of the coding mode of the first video block, constrains one or more flags to a certain operating state. A step in which the operating state is false or true; a step of performing further processing of the second video block depending on the operating state of the one or more flags. The first video block includes a step, which is a nearby video block or a reference video block in relation to the second video block.
別の例では、ビデオを処理する方法は、第1のビデオ・ブロックに関してペア毎予測(pairwise prediction)または複合双予測(combined-bi prediction)が使用されることを決定するステップと;ペア毎予測または複合双予測が使用されるとの決定に基づいて複合インター‐イントラ予測(combined inter-intra prediction、CIIP)の動作状態を決定するステップであって、前記動作状態は有効(enabled)または無効(disabled)である、ステップと;CIIPの動作状態に従って第1のビデオ・ブロックのさらなる処理を実行するステップとを含む。 In another example, the method of processing the video is the step of determining that pairwise prediction or combined-bi prediction is used for the first video block; paired prediction. Alternatively, it is a step of determining the operating state of a combined inter-intra prediction (CIIP) based on the determination that a compound bi-intra prediction will be used, and the operating state is enabled or disabled (enabled) or disabled (CIIP). Includes a step that is disabled); a step that performs further processing of the first video block according to the operational state of CIIP.
別の例では、ビデオ処理の別の方法が開示される。この方法は、ビデオのビデオ・ブロックと、該ビデオ・ブロックのコーディングされた表現との間の変換を、コーディングされた表現がビデオ・ブロックのイントラおよびインター予測結果の重み付け平均に対応する複合イントラおよびインター予測モードを使用して実行することを含み、重み付け平均は、3つ未満のペアが含まれる重みペアの集合からのある重みペアを使用する。 In another example, another method of video processing is disclosed. In this method, the conversion between a video block of a video and the coded representation of the video block is a composite intra and a composite intra where the coded representation corresponds to the intra and inter-prediction weighted averages of the video block. Containing to perform using the inter-prediction mode, the weighted average uses a weight pair from a set of weight pairs that contains less than three pairs.
別の例では、ビデオ処理の別の方法が開示される。この方法は、ビデオのビデオ・ブロックと、該ビデオ・ブロックのコーディングされた表現との間の変換を、コーディングされた表現がビデオ・ブロックのイントラおよびインター予測結果の重み付け平均に対応する複合イントラおよびインター予測モードを使用して実行することを含み、重み付け平均は、一つまたは複数の近傍ブロックの情報をコーディングすることに起因して決定された重みペアの集合からのある重みペアを使用する。 In another example, another method of video processing is disclosed. In this method, the conversion between a video block of a video and the coded representation of the video block is a composite intra and a composite intra where the coded representation corresponds to the intra and inter-prediction weighted averages of the video block. Including performing using the inter-prediction mode, the weighted average uses a weight pair from a set of weight pairs determined by coding the information of one or more neighboring blocks.
別の例では、ビデオ処理の別の方法が開示される。この方法は、ビデオ・データ内の第1のブロックと該第1のブロックのビットストリーム表現との間の変換の間に、一つまたは複数の第2のブロックの一つまたは複数のコーディングモードを決定するステップと;前記一つまたは複数の第2のブロックの前記一つまたは複数のコーディングモードに基づいて、第1のブロックのコーディングモード制約条件を決定するステップと;少なくとも第1のブロックのコーディングモード制約条件を適用することによって、前記変換を実行するステップとを含み、前記一つまたは複数の第2のブロックは、前記第1のブロックの隣接ブロック、非隣接ブロック、および参照ブロックのうちの少なくとも1つを含む。 In another example, another method of video processing is disclosed. This method provides one or more coding modes for one or more second blocks during the conversion between the first block in the video data and the bitstream representation of the first block. The step to determine; the step to determine the coding mode constraint of the first block based on the one or more coding modes of the one or more second blocks; the coding of at least the first block. The one or more second blocks are among adjacent blocks, non-adjacent blocks, and reference blocks of the first block, including the step of performing the transformation by applying a mode constraint. Includes at least one.
別の例示的な側面では、ビデオ処理の別の方法が開示される。この方法は、ビデオ・データ中の現在ブロックと現在ブロックのビットストリーム表現との間の変換を、複合インター‐イントラ予測(CIIP)、拡散フィルタリング、バイラテラルフィルタリング、変換ドメインフィルタリング、または拡散フィルタリング、バイラテラルフィルタリング、および変換ドメインフィルタリングとは異なる別のタイプの再構成後フィルタリングのうちの少なくとも1つを使用することによって実行することを含み、ここで、複合インター‐イントラ予測(CIIP)、拡散フィルタリング、バイラテラルフィルタリング、変換ドメインフィルタリング、または前記別のタイプの再構成後フィルタリングのうちの少なくとも1つにおいて使用される現在ブロックの再構成された近傍サンプルは、一つまたは複数の参照ピクチャーにおける、該再構成された近傍サンプルの対応するサンプルから生成された近似サンプルによって置き換えられる。 Another exemplary aspect discloses another method of video processing. This method converts between the current block and the bitstream representation of the current block in the video data by compound inter-intra-prediction (CIIP), diffuse filtering, bilateral filtering, transformation domain filtering, or diffuse filtering, by It involves performing by using at least one of the lateral filtering, and another type of post-reconstruction filtering that is different from the transformation domain filtering, where complex inter-intra-prediction (CIIP), diffusion filtering, The reconstructed neighborhood sample of the current block used in at least one of bilateral filtering, transformation domain filtering, or at least one of the other types of post-reconstruction filtering is the reconstructed neighborhood sample in one or more reference pictures. It is replaced by an approximate sample generated from the corresponding sample of the constructed neighbor sample.
別の例示的な側面では、ビデオ処理の別の方法が開示される。この方法は、CIIPモードの複合インター‐イントラ予測(CIIP)フラグおよび/またはイントラモードを、動き情報とともに、履歴ベースの動きベクトル予測(history-based motion vector prediction、HMVP)テーブル内に記憶するステップと;少なくとも該HMVPテーブルに基づいて、ビデオ・データ内の現在ブロックと該現在ブロックのビットストリーム表現との間の変換を実行するステップとを含む。 Another exemplary aspect discloses another method of video processing. This method is a step of storing the CIIP mode's composite inter-intra prediction (CIIP) flag and / or intra mode, along with motion information, in a history-based motion vector prediction (HMVP) table. Includes a step of performing a conversion between the current block in the video data and the bitstream representation of the current block, at least based on the HMVP table.
別の例示的側面では、ビデオ処理の別の方法が開示される。この方法は、ビデオ・データにおける現在ブロックと該現在ブロックのビットストリーム表現との間の変換の間に、現在ブロックについての予測モードを決定するステップと;現在ブロックが先進動きベクトル予測(AMVP)モードまたはマージ・モードでコーディングされるという決定に応答して、現在ブロックについてCIIPモードが有効であることを示す複合インター‐イントラ予測(CIIP)モードの適用可能性を決定するステップと;CIIPモードの適用可能性に基づいて前記変換を実行するステップとを含む。 Another exemplary aspect discloses another method of video processing. This method is a step of determining the prediction mode for the current block during the conversion between the current block and the bitstream representation of the current block in the video data; the current block is in Advanced Motion Vector Prediction (AMVP) mode. Or in response to the decision to be coded in merge mode, with the step of determining the applicability of compound inter-intra-predictive (CIIP) mode, which indicates that CIIP mode is valid for the current block; and application of CIIP mode. Includes a step of performing the transformation based on the possibility.
別の例示的側面では、ビデオ処理の別の方法が開示される。この方法は、ビデオ・データ内の現在ブロックと該現在ブロックのビットストリーム表現との間の変換の間に、現在ブロックのための選択されたマージ候補のタイプを決定するステップと;選択されたマージ候補のタイプに応じて現在ブロックのための複合インター‐イントラ予測(CIIP)の適用可能性を決定するステップとを含み、現在ブロックはマージ・モードでコーディングされる。 Another exemplary aspect discloses another method of video processing. This method is a step of determining the type of selected merge candidate for the current block during the conversion between the current block in the video data and the bitstream representation of the current block; the selected merge. The current block is coded in merge mode, including the step of determining the applicability of compound inter-intra prediction (CIIP) for the current block depending on the type of candidate.
別の例示的側面では、ビデオ処理の別の方法が開示される。この方法は、ビデオ・データ内の現在のビデオ・ブロックと現在のビデオ・ブロックのビットストリーム表現との間の変換中に、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックのCIIPフラグを参照することなく、コンテキスト・モデルに基づくコーディングによって、現在のビデオ・ブロックのための複合インター‐イントラ予測(CIIP)フラグをコーディングするステップと;少なくとも現在のビデオ・ブロックの複合インター‐イントラ予測(CIIP)フラグを適用することによって、前記変換を実行するステップとを含む。 Another exemplary aspect discloses another method of video processing. This method uses the CIIP flag of one or more neighboring video blocks for the current video block during conversion between the current video block in the video data and the bitstream representation of the current video block. With the steps of coding the composite inter-intra prediction (CIIP) flag for the current video block by coding based on the context model without reference to; at least the composite inter-intra prediction of the current video block ( CIIP) includes the step of performing the conversion by applying the flag.
別の例示的側面では、ビデオ処理の別の方法が開示される。この方法は、ビデオ・データ内の現在のビデオ・ブロックと現在のビデオ・ブロックのビットストリーム表現との間の変換中に、バイパスコーディングによって現在のビデオ・ブロックについての複合インター‐イントラ予測(CIPP)フラグをコーディングし、少なくとも複合インター‐イントラ予測(CIIP)フラグを適用することによって、前記変換を実行することを含む。 Another exemplary aspect discloses another method of video processing. This method is a composite inter-intra prediction (CIPP) for the current video block by bypass coding during the conversion between the current video block in the video data and the bitstream representation of the current video block. It involves performing the transformation by coding the flag and applying at least the compound inter-intra prediction (CIIP) flag.
別の例示的側面では、ビデオ処理の別の方法が開示される。この方法は、規則に従ってビデオの第1のビデオ・ブロックのイントラ予測モードを決定するステップであって、該規則は:第1のビデオ・ブロックのイントラ予測モード導出プロセス中に、第1のビデオ・ブロックへの一つまたは複数の近傍ビデオ・ブロックの複合インター‐イントラ予測(CIIP)フラグをチェックすることをスキップすることを含む、ステップと;少なくとも決定されたイントラ予測モードに基づいて、第1のビデオ・ブロックと第1のビデオ・ブロックのビットストリーム表現との間の変換を実行するステップとを含む。 Another exemplary aspect discloses another method of video processing. This method is a step of determining the intra-prediction mode of the first video block of the video according to the rules: the first video during the process of deriving the intra-prediction mode of the first video block. A step that involves skipping checking the compound inter-intra-prediction (CIIP) flag for one or more neighboring video blocks to the block; at least based on the determined intra-prediction mode, the first. Includes steps to perform a conversion between the video block and the bitstream representation of the first video block.
別の例示的側面では、ビデオ処理の別の方法が開示される。この方法は、ビデオの、複合イントラおよびインター予測(CIIP)モードでコーディングされている現在のビデオ・ブロックと、現在のビデオ・ブロックのビットストリーム表現との間の変換中に、現在のビデオ・ブロックの第1の予測結果についての第1の重みおよび現在のビデオ・ブロックの第2の予測結果についての第2の重みを含む重みペアを、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックに基づいて決定するステップであって、前記第1の予測結果はイントラ予測モードによって生成され、前記第2の予測結果はインター予測モードによって生成される、ステップと;前記第1の予測結果と前記第2の予測結果の重み付けされた和に基づいて、現在のブロックの予測結果を決定するステップとを含む。 Another exemplary aspect discloses another method of video processing. This method is during the conversion of the video between the current video block coded in compound intra and inter-prediction (CIIP) mode and the bitstream representation of the current video block. A weight pair containing a first weight for the first prediction result of the current video block and a second weight for the second prediction result of the current video block for one or more neighboring video blocks to the current video block. A block-based determination step in which the first prediction result is generated by the intra prediction mode and the second prediction result is generated by the inter prediction mode; with the first prediction result. It includes a step of determining the prediction result of the current block based on the weighted sum of the second prediction result.
別の例示的側面では、上述の方法は、プロセッサを備えるビデオ・エンコーダ装置によって実装されうる。 In another exemplary aspect, the method described above may be implemented by a video encoder device equipped with a processor.
さらに別の例示的側面では、これらの方法は、プロセッサ実行可能命令の形で具現され、コンピュータ読み取り可能プログラム媒体に記憶されてもよい。 In yet another exemplary aspect, these methods may be embodied in the form of processor executable instructions and stored on a computer-readable program medium.
これらおよびその他の側面は、本稿においてさらに説明される。 These and other aspects are further described in this article.
本稿は、圧縮解除またはデコードされたデジタル・ビデオまたは画像の品質を改善するために、画像またはビデオ・ビットストリームのデコーダによって使用されることのできるさまざまな技術を提供する。簡潔のため、本明細書では、用語「ビデオ」は、一連のピクチャー(伝統的にビデオと呼ばれる)および個々の画像の両方を含むために使用される。さらに、ビデオ・エンコーダは、さらなるエンコードのために使用されるデコードされたフレームを再構成するために、エンコードのプロセス中にこれらの技術を実装することもできる。 This article provides a variety of techniques that can be used by image or video bitstream decoders to improve the quality of decompressed or decoded digital video or images. For brevity, the term "video" is used herein to include both a series of pictures (traditionally referred to as video) and individual images. In addition, video encoders can also implement these techniques during the encoding process to reconstruct the decoded frames used for further encoding.
セクション見出しは、理解を容易にするために本稿で使用されており、実施形態および技術を対応するセクションに限定するものではない。よって、あるセクションからの実施形態は、他のセクションからの実施形態と組み合わせることができる。 Section headings are used herein for ease of understanding and are not limited to the corresponding sections of embodiments and techniques. Thus, embodiments from one section can be combined with embodiments from other sections.
1.概要1. 1. Overview
本稿は、ビデオコーディング技術に関する。具体的には、本稿はビデオコーディングまたは復号における複合イントラ・インター予測(CIIP)に関する。これは、HEVCのような既存のビデオコーディング規格、またはこれから最終化される規格(多用途ビデオコーディング(Versatile Video Coding))に適用されることがある。これは、将来のビデオコーディング規格またはビデオ・コーデックにも適用可能でありうる。 This article is about video coding technology. Specifically, this article relates to compound intra-inter-prediction (CIIP) in video coding or decoding. This may apply to existing video coding standards such as HEVC, or to standards that will be finalized (Versatile Video Coding ). This may also be applicable to future video coding standards or video codecs.
2.背景2. 2. background
ビデオコーディング規格は、主に、周知のITU-TおよびISO/IEC規格の開発を通じて発展してきた。ITU-TはH.261およびH.263を生み出し、ISO/IECはMPEG-1およびMPEG-4 Visualを生み出し、両機関は合同してH.262/MPEG-2 VideoおよびH.264/MPEG-4 先進ビデオコーディング(Advanced Video Coding、AVC)およびH.265/HEVC[1]規格を生み出した。H.262以来、ビデオコーディング規格は、時間的予測と変換コーディングが利用されるハイブリッドビデオコーディング構造に基づいている。HEVCを越えた将来のビデオコーディング技術を探求するため、2015年にVCEGとMPEGによって合同で、合同ビデオ探査チーム(Joint Video Exploration Team、JVET)が設立された。それ以来、JVETによって多くの新しい方法が採用され、JEM(Joint Exploration Model)と名付けられた参照ソフトウェアに入れられた。2018年4月には、VCEG(Q6/16)とISO/IEC JTC1 SC29/WG11(MPEG)の間で合同ビデオエキスパートチーム(Joint Video Expert Team、JVET)を発足し、HEVCに比べ50%のビットレート削減を目指すVVC規格に取り組んでいる。 Video coding standards have evolved primarily through the development of well-known ITU-T and ISO / IEC standards. ITU-T produces H.261 and H.263, ISO / IEC produces MPEG-1 and MPEG-4 Visual, and both agencies jointly produce H.262 / MPEG-2 Video and H.264 / MPEG- 4 Created Advanced Video Coding (AVC) and H.265 / HEVC [1] standards. Since H.262, the video coding standard has been based on a hybrid video coding structure that utilizes temporal prediction and transformation coding . In 2015, VCEG and MPEG jointly established the Joint Video Exploration Team (JVET) to explore future video coding technologies beyond HEVC. Since then, many new methods have been adopted by JVET and put into reference software named JEM (Joint Exploration Model). In April 2018, a joint video expert team (JVET) was established between VCEG (Q6 / 16) and ISO / IEC JTC1 SC29 / WG11 (MPEG), which is 50% bit compared to HEVC. We are working on a VVC standard that aims to reduce rates.
図19は、ビデオ・エンコーダの例示的実装のブロック図である。図19は、エンコーダ実装が、ビデオ・エンコーダがビデオ・デコード機能(次のビデオ・データのエンコードにおいて使用するためにビデオ・データの圧縮された表現を再構成する)も実行するフィードバック経路を組み込んでいることを示している。 FIG. 19 is a block diagram of an exemplary implementation of a video encoder. Figure 19 incorporates a feedback path in which the encoder implementation also performs the video encoder function (reconstructing a compressed representation of the video data for use in the next video data encoding). It shows that there is.
2.1 HEVC/H.265におけるインター予測2.1 Inter-prediction in HEVC / H.265
各インター予測されたPUは、1つまたは2つの参照ピクチャー・リストのための動きパラメータを有する。動きパラメータは、動きベクトルおよび参照ピクチャー・インデックスを含む。2つの参照ピクチャー・リストのうちの一方の使用は、inter_pred_idcを使用して信号伝達されてもよい。動きベクトルは、予測子に対するデルタとして明示的にコーディングされてもよい。 Each inter-predicted PU has motion parameters for one or two reference picture lists. Motion parameters include motion vectors and reference picture indexes. The use of one of the two reference picture lists may be signaled using inter_pred_idc. The motion vector may be explicitly coded as a delta for the predictor.
CUがスキップ・モードでコーディングされる場合、1つのPUが該CUと関連付けられ、有意な残差係数はなく、コーディングされる動きベクトルのデルタまたは参照ピクチャー・インデックスは存在しない。マージ・モードが指定され、それにより、現在のPUのための動きパラメータが、空間的および時間的な候補を含む近傍のPUから取得される。マージ・モードは、スキップ・モードだけでなく、任意のインター予測PUに適用できる。マージ・モードの代わりは、動きパラメータの明示的な伝送であり、ここで、動きベクトル(より正確には、動きベクトル予測子と比較した動きベクトル差分)、各参照ピクチャー・リストについての対応する参照ピクチャー・インデックス、および参照ピクチャー・リスト使用が、各PUごとに明示的に信号伝達される。そのようなモードは、本開示においては、先進動きベクトル予測(Advanced motion vector prediction、AMVP)と呼ばれる。 If a CU is coded in skip mode, one PU is associated with that CU, there is no significant residual factor, and there is no delta or reference picture index for the coded motion vector. A merge mode is specified, which retrieves motion parameters for the current PU from nearby PUs, including spatial and temporal candidates. The merge mode can be applied to any inter-predictive PU, not just the skip mode. An alternative to merge mode is the explicit transmission of motion parameters, where the motion vector (more precisely, the motion vector difference compared to the motion vector predictor), the corresponding reference for each reference picture list. Picture index and reference picture list usage are explicitly signaled for each PU. Such a mode is referred to in the present disclosure as Advanced motion vector prediction (AMVP).
信号伝達が、2つの参照ピクチャー・リストのうちの一方が使用されるべきであることを示す場合、PUは、サンプルの1つのブロックから生成される。これは「単予測(uni-prediction)」と呼ばれる。単予測は、PスライスおよびBスライスの両方について可能である。 If the signal transduction indicates that one of the two reference picture lists should be used, the PU is generated from one block of sample. This is called "uni-prediction". Simple predictions are possible for both P and B slices.
信号伝達が両方の参照ピクチャー・リストが使用されるべきであることを示す場合は、PUはサンプルの2つのブロックから生成される。これは「双予測(bi-prediction)」と呼ばれる。双予測は、Bスライスについてのみ可能である。 If the signal transduction indicates that both reference picture lists should be used, the PU is generated from two blocks of the sample. This is called "bi-prediction". Bi-prediction is possible only for B slices.
次のテキストは、HEVCで指定されたインター予測モードの詳細を与える。説明はマージ・モードから始まる。 The following text gives details of the inter-prediction mode specified in HEVC. The explanation starts in merge mode.
2.1.1 マージ・モード2.1.1 Merge mode
2.1.1.1 マージ・モードについての候補の導出2.1.1.1 Derivation of candidates for merge mode
マージ・モードを使用してPUが予測される場合、マージ候補リスト内のエントリーを指すインデックスがビットストリームからパースされ、動き情報を取得するために使用される。このリストの構築はHEVC規格で規定されており、以下の一連のステップに従って要約することができる。 When the PU is predicted using merge mode, the index pointing to the entry in the merge candidate list is parsed from the bitstream and used to get the motion information. The construction of this list is specified in the HEVC standard and can be summarized by following a series of steps below.
ステップ1:初期候補の導出 Step 1: Derivation of initial candidates
ステップ1.1:空間的候補の導出 Step 1.1: Derivation of spatial candidates
ステップ1.2:空間的候補についての冗長性チェック Step 1.2: Redundancy check for spatial candidates
ステップ1.3:時間的候補の導出 Step 1.3: Derivation of temporal candidates
ステップ2:追加的候補の挿入 Step 2: Insert additional candidates
ステップ2.1:双予測候補の生成 Step 2.1: Generate dual prediction candidates
ステップ2.2:ゼロ動き候補の挿入 Step 2.2: Insert Zero Movement Candidate
これらのステップは、図1にも概略的に示されている。空間的マージ候補の導出のために、5つの異なる位置に位置する候補の中から最大4つのマージ候補が選択される。時間的マージ候補導出のためには、2つの候補の中から最大1つのマージ候補が選択される。デコーダでは各PUについて候補の数が一定であると想定されるので、ステップ1で得られた候補の数がスライスヘッダにおいて信号伝達されるマージ候補の最大数(MaxNumMergeCand)に達しない場合には、追加的な候補が生成される。候補の数は一定であるので、最良のマージ候補のインデックスは、打ち切りされた単進二値化(truncated unary binarization、TU)を用いてエンコードされる。CUのサイズが8に等しい場合、現在のCUのすべてのPUは、2N×2N予測単位のマージ候補リストと同一の単一のマージ候補リストを共有する。 These steps are also outlined in Figure 1. Up to four merge candidates are selected from five differently located candidates for the derivation of spatial merge candidates. For deriving temporal merge candidates, up to one merge candidate is selected from the two candidates. The decoder assumes that the number of candidates is constant for each PU, so if the number of candidates obtained in step 1 does not reach the maximum number of merge candidates signaled in the slice header (MaxNumMergeCand). Additional candidates are generated. Since the number of candidates is constant, the index of the best merge candidates is encoded using truncated unary binarization (TU). If the CU size is equal to 8, all PUs in the current CU share the same single merge candidate list as the 2Nx2N predictive unit merge candidate list.
以下では、上記の諸ステップに関連する動作について詳述する。 In the following, the operations related to the above steps will be described in detail.
2.1.1.2 空間的候補の導出2.1.1.2 Derivation of spatial candidates
空間的マージ候補の導出では、図22に示される位置に位置する候補の中から、最大4つのマージ候補が選択される。導出の順序はA1、B1、B0、A0、B2である。位置B2は、位置A1、B1、B0、A0のどのPUも利用可能でない(たとえば、それが別のスライスまたはタイルに属するため)またはイントラコーディングされている場合にのみ考慮される。位置A1にある候補が追加された後、残りの候補の追加は、同じ動き情報をもつ候補がリストから除外されることを保証する冗長性チェックの対象となり、コーディング効率が改善される。計算複雑さを低減するために、前述の冗長性チェックでは、可能な候補ペアすべてが考慮されているわけではない。その代わりに、図3の矢印でつながれたペアのみが考慮され、冗長性チェックに使用される対応する候補が同じ動き情報を持たない場合にのみ、候補がリストに追加される。重複する動き情報の別の源は、2N×2Nとは異なるパーティションに関連付けられた「第2のPU」である。一例として、図4は、それぞれN×2Nおよび2N×Nの場合について第2のPUを示す。現在のPUがN×2Nとして分割されている場合、位置A1にある候補はリスト構築のためには考慮されない。実際、この候補を加えることによって、同じ動き情報をもつ2つの予測単位が得られる。これは、コーディング単位に1つのPUをもつだけであることに対して冗長である。同様に、現在のPUが2N×Nとして分割されている場合、位置B1は考慮されない。 In deriving the spatial merge candidates, up to four merge candidates are selected from the candidates located at the positions shown in FIG. The order of derivation is A1, B1, B0, A0, B2. Position B2 is only considered if none of the PUs at positions A1, B1, B0, A0 are available (eg, because it belongs to another slice or tile) or if it is intracoded . After the candidate at position A1 is added, the addition of the remaining candidates is subject to a redundancy check that ensures that candidates with the same motion information are excluded from the list, improving coding efficiency. To reduce computational complexity, the redundancy checks described above do not consider all possible candidate pairs. Instead, only the pairs connected by the arrows in Figure 3 are considered, and the candidates are added to the list only if the corresponding candidates used for the redundancy check do not have the same motion information. Another source of duplicate motion information is the "second PU" associated with a partition different from 2Nx2N. As an example, FIG. 4 shows a second PU for N × 2N and 2N × N respectively. If the current PU is split as Nx2N, the candidates at position A1 are not considered for list construction. In fact, adding this candidate gives us two predictive units with the same motion information. This is redundant with having only one PU per coding unit. Similarly, if the current PU is split as 2N × N, position B1 is not considered.
2.1.1.3 時間的候補の導出2.1.1.3 Derivation of temporal candidates
このステップでは、1つの候補のみがリストに追加される。具体的には、この時間的マージ候補の導出において、所与の参照ピクチャー・リスト内で現在ピクチャーとのPOC差が最小であるピクチャーに属する共位置のPUに基づいて、スケーリングされた動きベクトルが導出される。共位置のPUの導出のために使用される参照ピクチャー・リストは、スライスヘッダ内で明示的に信号伝達される。時間的マージ候補のためのスケーリングされた動きベクトルは、図5の点線によって示されているように得られ、これは、POC距離、tbおよびtdを使用して、共位置のPUの動きベクトルからスケーリングされる。ここで、tbは、現在ピクチャーの参照ピクチャーと現在ピクチャーとの間のPOC差であると定義され、tdは、共位置のピクチャーの参照ピクチャーと共位置のピクチャーとの間のPOC差であると定義される。時間的マージ候補の参照ピクチャー・インデックスはゼロに設定される。スケーリング・プロセスの実際的な実現がHEVC仕様に記述されている。Bスライスについては、一方は参照ピクチャー・リスト0について、他方は参照ピクチャー・リスト1についての2つの動きベクトルが得られ、組み合わされて、双予測マージ候補を作成する。 At this step, only one candidate is added to the list. Specifically, in deriving this temporal merge candidate, a scaled motion vector is based on the co-positioned PU belonging to the picture that has the smallest POC difference from the current picture in a given reference picture list. Derived. The reference picture list used to derive the co-positioned PU is explicitly signaled within the slice header. A scaled motion vector for temporal merge candidates is obtained as shown by the dotted line in Figure 5, which is from the co-positioned PU motion vector using the POC distance, tb and td. Scaled. Here, tb is defined as the POC difference between the reference picture of the current picture and the current picture, and td is the POC difference between the reference picture of the co-positioned picture and the co-positioned picture. Defined. The reference picture index for temporal merge candidates is set to zero. The practical implementation of the scaling process is described in the HEVC specification. For B slices, two motion vectors, one for reference picture list 0 and the other for reference picture list 1, are obtained and combined to create bipredictive merge candidates.
参照フレームに属する共位置のPU(Y)では、図6に示されるように、候補C0と候補C1の間で時間的候補のための位置が選択される。位置C0にあるPUが利用可能でないか、イントラコーディングされているか、または現在のCTU行から外れている場合に、位置C1が使用される。それ以外の場合、位置C0が、時間的マージ候補の導出に使用される。 In the co-positioned PU (Y) belonging to the reference frame, a position for the temporal candidate is selected between candidate C0 and candidate C1 as shown in FIG. Position C1 is used if the PU at position C0 is not available, is intracoded , or deviates from the current CTU line. Otherwise, position C0 is used to derive the temporal merge candidate.
2.1.1.4 追加的な候補の挿入2.1.1.4 Inserting additional candidates
空間的および時間的マージ候補のほかに、2つの追加的なタイプのマージ候補がある:複合双予測マージ候補とゼロマージ候補である。複合双予測マージ候補は、空間的および時間的マージ候補を利用することによって生成される。複合双予測マージ候補は、Bスライスについてのみ使用される。複合双予測候補は、初期候補の第1の参照ピクチャー・リスト動きパラメータを、別の候補の第2の参照ピクチャー・リスト動きパラメータと組み合わせることによって生成される。これらの2つのタプルが異なる動き仮説を提供するならば、それらは新しい双予測候補をなす。一例として、図7は、mvL0およびrefIdxL0またはmvL1およびrefIdxL1を有するもとのリスト(左側)における2つの候補を使って、最終的なリスト(右側)に追加される複合双予測マージ候補を作成する場合を示している。これらの追加的なマージ候補を生成するために考えられる組み合わせに関する多数の規則がある。 In addition to spatial and temporal merge candidates, there are two additional types of merge candidates: compound bi-predictive merge candidates and zero merge candidates. Complex bi-predictive merge candidates are generated by utilizing spatial and temporal merge candidates. The compound bi-predictive merge candidate is used only for B slices. The compound bi-prediction candidate is generated by combining the first reference picture list motion parameter of the initial candidate with the second reference picture list motion parameter of another candidate. If these two tuples provide different motion hypotheses, they form a new bi-prediction candidate. As an example, Figure 7 uses two candidates in the original list with mvL0 and refIdxL0 or mvL1 and refIdxL1 (on the left) to create a compound bi-predictive merge candidate that will be added to the final list (on the right). Shows the case. There are a number of possible combinations for generating these additional merge candidates.
マージ候補リストにおける残りのエントリーを埋め、よってMaxNumMergeCand容量に達するために、ゼロ動き候補が挿入される。これらの候補は、ゼロ空間変位と、ゼロから始まり、新しいゼロ動き候補がリストに追加される毎に増加する参照ピクチャー・インデックスとを有する。これらの候補によって使用される参照フレームの数は、それぞれ単方向および双方向予測について、1および2である。最後に、これらの候補に対して冗長性チェックは実行されない。 Zero motion candidates are inserted to fill the remaining entries in the merge candidate list and thus reach the MaxNumMergeCand capacity. These candidates have a zero spatial displacement and a reference picture index that starts at zero and increases with each new zero motion candidate added to the list. The number of reference frames used by these candidates is 1 and 2 for unidirectional and bidirectional predictions, respectively. Finally, no redundancy check is performed on these candidates.
2.1.1.5 並列処理のための動き推定領域2.1.1.5 Motion estimation area for parallel processing
エンコード・プロセスを高速化するために、動き推定が並列に実行されることができ、それにより、所与の領域内のすべての予測単位について動きベクトルが同時に導出される。空間的近傍からのマージ候補の導出は、並列処理を妨げる可能性がある。一つの予測単位が隣接するPUから動きパラメータを導出することができるのは、その関連する動き推定が完了した後だからである。コーディング効率と処理待ち時間との間のトレードオフを緩和するために、HEVCは、ピクチャーパラメータセットにおいて"log2_parallel_merge_level_minus2"シンタックス要素を用いてそのサイズが信号伝達される動き推定領域(motion estimation region、MER)を定義する。MERが定義されている場合、同じ領域にはいるマージ候補は利用不能とマークされ、よってリスト構築において考慮されない。 To speed up the encoding process, motion estimation can be performed in parallel, which simultaneously derives motion vectors for all predictive units in a given region. Derivation of merge candidates from spatial neighborhoods can hinder parallel processing. One prediction unit can derive motion parameters from adjacent PUs only after its associated motion estimation is complete. To ease the trade-off between coding efficiency and processing latency, HEVC uses the "log2_parallel_merge_level_minus2" syntax element in the picture parameter set to signal the size of the motion estimation region (MER). ) Is defined. If MER is defined, merge candidates in the same area are marked as unavailable and are therefore not considered in list construction.
2.1.2 AMVP2.1.2 AMVP
AMVPは、動きパラメータの明示的伝送に使用される、近傍のPUとの動きベクトルの時間空間的相関を利用する。各参照ピクチャー・リストについて、まず左、上の時間的に近傍のPU位置の利用可能性をチェックし、冗長な候補を除去し、ゼロ・ベクトルを追加して候補リストを一定長にすることによって、動きベクトル候補リストが構築される。次いで、エンコーダは候補リストから最良の予測子を選択し、選択された候補を示す対応するインデックスを送信することができる。同様に、マージ・インデックス信号伝達では、最良の動きベクトル候補のインデックスは、打ち切りされた単進法を用いてエンコードされる。この場合にエンコードされるべき最大値は2である(図8参照)。下記の諸節では、動きベクトル予測候補の導出プロセスの詳細を示す。 AMVP utilizes the spatiotemporal correlation of motion vectors with nearby PUs, which is used for explicit transmission of motion parameters. For each reference picture list, first check the availability of temporally nearby PU positions on the left and above, remove redundant candidates, and add zero vectors to make the candidate list constant length. , The motion vector candidate list is constructed. The encoder can then select the best predictor from the candidate list and send the corresponding index indicating the selected candidate. Similarly, in merge index signaling, the index of the best motion vector candidate is encoded using the censored unilinear system. The maximum value to be encoded in this case is 2 (see Figure 8). The following sections show the details of the process for deriving motion vector prediction candidates.
2.1.2.1 AMVP候補の導出2.1.2.1 Derivation of AMVP candidates
図8は、動きベクトル予測候補のための導出プロセスをまとめたものである。 Figure 8 summarizes the derivation process for motion vector prediction candidates.
動きベクトル予測では、空間的動きベクトル候補と時間的動きベクトル候補の2種類の動きベクトル候補が考慮される。 Motion vector prediction considers two types of motion vector candidates: spatial motion vector candidates and temporal motion vector candidates.
空間的動きベクトル候補の導出のために、2つの動きベクトル候補が、図2に示すような5つの異なる位置に位置する各PUの動きベクトルに基づいて、最終的に導出される。時間的動きベクトル候補の導出のためには、2つの異なる共位置の位置に基づいて導出される2つの候補から1つの動きベクトル候補が選択される。空間時間的候補の第1のリストが作成された後、リスト内の重複した動きベクトル候補が除去される。潜在的な候補の数が2よりも多い場合、関連する参照ピクチャー・リスト内の参照ピクチャー・インデックスが1よりも大きい動きベクトル候補は、リストから除去される。空間時間的動きベクトル候補の数が2より少ない場合、追加的なゼロ動きベクトル候補がリストに追加される。 For the derivation of spatial motion vector candidates, two motion vector candidates are finally derived based on the motion vectors of each PU located at five different positions as shown in FIG. For the derivation of temporal motion vector candidates, one motion vector candidate is selected from two candidates derived based on the positions of two different co-positions. After the first list of spatial and temporal candidates is created, duplicate motion vector candidates in the list are removed. If the number of potential candidates is greater than 2, motion vector candidates with a reference picture index greater than 1 in the associated reference picture list are removed from the list. If the number of spatial-temporal motion vector candidates is less than 2, additional zero motion vector candidates are added to the list.
2.1.2.2 空間的動きベクトル候補2.1.2.2 Spatial motion vector candidates
空間的動きベクトル候補の導出においては、5つの潜在的候補のうちで最大2つの候補が考慮される。5つの潜在的候補は、図2に示されるような位置に位置するPUから導出され、それらの位置は、動きマージの場合と同じである。現在のPUの左側についての導出の順序は、A0、A1、およびスケーリングされたA0、スケーリングされたA1として定義される。現在のPUの上側についての導出の順序は、B0、B1、B2、スケーリングされたB0、スケーリングされたB1、スケーリングされたB2として定義される。よって、それぞれの側について、動きベクトル候補として使用できる4つの場合があり、2つの場合は空間的スケーリングを使用する必要がなく、2つの場合は空間的スケーリングが使用される。4つの異なる場合は、次のようにまとめられる。 In deriving spatial motion vector candidates, up to two of the five potential candidates are considered. The five potential candidates are derived from PUs located at positions as shown in Figure 2, and their positions are the same as for motion merging. The order of derivation for the left side of the current PU is defined as A0, A1, and scaled A0, scaled A1. The order of derivation for the upper side of the current PU is defined as B0, B1, B2, scaled B0, scaled B1, scaled B2. Therefore, for each side, there are four cases that can be used as motion vector candidates, two cases do not need to use spatial scaling, and two cases use spatial scaling. The four different cases can be summarized as follows:
空間的スケーリングなし No spatial scaling
(1)同じ参照ピクチャー・リスト、同じ参照ピクチャー・インデックス(同じPOC) (1) Same reference picture list, same reference picture index (same POC)
(2)異なる参照ピクチャー・リストだが、同じ参照ピクチャー(同じPOC) (2) Different reference picture lists, but the same reference picture (same POC)
空間的スケーリング Spatial scaling
(3)同じ参照ピクチャー・リストだが、異なる参照ピクチャー(異なるPOC) (3) Same reference picture list, but different reference pictures (different POC)
(4)異なる参照ピクチャー・リストおよび異なる参照ピクチャー(異なるPOC) (4) Different reference picture list and different reference pictures (different POC)
空間的スケーリングのない場合を最初にチェックし、次に空間的スケーリングを扱う。空間的スケーリングは、参照ピクチャー・リストに関係なく、近傍のPUの参照ピクチャーと現在のPUの参照ピクチャーとの間でPOCが異なる場合に考慮される。左候補のすべてのPUが利用可能でないか、またはイントラコーディングされている場合、左および上のMV候補の並列導出を助けるために、上の動きベクトルについてのスケーリングが許容される。そうでない場合は、空間的スケーリングは、上の動きベクトルについて許容されない。 Check first if there is no spatial scaling, then deal with spatial scaling. Spatial scaling is taken into account when the POC differs between the reference picture of the nearby PU and the reference picture of the current PU, regardless of the reference picture list. If all PUs in the left candidate are not available or are intracoded , scaling for the motion vector above is allowed to help parallel derivation of the left and top MV candidates. Otherwise, spatial scaling is not allowed for the motion vector above.
空間的スケーリング・プロセスでは、近傍のPUの動きベクトルは、図9に示されるように、時間的スケーリングと同様の仕方でスケーリングされる。主な違いは、現在のPUの参照ピクチャー・リストおよびインデックスが入力として与えられる点であり、実際のスケーリング・プロセスは時間的スケーリングの場合と同じである。 In the spatial scaling process, the motion vectors of nearby PUs are scaled in a manner similar to temporal scaling, as shown in Figure 9. The main difference is that the current PU reference picture list and index are given as input, and the actual scaling process is the same as for temporal scaling.
2.1.2.3 時間的動きベクトル候補2.1.2.3 Temporal motion vector candidates
参照ピクチャー・インデックスの導出は別として、時間的マージ候補の導出のためのすべてのプロセスは、空間的動きベクトル候補の導出のためのものと同じである(図6を参照)。参照ピクチャー・インデックスはデコーダに信号伝達される。 Apart from deriving the reference picture index, all processes for deriving temporal merge candidates are the same as for deriving spatial motion vector candidates (see Figure 6). The reference picture index is signaled to the decoder.
2.2 新しいインター予測方法2.2 New inter-prediction method
2.2.1 サブCUベースの動きベクトル予測2.2.1 Sub-CU-based motion vector prediction
QTBTをもつJEMでは、各CUは各予測方向について最大1セットの動きパラメータをもつことができる。大きなCUをサブCUに分割し、大きなCUのすべてのサブCUについての動き情報を導出することにより、エンコーダにおいて、二つのサブCUレベルの動きベクトル予測方法が考慮される。代替時間的動きベクトル予測(Alternative temporal motion vector prediction、ATMVP)方法は、各CUが、共位置の参照ピクチャーにおける現在のCUよりも小さい複数のブロックから、複数セットの動き情報をもってくることを許容する。空間時間的動きベクトル予測(spatial-temporal motion vector prediction、STMVP)方法では、サブCUの動きベクトルが、時間的動きベクトル予測子と空間的な近傍の動きベクトルを用いて再帰的に導出される。 In JEM with QTBT, each CU can have up to one set of motion parameters for each prediction direction. By dividing the large CU into sub-CUs and deriving motion information for all sub-CUs of the large CU, the encoder considers two sub-CU level motion vector prediction methods. The Alternative temporal motion vector prediction (ATMVP) method allows each CU to bring in multiple sets of motion information from multiple blocks smaller than the current CU in the co-located reference picture. .. In the spatial-temporal motion vector prediction (STMVP) method, the motion vector of the sub-CU is recursively derived using the temporal motion vector predictor and the motion vector in the spatial vicinity.
サブCU動き予測のためのより正確な動き場を保持するために、参照フレームについての動き圧縮は現在無効にされている。 Motion compression for reference frames is currently disabled to maintain a more accurate motion field for subCU motion prediction.
2.2.1.1 代替時間的動きベクトル予測2.2.1.1 Alternative Time Motion Vector Prediction
代替時間的動きベクトル予測(ATMVP)方法では、動きベクトル時間的動きベクトル予測(temporal motion vector prediction、TMVP)を、現在のCUより小さいブロックから複数セットの動き情報(動きベクトルおよび参照インデックスを含む)を取ってくることによって修正する。図10に示されるように、サブCUは正方形のN×Nブロックである(Nはデフォルトで4に設定される)。 The alternative temporal motion vector prediction (ATMVP) method provides multiple sets of motion information (including motion vectors and reference indexes) from blocks smaller than the current CU, with motion vector temporal motion vector prediction (TMVP). Correct by fetching. As shown in Figure 10, the subCU is a square N × N block (N is set to 4 by default).
ATMVPは、CU内のサブCUの動きベクトルを2段階で予測する。第1のステップは、いわゆる時間的ベクトルを用いて参照ピクチャー内の対応するブロックを識別することである。この参照ピクチャーは、動き源ピクチャーと呼ばれる。第2のステップは、図10に示されるように、現在のCUをサブCUに分割し、各サブCUに対応するブロックから、各サブCUの動きベクトルおよび参照インデックスを取得することである。 ATMVP predicts the motion vector of the sub-CU in the CU in two steps. The first step is to use so-called temporal vectors to identify the corresponding blocks in the reference picture. This reference picture is called a motion source picture. The second step is to divide the current CU into sub-CUs and get the motion vector and reference index of each sub-CU from the block corresponding to each sub-CU, as shown in FIG.
第1のステップでは、参照ピクチャーおよび対応するブロックは、現在のCUの空間的近傍ブロックの動き情報によって決定される。近傍ブロックの反復的な走査プロセスを避けるために、現在のCUのマージ候補リストの最初のマージ候補が使用される。最初の利用可能な動きベクトルとそれに関連する参照インデックスは、動き源ピクチャーへの時間的ベクトルおよびインデックスに設定される。このように、ATMVPでは、対応するブロックは、TMVPと比較して、より正確に識別されうる。ここで、対応するブロック(時に共位置のブロックと呼ばれる)は、常に、現在のCUに対して右下または中央の位置にある。 In the first step, the reference picture and the corresponding block are determined by the motion information of the spatially neighboring blocks of the current CU. The first merge candidate in the current CU merge candidate list is used to avoid the iterative scanning process of neighboring blocks. The first available motion vector and its associated reference index are set to the temporal vector and index to the motion source picture. Thus, in ATMVP, the corresponding block can be identified more accurately compared to TMVP. Here, the corresponding block (sometimes called the co-positioned block) is always in the lower right or center position with respect to the current CU.
第2のステップでは、サブCUの対応するブロックが、動き源ピクチャー内で時間的ベクトルによって識別される。これは、現在のCUの座標に時間的ベクトルを加えることによる。各サブCUについて、対応するブロックの動き情報(中心サンプルをカバーする最小の動きグリッド)が、サブCUの動き情報を導出するために使用される。対応するN×Nブロックの動き情報が識別された後、それは、HEVCのTMVPと同様にして、現在のサブCUの動きベクトルおよび参照インデックスに変換される。ここで、動きスケーリングおよびその他の手順が適用される。たとえば、デコーダは、低遅延条件(すなわち、現在ピクチャーのすべての参照ピクチャーのPOCが現在ピクチャーのPOCよりも小さい)が満たされているかどうかを検査し、可能性としては、各サブCUについての動きベクトルMVy(Xは0または1に等しく、Yは1-Xに等しい)を予測するために動きベクトルMVx(参照ピクチャー・リストXに対応する動きベクトル)を使用する。 In the second step, the corresponding blocks of the sub-CU are identified by a temporal vector in the motion source picture. This is due to adding a time vector to the coordinates of the current CU. For each sub-CU, the motion information of the corresponding block (the smallest motion grid covering the central sample) is used to derive the motion information of the sub-CU. After the motion information of the corresponding N × N block is identified, it is converted to the motion vector and reference index of the current subCU, similar to the TMVP of HEVC. Here, motion scaling and other procedures apply. For example, the decoder checks if a low latency condition (ie, the POC of all reference pictures in the current picture is less than the POC of the current picture) is met, and possibly the motion for each subCU. Use the motion vector MVx (the motion vector corresponding to the reference picture list X) to predict the vector MVy (X equals 0 or 1 and Y equals 1–X).
2.2.2 ペア毎の平均候補2.2.2 Average candidate for each pair
ペア毎の平均候補(pairwise average candidate)は、現在のマージ候補リスト内のあらかじめ定義された諸ペアの候補を平均することによって生成される。あらかじめ定義されたペアは{(0,1),(0,2),(1,2),(0,3),(1,3),(2,3)}として定義される。ここで、数字はマージ候補リストへのマージ・インデックスを示す。平均動きベクトルは、各参照リストについて別々に計算される。両方の動きベクトルが1つのリストにおいて利用可能な場合、これらの2つの動きベクトルは、たとえそれらが異なる参照ピクチャーを指している場合でも平均される。1つの動きベクトルのみが利用可能な場合は、その1つの動きベクトルを直接使用し、利用可能な動きベクトルがない場合は、このリストを無効のままにする。ペア毎の平均候補は、HEVC規格における組み合わされた候補(combined candidate)に取って代わる。 A pairwise average candidate is generated by averaging the predefined pairs of candidates in the current list of merge candidates. The predefined pairs are defined as {(0,1), (0,2), (1,2), (0,3), (1,3), (2,3)}. Here, the numbers indicate the merge index to the merge candidate list. The average motion vector is calculated separately for each reference list. If both motion vectors are available in one list, these two motion vectors will be averaged even if they point to different reference pictures. If only one motion vector is available, use that one motion vector directly and leave this list disabled if no motion vector is available. The average candidate for each pair replaces the combined candidate in the HEVC standard.
ペア毎の平均候補の複雑性解析が表1にまとめられている。平均のための追加的な計算の最悪のケース(表1の最後の列)については、各ペア(L0およびL1におけるMVxとMVy)について4つの加算と4つのシフトが必要とされ、各ペアについて4つの参照インデックス比較が必要とされる(L0およびL1においてrefIdx0が有効で、refIdx1が有効)。6つのペアがあり、合計で24の加算、24のシフト、および24の参照インデックスの比較となる。HEVC規格における組み合わされた候補は、各ペアについて2つの参照インデックス比較を使用し(refIdx0はL0で有効であり、refIdx1はL1で有効)、12のペアがあり、合計で24の参照インデックス比較となる。 Table 1 summarizes the complexity analysis of the mean candidates for each pair. For the worst case of additional calculations for the mean (last column in Table 1), 4 additions and 4 shifts are required for each pair (MVx and MVy in L0 and L1), for each pair. Four reference index comparisons are required (refIdx0 is valid for L0 and L1 and refIdx1 is valid). There are 6 pairs, for a total of 24 additions, 24 shifts, and 24 reference index comparisons. Combined candidates in the HEVC standard use two reference index comparisons for each pair (refIdx0 is valid for L0, refIdx1 is valid for L1), and there are 12 pairs, for a total of 24 reference index comparisons. Become.
表1:ペア毎の平均候補の動作解析
2.2.3 局所照明補償2.2.3 Local lighting compensation
局所照明補償(Local Illumination Compensation、LIC)は、スケーリング因子aとオフセットbを用いた、照明変化についての線形モデルに基づいている。また、各インター・モードコーディングされるコーディング単位(CU)について適応的に有効または無効にされる。 Local Illumination Compensation (LIC) is based on a linear model of lighting change with scaling factors a and offset b. It is also adaptively enabled or disabled for each intermode coded coding unit (CU).
LICがCUに適用される場合、現在のCUの近傍のサンプルおよびそれらの対応する参照サンプルを使用することによってパラメータaおよびbを導出するために最小平方誤差法が使用される。より具体的には、図11に示されるように、CUのサブサンプリング(2:1サブサンプリング)された近傍のサンプル、および参照ピクチャー内の対応するサンプル(現在のCUまたはサブCUの動き情報によって識別される)が使用される。ICパラメータが導出され、各予測方向について別々に適用される。 When the LIC is applied to the CU, the least squares method is used to derive the parameters a and b by using the samples in the vicinity of the current CU and their corresponding reference samples. More specifically, as shown in FIG. 11, a sample in the vicinity of the CU subsampled (2: 1 subsampling) and the corresponding sample in the reference picture (depending on the current CU or subCU motion information). Identified) is used. IC parameters are derived and applied separately for each prediction direction.
CUがマージ・モードでコーディングされる場合、LICフラグは、マージ・モードにおける動き情報コピーと同様の仕方で近傍ブロックからコピーされる;そうでない場合、LICが適用されるか否かを示すために、そのCUについてLICフラグが信号伝達される。 If the CU is coded in merge mode, the LIC flag is copied from the neighboring blocks in the same way as motion information copy in merge mode; otherwise, to indicate whether LIC is applied. , The LIC flag is signaled for that CU.
あるピクチャーについてLICが有効にされている場合、LICがCUについて適用されるか否かを決定するために、追加的なCUレベルのRDチェックが必要とされる。CUについてLICが有効にされている場合、SADおよびSATDの代わりに、平均除去絶対差分和(mean-removed sum of absolute difference、MR-SAD)および平均除去絶対アダマール変換差分和(mean-removed sum of absolute Hadamard-transformed difference、MR-SATD)が、整数画素動き探索と端数画素動き探索のためにそれぞれ使用される。 If LIC is enabled for a picture, an additional CU level RD check is needed to determine if LIC applies to the CU. If LIC is enabled for the CU, instead of SAD and SATD, mean-removed sum of absolute difference (MR-SAD) and mean-removed sum of mean-removed sum of absolute Hadamard-transformed difference (MR-SATD)) is used for integer pixel motion search and fractional pixel motion search, respectively.
エンコード複雑性を低減するために、以下のエンコード方式がJEMにおいて適用される。 To reduce encoding complexity, the following encoding schemes are applied in JEM.
LICは、現在ピクチャーとその参照ピクチャーの間に明白な照明変化がない場合、ピクチャー全体について無効にされる。この状況を識別するために、現在ピクチャーのヒストグラムおよび現在ピクチャーのすべての参照ピクチャーがエンコーダにおいて計算される。現在ピクチャーと現在ピクチャーのすべての参照ピクチャーとの間のヒストグラム差が所定の閾値より小さい場合、LICは現在ピクチャーについて無効にされ;そうでない場合は、現在ピクチャーについてLICは有効にされる。 LIC is currently disabled for the entire picture if there is no apparent lighting change between the picture and its reference picture. To identify this situation, the histogram of the current picture and all reference pictures of the current picture are calculated in the encoder. If the histogram difference between the current picture and all reference pictures of the current picture is less than a given threshold, LIC is disabled for the current picture; otherwise, LIC is enabled for the current picture.
2.2.4 複合イントラおよびインター予測2.2.4 Composite Intra and Inter Prediction
いくつかの実施形態では、複数仮説予測(multi-hypothesis prediction)が提案されており、ここでは、複合イントラおよびインター予測が、複数の仮説を生成するための1つの方法である。 In some embodiments, multi-hypothesis prediction has been proposed, where compound intra-hypothesis and inter-prediction are one way to generate multiple hypotheses.
複数仮説予測がイントラモードを改善するために適用される場合、複数仮説予測は、1つのイントラ予測と1つのマージ・インデックス予測(merge indexed prediction)を組み合わせる。マージCUでは、マージ・モードのために1つのフラグが信号伝達される。該フラグが真である場合に、イントラ候補リストからイントラモードを選択するためである。ルーマ成分については、イントラ候補リストは、DC、平面、水平、垂直モードを含む4つのイントラ予測モードから導出され、イントラ候補リストのサイズは、ブロックの形状に依存して3または4でありうる。CU幅がCU高さの2倍より大きい場合、水平モードはイントラモード・リストから除外され、CU高さがCU幅の2倍より大きい場合、垂直モードはイントラモード・リストから削除される。イントラモード・インデックスによって選択される1つのイントラ予測モードと、マージ・インデックスによって選択される1つのマージ・インデックス予測(merge indexed prediction)が、重み付け平均を用いて組み合わされる。クロマ成分については、DMは常に余分な信号伝達なしで適用される。予測を組み合わせるための重みは、以下のように記述される。DCまたは平面モードが選択される場合、またはCB幅または高さが4未満の場合は、等しい重みが適用される。CBの幅および高さが4以上のCBについては、水平/垂直モードが選択される場合は、1つのCBがまず4つの等面積領域に垂直/水平に分割される。(w_intrai,w_interi)として示される各重み集合が対応する領域に適用される。ここで、iは1から4までであり、(w_intra1,w_inter1)=(6,2)、(w_intra2,w_inter2)=(5,3)、(w_intra3,w_inter3)=(3,5)、(w_intra4,w_inter4)=(2,6)である。(w_intra1,w_inter1)は参照サンプルに最も近い領域についてであり、(w_intra4,w_inter4)は参照サンプルから最も遠い領域についてである。次いで、組み合わされた予測は、2つの重み付けされた予測を足し合わせて3ビット右シフトすることによって計算できる。さらに、予測子のイントラ仮説のためのイントラ予測モードは、後続の近傍CUの参照のために保存されることができる。 When multiple hypothesis predictions are applied to improve intramode, multiple hypothesis predictions combine one intra prediction with one merge indexed prediction. The merge CU signals one flag for the merge mode. This is to select the intra mode from the intra candidate list when the flag is true. For the luma component, the intra-candidate list is derived from four intra-prediction modes, including DC, planar, horizontal, and vertical modes, and the size of the intra-candidate list can be 3 or 4 depending on the shape of the block. If the CU width is greater than twice the CU height, horizontal mode is excluded from the intramode list, and if the CU height is greater than twice the CU height, vertical mode is removed from the intramode list. One intra-prediction mode selected by the intra-mode index and one merge indexed prediction selected by the merge index are combined using a weighted average. For chroma components, DM is always applied without extra signaling. The weights for combining the predictions are described as follows. If DC or planar mode is selected, or if the CB width or height is less than 4, equal weights apply. For CBs with a width and height of 4 or more, if horizontal / vertical mode is selected, one CB is first divided vertically / horizontally into four equal area areas. Each weight set shown as (w_intrai, w_interi) applies to the corresponding region. Here, i is from 1 to 4, (w_intra1, w_inter1) = (6,2), (w_intra2, w_inter2) = (5,3), (w_intra3, w_inter3) = (3,5), (w_intra4). , w_inter4) = (2,6). (w_intra1, w_inter1) is for the region closest to the reference sample, and (w_intra4, w_inter4) is for the region farthest from the reference sample. The combined predictions can then be calculated by adding the two weighted predictions together and shifting them 3 bits to the right. In addition, the intra-prediction mode for the predictor's intra-hypothesis can be saved for subsequent references to neighboring CUs.
一般化された双予測Generalized bi-prediction
従来の双予測では、等しい重み0.5を用いて、L0およびL1からの予測子が平均されて、最終予測子を生成する。予測子生成式は、式(3)のように示される。 In conventional bi-prediction, the predictors from L0 and L1 are averaged to produce the final predictor with an equal weight of 0.5. The predictor generation formula is expressed as Eq. (3).
PTraditionalBiPred=(PL0+PL1+RoundingOffset)>>shiftNum (1) P TraditionalBiPred = (P L0 + P L1 + RoundingOffset) >> shiftNum (1)
式(3)において、PTraditionalBiPredは従来の双予測についての最終予測子であり、PL0およびPL1はそれぞれL0およびL1からの予測子であり、RoundingOffsetおよびshiftNumは最終予測子を正規化するために使用される。 In equation (3), P TraditionalBiPred is the final predictor for traditional bipredictors, P L0 and P L1 are predictors from L0 and L1, respectively, and Rounding Offset and shiftNum normalize the final predictors. Used for.
L0およびL1からの予測子に異なる重みを適用することを許容する一般化された双予測(Generalized Bi-prediction、GBI)が提案される。予測子生成は、式(4)に示される。 A generalized bi-prediction (GBI) is proposed that allows different weights to be applied to the predictors from L0 and L1. The predictor generation is shown in Eq. (4).
PGBi=((1-w1)*PL0+w1*PL1+RoundingOffsetGBi)>>shiftNumGBi (2) P GBi = ((1-w 1 ) * P L0 + w 1 * P L1 + RoundingOffset GBi ) >> shiftNum GBi (2)
式(4)において、PGBiはGBiの最終予測子であり、(1-w1)およびw1はそれぞれL0およびL1の予測子にそれぞれ適用される、選択されたGBI重みである。RoundingOffsetGBiおよびshiftNumGBiはGBiの最終予測子を正規化するために使用される。 In equation (4), P GBi is the final predictor of GBi, and (1-w 1 ) and w 1 are the selected GBI weights applied to the predictors of L0 and L1, respectively. RoundingOffsetGBi and shiftNumGBi are used to normalize the final predictors of GBi.
サポートされるw1重みテーブルは{-1/4,3/8,1/2,5/8,5/4}である。1つの等重み集合と4つの不等重み集合がサポートされる。等重みの場合、最終予測子を生成するプロセスは、従来の双予測モードの場合と全く同じである。ランダムアクセス(RA)条件における真の双予測の場合、候補重み集合の数は3に減る。 The supported w1 weight tables are {-1 / 4,3 / 8,1 / 2,5 / 8,5 / 4}. One equal weight set and four unequal weight sets are supported. In the case of equal weights, the process of generating the final predictor is exactly the same as in the traditional bi-predictor mode. For true bi-prediction in random access (RA) conditions, the number of candidate weight sets is reduced to 3.
先進動きベクトル予測(AMVP)モードについては、もしこのCUが双予測によってコーディングされるならば、GBIにおける重み選択はCUレベルで明示的に信号伝達される。マージ・モードについては、重み選択はマージ候補から継承される。この提案では、GBIは、BMS-1.0についての最終予測子のほかにテンプレートの重み付け平均を生成するためにDMVRをサポートする。 For Advanced Motion Vector Prediction (AMVP) modes, if this CU is coded by bi-prediction, the weight selection in GBI is explicitly signaled at the CU level. For merge modes, the weight selection is inherited from the merge candidates. In this proposal, GBI supports DMVR to generate weighted averages for templates as well as final predictors for BMS-1.0.
2.2.6 極限動きベクトル表式2.2.6 Extreme motion vector expression
いくつかの実施形態では、極限動きベクトル表式(ultimate motion vector expression、UMVE)が提示される。UMVEは、提案される動きベクトル表式法を用いて、スキップまたはマージ・モードのいずれかに使用される。 In some embodiments, an ultimate motion vector expression (UMVE) is presented. UMVE is used in either skip or merge modes using the proposed motion vector expression method.
UMVEは、VVCで使用するのと同じようにマージ候補を再利用する。マージ候補の中で、候補が選択されることができ、提案される動きベクトル表式法によってさらに拡張される。 UMVE reuses merge candidates as it does with VVC. Among the merge candidates, candidates can be selected and further extended by the proposed motion vector expression method.
UMVEは、単純化された信号伝達による新しい動きベクトル表式を提供する。この表式方法は、開始点、動きの大きさ、および動きの方向を含む。 UMVE provides a new motion vector expression with simplified signal transduction. This expression method includes a starting point, the magnitude of movement, and the direction of movement.
この提案される技法は、マージ候補リストをそのまま使用する。だが、デフォルトのマージタイプ(MRG_TYPE_DEFAULT_N)である候補だけが、UMVEの拡張のために考慮される。 This proposed technique uses the merge candidate list as is. However, only candidates with the default merge type (MRG_TYPE_DEFAULT_N) are considered for UMVE extensions.
ベース候補インデックスが開始点を定義する。ベース候補インデックスは、リスト内の候補の中で最良の候補を次のように示す。 The base candidate index defines the starting point. The base candidate index indicates the best candidate in the list as follows.
テーブル1:ベース候補IDX
ベース候補の数が1に等しい場合、ベース候補IDXは信号伝達されない。 If the number of base candidates is equal to 1, the base candidate IDX is not signaled.
距離インデックスは、動きの大きさの情報である。距離インデックスは、開始点情報からのあらかじめ定義された距離を示す。あらかじめ定義された距離は次のとおり。 The distance index is information on the magnitude of movement. The distance index indicates a predefined distance from the starting point information. The predefined distances are:
テーブル2:距離IDX
方向インデックスは、開始点に対するMVDの方向を表わす。方向インデックスは、以下に示す4方向を表わすことができる。 The directional index represents the direction of the MVD with respect to the starting point. The directional index can represent the four directions shown below.
テーブル3:方向IDX
UMVEフラグは、スキップ・フラグおよびマージ・フラグを送った直後に信号伝達される。スキップおよびマージ・フラグが真の場合、UMVEフラグはパースされる。UMVEフラグが1に等しい場合、UMVEシンタックスはパースされる。しかし、1でなければ、AFFINE〔アフィン〕フラグがパースされる。AFFINEフラグが1に等しい場合、それはAFFINEモードであるが、1でなければ、スキップ/マージ・インデックスはVTMのスキップ/マージ・モードのためにパースされる。 The UMVE flag is signaled immediately after sending the skip and merge flags. If the skip and merge flags are true, the UMVE flags are parsed. If the UMVE flag is equal to 1, the UMVE syntax is parsed. However, if it is not 1, the AFFINE flag is parsed. If the AFFINE flag is equal to 1, it is in AFFINE mode, but if it is not 1, the skip / merge index is parsed for VTM skip / merge mode.
UMVE候補に起因する追加的なラインバッファは必要とされない。ソフトウェアのスキップ/マージ候補が直接ベース候補として使用されるためである。入力UMVEインデックスを用いて、MVの補足(the supplement)が、動き補償の直前に決定される。このために長いラインバッファを保持する必要はない。 No additional line buffers due to UMVE candidates are needed. This is because software skip / merge candidates are used directly as base candidates. The input UMVE index is used to determine the supplement just before motion compensation. There is no need to hold a long line buffer for this.
2.2.7 履歴ベースの動きベクトル予測2.2.7 History-based motion vector prediction
我々の以前の発明P1805028401Hでは、ブロックの動き情報を予測するために、少なくとも1つの動き候補が格納された一つまたは複数のルックアップテーブルがある。 In our previous invention P1805028401H, there is one or more look-up tables containing at least one motion candidate for predicting block motion information.
HMVP候補が以前にコーディングされたブロックの動き情報として定義される履歴ベースMVP(history-based MVP、HMVP)法が提案される。複数のHMVP候補をもつテーブルが、エンコード/デコード・プロセス中に維持される。新しいスライスに遭遇すると、テーブルは空にされる。インターコーディングブロックがあるときはいつでも、関連する動き情報が新しいHMVP候補としてテーブルの最後のエントリーに追加される。全体的なコーディングフローを図13に示す。 A history-based MVP (HMVP) method is proposed in which HMVP candidates are defined as previously coded block motion information. A table with multiple HMVP candidates is maintained during the encode / decode process. When encountering a new slice, the table is emptied. Whenever there is an intercoding block, the relevant motion information is added to the last entry in the table as a new HMVP candidate. The overall coding flow is shown in Figure 13.
一例では、テーブルサイズはL(たとえば、L=16または6、または44)に設定され、これはL個のHMVP候補がテーブルに追加される可能性があることを示す。 In one example, the table size is set to L (eg L = 16 or 6, or 44), which indicates that L HMVP candidates may be added to the table.
ある実施形態では、前にコーディングされたブロックからのL個より多いHMVP候補がある場合、テーブルが常に最新の前にコーディングされたL個の動き候補を含むように、先入れ先出し(First-In-First-Out、FIFO)規則が適用される。図14は、HMVP候補を除去し、提案された方法で使用されたテーブルに新しいものを追加するために、FIFO規則が適用される例を示す。 In one embodiment, if there are more than L HMVP candidates from the previously coded block, first-in-first so that the table always contains the latest previously coded L motion candidates. -Out, FIFO) rules apply. Figure 14 shows an example where FIFO rules are applied to remove HMVP candidates and add new ones to the table used in the proposed method.
別の実施形態では、新しい動き候補を追加するとき(たとえば、現在ブロックがインターコーディングされ、非アフィン・モード)はいつでも、諸LUTの中に同一または類似の動き候補があるかどうかを識別するために、まず冗長性チェック・プロセスが適用される。 In another embodiment, whenever a new motion candidate is added (eg, the block is currently interconnected and in non-affine mode), to identify if there are identical or similar motion candidates in the LUTs. First, the redundancy check process is applied.
2.2.8 対称動きベクトル差分2.2.8 Symmetric motion vector difference
いくつかの実施形態では、MVDをより効率的にエンコードするために、対称動きベクトル差分(symmetric motion vector difference、SMVD)が提案される。 In some embodiments, symmetric motion vector difference (SMVD) is proposed in order to encode the MVD more efficiently.
第一に、スライス・レベルでは、変数BiDirPredFlag、RefIdxSymL0、RefIdxSymL1は次のように導出される。 First, at the slice level, the variables BiDirPredFlag, RefIdxSymL0, RefIdxSymL1 are derived as follows.
現在ピクチャーに最も近い、参照ピクチャー・リスト0における前方参照ピクチャー(forward reference picture)が検索される。見つかった場合、RefIdxSymL0は前方ピクチャーの参照インデックスに等しく設定される。 The forward reference picture in reference picture list 0 that is closest to the current picture is searched. If found, RefIdxSymL0 is set equal to the reference index of the forward picture.
現在ピクチャーに最も近い、参照ピクチャー・リスト1における後方参照ピクチャー(backward reference picture)が検索される。見つかった場合、RefIdxSymL1は、後方ピクチャーの参照インデックスに等しく設定される。 The backward reference picture in reference picture list 1 that is closest to the current picture is searched. If found, RefIdxSymL1 is set equal to the reference index of the back picture.
前方と後方の両方のピクチャーが見つかった場合、BiDirPredFlagは1に設定される。 BiDirPredFlag is set to 1 if both front and back pictures are found.
それ以外の場合は、下記が適用される。 Otherwise, the following applies:
現在のものに最も近い、参照ピクチャー・リスト0における後方参照ピクチャーが検索される。見つかった場合、RefIdxSymL0は、後方ピクチャーの参照インデックスに等しく設定される。 The back-referenced picture in reference picture list 0 that is closest to the current one is searched. If found, RefIdxSymL0 is set equal to the reference index of the back picture.
現在のものに最も近い、参照ピクチャー・リスト1における前方参照ピクチャーが検索される。見つかった場合、RefIdxSymL1は前方ピクチャーの参照インデックスに等しく設定される。 The forward reference picture in Reference Picture List 1 that is closest to the current one is searched. If found, RefIdxSymL1 is set equal to the reference index of the forward picture.
後方と前方の両方のピクチャーが見つかった場合、BiDirPredFlagは1に設定される。それ以外の場合、BiDirPredFlagは0に等しく設定される。 BiDirPredFlag is set to 1 if both back and front pictures are found. Otherwise, BiDirPredFlag is set equal to 0.
第二に、CUレベルでは、CUについての予測方向が双予測であり、BiDirPredFlagが1に等しい場合、対称モードが使用されるか否かを示す対称モード・フラグが明示的に信号伝達される。 Second, at the CU level, if the prediction direction for the CU is bi-prediction and the BiDirPredFlag is equal to 1, a symmetric mode flag indicating whether symmetric mode is used is explicitly signaled.
該フラグが真である場合、mvp_l0_flag、mvp_l1_flag、MVD0のみが明示的に信号伝達される。参照インデックスは、リスト0、リスト1についてそれぞれRefIdxSymL0、RefIdxSymL1に等しく設定される。MVD1は、-MVD0に等しく設定される。最終的な動きベクトルが次式に示される。 If the flag is true, only mvp_l0_flag, mvp_l1_flag, and MVD0 are explicitly signaled. The reference index is set equal to RefIdxSymL0 and RefIdxSymL1 for List 0 and List 1, respectively. MVD1 is set equal to -MVD0. The final motion vector is shown in the following equation.
コーディング単位シンタックスにおける修正をテーブル2に示す。 Table 2 shows the modifications in the coding unit syntax.
テーブル2:コーディング単位シンタックスにおける修正
2.2.9 VTM4におけるCIIP
VTM4では、CUがマージ・モードでコーディングされ、CUが少なくとも64個のルーマ・サンプルを含む(すなわち、CU幅×CU高さが64以上)場合、現在のCUに複合インター/イントラ予測(CIIP)モードが適用されるかどうかを示すために追加的なフラグが信号伝達される。
2.2.9 CIIP in VTM4
In VTM4, if the CU is coded in merge mode and the CU contains at least 64 luma samples (ie, CU width x CU height is 64 or greater), then compound inter / intra prediction (CIIP) to the current CU. An additional flag is signaled to indicate whether the mode is applied.
CIIP予測を形成するために、まず、2つの追加的なシンタックス要素からイントラ予測モードが導出される。DC、平面、水平、または垂直の4種類までの可能なイントラ予測モードが使用できる。次いで、通常のイントラおよびインター・デコード・プロセスを用いて、インター予測およびイントラ予測信号が導出される。最後に、インターおよびイントラ予測信号の重み付け平均が実行されて、CIIP予測が得られる。 To form the CIIP prediction, the intra prediction mode is first derived from two additional syntax elements. Up to four possible intra-prediction modes are available: DC, planar, horizontal, or vertical. The inter-prediction and intra-prediction signals are then derived using normal intra and inter-decode processes. Finally, a weighted average of the inter and intra prediction signals is performed to obtain a CIIP prediction.
1.イントラ予測モードの導出
CIIPモードでは、DC、平面、水平、および垂直モードを含む最大4つのイントラ予測モードが、ルーマ成分を予測するために使用できる。CU形状が非常に幅広である場合(すなわち、幅が高さの2倍を超える場合)は、水平モードは許容されない。CUの形状が非常に狭い場合(つまり、高さが幅の2倍を超える場合)は、垂直モードは許容されない。これらの場合、3つのイントラ予測モードのみが許容される。
1. Derivation of intra prediction mode
In CIIP mode, up to four intra-prediction modes, including DC, planar, horizontal, and vertical modes, can be used to predict luma components. Horizontal mode is not acceptable if the CU shape is very wide (ie, if the width is more than twice the height). Vertical mode is not acceptable if the shape of the CU is very narrow (ie, the height is more than twice the width). In these cases, only three intra prediction modes are allowed.
CIIPモードは、イントラ予測のために3つの最確モード〔最も確からしいモード〕(most probable mode、MPM)を使用する。CIIP MPM候補リストは、次のように形成される:
-左近傍ブロックおよび上近傍ブロックはそれぞれAおよびBとして設定される。
-ブロックAおよびブロックBのイントラ予測モードは、それぞれintraModeAおよびintraModeBと記され、以下のように導出される:
○XをAかBのどちらかとする
○intraModeXは、1)ブロックXが利用可能でない場合、または2)ブロックXがCIIPモードまたはイントラモードを使用して予測されない場合、3)ブロックBが現在のCTUの外側にある場合、DCに設定される
○それ以外の場合、intraModeXは、1)ブロックXのイントラ予測モードがDCまたは平面の場合はDCまたは平面;または2)ブロックXのイントラ予測モードが「垂直様」角度モード(34より大きい)の場合は垂直、または3)ブロックXのイントラ予測モードが「水平様」角度モード(34以下)の場合は水平に設定される
-intraModeAとintraModeBが同じ場合:
○intraModeAが平面またはDCの場合、3つのMPMは{平面,DC,垂直}に設定される(この順で)
○そうでない場合、3つのMPMは{intraModeA,平面,DC}に設定される(この順で)
-それ以外の場合(intraModeAとintraModeBが異なる):
○最初の2つのMPMは{intraModeA,intraModeB}に(この順で)設定される
○平面、DC、垂直のユニーク性(uniqueness)が、この順で、最初の2つのMPM候補モードに対してチェックされ、ユニークな(unique)モードが見つかったらすぐに、それが3番目のMPMとして追加される。
CIIP mode uses three most probable modes (MPM) for intra-prediction. The CIIP MPM candidate list is formed as follows:
-The left neighborhood block and the top neighborhood block are set as A and B, respectively.
-The intra prediction modes of block A and block B are labeled intraModeA and intraModeB, respectively, and are derived as follows:
○ Let X be either A or B ○ intraModeX is 1) if block X is not available, or 2) if block X is not predicted using CIIP mode or intramode, 3) block B is current. If it is outside the CTU, it is set to DC. ○ Otherwise, intraModeX is 1) DC or plane if the intra prediction mode of block X is DC or plane; or 2) Intra prediction mode of block X. Vertical if in "vertical" angle mode (greater than 34), or 3) set horizontally if block X's intra prediction mode is "horizontal" angle mode (34 or less)-intraModeA and intraModeB are the same case:
○ If intraModeA is planar or DC, the three MPMs are set to {planar, DC, vertical} (in that order).
○ If not, the three MPMs are set to {intraModeA, plane, DC} (in that order)
-Otherwise (intraModeA and intraModeB are different):
○ The first two MPMs are set to {intraModeA, intraModeB} (in this order) ○ Plane, DC, vertical uniqueness is checked for the first two MPM candidate modes in this order And as soon as a unique mode is found, it will be added as a third MPM.
CUの形状が上記で定義したところにより非常に幅広である、または、非常に狭い場合、MPMフラグは、信号伝達なしで1であると推定される。そうでない場合、CIIPイントラ予測モードがCIIP MPM候補モードの1つであるかどうかを示すために、MPMフラグが信号伝達される。 If the shape of the CU is very wide or very narrow as defined above, the MPM flag is estimated to be 1 without signal transduction. Otherwise, the MPM flag is signaled to indicate whether the CIIP intra prediction mode is one of the CIIP MPM candidate modes.
MPMフラグが1である場合、CIIPイントラ予測においてどのMPM候補モードが使用されるかを示すために、MPMインデックスがさらに信号伝達される。そうでなく、MPMフラグが0の場合は、イントラ予測モードは、MPM候補リストにおける「欠落(missing)」モードに設定される。たとえば、平面モードがMPM候補リストにない場合、平面が欠落モードになり、イントラ予測モードは平面に設定される。CIIPでは4つの可能なイントラ予測モードが許容され、MPM候補リストは3つのイントラ予測モードしか含まないため、4つの可能なモードのうちの1つは欠落モードでなければならない。 If the MPM flag is 1, the MPM index is further signaled to indicate which MPM candidate mode is used in the CIIP intra prediction. Otherwise, if the MPM flag is 0, the intra prediction mode is set to "missing" mode in the MPM candidate list. For example, if the plane mode is not in the MPM candidate list, the plane will be in missing mode and the intra prediction mode will be set to plane. Since CIIP allows four possible intra-prediction modes and the MPM candidate list contains only three intra-prediction modes, one of the four possible modes must be the missing mode.
クロマ成分については、追加的な信号伝達なしで常にDMモードが適用される。すなわち、クロマはルーマと同じ予測モードを使用する。 For chroma components, DM mode is always applied without additional signal transduction. That is, the chroma uses the same prediction mode as the luma.
CIIPコーディングCUのイントラ予測モードは保存され、将来の近傍CUのイントラモードコーディングにおいて使用される。 The intra-prediction mode of the CIIP coding CU is preserved and used in future intra-mode coding of nearby CUs.
2.2.9.2 インターおよびイントラ予測信号の組み合わせ2.2.9.2 Combination of inter and intra prediction signals
CIIPモードにおけるインター予測信号Pinterは、通常のマージ・モードに適用される同じインター予測プロセスを用いて導出され、イントラ予測信号Pintraは、通常のイントラ予測プロセスに従ってCIIPイントラ予測モードを用いて導出される。次いで、重み付け平均を用いて、イントラ予測信号とインター予測信号が組み合わされる。ここで、重み値はイントラ予測モードに依存し、サンプルはコーディングブロック内に位置する。これは以下のようになる:
-イントラ予測モードがDCまたは平面モードである場合、またはブロック幅または高さが4より小さい場合、イントラ予測およびインター予測信号に等しい重みが適用される。
-そうでない場合、重みは、イントラ予測モード(この場合は水平モードまたは垂直モード)およびブロック内のサンプル位置に基づいて決定される。水平予測モードを例にとる(垂直モードについての重みは同様に、ただし直交方向において導出される)。Wをブロックの幅、Hをブロックの高さとする。コーディングブロックは、まず、それぞれ寸法(W/4)×Hの4つの等面積部分に分割される。イントラ予測参照サンプルに最も近い部分から始まり、イントラ予測参照サンプルから最も離れた部分で終わる4つの領域のそれぞれについての重みwtは、それぞれ6、5、3、および2に設定される。最終的なCIIP予測信号は、次式を用いて導出される:
-If the intra prediction mode is DC or planar mode, or if the block width or height is less than 4, weights equal to the intra prediction and inter prediction signals are applied.
-Otherwise, the weights are determined based on the intra prediction mode (in this case horizontal or vertical mode) and the sample position within the block. Take the horizontal prediction mode as an example (weights for the vertical mode are similarly derived, but in the orthogonal direction). Let W be the width of the block and H be the height of the block. The coding block is first divided into four equal area portions having dimensions (W / 4) × H, respectively. The weights wt for each of the four regions starting from the part closest to the intra-predictive reference sample and ending at the part farthest from the intra-predictive reference sample are set to 6, 5, 3, and 2, respectively. The final CIIP prediction signal is derived using the following equation:
VTM5におけるCIIP
VTM5では、CUがマージ・モードでコーディングされるとき、CUが少なくとも64個のルーマ・サンプルを含み(すなわち、CU幅×CU高さが64以上)、CU幅とCU高さの両方が128ルーマ・サンプル未満であれば、現在のCUに対して複合インター/イントラ予測(CIIP)モードが適用されるかどうかを示すために追加的なフラグが信号伝達される。その名前が示すように、CIIP予測は、イントラ予測信号とインター予測信号を組み合わせる。CIIPモードでのインター予測信号Pinterは、通常のマージ・モードに適用されるのと同じインター予測プロセスを用いて導出され、イントラ予測信号Pintraは、平面モードを用いて通常のイントラ予測プロセスに従って導出される。次いで、重み付け平均を用いて、イントラ予測信号およびインター予測信号が組み合わされる。ここで、重み値は、次のように、上の近傍ブロックおよび左の近傍ブロック(図16に示される)のコーディングモードに依存して計算される:
-上の近傍が利用可能であり、イントラコーディングされている場合、isIntraTopを1に設定し、そうでない場合はisIntraTopを0に設定する;
-左近傍が利用可能であり、イントラコーディングされている場合、isIntraLeftを1に設定し、そうでない場合はisIntraLeftを0に設定する;
-(isIntraLeft+isIntraTop)が2に等しい場合、wtは3に設定される;
-そうではなく、(isIntraLeft+isIntraTop)が1に等しい場合、wtは2に設定される;
-それ以外の場合は、wtを1に設定する。
CIIP in VTM5
In VTM5, when the CU is coded in merge mode, the CU contains at least 64 luma samples (ie, CU width x CU height is 64 or more), and both CU width and CU height are 128 luma. • If less than a sample, an additional flag is signaled to indicate whether combined inter / intra prediction (CIIP) mode is applied to the current CU. As the name implies, CIIP prediction combines an intra-prediction signal with an inter-prediction signal. The inter prediction signal P inter in CIIP mode is derived using the same inter prediction process applied in normal merge mode, and the intra prediction signal P intra follows the normal intra prediction process using plane mode. Derived. The intra-prediction signal and the inter-prediction signal are then combined using a weighted average. Here, the weight value is calculated depending on the coding mode of the upper neighborhood block and the left neighborhood block (shown in Figure 16) as follows:
-Set isIntraTop to 1 if the above neighborhood is available and intracoded, otherwise set isIntraTop to 0;
-Set isIntraLeft to 1 if the left neighborhood is available and intracoded, otherwise set isIntraLeft to 0;
-If (isIntraLeft + isIntraTop) is equal to 2, wt is set to 3;
-Otherwise, if (isIntraLeft + isIntraTop) is equal to 1, wt is set to 2;
-Otherwise, set wt to 1.
CIIP予測は以下のように形成される:
図16は、CIIP重み導出において使用される上および左近傍ブロックを示す。 FIG. 16 shows the top and left neighborhood blocks used in CIIP weight derivation.
2.3 イントラモード導出プロセス2.3 Intramode derivation process
現在のVTM-4.0では、1つのイントラコーディングブロックをコーディングするとき、1つの最確モード(MPM)フラグがまず信号伝達される。もしMPMフラグが真であれば、MPMリストへのインデックスがさらに信号伝達される。さもなければ、非MPMモードのインデックスが信号伝達される。 In the current VTM-4.0, when coding one intracoding block, one most probable mode (MPM) flag is signaled first. If the MPM flag is true, further indexes to the MPM list will be signaled. Otherwise, the non-MPM mode index will be signaled.
最新のVVC仕様(JVET-M1001_v7)における関連するシンタックス要素、シンメトリック、デコード・プロセスは以下のように与えられている: The relevant syntax elements, symmetry, and decoding process in the latest VVC specification (JVET-M1001_v7) are given as follows:
関連するシンタックスRelated syntax
コーディング単位シンタックス
意味内容Meaning content
シンタックス要素intra_luma_mpm_flag[x0][y0]、intra_luma_mpm_idx[x0][y0]、intra_luma_mpm_resedder[x0][y0]は、ルーマ・サンプルについてのイントラ予測モードを指定する。配列インデックスx0,y0は、ピクチャーの左上のルーマ・サンプルに対する、考慮されるコーディングブロックの左上のルーマ・サンプルの位置(x0,y0)を指定する。intra_luma_mpm_flag[x0][y0]が1に等しい場合、イントラ予測モードは、8.4.2節に従って近傍のイントラ予測されたコーディング単位から推定される。 The syntax elements intra_luma_mpm_flag [x0] [y0], intra_luma_mpm_idx [x0] [y0], intra_luma_mpm_resedder [x0] [y0] specify the intra prediction mode for the luma sample. The array index x0, y0 specifies the position (x0, y0) of the upper left luma sample of the considered coding block with respect to the upper left luma sample of the picture. If intra_luma_mpm_flag [x0] [y0] is equal to 1, the intra prediction mode is estimated from the neighboring intra-predicted coding units according to Section 8.4.2.
intra_luma_mpm_flag[x0][y0]が存在しない場合、1に等しいと推定される。 If intra_luma_mpm_flag [x0] [y0] does not exist, it is estimated to be equal to 1.
デコード・プロセスDecoding process
ルーマ・イントラ予測モードについての導出プロセス
このプロセスへの入力は以下の通り:
現在ピクチャーの左上のルーマ・サンプルに対する現在のルーマコーディングブロックの左上のサンプルを指定するルーマ位置(xCb,yCb)、
ルーマ・サンプル単位で現在のコーディングブロックの幅を指定する変数cbWidth、
ルーマ・サンプル単位で現在のコーディングブロックの高さを指定する変数cbHeight。
このプロセスでは、ルーマ・イントラ予測モードIntraPredModeY[xCb][yCb]が導出される。
テーブル8-1は、イントラ予測モードIntraPredModeY[xCb][yCb]および関連する名前についての値を指定する。
テーブル8-1-イントラ予測モードおよび関連する名前の指定
IntraPredModeY[xCb][yCb]は、以下の順序付けられたステップによって導出される:
1.近傍位置(xNbA,yNbA)および(xNbB,yNbB)は、それぞれ(xCb-1,yCb+cbHeight-1)および(xCb+cbWidth-1,yCb-1)に等しく設定される。
2.AまたはBのいずれかで置き換えられるXについて、変数candIntraPredModeXは次のように導出される:
-6.4.X節に規定されるブロックについての利用可能性導出プロセス[編注(BB):近傍ブロック利用可能性検査プロセスtbd]は、(xCb,yCb)に等しいと設定された位置(xCurr,yCurr)と、(xNbX,yNbX)に等しいと設定された近傍位置(xNbY,yNbY)とを入力として呼び出され、出力はavailableXに割り当てられる。
-候補イントラ予測モードcandIntraPredModeXは以下のように導出される:
-下記の条件の一つまたは複数が真の場合、candIntraPredModeXはINTRA_PLANARに等しく設定される。
-変数avalableXはFALSEに等しい。
-CuPredMode[xNbX][yNbX]はMODE_INTRAと等しくなく、ciip_flag[xNbX][yNbX]は1と等しくない。
-pcm_flag[xNbX][yNbX]は1に等しい。
-XはBに等しく、yCb-1は((yCb>>CtbLog2SizeY)<<CtbLog2SizeY)より小さい。
-それ以外の場合、candIntraPredModeXはIntraPredModeY[xNbX][yNbX]に等しく設定される。
3.変数ispDefaultMode1およびispDefaultMode2は次のように定義される:
-IntraSubPartitionsSplitTypeがISP_HOR_SPLITに等しい場合、ispDefaultMode1はINTRA_ANGULAR18に等しく設定され、ispDefaultMode2はINTRA_ANGULAR5に等しく設定される。
-そうでない場合、ispDefaultMode1はINTRA_ANGULAR50に等しく設定され、ispDefaultMode2はINTRA_ANGULAR63に等しく設定される。
4.x=0…5として、candModeList[x]は次のように導出される:
-candIntraPredModeBがcandIntraPredModeAに等しく、candIntraPredModeAがINTRA_DCより大きい場合、x=0…5として、candModeList[x]は次のように導出される:
-IntraLumaRefLineIdx[xCb][yCb]が0に等しく、IntraSubPartitionsSplitTypeがISP_NO_SPLITに等しい場合、下記が適用される:
candModeList[0]=candIntraPredModeA (8-9)
candModeList[1]=INTRA_PLANAR (8-10)
candModeList[2]=INTRA_DC (8-11)
candModeList[3]=2+((candIntraPredModeA+61)%64) (8-12)
candModeList[4]=2+((candIntraPredModeA-1)%64) (8-13)
candModeList[5]=2+((candIntraPredModeA+60)%64) (8-14)
-それ以外の場合(IntraLumaRefLineIdx[xCb][yCb]が0に等しくないか、IntraSubPartitionsSplitTypeがISP_NO_SPLITに等しくない場合)、下記が適用される:
candModeList[0]=candIntraPredModeA (8-15)
candModeList[1]=2+((candIntraPredModeA+61)%64) (8-16)
candModeList[2]=2+((candIntraPredModeA-1)%64) (8-17)
-下記の条件:
-IntraSubpartitionsSplitTypeがISP_HOR_SPLITに等しく、candIntraPredModeAがINTRA_ANGULAR34より小さい、
-IntraSubpartitionsSplitTypeがISP_VER_SPLITに等しく、candIntraPredModeAがINTRA_ANGULAR34以上である、
-IntraLumaRefLineIdx[xCb][yCb]が0に等しくない
のうちの一つが真である場合、下記が適用される:
candModeList[3]=2+((candIntraPredModeA+60)%64) (8-18)
candModeList[4]=2+(candIntraPredModeA%64) (8-19)
candModeList[5]=2+((candIntraPredModeA+59)%64) (8-20)
-それ以外の場合は、下記が適用される:
candModeList[3]=ispDefaultMode1 (8-21)
candModeList[4]=ispDefaultMode2 (8-22)
candModeList[5]=INTRA_PLANAR (8-23)
-そうではなく、candIntraPredModeBがcandIntraPredModeAに等しくなく、candIntraPredModeAまたはcandIntraPredModeBがINTRA_DCより大きい場合、下記が適用される:
-変数minABおよびmaxABは次のように導出される:
minAB=Min(candIntraPredModeA,candIntraPredModeB) (8-24)
maxAB=Max(candIntraPredModeA,candIntraPredModeB) (8-25)
-candIntraPredModeAとcandIntraPredModeBがいずれもINTRA_DCよりも大きい場合、x=0…5として、candModeList[x]は次のように導出される:
candModeList[0]=candIntraPredModeA (8-26)
candModeList[1]=candIntraPredModeB (8-27)
-IntraLumaRefLineIdx[xCb][yCb]が0に等しく、IntraSubpartitionsSplitTypeがISP_NO_SPLITに等しい場合、下記が適用される:
candModeList[2]=INTRA_PLANAR (8-28)
candModeList[3]=INTRA_DC (8-29)
・maxAB-minABが2~62の範囲(両端を含む)にある場合は、下記が適用される:
candModeList[4]=2+((maxAB+61)%64) (8-30)
candModeList[5]=2+((maxAB-1)%64) (8-31)
・それ以外の場合は、下記が適用される:
candModeList[4]=2+((maxAB+60)%64) (8-32)
candModeList[5]=2+((maxAB)%64) (8-33)
-それ以外の場合(IntraLumaRefLineIdx[xCb][yCb]が0に等しくないか、またはIntraSubPartitionsSplitTypeがISP_NO_SPLITに等しくない場合)、下記が適用される:
-IntraSubPartitionsSplitTypeがISP_NO_SPLITに等しくなく、かつabs(candIntraPredModeB-ispDefaultMode1)がabs(candIntraPredModeA-ispDefaultMode1)より小さい場合は、下記が適用される:
candModeList[0]=candIntraPredModeB (8-34)
candModeList[1]=candIntraPredModeA (8-35)
-もしmaxAB-minABが1に等しい場合、下記が適用される:
candModeList[2]=2+((minAB+61)%64) (8-36)
candModeList[3]=2+((maxAB-1)%64) (8-37)
candModeList[4]=2+((minAB+60)%64) (8-38)
candModeList[5]=2+(maxAB%64) (8-39)
-それ以外の場合、maxAB-minABが2に等しい場合、下記が適用される:
candModeList[2]=2+((minAB-1)%64) (8-40)
candModeList[3]=2+((minAB+61)%64) (8-41)
candModeList[4]=2+((maxAB-1)%64) (8-42)
candModeList[5]=2+((minAB+60)%64) (8-43)
-それ以外の場合、maxAB-minABが61より大きい場合、下記が適用される:
candModeList[2]=2+((minAB-1)%64) (8-44)
candModeList[3]=2+((maxAB+61)%64) (8-45)
candModeList[4]=2+(minAB%64) (8-46)
candModeList[5]=2+((maxAB+60)%64) (8-47)
-それ以外の場合、下記が適用される:
candModeList[2]=2+((minAB+61)%64) (8-48)
candModeList[3]=2+((minAB-1)%64) (8-49)
candModeList[4]=2+((maxAB+61)%64) (8-50)
candModeList[5]=2+((maxAB-1)%64) (8-51)
-それ以外の場合(candIntraPredModeAまたはcandIntraPredModeBがINTRA_DCより大きい)、x=0…5として、candModeList[x]は次のように導出される:
-IntraLumaRefLineIdx[xCb][yCb]が0に等しく、IntraSubpartitionsSplitTypeがISP_NO_SPLITに等しい場合、下記が適用される:
candModeList[0]=candIntraPredModeA (8-52)
candModeList[1]=candIntraPredModeB (8-53)
candModeList[2]=1-minAB (8-54)
candModeList[3]=2+((maxAB+61)%64) (8-55)
candModeList[4]=2+((maxAB-1)%64) (8-56)
candModeList[5]=2+((maxAB+60)%64) (8-57)
-それ以外の場合で、IntraLumaRefLineIdx[xCb][yCb]が0に等しくない場合、下記が適用される:
candModeList[0]=maxAB (8-58)
candModeList[1]=2+((maxAB+61)%64) (8-59)
candModeList[2]=2+((maxAB-1)%64) (8-60)
candModeList[3]=2+((maxAB+60)%64) (8-61)
candModeList[4]=2+(maxAB%64) (8-62)
candModeList[5]=2+((maxAB+59)%64) (8-63)
-それ以外の場合(IntraSubPartitionsSplitTypeがISP_NO_SPLITと等しくない場合)、下記が適用される:
candModeList[0]=INTRA_PLANAR (8-64)
candModeList[1]=maxAB (8-65)
candModeList[2]=2+((maxAB+61)%64) (8-66)
candModeList[3]=2+((maxAB-1)%64) (8-67)
candModeList[4]=2+((maxAB+60)%64) (8-68)
candModeList[5]=2+(maxAB%64) (8-69)
-それ以外の場合は、下記が適用される:
-IntraLumaRefLineIdx[xCb][yCb]が0に等しく、IntraSubpartitionsSplitTypeがISP_NO_SPLITに等しい場合、下記が適用される:
candModeList[0]=candIntraPredModeA (8-70)
candModeList[1]=(candModeList[0]==INTRA_PLANAR)?INTRA_DC:INTRA_PLANAR (8-71)
candModeList[2]=INTRA_ANGULAR50 (8-72)
candModeList[3]=INTRA_ANGULAR18 (8-73)
candModeList[4]=INTRA_ANGULAR46 (8-74)
candModeList[5]=INTRA_ANGULAR54 (8-75)
-それ以外の場合で、IntraLumaRefLineIdx[xCb][yCb]が0に等しくない場合、下記が適用される:
candModeList[0]=INTRA_ANGULAR50 (8-76)
candModeList[1]=INTRA_ANGULAR18 (8-77)
candModeList[2]=INTRA_ANGULAR2 (8-78)
candModeList[3]=INTRA_ANGULAR34 (8-79)
candModeList[4]=INTRA_ANGULAR66 (8-80)
candModeList[5]=INTRA_ANGULAR26 (8-81)
-それ以外の場合で、IntraSubPartitionsSplitTypeがISP_HOR_SPLITに等しい場合、下記が適用される:
candModeList[0]=INTRA_PLANAR (8-82)
candModeList[1]=INTRA_ANGULAR18 (8-83)
candModeList[2]=INTRA_ANGULAR25 (8-84)
candModeList[3]=INTRA_ANGULAR10 (8-85)
candModeList[4]=INTRA_ANGULAR65 (8-86)
candModeList[5]=INTRA_ANGULAR50 (8-87)
-それ以外の場合で、IntraSubPartitionsSplitTypeがISP_VER_SPLITに等しい場合、下記が適用される:
candModeList[0]=INTRA_PLANAR (8-88)
candModeList[1]=INTRA_ANGULAR50 (8-89)
candModeList[2]=INTRA_ANGULAR43 (8-90)
candModeList[3]=INTRA_ANGULAR60 (8-91)
candModeList[4]=INTRA_ANGULAR3 (8-e)
candModeList[5]=INTRA_ANGULAR18 (8-93)
5.IntraPredModeY[xCb][yCb]は、以下の手順を適用して導出される:
-intra_luma_mpm_flag[xCb][yCb]が1に等しい場合、IntraPredModeY[xCb][yCb]はcandModeList[intra_luma_mpm_idx[xCb][yCb]]に等しく設定される。
-それ以外の場合、IntraPredModeY[xCb][yCb]は、次の順序付けられたステップを適用することによって導出される:
1.i=0…4および各i、j=(i+1…5)についてcandModeList[i]がcandModeList[j]より大きい場合、両方の値は次のように交換される:
(candModeList[i],candModeList[j])=Swap(candModeList[i],candModeList[j]) (8-94)
2.IntraPredModeY[xCb][yCb]は、以下の順序付けられたステップによって導出される:
i.IntraPredModeY[xCb][yCb]は、intra_luma_mpm_remainder[xCb][yCb]に等しく設定される。
ii.0~5に等しいiについて、IntraPredModeY[xCb][yCb]がcandModeList[i]以上である場合、IntraPredModeY[xCb][yCb]の値は1だけインクリメントされる。
変数IntraPredModeY[x][y](ここで、x=xCb…xCb+cbWidth-1およびy=yCb…yCb+cbHeight-1)は、IntraPredModeY[xCb][yCb]に等しく設定される。
Derivation process for Luma intra prediction mode The inputs to this process are as follows:
The luma position (xCb, yCb), which specifies the upper left sample of the current luma coding block for the upper left luma sample of the current picture,
Variable cbWidth, which specifies the width of the current coding block in units of luma samples,
A variable cbHeight that specifies the height of the current coding block in luma sample units.
In this process, the Luma Intra Prediction Mode IntraPredModeY [xCb] [yCb] is derived.
Table 8-1 specifies values for IntraPredModeY [xCb] [yCb] and related names.
Table 8-1-Specifying intra-prediction mode and associated names
IntraPredModeY [xCb] [yCb] is derived by the following ordered steps:
1. 1. The neighborhood positions (xNbA, yNbA) and (xNbB, yNbB) are set equally to (xCb-1, yCb + cbHeight-1) and (xCb + cbWidth-1, yCb-1), respectively.
2. 2. For X replaced by either A or B, the variable candIntraPredModeX is derived as follows:
-6.4. The availability derivation process for blocks specified in Section X [Editor's Note (BB): Neighborhood block availability check process tbd] is set to be equal to (xCb, yCb) (xCurr, yCb). yCurr) and the neighborhood position (xNbY, yNbY) set to be equal to (xNbX, yNbX) are called as inputs and the output is assigned to availableX.
-CandIntraPredModeX is derived as follows:
-If one or more of the following conditions are true, canDIntraPredModeX is set equally to INTRA_PLANAR.
-The variable avalableX is equal to FALSE.
-CuPredMode [xNbX] [yNbX] is not equal to MODE_INTRA and ciip_flag [xNbX] [yNbX] is not equal to 1.
-Pcm_flag [xNbX] [yNbX] is equal to 1.
-X is equal to B and yCb-1 is less than ((yCb >> CtbLog2SizeY) << CtbLog2SizeY).
-Otherwise, candIntraPredModeX is set equal to IntraPredModeY [xNbX] [yNbX].
3. 3. The variables ispDefaultMode1 and ispDefaultMode2 are defined as:
-If IntraSubPartitionsSplitType is equal to ISP_HOR_SPLIT, ispDefaultMode1 is set equal to INTRA_ANGULAR18 and ispDefaultMode2 is set equal to INTRA_ANGULAR5.
-Otherwise, ispDefaultMode1 is set equal to INTRA_ANGULAR50 and ispDefaultMode2 is set equal to INTRA_ANGULAR63.
4. With x = 0… 5, the candModeList [x] is derived as follows:
-If candIntraPredModeB is equal to candIntraPredModeA and candIntraPredModeA is greater than INTRA_DC, then with x = 0… 5, the candModeList [x] is derived:
-If IntraLumaRefLineIdx [xCb] [yCb] is equal to 0 and IntraSubPartitionsSplitType is equal to ISP_NO_SPLIT, the following applies:
candModeList [0] = candIntraPredModeA (8-9)
candModeList [1] = INTRA_PLANAR (8-10)
candModeList [2] = INTRA_DC (8-11)
candModeList [3] = 2 + ((candIntraPredModeA + 61)% 64) (8-12)
candModeList [4] = 2 + ((candIntraPredModeA-1)% 64) (8-13)
candModeList [5] = 2 + ((candIntraPredModeA + 60)% 64) (8-14)
-Otherwise (if IntraLumaRefLineIdx [xCb] [yCb] is not equal to 0 or IntraSubPartitionsSplitType is not equal to ISP_NO_SPLIT), the following applies:
candModeList [0] = candIntraPredModeA (8-15)
candModeList [1] = 2 + ((candIntraPredModeA + 61)% 64) (8-16)
candModeList [2] = 2 + ((candIntraPredModeA-1)% 64) (8-17)
-The following conditions:
-IntraSubpartitionsSplitType is equal to ISP_HOR_SPLIT and candIntraPredModeA is smaller than INTRA_ANGULAR34,
-IntraSubpartitionsSplitType is equal to ISP_VER_SPLIT and candIntraPredModeA is INTRA_ANGULAR34 or higher.
-If IntraLumaRefLineIdx [xCb] [yCb] is not equal to 0 and one of them is true, the following applies:
candModeList [3] = 2 + ((candIntraPredModeA + 60)% 64) (8-18)
candModeList [4] = 2 + (candIntraPredModeA% 64) (8-19)
candModeList [5] = 2 + ((candIntraPredModeA + 59)% 64) (8-20)
-Otherwise, the following applies:
candModeList [3] = ispDefaultMode1 (8-21)
candModeList [4] = ispDefaultMode2 (8-22)
candModeList [5] = INTRA_PLANAR (8-23)
-Otherwise, if candIntraPredModeB is not equal to candIntraPredModeA and candIntraPredModeA or candIntraPredModeB is greater than INTRA_DC, the following applies:
-Variables minAB and maxAB are derived as follows:
minAB = Min (candIntraPredModeA, candIntraPredModeB) (8-24)
maxAB = Max (candIntraPredModeA, candIntraPredModeB) (8-25)
-If both candIntraPredModeA and candIntraPredModeB are greater than INTRA_DC, then with x = 0… 5, the candModeList [x] is derived as follows:
candModeList [0] = candIntraPredModeA (8-26)
candModeList [1] = candIntraPredModeB (8-27)
-If IntraLumaRefLineIdx [xCb] [yCb] is equal to 0 and IntraSubpartitionsSplitType is equal to ISP_NO_SPLIT, the following applies:
candModeList [2] = INTRA_PLANAR (8-28)
candModeList [3] = INTRA_DC (8-29)
-If maxAB-minAB is in the range 2-62 (including both ends), the following applies:
candModeList [4] = 2 + ((maxAB + 61)% 64) (8-30)
candModeList [5] = 2 + ((maxAB-1)% 64) (8-31)
-Otherwise, the following applies:
candModeList [4] = 2 + ((maxAB + 60)% 64) (8-32)
candModeList [5] = 2 + ((maxAB)% 64) (8-33)
-Otherwise (if IntraLumaRefLineIdx [xCb] [yCb] is not equal to 0, or IntraSubPartitionsSplitType is not equal to ISP_NO_SPLIT), the following applies:
-If IntraSubPartitionsSplitType is not equal to ISP_NO_SPLIT and abs (candIntraPredModeB-ispDefaultMode1) is less than abs (candIntraPredModeA-ispDefaultMode1), the following applies:
candModeList [0] = candIntraPredModeB (8-34)
candModeList [1] = candIntraPredModeA (8-35)
-If maxAB-minAB is equal to 1, the following applies:
candModeList [2] = 2 + ((minAB + 61)% 64) (8-36)
candModeList [3] = 2 + ((maxAB-1)% 64) (8-37)
candModeList [4] = 2 + ((minAB + 60)% 64) (8-38)
candModeList [5] = 2 + (maxAB% 64) (8-39)
-Otherwise, if maxAB-minAB is equal to 2, the following applies:
candModeList [2] = 2 + ((minAB-1)% 64) (8-40)
candModeList [3] = 2 + ((minAB + 61)% 64) (8-41)
candModeList [4] = 2 + ((maxAB-1)% 64) (8-42)
candModeList [5] = 2 + ((minAB + 60)% 64) (8-43)
-Otherwise, if maxAB-minAB is greater than 61, the following applies:
candModeList [2] = 2 + ((minAB-1)% 64) (8-44)
candModeList [3] = 2 + ((maxAB + 61)% 64) (8-45)
candModeList [4] = 2 + (minAB% 64) (8-46)
candModeList [5] = 2 + ((maxAB + 60)% 64) (8-47)
-Otherwise, the following applies:
candModeList [2] = 2 + ((minAB + 61)% 64) (8-48)
candModeList [3] = 2 + ((minAB-1)% 64) (8-49)
candModeList [4] = 2 + ((maxAB + 61)% 64) (8-50)
candModeList [5] = 2 + ((maxAB-1)% 64) (8-51)
-Otherwise (candIntraPredModeA or candIntraPredModeB is greater than INTRA_DC), with x = 0… 5, the candModeList [x] is derived as follows:
-If IntraLumaRefLineIdx [xCb] [yCb] is equal to 0 and IntraSubpartitionsSplitType is equal to ISP_NO_SPLIT, the following applies:
candModeList [0] = candIntraPredModeA (8-52)
candModeList [1] = candIntraPredModeB (8-53)
candModeList [2] = 1-minAB (8-54)
candModeList [3] = 2 + ((maxAB + 61)% 64) (8-55)
candModeList [4] = 2 + ((maxAB-1)% 64) (8-56)
candModeList [5] = 2 + ((maxAB + 60)% 64) (8-57)
-Otherwise, if IntraLumaRefLineIdx [xCb] [yCb] is not equal to 0, the following applies:
candModeList [0] = maxAB (8-58)
candModeList [1] = 2 + ((maxAB + 61)% 64) (8-59)
candModeList [2] = 2 + ((maxAB-1)% 64) (8-60)
candModeList [3] = 2 + ((maxAB + 60)% 64) (8-61)
candModeList [4] = 2 + (maxAB% 64) (8-62)
candModeList [5] = 2 + ((maxAB + 59)% 64) (8-63)
-Otherwise (if IntraSubPartitionsSplitType is not equal to ISP_NO_SPLIT), the following applies:
candModeList [0] = INTRA_PLANAR (8-64)
candModeList [1] = maxAB (8-65)
candModeList [2] = 2 + ((maxAB + 61)% 64) (8-66)
candModeList [3] = 2 + ((maxAB-1)% 64) (8-67)
candModeList [4] = 2 + ((maxAB + 60)% 64) (8-68)
candModeList [5] = 2 + (maxAB% 64) (8-69)
-Otherwise, the following applies:
-If IntraLumaRefLineIdx [xCb] [yCb] is equal to 0 and IntraSubpartitionsSplitType is equal to ISP_NO_SPLIT, the following applies:
candModeList [0] = candIntraPredModeA (8-70)
candModeList [1] = (candModeList [0] == INTRA_PLANAR)? INTRA_DC: INTRA_PLANAR (8-71)
candModeList [2] = INTRA_ANGULAR50 (8-72)
candModeList [3] = INTRA_ANGULAR18 (8-73)
candModeList [4] = INTRA_ANGULAR46 (8-74)
candModeList [5] = INTRA_ANGULAR54 (8-75)
-Otherwise, if IntraLumaRefLineIdx [xCb] [yCb] is not equal to 0, the following applies:
candModeList [0] = INTRA_ANGULAR50 (8-76)
candModeList [1] = INTRA_ANGULAR18 (8-77)
candModeList [2] = INTRA_ANGULAR2 (8-78)
candModeList [3] = INTRA_ANGULAR34 (8-79)
candModeList [4] = INTRA_ANGULAR66 (8-80)
candModeList [5] = INTRA_ANGULAR26 (8-81)
-Otherwise, if IntraSubPartitionsSplitType is equal to ISP_HOR_SPLIT, the following applies:
candModeList [0] = INTRA_PLANAR (8-82)
candModeList [1] = INTRA_ANGULAR18 (8-83)
candModeList [2] = INTRA_ANGULAR25 (8-84)
candModeList [3] = INTRA_ANGULAR10 (8-85)
candModeList [4] = INTRA_ANGULAR65 (8-86)
candModeList [5] = INTRA_ANGULAR50 (8-87)
-Otherwise, if IntraSubPartitionsSplitType is equal to ISP_VER_SPLIT, the following applies:
candModeList [0] = INTRA_PLANAR (8-88)
candModeList [1] = INTRA_ANGULAR50 (8-89)
candModeList [2] = INTRA_ANGULAR43 (8-90)
candModeList [3] = INTRA_ANGULAR60 (8-91)
candModeList [4] = INTRA_ANGULAR3 (8-e)
candModeList [5] = INTRA_ANGULAR18 (8-93)
5. IntraPredModeY [xCb] [yCb] is derived by applying the following procedure:
-If intra_luma_mpm_flag [xCb] [yCb] is equal to 1, IntraPredModeY [xCb] [yCb] is set equal to candModeList [intra_luma_mpm_idx [xCb] [yCb]].
-Otherwise, IntraPredModeY [xCb] [yCb] is derived by applying the following ordered steps:
1. 1. If canandModeList [i] is greater than candModeList [i] for i = 0… 4 and each i, j = (i + 1… 5), both values are exchanged as follows:
(candModeList [i], candModeList [j]) = Swap (candModeList [i], candModeList [j]) (8-94)
2. 2. IntraPredModeY [xCb] [yCb] is derived by the following ordered steps:
i. IntraPredModeY [xCb] [yCb] is set equal to intra_luma_mpm_remainder [xCb] [yCb].
ii. For i equal to 0-5, if IntraPredModeY [xCb] [yCb] is greater than or equal to candModeList [i], the value of IntraPredModeY [xCb] [yCb] is incremented by 1.
The variables IntraPredModeY [x] [y] (where x = xCb ... xCb + cbWidth-1 and y = yCb ... yCb + cbHeight-1) are set equally to IntraPredModeY [xCb] [yCb].
3.実施形態によって解決される問題の例3. 3. Examples of problems solved by embodiments
LICでは、スケーリング・パラメータおよびオフセットbを含む2つのパラメータが、近傍の再構成されたサンプルを使用することによって導出される必要があり、それが遅延問題を引き起こす可能性がある。 In LIC, two parameters, including the scaling parameter and offset b, need to be derived by using a reconstructed sample in the neighborhood, which can cause delay problems.
GBIで使用される許容される重み付け因子の集合は固定されており、これは非効率的でありうる。 The set of acceptable weighting factors used in GBI is fixed, which can be inefficient.
CIIPモードは非スキップ・マージ・モードにのみ適用され、これは非効率的でありうる。 CIIP mode applies only to non-skip merge mode, which can be inefficient.
現在の設計では、CIIPモード・フラグは、イントラコーディングブロックのイントラモード導出プロセスおよびCIIPコーディングブロックのイントラモード導出プロセスのために、近傍ブロックのCIIPモード・フラグが利用されるので、CIIPモード・フラグが記憶される必要がある。 In the current design, the CIIP mode flag is the CIIP mode flag because the CIIP mode flag of the neighboring block is used for the intramode derivation process of the intracoding block and the intramode derivation process of the CIIP coding block . Need to be remembered.
現在の設計では、CIIP重み導出をさらに改善することができ、たとえば、2つの近傍ブロックおよび3つの異なる重みペアをチェックすることは単純化できる可能性がある。 In the current design, CIIP weight derivation can be further improved, for example, checking for two neighborhood blocks and three different weight pairs could be simplified.
現在の設計では、CIIP重み導出プロセスの間、近傍ブロックがBDPCMモードでコーディングされる場合、それはイントラモードとして扱われる。しかしながら、BDPCMはスクリーン・コンテンツコーディングのために設計されているので、非イントラ・モードとして扱うほうがより合理的でありうる。 In the current design, during the CIIP weight derivation process, if a neighboring block is coded in BDPCM mode, it is treated as intramode. However, since BDPCM is designed for screen content coding , it may be more rational to treat it as a non-intra mode.
4.実施形態の例4. Example of embodiment
以下、ブロックは、変換単位(TU)/予測単位(PU)/コーディング単位(CU)/一つのTU/PU/CU等の中のサブブロックを表わすために使用される。 Hereinafter, the block is used to represent a subblock in a conversion unit (TU) / prediction unit (PU) / coding unit (CU) / one TU / PU / CU or the like.
以下の詳細な技術は、一般的な概念を説明するための例として考慮されるべきである。これらの技術は狭義に解釈されるべきではない。さらに、これらの技術は、任意の仕方で組み合わせることができる。 The following detailed techniques should be considered as examples to illustrate general concepts. These techniques should not be construed in a narrow sense. Moreover, these techniques can be combined in any way.
(xCb,yCb)を現在ピクチャーの左上のサンプルに対する現在ブロックの左上のサンプルの位置とすると、cbWidthおよびcbHeightは現在ブロックの幅および高さを指定する。
1.CIIPフラグまたは/およびLICフラグまたは/および拡散フィルタリング・フラグまたは/およびバイラテラルフィルタリング・フラグまたは/および変換ドメインフィルタリング・フラグ、または/および他の種類の再構成後フィルタの有効化フラグは、他のブロック(たとえば隣接するまたは非隣接の近傍ブロックおよび/または参照ブロック)のコーディングモードに依存して、偽であるように制約されてもよい(およびCIIPまたは/およびLICまたは/および拡散フィルタまたは/およびバイラテラルフィルタまたは/および変換ドメインフィルタは暗黙的に無効にされてもよい)。
a.1つのフラグが偽であると導出された場合、対応する方法は適用されなくてもよい。
b.1つのフラグが偽であると導出された場合、そのようなモードの使用の指示の信号伝達はスキップされる。
c.1つのフラグが偽であると導出された場合、そのようなモードの使用の指示は依然として信号伝達されうるが、準拠ビットストリームでは偽であると制約され、そのようなモードは適用されない。
d.一例では、(1.a、1.bおよび1.cのような)一つまたは複数の提案された制約を適用するか否かは、隣接するおよび/または隣接しない近傍の行または列の全部または一部のもののコーディングモードに依存しうる。
i.あるいはまた、そのような制約を適用するか否かは、ある種のモードでコーディングされていない隣接するまたは隣接しない近傍の行または列におけるサンプルの少なくともN個(N≧1)に依存しうる。
e.一例では、隣接するおよび/または隣接しない近傍の行は、上記の行および/または右上の行を含んでいてもよい。
f.一例では、近傍の隣接するおよび/または隣接しない近傍の列は、左の列および/または左下および/または左上コーナーを含んでいてもよい。
g.一例では、現在ブロックではないブロックのある種のモードは、イントラモードおよび/またはCIIPモードおよび/またはCPRモードを含みうる。
h.一例では、近傍のおよび/または隣接しない行または列における近傍の/隣接しないブロックの任意のものが、ある種のモード(たとえば、イントラおよび/またはCIIPモードおよび/またはCPRモード)でコーディングされる場合、一つまたは複数の制約(1.a、1.bおよび1.cなど)が適用される。
i.一例では、隣接するおよび/または隣接しない近傍の行または列内のすべての近傍の/隣接しないブロックが、ある種のモード(たとえば、イントラおよび/またはCIIPおよび/またはCPRモード)でコーディングされる場合、一つまたは複数の提案された制約が適用される。
j.一例では、近傍のまたは隣接しない行または列における少なくともN個の近傍の/隣接しないブロックが、ある種のモード(たとえば、イントラおよび/またはCIIPモードおよび/またはCPRモード)でコーディングされていない場合、一つまたは複数の提案された制約(1.a、1.bおよび1.cなど)は適用されない。
k.一例では、一つまたは複数の提案された制約(1.a、1.bおよび1.cなど)を適用するか否かは、現在ブロックの位置に依存しうる。
i.一例では、現在ブロックが現在のCTUのいちばん上にある場合(現在ブロックと上の近傍ブロックが異なるCTUに属する場合)、提案された制約は適用されない。
ii.一例では、現在ブロックが現在のCTUの左にある場合(現在ブロックとその左の隣接ブロックは異なるCTUに属する)、提案された制約は適用されない。
2.CIIPモードのCIIPフラグおよび/またはイントラモードは、履歴ベースの動きベクトル予測(HMVP)テーブル内に動き情報とともに記憶されてもよい。
a.一例では、2つの候補の動き情報(枝刈りプロセスなど)を比較する場合、CIIPモードにおけるCIIPフラグまたは/およびイントラモードは、比較において考慮されない。
b.一例では、2つの候補の動き情報を比較するとき、CIIPモードにおけるCIIPフラグまたは/およびイントラモードが、比較において考慮される。
c.一例では、マージ候補がHMVPテーブルのエントリーからである場合、そのエントリーのCIIPフラグもマージ候補にコピーされる。
d.一例では、マージ候補がHMVPテーブルのエントリーからである場合、そのエントリーのCIIPフラグおよびイントラモードもマージ候補にコピーされる。
3.CIIPは、AMVPモード(AMVPモードまたは/およびSMVD付きAMVPモード)について実行されてもよい。
a.近傍の/隣接しないブロックのCIIPモードにおけるCIIPフラグおよび/またはイントラモードは、現在ブロックのマージ・モードまたは/およびUMVE(動きベクトル差分のあるマージ(merge with motion vector difference)、略してMMVDとしても知られる)モードにおいて継承されてもよい。
b.CIIPモードにおけるCIIPフラグおよび/またはイントラモードは、非スキップ・マージ・モードまたは/および非スキップUMVEモードについて信号伝達されてもよく、近傍の/隣接しないブロックのCIIPモードにおけるCIIPフラグおよび/またはイントラモードは、スキップ・マージ・モードまたは/およびスキップUMVEモードにおいて継承されてもよい。
c.CIIPモードにおけるCIIPフラグおよび/またはイントラモードは、スキップ・マージ・モードまたは/およびスキップUMVEモードについて信号伝達されてもよく、近傍の/隣接しないブロックのCIIPモードにおけるCIIPフラグおよび/またはイントラモードは、非スキップ・マージ・モードまたは/および非スキップUMVEモードにおいて継承されてもよい。
d.一例では、CIIPフラグおよびイントラモードは、AMVPモードについて信号伝達されてもよい。
e.一例では、CIIPフラグはマージ・モードまたは/およびUMVEモードにおいて継承されてもよく、CIIPフラグが真であれば、2つ以上のイントラモードがCIIPで許可されている場合に、イントラモードがさらに信号伝達されてもよい。
f.一例では、マージ・モードまたは/およびUMVEモードにおける近傍の/隣接しないブロックのCIIPフラグおよびイントラモードは、現在ブロックによって継承されてもよい。
g.一例では、CIIPは、スキップ・モードについては無効にされてもよい。
h.一例では、2つのマージ候補を比較するとき、CIIPにおけるCIIPフラグまたは/およびイントラモードは、比較において考慮されなくてもよい。
i.一例では、2つのマージ候補を比較するとき、CIIPにおけるCIIPフラグまたは/およびイントラモードが、比較において考慮されてもよい。
4.CIIPは、ペア毎予測、複合双予測、または他の種類の仮想/人工候補(たとえば、ゼロ動きベクトル候補)については無効にされてもよい。
a.あるいはまた、ペア毎予測または複合双予測に関与する2つの候補のうちの1つがCIIP予測を採用する場合、ペア毎または複合双マージ候補(combined-bi merge candidate)についてCIIPが有効にされてもよい。
ii.一例では、CIIPモード候補のイントラモードが継承されてもよい。
iii.一例では、イントラモードは明示的に信号伝達されてもよい。
b.あるいはまた、ペア毎予測または複合双予測に関与する両方の候補がCIIP予測を採用する場合、ペア毎または複合双マージ候補についてCIIPが有効にされてもよい。
iv.一例では、2つの候補のうちの1つのイントラモードが継承されてもよい。
v.一例では、イントラモードは、2つの候補のイントラモードから導出されてもよく、ペア毎または複合双マージ候補のために使用される。
vi.一例では、イントラモードは明示的に信号伝達されてもよい。
5.CIIPモードまたは/および拡散フィルタまたは/およびバイラテラルフィルタまたは/および変換ドメインフィルタまたは/および他の種類の再構成後フィルタにおいて必要とされる近傍のおよび/または隣接しない空間的に再構成されたサンプルは、参照ピクチャーにおける対応するサンプル(図17に示されるように、参照ブロックの近傍のおよび/または隣接しない空間的サンプルなど)によって置き換えられてもよい。
a.一例では、現在ブロックが双予測される場合、2つの参照ブロックの近傍サンプルは平均化されて、最終的な近傍サンプルを生成してもよい。
b.一例では、現在ブロックが双予測される場合、2つの参照ブロックのうちの一方の近傍サンプルが、最終的な近傍サンプルとして使用されてもよい。
c.一例では、現在ブロックが双予測される場合、もし不等重みのGBIまたは重み付けされた予測またはLICが現在ブロックに適用されるならば、2つの参照ブロックの近傍サンプルが重み付け平均されて、最終的な近傍サンプルを生成してもよい。
d.一例では、参照ピクチャー内の対応するサンプル(たとえば、参照ブロックの近傍サンプル)は、現在ブロックの動き情報によって識別されてもよい。
e.一例では、参照ピクチャー内の対応するサンプル(たとえば、参照ブロックの近傍サンプル)は、現在ブロックの修正された動き情報によって識別されてもよい。たとえば、動きベクトルは、近傍サンプルを識別するために使用される前に整数精度に丸められてもよい。
f.一例では、参照ピクチャー内の対応するサンプル(たとえば、参照ブロックの近傍サンプル)は、整数画素精度で動きベクトルを介して識別される。
i.一例では、参照ブロックを参照するMVは、まず整数ピクセルに丸められる。丸められたMVは、参照ブロックの近傍サンプルを識別するために使用される。
ii.一例では、提案される置換は、現在ブロックが整数画素動き情報でコーディングされるときに適用される。したがって、丸めは必要とされない。
g.一例では、提案される置換は、ルーマ成分のみなど、ある種の色成分について適用されるだけであってもよい。
i.あるいはまた、提案された置換は、すべての色成分について適用されてもよい。
6.後続ブロックをコーディングするために以前にコーディングされたCIIPフラグを使用することを禁止することが提案される。
a.一例では、前にコーディングされたブロックからのCIIPフラグのチェック・プロセスは、スループットを改善するためにスキップされる。
b.一例では、イントラモード導出プロセスにおける近傍ブロックからのCIIPフラグのチェック・プロセスはスキップされる。
i.一例では、1つの近傍ブロックについて、それがCIIPモードでコーディングされる場合、関連するイントラモードは、所与のモード(たとえば、平面モード)に設定されてもよい。あるいはまた、さらに、関連するイントラモードが、MPMリスト導出プロセスにおいて使用されてもよい。
ii.一例では、1つの近傍ブロックについて、それがCIIPモードまたは通常のインター・モードでコーディングされる場合、関連するイントラモードは、所与のモード(たとえば、平面モード)に設定されてもよい。あるいはまた、さらに、関連するイントラモードが、MPMリスト導出プロセスにおいて使用されてもよい。
iii.一例では、CIIPコーディングブロックのイントラモードは記憶されなくてもよく、CIIPコーディングブロックはデコード・プロセスにおいて利用可能でないとみなされてもよい。あるいはまた、CIIPコーディングブロックは、通常のインター・モードと同様に扱われてもよい。
c.あるいはまた、さらに、モード情報を格納するための必要なメモリサイズを節約するために、メモリからCIIPフラグを除去することが提案される。
7.CIIPモード・フラグがバイパスコーディングによってコーディングされることが提案される。
a.あるいはまた、CIIPモード・フラグはコンテキストコーディングされてもよいが、近傍ブロックのCIIPモード・フラグは参照しない。
8.CIIPにおいて重み付け和を行なうアプローチが色成分に依存してもよいことが提案される。
a.たとえば、CIIPにおける重み付け値は、主な色成分(たとえば、G成分)と他の色成分(たとえば、B成分とR成分)で異なっている。
b.たとえば、ルーマ成分およびクロマ成分について、CIIPにおける重み付け値は異なる。
c.たとえば、インター予測およびイントラ予測についての重み付け値はクロマ成分で等しい。
9.重み付け因子選択が近傍ブロックに従う場合、ある近傍ブロックについて、CIIPモードとしてコーディングされる場合、それはインターコーディングブロックとして扱われてもよいことが提案される。
a.あるいはまた、重み付け因子選択が近傍ブロックに従う場合、ある近傍ブロックについて、CIIPモードとしてコーディングされる場合、それはイントラコーディングブロックとして扱われてもよい。
10.上記の提案される方法は、ブロックサイズ、スライス/ピクチャー/タイル・タイプ、または動き情報のようなある種の条件下で適用されてもよい。
a.一例では、ブロックサイズがM×Hより小さいサンプル、たとえば16または32または64ルーマ・サンプルを含む場合、提案される方法は許可されない。
b.あるいはまた、ブロックの幅または/および高さの最小サイズがXより小さいか、またはX以下である場合、提案される方法は許可されない。一例では、Xが8に設定される。
c.あるいはまた、ブロックの幅または/および高さの最小サイズがX以上である場合、提案される方法は許可されない。一例では、Xが8に設定される。
d.あるいはまた、ブロックの幅>th1または≧th1および/またはブロックの高さ>th2または≧th2である場合、提案される方法は許可されない。一例では、th1および/またはth2は8に設定される。
e.あるいはまた、ブロックの幅<th1または≦th1および/またはブロックの高さ<th2または≦th2である場合、提案される方法は許可されない。一例では、th1および/またはth2が8に設定される。
11.(a,b)および(c,d)として示されるCIIPで使用される許容される重みペア(wIntra,wInter)の数は3から2に減らされてもよい。
a.一例では、2つの対は、{(1,3)および(3,1)};または{(1,3)および(2,2)};または{(3,1)および(2,2)};または{(3,5)および(4,4)}または{(5,3)および(4,4)}または{(1,7)および(4,4)}または{(7,1)および(4,4)}として定義される。
b.一例では、重みペアは、1つの近傍ブロックAのみに基づいて決定される。
i.一例では、1つの近傍ブロックAが利用可能であり、かつイントラコーディングされている場合、(wIntra,wInter)は(a,b)に等しいと設定され;そうでない場合、(wIntra,wInter)は(c,d)に等しいと設定される。
ii.一例では、ブロックAは左の近傍ブロックである。
iii.一例では、ブロックAは、上の近傍ブロックである。
c.一例では、重みペアは、2つ以上の近傍ブロックに基づいて決定され、前記近傍ブロックのうちの少なくとも1つについて、ある種の条件が満たされる。
i.一例では、近傍ブロックAおよびBの少なくとも一方が利用可能であり、かつイントラコーディングされている場合、(wIntra,wInter)は(a,b)に等しく設定され、そうでない場合、(wIntra,wInter)は(c,d)に等しく設定される。
1.一例では、ブロックAは左の近傍ブロックであり、Bは上の近傍ブロックである。
d.一例では、重みペアは、2つ以上の近傍ブロックに基づいて決定され、前記近傍ブロックのそれぞれについて、同じ条件が満たされる。
i.一例では、近傍ブロックAおよびBがいずれも利用可能であり、かつイントラコーディングされている場合、(wIntra,wInter)は(a,b)に等しく設定され、そうでない場合、(wIntra,wInter)は(c,d)に等しく設定される。
1.一例では、ブロックAは左の近傍ブロックであり、Bは上の近傍ブロックである。
e.一例では、(a,b)および(c,d)の設定は、以下の通りであってもよい:
1.一例では、(a,b)は(2,2)または(3,1)に設定される。
2.一例では、(c,d)は(1,3)に等しく設定される。
3.一例では、2つの条件の少なくとも1つが真である:aはcに等しくない、またはbはdに等しくない。
4.(a,b)は(c,d)と等しくない。
f.一例では、上述の近傍ブロック(たとえば、AまたはB)は、隣接するまたは隣接しない空間的な近傍ブロックまたは時間的な近傍ブロックである。
i.一例では、近傍ブロックAまたはBは、左(または上)の近傍ブロックである。
ii.一例では、近傍ブロックAおよびBは、それぞれ左および上の近傍ブロックである。
iii.一例では、左の近傍ブロックは位置(xCb-1,yCb+cbHeight-1)をカバーする。
iv.一例では、上の近傍ブロックは位置(xCb+cbWidth-1,yCb-1)をカバーする。
v.一例では、左の近傍ブロックは位置(xCb-1,yCb)をカバーする。
vi.一例では、上の近傍ブロックは位置(xCb,yCb-1)をカバーする。
g.上記の諸例について、CIIP予測は次のように形成される:
12.CIIPで使用される許容される重みペア(wIntra,wInter)の数は3から1に減らされてもよい。
a.一例では、1つの重みペアは、(1,3)または(2,2)または(1,7)または(2,6)または(3,5)または(4,4)として定義される。
b.一例では、(wIntra,wInter)が(2,2)に等しく設定される。
c.一例では、(wIntra,wInter)が(1,3)に等しく設定される。
d.上記の例については、CIIP予測は次のように形成される:
13.(wIntr,wInter)の重みペアは、一つまたは複数の近傍ブロックがCIIPモードでコーディングされるかどうかに基づいて導出されてもよい。
a.現在ブロックについて使用される重みペアは、前にコーディングされたブロックについて使用された重みペアから導出されてもよい。
b.一例では、重みペアは、1つの近傍ブロックAのみに基づいて決定される。
i.一例では、1つの近傍ブロックAがCIIPモードでコーディングされる場合、現在ブロックの(wIntra,wInter)は近傍ブロックAの(wIntra,wInter)に等しく設定される;そうでない場合、近傍ブロックAが利用可能ありで、かつイントラコーディングされている場合、(wIntra,wInter)は(a,b)に等しく設定される;そうでない場合は、(wIntra,wInter)は(c,d)に等しく設定される。
ii.一例では、1つの近傍ブロックAがCIIPモードでコーディングされる場合、現在ブロックの(wIntra,wInter)は近傍の(wIntra,wInter)に等しく設定され;そうでない場合は、(wIntra,wInter)は(a,b)に等しく設定される。
iii.上記の例について、下記が適用されてもよい:
1.一例では、(a,b)が(2,2)または(3,1)に等しく設定される。
2.一例では、(c,d)が(1,3)に等しく設定される。
3.一例では、2つの条件の少なくとも一方が真である:aはcに等しくない;bはdに等しくない。
c.一例では、重みペアは、2つ以上の近傍ブロックに基づいて決定され、前記近傍ブロックのうちの少なくとも1つについて、ある種の条件が満たされる。
i.複数の隣接ブロックは、CIIPモードの使用を識別するために、所与のチェック順序でチェックされてもよい(たとえば、まず左ブロックをチェックし、次に上のブロックをチェックする)。
ii.一例では、近傍ブロックAおよびBの少なくとも一方がCIIPモードでコーディングされる場合、現在ブロックの(wIntra,wInter)は、所与のチェック順序において最初のCIIPコーディングされた近傍ブロックの(wIntra,wInter)に等しく設定される;そうでない場合、AおよびBのうち少なくとも1つの近傍ブロックが利用可能であり、かつイントラコーディングされる場合は、(wIntra,wInter)は(a,b)に等しく設定され;そうでない場合は(wIntra,wInter)は(c,d)に等しく設定される。
iii.上記の諸例について、下記が適用されてもよい:
1.一例では、(a,b)が(2,2)または(3,1)に等しく設定される。
2.一例では、(c,d)が(1,3)に等しく設定される。
3.一例では、2つの条件の少なくとも1つが真である:aはcに等しくない;bはdに等しくない。
iv.一例では、近傍ブロックAおよびBの少なくとも一方がCIIPモードでコーディングされる場合、現在ブロックの(wIntra,wInter)は、所与のチェック順序における最初のCIIPコーディングされた近傍ブロックの(wIntra,wInter)に等しく設定される;そうでない場合、近傍ブロックAおよびBがいずれも利用可能でありかつイントラコーディングされている場合は、(wIntra,wInter)は(a,b)に等しく設定される;そうでない場合は、(wIntra,wInter)は(c,d)に等しく設定される。
v.一例では、近傍ブロックAおよびBの少なくとも一方がCIIPモードでコーディングされている場合、現在ブロックの(wIntra,wInter)は、所与のチェック順序における最初のCIIPコーディングされた近傍ブロックの(wIntra,wInter)に等しく設定され;そうでない場合は、(wIntra,wInter)は(c,d)に等しく設定される。
vi.上記の諸例について、下記が適用されてもよい:
1.一例では、(c,d)は(2,2)または(1,3)に等しく設定される。
d.一例では、上述の近傍ブロックAまたはBは、隣接するまたは隣接しない空間的な近傍ブロック、または時間的な隣接ブロックである。
i.一例では、近傍ブロックAまたはBは、左(または上)の近傍ブロックである。
ii.一例では、近傍ブロックAおよびBは、それぞれ左および上の近傍ブロックである。
iii.一例では、左の近傍ブロックは位置(xCb-1,yCb+cbHeight-1)をカバーする。
iv.一例では、上の近傍ブロックは位置(xCb+cbWidth-1,yCb-1)をカバーする。
v.一例では、左の近傍ブロックは位置(xCb-1,yCb)をカバーする。
vi.一例では、上の近傍ブロックは位置(xCb,yCb-1)をカバーする。
e.上記の諸例については、CIIP予測は次のように形成される:
14.CIIPにおいて使用される近傍ブロックの選択は、ブロック寸法/ブロック形状/低遅延チェック・フラグ/参照ピクチャー情報/現在ブロックおよび近傍ブロックの動き情報/近傍ブロックのイントラ予測モードのようなコーディングされた情報に依存しうる。
15.CIIPにおいて使用される重みペアは、ブロック寸法/ブロック形状/低遅延チェック・フラグ/参照ピクチャー情報/現在ブロックおよび近傍ブロックの動き情報/近傍ブロックのイントラ予測モードのようなコーディングされた情報に依存しうる。
a.一例では、重み付け対の集合は、さらに信号伝達される。
b.一例では、重みペアの選択は、近傍ブロックがイントラコーディングでなくインターコーディングされるかどうかに依存しうる。
16.CIIP情報を決定するときは(たとえば、前述の以前の設計およびブレットのためのイントラ予測信号またはインター予測信号に適用される重みの決定においては)、近傍ブロックがMODE_INTRA(すなわち、イントラモード)でコーディングされるのでない場合、それはイントラコーディングされたものとして取り扱われてもよい。
a.一例では、近傍ブロックがIBCコーディングされている場合。
b.一例では、近傍ブロックがCIIPコーディングされている場合。
c.一例では、近傍ブロックがTPMコーディングされている場合。
d.一例では、近傍ブロックがパレットコーディングされている場合。
e.一例では、近傍ブロックがRDPCMコーディングされている場合。
f.一例では、近傍ブロックが変換(たとえば、変換スキップ・モード)および/または量子化(たとえば、変換バイパス量子化モード)の適用なしでコーディングされている場合。
g.あるいはまた、近傍ブロックが上記の諸サブブレットで言及されたモード(たとえば、IBC、RDPCM、パレット)でコーディングされている場合、近傍ブロックは、非イントラコーディングされている(たとえば、インターコーディングされている)として扱われてもよい。
h.一例では、近傍ブロックがイントラコーディングされているが、ある種の予測モード(たとえば、平面)でコーディングされているのではない場合、近傍ブロックは、非イントラコーディングされている(たとえば、インターコーディングされている)として扱われてもよい。
i.あるいはまた、近傍ブロックが、行列ベースのイントラ予測方法および/またはK(たとえば、K=0)に等しくない参照線インデックスを有する複数参照線イントラ予測方法および/またはBDPCMによってコーディングされている場合、近傍ブロックは、非イントラコーディングされている(たとえば、インターコーディングされている)として扱われてもよい。
j.提案される方法は、近傍ブロックがイントラモードでコーディングされるか否かに依拠する他のコーディングツールに適用されてもよい。
k.提案される方法は、近傍ブロックがインター・モードでコーディングされるか否かに依拠する他のコーディングツールに適用されてもよい。
17.上記の諸方法を有効にするか無効にするかは、SPS/PPSS/VPS/シーケンスヘッダ/ピクチャーヘッダ/スライスヘッダ/タイルグループヘッダ/タイル/CTUのグループ等において信号伝達されてもよい。
a.あるいはまた、どの方法が使用されるかが、SPS/PPSS/VPS/シーケンスヘッダ/ピクチャーヘッダ/スライスヘッダ/タイルグループヘッダ/タイル/CTUのグループ等において信号伝達されてもよい。
b.あるいはまた、上記の諸方法を有効にするか無効にするか、および/またはどの方法が適用されるかは、ブロック寸法、ビデオ処理データ単位(video processing data unit、VPDU)、ピクチャータイプ、低遅延チェック・フラグ、現在ブロックのコーディング情報(たとえば参照ピクチャー、単予測または双予測)または以前にコーディングされたブロックに依存してもよい。
If (xCb, yCb) is the position of the sample on the upper left of the current block with respect to the sample on the upper left of the current picture, cbWidth and cbHeight specify the width and height of the current block.
1. 1. The CIIP flag and / and the LIC flag and / and the diffuse filtering flag and / and the bilateral filtering flag and / and the transformation domain filtering flag, and / and the enable flag of other types of post-reconstruction filters are other. Depending on the coding mode of the blocks (eg adjacent or non-adjacent neighboring blocks and / or reference blocks), they may be constrained to be false (and CIIP or / and LIC and / and diffusion filters or / and. Bilateral filters and / and translation domain filters may be implicitly disabled).
a. If one flag is derived as false, the corresponding method may not apply.
b. If one flag is derived as false, signaling of the use of such a mode is skipped.
c. If one flag is derived to be false, the instructions to use such a mode can still be signaled, but the compliant bitstream is constrained to be false and such a mode does not apply.
d. In one example, whether or not to apply one or more proposed constraints (such as 1.a, 1.b and 1.c) is the entire row or column of adjacent and / or non-adjacent neighborhoods. Or it may depend on the coding mode of some.
i. Alternatively, whether or not to apply such a constraint may depend on at least N samples (N ≧ 1) in adjacent or non-adjacent neighboring rows or columns that are not coded in certain modes.
e. In one example, adjacent and / or non-adjacent neighborhood rows may include the above row and / or the upper right row.
f. In one example, adjacent and / or non-adjacent neighborhood columns in the neighborhood may include the left column and / or the lower left and / or the upper left corner.
g. In one example, certain modes of blocks that are not currently blocks may include intramode and / or CIIP mode and / or CPR mode.
h. In one example, any of the neighboring / non-neighboring blocks in a nearby and / or non-neighboring row or column are coded in certain modes (eg, intra and / or CIIP mode and / or CPR mode). , One or more constraints (such as 1.a, 1.b and 1.c) apply.
i. In one example, if all neighboring / non-neighboring blocks in adjacent and / or non-adjacent neighborhood rows or columns are coded in certain modes (eg, intra and / or CIIP and / or CPR mode). , One or more proposed constraints apply.
j. In one example, if at least N neighboring / non-neighboring blocks in nearby or non-neighboring rows or columns are not coded in certain modes (eg, intra and / or CIIP mode and / or CPR mode). One or more proposed constraints (such as 1.a, 1.b and 1.c) do not apply.
k. In one example, whether or not to apply one or more proposed constraints (such as 1.a, 1.b and 1.c) may depend on the current block position.
i. In one example, if the current block is at the top of the current CTU (the current block and the neighboring blocks above it belong to different CTUs), the proposed constraint does not apply.
ii. In one example, if the current block is to the left of the current CTU (the current block and its adjacent blocks to the left belong to different CTUs), the proposed constraint does not apply.
2. 2. The CIIP flag and / or intramode of CIIP mode may be stored with motion information in a history-based motion vector prediction (HMVP) table.
a. In one example, when comparing the movement information of two candidates (such as the pruning process), the CIIP flag and / and intramode in CIIP mode are not considered in the comparison.
b. In one example, when comparing the motion information of two candidates, the CIIP flag and / and intramode in CIIP mode are taken into account in the comparison.
c. In one example, if the merge candidate is from an entry in the HMVP table, the CIIP flag for that entry is also copied to the merge candidate.
d. In one example, if the merge candidate is from an entry in the HMVP table, the CIIP flag and intramode for that entry will also be copied to the merge candidate.
3. 3. CIIP may be performed for AMVP mode (AMVP mode and / and AMVP mode with SMVD).
a. The CIIP flag and / or intramode in the CIIP mode of nearby / non-adjacent blocks is also known as the current block merge mode and / and UMVE (merge with motion vector difference), also known as MMVD for short. It may be inherited in the mode.
b. The CIIP flag and / or intramode in CIIP mode may be signaled for non-skip merge mode and / and non-skip UMVE mode, and the CIIP flag and / or intramode in CIIP mode for nearby / non-adjacent blocks. May be inherited in skip merge mode and / and skip UMVE mode.
c. The CIIP flag and / or intramode in CIIP mode may be signaled for skip merge mode and / and skip UMVE mode, and the CIIP flag and / or intramode in CIIP mode for nearby / non-adjacent blocks may be signaled. It may be inherited in non-skip merge mode and / and non-skip UMVE mode.
d. In one example, the CIIP flag and intramode may be signaled for AMVP mode.
e. In one example, the CIIP flag may be inherited in merge mode and / and UMVE mode, and if the CIIP flag is true, then intramode further signals if more than one intramode is allowed in CIIP. It may be transmitted.
f. In one example, the CIIP flags and intramodes of neighboring / non-adjacent blocks in merge mode and / and UMVE mode may be inherited by the current block.
g. In one example, CIIP may be disabled for skip mode.
h. In one example, when comparing two merge candidates, the CIIP flag and / and intramode in CIIP need not be considered in the comparison.
i. In one example, when comparing two merge candidates, the CIIP flag and / and intramode in CIIP may be considered in the comparison.
4. CIIP may be disabled for pair-to-pair predictions, compound bi-predictions, or other types of virtual / artificial candidates (eg, zero motion vector candidates).
a. Alternatively, if one of the two candidates involved in pair-by-pair or compound-bi-merge prediction adopts CIIP prediction, even if CIIP is enabled for the combined-bi-merge candidate. good.
ii. In one example, the intra mode of the CIIP mode candidate may be inherited.
iii. In one example, the intramode may be explicitly signaled.
b. Alternatively, CIIP may be enabled for paired or compound dual merge candidates if both candidates involved in paired or compound dual prediction adopt CIIP prediction.
iv. In one example, the intramode of one of the two candidates may be inherited.
v. In one example, the intramode may be derived from two candidate intramodes and is used for pair-by-pair or compound twin merge candidates.
vi. In one example, the intramode may be explicitly signaled.
5. Neighboring and / or non-neighboring spatially reconstructed samples required for CIIP mode and / and diffuse filters and / and bilateral filters and / and transformation domain filters and / and other types of post-reconstruction filters. May be replaced by a corresponding sample in the reference picture, such as a spatial sample near and / or not adjacent to the reference block, as shown in FIG.
a. In one example, if the current block is bi-predicted, the neighborhood samples of the two reference blocks may be averaged to produce the final neighborhood sample.
b. In one example, if the current block is bi-predicted, the neighborhood sample of one of the two reference blocks may be used as the final neighborhood sample.
c. In one example, if the current block is bi-predicted, if an unequal weighted GBI or weighted prediction or LIC is applied to the current block, the neighborhood samples of the two reference blocks are weighted and averaged to final. Peripheral samples may be generated.
d. In one example, the corresponding sample in the reference picture (eg, a sample near the reference block) may be identified by the motion information of the current block.
e. In one example, the corresponding sample in the reference picture (eg, a sample near the reference block) may be identified by the modified motion information of the current block. For example, motion vectors may be rounded to integer precision before being used to identify neighboring samples.
f. In one example, the corresponding sample in the reference picture (eg, the sample near the reference block) is identified via the motion vector with integer pixel accuracy.
i. In one example, the MV that references the reference block is first rounded to integer pixels. The rounded MV is used to identify nearby samples of the reference block.
ii. In one example, the proposed substitution is currently applied when the block is coded with integer pixel motion information. Therefore, no rounding is required.
g. In one example, the proposed substitution may only be applied for certain color components, such as the luma component only.
i. Alternatively, the proposed substitution may be applied for all color components.
6. It is proposed to prohibit the use of previously coded CIIP flags to code subsequent blocks.
a. In one example, the CIIP flag checking process from a previously coded block is skipped to improve throughput.
b. In one example, the process of checking CIIP flags from neighboring blocks in the intramode derivation process is skipped.
i. In one example, if for one neighborhood block it is coded in CIIP mode, the associated intra mode may be set to a given mode (eg, planar mode). Alternatively, in addition, the associated intramode may be used in the MPM list derivation process.
ii. In one example, if for one neighborhood block it is coded in CIIP mode or normal intermode, the associated intramode may be set to a given mode (eg, planar mode). Alternatively, in addition, the associated intramode may be used in the MPM list derivation process.
iii. In one example, the intramode of the CIIP coding block may not be remembered and the CIIP coding block may be considered unavailable in the decoding process. Alternatively, the CIIP coding block may be treated like a normal intermode.
c. Alternatively, it is further proposed to remove the CIIP flag from memory in order to save the memory size required to store the mode information.
7. It is suggested that the CIIP mode flag be coded by bypass coding .
a. Alternatively, the CIIP mode flag may be context coded , but does not refer to the CIIP mode flag of the neighboring block.
8. It is proposed that the weighted sum approach in CIIP may depend on the color components.
a. For example, the weighting values in CIIP differ between the main color component (eg, G component) and the other color components (eg, B and R components).
b. For example, the weighting values in CIIP are different for the luma component and the chroma component.
c. For example, the weighted values for inter-prediction and intra-prediction are equal for the chroma component.
9. If the weighting factor selection follows a neighborhood block, it is suggested that if a neighborhood block is coded as CIIP mode, it may be treated as an intercoding block.
a. Alternatively, if the weighting factor selection follows a neighborhood block, it may be treated as an intracoding block if it is coded as CIIP mode for a neighborhood block.
10. The proposed method described above may be applied under certain conditions such as block size, slice / picture / tile type, or motion information.
a. In one example, if the block size contains samples smaller than M × H, such as 16 or 32 or 64 luma samples, the proposed method is not allowed.
b. Alternatively, if the minimum width and / and height of the block is less than or equal to X, the proposed method is not allowed. In one example, X is set to 8.
c. Alternatively, if the minimum width and / and height of the block is greater than or equal to X, the proposed method is not allowed. In one example, X is set to 8.
d. Alternatively, if block width> th1 or ≧ th1 and / or block height> th2 or ≧ th2, the proposed method is not allowed. In one example, th1 and / or th2 is set to 8.
e. Alternatively, if the block width <th1 or ≤th1 and / or the block height <th2 or ≤th2, the proposed method is not allowed. In one example, th1 and / or th2 is set to 8.
11. The number of allowed weight pairs (wIntra, wInter) used in the CIIP shown as (a, b) and (c, d) may be reduced from 3 to 2.
a. In one example, the two pairs are {(1,3) and (3,1)}; or {(1,3) and (2,2)}; or {(3,1) and (2,2). }; Or {(3,5) and (4,4)} or {(5,3) and (4,4)} or {(1,7) and (4,4)} or {(7,1) ) And (4,4)}.
b. In one example, the weight pair is determined based on only one neighborhood block A.
i. In one example, if one neighborhood block A is available and is intracoded, (wIntra, wInter ) is set to be equal to (a, b); otherwise, (wIntra, wInter) is (wIntra, wInter). Set to be equal to c, d).
ii. In one example, block A is the neighborhood block on the left.
iii. In one example, block A is the upper neighborhood block.
c. In one example, the weight pair is determined based on two or more neighborhood blocks, and certain conditions are met for at least one of the neighborhood blocks.
i. In one example, (wIntra, wInter) is set equal to (a, b) if at least one of the neighborhood blocks A and B is available and is intracoded , otherwise (wIntra, wInter). Is set equal to (c, d).
1. 1. In one example, block A is the left neighborhood block and B is the top neighborhood block.
d. In one example, the weight pair is determined based on two or more neighborhood blocks, and the same conditions are met for each of the neighborhood blocks.
i. In one example, if neighborhood blocks A and B are both available and intracoded , (wIntra, wInter) is set equal to (a, b), otherwise (wIntra, wInter) is. Set equal to (c, d).
1. 1. In one example, block A is the left neighborhood block and B is the top neighborhood block.
e. In one example, the settings for (a, b) and (c, d) may be as follows:
1. 1. In one example, (a, b) is set to (2,2) or (3,1).
2. 2. In one example, (c, d) is set equal to (1,3).
3. 3. In one example, at least one of the two conditions is true: a is not equal to c, or b is not equal to d.
4. (a, b) is not equal to (c, d).
f. In one example, the neighborhood block described above (eg, A or B) is a spatial or temporal neighborhood block that is adjacent or non-adjacent.
i. In one example, the neighborhood block A or B is the left (or top) neighborhood block.
ii. In one example, neighborhood blocks A and B are neighborhood blocks on the left and above, respectively.
iii. In one example, the left neighborhood block covers the position (xCb-1, yCb + cbHeight-1).
iv. In one example, the upper neighborhood block covers the position (xCb + cbWidth-1, yCb-1).
v. In one example, the left neighborhood block covers the position (xCb-1, yCb).
vi. In one example, the upper neighborhood block covers the position (xCb, yCb-1).
g. For the above examples, the CIIP prediction is formed as follows:
12. The number of allowable weight pairs (wIntra, wInter) used in CIIP may be reduced from 3 to 1.
a. In one example, one weight pair is defined as (1,3) or (2,2) or (1,7) or (2,6) or (3,5) or (4,4).
b. In one example, (wIntra, wInter) is set equal to (2,2).
c. In one example, (wIntra, wInter) is set equal to (1,3).
d. For the above example, the CIIP prediction is formed as follows:
13. The weight pair (wIntr, wInter) may be derived based on whether one or more neighboring blocks are coded in CIIP mode.
a. The weight pair currently used for the block may be derived from the weight pair used for the previously coded block.
b. In one example, the weight pair is determined based on only one neighborhood block A.
i. In one example, if one neighborhood block A is coded in CIIP mode, the current block's (wIntra, wInter) is set equal to the neighborhood block A's (wIntra, wInter); otherwise, the neighborhood block A is utilized. If possible and intracoded , (wIntra, wInter) is set equal to (a, b); otherwise, (wIntra, wInter) is set equal to (c, d). ..
ii. In one example, if one neighborhood block A is coded in CIIP mode, the current block's (wIntra, wInter) is set equal to the neighborhood's (wIntra, wInter); otherwise, (wIntra, wInter) is (wIntra, wInter). It is set equally to a and b).
iii. For the above example, the following may apply:
1. 1. In one example, (a, b) is set equal to (2,2) or (3,1).
2. 2. In one example, (c, d) is set equal to (1,3).
3. 3. In one example, at least one of the two conditions is true: a is not equal to c; b is not equal to d.
c. In one example, the weight pair is determined based on two or more neighborhood blocks, and certain conditions are met for at least one of the neighborhood blocks.
i. Multiple adjacent blocks may be checked in a given check order to identify the use of CIIP mode (eg, check the left block first, then the block above).
ii. In one example, if at least one of the neighborhood blocks A and B is coded in CIIP mode, the current block (wIntra, wInter) is the first CIIP- coded neighborhood block (wIntra, wInter) in a given check order. If not, ( wIntra , wInter) is set equal to (a, b) if at least one neighborhood block of A and B is available and is intracoded; Otherwise (wIntra, wInter) is set equal to (c, d).
iii. For the above examples, the following may apply:
1. 1. In one example, (a, b) is set equal to (2,2) or (3,1).
2. 2. In one example, (c, d) is set equal to (1,3).
3. 3. In one example, at least one of the two conditions is true: a is not equal to c; b is not equal to d.
iv. In one example, if at least one of the neighborhood blocks A and B is coded in CIIP mode, the current block (wIntra, wInter) is the first CIIP- coded neighborhood block (wIntra, wInter) in a given check order. If not, (wIntra, wInter) is set equal to (a, b) if both neighborhood blocks A and B are available and intracoded ; If so, (wIntra, wInter) is set equal to (c, d).
v. In one example, if at least one of the neighborhood blocks A and B is coded in CIIP mode, the current block (wIntra, wInter) is the first CIIP- coded neighborhood block (wIntra, wInter) in a given check order. ) Equally; otherwise, (wIntra, wInter) is set equal to (c, d).
vi. For the above examples, the following may apply:
1. 1. In one example, (c, d) is set equal to (2,2) or (1,3).
d. In one example, the neighborhood blocks A or B described above are spatially adjacent or non-adjacent spatial neighborhood blocks, or temporally adjacent blocks.
i. In one example, the neighborhood block A or B is the left (or top) neighborhood block.
ii. In one example, neighborhood blocks A and B are neighborhood blocks on the left and above, respectively.
iii. In one example, the left neighborhood block covers the position (xCb-1, yCb + cbHeight-1).
iv. In one example, the upper neighborhood block covers the position (xCb + cbWidth-1, yCb-1).
v. In one example, the left neighborhood block covers the position (xCb-1, yCb).
vi. In one example, the upper neighborhood block covers the position (xCb, yCb-1).
e. For the above examples, the CIIP prediction is formed as follows:
14. The selection of neighborhood blocks used in CIIP is coded information such as block dimensions / block shape / low delay check flag / reference picture information / current block and neighborhood block motion information / neighborhood block intra-prediction mode. Can depend on it.
15. The weight pairs used in CIIP depend on coded information such as block dimensions / block shape / low delay check flag / reference picture information / current block and neighborhood block motion information / neighborhood block intra-prediction mode. sell.
a. In one example, the set of weighted pairs is further signaled.
b. In one example, the choice of weight pairs may depend on whether neighboring blocks are intercoded rather than intracoded .
16. When determining CIIP information (for example, in determining the weights applied to the intra-predictive or inter-predictive signals for the previous design and bullets described above), the neighborhood block is coded in MODE_INTRA (ie, intra mode). If not, it may be treated as intracoded .
a. In one example, the neighborhood block is IBC coded .
b. In one example, the neighborhood block is CIIP coded .
c. In one example, the neighborhood block is TPM coded .
d. In one example, the neighborhood block is palette coded .
e. In one example, the neighborhood block is RDPCM coded .
f. In one example, the neighborhood block is coded without the application of transformation (eg, transformation skip mode) and / or quantization (eg, transformation bypass quantization mode).
g. Alternatively, if the neighborhood block is coded in the mode mentioned in the subblets above (eg, IBC, RDPCM, palette), the neighborhood block is non- intracoded (eg, intercoded ). ) May be treated.
h. In one example, if the neighborhood block is intracoded , but not in some predictive mode (eg, plane), the neighborhood block is non- intracoded (eg, interconnected ) . May be treated as).
i. Alternatively, if the neighborhood block is coded by a matrix-based intra-prediction method and / or a multi-reference line intra-prediction method with a reference line index that is not equal to K (eg, K = 0) and / or BDPCM, the neighborhood. Blocks may be treated as non- intracoded (eg, intercoded ).
j. The proposed method may be applied to other coding tools that rely on whether neighboring blocks are coded in intramode.
k. The proposed method may be applied to other coding tools that depend on whether the neighboring blocks are coded in intermode.
17. Whether to enable or disable the above methods may be signaled in a group of SPS / PPSS / VPS / sequence header / picture header / slice header / tile group header / tile / CTU.
a. Alternatively, which method is used may be signaled in a group such as SPS / PPSS / VPS / sequence header / picture header / slice header / tile group header / tile / CTU.
b. Alternatively, whether to enable or disable the above methods and / or which method is applied depends on the block size, video processing data unit (VPDU), picture type, and low latency. It may depend on the check flag, the coding information of the current block (eg reference picture, mono-predictive or bi-predictive) or the previously coded block.
5. 実施形態5. Embodiment
5.1 実施形態15.1 Embodiment 1
以前にコーディングされたブロックのCIIPフラグのチェックをスキップする例が以下に与えられる。
8.4.2 ルーマ・イントラ予測モードについての導出プロセス
ルーマ・イントラ予測モードについての導出プロセス
このプロセスへの入力は以下の通り:
-現在ピクチャーの左上のルーマ・サンプルに対する現在のルーマコーディングブロックの左上のサンプルを指定するルーマ位置(xCb,yCb)、
ルーマ・サンプル単位で現在のコーディングブロックの幅を指定する変数cbWidth、
ルーマ・サンプル単位で現在のコーディングブロックの高さを指定する変数cbHeight。
このプロセスでは、ルーマ・イントラ予測モードIntraPredModeY[xCb][yCb]が導出される。
テーブル8-1は、イントラ予測モードIntraPredModeY[xCb][yCb]および関連する名前についての値を指定する。
テーブル8-1-イントラ予測モードおよび関連する名前の指定
IntraPredModeY[xCb][yCb]は、以下の順序付けられたステップによって導出される:
1.近傍位置(xNbA,yNbA)および(xNbB,yNbB)は、それぞれ(xCb-1,yCb+cbHeight-1)および(xCb+cbWidth-1,yCb-1)に等しく設定される。
2.AまたはBのいずれかで置き換えられるXについて、変数candIntraPredModeXは次のように導出される:
-6.4.X節に規定されるブロックについての利用可能性導出プロセス[編注(BB):近傍ブロック利用可能性検査プロセスtbd]は、(xCb,yCb)に等しいと設定された位置(xCurr,yCurr)と、(xNbX,yNbX)に等しいと設定された近傍位置(xNbY,yNbY)とを入力として呼び出され、出力はavailableXに割り当てられる。
-候補イントラ予測モードcandIntraPredModeXは以下のように導出される:
-下記の条件の一つまたは複数が真の場合、candIntraPredModeXはINTRA_PLANARに等しく設定される。
-変数avalableXはFALSEに等しい。
-CuPredMode[xNbX][yNbX]はMODE_INTRAと等しくない。
-pcm_flag[xNbX][yNbX]は1に等しい。
-XはBに等しく、yCb-1は((yCb>>CtbLog2SizeY)<<CtbLog2SizeY)より小さい。
-それ以外の場合、candIntraPredModeXはIntraPredModeY[xNbX][yNbX]に等しく設定される。
3.変数ispDefaultMode1およびispDefaultMode2は次のように定義される:
-IntraSubPartitionsSplitTypeがISP_HOR_SPLITに等しい場合、ispDefaultMode1はINTRA_ANGULAR18に等しく設定され、ispDefaultMode2はINTRA_ANGULAR5に等しく設定される。
-そうでない場合、ispDefaultMode1はINTRA_ANGULAR50に等しく設定され、ispDefaultMode2はINTRA_ANGULAR63に等しく設定される。
4.x=0…5として、candModeList[x]は次のように導出される:
…
An example of skipping the CIIP flag check for a previously coded block is given below.
8.4.2 Derivation process for Luma Intra prediction mode
Derivation process for Luma intra prediction mode
The inputs to this process are:
-Ruma position (xCb, yCb), which specifies the upper left sample of the current luma coding block for the upper left luma sample of the current picture,
Variable cbWidth, which specifies the width of the current coding block in units of luma samples,
A variable cbHeight that specifies the height of the current coding block in luma sample units.
In this process, the Luma Intra Prediction Mode IntraPredModeY [xCb] [yCb] is derived.
Table 8-1 specifies values for IntraPredModeY [xCb] [yCb] and related names.
Table 8-1-Specifying intra-prediction mode and associated names
IntraPredModeY [xCb] [yCb] is derived by the following ordered steps:
1. 1. The neighborhood positions (xNbA, yNbA) and (xNbB, yNbB) are set equally to (xCb-1, yCb + cbHeight-1) and (xCb + cbWidth-1, yCb-1), respectively.
2. 2. For X replaced by either A or B, the variable candIntraPredModeX is derived as follows:
-6.4. The availability derivation process for blocks specified in Section X [Editor's Note (BB): Neighborhood block availability check process tbd] is set to be equal to (xCb, yCb) (xCurr, yCb). yCurr) and the neighborhood position (xNbY, yNbY) set to be equal to (xNbX, yNbX) are called as inputs and the output is assigned to availableX.
-CandIntraPredModeX is derived as follows:
-If one or more of the following conditions are true, canDIntraPredModeX is set equally to INTRA_PLANAR.
-The variable avalableX is equal to FALSE.
-CuPredMode [xNbX] [yNbX] is not equal to MODE_INTRA.
-Pcm_flag [xNbX] [yNbX] is equal to 1.
-X is equal to B and yCb-1 is less than ((yCb >> CtbLog2SizeY) << CtbLog2SizeY).
-Otherwise, candIntraPredModeX is set equal to IntraPredModeY [xNbX] [yNbX].
3. 3. The variables ispDefaultMode1 and ispDefaultMode2 are defined as:
-If IntraSubPartitionsSplitType is equal to ISP_HOR_SPLIT, ispDefaultMode1 is set equal to INTRA_ANGULAR18 and ispDefaultMode2 is set equal to INTRA_ANGULAR5.
-Otherwise, ispDefaultMode1 is set equal to INTRA_ANGULAR50 and ispDefaultMode2 is set equal to INTRA_ANGULAR63.
4. With x = 0… 5, the candModeList [x] is derived as follows:
…
実施形態#2
左の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(2,2)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 2
If the neighborhood on the left is available and intracoded , (wIntra, wInter) is set equal to (2,2); otherwise, (wIntra, wInter) is set equal to (1,3). Will be done.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#3
左の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(3,1)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 3
If the neighborhood on the left is available and intracoded , (wIntra, wInter) is set equal to (3,1); otherwise, (wIntra, wInter) is set equal to (1,3). Will be done.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#4
上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(2,2)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 4
If the above neighborhood is available and intracoded , (wIntra, wInter) is set equal to (2,2); otherwise, (wIntra, wInter) is set equal to (1,3). Will be done.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#5
上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(3,1)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 5
If the above neighborhood is available and intracoded , (wIntra, wInter) is set equal to (3,1); otherwise, (wIntra, wInter) is set equal to (1,3). Will be done.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#6
左の近傍および上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(2,2)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 6
If the left and upper neighborhoods are available and intracoded , (wIntra, wInter) is set equal to (2,2); otherwise, (wIntra, wInter) is (1,3). ) Is set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#7
左の近傍および上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(3,1)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 7
If the left and upper neighborhoods are available and intracoded , (wIntra, wInter) is set equal to (3,1); otherwise, (wIntra, wInter) is (1,3). ) Is set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#8
左または上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(2,2)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
実施形態#9
左または上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(3,1)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 8
If the left or top neighborhood is available and intracoded , (wIntra, wInter) is set equal to (2,2); otherwise, (wIntra, wInter) is set to (1,3). Set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
Embodiment # 9
If the left or top neighborhood is available and intracoded , (wIntra, wInter) is set equal to (3,1); otherwise, (wIntra, wInter) is set to (1,3). Set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#10
(wIntra,wInter)は(2,2)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 10
(wIntra, wInter) is set equal to (2,2).
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#11
(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 11
(wIntra, wInter) is set equal to (1,3).
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#12
左の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は左近傍の(wIntra,wInter)に等しく設定される;そうでない場合、左の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(3,1)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 12
If the left neighborhood is CIIP coded , the current block's (wIntra, wInter) is set equal to the left neighborhood (wIntra, wInter); otherwise, the left neighborhood is available and intracoded . If yes, (wIntra, wInter) is set equal to (3,1); otherwise, (wIntra, wInter) is set equal to (1,3).
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#13
左の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は左近傍の(wIntra,wInter)に等しく設定される;そうでない場合、左の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(2,2)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 13
If the left neighborhood is CIIP coded , the current block's (wIntra, wInter) is set equal to the left neighborhood (wIntra, wInter); otherwise, the left neighborhood is available and intracoded . If yes, (wIntra, wInter) is set equal to (2,2); otherwise, (wIntra, wInter) is set equal to (1,3).
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#14
上の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は上近傍の(wIntra,wInter)に等しく設定される;そうでない場合、上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(3,1)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 14
If the upper neighborhood is CIIP coded , the current block's (wIntra, wInter) is set equal to the upper neighborhood (wIntra, wInter); otherwise, the upper neighborhood is available and intracoded . If yes, (wIntra, wInter) is set equal to (3,1); otherwise, (wIntra, wInter) is set equal to (1,3).
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#15
上の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は上近傍の(wIntra,wInter)に等しく設定される;そうでない場合、上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(2,2)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 15
If the upper neighborhood is CIIP coded , the current block's (wIntra, wInter) is set equal to the upper neighborhood (wIntra, wInter); otherwise, the upper neighborhood is available and intracoded . If yes, (wIntra, wInter) is set equal to (2,2); otherwise, (wIntra, wInter) is set equal to (1,3).
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#16
左または/および上の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は最初のCIIPコーディングされた近傍(左→上)の(wIntra,wInter)に等しく設定される;そうでない場合、左または/および上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(3,1)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 16
If the left or / and upper neighborhood is CIIP- coded , the (wIntra, wInter) of the current block is set equal to the (wIntra, wInter) of the first CIIP- coded neighborhood (left → top); If the left or / and upper neighborhood are available and intracoded , (wIntra, wInter) is set equal to (3,1); otherwise, (wIntra, wInter) is (1). , 3) are set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#17
左または/および上の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は最初のCIIPコーディングされた近傍(左→上)の(wIntra,wInter)に等しく設定される;そうでない場合、左または/および上の近傍が利用可能でありイントラコーディングされている場合、(wIntra,wInter)は(2,2)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 17
If the left or / and upper neighborhood is CIIP- coded , the (wIntra, wInter) of the current block is set equal to the (wIntra, wInter) of the first CIIP- coded neighborhood (left → top); If the left or / and upper neighborhood is available and intracoded , (wIntra, wInter) is set equal to (2,2); otherwise, (wIntra, wInter) is (1). , 3) are set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#18
左の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は左近傍の(wIntra,wInter)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 18
If the left neighborhood is CIIP coded , the current block's (wIntra, wInter) is set equal to the left neighborhood (wIntra, wInter); otherwise, (wIntra, wInter) is set to (1,3). Set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#19
左の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は左近傍の(wIntra,wInter)に等しく設定される;そうでない場合、(wIntra,wInter)は(2,2)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 19
If the left neighborhood is CIIP coded , the current block's (wIntra, wInter) is set equal to the left neighborhood (wIntra, wInter); otherwise, (wIntra, wInter) is set to (2,2). Set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#20
上の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は上近傍の(wIntra,wInter)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 20
If the upper neighborhood is CIIP coded , the current block's (wIntra, wInter) is set equal to the upper neighborhood's (wIntra, wInter); otherwise, (wIntra, wInter) is set to (1,3). Set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#21
上の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は上近傍の(wIntra,wInter)に等しく設定される;そうでない場合、(wIntra,wInter)は(2,2)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 21
If the upper neighborhood is CIIP coded , the current block's (wIntra, wInter) is set equal to the upper neighborhood's (wIntra, wInter); otherwise, (wIntra, wInter) is set to (2,2). Set equally.
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#22
左または/および上の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は最初のCIIPコーディングされた近傍(左→上)の(wIntra,wInter)に等しく設定される;そうでない場合、(wIntra,wInter)は(1,3)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 22
If the left or / and upper neighborhood is CIIP coded , the (wIntra, wInter) of the current block is set equal to the (wIntra, wInter) of the first CIIP coded neighborhood (left → top); If so, (wIntra, wInter) is set equal to (1,3).
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#23
左または/および上の近傍がCIIPコーディングされている場合、現在ブロックの(wIntra,wInter)は最初のCIIPコーディングされた近傍(左→上)の(wIntra,wInter)に等しく設定される;そうでない場合、(wIntra,wInter)は(2,2)に等しく設定される。
CIIP予測は
PCIIP=(wInter*Pinter+wIntra*Pintra+2)>>2
のように形成される。
Embodiment # 23
If the left or / and upper neighborhood is CIIP coded , the (wIntra, wInter) of the current block is set equal to the (wIntra, wInter) of the first CIIP coded neighborhood (left → top); If so, (wIntra, wInter) is set equal to (2,2).
CIIP forecast
P CIIP = (wInter * P inter + wIntra * P intra + 2) >> 2
It is formed like.
実施形態#24
8.5.6 インター・ブロックについてのデコード・プロセス
8.5.6.1 一般
このプロセスは、コーディング単位をインター予測モードでデコードするときに呼び出される。
ciip_flag[xCb][yCb]が1に等しい場合、予測サンプルの配列predSamplesは次のように修正される:
-cIdxが0に等しい場合、下記が適用される:
-8.4.5.2.5節に規定される一般的なイントラ・サンプル予測プロセスは、(xCb,yCb)に等しく設定された位置(xTbCmp,yTbCmp)、cbWidthおよびcbHeightに等しく設定された変換ブロック幅nTbWおよび高さnTbH、cbWidthおよびcbHeightに等しく設定されたコーディングブロック幅nCbWおよび高さnCbH、および変数cIdxを入力として呼び出され、出力は(cbWidth)×(cbHeight)の配列predSamplesIntraLである。
-8.5.6.7節に規定される組み合わされたマージおよびイントラ予測のための重み付けされたサンプル予測プロセスは、(xCb,yCb)に等しく設定された位置(xTbCmp,yTbCmp)、コーディングブロック幅cbWidth、コーディングブロック高さcbHeight、それぞれpredSamplesおよびpredSamplesIntraLと等しいと設定されたpredSamplesInterおよびPredSamplesIntra、IntraPredModeY[xCb][yCb]に等しいと設定されたイントラ予測モードpredModeIntra、および色成分インデックスcIdxを入力として呼び出され、出力は(cbWidth)×(cbHeight)の配列predSamplesに割り当てられる。
...
8.5.6.7 組み合わされたマージおよびイントラ予測のための重み付けされたサンプル予測プロセス
このプロセスへの入力は以下の通り:
-現在ピクチャーの左上のルーマ・サンプルに対する現在のルーマコーディングブロックの左上のサンプルを指定するルーマ位置(xCb,yCb)、
-現在のコーディングブロックの幅cbWidth、
-現在のコーディングブロックの高さcbHeight、
-preSamplesInterおよびpreSamplesIntraの2つの(cbWidth)×(cbHeight)配列、
-色成分インデックスを指定する変数cIdx。
このプロセスの出力は予測サンプル値の(cbWidth)×(cbHeight)配列preSamplesCombである。
変数bitDepthは次のように導出される:
-cIdxが0に等しい場合、bitDepthはBitDepthYに等しく設定される。
-それ以外の場合、bitDepthはBitDepthCに等しく設定される。
変数scallFactは以下のように導出される:
scallFact=(cIdx==0)?0:1 (8-838)
近傍ルーマ位置(xNbA,yNbA)および(xNbB,yNbB)はそれぞれ(xCb-1,yCb-1+(cbHeight<<scallFact))および(xCb-1+(cbWidth<<scallFact),yCb-1)に等しく設定される。
AかBのどちらかで置き換えられるXについて、変数availableXおよびisIntraCodedNeighbourXは次のように導出される:
-6.4.4節で規定された近傍ブロック利用可能性についての導出プロセスが、(xCb,yCb)に等しく設定された位置(xCurr,yCurr)、(xNbY,yNbY)に等しく設定された近傍位置(xNbY,yNbY)、FALSEに等しく設定されたcheckPredModeY、および0に等しく設定されたcIdxを入力として呼び出され、出力はavailableXに割り当てられる。
-変数isIntraCodedNeighbourXは次のように導出される:
-avallableXがTRUEに等しく、CuPredMode[0][xNbX][yNbX]がMODE_INTRAに等しく、BdpcmFlag[xNbX][yNbX]が0に等しい場合、isIntraCodedNeighbourXはTRUEに等しく設定される。
-それ以外の場合、isIntraCodedNeighbourXはFALSEに等しく設定される。
重みwは次のように導出される:
-isIntraCodedNeighbourAおよびisIntraCodedNeighbourBが両方ともTRUEに等しい場合、wは3に等しく設定される。
-そうでない場合、isIntraCodedNeighbourAおよびisIntraCodedNeighbourBが両方ともFALSEに等しいなら、wは1に設定される。
-それ以外の場合、wは2に等しく設定される。
Embodiment # 24
8.5.6 Decoding process for interblocks
8.5.6.1 General This process is called when decoding a coding unit in interpredictive mode.
If ciip_flag [xCb] [yCb] is equal to 1, the array of predicted samples predSamples is modified as follows:
-If cIdx is equal to 0, the following applies:
-The general intra-sample prediction process specified in Section 8.4.5.2.5 is the conversion block width nTbW set equal to the position (xTbCmp, yTbCmp) set equal to (xCb, yCb), cbWidth and cbHeight. And the coding block width nCbW and height nCbH set equal to the height nTbH, cbWidth and cbHeight, and the variable cIdx are called as inputs, and the output is an array predSamplesIntra L of (cbWidth) × (cbHeight).
-The weighted sample prediction process for combined merge and intra predictions specified in Section 8.5.6.7 is the position (xTbCmp, yTbCmp) set equal to (xCb, yCb), coding block width cbWidth, coding . Called and output with block height cbHeight, predSamplesInter and PredSamplesIntra set to be equal to predSamples and predSamplesIntra L , respectively, intraprediction mode predModeIntra set to be equal to IntraPredModeY [xCb] [yCb], and color component index cIdx. Is assigned to the array predSamples of (cbWidth) × (cbHeight).
...
8.5.6.7 Weighted sample prediction process for combined merge and intra prediction
The inputs to this process are:
-Ruma position (xCb, yCb), which specifies the upper left sample of the current luma coding block for the upper left luma sample of the current picture,
-Current coding block width cbWidth,
-Current coding block height cbHeight,
-Two (cbWidth) x (cbHeight) arrays, preSamplesInter and preSamplesIntra,
-Variable cIdx that specifies the color component index.
The output of this process is a (cbWidth) x (cbHeight) array of predicted sample values, preSamplesComb.
The variable bitDepth is derived as follows:
-If cIdx is equal to 0, bitDepth is set equal to BitDepth Y.
-Otherwise, bitDepth is set equal to BitDepth C.
The variable scallFact is derived as follows:
scallFact = (cIdx == 0)? 0: 1 (8-838)
Neighborhood luma positions (xNbA, yNbA) and (xNbB, yNbB) are set equal to (xCb-1, yCb-1 + (cbHeight << scallFact)) and (xCb-1 + (cbWidth << scallFact), yCb-1), respectively. Will be done.
For X replaced by either A or B, the variables availableX and isIntraCodedNeighbourX are derived as follows:
-The neighborhood location (xCurr, yCurr), (xNbY, yNbY) set equal to (xCb, yCb) and the neighborhood position (xNbY, yNbY) set equally by the derivation process for neighborhood block availability specified in Section 6.4.4 (xCb, yCb). xNbY, yNbY), checkPredModeY set equal to FALSE, and cIdx set equal to 0 are called as inputs and the output is assigned to availableX.
-The variable isIntraCodedNeighbourX is derived as follows:
-If avallableX is equal to TRUE, CuPredMode [0] [xNbX] [yNbX] is equal to MODE_INTRA, and BdpcmFlag [xNbX] [yNbX] is equal to 0, isIntraCodedNeighbourX is set equal to TRUE.
-Otherwise, isIntraCodedNeighbourX is set equal to FALSE.
The weight w is derived as follows:
-If isIntraCodedNeighbourA and isIntraCodedNeighbourB are both equal to TRUE, w is set equal to 3.
-Otherwise, if isIntraCodedNeighbourA and isIntraCodedNeighbourB are both equal to FALSE, w is set to 1.
-Otherwise, w is set equal to 2.
cIdxが0に等しく、slice_lmcs_enabled_flagが1に等しい場合、predSamplesInter[x][y](x=0…cbWidth-1およびy=0…cbHeight-1)は、次のように修正される。 If cIdx is equal to 0 and slice_lmcs_enabled_flag is equal to 1, predSamplesInter [x] [y] (x = 0 ... cbWidth-1 and y = 0 ... cbHeight-1) is modified as follows.
図18は、ビデオ処理装置1800のブロック図である。装置1800は、本明細書に記載される方法の一つまたは複数を実装するために使用されてもよい。装置1800は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機などにおいて具現されてもよい。装置1800は、一つまたは複数のプロセッサ1802、一つまたは複数のメモリ1804、およびビデオ処理ハードウェア1806を含んでいてもよい。プロセッサ1802は、本稿に記載される一つまたは複数の方法を実装するように構成されてもよい。メモリ(単数または複数)1804は、本明細書に記載される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用されてもよい。ビデオ処理ハードウェア1806は、ハードウェア回路において、本稿に記載されるいくつかの技術を実装するために使用されてもよい。 FIG. 18 is a block diagram of the video processing device 1800. Device 1800 may be used to implement one or more of the methods described herein. The device 1800 may be embodied in a smartphone, tablet, computer, Internet of Things (IoT) receiver, or the like. Equipment 1800 may include one or more processors 1802, one or more memories 1804, and video processing hardware 1806. Processor 1802 may be configured to implement one or more of the methods described herein. Memory (s) 1804 may be used to store data and codes used to implement the methods and techniques described herein. Video processing hardware 1806 may be used in hardware circuits to implement some of the techniques described in this article.
図20は、ビデオを処理する方法2000のためのフローチャートである。方法2000は、第1のビデオ・ブロックのコーディングモードを判別するステップ(2005)と、一つまたは複数のフラグを、前記第1のビデオ・ブロックのコーディングモードの判別に基づいてある動作状態に制約するステップ(2110)と、前記一つまたは複数のフラグの動作状態に従って第2のビデオ・ブロックのさらなる処理を実行するステップ(2015)とを含み、前記第1のビデオ・ブロックは、前記第2のビデオ・ブロックに関して近傍のビデオ・ブロックまたは参照ビデオ・ブロックである。 FIG. 20 is a flow chart for Method 2000 to process video. Method 2000 constrains one or more flags to a certain operating state based on the determination of the coding mode of the first video block (2005) and the determination of the coding mode of the first video block. The first video block comprises the second step of performing further processing of the second video block according to the operating state of the one or more flags (2110). A video block in the vicinity or a reference video block with respect to the video block in.
図21は、ビデオを処理する方法2100のためのフローチャートである。方法2100は、第1のビデオ・ブロックに関して、ペア毎予測または複合双予測が使用されることを判別するステップ(2105)と、ペア毎予測または複合双予測が使用されるとの判別に基づいて、複合インター‐イントラ予測の動作状態を決定するステップ(2110)であって、前記動作状態が有効または無効にされる、ステップと、CIIPの動作状態に応じて、第1のビデオ・ブロックのさらなる処理を実行するステップ(2115)とを含む。 FIG. 21 is a flow chart for method 2100 to process video. Method 2100 is based on the step (2105) of determining that pair-to-pair or compound bi-prediction is used for the first video block and the determination that pair-to-pair or compound bi-prediction is used. , A step (2110) of determining the operational state of the composite inter-intra prediction, the step in which the operational state is enabled or disabled, and the further of the first video block, depending on the operational state of the CIIP. Includes a step (2115) to perform the process.
図23は、ビデオを処理する方法2300のフローチャートである。方法2300は、ビデオ・データ内の第1のブロックと第1のブロックのビットストリーム表現との間の変換中に、一つまたは複数の第2のブロックの一つまたは複数のコーディングモードを決定するステップ(2305)と、前記一つまたは複数の第2のブロックの前記一つまたは複数のコーディングモードに基づいて、第1のブロックのコーディングモード制約を決定するステップ(2310)と、少なくとも第1のブロックのコーディングモード制約を適用することによって、前記変換を実行するステップ(2315)とを含み、前記一つまたは複数の第2のブロックは、第1のブロックの隣接するブロック、隣接しないブロック、および参照ブロックのうちの少なくとも1つを含む。 FIG. 23 is a flowchart of the method 2300 for processing video. Method 2300 determines the coding mode of one or more of the second blocks during the conversion between the first block and the bitstream representation of the first block in the video data. A step (2305) and a step (2310) of determining the coding mode constraint of the first block based on the one or more coding modes of the one or more second blocks, and at least the first. The one or more second blocks include adjacent blocks, non-adjacent blocks, and adjacent blocks of the first block, including the step (2315) of performing the transformation by applying the coding mode constraint of the block. Contains at least one of the reference blocks.
図24は、ビデオを処理する方法2400のためのフローチャートである。方法2400は、ビデオ・データ中の現在ブロックと現在ブロックのビットストリーム表現との間の変換を、複合インター‐イントラ予測(CIIP)、拡散フィルタリング、バイラテラルフィルタリング、変換ドメインフィルタリング、または拡散フィルタリング、バイラテラルフィルタリング、および変換ドメインフィルタリングとは異なる別のタイプの再構成後フィルタリングのうちの少なくとも1つを使用することによって実行すること(2405)を含み、ここで、複合インター‐イントラ予測(CIIP)、拡散フィルタリング、バイラテラルフィルタリング、変換ドメインフィルタリング、または前記別のタイプの再構成後フィルタリングのうちの少なくとも1つにおいて使用される現在ブロックの再構成された近傍サンプルは、一つまたは複数の参照ピクチャーにおける、該再構成された近傍サンプルの対応するサンプルから生成された近似サンプルによって置き換えられる。 FIG. 24 is a flowchart for the method 2400 for processing video. Method 2400 transforms the conversion between the current block and the bitstream representation of the current block in the video data into compound inter-intra-prediction (CIIP), diffusion filtering, bilateral filtering, transformation domain filtering, or diffusion filtering, by It involves performing by using at least one of lateral filtering, and another type of post-reconstruction filtering that is different from translation domain filtering (2405), where compound inter-intra prediction (CIIP),. The reconstructed neighborhood sample of the current block used in at least one of diffusion filtering, bilateral filtering, transformation domain filtering, or another type of post-reconstruction filtering is in one or more reference pictures. , Replaced by an approximate sample generated from the corresponding sample of the reconstructed neighborhood sample.
図25は、ビデオを処理する方法2500のためのフローチャートである。方法2500は、CIIPモードの複合インター‐イントラ予測(CIIP)フラグおよび/またはイントラモードを、動き情報とともに、履歴ベースの動きベクトル予測(history-based motion vector prediction、HMVP)テーブル内に記憶するステップ(2505)と;少なくとも該HMVPテーブルに基づいて、ビデオ・データ内の現在ブロックと該現在ブロックのビットストリーム表現との間の変換を実行するステップとを含む。 FIG. 25 is a flow chart for Method 2500 to process video. Method 2500 stores the CIIP mode's composite inter-intra-prediction (CIIP) flag and / or intra-mode, along with motion information, in a history-based motion vector prediction (HMVP) table. 2505) and; including performing a conversion between the current block in the video data and the bitstream representation of the current block, at least based on the HMVP table.
図26は、ビデオを処理する方法2600のためのフローチャートである。方法2600は、ビデオ・データにおける現在ブロックと該現在ブロックのビットストリーム表現との間の変換の間に、現在ブロックについての予測モードを判別するステップ(2605)と;現在ブロックが先進動きベクトル予測(AMVP)モードまたはマージ・モードでコーディングされるという判別に応答して、現在ブロックについてCIIPモードが有効であることを示す複合インター‐イントラ予測(CIIP)モードの適用可能性を決定するステップ(1610)と;CIIPモードの適用可能性に基づいて前記変換を実行するステップ(2615)とを含む。 FIG. 26 is a flowchart for the method 2600 for processing video. Method 2600 is a step (2605) of determining the prediction mode for the current block during the conversion between the current block and the bitstream representation of the current block in the video data; the current block is an advanced motion vector prediction (2605). Steps to determine the applicability of compound inter-intra-prediction (CIIP) mode, which indicates that CIIP mode is currently enabled for the block, in response to the determination that it is coded in AMVP) mode or merge mode (1610). And; including the step (2615) of performing the conversion based on the applicability of the CIIP mode.
図27は、ビデオを処理する方法2700のためのフローチャートである。方法2700は、ビデオ・データ内の現在ブロックと該現在ブロックのビットストリーム表現との間の変換の間に、現在ブロックのための選択されたマージ候補のタイプを判別するステップ(2705)と;選択されたマージ候補のタイプに応じて現在ブロックのための複合インター‐イントラ予測(CIIP)の適用可能性を決定するステップ(2710)とを含み、現在ブロックはマージ・モードでコーディングされる。 FIG. 27 is a flow chart for the method 2700 to process video. Method 2700 is a step (2705) of determining the type of selected merge candidate for the current block during the conversion between the current block in the video data and the bitstream representation of the current block; The current block is coded in merge mode, including step (2710) to determine the applicability of compound inter-intra prediction (CIIP) for the current block depending on the type of merge candidate made.
図28は、ビデオを処理する方法2800のためのフローチャートである。方法2800は、ビデオ・データ内の現在のビデオ・ブロックと現在のビデオ・ブロックのビットストリーム表現との間の変換中に、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックのCIIPフラグを参照することなく、コンテキスト・モデルに基づくコーディングによって、現在のビデオ・ブロックのための複合インター‐イントラ予測(CIIP)フラグをコーディングするステップ(2805)と;少なくとも現在のビデオ・ブロックの複合インター‐イントラ予測(CIIP)フラグを適用することによって、前記変換を実行するステップ(2810)とを含む。 FIG. 28 is a flow chart for the method 2800 to process video. Method 2800 is a CIIP flag for one or more neighboring video blocks to the current video block during conversion between the current video block in the video data and the bitstream representation of the current video block. Coding the Composite Inter-Intra Prediction (CIIP) flag for the current video block (2805) by coding based on the context model without reference to; at least the composite inter of the current video block. Includes step (2810) of performing the transformation by applying the Intra Prediction (CIIP) flag.
図29は、ビデオを処理する方法2900のためのフローチャートである。方法2900は、ビデオ・データ内の現在のビデオ・ブロックと現在のビデオ・ブロックのビットストリーム表現との間の変換中に、バイパスコーディングによって現在のビデオ・ブロックについての複合インター‐イントラ予測(CIPP)フラグをコーディングするステップ(2905)と;少なくとも複合インター‐イントラ予測(CIIP)フラグを適用することによって、前記変換を実行するステップ(2910)とを含む。 FIG. 29 is a flow chart for Method 2900 to process video. Method 2900 is a composite inter-intra prediction (CIPP) for the current video block by bypass coding during conversion between the current video block in the video data and the bitstream representation of the current video block. Includes a step of coding the flag (2905) and at least performing the transformation by applying the compound inter-intra prediction (CIIP) flag (2910).
図30は、ビデオを処理する方法3000のためのフローチャートである。方法3000は、規則に従ってビデオの第1のビデオ・ブロックのイントラ予測モードを決定するステップであって、該規則は:第1のビデオ・ブロックのイントラ予測モード導出プロセス中に、第1のビデオ・ブロックへの一つまたは複数の近傍ビデオ・ブロックの複合インター‐イントラ予測(CIIP)フラグをチェックすることをスキップすることを含む、ステップ(3005)と;少なくとも決定されたイントラ予測モードに基づいて、第1のビデオ・ブロックと第1のビデオ・ブロックのビットストリーム表現との間の変換を実行するステップ(3010)とを含む。 FIG. 30 is a flowchart for the method 3000 for processing video. Method 3000 is a step of determining the intra-prediction mode of the first video block of video according to a rule: the first video during the process of deriving the intra-prediction mode of the first video block. With step (3005), including skipping checking the compound inter-intra-prediction (CIIP) flag for one or more neighboring video blocks to the block; at least based on the determined intra-prediction mode. Includes a step (3010) of performing a conversion between the first video block and the bitstream representation of the first video block.
図31は、ビデオを処理する方法3100のためのフローチャートである。方法3100は、ビデオの、複合イントラおよびインター予測(CIIP)モードでコーディングされている現在のビデオ・ブロックと、現在のビデオ・ブロックのビットストリーム表現との間の変換中に、現在のビデオ・ブロックの第1の予測結果についての第1の重みおよび現在のビデオ・ブロックの第2の予測結果についての第2の重みを含む重みペアを、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックに基づいて決定するステップであって、前記第1の予測結果はイントラ予測モードによって生成され、前記第2の予測結果はインター予測モードによって生成される、ステップ(3105)と;前記第1の予測結果と前記第2の予測結果の重み付けされた和に基づいて、現在のブロックの予測結果を決定するステップ(3110)とを含む。 FIG. 31 is a flow chart for method 3100 to process video. Method 3100 is a video block during conversion between the current video block coded in compound intra and inter-predictive (CIIP) mode of the video and the bitstream representation of the current video block. A weight pair containing a first weight for the first prediction result of the current video block and a second weight for the second prediction result of the current video block for one or more neighboring video blocks to the current video block. The first prediction result is generated by the intra prediction mode, and the second prediction result is generated by the inter prediction mode, which is a step of determining based on the block (3105); It includes a step (3110) of determining the prediction result of the current block based on the weighted sum of the prediction result and the second prediction result.
方法2000および2100を参照するに、エンコードのための複合インター‐イントラ予測およびその使用のいくつかの例が、本稿のセクション4に記述されている。たとえば、セクション4に記載されているように、ビデオ・ブロックは、複合イントラ‐インター予測に従って使用して処理できる。 With reference to Methods 2000 and 2100, some examples of compound inter-intra prediction and its use for encoding are given in Section 4 of this article. For example, as described in Section 4, video blocks can be used and processed according to compound intra-inter predictions.
方法2000および2100を参照するに、ビデオ・ブロックは、ビットストリーム内にエンコードされてもよく、そこでは、複合イントラ‐インター予測に関連するビットストリーム生成規則を使用することによって、ビット効率が達成されうる。 Referring to methods 2000 and 2100, the video block may be encoded in a bitstream, where bitefficiency is achieved by using the bitstream generation rules associated with compound intra-interprediction. sell.
これらの方法は、前記一つまたは複数のフラグが、複合インター‐イントラ予測(CIIP)フラグ、局所照明補償(LIC)フラグ、拡散フィルタリング・フラグ、バイラテラルフィルタリング・フラグ、変換ドメインフィルタ・フラグ、または別のタイプの再構成後フィルタ・フラグを含む、ことを含むことができる。 In these methods, the one or more flags are compound inter-intra prediction (CIIP) flag, local lighting compensation (LIC) flag, diffuse filtering flag, bilateral filtering flag, conversion domain filter flag, or It can include, including another type of post-reconstruction filter flag.
これらの方法は、前記一つまたは複数のフラグが、第1の動作に関連する第1のフラグを含み、前記第1のフラグが偽であると導出され、前記第1の動作が適用されないことを含むことができる。 In these methods, the one or more flags include the first flag associated with the first action, the first flag is derived to be false, and the first action does not apply. Can be included.
これらの方法は、前記第1の動作の使用がスキップされることが信号伝達されることを含むことができる。 These methods can include signaling that the use of said first operation is skipped.
これらの方法は、前記第1の動作の使用が、準拠ビットストリームにおいて偽であるように制約されるように信号伝達されることを含むことができる。 These methods can include signaling such that the use of the first operation is constrained to be false in the conforming bitstream.
これらの方法は、第1のビデオ・ブロックが第2のビデオ・ブロックに関して近傍の行または列内にあることを含むことができる。 These methods can include the first video block being in a nearby row or column with respect to the second video block.
これらの方法は、近傍の行が上の行または右上の行を含むことを含むことができる。 These methods can include a nearby row containing an upper row or an upper right row.
これらの方法は、近傍の列が、左の列、左下の列、または左上のコーナー列を含むことを含むことができる。 These methods can include neighboring columns including a left column, a lower left column, or an upper left corner column.
これらの方法は、コーディングモードがイントラモード、CIIPモード、またはCPRモードを含むことを含むことができる。 These methods can include coding modes including intra mode, CIIP mode, or CPR mode.
これらの方法は、第2のビデオ・ブロックの位置を決定することを含むことができ、前記一つまたは複数のフラグを偽状態に制約することは、第2のビデオ・ブロックの位置の決定にも基づく。 These methods can include determining the position of the second video block, and constraining the one or more flags to a false state is responsible for determining the position of the second video block. Also based on.
これらの方法は、前記位置が現在のコーディングツリー単位(CTU)のいちばん上にあり、前記第2のビデオ・ブロックの上の近傍ブロックが異なるCTU内にあることを含むことができる。 These methods can include that the location is at the top of the current coding tree unit (CTU) and the neighboring blocks above the second video block are in different CTUs.
これらの方法は、前記位置が現在のコーディングツリー単位(CTU)の左端にあり、第2のビデオ・ブロックの左の近傍ブロックが異なるCTU内にあることを含むことができる。 These methods can include that the location is at the left edge of the current coding tree unit (CTU) and the left neighborhood block of the second video block is in a different CTU.
これらの方法は、前記一つまたは複数のフラグがCIIPフラグまたはCIIPモード・フラグのイントラモードを含み、前記一つまたは複数のフラグに関連するデータが履歴ベースの動きベクトル予測(HMVP)テーブル内の動き情報とともに格納されることを含むことができる。 In these methods, the one or more flags include the intramode of the CIIP flag or the CIIP mode flag, and the data related to the one or more flags are in the history-based motion vector prediction (HMVP) table. It can include being stored with motion information.
これらの方法は、2つの候補の動き情報を比較することを含むことができ、前記CIIPフラグまたは前記イントラモードCIIPモード・フラグは、動き情報の比較においては使用されない。 These methods can include comparing the motion information of two candidates, the CIIP flag or the intramode CIIP mode flag is not used in the motion information comparison.
これらの方法は、2つの候補の動き情報を比較することを含むことができ、前記CIIPフラグまたは前記イントラモードCIIPモード・フラグは、動き情報の比較において使用される。 These methods can include comparing the motion information of two candidates, the CIIP flag or the intramode CIIP mode flag being used in the comparison of motion information.
これらの方法は、マージ候補がHMVPテーブル内のエントリーからのものであることを決定することと、前記エントリーのCIIPフラグを前記マージ候補にコピーすることとを含むことができる。 These methods can include determining that the merge candidate is from an entry in the HMVP table and copying the CIIP flag of the entry to the merge candidate.
これらの方法は、マージ候補がHMVPテーブル内のエントリーからのものであることを決定することと、前記エントリーのCIIPフラグおよびイントラモードを前記マージ候補にコピーすることとを含むことができる。 These methods can include determining that the merge candidate is from an entry in the HMVP table and copying the CIIP flag and intramode of the entry to the merge candidate.
これらの方法は、前記一つまたは複数のフラグのうちのあるフラグがCIIPに関係しており、前記CIIPが先進動きベクトル予測(AMVP)のために実行される、ことを含むことができる。 These methods can include that one of the flags is related to CIIP and that CIIP is performed for Advanced Motion Vector Prediction (AMVP).
これらの方法は、CIIPフラグおよびイントラモード・フラグがAMVPモードのために信号伝達されることを含むことができる。 These methods can include signaling the CIIP flag and the intramode flag for AMVP mode.
これらの方法は、CIIPフラグがマージ・モードまたはUMVEモードにおいて継承され、前記CIIPフラグが真という動作状態を含み、CIIPにおいて複数のイントラモードが許容され、CIIPにおいて許容される前記複数のイントラモードに基づいてイントラモードが信号伝達されることを含むことができる。 These methods include the operating state in which the CIIP flag is inherited in merge mode or UMVE mode and the CIIP flag is true, multiple intramodes are allowed in CIIP, and the multiple intramodes allowed in CIIP. Intramode can include signal transduction based on.
これらの方法は、マージ・モードまたはUMVEモードにおける近傍のまたは隣接しないビデオ・ブロックのCIIPフラグおよびイントラモードが、第2のビデオ・ブロックによって継承されることを含むことができる。 These methods can include the CIIP flags and intramodes of nearby or non-adjacent video blocks in merge mode or UMVE mode being inherited by the second video block.
これらの方法は、スキップ・モードについてCIIPが無効にされることを含むことができる。 These methods can include disabling CIIP for skip mode.
これらの方法は、2つの候補に関係した情報を比較することを含むことができ、CIIPフラグまたはイントラモードCIIPモード・フラグは、情報の比較において使用されない。 These methods can include comparing information related to the two candidates, and the CIIP flag or intramode CIIP mode flag is not used in the comparison of information.
これらの方法は、2つの候補に関係した情報を比較することを含むことができ、CIIPフラグまたはイントラモードCIIPモード・フラグは、情報の比較において使用される。 These methods can include comparing information related to the two candidates, and the CIIP flag or the intramode CIIP mode flag is used in the comparison of information.
これらの方法は、ペア毎予測または複合双予測に関与する一つまたは複数の候補がCIIP予測を採用し、前記動作状態が有効にされることを含むことができる。 These methods can include one or more candidates involved in pair-by-pair or compound bi-prediction adopting CIIP prediction and enabling said operational state.
これらの方法は、2つの候補のうちの一方のイントラモードが継承されることを含むことができる。 These methods can include inheriting the intramode of one of the two candidates.
これらの方法は、イントラモードが信号伝達されることを含むことができる。 These methods can include signal transduction of intramode.
これらの方法は、2つの候補がペア毎予測または複合双予測に関与することを含むことができる。 These methods can include two candidates involved in pair-by-pair or compound bi-prediction.
これらの方法は、CIIPモード、拡散フィルタ、バイラテラルフィルタ、変換ドメインフィルタ、または他のタイプの再構成後フィルタにおいて使用される再構成されたサンプルが、参照ピクチャー内のサンプルによって置き換えられることを含むことができる。 These methods include replacing the reconstructed sample used in CIIP mode, diffusion filter, bilateral filter, transformation domain filter, or other type of post-reconstruction filter with the sample in the reference picture. be able to.
これらの方法は、第2のビデオ・ブロックが双予測され、2つの参照ブロックの近傍サンプルが平均されて最終的な近傍サンプルを生成することを含むことができる。 These methods can include bipredicting the second video block and averaging the neighborhood samples of the two reference blocks to produce the final neighborhood sample.
これらの方法は、第2のビデオ・ブロックが双予測され、2つの参照ブロックの近傍サンプルが最終的な近傍サンプルとして使用されることを含むことができる。 These methods can include bipredicting the second video block and using the neighborhood sample of the two reference blocks as the final neighborhood sample.
これらの方法は、第2のビデオ・ブロックが双予測され、2つの参照ブロックの近傍サンプルが、不均等重みの一般化された双予測(GBI)に基づいて重み付け平均されて、最終的な近傍サンプルを生成する、または重み付けされた予測LICが第2のビデオ・ブロックに適用される、ことを含むことができる。 In these methods, the second video block is bi-predicted, and the neighborhood samples of the two reference blocks are weighted and averaged based on the generalized bi-prediction (GBI) of unequal weights to achieve the final neighborhood. It can include generating a sample or applying a weighted predictive LIC to a second video block.
これらの方法は、参照ピクチャー内のサンプルが第2のビデオ・ブロックの動き情報によって識別されることを含むことができる。 These methods can include identifying the sample in the reference picture by the motion information of the second video block.
これらの方法は、参照ピクチャー内のサンプルが第2のビデオ・ブロックの動き情報によって識別されることを含むことができる。 These methods can include identifying the sample in the reference picture by the motion information of the second video block.
これらの方法は、動きベクトルが整数精度に丸められ、サンプルを識別するために使用される、ことを含むことができる。 These methods can include that the motion vector is rounded to integer precision and used to identify the sample.
これらの方法は、サンプルが整数画素精度の動きベクトルによって識別される参照ピクチャー中にあることを含むことができる。 These methods can include the sample being in a reference picture identified by a motion vector with integer pixel precision.
これらの方法は、第2のビデオ・ブロックの特徴を決定することを含むことができ、前記特徴は、ブロックサイズ、スライスタイプ、ピクチャータイプ、タイル・タイプ、または動き情報のうちの一つまたは複数を含み、前記動作状態を制約することは、前記特徴の決定に基づく。 These methods can include determining the characteristics of a second video block, said characteristics being one or more of block size, slice type, picture type, tile type, or motion information. Including, and constraining the operating state is based on the determination of the features.
これらの方法は、シーケンスパラメータセット(SPS)、ビューパラメータセット(VPS)、ピクチャーパラメータセット(PPS)、シーケンスヘッダ、ピクチャーヘッダ、スライスヘッダ、タイルグループヘッダ、タイル、またはCTUのグループ内で前記方法が信号伝達されることが含むことができる。 These methods are within a group of sequence parameter sets (SPS), view parameter sets (VPS), picture parameter sets (PPS), sequence headers, picture headers, slice headers, tile group headers, tiles, or CTUs. Signal transmission can include.
以下の解決策のリストは、前のセクションにおいてリストされた項目(たとえば、項目11~16)に対する実施形態および変形をさらに提供する。 The following list of solutions provides further embodiments and variants for the items listed in the previous section (eg, items 11-16).
40.ビデオのビデオ・ブロックと前記ビデオ・ブロックのコーディングされた表現との間の変換を、複合イントラおよびインター予測モードを用いて実行することを含む、ビデオ処理の方法であって、前記コーディングされた表現は、3つ未満のペアが含まれる重みペアの集合からの重みペアを用いた、前記ビデオ・ブロックのイントラ予測結果とインター予測結果の重み付けされた平均に対応する、方法。 40. A method of video processing comprising performing a conversion between a video block of a video and a coded representation of the video block using composite intra and interpredictive modes, said coding representation. Corresponds to the weighted average of the intra-prediction and inter-prediction results of the video block, using weight pairs from a set of weight pairs containing less than three pairs.
41.前記重みペアの集合は、2対に対応する、解決策40に記載の方法。 41. The method of solution 40, wherein the set of weight pairs corresponds to two pairs.
42.前記重みペアが単一の近傍ブロックに基づいて決定される、解決策40ないし41のいずれかの方法。 42. The method of any of solutions 40 to 41, wherein the weight pair is determined based on a single neighborhood block.
43.前記重みペアが複数の近傍ブロックに基づいて決定される、解決策40ないし41のいずれかの方法。 43. The method of any of solutions 40 to 41, wherein the weight pair is determined based on a plurality of neighboring blocks.
44.前記重みペアの集合は、ちょうど1対を含む、解決策40に記載の方法。 44. The method of solution 40, wherein the set of weight pairs comprises exactly one pair.
45.前記1対が、(1,3)または(2,2)または(1,7)または(2,6)または(3,5)または(4,4)のうちの1つである、解決策44に記載の方法。 45. The solution, wherein the pair is one of (1,3) or (2,2) or (1,7) or (2,6) or (3,5) or (4,4). 44.
46.ビデオのビデオ・ブロックと前記ビデオ・ブロックのコーディングされた表現との間の変換を、複合イントラおよびインター予測モードを用いて実行することを含む、ビデオ処理の方法であって、前記コーディングされた表現は、一つまたは複数の近傍ブロックのコーディング情報により決定された重みペアの集合からの重みペアを用いた、前記ビデオ・ブロックのイントラ予測結果およびインター予測結果の重み付け平均に対応する、方法。 46. A method of video processing comprising performing a conversion between a video block of a video and a coded representation of the video block using composite intra and interpredictive modes, said coding representation. Is a method corresponding to a weighted average of an intra-prediction result and an inter-prediction result of the video block using weight pairs from a set of weight pairs determined by coding information of one or more neighboring blocks.
47.前記重みペアの集合は、ちょうど1つの近傍ブロックにより決定される、解決策46に記載の方法。 47. The method of solution 46, wherein the set of weight pairs is determined by just one neighborhood block.
48.前記重みペアの集合は、2つ以上の近傍ブロックにより決定される、解決策46に記載の方法。 48. 46. The method of solution 46, wherein the set of weight pairs is determined by two or more neighboring blocks.
49.前記変換が、前記コーディングされた表現を生成するために前記ビデオをエンコードすることを含む、解決策40ないし48のいずれかの方法。 49. The method of any of solutions 40-48, wherein the conversion comprises encoding the video to produce the coded representation.
50.前記変換が、前記ビデオを生成するために、前記コーディングされた表現をデコードすることを含む、解決策40ないし48のいずれかの方法。 50. The method of any of solutions 40-48, wherein the conversion comprises decoding the coded representation to produce the video.
これらの方法のさまざまな他の実施形態および追加的な特徴は、以下の条項ベースの記載を用いて記述できる。 Various other embodiments and additional features of these methods can be described using the clause-based description below.
1.ビデオを処理するための方法であって:
ビデオ・データ内の第1のブロックと該第1のブロックのビットストリーム表現との間の変換中に、一つまたは複数の第2のブロックの一つまたは複数のコーディングモードを決定するステップと;
前記一つまたは複数の第2のブロックの前記一つまたは複数のコーディングモードに基づいて、前記第1のブロックのコーディングモード制約を決定するステップと;
少なくとも前記第1ブロックの前記コーディングモード制約を適用することによって、前記変換を実行するステップとを含み、
前記一つまたは複数の第2のブロックは、前記第1のブロックの隣接するブロック、隣接しないブロック、および参照ブロックのうちの少なくとも1つを含む、
方法。
1. 1. A way to process video:
With the step of determining one or more coding modes of one or more second blocks during the conversion between the first block in the video data and the bitstream representation of the first block;
With the step of determining the coding mode constraint of the first block based on the coding mode of the one or more second blocks;
Including the step of performing the transformation by applying the coding mode constraint of at least the first block.
The one or more second blocks include at least one of adjacent blocks, non-adjacent blocks, and reference blocks of the first block.
Method.
2.前記第1のブロックのコーディングモード制約を決定することが:
前記一つまたは複数の第2のブロックの前記一つまたは複数のコーディングモードに基づいて、それぞれ前記第1のブロックの一つまたは複数のコーディングモードに対応する一つまたは複数のフラグを決定することを含む、
条項1に記載の方法。
2. 2. Determining the coding mode constraint for the first block:
Determining one or more flags corresponding to one or more coding modes of the first block, respectively, based on the one or more coding modes of the one or more second blocks. including,
The method described in Clause 1.
3.前記一つまたは複数のコーディングモードが:
複合インター‐イントラ予測(CIIP)モード、局所照明補償(LIC)モード、拡散フィルタリングモード、バイラテラルフィルタリングモード、変換ドメインフィルタリングモード、または拡散フィルタリングモード、バイラテラルフィルタリングモード、および変換ドメインフィルタリングモードとは異なる再構成後フィルタリングモードを含む、
条項2に記載の方法。
3. 3. The one or more coding modes mentioned above:
Different from Composite Inter-Intra Prediction (CIIP) mode, Local Lighting Compensation (LIC) mode, Diffuse Filtering Mode, Bilateral Filtering Mode, Transformed Domain Filtering Mode, or Diffuse Filtering Mode, Bilingual Filtering Mode, and Transformed Domain Filtering Mode Including post-reconstruction filtering mode,
The method described in Clause 2.
4.前記第1ブロックの前記コーディングモード制約が:
前記第1のブロックの前記一つまたは複数のコーディングモードのうちの第1のコーディングモードは、前記第1のコーディングモードに対応する第1のフラグが偽であると導出された場合は無効にされることを含む、
条項2ないし3のうちいずれか一項に記載の方法。
4. The coding mode constraint of the first block is:
The first coding mode of the one or more coding modes of the first block is invalidated if the first flag corresponding to the first coding mode is derived to be false. Including that
The method described in any one of Articles 2 to 3.
5.前記第1ブロックの前記コーディングモード制約が:
前記第1ブロックの前記一つまたは複数のコーディングモードのうちの第2のコーディングモードが有効にされるか否かを示す情報は、前記第2のコーディングモードに対応する第2のフラグが偽であると導出された場合には信号伝達されないことを含む、
条項2ないし4のうちいずれか一項に記載の方法。
5. The coding mode constraint of the first block is:
The information indicating whether or not the second coding mode of the one or more coding modes in the first block is enabled is false in the second flag corresponding to the second coding mode. Including that no signal is transmitted if it is derived to be
The method described in any one of Articles 2 to 4.
6.前記第1ブロックの前記コーディングモード制約は:
前記第1のブロックの前記一つまたは複数のコーディングモードのうちの第3のコーディングモードが有効にされるか否かを示す情報は、前記第3のコーディングモードに対応する第3のフラグが偽であると導出されたときは、信号伝達され、準拠ビットストリーム(conformance bitstream)において偽であるように制約される、
条項2ないし5のうちいずれか一項に記載の方法。
6. The coding mode constraint of the first block is:
Information indicating whether or not the third coding mode of the one or more coding modes of the first block is enabled is false in the third flag corresponding to the third coding mode. When derived to be, it is signaled and constrained to be false in the conformance bitstream.
The method described in any one of Articles 2 to 5.
7.前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定するステップをさらに含む、
条項1ないし6のうちいずれか一項に記載の方法。
7. Further including a step of determining whether to apply the coding mode constraint of the first block.
The method described in any one of Articles 1 to 6.
8.前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することが:
前記第1のブロックの近傍の行または列のコーディングモードに従って前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することを含む、
条項7に記載の方法。
8. Determining whether to apply the coding mode constraint of the first block:
Including determining whether to apply the coding mode constraint of the first block according to the row or column coding mode in the vicinity of the first block.
The method described in Clause 7.
9.前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することが:
前記第1のブロックの近傍の行または近傍の列における、第4のモードでコーディングされていない少なくともN個のサンプルに基づいて、前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することを含む、
条項7に記載の方法。
9. Determining whether to apply the coding mode constraint of the first block:
Determines whether to apply the coding mode constraint of the first block based on at least N samples not coded in the fourth mode in the rows or columns in the vicinity of the first block. Including doing,
The method described in Clause 7.
10.前記近傍の行は、前記第1のブロックの上の行および右上の行を含む、条項8または9に記載の方法。 10. The method of clause 8 or 9, wherein the neighborhood row includes a row above the first block and a row in the upper right corner.
11.前記近傍の列が、前記第1のブロックの左の列、左下の列、および左上のコーナー列を含む、条項8ないし10のうちいずれか一項に記載の方法。 11. The method of any one of clauses 8-10, wherein the neighborhood column comprises a left column, a lower left column, and an upper left corner column of the first block.
12.前記第1ブロックの前記コーディングモード制約を適用するかどうかを決定することが:
いずれかの近傍の隣接しないブロックが第4のモードでコーディングされる場合、前記第1のブロックの前記コーディングモード制約が適用されると決定することを含む、
条項7ないし11のうちいずれか一項に記載の方法。
12. Determining whether to apply the coding mode constraint of the first block:
If any non-adjacent block in the vicinity is coded in the fourth mode, it involves determining that the coding mode constraint of the first block applies.
The method according to any one of Articles 7 to 11.
13.前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することが:
近傍の隣接しないブロックの全部が第4のモードでコーディングされる場合、前記第1のブロックの前記コーディングモード制約が適用されると決定することを含む、
条項7ないし11のうちいずれか一項に記載の方法。
13. Determining whether to apply the coding mode constraint of the first block:
If all of the non-adjacent blocks in the neighborhood are coded in the fourth mode, it involves determining that the coding mode constraint of the first block applies.
The method according to any one of Articles 7 to 11.
14.前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することが:
少なくともM個の近傍の隣接しないブロックが第4のモードでコーディングされておらず、Mがあらかじめ定義された第1の閾値である場合、前記第1のブロックの前記コーディングモード制約を適用されないと決定することを含む、
条項7ないし11のうちいずれか一項に記載の方法。
14. Determining whether to apply the coding mode constraint of the first block:
If at least M non-adjacent blocks in the vicinity are not coded in the fourth mode and M is a predefined first threshold, it is determined that the coding mode constraint of the first block does not apply. Including doing,
The method according to any one of Articles 7 to 11.
15.前記第4のコーディングモードが、イントラ予測モード、複合インター‐イントラ予測(CIIP)モード、および現在のピクチャー参照(current picture referencing、CPR)モードのうちの少なくとも1つを含む、条項9ないし14のうちいずれか一項に記載の方法。 15. Of clauses 9-14, the fourth coding mode comprises at least one of an intra-prediction mode, a combined inter-intra-intra-prediction (CIIP) mode, and a current picture referencing (CPR) mode. The method described in any one of the items.
16.前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することが:
前記第1のブロックの位置に従って前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することを含む、
条項7ないし14のうちいずれか一項に記載の方法。
16. Determining whether to apply the coding mode constraint of the first block:
Including determining whether to apply the coding mode constraint of the first block according to the position of the first block.
The method described in any one of Articles 7 to 14.
17.前記第1のブロックの位置に従って前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することが:
前記位置が現在のコーディングツリー単位(CTU)のいちばん上にあり、上の近傍ブロックと前記第1のブロックが異なるCTUに属する場合には、前記第1のブロックの前記コーディングモード制約は適用されないと決定される、
条項16に記載の方法。
17. Determining whether to apply the coding mode constraint of the first block according to the position of the first block:
If the location is at the top of the current coding tree unit (CTU) and the neighboring block above and the first block belong to different CTUs, then the coding mode constraint of the first block does not apply. It is determined,
The method described in clause 16.
18.前記第1のブロックの位置に従って前記第1のブロックの前記コーディングモード制約を適用するかどうかを決定することは:
前記位置が現在のコーディングツリー単位(CTU)の左にあり、左の近傍ブロックと前記第1ブロックが異なるCTUに属する場合には、前記第1ブロックの前記コーディングモード制約は適用されないと決定することを含む、
条項16に記載の方法。
18. Determining whether to apply the coding mode constraint of the first block according to the position of the first block is:
If the position is to the left of the current coding tree unit (CTU) and the left neighborhood block and the first block belong to different CTUs, it is determined that the coding mode constraint of the first block does not apply. including,
The method described in clause 16.
19.
現在ブロックの特徴を決定し;
現在ブロックの特徴があらかじめ定義された条件を満たす場合に、現在ブロックの前記コーディングモード制約を適用すると決定することをさらに含む、
条項1ないし18のうちいずれか一項に記載の方法。
19.
Currently determining the characteristics of the block;
Further comprising determining to apply the coding mode constraint of the current block if the characteristics of the current block meet the predefined conditions.
The method described in any one of Articles 1 to 18.
20.
現在ブロックおよび/または以前にコーディングされたブロックの特徴を決定し;
現在ブロックおよび/または以前にコーディングされたブロックの特徴に応じて現在ブロックの前記コーディングモード制約を適用するかどうかを決定することをさらに含む、
条項1ないし18のうちいずれか一項に記載の方法。
20.
Determine the characteristics of the current block and / or the previously coded block;
Further comprising determining whether to apply the coding mode constraint of the current block depending on the characteristics of the current block and / or the previously coded block.
The method described in any one of Articles 1 to 18.
21.ビデオを処理するための方法であって:
ビデオ・データにおける現在ブロックと現在ブロックのビットストリーム表現との間の変換を、複合インター‐イントラ予測(CIIP)、拡散フィルタリング、バイラテラルフィルタリング、変換ドメインフィルタリング、または拡散フィルタリング、バイラテラルフィルタリング、および変換ドメインフィルタリングとは異なる別のタイプの再構成後フィルタリングのうちの少なくとも1つを使用して実行することを含み、
複合インター‐イントラ予測(CIIP)、拡散フィルタリング、バイラテラルフィルタリング、変換ドメインフィルタリング、または前記別のタイプの再構成後フィルタリングのうちの少なくとも1つにおいて使用される現在ブロックの再構成された近傍サンプルは、一つまたは複数の参照ピクチャーにおける該再構成された近傍サンプルの対応するサンプルから生成された近似サンプルによって置き換えられる、
方法。
21. A way to process video:
The conversion between the current block and the bitstream representation of the current block in the video data is compound inter-intra-prediction (CIIP), diffusion filtering, bilateral filtering, transformation domain filtering, or diffusion filtering, bilateral filtering, and transformation. Including performing using at least one of the different types of post-reconstruction filtering that is different from domain filtering,
The reconstructed neighborhood sample of the current block used in at least one of compound inter-intra-prediction (CIIP), diffusion filtering, bilateral filtering, transformation domain filtering, or the other type of post-reconstruction filtering is , Replaced by an approximate sample generated from the corresponding sample of the reconstructed neighborhood sample in one or more reference pictures.
Method.
22.現在ブロックが双予測されるとき、現在ブロックの2つの参照ブロックの近傍サンプルが平均されて前記近似サンプルを生成する、条項21に記載の方法。 22. 21. The method of clause 21, wherein when the current block is bi-predicted, the neighboring samples of the two reference blocks of the current block are averaged to produce the approximate sample.
23.現在ブロックが双予測または単予測されるとき、現在ブロックの1つの参照ブロックの近傍サンプルが前記近似サンプルとして使用される、条項21に記載の方法。 23. 21. The method of clause 21, wherein when the current block is bi-predicted or uni-predicted, a neighbor sample of one reference block of the current block is used as the approximation sample.
24.現在ブロックが双予測され、不等重みの一般化双予測(GBI)、重み付けされた予測および局所照明補償(LIC)のうちの少なくとも1つが現在ブロックに適用される場合、現在ブロックの2つの参照ブロックの近傍サンプルが重み付け平均されてる、条項21に記載の方法。 24. Two references to the current block if the current block is bi-predicted and at least one of unequal weight generalization bi-prediction (GBI), weighted prediction and local lighting compensation (LIC) is applied to the current block. The method of clause 21, wherein the block neighborhood samples are weighted and averaged.
25.現在ブロックの参照ブロックの近傍サンプルが、現在ブロックの動き情報によって識別される、条項22ないし24のうちいずれか一項に記載の方法。 25. The method according to any one of clauses 22 to 24, wherein the neighborhood sample of the reference block of the current block is identified by the motion information of the current block.
26.現在ブロックの参照ブロックの近傍サンプルが、現在ブロックの修正された動き情報によって識別される、条項22ないし24のうちいずれか一項に記載の方法。 26. The method of any one of clauses 22-24, wherein the neighborhood sample of the reference block of the current block is identified by the modified motion information of the current block.
27.現在ブロックの前記修正された動き情報は、整数精度に丸められた修正された動きベクトルである、条項24に記載の方法。 27. The method of clause 24, wherein the modified motion information of the current block is a modified motion vector rounded to integer precision.
28.現在ブロックの前記参照ブロックの前記近傍サンプルは、動きベクトルによって整数画素精度で識別される、条項21に記載の方法。 28. 21. The method of clause 21, wherein the neighborhood sample of the reference block of the current block is identified by a motion vector with integer pixel accuracy.
29.前記再構成された近傍サンプルの動きベクトルは、対応するサンプルを識別するために整数精度に丸められる、条項28に記載の方法。 29. 28. The method of clause 28, wherein the motion vector of the reconstructed neighborhood sample is rounded to integer precision to identify the corresponding sample.
30.現在ブロックが整数画素精度でコーディングされている場合にのみ、現在ブロックの再構成された近傍サンプルが前記近似サンプルによって置き換えられる、条項21ないし29のうちいずれか一項に記載の方法。 30. The method of any one of clauses 21-29, wherein the reconstructed neighborhood sample of the current block is replaced by the approximate sample only if the current block is coded with integer pixel precision.
31.現在ブロックの再構成された近傍サンプルが、ルーマ成分またはクロマ成分のみについて前記近似サンプルによって置き換えられる、条項21ないし30のうちいずれか一項に記載の方法。 31. The method of any one of clauses 21-30, wherein the reconstructed neighborhood sample of the current block is replaced by the approximation sample for only the luma or chroma component.
32.
現在ブロックの特徴を決定し;
現在ブロックの前記特徴があらかじめ定義された条件を満たす場合に、前記再構成された近傍サンプルを前記近似サンプルで置き換えることを決定することをさらに含む、
条項19ないし31のうちいずれか一項に記載の方法。
32.
Currently determining the characteristics of the block;
Further comprising deciding to replace the reconstructed neighborhood sample with the approximate sample if the feature of the current block meets a predefined condition.
The method according to any one of Articles 19 to 31.
33.現在ブロックの前記特徴は、ブロックサイズ、スライスタイプ、ピクチャータイプ、タイル・タイプ、および動き情報のうちの少なくとも1つを含む、条項19または32に記載の方法。 33. The method of clause 19 or 32, wherein said feature of the current block comprises at least one of block size, slice type, picture type, tile type, and motion information.
34.前記あらかじめ定義された条件は、現在ブロックがあらかじめ定義された第2の閾値よりも小さくないサンプルを含むことである、条項33に記載の方法。 34. The method of clause 33, wherein the predefined condition is that the current block contains a sample that is not less than a predefined second threshold.
35.前記あらかじめ定義された条件は、現在ブロックの幅および高さが、あらかじめ定義された第3の閾値より大きいことである、条項33に記載の方法。 35. The method of clause 33, wherein the predefined condition is that the width and height of the current block is greater than the predefined third threshold.
36.前記あらかじめ定義された条件は、前記現在ブロックの幅および高さがあらかじめ定義された第4の閾値よりも小さいことである、条項33に記載の方法。 36. 33. The method of clause 33, wherein the predefined condition is that the width and height of the current block is less than a predefined fourth threshold.
37.前記あらかじめ定義された条件は、前記現在ブロックの幅があらかじめ定義された第5の閾値よりも小さい、および/または現在ブロックの高さがあらかじめ定義された第6の閾値よりも小さいことである、条項33に記載の方法。 37. The predefined condition is that the width of the current block is less than the predefined fifth threshold and / or the height of the current block is less than the predefined sixth threshold. The method described in clause 33.
38.前記あらかじめ定義された条件は、現在ブロックの幅があらかじめ定義された第7の閾値より大きい、および/または現在ブロックの高さがあらかじめ定義された第8の閾値より大きいことである、条項33に記載の方法。 38. The predefined condition is in clause 33 that the width of the current block is greater than the predefined seventh threshold and / or the height of the current block is greater than the predefined eighth threshold. The method described.
39.シーケンスパラメータセット(SPS)、ビューパラメータセット(VPS)、ピクチャーパラメータセット(PPS)、シーケンスヘッダ、ピクチャーヘッダ、スライスヘッダ、タイルグループヘッダ、タイル、またはCTUのグループにおける、現在ブロックのコーディングモード制約を適用するかどうか、および/または、再構成された近傍サンプルを近似サンプルで置き換えるかどうかを示す情報は、信号伝達される、
条項38に記載の方法。
39. Apply the coding mode constraint for the current block in a group of sequence parameter sets (SPS), view parameter sets (VPS), picture parameter sets (PPS), sequence headers, picture headers, slice headers, tile group headers, tiles, or CTUs. Information indicating whether to do so and / or whether to replace the reconstructed neighbor sample with an approximate sample is signaled.
The method described in clause 38.
40.
現在ブロックおよび/または以前にコーディングされたブロックの特徴を決定し;
現在ブロックおよび/または以前にコーディングされたブロックの特徴に応じて、再構成された近傍サンプルを近似サンプルで置き換えるかどうかを決定することをさらに含む、
条項21ないし39のうちいずれか一項に記載の方法。
40.
Determine the characteristics of the current block and / or the previously coded block;
Further including deciding whether to replace the reconstructed neighborhood sample with an approximate sample, depending on the characteristics of the current block and / or the previously coded block.
The method according to any one of Articles 21 to 39.
41.現在ブロックおよび/または以前にコーディングされたブロックの前記特徴は、現在ブロックおよび/または以前にコーディングされたブロックのブロック寸法、ビデオ処理データ単位(VPDU)、ピクチャータイプ、低遅延チェック・フラグ、コーディング情報のうちの少なくとも1つを含む、条項20または40に記載の方法。 41. The features of the current block and / or the previously coded block are the block dimensions of the current block and / or the previously coded block, video processing data unit (VPDU), picture type, low latency check flag, coding information. The method according to clause 20 or 40, comprising at least one of.
42.現在ブロックおよび/または以前にコーディングされたブロックの前記コーディング情報が、参照ピクチャー、単予測、または双予測を示す、条項41に記載の方法。 42. 31. The method of clause 41, wherein the coding information of the current block and / or the previously coded block indicates a reference picture, a simple prediction, or a bi-prediction.
43.条項1ないし42のうちいずれか一項に記載の方法を実装するように構成されたプロセッサを含む、ビデオ処理装置。 43. A video processing device comprising a processor configured to implement the method according to any one of clauses 1-42.
44.当該装置がビデオ・エンコーダである、条項43に記載の装置。 44. The device according to clause 43, wherein the device is a video encoder.
45.当該装置がビデオ・デコーダである、条項43に記載の装置。 45. The device according to clause 43, wherein the device is a video decoder.
46.コードを含むプログラムが記録されているコンピュータ読み取り可能な記録媒体であって、前記プログラムは、プロセッサが、条項1ないし42のうちいずれか一項に記載の方法を実行するためのものである、媒体。 46. A computer-readable recording medium on which a program containing the code is recorded, wherein the program is for the processor to perform the method according to any one of clauses 1-42. ..
これらの方法のさまざまな他の実施形態および追加的な特徴は、以下の条項ベースの記載を用いて記載することができる。
〔条項1〕
ビデオを処理するための方法であって:
CIIPモードの複合インター‐イントラ予測(CIIP)フラグおよび/またはイントラモードを動き情報とともに履歴ベースの動きベクトル予測(HMVP)テーブルに記憶するステップと;
少なくとも前記HMVPテーブルに基づいて、ビデオ・データ中の現在ブロックと該現在ブロックのビットストリーム表現との間の変換を実行するステップとを含む、
方法。
〔条項2〕
2つの候補の動き情報を比較するステップをさらに含み、
前記CIIPモードの前記CIIPフラグおよび/または前記イントラモードは、2つの候補の動き情報の前記比較において使用されない、
条項1に記載の方法。
〔条項3〕
2つの候補の動き情報を比較するステップをさらに含み、
前記CIIPモードの前記CIIPフラグおよび/または前記イントラモードは、2つの候補の動き情報の前記比較において使用される、
条項1に記載の方法。
〔条項4〕
前記実行するステップが:
マージ候補が前記HMVPテーブル内のエントリーからである場合、該エントリーの前記CIIPフラグを前記マージ候補にコピーすることを含む、
条項1ないし3のうちいずれか一項に記載の方法。
〔条項5〕
前記実行するステップが:
マージ候補が前記HMVPテーブル内のエントリーからである場合、該エントリーの前記CIIPフラグおよび前記イントラモードを前記マージ候補にコピーすることを含む、
条項1ないし3のうちいずれか一項に記載の方法。
〔条項6〕
ビデオを処理するための方法であって:
ビデオ・データ中の現在ブロックと現在ブロックのビットストリーム表現との間の変換中に、現在ブロックの予測モードを判別するステップと;
現在ブロックが先進動きベクトル予測(AMVP)モードまたはマージ・モードでコーディングされているとの判別に応答して、現在ブロックについてCIIPモードが有効にされることを示す複合インター‐イントラ予測(CIIP)モードの適用可能性を判断するステップと;
前記CIIPモードの前記適用可能性に基づいて前記変換を実行するステップとを含む、
方法。
〔条項7〕
現在ブロックが前記AMVPモードでコーディングされる場合、前記CIIPモードのCIIPフラグおよび/またはイントラモードが信号伝達される、条項6に記載の方法。
〔条項8〕
現在ブロックのマージ・モードおよび/または動きベクトル差分のあるマージ(MMVD)モードにおいては、隣接する近傍ブロックおよび/または隣接しない近傍ブロックのCIIPモードのCIIPフラグおよび/またはイントラモードが継承される、条項6または7に記載の方法。
〔条項9〕
非スキップ・マージ・モードおよび/または非スキップMMVDモードについてのCIIPモードのCIIPフラグおよび/またはイントラモードは信号伝達され、スキップ・マージ・モードおよび/またはスキップMMVDモードにおいては隣接する近傍ブロックおよび/または隣接しない近傍ブロックのCIIPモードのCIIPフラグおよび/またはイントラモードが継承される、条項6ないし8のうちいずれか一項に記載の方法。
〔条項10〕
スキップ・マージ・モードおよび/またはスキップMMVDモードについてのCIIPモードのCIIPフラグおよび/またはイントラモードが信号伝達され、非スキップ・マージ・モードおよび/または非スキップMMVDモードにおいては隣接する近傍ブロックおよび/または隣接しない近傍ブロックのCIIPモードのCIIPフラグおよび/またはイントラモードが継承される、条項6ないし8のうちいずれか一項に記載の方法。
〔条項11〕
前記CIIPフラグは、マージ・モードおよび/またはスキップMMVDモードにおいて継承される、条項6ないし10のうちいずれか一項に記載の方法。
〔条項12〕
前記CIIPフラグが真であり、前記CIIPモードにおいて2つ以上のイントラモードが許容される場合、前記イントラモードが信号伝達される、条項11に記載の方法。
〔条項13〕
マージ・モードおよび/またはMMVDモードでコーディングされた隣接する近傍ブロックおよび/または隣接しない近傍ブロックのCIIPモードのCIIPフラグおよび/またはイントラモードが、現在ブロックによって継承される、条項6ないし12のうちいずれか一項に記載の方法。
〔条項14〕
スキップ・モードについてCIIPモードを無効にすることをさらに含む、
条項6ないし13のうちいずれか一項に記載の方法。
〔条項15〕
2つのマージ候補の情報を比較するステップをさらに含み、
前記CIIPモードの前記CIIPフラグおよび/または前記イントラモードは、2つのマージ候補の情報の前記比較において使用されない、
条項6ないし13のうちいずれか一項に記載の方法。
〔条項16〕
2つのマージ候補の情報を比較するステップをさらに含み、
前記CIIPモードの前記CIIPフラグおよび/または前記イントラモードは、2つのマージ候補の情報の前記比較において使用される、
条項6ないし13のうちいずれか一項に記載の方法。
〔条項17〕
ビデオを処理するための方法であって:
ビデオ・データ中の現在ブロックと現在ブロックのビットストリーム表現との間の変換中に、現在ブロックについての選択されたマージ候補のタイプを判別するステップと;
前記選択されたマージ候補のタイプに応じて、現在ブロックについての複合インター‐イントラ予測(CIIP)の適用可能性を決定するステップとを含み、
現在ブロックはマージ・モードでコーディングされる、
方法。
〔条項18〕
現在ブロックについての前記選択されたマージ候補が、ペア毎のマージ候補、複合双マージ候補、ゼロ動きマージ候補、または仮想的もしくは人工的マージ候補のうちの少なくとも1つである場合、前記CIIPは無効にされる、条項17に記載の方法。
〔条項19〕
ペア毎のマージ候補または複合双マージ候補に関わる一方の候補が前記CIIPモードを採用する場合、前記CIIPモードは、前記ペア毎のマージ候補または前記複合双マージ候補について有効にされる、条項17または18に記載の方法。
〔条項20〕
前記関わるCIIPモード候補のイントラモードが継承される、条項19に記載の方法。
〔条項21〕
前記関わるCIIPモードのイントラモードは、前記ペア毎のマージ候補または前記複合双マージ候補について信号伝達される、条項19に記載の方法。
〔条項22〕
ペア毎のマージ候補または複合双マージ候補に関わる両方の候補が前記CIIPモードを採用する場合、前記CIIPモードは、前記ペア毎のマージ候補または前記複合双マージ候補について有効にされる、条項17または18に記載の方法。
〔条項23〕
前記2つの関わる候補のうちの一方のイントラモードが継承される、条項22に記載の方法。
〔条項24〕
前記関わるCIIPモードのイントラモードが、前記2つの関わる候補のイントラモードから導出され、前記ペア毎のマージ候補または前記複合双マージ候補のために使用される、条項22に記載の方法。
〔条項25〕
前記関わるCIIPモードのイントラモードが、前記ペア毎のマージ候補または前記複合双マージ候補について信号伝達される、条項22に記載の方法。
〔条項26〕
条項1ないし25のうちいずれか一項に記載の方法を実装するように構成されたプロセッサを備える、ビデオ処理装置。
〔条項27〕
当該装置がビデオ・エンコーダである、条項26に記載の装置。
〔条項28〕
当該装置はビデオ・デコーダである、条項26に記載の装置。
〔条項29〕
コードを含むプログラムが記録されるコンピュータ読み取り可能な記録媒体であって、該プログラムは、プロセッサが条項1ないし25のうちいずれか一項に記載の方法を実行するためのものである、媒体。
Various other embodiments and additional features of these methods can be described using the clause-based description below.
[Clause 1]
A way to process video:
With the step of storing the composite inter-intra prediction (CIIP) flag of CIIP mode and / or the intra mode with motion information in a history-based motion vector prediction (HMVP) table;
It comprises performing a conversion between the current block in the video data and the bitstream representation of the current block, at least based on the HMVP table.
Method.
[Clause 2]
It also includes a step to compare the movement information of the two candidates.
The CIIP flag and / or the intramode of the CIIP mode is not used in the comparison of the motion information of the two candidates.
The method described in Clause 1.
[Clause 3]
It also includes a step to compare the movement information of the two candidates.
The CIIP flag and / or the intramode of the CIIP mode is used in the comparison of the motion information of the two candidates.
The method described in Clause 1.
[Clause 4]
The steps to be performed are:
If the merge candidate is from an entry in the HMVP table, this includes copying the CIIP flag of the entry to the merge candidate.
The method described in any one of Articles 1 to 3.
[Clause 5]
The steps to be performed are:
If the merge candidate is from an entry in the HMVP table, this includes copying the CIIP flag and the intramode of the entry to the merge candidate.
The method described in any one of Articles 1 to 3.
[Clause 6]
A way to process video:
With the step of determining the prediction mode of the current block during the conversion between the current block in the video data and the bitstream representation of the current block;
Combined Inter-Intra Prediction (CIIP) mode, which indicates that CIIP mode is enabled for the current block in response to the determination that the current block is coded in Advanced Motion Vector Prediction (AMVP) mode or Merge mode. Steps to determine the applicability of;
Including the step of performing the transformation based on the applicability of the CIIP mode.
Method.
[Clause 7]
The method of clause 6, wherein the CIIP flag and / or intramode of the CIIP mode is signaled when the block is currently coded in said AMVP mode.
[Clause 8]
In the current block merge mode and / or in merge (MMVD) mode with motion vector differences, the CIIP flag and / or intramode of the CIIP mode of adjacent and / or non-adjacent neighboring blocks is inherited. The method according to 6 or 7.
[Clause 9]
The CIIP flag and / or intramode of CIIP mode for non-skip merge mode and / or non-skip MMVD mode is signaled, and adjacent neighborhood blocks and / or in skip merge mode and / or skip MMVD mode. The method of any one of clauses 6-8, wherein the CIIP flag and / or intramode of the CIIP mode of non-adjacent neighboring blocks is inherited.
[Clause 10]
The CIIP flag and / or intramode of CIIP mode for skip merge mode and / or skip MMVD mode is signaled, and adjacent neighborhood blocks and / or in nonskip merge mode and / or nonskip MMVD mode. The method of any one of clauses 6-8, wherein the CIIP flag and / or intramode of the CIIP mode of non-adjacent neighboring blocks is inherited.
[Clause 11]
The method of any one of clauses 6-10, wherein the CIIP flag is inherited in merge mode and / or skip MMVD mode.
[Clause 12]
12. The method of clause 11, wherein if the CIIP flag is true and more than one intramode is allowed in the CIIP mode, the intramode is signaled.
[Article 13]
Any of clauses 6-12, where the CIIP flag and / or intramode of the CIIP mode of adjacent and / or non-adjacent neighboring blocks coded in merge mode and / or MMVD mode is inherited by the current block. The method described in item 1.
[Clause 14]
Further including disabling CIIP mode for skip mode,
The method described in any one of Articles 6 to 13.
[Clause 15]
It also includes a step to compare the information of the two merge candidates.
The CIIP flag and / or the intramode of the CIIP mode is not used in the comparison of the information of the two merge candidates.
The method described in any one of Articles 6 to 13.
[Clause 16]
It also includes a step to compare the information of the two merge candidates.
The CIIP flag and / or the intramode of the CIIP mode is used in the comparison of the information of the two merge candidates.
The method described in any one of Articles 6 to 13.
[Article 17]
A way to process video:
With the step of determining the type of selected merge candidate for the current block during the conversion between the current block in the video data and the bitstream representation of the current block;
Including the step of determining the applicability of compound inter-intra prediction (CIIP) for the current block, depending on the type of merge candidate selected above.
Currently the block is coded in merge mode,
Method.
[Article 18]
The CIIP is invalid if the selected merge candidate for the current block is at least one of a per-pair merge candidate, a compound dual merge candidate, a zero motion merge candidate, or a virtual or artificial merge candidate. The method described in clause 17.
[Clause 19]
If one of the candidates involved in the per-pair merge candidate or the compound dual merge candidate adopts the CIIP mode, the CIIP mode is enabled for the per-pair merge candidate or the compound dual merge candidate, clause 17 or 18. The method according to 18.
[Clause 20]
The method according to clause 19, wherein the intramode of the CIIP mode candidate involved is inherited.
[Clause 21]
The method of clause 19, wherein the intramode of the CIIP mode involved is signaled for the pair-by-pair merge candidate or the compound dual merge candidate.
[Clause 22]
If both candidates involved in a per-pair merge candidate or a compound dual merge candidate adopt the CIIP mode, the CIIP mode is enabled for the per-pair merge candidate or the compound dual merge candidate, clause 17 or. 18. The method according to 18.
[Clause 23]
The method of clause 22, wherein the intramode of one of the two involved candidates is inherited.
[Clause 24]
28. The method of clause 22, wherein the intramode of the CIIP mode involved is derived from the intramodes of the two related candidates and is used for the pair-by-pair merge candidate or the compound dual merge candidate.
[Clause 25]
22. The method of clause 22, wherein the intramode of the CIIP mode involved is signaled for the pair-by-pair merge candidate or the compound dual merge candidate.
[Clause 26]
A video processing device comprising a processor configured to implement the method according to any one of clauses 1-25.
[Clause 27]
The device according to clause 26, wherein the device is a video encoder.
[Clause 28]
The device according to clause 26, wherein the device is a video decoder.
[Clause 29]
A computer-readable recording medium on which a program containing code is recorded, wherein the program is for the processor to perform the method according to any one of clauses 1-25.
これらの方法のさまざまな他の実施形態および追加的な特徴は、以下の条項ベースの記載を用いて記載することができる。
〔条項1〕
ビデオを処理するための方法であって:
ビデオ・データ内の現在のビデオ・ブロックと現在のビデオ・ブロックのビットストリーム表現との間の変換中に、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックのCIIPフラグを参照することなくコンテキスト・モデルに基づくコーディングによって現在のビデオ・ブロックのための複合インター‐イントラ予測(CIIP)フラグをコーディングするステップと、
少なくとも、現在のビデオ・ブロックの複合インター‐イントラ予測(CIIP)フラグを適用することによって、前記変換を実行するステップとを含む、
方法。
〔条項2〕
現在のビデオ・ブロックの前記CIIPフラグの前記コンテキスト・モデルに基づくコーディングにおいて、固定されたコンテキストが使用される、条項1に記載の方法。
〔条項3〕
ビデオを処理するための方法であって:
ビデオ・データ内の現在のビデオ・ブロックと現在のビデオ・ブロックのビットストリーム表現との間の変換中に、バイパスコーディングによって現在のビデオ・ブロックのための複合インター‐イントラ予測(CIIP)フラグをコーディングするステップと、
少なくとも複合インター‐イントラ予測(CIIP)フラグを適用することによって、前記変換を実行するステップとを含む、
方法。
〔条項4〕
バイパスコーディングによって現在のビデオ・ブロックのための複合インター‐イントラ予測(CIIP)フラグをコーディングすることが、0に等しい確率と1に等しい確率が等しく、前記CIIPフラグをコーディングすることを含む、条項3に記載の方法。
〔条項5〕
現在のビデオ・ブロックがCIIPモードでコーディングされることに応答して、現在のビデオ・ブロックに関連付けられたイントラ予測モードを所与のイントラ予測モードに設定することをさらに含む、
条項1ないし4のうちいずれか一項に記載の方法。
〔条項6〕
前記所与のイントラ予測モードが平面モードである、条項5に記載の方法。
〔条項7〕
前記所与のイントラ予測モードが、後続のコーディングビデオ・ブロックのイントラ予測モード決定プロセスのために使用される、条項5または6に記載の方法。
〔条項8〕
現在のビデオ・ブロックの後続のコーディングビデオ・ブロックの1つである第2のビデオ・ブロックの変換中に、現在のビデオ・ブロックが第2のビデオ・ブロックの近傍ビデオ・ブロックである場合には、前記所与のイントラ予測モードが第2のビデオ・ブロックのイントラ予測モード候補リストに追加されることをさらに含む、
条項7に記載の方法。
〔条項9〕
前記イントラ予測モード候補リストが最確モード候補リストを含むことをさらに含む、
条項8に記載の方法。
〔条項10〕
現在のビデオ・ブロックがCIIPモードでコーディングされることに応答して、現在のビデオ・ブロックのイントラ予測モード情報は記憶されない、条項1ないし9のうちいずれか一項に記載の方法。
〔条項11〕
現在のビデオ・ブロックは、他のブロックのデコード・プロセスにおいて使用不能とみなされる、条項10に記載の方法。
〔条項12〕
現在のビデオ・ブロックは、インター予測モードでコーディングされるビデオ・ブロックとみなされる、条項10に記載の方法。
〔条項13〕
現在のビデオ・ブロックのCIIPフラグが記憶されない、条項1ないし12のうちいずれか一項に記載の方法。
〔条項14〕
ビデオを処理するための方法であって:
規則に従ってビデオの第1のビデオ・ブロックのイントラ予測モードを決定するステップであって、前記規則は:
第1のビデオ・ブロックのイントラ予測モード導出プロセス中に、該第1のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックの複合インター‐イントラ予測(CIIP)フラグをチェックすることをスキップすることを含む、ステップと;
少なくとも決定されたイントラ予測モードに基づいて、第1のビデオ・ブロックと該第1のビデオ・ブロックのビットストリーム表現との間の変換を実行するステップとを含む、
方法。
〔条項15〕
イントラ予測モードを決定することは、最確モードを決定することを含む、
条項14に記載の方法。
〔条項16〕
前記ビデオの第2のビデオ・ブロックについて、前記第2のビデオ・ブロックがインターコーディングまたはCIIPコーディングされていることに応答して、デフォルトのイントラ予測モードが前記第2のビデオ・ブロックに設定され、前記第2のビデオ・ブロックが前記第1のビデオ・ブロックに対する近傍ビデオ・ブロックである、条項14または15に記載の方法。
〔条項17〕
イントラ予測モードを決定することは、前記第2のビデオ・ブロックのデフォルトのイントラ予測モードに基づき、
該デフォルトのイントラ予測モードは平面状イントラ予測モードである、
条項16に記載の方法。
〔条項18〕
一つまたは複数の近傍ビデオ・ブロックのCIIPフラグが記憶されない、条項14ないし17のうちいずれか一項に記載の方法。
〔条項19〕
条項1ないし18のうちいずれか一項に記載の方法を実装するように構成されたプロセッサを有するビデオ処理装置。
〔条項20〕
当該装置がビデオ・エンコーダである、条項19に記載の装置。
〔条項21〕
当該装置がビデオ・デコーダである、条項19に記載の装置。
〔条項22〕
コードを含むプログラムが記録されているコンピュータ読み取り可能な記録媒体であって、前記プログラムは、プロセッサが条項1ないし21のうちいずれかに記載の方法を実行するためのものである、記録媒体。
Various other embodiments and additional features of these methods can be described using the clause-based description below.
[Clause 1]
A way to process video:
Referencing the CIIP flag of one or more neighboring video blocks for the current video block during conversion between the current video block in the video data and the bitstream representation of the current video block. With the step of coding the Composite Inter-Intra Prediction (CIIP) flag for the current video block, without coding based on the context model,
At a minimum, including the step of performing the conversion by applying the compound inter-intra-prediction (CIIP) flag of the current video block.
Method.
[Clause 2]
The method of clause 1, wherein a fixed context is used in the coding of the current video block based on the context model of the CIIP flag.
[Clause 3]
A way to process video:
Coding the Composite Inter-Intra Prediction (CIIP) flag for the current video block by bypass coding during the conversion between the current video block in the video data and the bitstream representation of the current video block. Steps to do and
Including the step of performing the transformation, at least by applying the Composite Inter-Intra Prediction (CIIP) flag.
Method.
[Clause 4]
Coding a compound inter-intra-prediction (CIIP) flag for the current video block by bypass coding involves coding the CIIP flag with a probability equal to 0 and a probability equal to 1. The method described in.
[Clause 5]
Further including setting the intra-prediction mode associated with the current video block to a given intra-prediction mode in response to the current video block being coded in CIIP mode.
The method described in any one of Articles 1 to 4.
[Clause 6]
The method of clause 5, wherein the given intra-prediction mode is a planar mode.
[Clause 7]
The method of clause 5 or 6, wherein the given intra-prediction mode is used for the intra-prediction mode determination process of a subsequent coding video block.
[Clause 8]
If the current video block is a video block in the vicinity of the second video block during the conversion of the second video block, which is one of the subsequent coding video blocks of the current video block. Further includes that the given intra-prediction mode is added to the intra-prediction mode candidate list of the second video block.
The method described in Clause 7.
[Clause 9]
The intra-prediction mode candidate list further includes including the most probable mode candidate list.
The method described in Clause 8.
[Clause 10]
The method of any one of clauses 1-9, wherein the intra-predictive mode information of the current video block is not stored in response to the current video block being coded in CIIP mode.
[Clause 11]
The method of clause 10, wherein the current video block is considered unusable in the decoding process of other blocks.
[Clause 12]
The method of clause 10, wherein the current video block is considered to be a video block coded in interpredictive mode.
[Article 13]
The method of any one of clauses 1-12, wherein the CIIP flag of the current video block is not remembered.
[Clause 14]
A way to process video:
The step of determining the intra-prediction mode of the first video block of a video according to a rule, said rule:
Skipping checking the compound inter-intra-intra-prediction (CIIP) flag of one or more neighboring video blocks for the first video block during the process of deriving the intra-prediction mode of the first video block. Including steps and;
A step of performing a conversion between a first video block and a bitstream representation of the first video block, at least based on a determined intra-prediction mode.
Method.
[Clause 15]
Determining the intra prediction mode involves determining the most probable mode,
The method described in clause 14.
[Clause 16]
For the second video block of the video, the default intra-prediction mode is set to the second video block in response to the intercoding or CIIP coding of the second video block. The method according to clause 14 or 15, wherein the second video block is a nearby video block relative to the first video block.
[Article 17]
Determining the intra prediction mode is based on the default intra prediction mode of the second video block.
The default intra prediction mode is a planar intra prediction mode.
The method described in clause 16.
[Clause 18]
The method of any one of clauses 14-17, wherein the CIIP flag of one or more neighboring video blocks is not stored.
[Article 19]
A video processing device having a processor configured to implement the method according to any one of clauses 1-18.
[Clause 20]
The device according to clause 19, wherein the device is a video encoder.
[Clause 21]
19. The device according to clause 19, wherein the device is a video decoder.
[Clause 22]
A computer-readable recording medium on which a program containing a code is recorded, wherein the program is for the processor to perform the method according to any one of clauses 1 to 21.
これらの方法のさまざまな他の実施形態および追加的な特徴は、以下の条項ベースの記載を用いて記載することができる。
〔条項1〕
ビデオを処理するための方法であって:
ビデオの、複合イントラおよびインター予測(CIIP)モードでコーディングされた現在のビデオ・ブロックと、現在のビデオ・ブロックのビットストリーム表現との間の変換中に、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックに基づいて、現在のビデオ・ブロックの第1の予測結果についての第1の重みと、現在のビデオ・ブロックの第2の予測結果についての第2の重みとを含む重みペアを決定するステップであって、
前記第1の予測結果はイントラ予測モードによって生成され、前記第2の予測結果はインター予測モードによって生成される、ステップと;
前記第1の予測結果と前記第2の予測結果の加重和に基づいて現在のブロックの予測結果を決定するステップとを含む、
方法。
〔条項2〕
前記重みペアを決定することが:
現在のビデオ・ブロックの前記一つまたは複数の近傍ビデオ・ブロックの予測モードに従って前記重みペアを決定することを含む、
条項1に記載の方法。
〔条項3〕
前記CIIPモードでコーディングされた近傍ビデオ・ブロックについて、前記近傍ビデオ・ブロックは、インター予測モードでコーディングされたブロックとして扱われる、条項1または2に記載の方法。
〔条項4〕
前記CIIPモードでコーディングされた近傍ビデオ・ブロックについて、前記近傍ビデオ・ブロックは、イントラ予測モードでコーディングされたブロックとして扱われる、条項1または2に記載の方法。
〔条項5〕
前記近傍ビデオ・ブロックは、現在のビデオ・ブロックの隣接するブロック、隣接しないブロック、および時間的な近傍ブロックのうちの少なくとも1つである、条項1ないし4のうちいずれか一項に記載の方法。
〔条項6〕
前記近傍ビデオ・ブロックの1つは、左の近傍ビデオ・ブロックまたは上の近傍ビデオ・ブロックである、条項1ないし5のうちいずれか一項に記載の方法。
〔条項7〕
前記近傍ビデオ・ブロックのうちの2つは、それぞれ、左の近傍ビデオ・ブロックおよび上の近傍ビデオ・ブロックである、条項1ないし5のうちいずれか一項に記載の方法。
〔条項8〕
前記左の近傍ビデオ・ブロックが位置(xCb-1,yCb+cbHeight-1)をカバーし、前記上の近傍ビデオ・ブロックが位置(xCb+cbWidth-1,yCb-1)をカバーし、(xCb,yCb)は現在のビデオ・ブロック(current video block)の左上のサンプルの位置であり、cbWidthおよびcbHeightはそれぞれ現在のビデオ・ブロックの幅および高さである、条項6または7に記載の方法。
〔条項9〕
前記左の近傍ビデオ・ブロックが位置(xCb-1,yCb)をカバーし、前記上の近傍ビデオ・ブロックが位置(xCb,yCb-1)をカバーし、(xCb,yCb)は現在のビデオ・ブロックの左上のサンプルの位置である、条項6または7に記載の方法。
〔条項10〕
CIIPモード結果が、前記イントラ予測結果および前記インター予測結果について前記重みペアを適用することによって、
PCIIP=(wInter*Pinter+wIntra*Pintra+offset)>>N
として得られ、
ここで、PCIIPは前記CIIPモード結果であり、Pinterは前記インター予測結果であり、Pintraは前記イントラ予測結果であり、(wInter,wIntra)は前記重みペアであり、offsetは(1<<(N-1))または0に設定され、Nはlog2(wIntra+wInter)に設定される、
条項1ないし9のうちいずれか一項に記載の方法。
〔条項11〕
前記近傍ビデオ・ブロックは、現在のブロックおよび/または前記近傍ブロックのコーディング情報に基づいて選択される、条項1ないし条項10のうちいずれか一項に記載の方法。
〔条項12〕
前記重みペアは、前記近傍ブロックおよび/または前記近傍ブロックのコーディング情報に基づいて決定される、条項1ないし11のうちいずれか一項に記載の方法。
〔条項13〕
前記コーディング情報は:現在のビデオ・ブロックおよび/または前記近傍ビデオ・ブロックのブロック寸法情報、ブロック形状情報、低遅延チェック・フラグ、参照ピクチャー情報、動き情報、または前記近傍ビデオ・ブロックの諸イントラ予測モードのうちの少なくとも1つを含む、条項11または12に記載の方法。
〔条項14〕
前記重みペアは、現在のビデオ・ブロックの色成分に依存する、条項1に記載の方法。
〔条項15〕
主要色成分の前記重みペアは、他の色成分の重みペアとは異なる、条項14に記載の方法。
〔条項16〕
ルーマ成分についての前記重みペアが、クロマ成分についての重みペアと異なる、条項14に記載の方法。
〔条項17〕
クロマ成分については前記第1の重みと前記第2の重みは等しい、条項14ないし16のうちいずれか一項に記載の方法。
〔条項18〕
前記重みペアは、第1の候補重みペアおよび第2の候補重みペアを含む2つの候補重みペアのうちの1つである、条項1ないし17のうちいずれか一項に記載の方法。
〔条項19〕
前記2つの候補重みペアは、{(1,3)および(3,1)}、{(1,3)および(2,2)}、{(3,1)および(2,2)}、{(3,5)および(4,4)}、{(5,3)および(4,4)}、{(1,7)および(4,4)}ならびに{(7,1)および(4,4)}のうちの1つである、条項18に記載の方法。
〔条項20〕
前記重みペアは、現在のビデオ・ブロックの単一の近傍ビデオ・ブロックに基づいて決定される、条項18または19に記載の方法。
〔条項21〕
前記単一の近傍ビデオ・ブロックが前記イントラ予測モードでコーディングされる場合、前記重みペアは前記第1の候補重みペアであり、前記単一の近傍ビデオ・ブロックが前記インター予測モードでコーディングされる場合、前記重みペアは前記第2の候補重みペアである、条項20に記載の方法。
〔条項22〕
前記単一の近傍ビデオ・ブロックが左の近傍ビデオ・ブロックまたは上の近傍ビデオ・ブロックである、条項20または21に記載の方法。
〔条項23〕
前記重みペアは、現在のビデオ・ブロックの2つ以上の近傍ビデオ・ブロックに基づいて決定され、前記2つ以上の近傍ビデオ・ブロックのうちの少なくとも1つは、所定の条件を満たす、条項18または19に記載の方法。
〔条項24〕
前記2つ以上の近傍ビデオ・ブロックのうちの少なくとも1つが前記イントラ予測モードでコーディングされる場合、前記重みペアは前記第1の候補重みペアであり、前記2つ以上の近傍ビデオ・ブロックのうちの少なくとも1つが前記インター予測モードでコーディングされる場合、前記重みペアは前記第2の候補重みペアである、条項23に記載の方法。
〔条項25〕
前記重みペアは、現在のビデオ・ブロックの2つ以上の近傍ビデオ・ブロックに基づいて決定され、前記2つ以上の近傍ビデオ・ブロックのそれぞれは、所定の条件を満たす、条項18または19に記載の方法。
〔条項26〕
前記2つ以上の近傍ビデオ・ブロックのすべてが前記イントラ予測モードでコーディングされる場合、前記重みペアは前記第1の候補重みペアであり、前記2つ以上の近傍ビデオ・ブロックのすべてが前記インター予測モードでコーディングされる場合、前記重みペアは前記第2の候補重みペアである、条項25に記載の方法。
〔条項27〕
前記2つ以上の近傍ビデオ・ブロックのうちの1つが左の近傍ビデオ・ブロックであり、前記2つ以上の近傍ビデオ・ブロックのうちの他の1つが上の近傍ビデオ・ブロックである、条項23ないし26のうちいずれか一項に記載の方法。
〔条項28〕
前記第1の候補重みペアが(2,2)および(3,1)のいずれかであり、前記第2の候補重みペアが(1,3)である、条項23ないし27のうちいずれか一項に記載の方法。
〔条項29〕
前記第1の候補重みペアにおける少なくとも1つの重み値が、前記第2の候補重みペアにおける少なくとも1つの重み値と異なる、条項23ないし28のうちいずれか一項に記載の方法。
〔条項30〕
前記第1の候補重みペアが前記第2の候補重みペアと異なる、条項23ないし29のうちいずれか一項に記載の方法。
〔条項31〕
前記重みペアがちょうど1つの候補重みペアである、条項1ないし17のうちいずれか一項に記載の方法。
〔条項32〕
前記1つの候補重みペアが、(1,3)、(2,2)、(1,7)、(2,6)、(3,5)および(4,4)のいずれかである、条項31に記載の方法。
〔条項33〕
前記重みペアは、一つまたは複数の近傍ビデオ・ブロックが前記CIIPモードでコーディングされるかどうかに基づいて決定される、条項1ないし32のうちいずれか一項に記載の方法。
〔条項34〕
前記重みペアは、以前にコーディングされたビデオ・ブロックについての前記重みペアから決定される、条項33に記載の方法。
〔条項35〕
現在のビデオ・ブロックについての重みペアは、現在のビデオ・ブロックの単一の近傍ビデオ・ブロックに基づいて決定される、条項33または34に記載の方法。
〔条項36〕
前記単一の近傍ビデオ・ブロックがCIIPモードでコーディングされる場合、現在のビデオ・ブロックについての重みペアは、前記単一の近傍ビデオ・ブロックについての前記重みペアに設定され、
前記単一の近傍ビデオ・ブロックがイントラ予測モードでコーディングされる場合、前記重みペアは、第1の候補重みペアと第2の候補重みペアを含む2つの候補重みペアのうちの前記第1の候補重みペアであり、
前記単一の近傍ビデオ・ブロックがインター予測モードでコーディングされる場合、前記重みペアは、前記第1の候補重みペアと前記第2の候補重みペアを含む2つの候補重みペアのうちの前記第2の候補重みペアである、
条項35に記載の方法。
〔条項37〕
前記単一の近傍ビデオ・ブロックがCIIPモードでコーディングされる場合、現在のビデオ・ブロックについての前記重みペアは、前記単一の近傍ビデオ・ブロックについての前記重みペアに設定され、
前記単一の近傍ビデオ・ブロックがイントラ予測モードまたはインター予測モードでコーディングされる場合、前記重みペアは、第1の候補重みペアおよび第2の候補重みペアを含む2つの候補重みペアのうちの前記第1の候補重みペアである、
条項35に記載の方法。
〔条項38〕
前記重みペアは、現在のビデオ・ブロックの2つ以上の近傍ビデオ・ブロックに基づいて決定され、前記2つ以上の近傍ビデオ・ブロックのうちの少なくとも1つは、所定の条件を満たす、条項33または34に記載の方法。
〔条項39〕
前記2つ以上の近傍ビデオ・ブロックは、前記2つ以上の近傍ビデオ・ブロックがCIIPモードでコーディングされるかどうかを識別するために、所定のチェック順序でチェックされる、条項38に記載の方法。
〔条項40〕
前記2つ以上の近傍ビデオ・ブロックのうちの少なくとも1つがCIIPモードでコーディングされるとき、前記現在のビデオ・ブロックについての前記重みペアは、前記所与のチェック順序においてCIIPモードでコーディングされることが最初に識別される近傍ビデオ・ブロックについての重みペアに設定され、
前記2つ以上の近傍ビデオ・ブロックのいずれもCIIPモードでコーディングされず、前記2つ以上の近傍ビデオ・ブロックのうちの少なくとも1つがイントラ予測モードでコーディングされる場合、前記重みペアは、第1の候補重みペアおよび第2の候補重みペアを含む2つの候補重みペアのうちの第1の候補重みペアであり、
前記2つ以上の近傍ビデオ・ブロックのいずれもCIIPモードでコーディングされず、前記2つ以上の近傍ビデオ・ブロックのうちの少なくとも1つがインター予測モードでコーディングされる場合、前記重みペアは、前記第1の候補重みペアおよび前記第2の候補重みペアを含む2つの候補重みペアのうちの第2の候補重みペアである、
条項39に記載の方法。
〔条項41〕
前記2つ以上の近傍ビデオ・ブロックのうちの少なくとも1つがCIIPモードでコーディングされる場合、現在のビデオ・ブロックについての前記重みペアは、前記所与のチェック順序においてCIIPモードでコーディングされることが最初に識別される近傍ビデオ・ブロックについての重みペアに設定され、
前記2つ以上の近傍ビデオ・ブロックのいずれもCIIPモードでコーディングされない場合、前記重みペアは、第1の候補重みペアおよび第2の候補重みペアを含む2つの候補重みペアのうちの第2の候補重みペアである、
条項39に記載の方法。
〔条項42〕
前記第1の候補重みペアが(2,2)および(3,1)のうちの1つであり、前記第2の候補重みペアが(1,3)である、条項36ないし41のうちいずれかに記載の方法。
〔条項43〕
前記第1の候補重みペアにおける少なくとも1つの重み値が、前記第2の候補重みペアにおける少なくとも1つの重み値と異なる、条項36ないし42のうちいずれか一項に記載の方法。
〔条項44〕
前記第2の候補重みペアが(2,2)および(1,3)のいずれかである、条項36ないし41のうちいずれか一項に記載の方法。
〔条項45〕
前記重みペアが信号伝達される、条項1ないし44のうちいずれか一項に記載の方法。
〔条項46〕
前記重みペアは、近傍ビデオ・ブロックがインター予測モードでコーディングされているかどうかに基づいて決定される、条項1ないし45のうちいずれか一項に記載の方法。
〔条項47〕
ある近傍ビデオ・ブロックがイントラ予測モードでコーディングされていない場合、その近傍ビデオ・ブロックは、イントラ予測モードでコーディングされたブロックとして扱われる、条項1ないし46のうちいずれか一項に記載の方法。
〔条項48〕
前記近傍ビデオ・ブロックは、ブロック内コピー(intra block copy、IBC)モード、CIIPモード、三角予測モード(triangular prediction mode、TPM)、パレットモード、RDPCMモードのうちの少なくとも1つではコーディングされない、条項47に記載の方法。
〔条項49〕
前記近傍ビデオ・ブロックは、変換および/または量子化を適用することなくコーディングされる、条項48に記載の方法。
〔条項50〕
前記近傍ビデオ・ブロックが、ブロック内コピー(IBC)モード、CIIPモード、三角予測モード(TPM)、パレットモード、RDPCMモードのうちの少なくとも1つでコーディングされる場合、前記近傍ビデオ・ブロックは、非イントラ予測モードでコーディングされたブロックとして扱われる、条項1ないし46のうちいずれか一項に記載の方法。
〔条項51〕
前記近傍ビデオ・ブロックがイントラ予測モードでコーディングされるが、所定の予測モードでコーディングされない場合、前記近傍ビデオ・ブロックは、非イントラ予測モードでコーディングされるブロックとして扱われる、条項1ないし46のうちいずれか一項に記載の方法。
〔条項52〕
前記近傍ビデオ・ブロックが、行列ベースのイントラ予測モードおよび/または0と等しくない参照線インデックスをもつ複数参照線イントラ予測モードおよび/またはBDPCMモードでコーディングされる場合、前記近傍ビデオ・ブロックは、非イントラ予測モードでコーディングされたブロックとして扱われる、条項1ないし46のうちいずれか一項に記載の方法。
〔条項53〕
条項1ないし52のうちいずれか一項に記載の方法を実装するように構成されたプロセッサを備える、ビデオ処理装置。
〔条項54〕
当該装置がビデオ・エンコーダである、条項53に記載の装置。
〔条項55〕
当該装置がビデオ・デコーダである、条項53に記載の装置。
〔条項56〕
コードを含むプログラムが記録されているコンピュータ読み取り可能な記録媒体であって、前記プログラムは、プロセッサが条項1ないし52のうちいずれか一項に記載の方法を実行するためのものである、記録媒体。
Various other embodiments and additional features of these methods can be described using the clause-based description below.
[Clause 1]
A way to process video:
One or more for the current video block during conversion between the current video block coded in compound intra and inter-prediction (CIIP) mode of the video and the bitstream representation of the current video block. A weight pair containing a first weight for the first prediction result of the current video block and a second weight for the second prediction result of the current video block, based on the neighboring video blocks of. It is a step to decide
The first prediction result is generated by the intra prediction mode, and the second prediction result is generated by the inter prediction mode.
Including a step of determining the prediction result of the current block based on the weighted sum of the first prediction result and the second prediction result.
Method.
[Clause 2]
Determining the weight pair is:
Includes determining the weight pair according to the prediction mode of said one or more neighboring video blocks of the current video block.
The method described in Clause 1.
[Clause 3]
The method of clause 1 or 2, wherein for a neighborhood video block coded in CIIP mode, the neighborhood video block is treated as a block coded in interpredictive mode.
[Clause 4]
The method of clause 1 or 2, wherein for a neighborhood video block coded in CIIP mode, the neighborhood video block is treated as a block coded in intra prediction mode.
[Clause 5]
The method according to any one of clauses 1 to 4, wherein the neighborhood video block is at least one of adjacent blocks, non-adjacent blocks, and temporal neighborhood blocks of the current video block. ..
[Clause 6]
The method of any one of clauses 1-5, wherein one of the neighborhood video blocks is the neighborhood video block on the left or the neighborhood video block above.
[Clause 7]
The method of any one of clauses 1-5, wherein two of the neighborhood video blocks are the left neighborhood video block and the top neighborhood video block, respectively.
[Clause 8]
The left neighborhood video block covers the position (xCb-1, yCb + cbHeight-1), the top neighborhood video block covers the position (xCb + cbWidth-1, yCb-1), and (xCb, yCb) is. The method of clause 6 or 7, wherein the sample position in the upper left corner of the current video block, where cbWidth and cbHeight are the width and height of the current video block, respectively.
[Clause 9]
The left neighborhood video block covers the position (xCb-1, yCb), the top neighborhood video block covers the position (xCb, yCb-1), and (xCb, yCb) is the current video. The method according to clause 6 or 7, which is the location of the sample in the upper left corner of the block.
[Clause 10]
The CIIP mode result is obtained by applying the weight pair to the intra prediction result and the inter prediction result.
P CIIP = (wInter * P inter + wIntra * P intra + offset) >> N
Obtained as
Here, P CIIP is the CIIP mode result, P inter is the inter prediction result, P intra is the intra prediction result, (wInter, wIntra) is the weight pair, and offset is (1 <. <(N-1)) or set to 0, N is set to log2 (wIntra + wInter),
The method described in any one of Articles 1 to 9.
[Clause 11]
The method according to any one of Clause 1 to Clause 10, wherein the neighborhood video block is selected based on the coding information of the current block and / or the neighborhood block.
[Clause 12]
The method according to any one of clauses 1 to 11, wherein the weight pair is determined based on the coding information of the neighborhood block and / or the neighborhood block.
[Article 13]
The coding information is: block dimension information, block shape information, low delay check flag, reference picture information, motion information, or intra-prediction of the neighborhood video block of the current video block and / or the neighborhood video block. The method of clause 11 or 12, comprising at least one of the modes.
[Clause 14]
The method of clause 1, wherein the weight pair depends on the color component of the current video block.
[Clause 15]
The method of clause 14, wherein the weight pair of principal color components is different from weight pairs of other color components.
[Clause 16]
The method of clause 14, wherein the weight pair for the luma component is different from the weight pair for the chroma component.
[Article 17]
The method according to any one of Articles 14 to 16, wherein the first weight and the second weight are equal for the chroma component.
[Article 18]
The method according to any one of clauses 1 to 17, wherein the weight pair is one of two candidate weight pairs including a first candidate weight pair and a second candidate weight pair.
[Clause 19]
The two candidate weight pairs are {(1,3) and (3,1)}, {(1,3) and (2,2)}, {(3,1) and (2,2)}, {(3,5) and (4,4)}, {(5,3) and (4,4)}, {(1,7) and (4,4)} and {(7,1) and ( 4,4)}, one of the methods described in Clause 18.
[Clause 20]
19. The method of clause 18 or 19, wherein the weight pair is determined based on a single neighborhood video block of the current video block.
[Clause 21]
If the single neighborhood video block is coded in the intra prediction mode, the weight pair is the first candidate weight pair and the single neighborhood video block is coded in the inter prediction mode. If the weight pair is the second candidate weight pair, the method of clause 20.
[Clause 22]
28. The method of clause 20 or 21, wherein the single neighborhood video block is the left neighborhood video block or the top neighborhood video block.
[Clause 23]
The weight pair is determined based on two or more neighboring video blocks of the current video block, and at least one of the two or more neighboring video blocks satisfies a predetermined condition, clause 18. Or the method according to 19.
[Clause 24]
If at least one of the two or more neighborhood video blocks is coded in the intra prediction mode, the weight pair is the first candidate weight pair and of the two or more neighborhood video blocks. 23. The method of clause 23, wherein the weight pair is the second candidate weight pair when at least one of the above is coded in the interpredictive mode.
[Clause 25]
The weight pair is determined based on two or more neighboring video blocks of the current video block, each of the two or more neighboring video blocks satisfying a predetermined condition, as described in clause 18 or 19. the method of.
[Clause 26]
If all of the two or more neighborhood video blocks are coded in the intra prediction mode, the weight pair is the first candidate weight pair and all of the two or more neighborhood video blocks are the inter. 25. The method of clause 25, wherein the weight pair is the second candidate weight pair when coded in predictive mode.
[Clause 27]
Clause 23, where one of the two or more neighborhood video blocks is the left neighborhood video block and the other one of the two or more neighborhood video blocks is the top neighborhood video block. The method according to any one of 26.
[Clause 28]
One of clauses 23 to 27, wherein the first candidate weight pair is either (2,2) or (3,1) and the second candidate weight pair is (1,3). The method described in the section.
[Clause 29]
The method according to any one of clauses 23 to 28, wherein at least one weight value in the first candidate weight pair is different from at least one weight value in the second candidate weight pair.
[Clause 30]
The method according to any one of clauses 23 to 29, wherein the first candidate weight pair is different from the second candidate weight pair.
[Article 31]
The method according to any one of clauses 1 to 17, wherein the weight pair is exactly one candidate weight pair.
[Article 32]
A clause in which the one candidate weight pair is one of (1,3), (2,2), (1,7), (2,6), (3,5) and (4,4). 31.
[Clause 33]
The method according to any one of clauses 1 to 32, wherein the weight pair is determined based on whether one or more neighboring video blocks are coded in said CIIP mode.
[Clause 34]
35. The method of clause 33, wherein the weight pair is determined from the weight pair for a previously coded video block.
[Clause 35]
The method of clause 33 or 34, wherein the weight pair for the current video block is determined based on a single neighboring video block of the current video block.
[Clause 36]
When the single neighborhood video block is coded in CIIP mode, the weight pair for the current video block is set to the weight pair for the single neighborhood video block.
When the single neighborhood video block is coded in intra-predictive mode, the weight pair is the first of two candidate weight pairs, including a first candidate weight pair and a second candidate weight pair. Candidate weight pair,
When the single neighborhood video block is coded in interpredicted mode, the weight pair is the first of two candidate weight pairs, including the first candidate weight pair and the second candidate weight pair. 2 candidate weight pairs,
The method described in clause 35.
[Clause 37]
When the single neighborhood video block is coded in CIIP mode, the weight pair for the current video block is set to the weight pair for the single neighborhood video block.
When the single neighborhood video block is coded in intra-predictive mode or inter-predictive mode, the weight pair is one of two candidate weight pairs, including a first candidate weight pair and a second candidate weight pair. The first candidate weight pair,
The method described in clause 35.
[Clause 38]
The weight pair is determined based on two or more neighboring video blocks of the current video block, and at least one of the two or more neighboring video blocks satisfies a predetermined condition, clause 33. Or the method according to 34.
[Clause 39]
28. The method of clause 38, wherein the two or more neighborhood video blocks are checked in a predetermined check order to identify whether the two or more neighborhood video blocks are coded in CIIP mode. ..
[Clause 40]
When at least one of the two or more neighboring video blocks is coded in CIIP mode, the weight pair for the current video block shall be coded in CIIP mode in the given check order. Is set in the weight pair for the first identified neighborhood video block,
If neither of the two or more neighboring video blocks is coded in CIIP mode and at least one of the two or more neighboring video blocks is coded in intra-predictive mode, the weight pair is first. Is the first candidate weight pair of the two candidate weight pairs, including the candidate weight pair and the second candidate weight pair.
If neither of the two or more neighboring video blocks is coded in CIIP mode and at least one of the two or more neighboring video blocks is coded in interpredictive mode, the weight pair is said to be the first. It is the second candidate weight pair of the two candidate weight pairs including the one candidate weight pair and the second candidate weight pair.
The method described in clause 39.
[Clause 41]
If at least one of the two or more neighboring video blocks is coded in CIIP mode, the weight pair for the current video block may be coded in CIIP mode in the given check order. Set to a weight pair for the first identified neighborhood video block,
If none of the two or more neighboring video blocks are coded in CIIP mode, the weight pair is the second of two candidate weight pairs, including a first candidate weight pair and a second candidate weight pair. Candidate weight pair,
The method described in clause 39.
[Clause 42]
Any of clauses 36 to 41, wherein the first candidate weight pair is one of (2,2) and (3,1) and the second candidate weight pair is (1,3). The method described in Crab.
[Clause 43]
The method according to any one of clauses 36 to 42, wherein at least one weight value in the first candidate weight pair is different from at least one weight value in the second candidate weight pair.
[Clause 44]
The method according to any one of clauses 36 to 41, wherein the second candidate weight pair is any of (2,2) and (1,3).
[Clause 45]
The method according to any one of clauses 1 to 44, wherein the weight pair is signaled.
[Clause 46]
The method of any one of clauses 1 to 45, wherein the weight pair is determined based on whether the neighboring video block is coded in interpredictive mode.
[Clause 47]
The method of any one of clauses 1 to 46, wherein if a neighborhood video block is not coded in intra-predictive mode, the neighborhood video block is treated as a block coded in intra-predictive mode.
[Clause 48]
The neighborhood video block is not coded in at least one of intra block copy (IBC) mode, CIIP mode, triangular prediction mode (TPM), palette mode, RDPCM mode, clause 47. The method described in.
[Clause 49]
28. The method of clause 48, wherein the neighborhood video block is coded without applying transformation and / or quantization.
[Clause 50]
If the neighborhood video block is coded in at least one of in-block copy (IBC) mode, CIIP mode, triangle prediction mode (TPM), palette mode, and RDPCM mode, the neighborhood video block is non-blocking. The method according to any one of clauses 1 to 46, which is treated as a block coded in the intra prediction mode.
[Clause 51]
If the neighborhood video block is coded in intra-prediction mode but not in a given prediction mode, then the neighborhood video block is treated as a block coded in non-intra-prediction mode, of clauses 1-46 . The method described in any one of the items.
[Clause 52]
If the neighborhood video block is coded in a matrix-based intra-prediction mode and / or a multi-reference line intra-prediction mode and / or BDPCM mode with a reference line index that is not equal to 0, the neighborhood video block is non-existent. The method according to any one of clauses 1 to 46, which is treated as a block coded in intra-predictive mode.
[Article 53]
A video processing device comprising a processor configured to implement the method according to any one of clauses 1-52.
[Article 54]
The device according to clause 53, wherein the device is a video encoder.
[Clause 55]
The device according to clause 53, wherein the device is a video decoder.
[Article 56]
A computer-readable recording medium on which a program containing the code is recorded, wherein the program is for the processor to perform the method according to any one of clauses 1 to 52. ..
開示された技術は、ハッシュベースの動き推定を使用して圧縮効率を改善するために、ビデオ・エンコーダまたはデコーダにおいて具現されうることが理解されるであろう。 It will be appreciated that the disclosed techniques can be embodied in video encoders or decoders to improve compression efficiency using hash-based motion estimation.
本稿に記載された、開示されたおよびその他の解決策、例、実施形態、モジュール、および機能的動作は、デジタル電子回路において、または本稿に開示された構造およびその構造的等価物を含むコンピュータ・ソフトウェア、ファームウェア、またはハードウェアにおいて、またはそれらの一つまたは複数の組み合わせにおいて実装できる。開示されたおよびその他の実施形態は、一つまたは複数のコンピュータ・プログラム・プロダクト、すなわち、データ処理装置による実行のため、またはデータ処理装置の動作を制御するために、コンピュータ読み取り可能媒体上にエンコードされたコンピュータ・プログラム命令の一つまたは複数のモジュールとして実装できる。コンピュータ読み取り可能媒体は、機械読み取り可能記憶デバイス、機械読み取り可能記憶基板、メモリ装置、機械読み取り可能な伝搬信号を実現する物質の組成、または一つまたは複数のそれらの組み合わせでありうる。用語「データ処理装置」は、たとえば、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサまたはコンピュータを含む、データを処理するためのあらゆる装置、デバイス、および機械を包含する。装置は、ハードウェアに加えて、問題のコンピュータ・プログラムの実行環境を生成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの一つまたは複数の組み合わせを構成するコードを含むことができる。伝搬される信号は、好適な受信器装置への伝送のために情報をコーディングするために生成される人工的に生成された信号、たとえば機械生成される電気信号、光または電磁信号である。 The disclosed and other solutions, examples, embodiments, modules, and functional operations described in this article are in digital electronic circuits or in computers including the structures and structural equivalents thereof disclosed in this article. It can be implemented in software, firmware, or hardware, or in one or more combinations thereof. The disclosed and other embodiments are encoded on a computer-readable medium for execution by one or more computer program products, ie, data processing equipment, or to control the operation of the data processing equipment. It can be implemented as one or more modules of computer program instructions. The computer-readable medium can be a machine-readable storage device, a machine-readable storage board, a memory device, a composition of substances that realize a machine-readable propagating signal, or a combination thereof. The term "data processing device" includes any device, device, and machine for processing data, including, for example, a programmable processor, a computer, or a plurality of processors or computers. The device, in addition to the hardware, is the code that creates the execution environment for the computer program in question, such as the processor firmware, protocol stack, database management system, operating system, or a combination of one or more of them. Can be included. The propagated signal is an artificially generated signal, such as a machine-generated electrical signal, optical or electromagnetic signal, which is generated to code information for transmission to a suitable receiver device.
コンピュータ・プログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイルまたはインタープリットされる言語を含む、任意の形のプログラミング言語で書くことができ、それは、スタンドアローン・プログラムとして、またはコンピューティング環境での使用に好適なモジュール、コンポーネント、サブルーチン、または他のユニットとしてを含め、任意の形で展開されることができる。コンピュータ・プログラムは、必ずしもファイルシステム内のファイルに対応するものではない。プログラムは、他のプログラムまたはデータを保持するファイルの一部分(たとえば、マークアップ言語文書に記憶される一つまたは複数のスクリプト)に、問題のプログラム専用の単一ファイルに、または複数の調整されたファイル(たとえば、一つまたは複数のモジュール、サブプログラム、またはコード部分を記憶するファイル)に記憶されることができる。コンピュータ・プログラムは、1つのコンピュータ上で、または1つのサイトに位置する、もしくは複数のサイトに分散され、通信ネットワークによって相互接続される複数のコンピュータ上で実行されるように展開されることができる。 Computer programs (also known as programs, software, software applications, scripts, or code) can be written in any form of programming language, including languages that are compiled or interpreted, which are stand-alone programs. It can be deployed in any form, including as a module, component, subroutine, or other unit suitable for use in a computing environment. Computer programs do not necessarily correspond to files in the file system. The program has been tailored to a single file dedicated to the program in question, or to a portion of a file that holds other programs or data (eg, one or more scripts stored in a markup language document). It can be stored in a file (for example, a file that stores one or more modules, subprograms, or code parts). Computer programs can be deployed to run on one computer, or on multiple computers located at one site or distributed across multiple sites and interconnected by communication networks. ..
本稿で記載されたプロセスおよび論理フローは、入力データに作用し、出力を生成することによって機能を実行するための一つまたは複数のコンピュータ・プログラムを実行する一つまたは複数のプログラマブルプロセッサによって実行されることができる。プロセスおよび論理フローはまた、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)のような特殊目的論理回路によって実行されることもでき、装置が、かかる特殊目的論理回路として実装されることもできる。 The processes and logical flows described in this article are run by one or more programmable processors that run one or more computer programs to act on the input data and perform functions by producing outputs. Can be done. Processes and logic flows can also be run by special purpose logic circuits such as FPGAs (Field Programmable Gate Arrays) or ASICs (Application Specific Integrated Circuits), where the device is implemented as such special purpose logic circuits. You can also.
コンピュータ・プログラムの実行に好適なプロセッサは、たとえば、汎用および専用両方のマイクロプロセッサ、および任意の種類のデジタル・コンピュータの任意の一つまたは複数のプロセッサを含む。一般に、プロセッサは、読み出し専用メモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受領する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための一つまたは複数のメモリデバイスである。一般に、コンピュータはまた、データを記憶するための一つまたは複数の大容量記憶装置、たとえば、磁気ディスク、光磁気ディスク、または光ディスクにデータをも含んでいてもよく、あるいはかかる大容量記憶装置からデータを受領し、かかる大容量記憶装置にデータを転送するように動作上結合されていてもよく、あるいはその両方であってもよい。しかしながら、コンピュータは、そのような装置を有する必要はない。コンピュータ・プログラム命令およびデータを記憶するのに好適なコンピュータ読み取り可能媒体は、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイス;磁気ディスク、たとえば、内部ハードディスクまたはリムーバブルディスク;光磁気ディスク;ならびにCD-ROMおよびDVD-ROMディスクを含む、あらゆる形の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリは、特殊目的論理回路によって補足されるか、または特殊目的論理回路に組み込まれることができる。 Suitable processors for running computer programs include, for example, both general purpose and dedicated microprocessors, and any one or more processors of any type of digital computer. Generally, the processor receives instructions and data from read-only memory and / or random access memory. The essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. In general, a computer may also contain data on one or more mass storage devices for storing data, such as magnetic disks, optomagnetic disks, or optical disks, or from such mass storage devices. It may be operationalally coupled to receive the data and transfer the data to such mass storage, or both. However, the computer does not need to have such a device. Computer-readable media suitable for storing computer program instructions and data are semiconductor memory devices such as EPROMs, EEPROMs, and flash memory devices; magnetic disks such as internal hard disks or removable disks; optomagnetic disks; Also includes all forms of non-volatile memory, media and memory devices, including CD-ROM and DVD-ROM discs. Processors and memory can be supplemented by special purpose logic circuits or incorporated into special purpose logic circuits.
この特許文献は多くの詳細を含んでいるが、これらは、いずれかの主題の範囲または特許請求されうるものの範囲に対する限定として解釈されるべきではなく、むしろ具体的な技術の具体的な実施形態に固有でありうる特徴の説明と解釈されるべきである。この特許文献において別々の実施形態の文脈で記載されているある種の特徴は、単一の実施形態において組み合わせて実装されることもできる。逆に、単一の実施形態の文脈において記載されるさまざまな特徴は、複数の実施形態において別々に、または任意の好適なサブコンビネーションにおいて実装されることもできる。さらに、特徴は、ある種の組み合わせにおいて作用するものとして上記に記載され、さらに当初はそのように請求項に記載されることがありうるが、請求項に記載された組み合わせからの一つまたは複数の特徴が、場合によっては、かかる組み合わせから切り出されてもよく、請求項に記載された組み合わせは、サブコンビネーションまたはサブコンビネーションの変形に向けられてもよい。 Although this patent document contains many details, they should not be construed as a limitation to the scope of any subject matter or claims, but rather specific embodiments of the particular technique. It should be interpreted as an explanation of features that may be unique to. Certain features described in the context of separate embodiments in this patent document can also be implemented in combination in a single embodiment. Conversely, the various features described in the context of a single embodiment can also be implemented separately in multiple embodiments or in any suitable subcombination. Further, the features are described above as acting in certain combinations, and may be claimed as such initially, but one or more from the combinations described in the claims. In some cases, the characteristics of the above may be cut out from such a combination, and the combination described in the claims may be directed to a sub-combination or a modification of the sub-combination.
同様に、図面では動作が特定の順序で示されているが、これは、所望の結果を達成するために、そのような動作がその特定の順序でまたは逐次順に実行されること、または、示されたすべての動作が実行されることを要求するものとして理解されるべきではない。さらに、この特許文献に記載されている実施形態におけるさまざまなシステム構成要素の分離は、すべての実施形態においてそのような分離を要求するものとして理解されるべきではない。 Similarly, the drawings show the actions in a particular order, which means that such actions are performed in that particular order or sequentially in order to achieve the desired result, or show. It should not be understood as requiring that all the actions taken be performed. Moreover, the separation of the various system components in the embodiments described in this patent document should not be understood as requiring such separation in all embodiments.
少数の実装および例のみが記述されており、この特許文献に記載され、説明されている内容に基づいて、他の実装、向上および変形が可能である。 Only a few implementations and examples have been described, and other implementations, improvements and modifications are possible based on what is described and described in this patent document.
Claims (20)
ビデオ・データの、複合イントラおよびインター予測モードでコーディングされる現在のビデオ・ブロックとビットストリームとの間の変換中に、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックに基づいて、現在のビデオ・ブロックの第1の予測結果についての第1の重みと、現在のビデオ・ブロックの第2の予測結果についての第2の重みとを含む重みペアを決定するステップであって、
前記第1の予測結果はイントラ予測モードによって生成され、前記第2の予測結果はインター予測モードによって生成される、ステップと;
前記第1の予測結果と前記第2の予測結果の重み付けされた和に基づいて現在のブロックの予測結果を決定するステップと;
前記予測結果に基づいて前記変換を実行するステップとを含む、
方法。 A way to process video:
Based on one or more neighboring video blocks to the current video block during the conversion of the video data between the current video block and the bitstream coded in composite intra and inter-predictive modes, A step in determining a weight pair that includes a first weight for the first prediction result of the current video block and a second weight for the second prediction result of the current video block.
The first prediction result is generated by the intra prediction mode, and the second prediction result is generated by the inter prediction mode.
With the step of determining the prediction result of the current block based on the weighted sum of the first prediction result and the second prediction result;
Including a step of performing the transformation based on the prediction result.
Method.
現在のビデオ・ブロックの前記一つまたは複数の近傍ビデオ・ブロックの予測モードに従って決定される、
請求項1に記載の方法。 The weight pair is:
Determined according to the prediction mode of said one or more neighboring video blocks of the current video block.
The method according to claim 1.
前記2つ以上の近傍ビデオ・ブロックのすべてがイントラ予測モードでコーディングされる場合、前記重みペアは第1の候補重みペアであり、
前記2つ以上の近傍ビデオ・ブロックのすべてが非イントラ予測モードでコーディングされる場合、前記重みペアは前記第1の候補重みペアとは異なる第2の候補重みペアであり、
それ以外の場合、前記重みペアは、前記第1の候補重みペアおよび前記第2の候補重みペアと異なる第3の候補重みペアである、
請求項1ないし12のうちいずれか一項に記載の方法。 The weight pair is determined based on two or more neighboring video blocks.
If all of the two or more neighboring video blocks are coded in intra-predictive mode, the weight pair is the first candidate weight pair.
If all of the two or more neighboring video blocks are coded in non-intra-predictive mode, the weight pair is a second candidate weight pair that is different from the first candidate weight pair.
Otherwise, the weight pair is a third candidate weight pair that is different from the first candidate weight pair and the second candidate weight pair.
The method according to any one of claims 1 to 12.
P=(wInter*Pinter+wIntra*Pintra+offset)>>N
として適用することによって得られ、
ここで、Pは前記予測結果であり、Pinterは前記第1の予測結果であり、Pintraは前記第2の予測結果であり、(wInter,wIntra)は前記重みペアであり、offsetは2に設定される、
請求項1ないし14のうちいずれか一項に記載の方法。 The prediction result is the weight pair for the intra prediction result and the inter prediction result.
P = (wInter * P inter + wIntra * P intra + offset) >> N
Obtained by applying as
Here, P is the prediction result, P inter is the first prediction result, P intra is the second prediction result, (wInter, wIntra) is the weight pair, and offset is 2. Set to,
The method according to any one of claims 1 to 14.
ビデオ・データの、複合イントラおよびインター予測モードでコーディングされる現在のビデオ・ブロックとビットストリームとの間の変換中に、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックに基づいて、現在のビデオ・ブロックの第1の予測結果についての第1の重みと、現在のビデオ・ブロックの第2の予測結果についての第2の重みとを含む重みペアを決定するステップであって、
前記第1の予測結果はイントラ予測モードによって生成され、前記第2の予測結果はインター予測モードによって生成される、ステップと;
前記第1の予測結果と前記第2の予測結果の重み付けされた和に基づいて現在のブロックの予測結果を決定するステップと;
前記予測結果に基づいて前記変換を実行するステップとを実行させるものである、
装置。 A device for processing video, having a processor and non-temporary memory with instructions, the instructions to the processor when executed by the processor:
Based on one or more neighboring video blocks to the current video block during the conversion of the video data between the current video block and the bitstream coded in composite intra and inter-predictive modes, A step in determining a weight pair that includes a first weight for the first prediction result of the current video block and a second weight for the second prediction result of the current video block.
The first prediction result is generated by the intra prediction mode, and the second prediction result is generated by the inter prediction mode.
With the step of determining the prediction result of the current block based on the weighted sum of the first prediction result and the second prediction result;
The step of executing the conversion is executed based on the prediction result.
Device.
ビデオ・データの、複合イントラおよびインター予測モードでコーディングされる現在のビデオ・ブロックとビットストリームとの間の変換中に、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックに基づいて、現在のビデオ・ブロックの第1の予測結果についての第1の重みと、現在のビデオ・ブロックの第2の予測結果についての第2の重みとを含む重みペアを決定するステップであって、
前記第1の予測結果はイントラ予測モードによって生成され、前記第2の予測結果はインター予測モードによって生成される、ステップと;
前記第1の予測結果と前記第2の予測結果の重み付けされた和に基づいて現在のブロックの予測結果を決定するステップと;
前記予測結果に基づいて前記変換を実行するステップとを実行させるものである、
記憶媒体。 A non-temporary computer-readable storage medium that stores instructions that, when executed by the processor, tells the processor:
Based on one or more neighboring video blocks to the current video block during the conversion of the video data between the current video block and the bitstream coded in composite intra and inter-predictive modes, A step in determining a weight pair that includes a first weight for the first prediction result of the current video block and a second weight for the second prediction result of the current video block.
The first prediction result is generated by the intra prediction mode, and the second prediction result is generated by the inter prediction mode.
With the step of determining the prediction result of the current block based on the weighted sum of the first prediction result and the second prediction result;
The step of executing the conversion is executed based on the prediction result.
Storage medium.
複合イントラおよびインター予測モードでコーディングされる現在のビデオ・ブロックについて、現在のビデオ・ブロックに対する一つまたは複数の近傍ビデオ・ブロックに基づいて、現在のビデオ・ブロックの第1の予測結果についての第1の重みと、現在のビデオ・ブロックの第2の予測結果についての第2の重みとを含む重みペアを決定するステップであって、
前記第1の予測結果はイントラ予測モードによって生成され、前記第2の予測結果はインター予測モードによって生成される、ステップと;
前記第1の予測結果と前記第2の予測結果の重み付けされた和に基づいて現在のブロックの予測結果を決定するステップと;
前記予測結果に基づいて前記ビットストリームを生成するステップとを含む、
記録媒体。
A non-temporary computer-readable recording medium that stores a bitstream of video data generated by a method performed by a video processor, wherein the method is:
For the current video block coded in compound intra and inter-prediction modes, the first prediction result for the current video block based on one or more neighboring video blocks for the current video block. A step in determining a weight pair that includes a weight of 1 and a second weight for the second prediction result of the current video block.
The first prediction result is generated by the intra prediction mode, and the second prediction result is generated by the inter prediction mode.
With the step of determining the prediction result of the current block based on the weighted sum of the first prediction result and the second prediction result;
Including a step of generating the bitstream based on the prediction result.
recoding media.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2019079148 | 2019-03-21 | ||
CNPCT/CN2019/079148 | 2019-03-21 | ||
CNPCT/CN2019/100616 | 2019-08-14 | ||
CN2019100616 | 2019-08-14 | ||
PCT/CN2020/080632 WO2020187329A1 (en) | 2019-03-21 | 2020-03-23 | Improved weighting processing of combined intra-inter prediction |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2022524536A JP2022524536A (en) | 2022-05-06 |
JPWO2020187329A5 true JPWO2020187329A5 (en) | 2022-06-15 |
JP7230233B2 JP7230233B2 (en) | 2023-02-28 |
Family
ID=72519663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021554616A Active JP7230233B2 (en) | 2019-03-21 | 2020-03-23 | Improved Weighting for Combined Intra-Inter Prediction |
Country Status (12)
Country | Link |
---|---|
US (3) | US11330257B2 (en) |
EP (1) | EP3912350A4 (en) |
JP (1) | JP7230233B2 (en) |
KR (1) | KR102649520B1 (en) |
CN (3) | CN113545046A (en) |
AU (1) | AU2020242795B2 (en) |
BR (1) | BR112021017512A2 (en) |
CA (1) | CA3131031C (en) |
MX (1) | MX2021010980A (en) |
SG (1) | SG11202109026SA (en) |
WO (2) | WO2020187329A1 (en) |
ZA (1) | ZA202106352B (en) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3625963A4 (en) * | 2017-06-07 | 2020-11-18 | MediaTek Inc. | Method and apparatus of intra-inter prediction mode for video coding |
WO2020141932A1 (en) * | 2019-01-04 | 2020-07-09 | 엘지전자 주식회사 | Inter prediction method and apparatus using cpr-based mmvd |
WO2020184821A1 (en) * | 2019-03-12 | 2020-09-17 | 엘지전자 주식회사 | Method and device for configuring mpm list |
EP3912350A4 (en) | 2019-03-21 | 2022-03-30 | Beijing Bytedance Network Technology Co., Ltd. | Improved weighting processing of combined intra-inter prediction |
CN113994682A (en) | 2019-06-08 | 2022-01-28 | 北京字节跳动网络技术有限公司 | History-based motion vector prediction with default parameters |
KR102622467B1 (en) * | 2019-06-14 | 2024-01-09 | 엘지전자 주식회사 | Video coding method and device using motion vectors |
CN117376556A (en) | 2019-08-14 | 2024-01-09 | 北京字节跳动网络技术有限公司 | Position dependent intra prediction sampling point filtering |
EP3997872A4 (en) | 2019-08-14 | 2022-10-26 | Beijing Bytedance Network Technology Co., Ltd. | Weighting factors for prediction sample filtering in intra mode |
CN114287134A (en) | 2019-08-24 | 2022-04-05 | 北京字节跳动网络技术有限公司 | Context adaptive coding and decoding of block vectors |
CN111050182B (en) * | 2019-12-27 | 2022-02-18 | 浙江大华技术股份有限公司 | Motion vector prediction method, video coding method, related equipment and device |
WO2022177375A1 (en) * | 2021-02-18 | 2022-08-25 | 현대자동차주식회사 | Method for generating prediction block by using weighted sum of intra prediction signal and inter prediction signal, and device using same |
US12069305B2 (en) * | 2021-04-16 | 2024-08-20 | Tencent America LLC | Low memory design for multiple reference line selection scheme |
CN112887732B (en) * | 2021-04-30 | 2021-10-01 | 浙江智慧视频安防创新中心有限公司 | Method and device for inter-frame and intra-frame joint prediction coding and decoding with configurable weight |
US20220417511A1 (en) * | 2021-06-27 | 2022-12-29 | Alibaba Singapore Holding Private Limited | Methods and systems for performing combined inter and intra prediction |
WO2023025098A1 (en) * | 2021-08-23 | 2023-03-02 | Beijing Bytedance Network Technology Co., Ltd. | Method, apparatus, and medium for video processing |
WO2023123495A1 (en) * | 2021-12-31 | 2023-07-06 | Oppo广东移动通信有限公司 | Prediction method and apparatus, device, system, and storage medium |
WO2023163386A1 (en) * | 2022-02-24 | 2023-08-31 | 현대자동차주식회사 | Method and device for video coding for reducing block boundary discontinuity |
WO2023219279A1 (en) * | 2022-05-10 | 2023-11-16 | 현대자동차주식회사 | Method and apparatus for video coding using inter/intra prediction that is on basis of geometric partition |
WO2024078629A1 (en) * | 2022-10-14 | 2024-04-18 | Douyin Vision Co., Ltd. | Method, apparatus, and medium for video processing |
WO2024193431A1 (en) * | 2023-03-17 | 2024-09-26 | Mediatek Inc. | Method and apparatus of combined prediction in video coding system |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1753242A2 (en) * | 2005-07-18 | 2007-02-14 | Matsushita Electric Industrial Co., Ltd. | Switchable mode and prediction information coding |
CN101491107B (en) * | 2006-07-07 | 2012-07-18 | 艾利森电话股份有限公司 | Method for decoding image element group, related encoder and decoder |
WO2008004940A1 (en) * | 2006-07-07 | 2008-01-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Video data management |
US8879637B2 (en) | 2008-10-06 | 2014-11-04 | Lg Electronics Inc. | Method and an apparatus for processing a video signal by which coding efficiency of a video signal can be raised by using a mixed prediction mode in predicting different macroblock sizes |
CN101877785A (en) * | 2009-04-29 | 2010-11-03 | 祝志怡 | Hybrid predicting-based video encoding method |
US9113169B2 (en) | 2009-05-07 | 2015-08-18 | Qualcomm Incorporated | Video encoding with temporally constrained spatial dependency for localized decoding |
KR101791078B1 (en) | 2010-04-16 | 2017-10-30 | 에스케이텔레콤 주식회사 | Video Coding and Decoding Method and Apparatus |
KR101772459B1 (en) | 2010-05-17 | 2017-08-30 | 엘지전자 주식회사 | New intra prediction modes |
WO2012005520A2 (en) | 2010-07-09 | 2012-01-12 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video by using block merging, and method and apparatus for decoding video by using block merging |
US9148666B2 (en) | 2011-02-09 | 2015-09-29 | Lg Electronics Inc. | Method for storing motion information and method for inducing temporal motion vector predictor using same |
US9112526B2 (en) * | 2011-06-15 | 2015-08-18 | Sony Corporation | Binarization of DQP using separate absolute value and sign (SAVS) in CABAC |
WO2013081365A1 (en) * | 2011-11-28 | 2013-06-06 | 에스케이텔레콤 주식회사 | Method and apparatus for video encoding/decoding using improved merge |
US9554150B2 (en) | 2013-09-20 | 2017-01-24 | Qualcomm Incorporated | Combined bi-predictive merging candidates for 3D video coding |
US9609343B1 (en) * | 2013-12-20 | 2017-03-28 | Google Inc. | Video coding using compound prediction |
US20150271515A1 (en) * | 2014-01-10 | 2015-09-24 | Qualcomm Incorporated | Block vector coding for intra block copy in video coding |
KR101802692B1 (en) * | 2014-08-26 | 2017-11-28 | 사빅 글로벌 테크놀러지스 비.브이. | Ferroelectric capacitor-based memory device |
CN107113425A (en) * | 2014-11-06 | 2017-08-29 | 三星电子株式会社 | Method for video coding and equipment and video encoding/decoding method and equipment |
KR102551609B1 (en) | 2014-11-27 | 2023-07-05 | 주식회사 케이티 | Method and apparatus for processing a video signal |
US20160373770A1 (en) * | 2015-06-18 | 2016-12-22 | Qualcomm Incorporated | Intra prediction and intra mode coding |
EP3376764A4 (en) * | 2015-11-12 | 2019-12-04 | LG Electronics Inc. | Method and apparatus for coefficient induced intra prediction in image coding system |
KR20170072637A (en) * | 2015-12-17 | 2017-06-27 | 한국전자통신연구원 | Video Coding/Encoding Method and Apparatus thereof |
GB2547053B (en) * | 2016-02-08 | 2020-07-08 | Canon Kk | Methods, devices, and computer programs for combining the use of intra-layer prediction and inter-layer prediction with scalability & screen content features |
WO2017139937A1 (en) | 2016-02-18 | 2017-08-24 | Mediatek Singapore Pte. Ltd. | Advanced linear model prediction for chroma coding |
US11032550B2 (en) * | 2016-02-25 | 2021-06-08 | Mediatek Inc. | Method and apparatus of video coding |
US20170347094A1 (en) | 2016-05-31 | 2017-11-30 | Google Inc. | Block size adaptive directional intra prediction |
KR20180136555A (en) * | 2016-06-03 | 2018-12-24 | 엘지전자 주식회사 | Intra prediction method and apparatus in video coding system |
US10979732B2 (en) | 2016-10-04 | 2021-04-13 | Qualcomm Incorporated | Adaptive motion vector precision for video coding |
US20180376148A1 (en) * | 2017-06-23 | 2018-12-27 | Qualcomm Incorporated | Combination of inter-prediction and intra-prediction in video coding |
CN107995489A (en) * | 2017-12-20 | 2018-05-04 | 北京大学深圳研究生院 | A kind of combination forecasting method between being used for the intra frame of P frames or B frames |
US11297348B2 (en) | 2018-04-13 | 2022-04-05 | Mediatek Inc. | Implicit transform settings for coding a block of pixels |
US11051034B2 (en) * | 2018-10-08 | 2021-06-29 | Qualcomm Incorporated | History-based motion vector predictor |
US11652984B2 (en) * | 2018-11-16 | 2023-05-16 | Qualcomm Incorporated | Position-dependent intra-inter prediction combination in video coding |
WO2020156464A1 (en) * | 2019-01-31 | 2020-08-06 | Mediatek Inc. | Method and apparatus of combined inter and intraprediction for video coding |
CN113302920B (en) | 2019-02-01 | 2024-09-10 | 北京字节跳动网络技术有限公司 | Extended application of combined inter-frame intra-frame prediction |
US11290726B2 (en) | 2019-02-07 | 2022-03-29 | Qualcomm Incorporated | Inter-intra prediction mode for video data |
US11178414B2 (en) | 2019-02-27 | 2021-11-16 | Mediatek Inc. | Classification for multiple merge tools |
EP3912350A4 (en) | 2019-03-21 | 2022-03-30 | Beijing Bytedance Network Technology Co., Ltd. | Improved weighting processing of combined intra-inter prediction |
-
2020
- 2020-03-23 EP EP20773685.1A patent/EP3912350A4/en active Pending
- 2020-03-23 MX MX2021010980A patent/MX2021010980A/en unknown
- 2020-03-23 CN CN202080019416.1A patent/CN113545046A/en active Pending
- 2020-03-23 CA CA3131031A patent/CA3131031C/en active Active
- 2020-03-23 WO PCT/CN2020/080632 patent/WO2020187329A1/en unknown
- 2020-03-23 KR KR1020217029590A patent/KR102649520B1/en active IP Right Grant
- 2020-03-23 AU AU2020242795A patent/AU2020242795B2/en active Active
- 2020-03-23 SG SG11202109026SA patent/SG11202109026SA/en unknown
- 2020-03-23 WO PCT/CN2020/080631 patent/WO2020187328A1/en active Application Filing
- 2020-03-23 JP JP2021554616A patent/JP7230233B2/en active Active
- 2020-03-23 BR BR112021017512A patent/BR112021017512A2/en unknown
- 2020-03-23 CN CN202311518214.3A patent/CN117440173A/en active Pending
- 2020-03-23 CN CN202080019465.5A patent/CN113545074B/en active Active
-
2021
- 2021-05-17 US US17/322,579 patent/US11330257B2/en active Active
- 2021-06-23 US US17/356,220 patent/US11425406B2/en active Active
- 2021-06-23 US US17/356,175 patent/US11876993B2/en active Active
- 2021-08-31 ZA ZA2021/06352A patent/ZA202106352B/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7230233B2 (en) | Improved Weighting for Combined Intra-Inter Prediction | |
JP7259053B2 (en) | Extended Application of Combined Intra-Inter Prediction | |
WO2019192491A1 (en) | Video processing methods and apparatuses for sub-block motion compensation in video coding systems | |
EP3912357B1 (en) | Constrained motion vector derivation for long-term reference pictures in video coding | |
JP2022505886A (en) | Bandwidth control method for inter-prediction | |
JP2022506119A (en) | Weights in inter-intra composite prediction mode | |
JPWO2020187329A5 (en) | ||
US20220094927A1 (en) | Sub-block based intra block copy | |
JP2024069472A (en) | Use of converted one-way prediction candidate | |
JP2024023522A (en) | Formation of motion candidate list for coding picture | |
WO2020073920A1 (en) | Methods and apparatuses of combining multiple predictors for block prediction in video coding systems | |
JPWO2020156537A5 (en) | ||
JP2022522149A (en) | Size-dependent intercoding | |
WO2020012449A1 (en) | Shape dependent interpolation order | |
RU2802175C2 (en) | Advanced weight processing using combined mode with intra-frame and inter-frame prediction |