(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023139224
(43)【公開日】2023-10-03
(54)【発明の名称】映像デコード方法、映像エンコード方法および記録媒体
(51)【国際特許分類】
H04N 19/117 20140101AFI20230926BHJP
H04N 19/176 20140101ALI20230926BHJP
H04N 19/159 20140101ALI20230926BHJP
H04N 19/136 20140101ALI20230926BHJP
H04N 19/593 20140101ALI20230926BHJP
【FI】
H04N19/117
H04N19/176
H04N19/159
H04N19/136
H04N19/593
【審査請求】有
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023121877
(22)【出願日】2023-07-26
(62)【分割の表示】P 2022115872の分割
【原出願日】2011-04-11
(31)【優先権主張番号】10-2011-0032766
(32)【優先日】2011-04-08
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2011-0026079
(32)【優先日】2011-03-23
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2010-0032778
(32)【優先日】2010-04-09
(33)【優先権主張国・地域又は機関】KR
(71)【出願人】
【識別番号】596099882
【氏名又は名称】エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュート
【氏名又は名称原語表記】ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100152205
【弁理士】
【氏名又は名称】吉田 昌司
(72)【発明者】
【氏名】リー、ジン、ホ
(72)【発明者】
【氏名】キム、フイ、ヨン
(72)【発明者】
【氏名】ジョン、セ、ユン
(72)【発明者】
【氏名】チョ、スク、ヒー
(72)【発明者】
【氏名】リー、ハ、ヒュン
(72)【発明者】
【氏名】キム、ジョン、ホ
(72)【発明者】
【氏名】リム、スン、チャン
(72)【発明者】
【氏名】チェ、ジン、スー
(72)【発明者】
【氏名】キム、ジン、ウン
(72)【発明者】
【氏名】アン、チー、トゥク
(57)【要約】 (修正有)
【課題】符号化しようとする輝度または色差信号ブロックを効果的に予測して符号化性能を向上させる適応的フィルタを用いたイントラ予測(intra-prediction)実行方法及び装置を提供する。
【解決手段】イントラ予測実行方法は、現在ブロックの周辺ブロックの情報を基盤として参照画素値に対する第1のフィルタの適用可否を決定するステップと、第1のフィルタを適用すると決定した場合、前記参照画素値に対して第1のフィルタを適用するステップと、参照画素値を基盤として現在ブロックに対するイントラ予測を実行するステップと、周辺ブロックの情報を基盤としてイントラ予測実行により予測された現在ブロックの各予測モード別の予測値に対する第2のフィルタの適用可否を決定するステップと、第2のフィルタを適用することと決定された場合、現在ブロックの各予測モード別の予測値に対して第2のフィルタを適用するステップと、を含む。
【選択図】
図6
【特許請求の範囲】
【請求項1】
現在ブロックのイントラ予測モードおよび前記現在ブロックのサイズのうち少なくともいずれか一つに基づいて、前記現在ブロックの参照画素値に対する第1のフィルタの適用可否を決定するステップと、
前記参照画素値を用いて前記現在ブロックの予測値を導出するステップと、
前記現在ブロックのイントラ予測モードおよび前記現在ブロックのサイズのうち少なくともいずれか一つに基づいて、前記現在ブロックの前記予測値に対する第2のフィルタの適用可否を決定し、それにより、フィルタリングされた予測値を生成するステップと、
を備え、
前記現在ブロックの前記イントラ予測モードが水平モードの場合、前記参照画素値に隣接する前記現在ブロックの予測画素のうちの、前記現在ブロックの最も上の(uppermost)画素のみに前記第2のフィルタを適用することにより、前記フィルタリングされた予測値が生成され、
前記現在ブロックの前記イントラ予測モードが垂直モードの場合、前記参照画素値に隣接する前記現在ブロックの予測画素のうちの、前記現在ブロックの最も左の(leftmost)画素のみに前記第2のフィルタを適用することにより、前記フィルタリングされた予測値が生成される、映像デコード方法。
【請求項2】
前記現在ブロックの前記イントラ予測モードは、予測モード情報(MPM;Most Probable Mode)に基づいて決定される、請求項1に記載の映像デコード方法。
【請求項3】
現在ブロックの参照画素値に対する第1のフィルタの適用可否、および前記現在ブロックの予測値に対する第2のフィルタの適用可否に関する情報をエンコードするステップを備え、
前記情報は、前記現在ブロックのイントラ予測モードおよび前記現在ブロックのサイズのうち少なくともいずれか一つに関し、
前記現在ブロックの前記イントラ予測モードが水平モードの場合、前記参照画素値に隣接する前記現在ブロックの予測画素のうちの、前記現在ブロックの最も上の(uppermost)画素のみに前記第2のフィルタを適用することにより、フィルタリングされた予測値が生成され、
前記現在ブロックの前記イントラ予測モードが垂直モードの場合、前記参照画素値に隣接する前記現在ブロックの予測画素のうちの、前記現在ブロックの最も左の(leftmost)画素のみに前記第2のフィルタを適用することにより、前記フィルタリングされた予測値が生成される、映像エンコード方法。
【請求項4】
前記現在ブロックの前記イントラ予測モードは、予測モード情報(MPM;Most Probable Mode)に基づいて決定される、請求項3に記載の映像エンコード方法。
【請求項5】
映像エンコード方法によって生成されたビットストリームを送信する方法であって、
前記映像エンコード方法は、
現在ブロックの参照画素値に対する第1のフィルタの適用可否、および前記現在ブロックの予測値に対する第2のフィルタの適用可否に関する情報をエンコードするステップと、
前記エンコードされた情報に基づいてビットストリームを生成するステップと、
を備え、
前記情報は、前記現在ブロックのイントラ予測モードおよび前記現在ブロックのサイズのうち少なくともいずれか一つに関し、
前記現在ブロックの前記イントラ予測モードが水平モードの場合、前記参照画素値に隣接する前記現在ブロックの予測画素のうちの、前記現在ブロックの最も上の(uppermost)画素のみに前記第2のフィルタを適用することにより、フィルタリングされた予測値が生成され、
前記現在ブロックの前記イントラ予測モードが垂直モードの場合、前記参照画素値に隣接する前記現在ブロックの予測画素のうちの、前記現在ブロックの最も左の(leftmost)画素のみに前記第2のフィルタを適用することにより、前記フィルタリングされた予測値が生成される、方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像コーディング(video coding)に関し、より詳細には、予
測しようとするブロック(block)の周辺画素値または現在ブロックの予測された画
素値に適応的フィルタを適用してイントラ予測(intra-prediction)を
実行する方法及び装置に関する。
【背景技術】
【0002】
近年、デジタルTV等の到来により、放送テレビジョン及びホームエンタテインメント
(home entertainment)分野の技術が急激に発振している。このよう
な分野の技術は、ビデオ圧縮(video compression)技術の標準化(s
tandardization)によって商用化されている。ビデオ圧縮のために、IT
U-T(International Telecommunications Uni
on-Telecommunication)H.263標準が広範に使用されており、
MPEG(Motion Picture Experts Group)の次の標準で
あるMPEG-4がインターネット基盤(internet-based)ビデオアプリ
ケーションのために使用されている。
【0003】
H.263標準の完成後、ITU-T VCEG(Video Coding Exp
erts Group)は、H.263標準に付加的な特徴を追加するための短期的目標
と、低いビット率(bitrate)の視覚通信(visual communicat
ion)のための新たな標準を開発するための長期的目標とを競走してきた。2001年
、MPEGとVCEGの専門家達でなされたJVT(Joint Video Team
)が構成され、JVTによりビデオ映像のコーディングのための新たな標準であるITU
-T H.264/MPEG-4 part 10の標準化作業が進まれてきた。H.2
64標準は、AVC(Advanced Video Coding)として呼ばれるこ
ともできる。H.264/AVCの技術的目標は、コーディング効率(coding e
fficiency)の顕著な向上、損失及びエラーに強固(robust)なコーディ
ング技術、ネットワーク親和的(network friendliness)なコーデ
ィング技術、低い遅延容量(latency capability)、及び正確なマッ
チデコード(match decoding)などである。
【0004】
映像内で周辺画素などは、ほとんど類似した値を有し、これは、H.264/AVC標
準の最小ブロック(block)サイズである4×4ブロックまたは16×16ブロック
に対しても同様である。このように、ブロック間の値などの類似性を用いて映像に対する
予測を実行し、原本映像との差異をエンコードすることができる。これをイントラ予測(
intra-prediction)といい、イントラ予測によって映像コーディングの
効率を高めることができる。
【0005】
また、イントラ予測を実行するにあたって、イントラ予測実行前にフィルタが適用され
得る。通常、H.264/AVC標準でイントラ予測を実行するとき、参照画素値などに
フィルタを適用した後、フィルタが適用された値などをイントラ予測に使用する。しかし
、場合によって、フィルタを適用した後、イントラ予測を実行することより、フィルタを
適用せずに、イントラ予測を実行するときに映像コーディングの性能がより高いことがで
きる。
【0006】
これにより、イントラ予測の実行時、フィルタの適用可否を決定する方法が提案され得
る。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明の技術的課題は、映像エンコードで予測しようとするブロック(block)の
周辺画素値または現在ブロックの予測された画素値に適応的フィルタを適用して、イント
ラ予測(intra-prediction)を実行する方法及び装置を提供することに
ある。より詳細には、イントラ予測を実行するための現在ブロックの参照画素値などに適
応的なフィルタ(pre-filter)を適用した後、予測を実行し、かつ、予測され
た現在ブロックの画素値などにも適応的なフィルタ(post-filter)を適用し
て残差信号(residual signal)を計算する。
【課題を解決するための手段】
【0008】
一態様において、イントラ予測(intra-prediction)実行方法が提供
される。前記イントラ予測実行方法は、現在ブロック(current block)の
周辺ブロックの情報を基盤として参照画素値に対する第1のフィルタの適用可否を決定す
るステップと、前記第1のフィルタを適用することと決定された場合、前記参照画素値に
対して前記第1のフィルタを適用するステップと、前記参照画素値を基盤として前記現在
ブロックに対するイントラ予測を実行するステップと、前記周辺ブロックの情報を基盤と
して前記イントラ予測実行により予測された前記現在ブロックの各予測モード(pred
iction mode)別の予測値に対する第2のフィルタの適用可否を決定するステ
ップと、前記第2のフィルタを適用することと決定された場合、前記現在ブロックの各予
測モード別の予測値に対して前記第2のフィルタを適用するステップとを含む。
【0009】
前記第1のフィルタの適用可否は、前記周辺ブロックの情報を基盤として決定された前
記現在ブロックの予測モードを基盤として決定されることができる。
【0010】
前記第1のフィルタの適用可否は、前記現在ブロックのサイズを基盤として決定される
ことができる。
【0011】
前記第1のフィルタの適用可否は、前記現在ブロックの予測モード及び前記現在ブロッ
クのサイズを基盤として予め指定されることができる。
【0012】
前記第1のフィルタの適用可否は、前記周辺ブロックが画面内(intra-fram
e)符号化されたか、または画面間(inter-frame)符号化されたかの可否を
基盤として決定されることができる。
【0013】
前記第1のフィルタは、3-tapフィルタまたは2-tapフィルタのうち、少なく
ともいずれか1つを使用することができる。
【0014】
前記第2のフィルタの適用可否は、前記周辺ブロックの情報を基盤として決定された前
記現在ブロックの予測モードを基盤として決定されることができる。
【0015】
前記第2のフィルタの適用可否は、前記周辺ブロックが画面内符号化されたか、または
画面間符号化されたかの可否を基盤として決定されることができる。
【0016】
前記第2のフィルタは、前記参照画素値の境界に隣接した画素の予測値に対して適用さ
れることができる。
【0017】
前記第2のフィルタは、3-tapフィルタまたは2-tapフィルタのうち、少なく
ともいずれか1つを使用することができる。
【0018】
他の態様において、エンコーダ(encoder)が提供される。前記エンコーダは、
プロセッサ(processor)と、前記プロセッサと連結され、前記プロセッサを駆
動するための情報を記憶するメモリ(memory)とを備え、前記プロセッサは、現在
ブロックの周辺ブロックの情報を基盤として参照画素値に対する第1のフィルタの適用可
否を決定し、前記第1のフィルタを適用することと決定された場合、前記参照画素値に対
して前記第1のフィルタを適用し、前記参照画素値を基盤として前記現在ブロックに対す
るイントラ予測を実行し、前記周辺ブロックの情報を基盤として前記イントラ予測実行に
より予測された前記現在ブロックの各予測モード別の予測値に対する第2のフィルタの適
用可否を決定し、前記第2のフィルタを適用することと決定された場合、前記現在ブロッ
クの各予測モード別の予測値に対して前記第2のフィルタを適用するように構成される。
【0019】
さらに他の態様において、デコーダ(decoder)が提供される。前記デコーダは
、プロセッサと、前記プロセッサと連結され、前記プロセッサを駆動するための情報を記
憶するメモリとを備え、前記プロセッサは、現在ブロックの周辺ブロックの情報を基盤と
して参照画素値に対する第1のフィルタの適用可否を決定し、前記第1のフィルタを適用
することと決定された場合、前記参照画素値に対して前記第1のフィルタを適用し、前記
参照画素値を基盤として前記現在ブロックに対するイントラ予測を実行し、前記周辺ブロ
ックの情報を基盤として前記イントラ予測により予測された前記現在ブロックの各予測モ
ード別の予測値に対する第2のフィルタの適用可否を決定し、前記第2のフィルタを適用
することと決定された場合、前記現在ブロックの各予測モード別の予測値に対して前記第
2のフィルタを適用するように構成される。
【発明の効果】
【0020】
符号化しようとする輝度または色差信号ブロックを効果的に予測して符号化性能を向上
させる。
【図面の簡単な説明】
【0021】
【
図1】H.264/AVC(Advanced Video Coding)標準のエンコーダのブロック図である。
【
図2】H.264/AVC標準のデコーダのブロック図である。
【
図3】4×4ルマ予測モードで予測サンプル(prediction sample)をラベリング(labeling)した例を示す図である。
【
図4】4×4ルマ予測モード内の9つの予測モードを示す図である。
【
図5】イントラ予測実行前にフィルタを適用する方法の一例を示す図である。
【
図6】提案された適応的フィルタを用いたイントラ予測実行方法の一実施形態を示す図である。
【
図7】提案された適応的フィルタを用いたイントラ予測実行方法に応じて予測値にフィルタが適用される場合を示す図である。
【
図8】本発明の実施形態が実現されるエンコーダ及びデコーダのブロック図である。
【発明を実施するための形態】
【0022】
下記では、添付した図面を参考して本発明の実施形態について本発明の属する技術分野
における通常の知識を有した者が容易に実施できるように詳細に説明する。しかし、本発
明は、種々の相違した形態で実現されることができ、ここで説明する実施形態に限定され
ない。そして、図面において、本発明を明確に説明するために、説明と関係ない部分を省
略し、明細書の全体を通じて類似した部分に対しては、類似した図面符号を付した。また
、詳細な説明を省略しても本技術分野の当業者が容易く理解できる部分の説明を省略した
。
【0023】
明細書及び請求の範囲の全体において、ある部分がある構成要素を「含む」というとき
、これは、特に反対される記載がない限り、他の構成要素を除外することではなく、他の
構成要素をさらに含むことができるということを意味する。
【0024】
図1は、H.264/AVC(Advanced Video Coding)標準の
エンコーダのブロック図である。
【0025】
図1に示すように、エンコーダは、2つの経路のデータフローを含む。1つは、前進経
路(forward path)であり、残りの1つは、再構成経路(reconstr
uction path)である。
【0026】
まず、前進経路を説明する。入力フレームF
nに対してマクロブロック(macro
block)単位でエンコード処理が実行される。マクロブロックは、原本イメージで1
6×16ピクセルのサイズを有する。各入力フレームに対してイントラ予測(intra
-prediction)またはインター予測(inter-prediction)が
実行される。イントラ予測は、フレーム内でブロック間値などの類似性を用いて予測を実
行し、原本映像との差異をエンコードし、インター予測は、フレーム間ブロック間値など
の類似性を用いて予測を実行し、原本映像との差異をエンコードする。イントラ予測また
はインター予測時に、予測マクロブロック(prediction macro blo
ck)であるPが再構成フレーム(reconstructed frame)を基盤と
して形成される。イントラ予測時に、Pは、以前にエンコードされた現在フレーム、デコ
ードされた現在フレーム、または再構成された現在フレームuF
n’内のサンプルから形
成されることができる。Pが再構成された現在フレームから形成されるとき、フィルタリ
ングされていない(unfiltered)サンプルが使用され得る。インター予測時に
、Pは、1つ以上の参照フレーム(reference frame)から動き補償(m
otion compensation)または動き予測(motion predic
tion)が実行されて形成されることができる。
図1において参照フレームは、以前に
エンコードされたフレームであるF
n-1’であることと仮定する。しかし、これに制限
されず、各予測マクロブロックは、既にエンコードされたか、再構成された以前の1フレ
ームまたは2フレーム或いは以後の1フレームまたは2フレームから形成されることがで
きる。
【0027】
Pは、残差(residual)または差異(difference)マクロブロック
Dnを生成するために、現在マクロブロックから差し引かれる。Dnは、ブロック変換(
block transform)を利用して変換(T、transformed)され
、量子化(Q、quantized)されてXを生成する。Xは、エンコードされた係数
(coefficient)等の集合である。エンコードされた係数等は再配列(reo
rder)され、エントロピーコーディング(entropy coding)され、エ
ントロピーコーディングされた係数等は、マクロブロックをデコードするために必要な情
報とともに圧縮されたビット列(compressed bitstream)を形成す
る。圧縮されたビット列は、伝送または格納のためにNAL(Network Abst
raction Layer)に送られる。
【0028】
これから、再構成経路について説明する。量子化されたマクロブロック係数であるXは
、他のマクロブロックなどのエンコードのために使用される再構成フレームを生成するた
めにデコードされる。Xは、逆量子化(Q-1)され、逆変換(T-1、Inverse
Transformed)されて、差異マクロブロックDn’を生成する。再構成経路
で生成された差異マクロブロックDn’は、前進経路で生成された差異マクロブロックで
あるDnと同様でない。量子化によって損失が生じ、これにより、Dn’は、Dnの歪ま
れた形態でありうる。予測マクロブロックPがDn’に加えられ、再構成マクロブロック
uFn’が生成される。再構成マクロブロックuFn’も本来マクロブロックFnの歪ま
れた形態でありうる。uFn’に対してブロッキング歪み(blocking dist
ortion)を減らすためにフィルタが適用されうるし、再構成フレームは、フィルタ
が適用された複数の再構成マクロブロックから形成され得る。
【0029】
図2は、H.264/AVC標準のデコーダのブロック図である。
【0030】
図2に示すように、デコーダは、NALから圧縮されたビット列を受信する。受信され
たデータは、量子化された係数等の集合であるXを生成するために、エントロピーデコー
ド(entropy decoded)され、再配列される。Xに逆量子化及び逆変換が
実行されてD
n’が生成され、デコーダは、ビット列でデコードされたヘッダ情報(he
ader information)を利用してエンコーダで生成された予測マクロブロ
ックと同じ予測マクロブロックPを生成する。PにD
n’が加えられてuF
n’が生成さ
れ、uF
n’がフィルタを経てデコードされたマクロブロックF
n’が生成され得る。
【0031】
以下、イントラ予測について説明する。
【0032】
ブロック(またはマクロブロック)に対してイントラ予測が実行されるとき、予測ブロ
ック(またはマクロブロック)Pがエンコードされたブロック(またはマクロブロック)
など、または再構成されたブロック(またはマクロブロック)などを基盤として形成され
得る。Pは、原本映像から差し引かれ、Pが差し引かれた差異値がエンコードされて伝送
される。イントラ予測は、ルマ予測モード(luma prediction mode
)またはクロマ予測モード(chroma prediction mode)によって
実行され得る。ルマ予測モードで4×4サイズのサブブロック(sub-block)ま
たは16×16サイズのマクロブロック単位でイントロ予測が実行されうるし、4×4ル
マ予測モードでは、合計9個の追加的な予測モードが、16×16ルマ予測モードでは、
合計4個の追加的な予測モードが存在する。イントラ予測が実行される単位は、サブブロ
ックまたはマクロブロックに制限されず、様々なサイズのユニットを単位として実行され
得る。イントラ予測が実行される画素の単位をコーディングユニット(CU;Codin
g Unit)または予測ユニット(PU;Prediction Unit)などと呼
ぶことができ、CUまたはPUのサイズが前述したように、サブブロックまたはマクロブ
ロックのサイズと同じでありうる。
【0033】
図3は、4×4ルマ予測モードで予測サンプル(prediction sample
)をラベリング(labeling)した例を示す。
図3に示すように、予測ブロックP
は、AないしH、またはIないしLにラベリングされたサンプルを基盤として計算される
。
【0034】
図4は、4×4ルマ予測モード内の9つの予測モードを示す。
【0035】
エンコーダは、予測ブロックPとエンコードされるブロックとの間の差異を最小化する
ために、各ブロックに対して9つの予測モードのうち、いずれか1つを選択することがで
きる。9つの予測モードは、次のとおりである。
【0036】
1)モード0(vertical):予測ブロックの上位サンプルなどであるAないし
Dが垂直的に外挿(extrapolate)される。
【0037】
2)モード1(horizontal):予測ブロックの左側サンプルなどであるIな
いしLが水平的に外挿される。
【0038】
3)モード2(DC):P内の全てのサンプルがAないしD及びIないしLの平均によ
って予測される。
【0039】
4)モード3(Diagonal Down-Left):P内のサンプルなどは、下
-左側と上-右側との間で、45℃角度で補間(interpolate)される。
【0040】
5)モード4(Diagonal Down-Right):P内のサンプルなどは、
右下向き45℃角度で外挿される。
【0041】
6)モード5(Vertical-Right):P内のサンプルなどは、垂直軸から
右側に約26.6℃の角度で外挿または補間される。
【0042】
7)モード6(Horizontal-Down):P内のサンプルなどは、水平軸か
ら下方に約26.6℃の角度で外挿される。
【0043】
8)モード7(Vertical-Left):P内のサンプルなどは、垂直軸から左
側に約26.6℃の角度で外挿される。
【0044】
9)モード8(Horizontal-Up):P内のサンプルなどは、水平軸から上
方に約26.6℃の角度で補間される。
【0045】
図4において矢印は、各モード内で予測が実行される方向を指示する。一方、モード3
ないしモード8について、予測ブロック内のサンプルなどは、予測サンプルAないしH、
またはIないしLの加重平均(weighted average)から形成される。例
えば、モード4において、予測ブロックの右側上位に位置するサンプル(d=round
(B/4+C/2+D/4))で予測され得る。エンコーダは、各予測モードによって生
成された予測ブロックに対して絶対エラーの和(SAE;Sum of Absolut
e Errors)をそれぞれ計算し、SAEが一番小さい予測モードによってイントラ
予測を実行する。
【0046】
図5は、イントラ予測実行前にフィルタを適用する方法の一例を示す。
【0047】
一般に、H.264/AVC標準で使用されるサンプルなどにフィルタを適用した後、
イントラ予測が実行される。サンプルは、参照(reference)画素値とも呼ばれ
ることができる。
図5の例では、フィルタが低帯域フィルタ(low-pass fil
ter)であり、8×8ブロックに限ってフィルタが適用されることを仮定する。
【0048】
数式1は、参照画素値に適用される3-tapフィルタを表す数式の一例である。
【0049】
<数1>
h[Z]=(A+2×Z+Q)/4
h[A]=(Z+2×A+B)/4
...
h[P]=(O+3×P)/4
h[Q]=(Z+2×Q+R)/4
...
h[X]=(W+3×X)/4
【0050】
h[Z]は、Zにフィルタを適用して計算した値を表す。数式1に示すように、フィル
タ係数(1,2,1)が適用されて参照画素値に対するフィルタリングが実行され、フィ
ルタリングを経た参照画素値(h[A]~h[Z])を基盤として9個の予測モードによ
るイントラ予測が実行される。復号化過程でも符号化過程と同様にフィルタが適用され得
る。
【0051】
イントラ予測実行前にフィルタリングを実行するにあたって、フィルタリングを実行し
ないとき、エンコードの性能が向上する場合がありうる。これにより、適応的にフィルタ
を適用してイントラ予測を実行する方法が提案され得る。
【0052】
図6は、提案された適応的フィルタを用いたイントラ予測実行方法の一実施形態を示す
。
【0053】
図6に示すように、ステップS201においてエンコーダは参照画素値に対するフィル
タ適用可否を決定する。エンコーダは、フィルタ適用可否を決定するとき、周辺ブロック
の情報を利用したり、レート-歪み最適化(RDO;Rate-Distortion
Optimization)方法によってフィルタ適用可否を決定することができる。
【0054】
周辺ブロックの情報を利用して参照画素値に対するフィルタ適用可否を決定するとき、
周辺ブロックの予測モード情報(MPM;Most Probable Mode)を基
盤として現在ブロックの予測モードを決定し、決定された現在ブロックの予測モードによ
って参照画素値に対するフィルタ適用可否を決定することができる。例えば、現在ブロッ
クが「C」であり、上位ブロックが「A」、左側ブロックが「B」と仮定すれば、現在ブ
ロックの予測モードが「A」の予測モードと同じである場合、「A」の予測モードを現在
ブロックの予測モードとして決定し、現在ブロックの予測モードが「B」の予測モードと
同じである場合、「B」の予測モードを現在ブロックの予測モードとして決定することが
できる。または、現在ブロックの予測モードが「A」の予測モードまたは「B」の予測モ
ードを除いた他の予測モードである場合、当該予測モードを符号化して伝送する。このよ
うに決定された現在ブロックの予測モードによって参照画素値に対するフィルタ適用可否
が決定され得る。現在ブロックと上位ブロック、または左側ブロックのサイズが異なる場
合にも、周辺ブロックの予測モードによって現在ブロックの予測モードを決定することが
できる。
【0055】
または、周辺ブロックの情報を利用して参照画素値に対するフィルタ適用可否を決定す
るとき、周辺参照画素値の変化量を基盤としてフィルタ適用可否を決定することができる
。例えば、フィルタを適用しようとする参照画素値をp[n]とすれば、周辺参照画素値
であるp[n-1]及びp[n+1]の差異値を計算し、これを特定しきい値(thre
shold)と比較してフィルタ適用可否を決定することができる。
【0056】
または、現在ブロックの予測モード以外に、現在ブロックのサイズによって参照画素値
に対するフィルタ適用可否を決定することができる。このとき、現在ブロックの予測モー
ド及び現在ブロックのサイズによるフィルタ適用可否を予め指定し、当該予測モードまた
は当該サイズによって適応的にフィルタ適用可否を決定する。
【0057】
表1は、現在ブロックの予測モード及び現在ブロックのサイズによるフィルタ適用可否
を指定した表である。
【表1】
【0058】
表1を参照すると、「0」は、フィルタが適用されていないことを意味し、「1」は、
フィルタが適用されることを意味する。例えば、現在ブロックのサイズが4×4であると
き、現在ブロックの予測モードが1であればフィルタが適用されず、現在ブロックの予測
モードが3であればフィルタが適用され得る。
【0059】
また、周辺ブロックの画面内(intra-frame)符号化または画面間(int
er-frame)符号化の可否によって参照画素値に対するフィルタ適用可否が決定さ
れ得る。例えば、制限されたイントラ予測(constrained intra-pr
ediction)実行の場合、周辺ブロックが画面間符号化されたとき、画面内に符号
化された周辺ブロックの値などを用いて前記画面間に符号化された値を満たすことになり
、このときは、フィルタリングを適用しないことができる。
【0060】
参照画素値に対してフィルタを適用することと決定された場合、ステップS202にお
いてエンコーダは参照画素値に対してフィルタを適用する。適用されるフィルタは、一般
的に使用されるフィルタでありうる。例えば、数式1の3-tapが使用され得るし、ま
たは2-tapフィルタが使用されることもできる。2-tapフィルタ使用されるとき
、(1/8,7/8)、(2/8,6/8)、(3/8,5/8)などの様々なフィルタ
係数が使用され得る。フィルタが適用された参照画素値が他の参照画素値にフィルタを適
用するときに使用され得る。また、参照画素値にフィルタを適用する場合、全ての参照画
素値に対してフィルタを適用することができ、一部参照画素値に対してのみフィルタを適
用することもできる。
【0061】
ステップS203においてエンコーダは、フィルタが適用された、またはフィルタが適
用されていない参照画素値を基盤としてイントラ予測を実行する。
【0062】
ステップS204においてエンコーダは、現在ブロックの符号化のために、前記イント
ラ予測実行によって予測された各予測モード別の予測値に対するフィルタ適用可否を決定
する。ここで、各予測モードは、4×4ルマ予測モードの9個の予測モードでありうる。
各予測モード別の予測値に対してフィルタ適用可否を決定するときにも、周辺ブロックの
情報を利用するか、RDO方法によってフィルタ適用可否を決定することができる。
【0063】
周辺ブロックの情報を利用して予測値に対するフィルタ適用可否を決定するとき、周辺
ブロックの予測モード情報(MPM)を基盤として現在ブロックの予測モードを決定し、
決定された現在ブロックの予測モードによって予測値に対するフィルタ適用可否を決定す
ることができる。例えば、現在ブロックが「C」であり、上位ブロックが「A」、左側ブ
ロックが「B」と仮定すれば、現在ブロックの予測モードが「A」の予測モードと同じで
ある場合、「A」の予測モードを現在ブロックの予測モードとして決定し、現在ブロック
の予測モードが「B」の予測モードと同じである場合、「B」の予測モードを現在ブロッ
クの予測モードとして決定することができる。または、現在ブロックの予測モードが「A
」の予測モードまたは「B」の予測モードを除いた他の予測モードである場合、当該予測
モードを符号化して伝送する。このとき、現在ブロックの予測モードが特定予測モード(
DCまたはplanar)である場合、参照画素値と予測値との間の差異が他の予測モー
ドに比べて相対的に大きくなり得る。例えば、プラナー(planar)予測モードでの
参照画素値と予測値との差異が、他の予測モードに比べて比較的大きい場合もある。プラ
ナー(planar)予測モードでの予測値は、各行を水平的に線形補間(linear
interpolation)して得られた第1の予測値と各列を垂直的に線形補間し
て得られた第2の予測値との平均で計算されることができる。水平的に線形補間するとき
、右側の値は、参照画素値のうち、右上向きに位置した値(すなわち、
図3においてH)
と同じであり、垂直的に線形補間するとき、下方の値は、参照画素値のうち、左下向きに
位置した値(すなわち、
図3においてI)と同じである。予測値が参照画素値から直ちに
求められるものではないので、参照画素値と予測値との差異が比較的大きい場合もある。
このような場合、予測値に対してフィルタを適用し、イントラ予測の効率性を高めること
ができる。このように決定された現在ブロックの予測モードによって予測値に対するフィ
ルタ適用可否が決定され得る。現在ブロックと上位ブロック、または左側ブロックのサイ
ズが異なる場合にも、周辺ブロックの予測モードによって現在ブロックの予測モードを決
定することができる。
【0064】
または、現在ブロックの予測モード以外に、現在ブロックのサイズによって予測値に対
するフィルタ適用可否を決定することができる。このとき、現在ブロックの予測モード及
び現在ブロックのサイズによるフィルタ適用可否を予め指定し、当該予測モードまたは当
該サイズによって適応的にフィルタ適用可否を決定する。または、周辺ブロックの画面内
符号化または画面間符号化の可否によって予測値に対するフィルタ適用可否が決定され得
る。
【0065】
予測値に対してフィルタを適用することと決定された場合、ステップS205において
エンコーダは、予測値に対してフィルタを適用する。これにより、現在ブロックの予測が
完了し、エンコーダは、残差信号を計算し、エントロピー符号化を実行する。
【0066】
図7は、提案された適応的フィルタを用いたイントラ予測実行方法によって予測値にフ
ィルタが適用される場合を示す。
【0067】
図7に示すように、現在ブロックの予測モードが非方向性モードである場合、参照画素
値と予測値との間の差異が、他の予測モードに比べて相対的に大きい場合があるので、周
辺の復元された参照画素値との境界に隣接した画素の予測値に対してのみフィルタを適用
することができる。例えば、
図3において、境界に位置した1行の画素であるa1~a8
及びb1、c1、d1、e1、f1、g1、h1に該当する予測値に対してフィルタリン
グを実行することができる。または、境界に位置した2行の画素であるa1~a8、b1
~b8及びc1~c2、d1~d2、e1~e2、f1~f2、g1~g2、h1~h2
に該当する予測値に対してフィルタを適用することができる。このときに適用されるフィ
ルタは、一般的に使用されるフィルタでありうる。例えば、数式1の3-tapが使用さ
れ得るし、または、2-tapフィルタが使用され得る。2-tapフィルタが使用され
るとき、(1/8,7/8)、(2/8,6/8)、(3/8,5/8)などの様々なフ
ィルタ係数が使用され得る。または、画素の位置によって2-tapフィルタまたは3-
tapフィルタのうち、いずれか1つを選択して使用することもできる。
【0068】
同様な方法で、現在ブロックの予測モードがモード0、モード3、またはモード7のよ
うに、A~Pに該当する参照画素値を用いる予測モードである場合、参照画素値と予測値
との間の差異が比較的大きいa1~a8に該当する予測値に対してフィルタを適用するこ
とができる。また、現在ブロックの予測モードがモード1またはモード8のように、Q~
Xに該当する参照画素値を用いる予測モードである場合、参照画素値と予測値との間の差
異が比較的大きいa1、b1、c1、d1、e1、f1、g1、及びh1に該当する予測
値に対してフィルタを適用することができる。
【0069】
数式2は、画素の位置によって2-tapフィルタまたは3-tapフィルタを選択し
て使用する場合、予測値に適用されるフィルタを表す数式の一例である。
【0070】
<数2>
f[a1]=(2×A+4×a1+2×Q)/8
f[b1]=(2×B+6×b1)/8
f[c1]=(2×C+6×c1)/8
...
f[a2]=(2×R+6×a2)/8
f[a3]=(2×S+6×a3)/8
...
【0071】
数式2においてf[a1]は、予測値a1にフィルタを適用した値であり、AとQは、
参照画素値を表す。数式2を参照すると、a1に位置した画素の予測値に対して3-ta
pフィルタが適用され、残りの画素の予測値に対しては2-tapフィルタが適用される
ことが分かる。
【0072】
数式3は、提案された適応的フィルタを用いたイントラ予測実行方法によって予測値に
フィルタが適用される場合、予測値に適用されるフィルタを表す数式のさらに他の例であ
る。
【0073】
<数3>
1.Vertical low-pass filter
v[a1]=(A+2×a1+a2)/4
v[a2]=(v[a1]+2×a2+a3)/4
...
v[a8]=(v[a7]+3×a8)/4
v[b1]=(B+2×b1+b2)/4
...
2.Horizontal low-pass filter
h[a1]=(Q+2×v[a1]+v[b1])/4
h[b1]=(h[a1]+2×v[b1]+v[c1])/4
...
h[h1]=(h[g1]+3×v[h1])/4
h[a2]=(R+2×v[a2]+v[b2])/4
...
【0074】
数式3のフィルタは、各予測モードに対して周辺ブロックの情報を利用する方法または
RDO方法を基盤として適応的なフィルタを適用するときに使用されることができる。数
式3を参照すると、フィルタ係数が(1,2,1)である低帯域フィルタが垂直と水平の
2つの方向に対して順次実行される。まず、垂直方向にフィルタが適用され、フィルタが
適用された値を基盤としてさらに水平方向にフィルタが適用される。フィルタが適用され
た予測値が他の予測値にフィルタを適用するときに使用されることができる。
【0075】
一方、RDO方法が適用される場合、
図6において説明されたイントラ予測実行方法が
繰り返されて実行されることができる。
【0076】
図8は、本発明の実施形態が実現されるエンコーダ及びデコーダのブロック図である。
【0077】
エンコーダ800は、プロセッサ(810;processor)及びメモリ(820
;memory)を備える。プロセッサ810は、提案された機能、過程、及び/又は方
法を実現する。プロセッサ810は、現在ブロックの周辺ブロックの情報を基盤として参
照画素値に対する第1のフィルタの適用可否を決定し、前記第1のフィルタを適用するこ
とと決定された場合、前記参照画素値に対して前記第1のフィルタを適用し、前記参照画
素値を基盤として前記現在ブロックに対するイントラ予測を実行し、前記周辺ブロックの
情報を基盤として前記イントラ予測実行によって予測された前記現在ブロックの各予測モ
ード別の予測値に対する第2のフィルタの適用可否を決定し、前記第2のフィルタを適用
することと決定された場合、前記現在ブロックの各予測モード別の予測値に対して前記第
2のフィルタを適用するように構成される。メモリ829は、プロセッサ810と連結さ
れて、プロセッサ810を駆動するための様々な情報を記憶する。
【0078】
デコーダ900は、プロセッサ910及びメモリ920を備える。プロセッサ910は
、提案された機能、過程、及び/又は方法を実現する。プロセッサ910は、現在ブロッ
クの周辺ブロックの情報を基盤として参照画素値に対する第1のフィルタの適用可否を決
定し、前記第1のフィルタを適用することと決定された場合、前記参照画素値に対して前
記第1のフィルタを適用し、前記参照画素値を基盤として前記現在ブロックに対するイン
トラ予測を実行し、前記周辺ブロックの情報を基盤として前記イントラ予測実行によって
予測された前記現在ブロックの各予測モード別の予測値に対する第2のフィルタの適用可
否を決定し、前記第2のフィルタを適用することと決定された場合、前記現在ブロックの
各予測モード別の予測値に対して前記第2のフィルタを適用するように構成される。メモ
リ920は、プロセッサ910と連結されて、プロセッサ910を駆動するための様々な
情報を記憶する。
【0079】
プロセッサ810、910は、ASIC(application-specific
integrated circuit)、他のチップセット、論理回路、及び/又は
データ処理装置を備えることができる。メモリ820、920は、ROM(read-o
nly memory)、RAM(random access memory)、フラ
ッシュメモリ、メモリカード、記憶媒体、及び/又は他の記憶媒体を備えることができる
。実施形態がソフトウェアで実現されるとき、上述した技法は、上述した機能を果たすモ
ジュール(過程、機能など)で実現されることができる。モジュールは、メモリ820、
920に保存され、プロセッサ810、910によって実行され得る。メモリ820、9
20は、プロセッサ810、910の内部または外部にありうるし、よく知られた様々な
手段によってプロセッサ810、910と連結されることができる。
【0080】
上述した例示的なシステムにおいて、方法などは、一連のステップまたはブロックとし
て順序図に基づいて説明されているが、本発明は、ステップなどの順序に限定されるもの
ではなく、あるステップは、上述したことと異なるステップと異なる順序とで、或いは同
時に発生することができる。また、当業者であれば、順序図に示したステップなどが排他
的でなく、他のステップが含まれるか、順序図の1つまたはそれ以上のステップが本発明
の範囲に影響を及ぼさずに削除され得ることを理解できるであろう。
【0081】
上述した実施形態などは、様々な態様の例示等を含む。様々な態様などを表すための全
ての可能な組み合わせを記述することはできないが、当該技術分野の通常の知識を有した
者は、他の組み合わせが可能であるということを認識できるであろう。したがって、本発
明は、以下の特許請求の範囲内に属する全ての他の交替、修正、及び変形を含むといえよ
う。