(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-29
(45)【発行日】2024-09-06
(54)【発明の名称】画像の符号化/復号化方法及び装置
(51)【国際特許分類】
H04N 19/11 20140101AFI20240830BHJP
H04N 19/159 20140101ALI20240830BHJP
H04N 19/176 20140101ALI20240830BHJP
H04N 19/593 20140101ALI20240830BHJP
H04N 19/70 20140101ALI20240830BHJP
【FI】
H04N19/11
H04N19/159
H04N19/176
H04N19/593
H04N19/70
(21)【出願番号】P 2021159171
(22)【出願日】2021-09-29
(62)【分割の表示】P 2019520095の分割
【原出願日】2017-10-12
【審査請求日】2021-10-27
(31)【優先権主張番号】10-2016-0133753
(32)【優先日】2016-10-14
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2016-0133755
(32)【優先日】2016-10-14
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2017-0127938
(32)【優先日】2017-09-29
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2017-0127940
(32)【優先日】2017-09-29
(33)【優先権主張国・地域又は機関】KR
【前置審査】
(73)【特許権者】
【識別番号】515289820
【氏名又は名称】インダストリー アカデミー コーオペレイション ファウンデーション オブ セジョン ユニバーシティ
(74)【代理人】
【識別番号】100120031
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100118843
【氏名又は名称】赤岡 明
(74)【代理人】
【識別番号】100096921
【氏名又は名称】吉元 弘
(72)【発明者】
【氏名】ムン、ジュヒ
(72)【発明者】
【氏名】リム、ソンウォン
(72)【発明者】
【氏名】ウォン、ドンジェ
【審査官】鉢呂 健
(56)【参考文献】
【文献】特表2014-503155(JP,A)
【文献】LI, Jiahao et al.,Multiple line-based intra prediction,Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 3rd Meeting: Geneva, CH, 26 May - 1 June 2016, [JVET-C0071],JVET-C0071 (version 2),ITU-T,2016年05月26日,<URL:http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/3_Geneva/wg11/JVET-C0071-v2.zip>: JVET-C0071.doc: pp.1-6
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
画像の復号化方法において、
複数の参照画素ラインの中から少なくとも一つの参照画素ラインを選択する段階と、ここで、前記複数の参照画素ラインは、現在ブロック
を含む現在ピクチャ内に含まれ、
前記現在ブロックのイントラ予測モードを導出する段階と、
前記少なくとも一つの参照画素ラインと、前記現在ブロックの前記イントラ予測モードとに基づいて、前記現在ブロックの予測ブロックを生成する段階と、
を含み、
前記現在ブロックの周辺の参照サンプルのいずれかの側の参照サンプルが利用できない場合、前記イントラ予測モードは、所定の方向範囲内に設定された方向性イントラ予測モードを含むイントラ予測モードの中から導出され
、
前記所定の方向範囲は、利用可能な参照ピクセルが存在する方向範囲であることを特徴とする、画像の復号化方法。
【請求項2】
画像の符号化方法において、
複数の参照画素ラインの中から少なくとも一つの参照画素ラインを選択する段階と、ここで、前記複数の参照画素ラインは、現在ブロック
を含む現在ピクチャ内に含まれ、
前記現在ブロックのイントラ予測モードを導出する段階と、
前記少なくとも一つの参照画素ラインと、前記現在ブロックの前記イントラ予測モードとに基づいて、前記現在ブロックの予測ブロックを生成する段階と、
前記現在ブロックの前記イントラ予測モードに対する第1の情報と、前記少なくとも一つの参照画素ラインに対する第2の情報とを符号化する段階と、
を含み、
前記現在ブロックの周辺の参照サンプルのいずれかの側の参照サンプルが利用できない場合、前記イントラ予測モードは、所定の方向範囲内に設定された方向性イントラ予測モードを含むイントラ予測モードの中から導出され
、
前記所定の方向範囲は、利用可能な参照ピクセルが存在する方向範囲であることを特徴とする、画像の符号化方法。
【請求項3】
ビットストリームを格納するための復号器が読み取り可能な非一時的格納媒体であって、前記ビットストリームは、復号器が実行可能なプログラムを備え、前記復号器が実行可能なプログラムは、実行されるとき、復号器に以下の段階、
複数の参照画素ラインの中から少なくとも一つの参照画素ラインを選択する段階と、ここで、前記複数の参照画素ラインは、現在ブロック
を含む現在ピクチャ内に含まれ、
前記現在ブロックのイントラ予測モードを導出する段階と、
前記少なくとも一つの参照画素ラインと、前記現在ブロックの前記イントラ予測モードとに基づいて、前記現在ブロックの予測ブロックを生成する段階と、
を実行させ、
前記現在ブロックの周辺の参照サンプルのいずれかの側の参照サンプルが利用できない場合、前記イントラ予測モードは、所定の方向範囲内に設定された方向性イントラ予測モードを含むイントラ予測モードの中から導出され
、
前記所定の方向範囲は、利用可能な参照ピクセルが存在する方向範囲であることを特徴とする、復号器が読み取り可能な非一時的格納媒体。
【請求項4】
画像の符号化方法によって生成されたビットストリームを送信する方法であって、前記画像の符号化方法は、
複数の参照画素ラインの中から少なくとも一つの参照画素ラインを選択する段階と、ここで、前記複数の参照画素ラインは、現在ブロック
を含む現在ピクチャ内に含まれ、
前記現在ブロックのイントラ予測モードを導出する段階と、
前記少なくとも一つの参照画素ラインと、前記現在ブロックの前記イントラ予測モードとに基づいて、前記現在ブロックの予測ブロックを生成する段階と、
前記現在ブロックの前記イントラ予測モードに対する第1の情報と、前記少なくとも一つの参照画素ラインに対する第2の情報とを、ビットストリーム内に符号化する段階と、
を含み、
前記現在ブロックの周辺の参照サンプルのいずれかの側の参照サンプルが利用できない場合、前記イントラ予測モードは、所定の方向範囲内に設定された方向性イントラ予測モードを含むイントラ予測モードの中から導出され
、
前記所定の方向範囲は、利用可能な参照ピクセルが存在する方向範囲であることを特徴とする、ビットストリームを送信する方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像信号符号化/復号化方法及び装置に係り、より具体的には、改善されたイントラ予測を用いた画像符号化/復号化方法及び装置に関する。
【背景技術】
【0002】
最近、インターネットでは、動画像などのマルチメディアデータの需要が急増している。しかし、チャネル(Channel)の帯域幅(Bandwidth)が発展する速度は、急増しているマルチメディアデータの量に追いつかない状況である。かかる問題を解決するために、国際標準化機構であるITU-TのVCEG(Video Coding Expert Group)とISO/IECのMPEG(Moving Picture Expert Group)では、着実に共同研究を介して、より向上した動画像圧縮標準を研究中である。
【0003】
動画像圧縮は大きく、画面内(Intra)予測、画面間(Inter)予測、変換、量子化、エントロピー符号化(Entropy coding)及びインループフィルタ(In-loop filter)から構成される。この中で、イントラ予測は、現在ブロックの周りに存在する復元画素を用いて現在ブロックのための予測ブロックを生成する技術をいう。
【0004】
従来のイントラ予測は、整数位置の参照画素を用いた補間過程によって分数位置の画素を生成し、このように生成された分数位置の画素を用いて予測ブロックを生成する。このとき、いずれの整数位置の参照画素を用いるかといずれの補間方式を適用したかによって、元の画素値とその予測値との誤差に影響を与える。
【0005】
また、従来のイントラ予測技術は、多数のイントラ予測モードの中でいずれのイントラ予測モードが入力画像のイントラ予測に使用されたかを画像復号化装置に知らせるために、予測モードに関する相当の情報を符号化しなければならない。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、画像を符号化/復号化するにあたり、複数の参照画素ラインを用いてイントラ予測を行うことにより、イントラ予測の効率を向上させることに主な目的がある。
【0007】
本発明は、画像を符号化/復号化するにあたり、複数の補間方式の中から選択された補間方式を用いてイントラ予測ブロックを誘導することにより、イントラ予測の効率を向上させることに主な目的がある。
【0008】
本発明は、画像を符号化/復号化するにあたり、複数の参照画素ラインを用いてイントラ予測を行った場合、イントラ予測ブロックと周辺領域間の不連続性を減少させることができるフィルタリング方法を提供することに主な目的がある。
【0009】
本発明は、画像を符号化/復号化するにあたり、既に復元された画素領域を用いて符号化又は復号化する画像のイントラ予測モードを誘導することにより、イントラ予測の効率を向上させることに主な目的がある。
【課題を解決するための手段】
【0010】
本発明の一実施形態に係る画像の復号化方法及び装置は、複数の参照画素ラインの中から少なくとも一つの参照画素ラインを選択し、前記選択された少なくとも一つの参照画素ラインに含まれている少なくとも一つの画素値に基づいて前記現在ブロック内の一つの画素の予測値を誘導することができる。
【0011】
本発明の一実施形態に係る画像の復号化方法及び装置は、入力ビットストリームから参照画素ラインインデックス情報を得て、前記参照画素ラインインデックス情報に基づいて、前記複数の参照画素ラインの中から前記少なくとも一つの参照画素ラインを選択することができる。
【0012】
本発明の一実施形態に係る画像の復号化方法及び装置は、前記現在ブロック内の各画素の位置に基づいて前記現在ブロック内の各画素ごとに少なくとも一つの参照画素ラインを選択することができる。
【0013】
本発明の一実施形態に係る画像の復号化方法及び装置は、複数の補間方式の中からいずれかを選択し、前記選択された補間方式を用いて、前記選択された少なくとも一つの参照画素ラインに含まれている少なくとも一つの画素を用いて補間を行うことにより、前記予測値を得ることができる。前記選択された補間方式は、複数の補間方式のうちのいずれかを示すインデックス情報に基づいて選択できる。
【0014】
本発明の一実施形態に係る画像の復号化方法及び装置は、前記現在ブロックのすべての画素の予測値を誘導して前記現在ブロックの予測ブロックを得、前記予測ブロックをフィルタリングすることができる。
【0015】
本発明の一実施形態に係る画像の復号化方法及び装置は、前記現在ブロックの大きさ又は前記現在ブロックのイントラ予測モードに応じて前記現在ブロックの所定の領域をフィルタリングすることができる。
【0016】
本発明の一実施形態に係る画像の符号化方法及び装置は、複数の参照画素ラインの中から少なくとも一つの参照画素ラインを選択し、前記選択された少なくとも一つの参照画素ラインに含まれている少なくとも一つの画素値に基づいて前記現在ブロック内の一つの画素の予測値を得ることができる。
【0017】
本発明の一実施形態に係る画像の符号化方法及び装置は、前記選択された少なくとも一つの参照画素ラインを指示する参照画素ラインインデックス情報を符号化し、前記符号化された参照画素ラインインデックス情報をビットストリームに含ませることができる。
【0018】
本発明の一実施形態に係る画像の符号化方法及び装置は、前記現在ブロック内の各画素の位置に基づいて前記現在ブロック内の各画素ごとに少なくとも一つの参照画素ラインを選択することができる。
【0019】
本発明の一実施形態に係る画像の符号化方法及び装置は、前記現在ブロックのイントラ予測モードに基づいて前記現在ブロック内の各画素ごとに少なくとも一つの参照画素ラインを選択することができる。
【0020】
本発明の一実施形態に係る画像の符号化方法及び装置は、複数の補間方式の中からいずれかを選択し、前記選択された補間方式を用いて、前記選択された少なくとも一つの参照画素ラインに含まれている少なくとも一つの画素を用いて補間を行うことにより、前記予測値を得ることができる。
【0021】
本発明の一実施形態に係る画像の符号化方法及び装置は、前記複数の補間方式のうちのいずれかを示すインデックス情報を符号化してビットストリームに含ませることができる。
【0022】
本発明の一実施形態に係る画像の符号化方法及び装置は、前記現在ブロックのすべての画素の予測値を誘導して前記現在ブロックの予測ブロックを得た後、前記予測ブロックをフィルタリングすることができる。
【0023】
本発明の一実施形態に係る画像の符号化方法及び装置は、前記現在ブロックの大きさ又は前記現在ブロックのイントラ予測モードに応じて前記現在ブロックの所定の領域をフィルタリングすることができる。
【0024】
本発明の一実施形態に係る画像の符号化/復号化方法及び装置は、既に復元された、少なくとも一つの画素領域の参照画素領域に基づいて復元画素領域のイントラ予測モードを誘導し、前記誘導された前記復元画素領域のイントラ予測モードに基づいて、前記現在ブロックのイントラ予測モードを誘導し、誘導されたイントラ予測モードを用いて前記現在ブロックのイントラ予測ブロックを得、得られたイントラ予測ブロックと前記現在ブロックの残差ブロックとを加算して前記現在ブロックを復元することができる。
【0025】
本発明の一実施形態に係る画像の復号化方法及び装置は、入力ビットストリームからイントラ予測モードの誘導方法を指示する情報を得、前記イントラ予測モードの誘導方法を指示する情報に応じて、復元された画素領域のイントラ予測モードの誘導を行うか否かが選択できる。
【0026】
本発明の一実施形態に係る画像の復号化方法及び装置は、入力ビットストリームから前記利用可能な複数のイントラ予測モードの個数又は前記利用可能な複数のイントラ予測モードのリストを特定する利用可能なイントラ予測モード情報を得、前記利用可能なイントラ予測モード情報に基づいて前記現在ブロックのイントラ予測モードを誘導することができる。
【0027】
本発明の一実施形態に係る画像符号化方法及び装置は、現在ブロックのイントラ予測モードの誘導方法を指示する情報を符号化した後、ビットストリームに含ませ、前記ビットストリームの入力を受けた画像復号化装置は、前記現在ブロックのイントラ予測モードの誘導方法を指示する情報に応じて、前記復元された画素領域のイントラ予測モードを誘導する段階を選択的に行うことができる。
【発明の効果】
【0028】
本発明によれば、より効果的なイントラ予測技術を適用することにより、画像の圧縮効率と再生された画像の画質を向上させることができる。また、本発明に係る、イントラ予測ブロックと周辺領域間の不連続性を減少させることができるフィルタリング方法を適用することにより、再生された画像の画質を向上させることができる。
【図面の簡単な説明】
【0029】
【
図1】本発明の一実施形態に係る画像符号化装置を示すブロック図である。
【
図2】イントラ予測モードの一例を説明するための図である。
【
図5】予測ブロックを生成する一例を説明するための図である。
【
図6】本発明の一実施形態に係る画像復号化装置を示すブロック図である。
【
図7a-7b】補間を用いてイントラ予測画素を誘導する方法を説明するための図である。
【
図8】補間方法又は補間係数を選択する暗黙的な方法を説明するための図である。
【
図9】画像符号化装置によってイントラ予測モードが選択される過程を説明するためのフローチャートである。
【
図10】画像符号化装置によって複数の補間方式の中からいずれかが選択される過程を説明するためのフローチャートである。
【
図11】画像符号化装置によって補間方式インデックス情報を符号化する過程を説明するフローチャートである。
【
図12】画像復号化装置によって補間方式インデックス情報が復号化される過程を説明するフローチャートである。
【
図13】本発明の一実施形態に係る、複数の参照画素ラインを用いたイントラ予測画素の誘導を説明するための図である。
【
図14】本発明の一実施形態に係る、イントラ予測画素値を誘導する過程を説明するためのフローチャートである。
【
図15】予測ブロック毎にイントラ予測に用いられる参照画素ラインを適応的に決定する過程を説明するためのフローチャートである。
【
図16】参照画素ラインインデックス情報が画像符号化装置によって符号化される過程を示すフローチャートである。
【
図17】参照画素ラインインデックス情報が画像復号化装置によって復号化される過程を示すフローチャートである。
【
図18】参照画素ラインインデックスの伝送なしに参照画素ラインを決定する方法を説明するための図である。
【
図19】参照画素ラインインデックスの伝送なしに参照画素ラインを決定する方法を説明するための図である。
【
図20】予測ブロックと参照画素ライン間のスムージングを説明するための図である。
【
図21】共通の参照画素ラインが現在ブロック内のすべての変換ブロックに用いられる場合を示す。
【
図22a-22d】各変換ブロックごとに参照画素ラインを選択してイントラ予測に用いられる場合を示す。
【
図23】本発明の第1実施形態に係るDIMDを説明するための図である。
【
図24】本発明の第3実施形態に係るDIMDを説明するための図である。
【
図25】本発明に係るDIMDを説明するためのフローチャートである。
【
図26】本発明に係るDIMDを用いて画像を符号化する場合、イントラ予測モードを符号化する方法を説明するためのフローチャートである。
【
図27】本発明に係るDIMDを用いて画像を復号化する場合、イントラ予測モードを復号化する方法を説明するためのフローチャートである。
【
図28】本発明に係る第7実施形態を説明するための図である。
【
図29】本発明の第7実施形態を適用する場合、イントラ予測モードを符号化する過程を示すフローチャートである。
【
図30】本発明の第7実施形態を適用する場合、イントラ予測モードを復号化する過程を示すフローチャートである。
【
図31a-31b】テンプレートインデックスを伝送するDIMDの変形例を説明するための図である。
【
図32】テンプレートインデックスが使用されるDIMDによるイントラ予測モードの符号化方法を説明するフローチャートである。
【
図33】テンプレートインデックスが使用されるDIMDによるイントラ予測モードの 復号化方法を説明するフローチャートである。
【
図34】テンプレートを用いて誘導されたイントラ予測モードをMPM候補として設定する一例を説明するための図である。
【
図35】本発明の一実施形態に係るMPM候補の設定を説明するための図である。
【発明を実施するための形態】
【0030】
本発明は、様々な変更を加えることができ、様々な実施形態を有することができるので、特定の実施形態を図面に例示し、詳細な説明に詳細に説明する。ところが、これは本発明を特定の実施形態について限定するものではなく、本発明の思想及び技術範囲に含まれるすべての変更、均等物乃至代替物を含むものと理解されるべきである。各図面を説明しながら、類似の参照符号を類似の構成要素に対して使用した。
【0031】
用語「第1」、「第2」などは多様な構成要素の説明に使用できるが、これらの構成要素は上記の用語により限定されてはならない。これらの用語は、一つの構成要素を他の構成要素から区別する目的にのみ使われる。例えば、本発明の権利範囲から外れない限り、第1構成要素は第2構成要素と命名することができ、これと同様に、第2構成要素も第1構成要素と命名することができる。用語「及び/又は」は、複数の関連した記載項目の組み合わせ又は複数の関連した記載項目のいずれかを含む。
【0032】
ある構成要素が他の構成要素に「連結されて」いる或いは「接続されて」いるとした場合には、その他の構成要素に直接連結されている或いは接続されていることもあるが、それらの間に別の構成要素が介在することもあると理解されるべきである。これに対し、ある構成要素が他の構成要素に「直接連結されて」いる或いは「直接接続されて」いるとした場合には、それらの間に別の構成要素が介在しないと理解されるべきである。
【0033】
本発明で使用した用語は、単に特定の実施形態を説明するために使われたものであり、本発明を限定するものではない。単数の表現は、文脈上明白に異なる意味ではない限り、複数の表現を含む。本発明において、「含む」又は「有する」などの用語は、明細書上に記載された特徴、数字、段階、動作、構成要素、部品又はこれらの組み合わせが存在することを指定するものであり、一つ又はそれ以上の他の特徴や数字、段階、動作、構成要素、部品又はこれらの組み合わせの存在又は付加可能性を予め排除しないと理解されるべきである。
【0034】
以下、添付図面を参照して、本発明の実施形態を詳細に説明する。図面上の同一の構成要素については同一の参照符号を使用し、同一の構成要素についての重複説明は省略する。
【0035】
図1は本発明の一実施形態に係る画像符号化装置を示すブロック図である。
【0036】
図1を参照すると、画像符号化装置100は、画像分割部101、画面内予測部102、画面間予測部103、減算部104、変換部105、量子化部106、エントロピー符号化部107、逆量子化部108、逆変換部109、増算部110、フィルタ部111及びメモリ112を含むことができる。
【0037】
図1に示された各構成部は、画像符号化装置で互いに異なる特徴的な機能を示すために独立して図示したものであって、各構成部が分離されたハードウェア又は一つのソフトウェア構成単位からなることを意味しない。すなわち、各構成部は、説明の便宜上、それぞれの構成部として羅列して含むものであり、各構成部のうちの少なくとも二つの構成部が組み合わせられて1つの構成部をなすか、或いは1つの構成部が複数の構成部に分けられて機能を行うことができ、このような各構成部の統合された実施形態及び分離された実施形態も、本発明の本質から外れない限り、本発明の権利範囲に含まれる。
【0038】
また、一部の構成要素は、本発明において本質的な機能を行う不可欠の構成要素ではなく、単に性能を向上させるための選択的構成要素であり得る。本発明は、単に性能向上のために使用される構成要素を除く、本発明の本質の実現に必要不可欠な構成部のみを含めて実現でき、単に性能向上のために使用される選択的構成要素を除く必須構成要素のみを含む構造も本発明の権利範囲に含まれる。
【0039】
画像分割部100は、入力された画像を少なくとも一つのブロックに分割することができる。このとき、入力された画像は、ピクチャ、スライス、タイル、セグメントなど、さまざまな形状及びサイズを持つことができる。ブロックは、符号化単位(CU)、予測単位(PU)又は変換単位(TU)を意味することができる。前記分割は、4分木(quad tree)及び2分木(binary tree)のうちの少なくとも一つに基づいて行われ得る。4分木は、上位ブロックを、幅と高さが上位ブロックの半分である下位ブロックに四分割する方式である。2分木は、上位ブロックを、幅及び高さのうちのいずれかが上位ブロックの半分である下位ブロックに二分割する方式である。前述した2分木ベースの分割によって、ブロックは正方形だけでなく、非正方形の形状を持つことができる。
【0040】
以下、本発明の実施形態では、符号化単位は、符号化を行う単位の意味で使用することもあり、復号化を行う単位の意味で使用することもある。
【0041】
予測部102、103は、インター予測を行う画面間予測部103とイントラ予測を行う画面内予測部102を含むことができる。予測単位に対してインター予測を使用するか或いはイントラ予測を行うかを決定し、各予測方法による具体的な情報(例えば、イントラ予測モード、動きベクトル、参照ピクチャなど)を決定することができる。このとき、予測が行われる処理単位と、予測方法及び具体的な内容が定められる処理単位とは互いに異なり得る。例えば、予測方法と予測モードなどは予測単位で決定され、予測の実行は変換単位で行われてもよい。
【0042】
生成された予測ブロックと原本ブロック間の残差値(残差ブロック)は、変換部105に入力できる。また、予測のために使用した予測モード情報や動きベクトル情報などは、残差値と一緒にエントロピー符号化部107で符号化されて復号化器へ伝達できる。特定の符号化モードを使用する場合、予測部102、103を介して予測ブロックを生成せずに、原本ブロックをそのまま符号化して復号化部へ伝送することも可能である。
【0043】
画面内予測部102は、現在ブロックのイントラ予測モードを決定し、前記決定されたイントラ予測モードに応じて、参照画素を用いて1つ又は複数個の予測ブロックを生成することができる。イントラ予測が行われる現在ブロックの周辺ブロックの予測モードがインター予測である場合には、インター予測が適用された周辺ブロックに含まれる参照画素を、イントラ予測が適用された周辺の他のブロック内の参照画素で代替することができる。すなわち、参照画素が利用可能ではない場合、利用可能でない参照画素情報を、利用可能な参照画素のうちの少なくとも一つの参照画素で代替して使用することができる。
【0044】
イントラ予測における予測モードは、参照画素情報を予測方向に応じて使用する方向性予測モードと、予測の実行時に方向性情報を使用しない非方向性モードとを持つことができる。輝度情報を予測するためのモードと色差情報を予測するためのモードとが互いに異なり、色差情報を予測するために、輝度情報を予測するために使用されたイントラ予測モード情報又は予測された輝度信号情報を活用することができる。
【0045】
画面内予測部102は、AIS(Adaptive Intra Smoothing)フィルタ、参照画素補間部、及びDCフィルタを含むことができる。AISフィルタは、現在ブロックの参照画素に対してフィルタリングを行うフィルタであって、現在予測単位の予測モードに応じて、フィルタを適用するか否かを適応的に決定することができる。現在ブロックの予測モードがAISフィルタリングを行わないモードの場合、AISフィルタは適用されなくてもよい。
【0046】
画面内予測部102の参照画素補間部は、予測単位のイントラ予測モードが参照画素を補間した画素値に基づいてイントラ予測を行う予測単位である場合、参照画素を補間して分数単位位置の参照画素を生成することができる。現在予測単位の予測モードが参照画素を補間せずに予測ブロックを生成する予測モードである場合、参照画素は補間されなくてもよい。DCフィルタは、現在ブロックの予測モードがDCモードである場合、フィルタリングを介して予測ブロックを生成することができる。
【0047】
予測部102、103で生成された予測ブロックと予測ブロックの原本ブロックとの差異値である残差値(Residual)情報を含む残差ブロックが生成できる。生成された残差ブロックは、 変換部105に入力されて変換できる。
【0048】
図2はイントラ予測モードの一例を説明するための図である。
図2に示されたイントラ予測モードは、合計35種類のモードを持っている。0番モードはプラナーモード(Planar mode)、1番モードはDCモード、2乃至34番モードは角度モード(Angular mode)を示す。
【0049】
図3はプラナーモードを説明するための図である。現在ブロック内の1番目の画素P1の予測値を生成するために、Y軸に同じ位置にある復元された画素と、現在ブロックの右上端に存在する復元された画素Tを、図示の如く線形補間して生成する。同様に、2番目の画素P2の予測値を生成するために、X軸に同じ位置にある復元された画素と、現在ブロックの左下端に存在する復元された画素Lを、図示の如く線形補間して生成する。二つの予測画素P1とP2を平均した値が最終的な予測画素となる。プラナーモードでは、上述したような方式で予測画素を誘導して現在ブロックの予測ブロックを生成する。
【0050】
図4はDCモードを説明するための図である。現在ブロックの周辺の復元された画素の平均を計算した後、その平均値を現在ブロック内のすべての画素の予測値として用いる。
【0051】
図5は
図2の10番モード(水平モード)と26番モード(垂直モード)を用いて予測ブロックを生成する一例を説明するための図である。10番モードを用いる場合、現在ブロックの左側に接する各参照画素を右方向にコピーして現在ブロックの予測ブロックを生成する。同様に、26番モードは現在ブロックの上側に接する各参照画素を下方向にコピーして現在ブロックの予測ブロックを生成する。
【0052】
再び
図1を参照すると、画面間予測部103は、現在ピクチャの以前ピクチャ又は以後ピクチャのうちの少なくとも一つのピクチャの情報に基づいて予測単位を予測することもでき、場合によっては、現在ピクチャ内の符号化が完了した一部領域の情報に基づいて予測単位を予測することもできる。画面間予測部103は、参照ピクチャ補間部、動き予測部、動き補償部を含むことができる。
【0053】
参照ピクチャ補間部では、メモリ112から参照ピクチャ情報の提供を受け、参照ピクチャにおいて整数画素以下の画素情報を生成することができる。輝度画素の場合、1/4画素単位で整数画素以下の画素情報を生成するためにフィルタ係数を異にするDCTベースの8タブ補間フィルタ(DCT-based Interpolation Filter)が使用できる。色差信号の場合、1/8画素単位で整数画素以下の画素情報を生成するためにフィルタ係数を異にするDCTベースの4タブ補間フィルタ(DCT-based Interpolation Filter)が使用できる。
【0054】
動き予測部は、参照ピクチャ補間部によって補間された参照ピクチャに基づいて動き予測を行うことができる。動きベクトルを算出するための方法として、FBMA(Full search-based Block Matching Algorithm)、TSS(Three Step Search)、NTS(New Three-Step Search Algorithm)などの様々な方法が使用できる。動きベクトルは、補間された画素に基づいて1/2又は1/4画素単位の動きベクトル値を持つことができる。動き予測部では、動き予測方法を異にして現在予測単位を予測することができる。動き予測方法として、スキップ(Skip)方法、マージ(Merge)方法、AMVP(Advanced Motion Vector Prediction)方法などの様々な方法が使用できる。
【0055】
減算部104は、現在符号化しようとするブロックと画面内予測部102或いは画面間予測部103で生成された予測ブロックとを減算して現在ブロックの残差ブロックを生成する。
【0056】
変換部105では、残差データを含む残差ブロックをDCT、DST、KLT(Karhunen Loeve Transform)などの変換方法を用いて変換させることができる。この時、変換方法は、残差ブロックを生成するために使用された予測単位のイントラ予測モードに基づいて決定できる。例えば、イントラ予測モードに応じて、横方向にはDCTを使用し、縦方向にはDSTを使用することもできる。
【0057】
量子化部106は、変換部105で周波数領域に変換された値を量子化することができる。ブロックに応じて又は画像の重要度に応じて、量子化係数は変わり得る。量子化部106で算出された値は、逆量子化部108とエントロピー符号化部107に提供できる。
【0058】
前記変換部105及び/又は量子化部106は、画像符号化装置100に選択的に含まれ得る。すなわち、画像符号化装置100は、残差ブロックの残差データに対して、変換又は量子化のうちの少なくとも一つを行うか、変換及び量子化の両方をスキップして残差ブロックを符号化することができる。画像符号化装置100で変換又は量子化のいずれかが行われないか、変換及び量子化の両方が行われなくても、エントロピー符号化部107の入力に入るブロックを一般に変換ブロックと呼ぶ。エントロピー符号化部107は、入力データをエントロピー符号化する。エントロピー符号化は、例えば、指数ゴロム(Exponential Golomb)、CAVLC(Context-Adaptive Variable Length Coding)、CABAC(Context-Adaptive Binary Arithmetic Coding)などのさまざまな符号化方法を使用することができる。
【0059】
エントロピー符号化部107は、予測部102、103から符号化単位の残差値係数情報、ブロックタイプ情報、予測モード情報、分割単位情報、予測単位情報、伝送単位情報、動きベクトル情報、参照フレーム情報、ブロックの補間情報、フィルタリング情報などの様々な情報を符号化することができる。エントロピー符号化部107において、変換ブロックの係数は、変換ブロック内の部分ブロック単位で、0ではない係数、絶対値が1又は2よりも大きい係数、係数の符号などを示すさまざまな種類のフラグを介して符号化できる。前記フラグのみで符号化されない係数は、フラグを介して符号化された係数と実際変換ブロックの係数との差の絶対値を介して符号化できる。逆量子化部108及び逆変換部109では、量子化部106で量子化された値を逆量子化し、変換部105で変換された値を逆変換する。逆量子化部108及び逆変換部109で生成された残差値(Residual)は、予測部102、103に含まれている動き推定部、動き補償部及び画面内予測部102を介して予測された予測単位と合わせられて復元ブロック(Reconstructed Block)を生成することができる。増算器110は、予測部102、103で生成された予測ブロックと、逆変換部109を介して生成された残差ブロックとを増算して復元ブロックを生成する。
【0060】
フィルタ部111は、デブロッキングフィルタ、オフセット補正部及びALF(Adaptive Loop Filter)のうちの少なくとも一つを含むことができる。
【0061】
デブロッキングフィルタは、復元されたピクチャにおけるブロック間の境界により生じたブロック歪みを除去することができる。デブロッキングを行うか否かを判断するために、ブロックに含まれている幾つかの列又は行に含まれているピクセルに基づいて、現在ブロックにデブロッキングフィルタを適用するか否かを判断することができる。ブロックにデブロッキングフィルタを適用する場合、必要なデブロッキングフィルタリング強度に応じて強いフィルタ(Strong Filter)又は弱いフィルタ(Weak Filter)を適用することができる。また、デブロッキングフィルタを適用するにあたり、垂直フィルタリング及び水平フィルタリングを行う場合、水平方向のフィルタリング及び垂直方向のフィルタリングが並行処理されるようにすることができる。
【0062】
オフセット補正部は、デブロッキングを行った画像に対してピクセル単位で原本画像とのオフセットを補正することができる。特定のピクチャに対するオフセット補正を行うために、画像に含まれているピクセルを一定数の領域に区分した後、オフセットを行う領域を決定し、該当領域にオフセットを適用する方法、又は各ピクセルのエッジ情報を考慮してオフセットを適用する方法を使用することができる。
【0063】
ALF(Adaptive Loop Filtering)は、フィルタリングした復元画像と元来の画像とを比較した値に基づいて行われ得る。画像に含まれているピクセルを所定のグループに分けた後、該当グループに適用される1つのフィルタを決定し、グループごとに差別的にフィルタリングを行うことができる。ALFを適用するか否かに関連した情報は、輝度信号は符号化単位(Coding Unit、CU)別に伝送でき、それぞれのブロックに応じて適用されるALFフィルタの形状及びフィルタ係数は変わり得る。また、適用対象ブロックの特性を問わずに、同一の形態(固定された形態)のALFフィルタが適用されてもよい。
【0064】
メモリ112は、フィルタ部111を介して算出された復元ブロック又はピクチャを保存することができ、保存された復元ブロック又はピクチャは、インター予測を行うときに予測部102、103に提供できる。
【0065】
図6は本発明の一実施形態に係る画像復号化装置600を示すブロック図である。
【0066】
図6を参照すると、画像復号化装置600は、エントロピー復号化部601、逆量子化部602、逆変換部603、増算部604、フィルタ部605、メモリ606及び予測部607、608を含むことができる。
【0067】
画像符号化装置100によって生成された画像ビットストリームが画像復号化装置600に入力される場合、入力されたビットストリームは、画像符号化装置100で行われた過程と反対の手順で復号化できる。
【0068】
エントロピー復号化部601は、画像符号化装置100のエントロピー符号化部107でエントロピー符号化を行ったのと反対の手順でエントロピー復号化を行うことができる。例えば、画像符号化器で行われた方法に対応して指数ゴロム(Exponential Golomb)、CAVLC(Context-Adaptive Variable Length Coding)、CABAC(Context-Adaptive Binary Arithmetic Coding)などのさまざまな方法が適用できる。エントロピー復号化部601において、変換ブロックの係数は、変換ブロック内の部分ブロック単位で、0ではない係数、絶対値が1又は2より大きい係数、係数の符号などを示すさまざまな種類のフラグに基づいて復号化することができる。前記フラグのみで表現されない係数は、フラグを介して表現される係数とシグナルリングされた係数との和を用いて復号化できる。
【0069】
エントロピー復号化部601では、符号化器で行われたイントラ予測及びインター予測に関連した情報を復号化することができる。逆量子化部602は、量子化された変換ブロックに逆量子化を行って変換ブロックを生成する。
図1の逆量子化部108と実質的に同様に動作する。
【0070】
逆変換部603は、変換ブロックに対して逆変換を行って残差ブロックを生成する。このとき、変換方法は、予測方法(インター又はイントラ予測)、ブロックのサイズ及び/又は形状、イントラ予測モードなどに関する情報に基づいて決定できる。
図1の逆変換部109と実質的に同様に動作する。
【0071】
増算部604は、画面内予測部607或いは画面間予測部608で生成された予測ブロックと逆変換部603を介して生成された残渣ブロックとを増算して復元ブロックを生成する。
図1の増算部110と実質的に同様に動作する。
【0072】
フィルタ部605は、復元されたブロックに発生するさまざまな種類のノイズを減少させる。
【0073】
フィルタ部605は、デブロッキングフィルタ、オフセット補正部、ALFを含むことができる。
【0074】
画像符号化装置100から、該当ブロック又はピクチャにデブロッキングフィルタを適用するか否かについての情報、及び、デブロッキングフィルタを適用した場合、強いフィルタを適用したか弱いフィルタを適用したかについての情報の提供を受けることができる。画像復号化装置600のデブロッキングフィルタでは、画像符号化装置100から提供されたデブロッキングフィルタ関連情報の提供を受け、画像復号化装置600で該当ブロックに対するデブロッキングフィルタリングを行うことができる。
【0075】
オフセット補正部は、符号化時に画像に適用されたオフセット補正の種類及びオフセット値の情報などに基づいて、復元された画像に対してオフセット補正を行うことができる。
【0076】
ALFは、画像符号化装置100から提供されたALF適用有無情報、ALF係数情報などに基づいて符号化単位に適用できる。このようなALF情報は、特定のパラメータセットに含まれて提供されてもよい。フィルタ部605は、
図1のフィルタ部111と実質的に同様に動作する。
【0077】
メモリ606は、増算部604によって生成された復元ブロックを保存する。
図1のメモリ112と実質的に同様に動作する。
【0078】
予測部607、608は、エントロピー復号化部601から提供された予測ブロック生成関連情報、及びメモリ606から提供された以前に復号化されたブロック又はピクチャ情報に基づいて予測ブロックを生成することができる。
【0079】
予測部607、608は、画面内予測部607及び画面間予測部608を含むことができる。別途図示されてはいないが、予測部607、608は、予測単位判別部をさらに含むことができる。予測単位判別部は、エントロピー復号化部601から入力される予測単位情報、イントラ予測方法の予測モード情報、インター予測方法の動き予測関連情報などの様々な情報の入力を受け、現在符号化単位で予測単位を区分し、予測単位がインター予測を行うか、それともイントラ予測を行うかを判別することができる。画面間予測部608は、画像符号化装置100から提供された現在予測単位のインター予測に必要な情報を用いて、現在予測単位が含まれている現在ピクチャの以前ピクチャ又は以後ピクチャのうちの少なくとも一つのピクチャに含まれている情報に基づいて、現在予測単位に対するインター予測を行うことができる。又は、現在予測単位が含まれている現在ピクチャ内で、既に復元された一部領域の情報に基づいてインター予測を行うこともできる。
【0080】
インター予測を行うために、符号化単位を基準に、該当符号化単位に含まれている予測単位の動き予測方法がスキップモード(Skip Mode)、マージモード(Merge Mode)及びAMVPモード(AMVP Mode)のうちのいずれの方法であるかを判断することができる。
【0081】
画面内予測部607は、現在符号化しようとするブロックの周辺に位置した、既に復元された画素を用いて、予測ブロックを生成する。
【0082】
画面内予測部607は、AIS(Adaptive Intra Smoothing)フィルタ、参照画素補間部及びDCフィルタを含むことができる。AISフィルタは、現在ブロックの参照画素にフィルタリングを行うフィルタであって、現在予測単位の予測モードに応じてフィルタの適用有無を適応的に決定することができる。画像符号化装置100から提供された予測単位の予測モード及びAISフィルタ情報を用いて、現在ブロックの参照画素にAISフィルタリングを行うことができる。現在ブロックの予測モードがAISフィルタリングを行わないモードである場合、AISフィルタは適用されなくてもよい。
【0083】
画面内予測部607の参照画素補間部は、予測単位の予測モードが参照画素を補間した画素値に基づいてイントラ予測を行う予測単位である場合、参照画素を補間して分数単位位置の参照画素を生成することができる。生成された分数単位位置の参照画素が現在ブロック内の画素の予測画素として使用できる。現在予測単位の予測モードが、参照画素を補間せずに予測ブロックを生成する予測モードである場合、参照画素は補間されなくてもよい。DCフィルタは、現在ブロックの予測モードがDCモードである場合、フィルタリングを介して予測ブロックを生成することができる。
【0084】
画面内予測部607は、
図1の画面内予測部102と実質的に同様に動作する。
【0085】
画面間予測部608は、メモリ606に保存された参照ピクチャ、動き情報を用いてインター予測ブロックを生成する。画面間予測部608は、
図1の画面間予測部103と実質的に同様に動作する。
【0086】
本発明は、特にイントラ予測に関するものである。以下、本発明の様々な実施形態を、図面を参照しながらより詳細に説明する。
【0087】
<
イントラ予測のための補間>
図7a及び
図7bは補間を用いてイントラ予測画素を誘導する方法を説明するための図である。
図2のイントラ予測モードのうちの一つであるm番モードの予測角度が
図7aのようであると仮定すると、m番モードを用いてイントラ予測を行う場合、予測に用いられる参照画素Xは整数画素位置に存在しない。よって、参照画素Xの左側と右側の整数画素位置に存在する参照画素であるAとBを用いて補間を行うことにより、分数画素位置の参照画素Xを生成する。生成された参照画素Xは、現在ブロック内のP位置の画素の予測画素として用いられる。
【0088】
図7bは画素X、A、B間の関係を説明するための図である。
図7bを参照すると、画素XとAとの距離はS1であり、画素BとXとの距離はS2である。距離S1とS2の割合に応じて、さまざまな補間方法を用いて画素Xを誘導することができる。この時、使用される補間方法には、線形補間(linear interpolation)、キュービックコンボリューション補間(cubic convolution interpolation)、B-spline補間(B-spline interpolation)などのさまざまな補間方法が適用できる。
【0089】
画像復号化装置100が、利用可能な複数の補間方法のうちのいずれの補間方法が適用されたか或いはいずれの補間係数セットが使用されたかを分かるようにするための方法としては、さまざまな方法がある。第一の方法は、画像符号化装置100が、利用可能な複数の補間方法のうちのいずれの補間方法が適用されたかを示すインデックス情報を画像復号化装置600へ伝送する方法である。このとき、画像符号化装置100は、補間方法を指示するインデックス情報をブロック単位又は上位のヘッダを介して設定することも可能である。ここで上位ヘッダを介して設定するというのは、スライスセクメントヘッダ(slice segment header)、ピクチャパラメータセット(picture parameter set)、シーケンスパラメータセット(sequence parameter set)などのブロック単位よりもさらに大きい単位のヘッダを用いて設定することを意味する。上位ヘッダに含まれている、補間方法を指示するインデックス情報は、画像符号化装置100によって符号化されて画像復号化装置600へ伝送できる。
【0090】
他の方法としては、既に設定された複数の補間係数セットを符号化装置100と復号化装置600が同一に保存し、いずれのセットが選択されて符号化に使用されたかを知らせる補間係数インデックス情報をブロック単位又は上位ヘッダを介して復号化装置600へ知らせることができる。
【0091】
別の方法としては、前述した補間方法を指示するインデックス情報、又はいずれの補間係数セットが使用されるかを指示する補間係数インデックス情報を画像符号化装置100が画像復号化装置600へ伝送する代わりに、画像符号化装置100と画像復号化装置600が暗黙的(implicit)な方式で同様に補間係数を誘導することができる。
【0092】
具体的には、既に復元された画素を用いて画像符号化装置100と画像復号化装置600が同様の方式で補間係数を誘導することができる。例えば、R個の参照画素(すなわち、既に復元された画素)を用いてR×K(Kは任意の実数)倍で一つの補間フィルタを介して拡大又は縮小する。その後、同じ補間フィルタを用いて逆の過程を介して元来のR個の参照画素を復元する。復元されたR個の参照画素の値と元来の参照画素の値との差がどれ位であるかによって、最適な補間フィルタを決定することができる。
【0093】
図8は画像符号化装置100又は画像復号化装置600が暗黙的(implicit)な方式で補間方法及び/又は補間係数を選択する他の方法を説明するための図である。
図8を参照して説明すると、画素Pが含まれている4×4ブロックが、イントラ予測を介して復号化される現在ブロックに該当する。現在ブロックの周辺に位置した、既に復元された画素からなる複数の参照画素ラインが、補間方法乃至補間係数の決定に用いられる。
図8に示すように、各参照画素ラインは、水平方向の1行の所定数の画素と垂直方向の一列の所定数の画素を含むことができる。又は、参照画素ラインは、水平方向の1行の所定数の画素で構成されてもよく、垂直方向の1列の所定数の画素で構成されてもよい。
【0094】
図8を再度参照すると、参照画素ライン0内の画素を参照画素ライン1内の画素を用いて予測する。このとき、現在ブロックのイントラ予測モードと同じN番の方向性モードが予測に使用される。例えば、参照画素ライン0内の画素Rの予測画素に該当する参照画素Xは、整数位置の画素ではないので、参照画素Xは、
図7a及び
図7bに示すように2つの整数位置参照画素を用いて補間を介して誘導できる。この場合、特定の補間方式及び補間係数が使用される。
【0095】
このような方式で、参照画素ライン0内の画素の予測値を生成し、各予測値と元来の各画素値との差分値を計算した後、各差分値を合算する。画像符号化装置100又は画像復号化装置600で利用可能な補間方式及び補間係数を用いて上記の過程を繰り返し行い、各差分値の合計が最小となるときの補間方式及び/又は補間係数を最終的に選択する。
【0096】
前述した補間は、画像符号化装置100の画面内予測部102及び画像復号化装置600の画面内予測部607のそれぞれに含まれている参照画素補間部によって行われ得る。
【0097】
図9は画像符号化装置100によって最適なイントラ予測モードが選択される過程を説明するためのフローチャートである。このとき、ブロック単位又は上位ヘッダなどによって補間方法は設定されたと仮定する。
【0098】
図9を参照して説明すると、イントラ予測モード番号を示す変数mは、0に初期化し、最適なcost値を保存する変数であるCOST_BEST=MAX_VALUEに初期化する(S901)。ここで、MAX_VALUEは、COST_BEST変数に保存可能な最大値であり、実際にcost計算の際に得られない非常に大きい値である。変数Mには、既に設定されたイントラ予測モードの総個数が設定される(S901)。現在ブロックに最適なイントラ予測モードを示すBEST_INTRA_MODEは、0に初期化する(S901)。
【0099】
その後、イントラ予測モードmに応じて、予測ブロックの各画素位置に該当する補間位置を探し、既に設定された補間方式或いは上位ヘッダで設定された多数の補間方式のうちのいずれかを用いて補間値を生成した後、予測ブロックを生成する(S902)。生成された予測ブロックを用いて、mに該当するcost値であるCOST_mを計算する(S903)。ここで、COST_mは、イントラモードの符号化に必要なビット数、予測ブロックと現在ブロックとの差を用いて計算できる。COST_mがCOST_BESTよりも小さいか同じであれば(S904)、最適なイントラ予測モードを保存する変数であるBEST_INTRA_MODEにmを保存し、COST_BEST変数にはcost_mを保存し、mは1だけ増加させる(S905)。もしCOST_mがCOST_BESTよりも大きい場合には、mのみを1だけ増加させる(S906)。最後に、mがイントラ予測モードの最大個数に達した場合には終了し、そうでない場合にはS902に戻って繰り返す。ここで、補間方式として、画像符号化装置100又は画像復号化装置600で既に設定された方式を使用する場合、
図7と
図8の方式を用いてS1とS2を設定し、既に設定された補間方式を用いて画素Xを生成する。予測ブロック内のすべての画素には同様の方式を用いて予測ブロックを生成する。或いは、多数の補間方式が使用される場合、段階S902の内容が変更できる。
【0100】
また、予測ブロックごとに適応的に多数の補間方式を適用することもできる。この時、
図9に示された段階のうちの段階S902の内容が変更される。
【0101】
図10は画像符号化装置100によって複数の補間方式のうちのいずれかが選択される過程を説明するためのフローチャートである。
【0102】
図10を参照して説明すると、画像符号化装置100は、補間方式インデックスを示す変数iは、0に初期化し、最適なcost値を保存する変数であるCOST_BEST_i=MAX_VALUEに初期化する。ここで、MAX_VALUEはCOST_BEST_i変数に保存可能な最大値であり、実際にcost計算の際に得られない非常に大きい値である。変数iには、既に設定された、使用可能な補間方式の総個数を設定する。現在ブロックに使用される最適な補間方式を保存する変数であるBEST_INTERPOLATIONは、0に初期化する(S1001)。その後、補間方式インデックスiに基づいて、予測ブロックの各画素位置に該当する補間値を生成した後、予測ブロックを生成する(S1002)。生成された予測ブロックを用いて、iに該当するcost値であるCOST_iを計算する(S1003)。ここで、COST_iは、補間方式インデックスの符号化に必要なビット数、予測ブロックと現在ブロックとの差を用いて計算する。COST_iがCOST_BEST_iよりも小さいか同じである場合には(S1004)、最適な補間方式を保存する変数であるBEST_INTERPOLATIONにiを保存し、COST_BEST_i変数にはcost_iを保存し、iは1だけ増加させる(S1005)。もしCOST_iがCOST_BEST_iよりも大きい場合には、iのみを1だけ増加させる(S1006)。最後に、iが使用可能な補間方式の最大個数に達した場合は終了し、それでない場合はS1002に戻って繰り返す。このような方式が使用される場合、
図9に示された段階S903で符号化されるイントラ予測モードのビット数に、さらに補間方式インデックスを符号化したビット数が追加されてCOST_mが計算される。
【0103】
図11は画像符号化装置100によって予測ブロックごとに適応的に多数の補間方式が適用される場合、補間方式インデックス情報を符号化する過程を説明するフローチャートである。まず、予測ブロックごとにイントラ予測モードの予測か否かを符号化する(S1101)。その後、予測されたか否かを判断した後(S1102)、もし予測された場合には、周辺ブロックで生成されたイントラ予測モードの予測候補からいずれの候補が選択されたかを知らせるインデックスを符号化する(S1103)。そうでない場合には、周辺ブロックで生成されたイントラ予測モードの予測候補を除いて残りのモードを再整列し、現在選択されたイントラ予測モードを2値化した後、符号化する(S1104)。その後、使用された補間方式インデックスを符号化し(S1105)、終了する。
【0104】
図12は画像復号化装置600によって補間方式インデックス情報が復号化される過程を説明するフローチャートである。まず、予測ブロックごとにイントラ予測モードの予測か否かを復号化する(S1201)。その後、予測されたか否かを判断した後(S1202)、もし予測された場合には、周辺ブロックで生成されたイントラ予測モードの予測候補からいずれの候補が選択されたかを知らせるインデックスを復号化する(S1203)。そうでない場合には、周辺ブロックで生成されたイントラ予測モードの予測候補を除いて残りのモードを再整列し、現在選択されたイントラ予測モードを復号化する(S2104)。その後、符号化器で使用された補間方式インデックスを復号化し(S1205)、終了する。
【0105】
<複数の参照画素ラインを用いたイントラ予測画素の誘導>
以下、本発明の他の実施形態に係る、複数の参照画素ラインを用いたイントラ予測画素の誘導について説明する。
【0106】
図13は本発明の一実施形態に係る、複数の参照画素ラインを用いたイントラ予測画素の誘導を説明するための図である。
【0107】
従来のイントラ予測には、一つの参照画素ラインが使用された。
図13に示された参照画素ライン0がそれである。参照画素ライン0は、現在ブロックの上側に接する所定数の参照画素と、現在ブロックの左側に接する所定数の参照画素とからなる。本発明は、様々な参照画素ライン及びその参照画素ラインに属する参照画素を用いて予測画素乃至予測ブロックを誘導することにより、イントラ予測の精度を向上させることができる。本実施形態は、画像符号化装置100の画面内予測部102及び画像復号化装置600の画面内予測部607それぞれによって同様に行われ得る。
【0108】
以下、参照画素ラインとして合計3つのラインが使用されると仮定して説明する。しかし、任意のN個の参照画素ラインを用いることができる。ここで、参照画素ラインの数Nは、ブロック単位或いは上位ヘッダに含まれて復号化装置600へ知らせることも可能である。或いは、参照画素ラインの個数Nを符号化せず、符号化装置100と復号化装置600が所定のN個の参照画素ラインを用いることも可能である。
【0109】
図13を参照して説明すると、画素Pが含まれているサイズ4×4のブロックが、イントラ予測を用いて符号化又は復号化される現在ブロックに該当する。3つの参照画素ライン0、1及び2が現在ブロックの周辺に位置する。
【0110】
現在ブロックのイントラ予測モードがm番の方向性モードである場合、3つの参照画素ライン0、1、及び2を用いて現在画素Pの予測画素として使用できる予測画素は、X、Y、Zになることができる。この時、3つの参照画素ラインそれぞれを用いて予測ブロックを生成し、最適な参照画素ラインを決定することができる。このように決定された最適な参照画素ラインを指示する参照画素ラインインデックス情報を、符号化装置100は符号化することができる。参照画素ラインインデックスは、例えば、
図13に示すように、現在ブロックに近い参照画素ラインに低いインデックス番号を割り当てることができる。
【0111】
図14は本発明の一実施形態に係る、イントラ予測画素値を誘導する過程を説明するためのフローチャートである。
図14を参照すると、現在ブロックのイントラ予測のために用いられる少なくとも一つの参照画素ラインが複数の参照画素ラインの中から選択される(S1301)。前記複数の参照画素ラインは、イントラ予測を用いて復号化される現在ブロックと同じ画像内に存在する。前記選択された少なくとも一つの参照画素ラインは、前述した参照画素ラインインデックスによって指示できる。他の代案として、後述される暗黙的方法によって画像符号化装置100と画像復号化装置600で共通の方法を用いて、現在ブロックのイントラ予測に用いられる少なくとも一つの参照画素ラインは選択されてもよい。
【0112】
また、前記選択される少なくとも一つの参照画素ラインは、予測ブロックごとに選択できる。ここについては、
図15を参照しながら後述する。又は、予測ブロック内の各画素ごとに適応的に選択されてもよい。ここについては、
図18及び
図19を参照しながら後述する。
【0113】
画像符号化装置100又は画像復号化装置600は、前記選択された少なくとも一つの参照画素ラインに含まれている少なくとも一つの画素値に基づいて、現在ブロック内の一つの画素の予測値を得ることができる(S1303)。画像符号化装置100又は画像復号化装置600は、段階S1301又はS1303の全部又は一部段階を繰り返し行うことにより、現在ブロックの予測ブロックを誘導することができる。
【0114】
図15は予測ブロックごとにイントラ予測に用いられる参照画素ラインを適応的に決定する過程を説明するためのフローチャートである。このとき、
図9に示された段階S902が、
図15に示された段階で代替できる。
【0115】
図15を参照すると、参照画素ラインインデックスを示す変数nは0に初期化し、最適なcost値を保存する変数であるCOST_BEST_n=MAX_VALUEに初期化する。ここで、MAX_VALUEはCOST_BEST_n変数に保存可能な最大値であり、実際にcost計算の際に得られない非常に大きい値である。変数Nには、既に設定された画素ラインの総個数を設定する。現在ブロックに最適な参照画素ラインインデックスを示すBEST_nは、0に初期化する(S1401)。その後、参照画素ラインインデックスnに応じて、予測ブロックの各画素位置に該当する補間位置を探し、予測ブロックを生成する(S1402)。生成された予測ブロックを用いて、nに該当するcost値であるCOST_nを計算する(S1403)。ここで、COST_nは、参照画素ラインnの符号化に必要なビット数、予測ブロックと現在ブロックとの差を用いて計算する。COST_nがCOST_BEST_nよりも小さいか同じであれば(S1404)、最適な参照画素ラインを保存する変数であるBEST_nにnを保存し、COST_BEST_n変数にはcost_nを保存し、nは1だけ増加させる(S1405)。もしCOST_nがCOST_BEST_nよりも大きい場合には、nのみを1だけ増加させる(S1406)。最後に、nが参照画素ラインの最大個数に達した場合には終了し、そうでない場合にはS1402に戻って繰り返す。
【0116】
図16は予測ブロックごとに適応的に参照画素ラインが選択される場合、選択された参照画素ラインを指示する参照画素ラインインデックス情報が符号化装置100によって符号化される過程を示すフローチャートである。まず、予測ブロックごとにイントラ予測モードの予測か否かを符号化する(S1501)。その後、予測されたか否かを判断した後(S1502)、もし予測された場合には、周辺ブロックで生成されたイントラ予測モードの予測候補からいずれの候補が選択されたかを知らせるインデックスを符号化する(S1503)。そうでない場合には、周辺ブロックで生成されたイントラ予測モードの予測候補を除いて残りのモードを再整列し、現在選択されたイントラ予測モードを2値化した後、符号化する(S1504)。その後、使用された参照画素ラインインデックスを符号化し(S1505)、終了する。
【0117】
図17は予測ブロックごとに適応的に参照画素ラインが選択される場合、選択された参照画素ラインを指示する参照画素ラインインデックス情報が復号化装置600によって復号化される過程を示すフローチャートである。まず、予測ブロックごとにイントラ予測モードの予測か否かを復号化する(S1601)。その後、予測されたか否かを判断した後(S1602)、もし予測された場合には、周辺ブロックで生成されたイントラ予測モードの予測候補からいずれの候補が選択されたかを知らせるインデックスを復号化する(S1603)。そうでない場合には、周辺ブロックで生成されたイントラ予測モードの予測候補を除いて残りのモードを再整列し、現在選択されたイントラ予測モードを復号化する(S1604)。その後、使用された参照画素ラインインデックスを復号化し(S1605)、終了する。
【0118】
次に、
図18及び
図19を参照して、参照画素ラインインデックスの伝送なしに予測ブロックの各画素位置ごとに適応的に参照画素ラインを決定する方法について説明する。
【0119】
予測ブロック内の各画素ごとに、各参照画素列内で補間によって得られる予測画素の位置の精度は異なり得る。よって、各参照画素ライン内で補間によって得られた予測画素のうち、整数画素位置に最も近い予測画素を、現在画素Pの予測画素として選択することができる。このとき、予め定められたN個の参照画素ラインを対象に、上記の過程を適用することができる。
【0120】
もし整数画素位置の予測画素が複数個存在する場合、現在ブロックに近い予測画素を最終的な予測画素として選択することもできる。
【0121】
図19は参照画素ラインインデックスの伝送なしに適応的に参照画素ラインを選択する方法を説明するための参考図である。
図19に示すように、予測画素が整数位置に多く存在するラインに優先順位を置いて予測ブロックごとに適応的に予測画素ラインを選択することができる。各参照画素ラインを用いて予測ブロックを生成するときに使用される、補間された画素の精度と頻度数が
図19に示すとおりであると仮定すると、各画素位置の精度に応じて重みを置いてラインを選択するようにすることができる。
【0122】
図19を再び参照すると、ライン1を用いて予測ブロックを生成する場合、整数位置の予測画素が5つ、1/2位置の予測画素が3つ、1/4位置の予測画素が4つ、1/8位置の予測画素が2つ、1/16位置の予測画素が1つ、1/32位置の予測画素が1つ選択された。したがって、予測ブロック内の全画素の個数は16個になる。参照画素ライン2及び参照画素ライン3の場合も同様に説明できる。
【0123】
整数画素位置にのみ優先順位を置く場合、整数位置が最も多いライン1を参照画素ラインとして選択するようにすることもできる。或いは、各位置ごとに重みを置いて重みと頻度数との和を計算した後、計算された値が最も大きく得られたラインを参照画素ラインとして選択することにすることも可能である。或いは、各ラインごとに重みを置いて重みと頻度数との和を計算した後、計算された値が最も大きく得られたラインを参照画素ラインとして選択するようにすることも可能である。或いは、各ラインと位置の両方に重みを置いて重みと頻度数との和を計算した後、計算された値が最も大きく得られたラインを参照画素ラインとして選択するようにすることも可能である。
【0124】
他の実施形態として、ラインごとに重みを置き、重み付け和した画素を用いて予測ブロックを生成することも可能である。例えば、
図13のX、Y、Z位置の画素値が存在する場合には、ブロックに近いほど重みをさらに置き、重み付け和した値をP位置の予測画素として選択することも可能である。或いは、整数画素位置に近いほど重みをさらに置き、重み付け和した値をP位置の予測画素として選択することも可能である。或いは、重み付け和、すなわち加重平均を用いて予測画素を誘導する方法の他にも、算術平均、中央値などを用いて予測画素の値を誘導することもできる。
【0125】
或いは、参照画素ラインインデックスを用いて符号化するが、N個のラインのうちのいずれか一つを除外するものを使用することもできる。たとえば、参照画素ラインインデックスが1に設定されている場合、ライン1を除くN-1個のラインを用いる。このとき、m番のモードを用いて予測値を補間するときに、整数画素位置に近いほど優先順位を高く付けてもよく、補間される位置の精度に応じて優先順位を異なるように付けてもよい。このような所定の任意の優先順位に応じて、ラインの区分なしに画素単位でライン1を除く他のラインで予測値を生成することもできる。
【0126】
或いは、ブロック単位又は上位ヘッダにおいて、参照画素ラインインデックスを直接符号化する方式と符号化しない方式のうち、どちらの方式が使用されたかを符号化装置100が符号化して復号化装置600へ伝送することも可能である。
【0127】
<予測ブロックと参照画素ライン間のスムージング(smoothing)>
以下、本発明の他の実施形態として、予測ブロックと参照画素ライン間のスムージング(smoothing)を説明する。
【0128】
参照画素ライン内の所定画素を用いて予測ブロックが誘導された場合、前記予測ブロックの誘導に使用されていない参照画素ラインと予測ブロックとの間、又は予測ブロックに隣接する領域と予測ブロックとの間には不連続性が存在することができる。このような不連続性を減少させるために、スムージング(smoothing)が使用できる。スムージングは一種のローパスフィルタに該当することができる。
【0129】
本発明の実施形態に係るスムージングは、画像符号化装置100の画面内予測部102及び画像復号化装置600の画面内予測部607それぞれによって行われ得る。
【0130】
図20は予測ブロックと参照画素ライン間のスムージング(smoothing)を説明するための図である。
【0131】
以下、使用されたイントラ予測モードは、45度のup-right方向にイントラ予測が行われるモードを例に挙げて説明する。また、参照画素ライン1がイントラ予測のために選択されたと仮定する。また、スムージングが適用される画素として画素A乃至Eを用いたスムージングを説明するが、その他の画素にも同様に適用可能である。
【0132】
図20の例示において、45度のup-right方向にイントラ予測が行われたので、スムージングは、イントラ予測方向の反対方向である45度のdown-left方向に行われ得る。この際、現在ブロックの予測ブロックのサイズ又は形状に応じて、スムージングが適用される予測ブロックの領域が決定できる。
図20では、予測ブロックの半分の領域に属する画素がスムージングされる。すなわち、暗く表示された左側半分の画素にのみスムージングを適用することができる。或いは、予測ブロックのサイズ及び/又はイントラ予測モードに応じて、所定の領域又は比率を用いることもできる。例えば、予測ブロックの1/4領域のみスムージングを適用することもでき、その他の比率も可能である。
【0133】
図20は参照画素ライン1がイントラ予測のための参照画素ラインとして決定されたので、参照画素ライン1に存在する画素Dを用いて、予測画素Aを下記数式1を用いてスムージングすることができる。
【0134】
[数式1]
式中、A’、A及びDは、それぞれスムージングされた後の予測画素Aの値、スムージングされる前の予測画素Aの値及び参照画素Dの値であり、w1及びw2は、それぞれ予測画素Aに適用される重み、及び参照画素Dに適用される重みである。
【0135】
また、参照画素ライン1に存在する画素Dを用いて、予測画素Bを前記数式1と類似の数式を用いてスムージングすることができる。
【0136】
この時、スムージングの強度を距離に応じて調整することもできる。予測画素Bよりは予測画素Aが画素Dからさらに遠く離れているので、スムージングを行うときは、予測画素Bと画素Dをスムージングするときよりも、予測画素AとDをスムージングするときにさらに強くスムージングする。ここで、強いスムージングは、画素D側にさらに多くの重みを置いて予測画素をスムージングすることにより行われ得る。
【0137】
或いは、イントラ予測のために選択された参照画素ラインとは別に、スムージングに用いられる参照画素ラインは、予測ブロックと近いラインに設定することも可能である。
図20を参照すると、参照画素ライン1がイントラ予測のために選択されたが、予測画素A、Bのスムージングに用いられる画素は、Dではなく、Cに設定することも可能である。このような場合も同様に、距離に応じてスムージングの強度を選択することができる。例えば、参照画素Cを用いて予測画素Bをスムージングする場合には、それぞれに同じ重みを適用し、参照画素Cを用いて予測画素Aをスムージングする場合には、画素Cにさらに多くの重みを置いてスムージングを行うこともできる。
【0138】
スムージングを行うとき、両方向ともを使用することも可能である。例えば、参照画素ライン0を用いてスムージングすると仮定し、予測画素Aをスムージングするとき、参照画素FとCにそれぞれ重みを置いて予測画素Aとスムージングすることもできる。予測画素Bをスムージングするときも、画素FとCにそれぞれ重みを置いて予測画素Bとスムージングすることも可能である。このとき、ライン1がイントラ予測のための参照画素ラインとして選択されたので、up-right方向では画素Gを用い、down-left方向では画素Cを用いることも可能である。
【0139】
本発明の一実施形態によれば、参照画素と予測画素との距離に応じて重みを異にすることも可能である。たとえば、参照画素FとCを用いて予測画素Aをスムージングする場合、画素CとAとの距離が画素FとAとの距離よりも遠いので、画素Cにさらに大きい重みを置いてスムージングを行うこともできる。或いは、既に設定された方式によって、任意のラインを用いてスムージングを行うことも可能である。このようなスムージング方式は、適用するか否かをブロック単位で符号化することも可能であり、上位ヘッダを介して符号化することも可能である。或いは、スムージングを適用するか否かを符号化することなく、既に設定された条件によって符号化器と復号化器が同様に行うことも可能である。例えば、いずれの角度のイントラ予測モードが行われたかに応じて、スムージングか否かを決定することもできる。本実施形態では、説明の便宜のために、距離が遠いほどさらに強くスムージングすると説明したが、画像の特性などに応じて逆の場合も可能である。
【0140】
次に、
図21と
図22a乃至22dを参照して、本発明の一実施形態によって、イントラ予測のための参照画素ラインが選択されるブロック単位について説明する。
【0141】
以下、説明の便宜のために、現在ブロックが16×16サイズであり、現在ブロックが4つの8×8変換ブロックに分割され、変換は8×8変換ブロック単位で合計4回行われる場合を例に挙げて説明する。現在ブロックは、変換のために、現在ブロックのサイズよりも小さい多数の変換ブロックに分割できる。したがって、現在ブロック単位でイントラ予測モードが決定されると、決定されたイントラ予測モードを変換ブロック単位で適用して、実際予測は変換ブロック単位で行われ得る。このような方式の利点は、参照画素が現在ブロックから遠くなるほど、画素間の相関度が低下するおそれもあることを補完することができるという点である。
図21を参照すると、ブロック単位でイントラ予測を適用すると、変換ブロックAの画素は、変換ブロックDの画素よりは参照画素との距離が近い。よって、変換ブロックD内の画素は、参照画素との距離が遠くなって予測の効率が低くなるおそれがある。
【0142】
前述した欠点を補完するために、ブロック単位ではイントラ予測モードのみ決定し、イントラ予測は変換ブロック単位で行われ得る。
【0143】
図21は変換ブロック単位でイントラ予測が行われる場合、現在ブロックのイントラ予測のために選択された少なくとも一つの参照画素ラインを、現在ブロック内のすべての変換ブロックに共通に用いる場合を示す。
【0144】
図22a乃至
図22dは各変換ブロックごとに少なくとも一つの参照画素ラインを選択してイントラ予測に用いる場合を示す。
【0145】
図22aを参照すると、サイズ8×8の4つの変換ブロックが使用され、変換ブロック単位で予測が行われる場合、変換ブロックAのイントラ予測のために、
図21に示されているのと同一の参照画素ラインが用いられる。
【0146】
図22bを参照すると、変換ブロックBは、復元された変換ブロックAの画素を用いて、図示されたような参照画素ラインをイントラ予測のために使用することができる。同様に、
図22cでは、復元された変換ブロックAとBの画素を用いて、図示されたような参照画素ラインをイントラ予測のために使用することができる。
図22dでも、復元された変換ブロックA、B及びCの画素を用いて、図示されたような参照画素ラインをイントラ予測のために使用することができる。
【0147】
以上説明したように、多数の参照画素ラインを使用する場合、
図21に示すように、ブロック単位で決定された画素ラインを、
図22a乃至dの変換ブロック単位で予測を行う場合にそのまま適用することもできる。或いは、変換ブロック単位で最適な参照画素ラインを新たに求めることも可能である。或いは、ブロック単位で求めた最適な参照画素ラインを変換ブロック全体に使用するか、それとも変換ブロック単位ごとに参照画素ラインを誘導して使用するかをブロック単位或いは上位ヘッダを介して符号化して復号化装置600へ知らせることも可能である。
【0148】
次に、本発明に係るイントラ予測モードの誘導、符号化及び復号化に関連する様々な実施形態と応用例について、図面を参照して説明する。本発明に係るイントラ予測モードの誘導を適用すると、同一の方法及び/又は同一の基準で画像符号化装置と画像復号化装置がイントラ予測モードを誘導することができるので、イントラ予測モード自体を知らせるための情報を画像復号化装置へ伝達する必要がない。
【0149】
<画像復号化装置によるイントラ予測モードの誘導>
本実施形態では、画像復号化装置によるイントラ予測モードの誘導が説明される。本発明に係る画像復号化装置によるイントラ予測モードの誘導は、略してDIMD(Decoder-side Intra Mode Derivation)と呼ぶ。しかし、DIMDは、画像符号化装置によっても同様に行われ得る。よって、DIMDという名称にも拘らず、DIMDは画像符号化装置100及び画像復号化装置600それぞれによって行われ得る。特に、DIMDは、画像符号化装置100の画面内予測部102及び画像復号化装置600の画面内予測部607によってそれぞれ同様に行われ得る。
【0150】
以下、図面を参照して、本発明に係るDIMDについての様々な実施形態を説明する。
【0151】
(第1実施形態)
図23は本発明の第1実施形態に係るDIMDを説明するための図である。本発明の一実施形態によれば、現在ブロックの周辺に位置する、既に復元された画素を用いて、現在ブロックのイントラ予測モードを誘導することができる。
【0152】
図23を参照すると、符号化又は復号化される現在ブロック2001のサイズはM×Nであり、テンプレートA2004のサイズはP×Nであり、テンプレートB2003のサイズはM×Qであると仮定する。
図23に示すように、参照画素領域2002は、テンプレートA2004の左側に位置した領域と、テンプレートB2003の上側に位置した領域から構成される。
【0153】
参照画素領域2002のサイズを示す値のうち、RとSの値がそれぞれ1であると仮定すると、参照画素領域2002は、2(Q+N)+2(P+M)+1個の参照画素を含む。
【0154】
本発明の一実施形態によれば、利用可能なイントラ予測モードそれぞれに応じて、参照画素領域2002内の参照画素を用いてテンプレートA2004とテンプレートB2003の予測値を算出する。このとき、テンプレートA2004とテンプレートB2003は一つの領域として取り扱われる。例えば、
図2に示すような35種類のイントラ予測モードそれぞれに応じて、参照画素領域2002内の参照画素を用いてテンプレートA2004とテンプレートB2003の予測値を算出する。各イントラ予測モードに応じて、予測されたテンプレートA2004及びテンプレートB2003と、テンプレートA2004及びテンプレートB2003の復元値との差の和に該当するSAD(Sum of Absolute Difference)を求める。その後、最も少ないSAD(Sum of Absolute Difference)を持つイントラ予測モードを現在ブロック2001のイントラ予測モードとして選択することができる。
【0155】
画像符号化装置100又は復号化装置600によって既に復元された画素を用いて、現在ブロック2001のイントラ予測モードを誘導するため、画像符号化装置100及び画像復号化装置600の両者とも同一のイントラ予測モードを誘導することができる。
【0156】
一方、輝度画素に適用されたイントラ予測モードが色差画素においても同様に適用できる。イントラ予測モードを符号化装置100が復号化装置600へ伝送しないため、オーバーヘッドの負担がない。よって、角度モード(angular modes)同士の間の1/2位置、1/3位置、或いは1/4位置にイントラ予測モードを追加することも可能である。この時、使用されたイントラ予測モードの個数に関する情報が様々な方法を用いて復号化装置600へ伝送できる。一例として、2の指数乗を用いてブロックヘッダ又はブロックの上位ヘッダ、例えばスライスヘッダ、ピクチャヘッダ、シーケンスヘッダなどを介して符号化されて復号化装置600へ伝送できる。又は、互いに異なる個数のイントラ予測モードで構成された複数のイントラ予測モードリストのうちのいずれかを指示するインデックスを伝送する方法を用いて、利用可能なイントラ予測モードの個数に関する情報が復号化装置600へ伝達されてもよい。
【0157】
また、前述した実施形態では、現在ブロック2001のイントラ予測モードを誘導するために、テンプレートA2004とテンプレートB2003の二つのテンプレートが用いられたが、3つ以上のテンプレートが用いられてもよい。
【0158】
また、前述した実施形態では、イントラ予測モードのすべてをテンプレートA2004及び/又はテンプレートB2003に適用して最終的なイントラ予測モードを誘導したが、全体モードではなく、既に設定された一部のイントラ予測モードのうち、現在ブロック2001の最終的イントラ予測モードを誘導することもできる。
【0159】
(第2実施形態)
前述した第1実施形態では、2つのテンプレートA2004及びテンプレートB2003を一つの領域とみなして説明した。しかし、本実施形態では、2つのテンプレートA2004及びテンプレートB2003が別個の領域として取り扱われる。具体的には、各テンプレートを用いて現在ブロックの予測モードをそれぞれ誘導した後、誘導された2つの予測モードの中からいずれかのモードを最終的に選択することもできる。
【0160】
例えば、
図2に示された18番の角度モード(左上の45度方向のイントラ予測モード)を基準に、18番の角度モードの左側に存在する角度モードは、テンプレートA2004にのみ適用した後、それぞれSADを求める。モード別に算出されたSAD値のうち、最小値を持つモードをテンプレートA2004のイントラ予測モードとして決定する。
【0161】
次に、18番の角度モードの右側に存在する角度モードは、テンプレートB2003にのみ適用した後、それぞれSADを求める。モード別に算出されたSAD値のうち、最小値を持つモードをテンプレートB2003のイントラ予測モードとして決定する。その後、決定されたテンプレートA2004のイントラ予測モードとテンプレートB2003のイントラ予測モードのうちのいずれかを最終的に現在ブロック2001の予測モードとして選択する。
【0162】
各テンプレートにDCモードとプラナーモードをそれぞれ適用して、DCモードに対応するSAD値とプラナーモードに対応するSAD値を求めることができる。その後、前述した角度モードのうち、該当テンプレートのイントラ予測モードとして選択されたモードに対応するSAD値と、DCモードに対応するSAD値と、プラナーモードに対応するSAD値とを相互比較して、各テンプレートの最終的なイントラ予測モードを選択することができる。
【0163】
(第3実施形態)
以下、本発明に係るDIMDの第3実施形態を説明する。
【0164】
本発明に係る第3実施形態は、現在ブロックのテンプレートの一部が利用可能でない場合、利用可能な残りのテンプレートを用いてDIMDを実行する方法に関するものである。
【0165】
図24は本発明の第3実施形態に係るDIMDを説明するための図である。
【0166】
図24では、現在ブロック2101の上側のテンプレートは利用可能でなく、左側のテンプレートA2104のみ利用可能である。
【0167】
もし符号化装置100と復号化装置600が、
図2に例示されたように35個のイントラ予測モードを使用することにしたが、2つのテンプレートのいずれかが利用不可能である場合には、
図24に示されているように範囲を定めて一つのテンプレート2104にのみ35個のイントラ予測モードを適用することができる。
図24では、左下の45度方向をイントラ予測モード2番に設定し、水平な方向をイントラ予測モード34番に設定し、予測モード2番と予測モード34番との間に角度モード33個が存在するように設定した。
【0168】
前述したように、設定された33個の角度モード、DCモード及びプラナーモードを、利用可能なテンプレートA2104に適用して、DIMDを行った後、現在ブロック2101のイントラ予測モードを誘導することができる。
【0169】
現在ブロック2101が入力画像の上側境界に該当して、テンプレートA2104の左側の参照画素2105は利用可能であるが、テンプレートA2104の上側の参照画素が存在しない場合、適切な周辺画素を用いたパディングを介して上側の参照画素2102を生成することができる。パディングに用いられる周辺画素は、現在ブロック2101及び/又はテンプレートA2104の上側の画素、又はテンプレートA2104の左側の参照画素2105になることができる。
【0170】
(第4実施形態)
図25は本発明に係るDIMDを説明するためのフローチャートである。前述した第1実施形態乃至第3実施形態に関連する。
図25に示された方法は、画像符号化装置100の画面内予測部102及び画像復号化装置600の画面内予測部607によってそれぞれ同一に行われ得る。
【0171】
図25を参照すると、まず、既に復元された少なくとも一つの画素領域の参照画素領域に基づいて、前記復元された画素領域のイントラ予測モードが誘導される(S2201)。ここで、少なくとも一つの画素領域は、前述した実施形態でテンプレートA2004、2104及び/又はテンプレートB2003になることができる。しかし、これらのテンプレートに限定されないのはもちろんである。参照画素領域は、前述した実施形態で説明された参照画素領域2002、2102、2105に該当することができる。しかし、これらの参照画素領域に限定されないのはもちろんである。
【0172】
次に、S2201段階で誘導された、前記復元された画素領域のイントラ予測モードに基づいて、前記現在ブロックのイントラ予測モードが誘導される(S2203)。前記誘導されたイントラ予測モードを用いて現在ブロックのイントラ予測ブロックを得た後(S2205)、得られたイントラ予測ブロックと現在ブロックの残差ブロックとを加算することにより、現在ブロックが復元される(S2207)。
【0173】
(第5実施形態)
図26は本発明に係るDIMDを用いて画像を符号化する場合、イントラ予測モードを符号化する方法を説明するためのフローチャートである。
【0174】
まず、本発明に係るDIMDの実行有無を知らせる情報を符号化する(S2501)。この情報は、イントラ予測モードの誘導方法を画像復号化装置600に知らせる情報である。すなわち、本発明に係るDIMDを用いて、イントラ予測モードが誘導されるか、それとも他の方法を用いてイントラ予測モードが誘導されるかをシグナリングする。
【0175】
本発明に係るDIMDが使用されたか否かを判断した後(S2502)、もし使用された場合には本プロセスは終了し、現在ブロックのイントラ予測モードはDIMDによって誘導される。
【0176】
しかし、本発明に係るDIMDが使用されていない場合には、MPM(Most Probable Mode)の適用有無が符号化される(S2503)。本発明に係るDIMDを用いたイントラ予測モード誘導以外の他の方法として、MPMが使用できる。
【0177】
現在ブロックのイントラ予測モードがMPMリスト(most probable mode list)に属するか否かを示すMPMフラグ及びMPMインデックス情報がさらに復号化装置600へ伝達される。前記MPMリスト内に含まれるイントラ予測モードの個数は、全体イントラ予測モードの個数に比べて非常に少ない。したがって、現在ブロックのイントラ予測モードがMPMリスト(most probable mode list)に属する場合、非常に少ないビットを用いて復号化装置600へシグナリングすることが可能である。MPMインデックス情報は、現在ブロックのイントラ予測モードがMPMリスト(most probable mode list)に属するモードのうちいずれのモードに該当するかを示す。
【0178】
前記MPMフラグが1であれば、現在ブロックのイントラ予測モードがMPMリストに属し、前記フラグが0であれば、現在ブロックのイントラ予測モードが残余モードグループ(residual mode group)に属する。前記残余モードグループは、前記MPMリストに属するイントラ予測モード以外のすべてのイントラ予測モードを含むことができる。S2503段階で、MPM(Most Probable Mode)適用有無の符号化は、前記MPMフラグを符号化することにより行われる。
【0179】
再び
図26を参照すると、MPMが使用されたか否かを確認した後(S2504)、もしMPMが使用されていない場合には、MPM候補を除いた残りのモードを再整列した後、現在ブロックのイントラ予測モードを符号化(S2505)する。もしMPMが使用された場合には、いずれのイントラ予測モード候補が適用されたかを知らせるMPMインデックスを符号化(S2506)した後、終了する。
【0180】
(第6実施形態)
図27は本発明に係るDIMDを用いて画像を復号化する場合、イントラ予測モードを復号化する方法を説明するためのフローチャートである。
【0181】
まず、本発明に係るDIMDの実行有無を知らせる情報を復号化する(S2601)。この情報は、本発明に係るDIMDを用いてイントラ予測モードが誘導されるか、それとも他の方法を用いてイントラ予測モードが誘導されるかを指示する。
【0182】
本発明に係るDIMDが使用されたか否かを判断した後(S2602)、もしDIMDが使用された場合には、本プロセスは終了し、現在ブロックのイントラ予測モードはDIMDによって誘導される。
【0183】
しかし、本発明に係るDIMDが使用されていない場合には、MPM(Most Probable Mode)適用有無が復号化される(S2603)。S2603段階では、MPMフラグが復号化できる。
【0184】
前記MPMフラグが1であれば、現在ブロックのイントラ予測モードがMPMリストに属し、前記フラグが0であれば、現在ブロックのイントラ予測モードが残余モードグループ(residual mode group)に属する。前記残余モードグループは、前記MPMリストに属するイントラ予測モード以外のすべてのイントラ予測モードを含むことができる。
【0185】
次に、MPMが使用されたか否かを確認した後(S2604)、使用されていない場合には、MPM候補を除いた残りのモードを再整列した後、現在ブロックのイントラ予測モードを復号化(S2605)する。もし、MPMが使用された場合には、いずれのイントラ予測モード候補が適用されたかを知らせるMPMインデックスを復号化(S2606)した後、終了する。
【0186】
(第7実施形態)
図28は本発明に係る第7実施形態を説明するための図である。本発明の第7実施形態は、テンプレートに多数の参照画素ラインを用いてイントラ予測モードを誘導する方法に関するものである。
【0187】
図28に示すように、テンプレートの参照画素ラインとして参照画素ライン1と参照画素ライン2の2つのラインが用いられると仮定する。テンプレートの長さであるPとQはそれぞれ1であると仮定して説明する。
【0188】
左上の45度方向モードの右側に存在する角度モードを上側の角モードと定義し、テンプレートBとその上側の参照画素ラインを使用する。また、左上の45度方向モードを基準に左側に存在する角度モードを左側角度モードと定義し、テンプレートAとその左側の参照画素ラインを使用する。その後、イントライントラ予測モードに応じて、
図28に示すように参照画素ライン別に予測を行ってみる。たとえば、テンプレートの参照画素ライン2を用いてテンプレートの参照画素ライン1を予測し、最適なイントラ予測モード候補1を生成する。その後、テンプレートの参照画素ライン1を用いてテンプレートを予測し、最適なイントラ予測モード候補2を生成する。もしイントラ予測モード候補1と2が同じである場合には、その予測モードを現在ブロックのイントラ予測モードとして選択する。もしイントラ予測モード候補1と2が異なる場合には、前述した本発明の様々な実施形態に係るDIMD方法のいずれかを行うか否かを決定する。
【0189】
図29は本発明の第7実施形態を適用した場合、イントラ予測モードを符号化する過程を示すフローチャートである。
【0190】
まず、テンプレートの参照画素ラインを用いてイントラ予測モード候補を誘導する(S2801)。その後、イントラ予測モード候補が同じであるか否かを判断した後(S2802)、もしイントラ予測モード候補が同一である場合には、その同じモードが現在ブロックのイントラ予測モードとして選択されるため、フローチャートが終了する。もしイントラ予測モード候補が同じでない場合には、本発明に係るDIMDを行うか否かが符号化される(S2803)。
【0191】
以後の段階であるS2804乃至S2808は、
図26に示されたS2502乃至S2506と実質的に同様であるので、詳細な説明は省略する。
【0192】
図30は本発明の第7実施形態を適用した場合、イントラ予測モードを復号化する過程を示すフローチャートである。
図30に示された各過程は、画像復号化装置600によって行われるという点以外には、
図29に示された各段階と実質的に同様であるので、詳細な説明は省略する。
【0193】
<DIMDの変形例:テンプレートインデックスの伝送>
前述した様々な実施形態に係るDIMDを使用する場合、イントラ予測モード自体をシグナリングしない。しかし、本実施形態では、複数のテンプレートを用いてそれぞれ候補イントラ予測モードを誘導した後、この中のいずれのモードが使用されるかを示すインデックス情報が符号化装置100によって復号化装置600へ伝送される。
図31a及び
図31bは、テンプレートインデックスを伝送するDIMDの変形例を説明するための図であり、本発明のDIMDを用いて2つのテンプレートによってそれぞれイントラ予測モード候補を生成した後、インデックスを用いて指定する方式についての例示である。
図31a又は
図31bに示されたテンプレートの参照画素領域のサイズを示すRとSは、説明の便宜のために1であると仮定して説明する。
【0194】
図31aでは、テンプレートA3102にテンプレートの参照画素領域3103内の画素を用いてイントラ予測モード候補1を誘導する。
図31bでは、テンプレートB3104にテンプレートの参照画素領域3105内の画素を用いてイントラ予測モード候補2を誘導する。次に、いずれのテンプレートから誘導したイントラ予測モード候補が現在ブロック3101のイントラ予測モードであるかを示すインデックスを符号化して復号化装置600へ伝送される。
【0195】
一方、テンプレートを含んでいるブロックがいずれのイントラ予測モードで符号化されたかが、本実施形態に用いられ得る。例えば、
図31a及び
図31bにおいて、テンプレートA3102を含んでいるブロックのイントラ予測モードをイントラ予測モードAとするとき、イントラ予測モードAとテンプレートの参照画素を用いてテンプレートA3102に適用して決定されたイントラ予測モードが同じであれば、高いか低い優先順位を付けることができる。その優先順位に基づいて、インデックス設定のための候補配置の際にビットを割り当てることも可能である。同様に、テンプレートA3102の他に多数のテンプレートが存在する場合、上記の条件を用いてビットを割り当てるとき、優先順位を設定することも可能である。
【0196】
図32はテンプレートインデックスが使用されるDIMDによるイントラ予測モードの符号化方法を説明するフローチャートである。
【0197】
まず、テンプレートインデックスが使用されるDIMDの実行有無を知らせる情報が符号化される(S3301)。テンプレートインデックスが使用されるDIMDが行われたか否かを判断した後(S3302)、もし行われた場合には、テンプレートインデックスを符号化し、終了する(S3307)。もしテンプレートインデックスが使用されるDIMDが行われていない場合には、MPM(Most Probable Mode)適用有無を符号化する(S3303)。MPMが適用されたか否かを確認した後(S3304)、適用されていない場合には、MPM候補を除く残りのモードを再整列した後、符号化を行い(S3305)、MPMが適用された場合には、いずれの候補が適用されたかを知らせるMPMインデックスを符号化し(S3306)、終了する。
【0198】
図33はテンプレートインデックスが使用されるDIMDによるイントラ予測モードの 復号化方法を説明するフローチャートである。
図33に示された各過程は、画像復号化装置600によって行われるという点以外には、
図32に示された各段階と実質的に同様であるので、詳細な説明は省略する。
【0199】
一方、
図31a及び
図31bは周辺の2つのテンプレートを例示として挙げたが、3つ以上のテンプレートを用いることも可能である。
【0200】
<DIMDの応用例:MPMリストの生成>
上記では、本発明に係るDIMDを使用する場合、イントラ予測モード自体を復号化装置600へシグナリングしないか、或いは、複数のテンプレートのうちどのテンプレートを用いて誘導されたイントラ予測モード候補が現在ブロックのイントラ予測モードとして選択されたかを示すテンプレートインデックス情報が、符号化装置100によって復号化装置600へ伝送された。
【0201】
以下では、DIMDに応じて誘導されたイントラ予測モードを用いてMPM(Most Probable Mode)候補を再整列するか或いはMPMリストを生成する実施形態を説明する。
【0202】
イントラ予測モードの予測のためにMPM候補を生成した後、テンプレートを用いて誘導したイントラ予測モードと同様の順でMPMの候補を上位に配置することも可能である。
【0203】
(第1実施形態)
図34はテンプレートを用いて誘導されたイントラ予測モードをMPM候補として設定する一例を説明するための図である。
【0204】
現在ブロック3501の周辺に復元されたブロックA3503とブロックB3505が存在すると仮定し、ブロックA3503はイントラ予測、ブロックB3505はインター予測が使用されたと仮定する。ブロックB3505は、インター予測が使用されてイントラ予測モードが存在しないため、本実施形態では、テンプレートを用いてブロックB3505のイントラ予測モードを生成する。テンプレートを用いてブロックB3505のイントラ予測モードを誘導することは、
図31b及び
図31bに関連する以前説明を参照する。一方、
図31bのテンプレートB3104を用いてテンプレートB3104のイントラ予測モードを誘導するとき、イントラ予測モードを符号化する方式、イントラ予測モードの個数及び予測角度は、画像符号化装置100又は画像復号化装置600によって既に設定されものと同じでなければならない。
【0205】
(第2実施形態)
本実施形態では、テンプレートを含んでいるブロックがいずれのイントラ予測モードで符号化されたかを用いてMPMの候補を設定する。
【0206】
図35は本発明の一実施形態に係るMPM候補の設定を説明するための図である。
図35を参照すると、現在ブロック3701の左側ブロック3703のイントラ予測モードを10番モードであると仮定し、左側ブロック3703の一部分に該当するテンプレートA3705にテンプレートの参照画素(図示せず)を用いて誘導したイントラ予測モードが12番モードであると仮定する。同様に、現在ブロック3701の上側ブロック3707のイントラ予測モードは28番であると仮定し、上側ブロック3707の一部分であるテンプレートB3709にテンプレートの参照画素(図示せず)を用いて誘導したイントラ予測モードが28番であると仮定する。左側ブロック3703の場合は、左側ブロック3703全体を考慮すると、10番モードが符号化に有利であるが、現在ブロック3701に隣接するテンプレートA3705では、12番モードが設定されたので、現在ブロックの予測モードは10番モードよりは12番モードがさらに適切であると仮定することができる。このような場合、MPMの候補設定時に、左側ブロック3703のイントラ予測モードよりは、テンプレートA3705で誘導されたイントラ予測モードを用いてMPM候補を生成することができる。
【0207】
上側ブロック3707の場合は、上側ブロック3707のイントラ予測モードとテンプレートB3709を介して誘導されたイントラ予測モードとが同じであるので、その同じモードがMPM候補として使用される。
【0208】
他の代案として、左側ブロック3703のイントラ予測モード、テンプレートA3705で誘導されたイントラ予測モード、上側ブロック3707のイントラ予測モード、テンプレートB3709で誘導されたイントラ予測モードの4つのモードを用いて、MPMの候補設定を行うことも可能である。このとき、テンプレートを用いて誘導したイントラ予測モードが現在ブロックにさらに近いため、テンプレートを用いて誘導したイントラ予測モードを、MPM候補の設定時に高い優先順位を付けてビットを少なく割り当てることも可能である。
【0209】
本開示の例示的な方法は、説明の明確性のために、動作のシリーズで表現されているが、これは、段階が行われる順序を制限するためのものではなく、必要な場合にはそれぞれの段階が同時に又は異なる順序で行われてもよい。本開示による方法を実現するために、例示する段階に加えて他の段階を含むか、一部の段階を除いて残りの段階を含むか、又は一部の段階を除いて追加の他の段階を含むこともできる。
【0210】
本開示の様々な実施形態は、すべての可能な組み合わせを羅列したものではなく、本開示の代表的な様相を説明するためのものであり、様々な実施形態で説明する事項は、独立して適用されてもよく、二つ以上の組み合わせで適用されてもよい。
【0211】
また、本開示の様々な実施形態は、ハードウェア、ファームウェア(firmware)、ソフトウェア、又はそれらの組み合わせなどによって実現できる。ハードウェアによる実現の場合、1つ又はそれ以上のASICs(Application Specific Integrated Circuits)、DSPs(Digital Signal Processors)、DSPDs(Digital Signal Processing Devices)、PLDs(Programmable Logic Devices)、FPGAs(Field Programmable Gate Arrays)、汎用プロセッサ(general processor)、コントローラ、マイクロコントローラ、マイクロプロセッサなどによって実現できる。
【0212】
本開示の範囲は、様々な実施形態の方法による動作が装置又はコンピュータ上で実行されるようにするソフトウェア又はマシン-実行可能なコマンド(たとえば、オペレーティングシステム、アプリケーション、ファームウェア(firmware)、プログラムなど)、及びこのようなソフトウェア又はコマンドなどが保存されて装置又はコンピュータ上で実行可能な非一時的コンピュータ-可読媒体(non-transitory computer-readable medium)を含む。
【産業上の利用可能性】
【0213】
本発明は、画像信号の符号化又は復号化分野に利用可能である。