(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-04-13
(54)【発明の名称】イントラ予測ベースのビデオ信号処理方法及び装置
(51)【国際特許分類】
H04N 19/119 20140101AFI20220406BHJP
H04N 19/117 20140101ALI20220406BHJP
H04N 19/176 20140101ALI20220406BHJP
H04N 19/12 20140101ALI20220406BHJP
H04N 19/157 20140101ALI20220406BHJP
H04N 19/593 20140101ALI20220406BHJP
【FI】
H04N19/119
H04N19/117
H04N19/176
H04N19/12
H04N19/157
H04N19/593
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021550241
(86)(22)【出願日】2020-02-28
(85)【翻訳文提出日】2021-08-27
(86)【国際出願番号】 KR2020002920
(87)【国際公開番号】W WO2020175965
(87)【国際公開日】2020-09-03
(31)【優先権主張番号】10-2019-0024368
(32)【優先日】2019-02-28
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2019-0035438
(32)【優先日】2019-03-27
(33)【優先権主張国・地域又は機関】KR
(81)【指定国・地域】
(71)【出願人】
【識別番号】516079109
【氏名又は名称】ウィルス インスティテュート オブ スタンダーズ アンド テクノロジー インコーポレイティド
(71)【出願人】
【識別番号】520144428
【氏名又は名称】ヒューマックス・カンパニー・リミテッド
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ドンチョル・キム
(72)【発明者】
【氏名】ゴンジュン・コ
(72)【発明者】
【氏名】ジェホン・ジュン
(72)【発明者】
【氏名】ジュヒョン・ソン
(72)【発明者】
【氏名】ジンサム・クァク
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159LC09
5C159MA04
5C159MA21
5C159MA23
5C159MC11
5C159ME01
5C159ME11
5C159TA12
5C159TA31
5C159TA37
5C159TA68
5C159TC26
5C159TC27
5C159TC31
5C159TC33
5C159TD12
5C159UA02
5C159UA05
5C159UA11
5C159UA16
(57)【要約】
ビデオ信号をエンコード又はデコードするビデオ信号処理方法及び装置が開示される。ビデオ信号処理方法において、現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定する段階;前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割する段階;前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成する段階;及び、前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元する段階を含むことができる。
【特許請求の範囲】
【請求項1】
ビデオ信号処理方法であって、
現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定する段階;
前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割する段階;
前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成する段階;及び
前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元する段階を含み、
前記予測ブロックを生成する段階は、
前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行う段階を含む、ビデオ信号処理方法。
【請求項2】
前記予測ブロックを生成する段階は、
前記変換ブロックの幅及び高さのうち少なくとも一つに基づき、前記位置依存のイントラ予測サンプルフィルタリングの適用されるか否かを決定する段階をさらに含む、請求項1に記載のビデオ信号処理方法。
【請求項3】
前記位置依存のイントラ予測サンプルフィルタリングの適用されるか否かを決定する段階は、
前記変換ブロックの幅が予め設定された基準値より大きいか等しく、且つ前記変換ブロックの高さが前記予め設定された基準値より大きいか等しい場合、前記位置依存のイントラ予測サンプルフィルタリングを適用すると決定することによって行われる、請求項2に記載のビデオ信号処理方法。
【請求項4】
前記変換ブロックの残差ブロックは、前記変換ブロック単位で二次逆変換(inverse secondary transform)及び一次逆変換(inverse primary transform)を行うことによって導出される、請求項1に記載のビデオ信号処理方法。
【請求項5】
前記現在ブロックに二次変換が適用されるか否かを決定する段階;
前記現在ブロックに前記二次変換が適用される場合、前記現在ブロックのイントラ予測モードに基づき、予め定義された二次変換カーネルセットの中から、前記現在ブロックに適用される二次変換カーネルセットを導出する段階;
前記決定された二次変換カーネルセット内で前記現在ブロックに適用される二次変換カーネルを決定する段階;
前記変換ブロック単位で二次逆変換を行うことによって前記変換ブロックの二次逆変換されたブロックを生成する段階;及び
前記二次逆変換されたブロックに対して一次逆変換を行うことによって、前記変換ブロックの残差ブロックを生成する段階を含む、請求項1に記載のビデオ信号処理方法。
【請求項6】
ビデオ信号処理装置であって、
プロセッサを含み、
前記プロセッサは、
現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定し、
前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割し、
前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成し、
前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元し、
前記プロセッサは、
前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行うことを特徴とする、ビデオ信号処理装置。
【請求項7】
前記プロセッサは、
前記変換ブロックの幅及び高さのうち少なくとも一つに基づき、前記位置依存のイントラ予測サンプルフィルタリングの適用されるか否かを決定する、請求項6に記載のビデオ信号処理装置。
【請求項8】
前記プロセッサは、
前記変換ブロックの幅が予め設定された基準値より大きいか等しく、且つ前記変換ブロックの高さが前記予め設定された基準値より大きいか等しい場合、前記位置依存のイントラ予測サンプルフィルタリングを適用すると決定する、請求項7に記載のビデオ信号処理装置。
【請求項9】
前記変換ブロックの残差ブロックは、前記変換ブロック単位で二次逆変換(inverse secondary transform)及び一次逆変換(inverse primary transform)を行うことによって導出される、請求項6に記載のビデオ信号処理装置。
【請求項10】
前記プロセッサは、
前記現在ブロックに二次変換が適用されるか否かを決定し、
前記現在ブロックに前記二次変換が適用される場合、前記現在ブロックのイントラ予測モードに基づき、予め定義された二次変換カーネルセットの中から、前記現在ブロックに適用される二次変換カーネルセットを導出し、
前記決定された二次変換カーネルセット内で前記現在ブロックに適用される二次変換カーネルを決定し、
前記変換ブロック単位で二次逆変換を行うことによって前記変換ブロックの二次逆変換されたブロックを生成し、
前記二次逆変換されたブロックに対して一次逆変換を行うことによって、前記変換ブロックの残差ブロックを生成する、請求項6に記載のビデオ信号処理装置。
【請求項11】
ビデオ信号処理方法であって、
現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定する段階;
前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割する段階;
前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成する段階;及び
原本ブロックから前記予測ブロックを減算することによって前記変換ブロックの残差ブロックを生成する段階を含み、
前記予測ブロックを生成する段階は、
前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行う段階を含む、ビデオ信号処理方法。
【請求項12】
コンピューティングデバイスの一つ以上のプロセッサで実行するように構成されたコンピュータ実行可能コンポーネントが記憶されている非一時的(non-transitory)コンピュータ可読媒体(computer-executable component)であって、前記コンピュータ実行可能コンポーネントは、
現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定し、
前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割し、
前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成し、
前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元し、
前記コンピュータ実行可能コンポーネントは、
前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行うことを特徴とする、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ビデオ信号の処理方法及び装置に関し、より詳細には、イントラ予測に基づいてビデオ信号をエンコード又はデコードするビデオ信号処理方法及び装置に関する。
【背景技術】
【0002】
圧縮符号化とは、デジタル化した情報を通信回線を介して伝送するか、貯蔵媒体に適合した形態に貯蔵するための一連の信号処理技術を意味する。圧縮符号化の対象としては音声、映像、文字などの対象が存在するが、特に映像を対象とする圧縮符号化を行う技術をビデオ映像圧縮と称する。ビデオ信号に対する圧縮符号化は、空間的な相関関係、時間的な相関関係、確率的な相関関係などを考慮して剰余情報を除去することで行われる。しかし、最近の多様なメディア及びデータ伝送媒体の発展によって、より高効率のビデオ信号処理方法及び装置が求められている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明の目的は、ビデオ信号のコーディング効率を上げることにある。具体的に、本発明は、イントラサブパーティション(Intra sub-partitions)が適用されることによって予測及び復元が行われる単位でPDPC(position-dependent intra prediction combination)及びLFNST(Low-Frequency Non-Separable Transform)を行う方法を提案する。
【課題を解決するための手段】
【0004】
上記のような課題を解決するために、本発明は、次のようなビデオ信号処理装置及びビデオ信号処理方法を提供する。
【0005】
本発明の一実施例によれば、ビデオ信号処理方法であって、現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定する段階;前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割する段階;前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成する段階;及び、前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元する段階を含み、前記予測ブロックを生成する段階は、前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行う段階を含むことができる。
【0006】
実施例として、前記予測ブロックを生成する段階は、前記変換ブロックの幅及び高さのうち少なくとも一つに基づき、前記位置依存のイントラ予測サンプルフィルタリングの適用されるか否かを決定する段階をさらに含むことができる。
【0007】
実施例として、前記位置依存のイントラ予測サンプルフィルタリングの適用されるか否かを決定する段階は、前記変換ブロックの幅が予め設定された基準値より大きいか等しく、且つ前記変換ブロックの高さが前記予め設定された基準値より大きいか等しい場合に、前記位置依存のイントラ予測サンプルフィルタリングを適用すると決定することによって行われてよい。
【0008】
実施例として、前記変換ブロックの残差ブロックは、前記変換ブロック単位で二次逆変換(inverse secondary transform)及び一次逆変換(inverse primary transform)を行うことによって導出されてよい。
【0009】
実施例として、前記現在ブロックに二次変換が適用されるか否かを決定する段階;前記現在ブロックに前記二次変換が適用される場合、前記現在ブロックのイントラ予測モードに基づき、予め定義された二次変換カーネルセットの中から、前記現在ブロックに適用される二次変換カーネルセットを導出する段階;前記決定された二次変換カーネルセット内で前記現在ブロックに適用される二次変換カーネルを決定する段階;前記変換ブロック単位で二次逆変換を行うことによって前記変換ブロックの二次逆変換されたブロックを生成する段階;及び、前記二次逆変換されたブロックに対して一次逆変換を行うことによって、前記変換ブロックの残差ブロックを生成する段階を含むことができる。
【0010】
本発明の一実施例によれば、ビデオ信号処理装置であって、プロセッサを含み、前記プロセッサは、現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定し、前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割し、前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成し、前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元し、前記プロセッサは、前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行うことを特徴とする、ビデオ信号処理装置が提供される。
【0011】
実施例として、前記プロセッサは、前記変換ブロックの幅及び高さのうち少なくとも一つに基づき、前記位置依存のイントラ予測サンプルフィルタリングの適用されるか否かを決定することができる。
【0012】
実施例として、前記プロセッサは、前記変換ブロックの幅が予め設定された基準値より大きいか等しく、且つ前記変換ブロックの高さが前記予め設定された基準値より大きいか等しい場合、前記位置依存のイントラ予測サンプルフィルタリングを適用すると決定することができる。
【0013】
実施例として、前記変換ブロックの残差ブロックは、前記変換ブロック単位で二次逆変換(inverse secondary transform)及び一次逆変換(inverse primary transform)を行うことによって導出されてよい。
【0014】
実施例として、前記プロセッサは、前記現在ブロックに二次変換が適用されるか否かを決定し、前記現在ブロックに前記二次変換が適用される場合、前記現在ブロックのイントラ予測モードに基づき、予め定義された二次変換カーネルセットの中から、前記現在ブロックに適用される二次変換カーネルセットを導出し、前記決定された二次変換カーネルセット内で前記現在ブロックに適用される二次変換カーネルを決定し、前記変換ブロック単位で二次逆変換を行うことによって前記変換ブロックの二次逆変換されたブロックを生成し、前記二次逆変換されたブロックに対して一次逆変換を行うことによって、前記変換ブロックの残差ブロックを生成することができる。
【0015】
本発明の一実施例によれば、現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定する段階;前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割する段階;前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成する段階;及び、原本ブロックから前記予測ブロックを減算することによって前記変換ブロックの残差ブロックを生成する段階を含み、前記予測ブロックを生成する段階は、前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行う段階を含む、ビデオ信号処理方法が提供される。
【0016】
本発明の一実施例によれば、コンピューティングデバイスの一つ以上のプロセッサで実行するように構成されたコンピュータ実行可能コンポーネントが記憶されている非一時的(non-transitory)コンピュータ可読媒体(computer-executable component)であって、前記コンピュータ実行可能コンポーネントは、現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定し、前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割し、前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成し、前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元し、前記コンピュータ実行可能コンポーネントは、前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行うことを特徴とする、非一時的コンピュータ可読媒体が提供される。
【発明の効果】
【0017】
本発明の実施例によれば、ビデオ信号のコーディング効率を上げることができる。また、本発明の一実施例によれば、イントラサブパーティション(Intra sub-partitions)によって分割された変換ブロック単位でPDPC(position-dependent intra prediction combination)及びLFNSTを行うことによって予測の正確度を高め、圧縮性能を向上させることができる。
【図面の簡単な説明】
【0018】
【
図1】本発明の一実施例によるビデオ信号エンコーディング装置の概略的なブロック図である。
【
図2】本発明の一実施例によるビデオ信号デコーディング装置の概略的なブロック図である。
【
図3】ピクチャ内でコーディングツリーユニットがコーディングユニットに分割される実施例を示す図である。
【
図4】クォードツリー及びマルチ-タイプツリーの分割をシグナリングする方法の一実施例を示す図である。
【
図5】本発明の実施例によるイントラ予測方法をより詳しく示す図である。
【
図6】本発明の実施例によるイントラ予測方法をより詳しく示す図である。
【
図7】本発明の一実施形態に従うインター予測方法を図示する。
【
図8】エンコーダがレジデュアル信号を変換する方法を具体的に示す図である。
【
図9】エンコーダ及びデコーダが変換係数を逆変換してレジデュアル信号を取得する方法を具体的に示す図である。
【
図10】本発明の一実施例に係るコーディングブロックが複数個の変換ブロックに分割される場合、イントラ予測モードの適用方法を説明するための図である。
【
図11】本発明の一実施例に係るPDPC(position-dependent intra prediction combination)適用方法を説明するための図である。
【
図12】本発明の一実施例として、イントラ予測モードによってPDPCに用いられる参照サンプルを例示する図である。
【
図13】本発明の一実施例として、イントラ予測モードによってPDPCに用いられる参照サンプルを例示する図である。
【
図14】本発明が適用される一実施例に係るコーディングブロックに対するISP(Intra subpartitions)及びPDPC(position-dependent intra prediction combination)適用方法を例示する図である。
【
図15】本発明の一実施例に係る変換ユニット分割処理方法を説明するための図である。
【
図16】本発明が適用される一実施例に係る一次変換(primary transform)及び二次変換(secondary transform)を経てエンコード/デコードされるプロセスを示す図である。
【
図17】本発明の一実施例に係る二次変換に用いられる変換カーネルを選択する方法を説明するための図である。
【
図18】本発明の一実施例に係る変換ブロック単位二次変換適用方法を例示する図である。
【
図19】本発明が適用される一実施例に係るイントラ予測モードが適用された現在コーディングブロックにPDPCを適用する方法を示す図である。
【
図20】本発明の一実施例に係るビデオ信号処理方法を示すフローチャートである。
【発明を実施するための形態】
【0019】
本明細書で使用される用語は本発明における機能を考慮しながらできるだけ現在広く使用されている一般的な用語を選択したが、これは当分野に携わる技術者の意図、慣例または新たな技術の出現などによって異なり得る。また、特定の場合は出願人が任意に選定した用語もあるが、この場合、該当の発明を実施する形態の部分においてその意味を記載する。よって、本明細書で使用される用語は、単なる用語の名称ではなく、その用語の有する実質的な意味と本明細書全般にわたる内容に基づいて解釈すべきであることを明らかにする。
【0020】
本明細書において、一部用語は以下のように解釈される。コーディングは、場合によってはエンコーディングまたはでコーディングに解釈される。本明細書において、ビデオ信号のエンコーディング(符号化)を行ってビデオ信号のビットストリームを生成する装置はエンコーディング装置またはエンコーダと称され、ビデオ信号ビットストリームのデコーディング(復号化)を行ってビデオ信号を復元する装置はデコーディング装置またはデコーダと称される。また、本明細書において、ビデオ信号処理装置はエンコーダ及びデコーダをいずれも含む概念の用語として使用される。情報(information)は値(values)、パラメータ(parameter)、係数(coefficients)、成分(elements)などをいずれも含む用語であって、場合によっては意味が異なるように解釈されることがあるため、本発明はこれに限らない。 ‘ユニット’は、映像処理の基本単位又はピクチャの特定位置を表す意味で使われ、ルーマ(luma)成分及びクロマ(chroma)成分のうち少なくとも一つを含むイメージ領域のことを指す。また、「ブロック」は輝度成分及び色差成分(つまり、Cb及びCr)のうち特定成分を含むイメージ領域を指す。但し、実施例によって「ユニット」、「ブロック」、「パーティション」、及び「領域」などの用語は互いに混合して使用されてもよい。また、本明細書において、ユニットはコーディングユニット、予測ユニット、変換ユニットをいずれも含む概念として使用される。ピクチャはフィールドまたはフレームを指し、実施例よっては前記用語は互いに混用して使用される。
【0021】
図1は、本発明の一実施例によるビデオ信号エンコーディング装置100の概略的なブロック図である。
図1を参照すると、本明細書のエンコーディング装置100は、変換部110、量子化部115、逆量子化部120、逆変換部125、フィルタリング部130、予測部150、及びエントロピーコーディング部160を含む。
【0022】
変換部110は、入力されたビデオ信号と予測部150で生成された予測信号の差であるレジデュアル信号を変換して変換係数値を獲得する。例えば、離散コサイン変換(Discrete Cosine Transform、DCT)、離散サイン変換(Discrete Sine Transform、DST)、またはウェーブレット変換(Wavelet Transform)などが使用される。離散コサイン変換及び離散サイン変換は、入力されたピクチャ信号をブロックの形態に分けて変換を行うようになる。変換において、変換領域内の値の分布と特性によってコーディング効率が異なり得る。量子化部115は、変換部110内で出力された変換係数の値を量子化する。
【0023】
コーディング効率を上げるために、ピクチャ信号をそのままコーディングするのではなく、予測部150を介して予めコーディングされた領域を利用してピクチャを予測し、予測されたピクチャに原本ピクチャと予測ピクチャの間のレジデュアル値を足して復元ピクチャを獲得する方法が使用される。エンコーダとデコーダでミスマッチが発生しないように、エンコーダで予測を行う際にはデコーダでも使用可能な情報を使用すべきである。そのために、エンコーダでは符号化した現在ブロックを更に復元する過程を行う。逆量子化部120では変換係数値を逆量子化し、逆変換部125では逆量子化された変換係数値を利用してレジデュアル値を復元する。一方、フィルタリング部130は、復元されたピクチャの品質改善及び符号化効率の向上のためのフィルタリング演算を行う。例えば、デブロッキングフィルタ、サンプル適応的オフセット(Sample Adpative Offset、SAO)、及び適応的ループフィルタなどが含まれてもよい。フィルタリングを経たピクチャは、出力されるか参照ピクチャとして利用するために復号ピクチャバッファ(Decoded Picture Buffer、DPB)156に貯蔵される。
【0024】
コーディング効率を上げるために、ピクチャ信号をそのままコードせず、予測部150で既にコードされた領域を用いてピクチャを予測し、予測されたピクチャに原ピクチャと予測ピクチャ間のレジデュアル値を足して復元ピクチャを取得する方法が用いられる。イントラ予測部152では、現在ピクチャ内で画面内予測を行い、インター予測部154では、復号ピクチャバッファ156に保存された参照ピクチャを用いて現在ピクチャを予測する。イントラ予測部152は、現在ピクチャ内の復元された領域から画面内予測を行い、画面内符号化情報をエントロピーコーディング部160に伝達する。インター予測部154はさらに、モーション推定部154a及びモーション補償部154bを含んで構成されてよい。モーション推定部154aでは、復元された特定領域を参照して現在領域のモーションベクトル値を取得する。モーション推定部154aでは、参照領域の位置情報(参照フレーム、モーションベクトルなど)などをエントロピーコーディング部160に伝達してビットストリームに含まれ得るようにする。モーション推定部154aから伝達されたモーションベクトル値を用いて、モーション補償部154bでは画面間モーション補償を行う。
【0025】
予測部150は、イントラ予測部152とインター予測部154を含む。イントラ予測部152は現在ピクチャ内でイントラ(intra)予測を行い、インター予測部154は復号ピクチャバッファ156に貯蔵された参照バッファを利用して現在ピクチャを予測するインター(inter)予測を行う。イントラ予測部152は、現在ピクチャ内の復元されたサンプルからイントラ予測を行い、イントラ符号化情報をエントロピーコーディング部160に伝達する。イントラ符号化情報は、イントラ予測モード、MPM(Most Probable Mode)フラッグ、MPMインデックスのうち少なくとも一つを含む。 イントラ符号化情報は、参照サンプルに関する情報を含むことができる。 イントラ符号化情報は参照サンプルに関する情報を含む。インター予測部154は、モーション推定部154a及びモーション補償部154bを含んで構成される。モーション推定部154aは、復元された参照信号ピクチャの特定領域を参照して現在領域のモーションベクトル値を獲得する。モーション推定部154aは、参照領域に対するモーション情報セット(参照ピクチャインデックス、モーションベクトル情報)をエントロピーコーディング部160に伝達する。モーション補償部154bは、モーション補償部154aから伝達されたモーションベクトル値を利用してモーション補償を行う。インター予測部154は、参照領域に対するモーション情報を含むインター符号化情報をエントロピーコーディング部160に伝達する。
【0026】
更なる実施例によって、予測部150はイントラブロックコピー(block copy、BC)予測部(図示せず)を含む。イントラBC予測部は、現在ピクチャ内の復元されたサンプルからイントラBC予測を行い、イントラBC符号化情報をエントロピーコーディング部160に伝達する。イントラBC予測部は、現在ピクチャ内の特定領域を参照して現在領域の予測に利用される参照領域を示すブロックベクトル値を獲得する。イントラBC予測部は、獲得されたブロックベクトル値を利用してイントラBC予測を行う。イントラBC予測部は、イントラBC符号化情報をエントロピーコーディング部160に伝達する。イントラBC予測部はブロックベクトル情報を含む。
【0027】
上述したピクチャ予測が行われれば、変換部110は原本ピクチャと予測ピクチャの間のレジデュアル値を変換して変換係数値を獲得する。この際、変換はピクチャ内で特定ブロック単位で行われるが、特定ブロックのサイズは予め設定された範囲内で可変する。量子化部115は、変換部110で生成された変換係数の値を量子化してエントロピーコーディング部160に伝達する。
【0028】
エントロピーコーディング部160は、量子化された変換係数を示す情報、イントラ符号化情報、及びインター符号化情報などをエントロピーコーディングしてビデオ信号ビットストリームを生成する。 エントロピーコーディング部160では、可変長コーディング(Variable Length Codeing、VLC)方式と算術コーディング(arithmetic coding)方式などが使用される。可変長コーディング(VLC)方式は入力されるシンボルを連続したコードワードに変換するが、コードワードの長さは可変的である。例えば、よく発生するシンボルは短いコードワードで、よく発生しないシンボルは長いコードワードで表現する。可変長コーディング方式として、コンテキスト基盤適応型可変長コーディング(Context-based Adaptive Variable Length Coding、CAVLC)方式が使用される。算術コーディングは連続したデータシンボルを一つの素数に変換するが、算術コーディングは各シンボルを表現するために必要な最適の素数ビットを得る。算術コーディングとして、コンテキスト基盤適合型算術符号化(Context-based Adaptive Binary Arithmetic Coding、CABAC)方式が使用される。 例えば、エントロピーコーディング部160は、量子化された変換係数を示す情報を二進化することができる。また、エントロピーコーディング部160は、二進化された情報を算術コーディングしてビットストリームを生成することができる。
【0029】
前記生成されたビットストリームは、NAL(Network Abstraction Layer)ユニットを基本単位にカプセル化される。NALユニットは、符号化された整数個のコーディングツリーユニット(coding tree unit)を含む。ビデオデコーダでビットストリームを復号化するためには、まずビットストリームをNALユニット単位に分離した後、分離されたそれぞれのNALユニットを復号化すべきである。一方、ビデオ信号ビットストリームの復号化のために必要な情報は、ピクチャパラメータセット(Picture Parameter Set、PPS)、シーケンスパラメータセット(Sequence Parameter Set、SPS)、ビデオパラメータセット(Video Parameter Set、VPS)などのような上位レベルセットのRBSP(Raw Byte Sequence Payload)を介して伝送される。
【0030】
一方、
図1のブロック図は本発明の一実施例によるエンコーディング装置100を示し、分離して示したブロックはエンコーディング装置100のエレメントを論理的に区別して示している。よって、上述したエンコーディング装置100のエレメントは、ディバイスの設計に応じて一つのチップまたは複数のチップに取り付けられる。一実施例によると、上述したエンコーディング装置100の各エレメントの動作はプロセッサ(図示せず)によって行われる。
【0031】
図2は、本発明の実施例によるビデオ信号デコーディング装置の200概略的なブロック図である。
図2を参照すると、本明細書のデコーディング装置200は、エントロピーデコーディング部210、逆量子化部220、逆変換部225、フィルタリング部230、及び予測部250を含む。
【0032】
エントロピーデコーディング部210は、ビデオ信号ビットストリームをエントロピーデコードし、各領域に対する変換係数情報、イントラ符号化情報、インター符号化情報などを抽出する。例えば、エントロピーデコーディング部210は、ビデオ信号ビットストリームから特定領域の変換係数情報に対する二進化コードを取得することができる。また、エントロピーデコーディング部210は二進化コードを逆二進化し、量子化された変換係数を取得する。逆量子化部220は量子化された変換係数を逆量子化し、逆変換部225は、逆量子化された変換係数を用いてレジデュアル値を復元する。ビデオ信号処理装置200は、逆変換部225から取得したレジデュアル値を、予測部250から取得した予測値と合算して、元来の画素値を復元する。
【0033】
一方、フィルタリング部230は、ピクチャに対するフィルタリングを行って画質を向上させる。ここには、ブロック歪曲現象を減少させるためのデブロッキングフィルタ及び/またはピクチャ全体の歪曲を除去するための適応的ループフィルタなどが含まれる。フィルタリングを経たピクチャは出力されるか、次のピクチャに対する参照ピクチャとして利用するために復号ピクチャバッファ(DPB)256に貯蔵される。
【0034】
予測部250は、イントラ予測部252及びインター予測部254を含む。予測部250は、前述したエントロピーデコーディング部210を通じて復号化された符号化タイプ、各領域に対する変換係数、イントラ/インター符号化情報などを活用して予測ピクチャを生成する。復号化が遂行される現在ブロックを復元するために、現在ブロックが含まれた現在ピクチャまたは他のピクチャの復号化された領域が利用できる。 復元に現在ピクチャだけを用いる、すなわち、イントラ予測又はイントラBC予測を行うピクチャ(又は、タイル/スライス)をイントラピクチャ又はIピクチャ(又は、タイル/スライス)、イントラ予測、インター予測及びイントラBC予測を全て行うことができるピクチャ(又は、タイル/スライス)を、インターピクチャ(又は、タイル/スライス)という。インターピクチャ(又は、タイル/スライス)のうち、各ブロックのサンプル値を予測するために、最大で1つのモーションベクトル及び参照ピクチャインデックスを用いるピクチャ(又は、タイル/スライス)を、予測ピクチャ(predictive picture)又はPピクチャ(又は、タイル/スライス)といい、最大で2つのモーションベクトル及び参照ピクチャインデックスを用いるピクチャ(又は、タイル/スライス)を、双予測ピクチャ(Bi-predictive picture)又はBピクチャ(又は、タイル/スライス)という。 言い換えると、Pピクチャ(または、タイル/スライス)は各ブロックを予測するために最大1つの動き情報セットを用いて、Bピクチャ(または、タイル/スライス)は各ブロックを予測するために最大2つの動き情報セットを用いる。ここで、動き情報セットは1つ以上の動きベクトルと1つの参照ピクチャインデックスを含む。
【0035】
イントラ予測部252は、イントラ符号化情報及び現在ピクチャ内の復元されたサンプルを利用して予測ブロックを生成する。上述したように、イントラ符号化情報は、イントラ予測モード、MPM(MOST Probable Mode)フラッグ、MPMインデックスのうち少なくとも一つを含む。イントラ予測部252は、現在ブロックの左側及び/または上側に位置する復元されたサンプルを参照サンプルとして利用して、現在ブロックのサンプル値を予測する。本開示において、復元されたサンプル、参照サンプル、及び現在ブロックのサンプルはピクセルを示す。また、サンプル値(sample value)はピクセル値を示す。
【0036】
一実施例において、参照サンプルは現在ブロックの周辺ブロックに含まれたサンプルである。例えば、参照サンプルは現在ブロックの左側境界に隣接したサンプル及び/または上側境界に隣接したサンプルである。また、参照サンプルは現在ブロックの周辺ブロックのサンプルのうち、現在ブロックの左側境界から予め設定された距離以内のライン上に位置するサンプル及び/または現在ブロックの上側境界から予め設定された距離以内のライン上に位置するサンプルである。この際、現在ブロックの周辺ブロックは、現在ブロックに隣接した左側(L)ブロック、上側(A)ブロック、下左側(Below Left、BL)ブロック、右上側(Above Right、AR)ブロック、または左上側(Above Left、AL)ブロックのうち少なくとも一つを含む。
【0037】
インター予測部254は、復号ピクチャバッファ256に貯蔵された参照ピクチャ及びインター符号化情報を利用して予測ブロックを生成する。インター符号化情報は、参照ブロックに対する現在ブロックのモーション情報セット(参照ピクチャインデックス、モーションベクトルなど)を含む。インター予測には、L0予測、L1予測、及び双予測(Bi-prediction)がある。L0予測はL0ピクチャリストに含まれた一つの参照ピクチャを利用した予測であり、L1予測はL1ピクチャリストに含まれた一つの参照ピクチャを利用した予測を意味する。そのためには、1セットのモーション情報(例えば、モーションベクトル及び参照ピクチャインデックス)が必要である。双予測方式では最大2つの参照領域を利用するが、この2つの参照領域は同じ参照ピクチャに存在してもよく、互いに異なるピクチャにそれぞれ存在してもよい。つまり、双予測方式では最大2セットのモーション情報(例えば、モーションベクトル及び参照ピクチャインデックス)が利用されるが、2つのモーションベクトルが同じ参照ピクチャインデックスに対応してもよく、互いに異なる参照ピクチャインデックスに対応してもよい。この際、参照ピクチャは時間的に現在ピクチャの以前や以降のいずれにも表示(または出力)される。 一実施例によって、双予測方式では、使用される2個の参照領域は、L0ピクチャリスト及びL1ピクチャリストのそれぞれから選択された領域であってよい。
【0038】
インター予測部254は、モーションベクトル及び参照ピクチャインデックスを利用して現在の参照ブロックを獲得する。前記参照ブロックは、参照ピクチャインデックスに対応する参照ピクチャ内に存在する。また、モーションベクトルによって特定されたブロックのサンプル値またはこれの補間(interpolation)された値が現在ブロックの予測子(predictor)として利用される。サブペル(sub-pel)単位のピクセル正確度を有するモーション予測のために、例えば、輝度信号に対して8-タブ補間フィルタが、色差信号に対して4-タブ補間フィルタが使用される。但し、サブペル単位のモーション予測のための補間フィルタはこれに限らない。このように、インター予測部254は、以前復元されたピクチャから現在ユニットのテクスチャを予測するモーション補償(motion compensation)を行う。この際、インター予測部はモーション情報セットを利用する。
【0039】
更なる実施例によって、予測部250は、イントラBC予測部(図示せず)を含むことができる。イントラBC予測部は、現在ピクチャ内の復元されたサンプルを含む特定領域を参照して現在領域を復元することができる。イントラBC予測部は、エントロピーデコーディング部210から、現在領域に対するイントラBC符号化情報を取得する。イントラBC予測部は、現在ピクチャ内の特定領域を指示する現在領域のブロックベクトル値を取得する。イントラBC予測部は、取得されたブロックベクトル値を用いてイントラBC予測を行うことができる。イントラBC符号化情報は、ブロックベクトル情報を含むことができる。
【0040】
前記イントラ予測部252又はインター予測部254から出力された予測値、及び逆変換部225から出力されたレジデュアル値が合算されて復元されたビデオピクチャが生成される。すなわち、ビデオ信号デコーディング装置200は、予測部250で生成された予測ブロックと逆変換部225から取得されたレジデュアルを用いて現在ブロックを復元する。
【0041】
一方、
図2のブロック図は本発明の一実施例によるデコーディング装置200を示し、分離して示したブロックはデコーディング装置200のエレメントを論理的に区別して示している。よって、上述したデコーディング装置200のエレメントは、ディバイスの設計に応じて一つのチップまたは複数のチップに取り付けられる。一実施例によると、上述したデコーディング装置200の各エレメントの動作はプロセッサ(図示せず)によって行われる。
【0042】
図3は、ピクチャ内でコーディングツリーユニット(Coding Tree Unit、CTU)がコーディングユニット(Coding Units、CUs)に分割される実施例を示している。ビデオ信号のコーディング過程において、ピクチャはコーディングツリーユニット(CTU)のシーケンスに分割される。コーディングツリーユニットは、輝度サンプルのNXNブロックと、それに対応する色差サンプルの2つのブロックからなる。コーディングツリーユニットは、複数のコーディングユニットに分割される。コーディングツリーユニットは分割されずにリーフノードになってもよい。この場合、コーディングツリーユニット自体がコーディングユニットになり得る。コーディングユニットは上述したビデオ信号の処理過程、つまり、イントラ/インター予測、変換、量子化及び/またはエントロピーコーディングなどの過程でピクチャを処理するための基本単位を指す。一つのピクチャ内において、コーディングユニットのサイズ及び模様は一定ではない。コーディングユニットは正方形または長方形の模様を有する。長方形コーディングユニット(または、長方形ブロック)は垂直コーディングユニット(または、垂直ブロック)と水平コーディングユニット(または、水平ブロック)を含む。本明細書において、垂直ブロックは高さが幅より大きいブロックであり、水平ブロックは幅が高さより大きいブロックである。また、本明細書において、正方形ではない(non-square)ブロックは長方形ブロックを指すが、本発明はこれに限らない。
【0043】
図3を参照すると、コーディングツリーユニットは、まずクォードツリー(Quad Tree、QT)構造に分割される。つまり、クォードツリー構造において、2N×2Nのサイズを有する一つのノードはN×Nのサイズを有する4つのノードに分割される。本明細書において、クォードツリーは4進(quaternary)ツリーとも称される。クォードツリー分割は再帰的に行われ、全てのノードが同じ深さに分割される必要はない。
【0044】
一方、上述したクォードツリーのリーフノード(leaf node)は、マルチ-タイプツリー(Multi-Type Tree、MTT)構造に更に分割される。本発明の実施例によると、マルチタイプツリー構造では一つのノードが水平または垂直分割の2進(binary、バイナリー)または3進(ternary、ターナリー)ツリー構造に分割される。つまり、マルチ-タイプツリー構造には、垂直バイナリー分割、水平バイナリー分割、垂直ターナリー分割、及び水平ターナリー分割の4つの分割構造が存在する。本発明の実施例によると、前記各ツリー構造において、ノードの幅及び高さはいずれも2の累乗値を有する。例えば、バイナリーツリー(binary Tree、BT)構造において、2N×2Nのサイズのノードは垂直バイナリー分割によって2つのN×2Nノードに分割され、水平バイナリー分割によって2つの2N×Nノードに分割される。また、ターナリーツリー(Ternary Tree、TT)構造において、2N×2Nのサイズのノードは垂直ターナリー分割によって(N/2)×2N、N×2N及び(N/2)×2Nのノードに分割され、水平ターナリー分割によって2N×(N/2)、2N×N及び2N×(N/2)のノードに分割される。このようなマルチ-タイプツリー分割は再帰的に行われる。
【0045】
マルチ-タイプツリーのリーフノードはコーディングユニットできる。コーディングユニットに対する分割が指示されないか、またはコーディングユニットが最大変換長さに比べて大きくない場合、該当コーディングユニットはこれ以上の分割無しで予測及び変換の単位に使われる。 一方、上述したクォードツリー及びマルチ-タイプツリーにおいて、次のパラメータのうち少なくとも一つが事前に定義されるか、PPS、SPS、VPSなどのような上位レベルセットのRBSPを介して伝送される。1)CTUサイズ:クォードツリーのルートノード(root node)のサイズ、2)最小QTサイズ(MinQtSize):許容された最小QTリーフノードのサイズ、3)最大BTサイズ(MaxBtSize):許容された最大BTルートノードのサイズ、4)最大TTサイズ(MaxTtSize):許容された最大TTルートノードのサイズ、5)最大MTT深さ(MaxMttDepth):QTのリーフノードからのMTT分割の最大許容深さ、6)最小BTサイズ(MinBtSize):許容された最小BTリーフノードのサイズ、7)最小TTサイズ:許容された最小TTリーフノードのサイズ。
【0046】
図4は、クワッドツリー及びマルチ-タイプツリーの分割をシグナリングする方法の一実施形態を図示する。前述したクワッドツリー及びマルチ-タイプツリーの分割をシグナリングするために既設定されたフラグが使われることができる。
図4を参照すると、クワッドツリーノードの分割するか否かを指示するフラグ‘qt_split_flag’、マルチ-タイプツリーノードの分割するか否かを指示するフラグ‘mtt_split_flag’、マルチ-タイプツリーノードの分割方向を指示するフラグ‘mtt_split_vertical_flag’またはマルチ-タイプツリーノードの分割形態を指示するフラグ‘mtt_split_binary_flag’のうち、少なくとも1つが使われることができる。
【0047】
本発明の実施形態によれば、コーディングツリーユニットはクワッドツリーのルートノードであり、クワッドツリー構造に先に分割できる。クワッドツリー構造では各々のノード‘QT_node’別に‘qt_split_flag’がシグナリングされる。‘qt_split_flag’の値が1の場合、該当ノードは4個の正四角形ノードに分割され、‘qt_split_flag’の値が0の場合、該当ノードはクワッドツリーのリーフノード‘QT_leaf_node’となる。
【0048】
各々のクワッドツリーリーフノード‘QT_leaf_node’はマルチ-タイプツリー構造にさらに分割できる。マルチ-タイプツリー構造では、各々のノード‘MTT_node’別に‘mtt_split_flag’がシグナリングされる。‘mtt_split_flag’の値が1の場合、該当ノードは複数の矩形ノードに分割され、‘mtt_split_flag’の値が0の場合、該当ノードはマルチ-タイプツリーのリーフノード‘MTT_leaf_node’となる。マルチ-タイプツリーノード‘MTT_node’が複数の矩形ノードに分割される場合(即ち、‘mtt_split_flag’の値が1の場合)、ノード‘MTT_node’のための‘mtt_split_vertical_flag’及び‘mtt_split_binary_flag’が追加でシグナリングできる。‘mtt_split_vertical_flag’の値が1の場合、ノード‘MTT_node’の垂直分割が指示され、‘mtt_split_vertical_flag’の値が0の場合、ノード‘MTT_node’の水平分割が指示される。また、‘mtt_split_binary_flag’の値が1の場合、ノード‘MTT_node’は2つの矩形ノードに分割され、‘mtt_split_binary_flag’の値が0の場合、ノード‘MTT_node’は3個の矩形ノードに分割される。
【0049】
コーティングのためのピクチャ予測(モーション補償)はそれ以上分けられないコーディングユニット(つまり、コーディングユニットツリーのリーフノード)を対象に行われる。このような予測を行う基本単位を、以下では予測ユニット(prediction unit)または予測ブロック(prediction block)という。
【0050】
以下、本明細書で使用されるユニットという用語は、予測を行う基本単位である前記予測ユニットを代替する用語として使用される。但し、本発明はこれに限らず、より広い意味では、前記コーディングユニットを含む概念として理解される。
【0051】
図5及び
図6は、本発明の実施例によるイントラ予測方法をより詳しく示す図である。上述したように、イントラ予測部は、現在ブロックの左側及び/または上側に位置する復元されたサンプルを参照サンプルとして利用して、現在ブロックのサンプル値を予測する。
【0052】
まず、
図5はイントラ予測モードで現在ブロックを予測するために使用される参照サンプルの一実施例を示す。一実施例によると、参照サンプルは現在ブロックの左側境界に隣接したサンプル及び/または上側境界に隣接したサンプルである。
図5に示したように、現在ブロックのサイズがW×Hで現在ブロックに隣接した単一参照ライン(line)のサンプルがイントラ予測に使用されれば、現在ブロックの左側及び/または上側に位置した最大2W+2H+1個の周辺サンプルを使用して参照サンプルが設定される。
【0053】
また、参照サンプルとして使用される少なくとも一部のサンプルがまだ復元されていなければ、イントラ予測部は参照サンプルパッディング過程を行って参照サンプルを獲得する。また、イントラ予測部は、イントラ予測の誤差を減らすために参照サンプルフィルタリング過程を行う。つまり、周辺サンプル及び/または参照サンプルパッディング過程によって獲得された参照サンプルにフィルタリングを行って、フィルタリングされた参照サンプルを獲得する。 イントラ予測部は、このように取得された参照サンプルを用いて現在ブロックのサンプルを予測する。イントラ予測部は、フィルタリングされない参照サンプル又はフィルタリングされた参照サンプルを用いて現在ブロックのサンプルを予測する。本開示において、周辺サンプルは、少なくとも一つの参照ライン上のサンプルを含むことができる。例えば、周辺サンプルは、現在ブロックの境界に隣接したライン上の隣接サンプルを含むことができる。
【0054】
次に、
図6はイントラ予測に使われる予測モードの一実施形態を図示する。イントラ予測のために、イントラ予測方向を指示するイントラ予測モード情報がシグナリングできる。イントラ予測モード情報は、イントラ予測モードセットを構成する複数のイントラ予測モードのうち、いずれか1つを指示する。現在ブロックがイントラ予測されたブロックである場合、デコーダはビットストリームから現在ブロックのイントラ予測モード情報を受信する。デコーダのイントラ予測部は、抽出されたイントラ予測モード情報に基づいて現在ブロックに対するイントラ予測を遂行する。
【0055】
本発明の実施例によると、イントラ予測モードセットは、イントラ予測に使用される全てのイントラ予測モード(例えば、総67個のイントラ予測モード)を含む。より詳しくは、イントラ予測モードセットは、平面モード、DCモード、及び複数の(例えば、65個の)角度モード(つまり、方向モード)を含む。 それぞれのイントラ予測モードは、予め設定されたインデックス(つまり、イントラ予測モードインデックス)を介して指示される。例えば、
図6に示したように、イントラ予測モードインデックス0は平面(planar)モードを指示し、イントラ予測モードインデックス1はDCモードを指示する。また、イントラ予測モードインデックス2乃至66は、互いに異なる角度モードをそれぞれ指示する。 角度モードは、既に設定された角度範囲以内の異なる角度をそれぞれ指示する。例えば、角度モードは時計回り方向に45°~-135°の角度範囲(すなわち、第1角度範囲)以内の角度を指示できる。前記角度モードは12時方向を基準に定義されてよい。この際、イントラ予測モードインデックス2は水平対角(Horizontal Diagonal、HDIA)モードを指示し、イントラ予測モードインデックス18は水平(Horizontal、HOR)モードを指示し、イントラ予測モードインデックス34は対角(Diagonal、DIA)モードを指示し、イントラ予測モードインデックス50は水直(Vertical、VER)モードを指示し、イントラ予測モードインデックス66は垂直対角(Vertical Diagonal、VDIA)モードを指示する。
【0056】
以下、
図7を参照して、本発明の実施形態によるインター予測方法について説明する。本発明では、インター予測方法は、並進運動(translation motion)に最適化された一般インター予測方法とアフィン(affine)モデルベースのインター予測方法を含むことができる。また、動きベクトルは、通常、インター予測方法に基づいて動き補償のための一般的な動きベクトルとアフィン動き補償のためのコントロールポイントの動きベクトル(control point motion vector)のうちの少なくとも一つを含むことができる。
【0057】
図7は、本発明の一実施形態に従うインター予測方法を図示する。前述したように、デコーダは復号化された他のピクチャの復元されたサンプルを参照して現在ブロックを予測することができる。
図7を参照すると、デコーダは現在ブロック701の動き情報セットに基づいて参照ピクチャ720内の参照ブロック702を獲得する。この際、動き情報セットは参照ピクチャインデックス及び動きベクトル703を含むことができる。参照ピクチャインデックスは、参照ピクチャリストで現在ブロックのインター予測のための参照ブロックが含まれた参照ピクチャ720を指示する。一実施形態に従って、参照ピクチャリストは前述したL0ピクチャリストまたはL1ピクチャリストのうち、少なくとも1つを含むことができる。動きベクトルは現在ピクチャ710内で現在ブロック701の座標値と参照ピクチャ720内で参照ブロック702の座標値との間のオフセットを示す。デコーダは、参照ブロック702のサンプル値に基づいて現在ブロック701の予測子を獲得し、前記予測子を用いて現在ブロック701を復元する。
【0058】
具体的に、インコーダーは復元順序が早いピクチャで現在ブロックと類似のブロックを探索して前述した参照ブロックを獲得することができる。例えば、エンコーダは既設定された探索領域内で現在ブロックとサンプル値との差の和が最小となる参照ブロックを探索することができる。この際、現在ブロックと参照ブロックのサンプルとの間の類似度を測定するために、SAD(Sum Of Absolute Difference)またはSATD(Sum of Hadamard Transformed Difference)のうち、少なくとも1つが使われることができる。ここで、SADは2つのブロックに含まれたサンプル値の差の各々の絶対値を全て足した値でありうる。また、SATDは2つのブロックに含まれたサンプル値の差をアダマール変換(Hadamard Transform)して獲得されたアダマール変換係数の絶対値を全て足した値でありうる。
【0059】
一方、現在ブロックは1つ以上の参照領域を用いて予測されることもできる。前述したように、現在ブロックは2つ以上の参照領域を用いる双予測方式によりインター予測できる。一実施形態に従って、デコーダは現在ブロックの2つの動き情報セットに基づいて2つの参照ブロックを獲得することができる。また、デコーダは獲得された2つの参照ブロックの各々のサンプル値に基づいて現在ブロックの第1予測子及び第2予測子を獲得することができる。また、デコーダは第1予測子及び第2予測子を用いて現在ブロックを復元することができる。例えば、デコーダは第1予測子及び第2予測子のサンプル別平均に基づいて現在ブロックを復元することができる。
【0060】
前述したように、現在ブロックの動き補償のために、1つ以上の動き情報セットがシグナリングできる。この際、複数のブロックの各々の動き補償のための動き情報セットの間の類似性が利用できる。例えば、現在ブロックの予測に使われる動き情報セットは既復元された他のサンプルのうち、いずれか1つの予測に使われた動き情報セットから導出できる。これを通じて、エンコーダ及びデコーダはシグナリングオーバーヘッドを減少させることができる。以下では、現在ブロックの動き情報セットがシグナリングされる多様な実施形態に対して説明する。
【0061】
例えば、現在ブロックのモーション情報セットと同一又は類似のモーション情報セットに基づいて予測された可能性がある複数の候補ブロックが存在し得る。デコーダは、当該複数の候補ブロックに基づいてマージ候補リスト(merge candidate list)を生成できる。ここで、マージ候補リストは、現在ブロックよりも先に復元されたサンプルのうち、現在ブロックのモーション情報セットと関連したモーション情報セットに基づいて予測された可能性があるサンプルに対応する候補を含むことができる。エンコーダとデコーダは、あらかじめ定義された規則に基づいて現在ブロックのマージ候補リストを構成することができる。このとき、エンコーダとデコーダがそれぞれ構成したマージ候補リストは互いに同一であってよい。例えば、エンコーダ及びデコーダは、現在ピクチャ内で現在ブロックの位置に基づいて現在ブロックのマージ候補リストを構成することができる。エンコーダ及びデコーダが現在ブロックのマージ候補リストを構成する方法については、
図9で後述する。本開示において、特定ブロックの位置は、特定ブロックを含むピクチャ内で特定ブロックの左上端(top-left)サンプルの相対的な位置を表す。
【0062】
一方、コーディング効率を上げるために、前述したレジデュアル信号をそのままコードせず、レジデュアル信号を変換して取得された変換係数値を量子化し、量子化された変換係数をコードする方法を用いることができる。前述したように、変換部は、レジデュアル信号を変換して変換係数値を取得することができる。このとき、特定ブロックのレジデュアル信号は、現在ブロックの全領域に分散されていてよい。これによって、レジデュアル信号に対する周波数領域変換を用いて低周波領域にエネルギーを集中させ、コーディング効率を向上させることができる。以下では、レジデュアル信号が変換又は逆変換される方法について具体的に説明する。
【0063】
図8は、エンコーダがレジデュアル信号を変換する方法を具体的に示す図である。前述したように、空間領域のレジデュアル信号は周波数領域に変換されてよい。エンコーダは、取得されたレジデュアル信号を変換して変換係数を取得することができる。まず、エンコーダは、現在ブロックに対するレジデュアル信号を含む少なくとも一つのレジデュアルブロックを取得することができる。レジデュアルブロックは、現在ブロック又は現在ブロックから分割されたブロックのいずれか一つであってよい。本開示において、レジデュアルブロックは、現在ブロックのレジデュアルサンプルを含むレジデュアルアレイ(array)又はレジデュアルマトリックス(matrix)と称することができる。また、本開示において、レジデュアルブロックは、変換ユニット又は変換ブロックのサイズと同じサイズのブロックを表す。
【0064】
次に、エンコーダは、変換カーネルを用いてレジデュアルブロックを変換することができる。レジデュアルブロックに対する変換に用いられる変換カーネルは、垂直変換及び水平変換の分離可能な特性を有する変換カーネルであってよい。この場合、レジデュアルブロックに対する変換は、垂直変換及び水平変換に分離して行われてよい。例えば、エンコーダは、レジデュアルブロックの垂直方向に変換カーネルを適用して垂直変換を行うことができる。また、エンコーダは、レジデュアルブロックの水平方向に変換カーネルを適用して水平変換を行うことができる。本開示において、変換カーネルは、変換マトリックス、変換アレイ、変換関数、変換のようにレジデュアル信号の変換に用いられるパラメータセットを表す用語で使われてよい。一実施例によって、変換カーネルは、複数の使用可能なカーネルのいずれか一つであってよい。また、垂直変換及び水平変換のそれぞれに対して異なる変換タイプに基づく変換カーネルが用いられてもよい。複数の使用可能な変換カーネルのいずれか一つが選択される方法については、
図12~
図26で後述する。
【0065】
エンコーダは、レジデュアルブロックから変換された変換ブロックを量子化部に伝達して量子化することができる。この時、変換ブロックは複数の変換係数を含むことができる。具体的に、変換ブロックは、2次元配列された複数の変換係数で構成されてよい。変換ブロックのサイズは、レジデュアルブロックと同様に、現在ブロック又は現在ブロックから分割されたブロックのいずれか一つと同一であってよい。量子化部に伝達された変換係数は、量子化された値で表現されてよい。
【0066】
また、エンコーダは、変換係数が量子化される前に追加の変換を行うことができる。
図8に示すように、前述した変換方法は、1次変換(primary transform)、追加の変換は2次変換(secondary transform)と呼ぶことができる。2次変換は、レジデュアルブロック別に選択的であり得る。一実施例によって、エンコーダは、1次変換だけでは低周波領域にエネルギーを集中させ難い領域に対して2次変換を行って、コーディング効率を向上させることができる。例えば、レジデュアル値がレジデュアルブロックの水平又は垂直方向以外の方向で大きく現れるブロックに対して2次変換が追加されてよい。イントラ予測されたブロックのレジデュアル値は、インター予測されたブロックのレジデュアル値に比べて水平又は垂直方向以外の方向に変化する確率が高くてよい。これによって、エンコーダは、イントラ予測されたブロックのレジデュアル信号に対して2次変換をさらに行うことができる。また、エンコーダは、インター予測されたブロックのレジデュアル信号に対して2次変換を省略することができる。
【0067】
他の例として、現在ブロック又はレジデュアルブロックのサイズによって、二次変換を行うか否かが決定されてよい。また、現在ブロック又はレジデュアルブロックのサイズによって、互いにサイズの異なる変換カーネルが用いられてよい。例えば、幅又は高さのうち短い辺の長さが、第1の予め設定された長さより大きいか等しいブロックに対しては、8×8の二次変換が適用されてよい。また、幅又は高さのうち短い辺の長さが、第2の予め設定された長さより大きいか等しく、第1の予め設定された長さより小さいブロックに対しては、4×4の二次変換が適用されてよい。このとき、第1の予め設定された長さは第2の予め設定された長さより大きい値であってよいが、本開示がこれに制限されるものではない。また、二次変換は、一次変換と違い、垂直変換及び水平変換に分離して行われなくてもよい。このような二次変換は、低帯域非分離変換(Low Frequency Non-Separable Transform,LFNST)と呼ぶことができる。
【0068】
また、特定領域のビデオ信号の場合、急な明るさ変化によって、周波数変換を行っても高周波帯域エネルギーが減らないことがある。これによって、量子化による圧縮性能が低下することがある。また、レジデュアル値がまれに存在する領域に対して変換を行う場合、エンコーディング時間及びデコーディング時間が不要に増加することがある。このため、特定領域のレジデュアル信号に対する変換は省略されてもよい。特定領域のレジデュアル信号に対する変換を行うか否かは、特定領域の変換と関連したシンタックス要素によって決定されてよい。例えば、前記シンタックス要素は、変換スキップ情報(transform skip information)を含むことができる。変換スキップ情報は、変換スキップフラグ(transform skip flag)であってよい。レジデュアルブロックに対する変換スキップ情報が変換スキップを示す場合、当該レジデュアルブロックに対する変換が行われない。この場合、エンコーダは、当該領域の変換が行われないレジデュアル信号を直ちに量子化することができる。
図8を参照して説明されたエンコーダの動作は、
図1の変換部で行うことができる。
【0069】
前述した変換関連シンタックス要素は、ビデオ信号ビットストリームからパースされた情報であってよい。デコーダは、ビデオ信号ビットストリームをエントロピーデコードして変換関連シンタックス要素を取得することができる。また、エンコーダは、変換関連シンタックス要素をエントロピーコーディングしてビデオ信号ビットストリームを生成することができる。
【0070】
図9は、エンコーダ及びデコーダが変換係数を逆変換してレジデュアル信号を取得する方法を具体的に示す図である。以下、説明の便宜のために、エンコーダ及びデコーダの各逆変換部で逆変換動作が行われるとして説明する。逆変換部は、逆量子化された変換係数を逆変換してレジデュアル信号を取得することができる。まず、逆変換部は、特定領域の変換関連シンタックス要素から当該領域に対する逆変換が行われるか否か検出することができる。一実施例によって、特定変換ブロックに対する変換関連シンタックス要素が変換スキップを示す場合、当該変換ブロックに対する変換は省略されてよい。この場合、変換ブロックに対して、前述した1次逆変換及び2次逆変換が全て省略されてもよい。また、逆量子化された変換係数は、レジデュアル信号として用いられてよい。例えば、デコーダは、逆量子化された変換係数をレジデュアル信号として用いて現在ブロックを復元することができる。
【0071】
他の実施例によって、特定変換ブロックに対する変換関連シンタックス要素が変換スキップを表せなくてもよい。この場合、逆変換部は、2次変換に対する2次逆変換を行うか否かを決定することができる。例えば、変換ブロックがイントラ予測されたブロックの変換ブロックである場合、変換ブロックに対する2次逆変換が行われてよい。また、変換ブロックに対応するイントラ予測モードに基づいて、当該変換ブロックに用いられる2次変換カーネルが決定されてよい。他の例として、変換ブロックのサイズに基づいて2次逆変換を行うか否かが決定されてよい。2次逆変換は、逆量子化過程後に1次逆変換が行われる前に行われてよい。
【0072】
逆変換部は、逆量子化された変換係数又は2次逆変換された変換係数に対する1次逆変換を行うことができる。1次逆変換の場合、1次変換と同様に、垂直変換及び水平変換に分離されて行われてよい。例えば、逆変換部は、変換ブロックに対する垂直逆変換及び水平逆変換を行ってレジデュアルブロックを取得することができる。逆変換部は、変換ブロックの変換に用いられた変換カーネルに基づいて変換ブロックを逆変換することができる。例えば、エンコーダは、複数の使用可能な変換カーネルのうち、現在変換ブロックに適用された変換カーネルを指示する情報を明示的又は暗黙的にシグナルすることができる。デコーダは、シグナルされた変換カーネルを示す情報を用いて、複数の使用可能な変換カーネルから、変換ブロックの逆変換に用いられる変換カーネルを選択することができる。逆変換部は、変換係数に対する逆変換によって取得されたレジデュアル信号を用いて現在ブロックを復元することができる。
【0073】
図10は、本発明の一実施例に係るコーディングブロックが複数個の変換ブロックに分割される場合、イントラ予測モードの適用方法を説明するための図である。本発明の一実施例によれば、イントラ予測モードは、コーディングユニット(又は、コーディングブロック)(以下、ブロックと略してもよい。)単位で決定されてよい。そして、コーディングユニットは複数個の変換ブロックに分割されてよい。一実施例として、イントラ予測モードは、コーディングブロックの形態に基づいて修正(又は、解析、決定、改善)されてよい。
【0074】
一実施例において、正方形(又は、正四角形)ブロックでない場合、イントラ予測モードを再解析する方法を説明する。
図10を参照すると、nTbWは変換ブロックの広さ、nTbHは変換ブロックの高さを示す変数であってよい。又は、nTbWはコーディングブロックの広さ、nTbHはコーディングブロックの高さを示す変数であってよい。又は、ISP(Intra subpartitions)が適用されたブロックにおいて、nTbWはコーディングブロックの広さ、nTbHはコーディングブロックの高さを示す変数であってよい。また、本発明において、whRatioは、幅と高さの比率を示す変数である。一例として、whRatioは、Abs(Log2(nTbW/nTbH))に設定(又は、定義)されてよい。以下、エンコーダからデコーダにシグナルされたイントラ予測モードは、第1予測モード(又は、第1イントラ予測モード)と称し、修正された(又は、再解析された、決定された、改善された)モードは、第2予測モード(又は、第2イントラ予測モード)と称することができる。以下において、abs()は、絶対値を取る演算子(又は、関数)を表す。修正されたイントラ予測モードは、下記の条件に基づいて導出されてよい。
【0075】
- 第1条件:nTbW>nTbH
【0076】
- 第2条件:第1予測モードが2より大きい又は等しいか
【0077】
-第3条件:第1予測モードがwhRatio>1の場合、(8+2*whRatio)より小さく、whRatio<1の場合、8より小さいか
【0078】
デコーダは、前記第1条件~第3条件の3つの条件を満たすと、wideAngleを1に設定し、第2予測モードを(第1予測モード+65)に設定できる。ここで、wideAngleは、広角モードが用いられるか否かを示す変数である。
【0079】
- 第4条件:nTbH>nTbW
【0080】
- 第5条件:第1予測モードが66より小さい又は等しいか
【0081】
- 第6条件:第1予測モードがwhRatio>1の場合、(60-2*whRatio)より大きく、whRatio<1の場合、60より大きいか
【0082】
デコーダは、前記第4条件~第6条件の全てを満たすと、変数wideAngleを1に設定し、第2予測モードを(第1予測モード-67)に設定できる。
【0083】
本発明の一実施例によれば、イントラ予測モードは、基本角度モードと拡張された角度モードとに区別できる。基本角度モードは、垂直モード/水平モード基準に+-45°範囲内の角度モードでよく、拡張された角度モードは、垂直モード/水平モード基準に+-45°を越える角度モードでよい。したがって、シグナルされたモード情報は、コーディングブロックの形態によって基本角度モード或いは拡張された角度モードが用いられてよい。拡張された角度モードは、コーディングブロックの形態に基づく横と縦の比率(又は、縦と横の比率)によって、使用可能なモード数が定義されてよい。一例として、前記比率は、2:1、4:1、8:1、16:1などと定義(又は、設定)されてよい。
【0084】
例えば、
図10の(a)に示すように、イントラ予測モード2として決定されたcbWidth×cbHeightコーディングブロックは、
図10の(b)に示すように、水平方向に2個の変換ブロックに分割されてよい。tbWidht_1がtbHeight_1より大きいと仮定すれば、tbWidht_1×tbHeight_1サイズを有する第1変換ブロックは、垂直長方形ブロック形態を有することができる。ここで、cbWidthは、コーディングブロックの幅を示す変数であり、cbHeightは、コーディングブロックの高さを示す変数である。tbWidthは、変換ブロックの幅を示す変数であり、tbHeightは、変換ブロックの高さを示す変数である。
【0085】
このとき、シグナルされたイントラ予測モード2は、第1変換ブロックの形態に基づいて再解析されて拡張された角度モードに修正されてよく、上述した解析方法によって(2+65)となり、第2予測モードは67として導出(又は、決定)されてよい。すなわち、コーディングブロック単位において決定されたイントラ予測モードは、変換ブロック単位においては同一に用いられなくてもよい。この場合、それによる性能変化が起こることがある。
【0086】
したがって、本発明の実施例によれば、コーディングブロックに決定されたイントラ予測モードを変換ブロックにおいても同一に適用するために広角モードを決定する方法を次のように適用する方法を提案する。実施例として、エンコーダ/デコーダは、第2予測モードを導出するとき、nTbW及びnTbHをコーディングブロックのcbWidth、cbHeightに設定できる。エンコーダ/デコーダは、変換ブロックが含まれたコーディングブロックの高さ及び幅を用いて、広角モードを使用するか否かを判断(又は、決定)することができる。
図10において、水平長方形形態に変換ブロックが分割される場合を取り上げたが、本発明がこれに限定されるものではない。すなわち、垂直長方形、正方形又は組み合わせられた様々な形態に分割される場合にも同様に提案の実施例が適用されてよい。
【0087】
図11は、本発明の一実施例に係るPDPC(position-dependent intra prediction combination)適用方法を説明するための図である。PDPCは、次のような条件を全て満たす場合に、イントラブロックに適用されてよい。
【0088】
条件1.IntraSubPartitionsSplitType(ISP分割タイプ)がISP_NO_SPLITであるか、或いはcIdx(コンポーネントインデックス)が0と同一でない
【0089】
条件2.refIdx(参照サンプルラインインデックス)が0と同一であるか、或いはcIdxが0と同一でない
【0090】
条件3.次の条件のいずれか一つでも該当する場合:
【0091】
- predModeIntra(イントラ予測モード)がINTRA_PLANAR
【0092】
- predModeIntra(イントラ予測モード)がINTRA_DC
【0093】
- predModeIntra(イントラ予測モード)がINTRA_ANGULAR18
【0094】
- predModeIntra(イントラ予測モード)がINTRA_ANGULAR50
【0095】
- predModeIntra(イントラ予測モード)がINTRA_ANGULAR10よりも小さい又は等しい場合
【0096】
- predModeIntra(イントラ予測モード)がINTRA_ANGULAR58と等しい又は大きい場合
【0097】
本発明の一実施例によれば、PDPC動作は、以下に説明する方法によって適用されてよい。本発明で説明するPDPCは、その名称に制限されるものではなく、常時、PDPCは、位置依存のイントラ予測サンプルフィルタリング(Position-dependent intra prediction sample filtering)と呼ばれてもよい。
【0098】
一実施例として、(x,y)位置の予測サンプルpred(x,y)は、次の式1のように、イントラ予測モード(例えば、DC、プラナー、方向性モード)及びPDPCによる参照サンプルの線形組合せを用いて予測されてよい。
【0099】
[数1]
pred(x,y) = ( wL × R-1,y + wT × Rx,-1 - wTL × R-1,-1 + (64 - wL - wT + wTL) × pred(x,y) + 32 ) >> 6
【0100】
ここで、Rx,-1及びR-1,yはそれぞれ、現在サンプル(x,y)の左側及び上側に位置している参照サンプルを表し、R-1,-1は、現在ブロックの左上端(top-left)に位置している参照サンプルを表す。現在ブロックにDCモードが適用される場合、次の式2に基づいて加重値(PDPC加重値ともいう。)が計算されてよい。
【0101】
[数2]
wT = 32 >> ( ( y<<1 ) >> shift ), wL = 32 >> ( ( x<<1 ) >> shift ), wTL = ( wL>>4 ) + ( wT>>4 )
【0102】
式2で、shiftは、(log2(width)-2+log2(height)-2+2)>>2に設定されてよい。そして、プラナーモードに対してwTL=0に設定されてよく、水平モードに対してwTL=wTに設定されてよく、垂直モードに対してwTL=wLに設定されてよい。PDPC加重値は、合算及びシフト演算のみに基づいて計算されてよい。pred(x,y)値は、前述した式1を用いて単一段階で計算されてよい。
【0103】
仮に、PDPCがDC、プラナー、水平及び/又は垂直モードに適用される場合、追加の境界フィルタリングが要求されなくて済む。一例として、前記追加の境界フィルタリングは、従来の映像圧縮技術(例えば、HEVC)のDCモード境界フィルタ又は水平/垂直モードのエッジフィルターを含むことができる。
【0104】
図12は、本発明の一実施例として、イントラ予測モードによってPDPCに用いられる参照サンプルを例示する図である。
図12を参照すると、
図12の(a)は、イントラ予測モードが予測モード2である場合を仮定し、
図12の(b)は、イントラ予測モードが予測モード66である場合を仮定する。具体的に、
図12は、右上側対角モード(top-right diagonal mode)にPDPCが適用される場合、参照サンプルR
x,-1、R
-1,y及びR
-1,-1を示している。予測サンプルpred(x’,y’)は、予測ブロック内(x’,y’)に位置している予測サンプルを表す。参照サンプルR
x,-1の座標xは、x=x’+y’+1と与えられる。そして、参照サンプルR
-1,yの座標yは類似に、y=x’+y’+1と与えられる。
【0105】
本発明の一実施例によれば、右上側対角モードに対するPDPC加重値は、次の式3によって決定されてよい。
【0106】
[数3]
wT = 16 >> ( ( y’<<1 ) >> shift ), wL = 16 >> ( ( x’<<1 ) >> shift ), wTL = 0
【0107】
図13は、本発明の一実施例として、イントラ予測モードによってPDPCに用いられる参照サンプルを例示する図である。
図13を参照すると、
図13の(a)は、イントラ予測モードのモード番号(又は、モードインデックス)が3~10のいずれか一つである場合を仮定し、
図13の(b)は、イントラ予測モードのモード番号が58~65のいずれか一つである場合を仮定する。前述した
図12と類似に、
図13は、左下側対角モード(bottom-left diagonal mode)にPDPCが適用される場合、参照サンプルR
x,-1、R
-1,y及びR
-1,-1を示している。予測サンプルpred(x’,y’)は、予測ブロック内(x’,y’)に位置している予測サンプルを表す。参照サンプルR
x,-1の座標xは、x=x’+y’+1と与えられる。そして、参照サンプルR
-1,yの座標yは類似に、y=x’+y’+1と与えられる。
【0108】
本発明の一実施例によれば、左下側対角モードに対するPDPC加重値は、次の式4によって決定されてよい。
【0109】
[数4]
wT = 16 >> ( ( y’<<1 ) >> shift ), wL = 16 >> ( ( x’<<1 ) >> shift ), wTL = 0
【0110】
右上側対角モードに対する
図13の(a)の場合、PDPC加重値は、次の式5のように定義されてよい。
【0111】
[数5]
wT = 32 >> ( ( y’<<1 ) >> shift ), wL = 0, wTL = 0
【0112】
同様に、左下側対角モードに対する
図13の(b)の場合、PDPC加重値は、次の式6のように定義されてよい。
【0113】
[数6]
wL = 32 >> ( ( x’<<1 ) >> shift ), wT =0, wTL = 0
【0114】
図12及び
図13を参照すると、実施例として、DC、プラナー、水平及び/又は垂直モードに対してPDPCが適用される場合と同様に、対角モード及び
図13に示す対角モードの隣接モードに対しては追加の境界フィルタリングが必要でなくて済む。
【0115】
図13に示す例示の参照サンプル座標は、方向性モードイントラ予測に対して定義されたテーブルに基づいて導出されてよい。上述したように、対角線及びその隣接モードとしてテーブルが定義されてよいので、本発明で説明するPDPC具現による追加のテーブルが必要でないという長所がある。また、座標xとyを計算する時は、掛け算の演算が用いられなくてもよい。また、一実施例において、分数基準サンプル座標が用いられる場合、参照サンプルに対して線形補間が行われてよい。
【0116】
図14は、本発明が適用される一実施例に係るコーディングブロックに対するISP(Intra subpartitions)及びPDPC(position-dependent intra prediction combination)適用方法を例示する図である。
図14の(a)を参照すると、現在コーディングブロックは、幅W及び高さHを用いてW×Hと表現されてよい。
図14の(b)は、ISPモードが適用される場合、垂直方向に現在コーディングブロックが4個の変換ブロックに分割された例を示している。そして、
図14の(c)は、
図14の(b)で分割されたそれぞれの変換ブロック単位でPDPCを適用する例を示している。
【0117】
一実施例において、エンコーダ/デコーダは、
図14の(b)で、ISPが適用された変換ブロック単位において補間フィルタ(Interpolation filter)を使用(又は、適用)することができる。補間フィルタは、参照サンプルからサンプル値を取得する方法を表す。一例として、エンコーダ/デコーダは、フィルターフラグが0であれば、キュービック補間フィルタ(Cubic interpolation filter)係数を使用し、1であれば、ガウス補間フィルタ(Gaussian interpolation filter)係数を使用することができる。エンコーダ/デコーダは、決定された補間フィルタ係数を用いて参照サンプル値を決定し、この値を予測値として用いることができる。また、一実施例において、エンコーダ/デコーダは、変換ブロックがルマコンポーネントであり、ISPが適用されたブロックに対してフィルターフラグを1に設定することができる。他の例として、エンコーダ/デコーダは、フィルターフラグに基づき、補間フィルターの適用されるか否かを決定することもできる。
【0118】
また、一実施例において、エンコーダ/デコーダは、ルマコンポーネントであり、ISPが適用された変換ブロックに対して、ブロックの広さW及び高さHの値に基づいてフィルターフラグ値を設定(又は、決定)することができる。一実施例として、エンコーダ/デコーダは、ブロックのサンプル数W*Hと予め定義された(又は、予め設定された)特定基準値とを比較してフラグ値を設定することができる。例えば、エンコーダ/デコーダは、W*H>基準値、W*H>=基準値、W*H<基準値、W*H<=基準値を比較することができる。他の方法として、エンコーダ/デコーダは、ブロック幅及び高さをそれぞれ基準値と比較してフィルターフラグ値を異なるように設定することができる。一実施例として、フィルターフラグ値を決定する条件は、(W>基準値及びH>基準値)、(W>基準値又はH>基準値)と定義されてよい。前記例において、不等号は、基準値より大きいに限定されず、等しい場合、大きいか等しい場合、小さい場合、小さいか等しい場合と定義されてもよい。W及びHに適用される基準値は互いに異なってもよく、互いに異なる不等号が適用されてもよい。又は、特定ブロックサイズ範囲内に属するか否かによってフィルターフラグ値が設定されてもよい。
【0119】
図14の(c)を参照すると、本発明の一実施例において、エンコーダ/デコーダは、ISPが適用されたブロックに対してPDPCを適用することができる。一例として、エンコーダ/デコーダは、ISPが適用されたブロックに対して、ブロックのサンプル数W*Hに基づいてPDPCの適用されるか否かが決定できる。一実施例において、ブロックのサンプル数に基づいてPDPCの適用されるか否かを決定するための条件が定義されてよい。例えば、前記条件は、W*H>基準値、W*H>=基準値、W*H<基準値、W*H<=基準値などであってよい。前記基準値は、予め設定された値であってよい。他の実施例として、PDPCの適用されるか否かを決定するための条件は、(W>基準値及びH>基準値)と定義されるか、或いは(W>基準値又はH>基準値)と定義されてよい。このとき、前記例において、不等号は、基準値より大きいに限定されず、等しい場合、大きいか等しい場合、小さい場合、小さいか等しい場合と定義されてもよい。例えば、PDPCの適用されるか否かを決定するための条件は、(W≧基準値及びH≧基準値)と定義されるか、或いは(W≧基準値又はH≧基準値)と定義されてよい。実施例として、WとHに適用される基準値は、同一の値と定義されてもよく、互いに異なる値と定義されてもよく、同一の符号(又は、不等号)と定義されてもよく、互いに異なる符号と定義されてもよい。
【0120】
また、
図14の(c)を参照すると、本発明の一実施例において、ISPが適用されたブロックは、複数個の長方形変換ブロックに分割され、分割された変換ブロック単位でエンコード/デコードされる過程が行われてよい。一実施例において、エンコーダ/デコーダは、PDPCを適用するとき、変換ブロック単位ではなくコーディングブロック単位で適用することもできる。すなわち、エンコーダ/デコーダは、ISPが適用されたコーディングブロックに対して、PDPCを、変換ブロック単位の代わりにコーディングブロック単位で行うことができる。
【0121】
図14の(c)を参照すると、本発明の一実施例において、ISPが適用されたブロックにPDPCを適用するとき、エンコーダ/デコーダは、PDPCが適用されるモードのうち一部のモードに対して定義された特定条件を満たす場合に限ってPDPCを適用することができる。例えば、上述した実施例のように、サンプル数又は幅/高さに基づいてPDPCの適用されるか否かを決定する場合、プラナーモード、水平モード、垂直モードに対する基準値が異なるように設定されてよい。
【0122】
また、本発明の一実施例によれば、エンコーダ/デコーダは、参照サンプルフィルタリングの適用されるか否かを決定するとき、ISP及び/又はPDPCが適用されたブロックであるか否かに基づき、フィルタリングの適用されるか否かを示すフィルターフラグを設定することができる。例えば、ISP及びPDPCが適用されたブロックに対して、フィルターフラグは、0又は1の固定された値に設定されてよい。又は、ISP及びPDPCが適用されたブロックに対して、MDIS(Mode dependent Intra smoothing)条件によってフィルターフラグ値が決定されてよい。又は、エンコーダ/デコーダは、ISP及びPDPCが適用されたブロックのフィルターフラグ値とISPのみが適用されたブロックのフィルターフラグ値を互いに異なるように適用することができる。
【0123】
また、本発明の一実施例によれば、エンコーダ/デコーダは、広角モードを決定するとき、コーディングブロックの幅と高さに基づいてイントラ予測モードを再設定することができる。例えば、エンコーダ/デコーダは、ISPが適用されたブロックは、コーディングブロックの幅と高さに基づいて広角モードの再解析過程を行い、これに基づいて参照サンプルフィルターフラグを設定することができる。又は、エンコーダ/デコーダは、ISPが適用されたブロックの分割方向/サイズに基づき、広角モード適用方法を個別に設定することができる。一実施例として、特定分割方向は、変換ブロックの幅/高さ又はコーディングブロックの幅/高さに基づいて適用し、それ以外は、他の方式で適用することができる。他の実施例として、エンコーダ/デコーダは、分割された変換ブロックの幅と高さ値に基づいて広角モードを適用することができる。例えば、変換ブロックの幅及び高さのうち最小値が基準値より大きいか等しい、又は大きいと、コーディングブロックの高さ及び幅を用いて広角モードを適用することができ、基準値と等しいか小さい、又は小さいと、変換ブロックの幅及び高さを用いて広角モードを適用することができる。又は、これと逆に、変換ブロックの幅及び高さのうち最小値が基準値より大きいか等しい、又は大きいと、変換ブロックの高さ及び幅を用いて広角モードを適用することができ、基準値と等しいか小さい、又は小さいと、コーディングブロックの幅及び高さを用いて広角モードを適用することができる。
【0124】
以上、
図10~
図14で説明した実施例は、一つ以上の実施例が組合せで適用されてもよく、独立して適用されてもよい。また、上述した実施例は、デコーダ及びエンコーダにおいて実質的に同じ方法で適用されてよい。
【0125】
図15は、本発明の一実施例に係る変換ユニット分割処理方法を説明するための図である。
図15を参照すると、本発明の一実施例において、エンコーダ/デコーダは、現在ブロック(コーディングブロック、コーディングユニット)を複数個の変換ブロックに分割してエンコード/デコードすることができる。実施例として、イントラサブパーティション(Intra subpartitions,ISP)モードが適用される場合、コーディングブロックは複数個の変換ブロックに分割されてよい。又は、コーディングブロックのサイズが最大変換サイズより大きい場合、コーディングブロックは複数個の変換ブロックに分割されてよい。イントラサブパーティションモードが適用される場合、
図15に示すように、コーディングブロックは水平又は垂直方向の長方形変換ブロックに分割されてよく、2個又は4個の変換ブロックに分割されてよい。
【0126】
図16は、本発明が適用される一実施例に係る一次変換(primary transform)及び二次変換(secondary transform)を経てエンコード/デコードされるプロセスを示す図である。前述したように、コーディングブロックは複数個の変換ブロックに分割されてよく、分割された変換ブロックに対して、エンコーダ/デコーダは変換を適用することができる。
図16は、変換ブロックに対して2回の変換を適用する例を示している。
図16の順方向一次変換(Forward Primary Transform)は、エンコーダ側を基準に一番目に適用される変換を示し、本発明において一次変換と呼ばれてよい。
図16の順方向二次変換(Forward Secondary Transform)は、エンコーダ側を基準に二番に適用される変換を示し、本発明において二次変換と呼ばれてよい。デコーダ側を基準に逆量子化された変換ブロックに対して二次変換(すなわち、二次逆変換)及び一次変換(すなわち、一次逆変換)が順次に行われてよい。前述したように、二次変換は、低帯域非分離変換(Low Frequency Non-Separable Transform,LFNST)と呼ぶことができる。
【0127】
本発明の一実施例において、一次変換に用いられる変換マトリクス(又は、変換カーネル、変換タイプ)は、DCT-2、DST-7、DCT-8などのような従来の映像圧縮技術における公知の変換マトリクスであってよい。二次変換は、コーディングブロックのサイズによって変換ブロック内の一部領域に適用されてよい。例えば、前記一部領域は、4×4領域、8×8領域であってよい。前記一部領域の位置は、コーディングブロック(又は、変換ブロック)の左上端領域であってよい。一実施例として、コーディングブロックの幅及び高さがいずれも4より大きいと、左上端8×8領域に適用されてよく、幅及び高さのいずれか一辺が4と等しいと、左上端4×4領域に適用されてよい。二次変換は、イントラモードにコードされたブロックのルーマ成分及びクロマ成分に適用されてよい。
【0128】
図17は、本発明の一実施例に係る二次変換に用いられる変換カーネルを選択する方法を説明するための図である。
図17を参照すると、イントラ予測に用いられる予測モードに基づいて変換カーネルセット(又は、変換タイプセット、変換マトリクスセット)が決定されてよく、
図17に示すテーブルがエンコーダ/デコーダに定義されてよい。本実施例において、イントラ予測モードは-14~83まで定義されてよい。
図17に示すように、グループ化されたイントラ予測モード別に変換カーネルセットが決定されてよい。ルーマ成分及びクロマ成分に同一のインデックスが適用されてよい。イントラ予測モードベースで二次変換カーネルセットを決定するので、イントラ予測モードを取得(又は、決定)した後に変換カーネルセットを決定することができる。これによって依存性問題が発生する。そこで、本発明の一実施例において、このような依存性を無くす方法を説明する。
【0129】
実施例として、エンコーダ/デコーダは、次の事項を考慮して、イントラ予測モードによって、現在ブロックに適用される変換カーネルセットを決定することができる。
【0130】
- CUの横対縦の比率又は縦対横の比率
【0131】
- CUのサイズ
【0132】
- 一次変換の種類
【0133】
- MTSインデックス
【0134】
- 暗示的(implicit)MTSが適用されるか否か
【0135】
エンコーダ/デコーダは、上述した事項に基づいて変換カーネルセットを決定することができ、上述した事項は一つ又は複数の組合せで変換カーネルセット決定に用いられてよい。
【0136】
図18は、本発明の一実施例に係る変換ブロック単位二次変換適用方法を例示する図である。本発明の一実施例によれば、エンコーダ/デコーダは、コーディングブロック(又は、コーディングユニット)を複数個の変換ブロック(又は、変換ユニット)に分割し、それぞれの変換ブロックに対して二次変換を適用することができる。一つのコーディングユニットから複数個の変換ブロックに分割された各変換ブロックに二次変換を適用することができる。各変換ブロックのサイズは、コーディングユニットに対する分割方法に基づいて決定される。ISPが適用されたコーディングユニットの各変換ブロックのサイズは、
図15に示したように、垂直方向分割或いは水平方向分割によって決定されてよく、さらに分割される個数によってそのサイズが決定されてよい。ISPの適用されたブロックにおいて分割される個数は2或いは4であってよい。
図18で、一つのコーディングユニットは、ISPの適用されたブロックとして垂直方向に分割され、分割個数は4個である場合を例示する。前述した
図14の(b)のように、コーディングユニットのサイズがW×Hであれば、各変換ブロックのサイズは、W/4×Hとなり得る。前記変換ブロックのサイズは、二次変換の適用されるか否かを決定する幅及び高さとして用いられてよい。
【0137】
本発明の一実施例によれば、エンコーダ/デコーダは、各変換ブロック別に同一変換カーネルセットを使用するか、異なる変換カーネルセットを使用することができる。分割された変換ブロックは、イントラ予測モードと分割ブロックのサイズが同じであれば、同じ変換カーネルを使用することができる。これと逆の場合、エンコーダ/デコーダは各変換ブロック別にカーネルセットを決定して使用することができる。イントラサブパーティションモードが適用されたコーディングユニットは、ルーマ成分は複数個の変換ブロックに変換されるが、クロマ成分は分割されなくてもよい。この場合、ルーマ変換ブロックとクロマ変換ブロックがいずれも同一の二次変換カーネルセットを使用することができ、二次変換ブロックが適用されるコーディングブロックのサイズが満たさなければならない。また、ルーマとクロマの変換ブロックサイズが異なってもよい。このとき、エンコーダ/デコーダは、二次変換ブロックが適用されるブロックサイズ条件に合わせて4×4又は8×8領域に適用することができる。他の方法として、エンコーダ/デコーダは、ルーマ変換に適用された領域を、クロマも同じ領域に使用することができる。エンコーダ/デコーダは、ルーマとクロマのイントラ予測モードが互いに異なり得るので、それぞれ異なる変換カーネルセットを使用することができる。イントラ予測モードベースのカーネルセットを決定する方法として説明したが、
図17で記述された二次変換カーネルセットを決定する如何なる方法を適用してもよい。
【0138】
本発明の一実施例によれば、コーディングユニットのサイズが最大変換サイズより大きい場合、コーディングユニットは別のシグナリング無しで複数個の変換ブロックに分割されてよい。この場合、二次変換を適用すれば性能低下及び複雑度が増加することがあり、二次変換が適用される最大コーディングブロックを制限することができる。最大コーディングブロックのサイズは最大変換サイズと同一であってよい。又は、予め設定されたコーディングブロックのサイズを使用することができる。予め設定された値は、64、32、16であってよく、これに限定しない。長い辺の長さであって、値又は総サンプルの個数であってよい。
【0139】
また、一実施例において、エンコーダ/デコーダは、二次変換ブロックサイズをコーディングユニットの左上端4×4領域又は8×8領域に限定せず、2×8、8×2、4×16、16×4、2×32、32×2と定義してもよい。エンコーダ/デコーダは、コーディングブロックの横対縦の比率/縦対横の比率を考慮して、適応的/シグナリング無しで二次変換が適用される領域を決定することができる。
【0140】
図19は、本発明が適用される一実施例に係るイントラ予測モードが適用された現在コーディングブロックにPDPCを適用する方法を示す図である。本発明の一実施例によれば、現在ブロックが正方形ブロックでない場合、エンコーダ/デコーダは、イントラ予測モードのうちDCモードの場合、長い辺の参照サンプルのみを用いて予測を行うことができる。この場合、短い辺のサンプル値は現在コーディングブロックの予測に一切反映されなくてもよい。この場合、現在ブロックの予測値と短い辺の参照サンプルとの差が大きくなることがある。このため、エンコーダ/デコーダは、イントラ予測を行うとき、サンプルの位置ベースフィルタリングを行ってもよい。前述したように、本発明において、このようなサンプルの位置ベースフィルタリング方法は、PDPCと呼ぶことができる。エンコーダ/デコーダは、PDPCが適用される場合、DCモードにおいて第1参照サンプル、第2参照サンプル及び左上端に隣接した参照サンプル値を用して加重値に基づくフィルタリングを行うことができる。このとき、下記の式7~12を用いて参照サンプル及び/又はそれぞれの参照サンプルに適用される加重値を導出することができる。
【0141】
[数7]
refL[ x ][ y ] = p[ -1 ][ y ]
【0142】
[数8]
refT[ x ][ y ] = p[ x ][ -1 ]
【0143】
[数9]
wT[ y ] = 32 >> ( ( y << 1 ) >> nScale )
【0144】
[数10]
wL[ x ] = 32 >> ( ( x << 1 ) >> nScale )
【0145】
[数11]
wTL[ x ][ y ] = ( predModeIntra = = INTRA_DC ) ? ( ( wL[ x ] >> 4 ) + ( wT[ y ] >> 4 ) ) : 0
【0146】
[数12]
predSamples[ x ][ y ] = clip1Cmp( ( refL[ x ][ y ] * wL[ x ] + refT[ x ][ y ] * wT[ y ] - p[ -1 ][ -1 ] * wTL[ x ][ y ] + ( 64 - wL[ x ] - wT[ y ] + wTL[ x ][ y ] ) * predSamples[ x ][ y ] + 32 ) >>6 )
【0147】
具体的に、左側参照サンプルは、式7を用いて導出でき、右側参照サンプルは、式8を用いて導出できる。右側参照サンプルに適用される加重値は、式9を用いて導出でき、左側参照サンプルに適用される加重値は、式10を用いて導出でき、左上端に角部に位置している参照サンプルに適用される加重値は、式11を用いて導出できる。そして、エンコーダ/デコーダは、決定された加重値に基づき、式12によって予測サンプルを生成することができる。
【0148】
本発明の一実施例によれば、エンコーダ/デコーダは、正方形ブロック以外の非正方形ブロックである場合、相対的に長い辺と短い辺の加重値を異なるように設定できる。例えば、エンコーダ/デコーダは、相対的に長い辺に適用される加重値を、短い辺の加重値より小さく設定できる。上述の式9、式10において、短い辺に属すると、加重値を長い辺の場合と異なるように設定できる。一例として、加重値は32の代わりに、16、8、4などに設定されてよい。又は、上述の式9及び式10に用いられたスケール変数nScaleを用いることができる。エンコーダ/デコーダは、長い辺と短い辺の位置によってその値を設定することができる。
【0149】
一実施例において、複数の参照ラインサンプルを使用する場合、エンコーダ/デコーダは、PDPCを垂直モード及び/又は水平モードに適用することができる。又は、エンコーダ/デコーダは、PDPCを垂直、水平、DC、PLANARモードに適用することができる。
【0150】
図20は、本発明の一実施例に係るビデオ信号処理方法を示すフローチャートである。
図20を参照すると、説明の便宜のためにデコーダを中心に説明するが、本発明がこれに制限されるものではなく、本実施例に係るビデオ信号処理方法は、エンコーダにも実質的に同じ方法で適用可能である。
【0151】
図20を参照すると、デコーダは、現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定する(S2001)。
【0152】
デコーダは、前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割する(S2002)。
【0153】
デコーダは、前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成する(S2003)。
【0154】
デコーダは、前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元する(S2004)。
【0155】
前述したように、前記予測ブロックを生成する段階は、前記現在ブロックから分割された変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)を行う段階を含むことができる。
【0156】
また、前述したように、前記予測ブロックを生成する段階は、前記変換ブロックの幅及び高さのうち少なくとも一つに基づき、前記位置依存のイントラ予測サンプルフィルタリングの適用されるか否かを決定する段階をさらに含むことができる。
【0157】
また、前述したように、前記位置依存のイントラ予測サンプルフィルタリングの適用されるか否かを決定する段階は、前記変換ブロックの幅が予め設定された基準値より大きいか等しく、且つ前記変換ブロックの高さが前記予め設定された基準値より大きいか等しい場合、前記位置依存のイントラ予測サンプルフィルタリングを適用すると決定することによって行われてよい。
【0158】
また、前述したように、前記変換ブロックの残差ブロックは、前記変換ブロック単位で二次逆変換(inverse secondary transform)及び一次逆変換(inverse primary transform)を行うことによって導出されてよい。
【0159】
また、前述したように、前記現在ブロックに二次変換が適用されるか否かを決定する段階;前記現在ブロックに前記二次変換が適用される場合、前記現在ブロックのイントラ予測モードに基づき、予め定義された二次変換カーネルセットの中から、前記現在ブロックに適用される二次変換カーネルセットを導出する段階;前記決定された二次変換カーネルセット内で前記現在ブロックに適用される二次変換カーネルを決定する段階;前記変換ブロック単位で二次逆変換を行うことによって前記変換ブロックの二次逆変換されたブロックを生成する段階;及び、前記二次逆変換されたブロックに対して一次逆変換を行うことによって、前記変換ブロックの残差ブロックを生成する段階を含むことができる。
【0160】
上述した本発明の実施例は多様な手段を介して具現される。例えば、本発明の実施例は、ハードウェア、ファームウェア(firmware)、ソフトフェアまたはそれらの組み合わせによって具現される。
【0161】
ハードウェアによる具現の場合、本発明の実施例による方法は、一つまたはそれ以上のASICs(Application Specific Integrated Circuits)、DSPs(Digital Signal Processors)、DSDPs(Digital Signal Processing Devices)、PDLs(Programmable Logic Devices)、FPGAs(Field Programmable Gate Arrays)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサなどによって具現される。
【0162】
ファームフェアやソフトウェアによる具現の場合、本発明の実施例による方法は、上述した機能または動作を行うモジュール、手順または関数などの形態で具現される。ソフトウェアコードは、メモリに貯蔵されてプロセッサによって具現される。前記メモリはプロセッサの内部または外部に位置し、既に公知の多様な手段によってプロセッサとデータを交換する。
【0163】
一部の実施例はコンピュータによって実行されるプログラムモジュールのようなコンピュータで実行可能な命令語を含む記録媒体の形態にも具現される。コンピュータで判読可能な媒体は、コンピュータでアクセスされ得る任意の利用可能な媒体であり、揮発性及び非揮発性媒体、分離型及び非分離型媒体をいずれも含む。また、コンピュータ読取可能媒体は貯蔵媒体及び通信媒体をいずれも含む。コンピュータ貯蔵媒体は、コンピュータ判読可能な命令語、データ構造、プログラムモジュール、またはその他のデータのような情報の貯蔵のための任意の方法または技術で具現された揮発性及び非揮発性媒体、分離型及び非分離型媒体をいずれも含む。通信媒体は、典型的にコンピュータ読取可能な命令語、データ構造、またはプログラムモジュールのような変調されたデータ信号のその他のデータ、またはその他の伝送メカニズムを含み、任意の情報伝達媒体を含む。
【0164】
上述した本発明の説明は例示のためのものであって、本発明が属する技術分野における通常の知識を有する者は、本発明の技術的思想や必須的特徴を変更せずも他の具体的な形態に容易に変更可能であることを理解できるはずである。よって、上述した実施例は全ての面で例示的なものであり、限定的なものではないと理解すべきである。例えば、単一型として説明されている各構成要素は分散されて実施されてもよく、同じく分散されていると説明されている構成要素も結合された形態で実施されてもよい。
【0165】
本発明の範囲は、上述した詳細な説明よりは後述する特許請求の範囲によって示され、特許請求の範囲の意味及び範囲、そしてその均等概念から導き出される全ての変更または変形された形態が本発明の範囲に含まれると解釈すべきである。
【産業上の利用可能性】
【0166】
以上、前述した本発明の好ましい実施例は、例示の目的のために開示されたものであり、当業者であれば、添付する特許請求の範囲に開示の本発明の技術的思想及びその技術的範囲内で、様々な他の実施例として改良、変更、代替又は付加などが可能であろう。
【手続補正書】
【提出日】2021-08-27
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ビットストリームを記憶した非一時的コンピュータ可読記録媒体であって、前記ビットストリームはデコーディング方法によって復号化され、
前記デコーディング方法は、
現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定する段階;
前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割する段階;
前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成する段階;及び
前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元する段階を含み、
前記予測ブロック
は、前記変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)
を適用することによって生成される、非一時的コンピュータ可読記録媒体。
【請求項2】
前記変換ブロックの幅及び高さのうち少なくとも一つに基づき、前記位置依存のイントラ予測サンプルフィルタリング
が適用される
、請求項1に記載の
非一時的コンピュータ可読記録媒体。
【請求項3】
前記変換ブロックの幅が予め設定された基準値より大きいか等しく、且つ前記変換ブロックの高さが前記予め設定された基準値より大きいか等しい場合、
前記位置依存のイントラ予測サンプルフィルタリングが適用される、請求項2に記載の
非一時的コンピュータ可読記録媒体。
【請求項4】
前記変換ブロックの残差ブロックは、前記変換ブロック単位で二次逆変換(inverse secondary transform)及び一次逆変換(inverse primary transform)を行うことによって導出される、請求項1に記載の
非一時的コンピュータ可読記録媒体。
【請求項5】
前記現在ブロックに二次変換が適用されるか否かを決定する段階;
前記現在ブロックに前記二次変換が適用される場合、前記現在ブロックのイントラ予測モードに基づき、予め定義された二次変換カーネルセットの中から、前記現在ブロックに適用される二次変換カーネルセットを導出する段階;
前記決定された二次変換カーネルセット内で前記現在ブロックに適用される二次変換カーネルを決定する段階;
前記変換ブロック単位で二次逆変換を行うことによって前記変換ブロックの二次逆変換されたブロックを生成する段階;及び
前記二次逆変換されたブロックに対して一次逆変換を行うことによって、前記変換ブロックの残差ブロックを生成する段階を含む、請求項1に記載の
非一時的コンピュータ可読記録媒体。
【請求項6】
ビデオ信号
をデコーディングするための装置であって、
プロセッサを含み、
前記プロセッサは、
現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定し、
前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割し、
前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成し、
前記変換ブロックの残差ブロック及び前記予測ブロックに基づいて前記現在ブロックを復元し、
前記予測ブロックは、前記変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)
を適用することによって生成される、装置。
【請求項7】
前記変換ブロックの幅及び高さのうち少なくとも一つに基づき、前記位置依存のイントラ予測サンプルフィルタリング
が適用される
、請求項6に記載の
装置。
【請求項8】
前記変換ブロックの幅が予め設定された基準値より大きいか等しく、且つ前記変換ブロックの高さが前記予め設定された基準値より大きいか等しい場合、
前記位置依存のイントラ予測サンプルフィルタリングが適用される、請求項7に記載の
装置。
【請求項9】
前記変換ブロックの残差ブロックは、前記変換ブロック単位で二次逆変換(inverse secondary transform)及び一次逆変換(inverse primary transform)を行うことによって導出される、請求項6に記載の
装置。
【請求項10】
前記プロセッサは、
前記現在ブロックに二次変換が適用されるか否かを決定し、
前記現在ブロックに前記二次変換が適用される場合、前記現在ブロックのイントラ予測モードに基づき、予め定義された二次変換カーネルセットの中から、前記現在ブロックに適用される二次変換カーネルセットを導出し、
前記決定された二次変換カーネルセット内で前記現在ブロックに適用される二次変換カーネルを決定し、
前記変換ブロック単位で二次逆変換を行うことによって前記変換ブロックの二次逆変換されたブロックを生成し、
前記二次逆変換されたブロックに対して一次逆変換を行うことによって、前記変換ブロックの残差ブロックを生成する、請求項6に記載の
装置。
【請求項11】
ビデオ信号
をエンコーディングするための装置であって、
プロセッサを含み、
前記プロセッサは、
デコーディング方法を使用してデコーダによって復号されるビットストリームを取得し、
前記デコーディング方法は、
現在ブロックにイントラサブパーティション(ISP,Intra Sub-Partitions)モードが適用されるか否かを決定する段階;
前記現在ブロックにISPモードが適用される場合、前記現在ブロックを複数の水平又は垂直方向の長方形変換ブロックに分割する段階;
前記変換ブロックのそれぞれに対してイントラ予測を行うことによって前記変換ブロックの予測ブロックを生成する段階;及び
前記変換ブロックの残差ブロック
及び前記予測ブロックに基づいて前記現在ブロックを復元する段階を含み、
前記予測ブロック
は、前記変換ブロック単位で位置依存のイントラ予測サンプルフィルタリング(position-dependent intra prediction sample filtering)
を適用することによって生成される、装置。
【請求項12】
前記変換ブロックの幅及び高さのうち少なくとも一つに基づき、前記位置依存のイントラ予測サンプルフィルタリングが適用される、請求項11に記載の装置。
【請求項13】
前記変換ブロックの幅が予め設定された基準値より大きいか等しく、且つ前記変換ブロックの高さが前記予め設定された基準値より大きいか等しい場合、前記位置依存のイントラ予測サンプルフィルタリングが適用される、請求項12に記載の装置。
【請求項14】
前記変換ブロックの残差ブロックは、前記変換ブロック単位で二次逆変換(inverse secondary transform)及び一次逆変換(inverse primary transform)を行うことによって導出される、請求項11に記載の装置。
【請求項15】
前記デコーディング方法は、
前記現在ブロックに二次変換が適用されるか否かを決定する段階;
前記現在ブロックに前記二次変換が適用される場合、前記現在ブロックのイントラ予測モードに基づき、予め定義された二次変換カーネルセットの中から、前記現在ブロックに適用される二次変換カーネルセットを導出する段階;
前記決定された二次変換カーネルセット内で前記現在ブロックに適用される二次変換カーネルを決定する段階;
前記変換ブロック単位で二次逆変換を行うことによって前記変換ブロックの二次逆変換されたブロックを生成する段階;及び
前記二次逆変換されたブロックに対して一次逆変換を行うことによって、前記変換ブロックの残差ブロックを生成する段階を含む、請求項11に記載の装置。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0084
【補正方法】変更
【補正の内容】
【0084】
例えば、
図10の(a)に示すように、イントラ予測モード2として決定されたcbWidth×cbHeightコーディングブロックは、
図10の(b)に示すように、水平方向に2個の変換ブロックに分割されてよい。tbWidht_1がtbHeight_1より大きいと仮定すれば、tbWidht_1×tbHeight_1サイズを有する第1変換ブロックは、
水平長方形ブロック形態を有することができる。ここで、cbWidthは、コーディングブロックの幅を示す変数であり、cbHeightは、コーディングブロックの高さを示す変数である。tbWidthは、変換ブロックの幅を示す変数であり、tbHeightは、変換ブロックの高さを示す変数である。
【国際調査報告】