JP2012191298A - 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム - Google Patents

動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム Download PDF

Info

Publication number
JP2012191298A
JP2012191298A JP2011051309A JP2011051309A JP2012191298A JP 2012191298 A JP2012191298 A JP 2012191298A JP 2011051309 A JP2011051309 A JP 2011051309A JP 2011051309 A JP2011051309 A JP 2011051309A JP 2012191298 A JP2012191298 A JP 2012191298A
Authority
JP
Japan
Prior art keywords
motion vector
reference picture
block
processing target
priority
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2011051309A
Other languages
English (en)
Inventor
Tomohito Shimada
智史 島田
Kimihiko Kazui
君彦 数井
Junpei Koyama
純平 小山
Hidemasa Miyoshi
秀誠 三好
Akira Nakagawa
章 中川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011051309A priority Critical patent/JP2012191298A/ja
Publication of JP2012191298A publication Critical patent/JP2012191298A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】効率の良い予測ベクトル候補を生成し、符号化効率を上げること。
【解決手段】処理対象ブロックごとに、処理対象ブロックの動きベクトルと動きベクトルの予測ベクトル候補とを用いて復号処理を行う動画像復号装置であって、処理対象ブロックが参照可能なピクチャのピクチャ情報を保持する参照ピクチャリスト保持部と、処理対象ブロックの周辺ブロックの動きベクトル、動きベクトルが参照するピクチャを示す参照ピクチャ識別子を含む動きベクトル情報を保持する動きベクトル情報保持部と、周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、周辺ブロックの動きベクトルの参照ピクチャ識別子が示す第二の参照ピクチャとの表示時間に基づいて、周辺ブロックの動きベクトルの優先度を決定し、優先度を用いて前記予測ベクトル候補を決定する予測ベクトル候補決定部と、を備える。
【選択図】図3

Description

本発明は、各ピクチャを複数のブロックに分割してブロックごとに動き補償する動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラムに関する。
近年の動画像符号化では、画像をブロックに分割し、ブロックに含まれる画素を予測して予測差分を符号化することで高い圧縮率を達成している。符号化対象のピクチャ内の画素から予測画素を構成する予測モードをイントラ予測といい、動き補償と呼ばれる過去に符号化した参照画像から予測画素を構成する予測モードをインター予測という。
動画像符号化装置において、インター予測では、予測画素として参照する領域を動きベクトルという水平成分・垂直成分の2次元座標データで表現し、動きベクトルと画素の予測差分データを符号化する。動きベクトルは、その符号量を抑えるため、符号化対象ブロックに隣接するブロックの動きベクトルから予測ベクトルを生成し、動きベクトルと予測ベクトルとの差分ベクトルを符号化する。
動画像復号装置においても、各ブロックで動画像符号化装置と同一の予測ベクトルを決定し、符号化された差分ベクトルと予測ベクトルを加算することによって動きベクトルを復元する。そのため、動画像符号化装置と動画像復号装置とは、同一の動きベクトル予測部を備える。
動画像復号装置において、各ブロックは、一般には画像の左上から右下に向かってラスタースキャンやzスキャンの順序で復号される。そのため、動画像符号化装置及び動画像復号装置における動きベクトル予測部が、予測に利用できる周辺ブロックの動きベクトルは、動画像復号装置にて処理対象ブロックを復号するときに既に復号済みとなる左や上に隣接するブロックの動きベクトルとなる。
さらに、MPEG(Moving Picture Experts Group)−4 AVC/H.264(以下、H.264ともいう)では、処理対象ピクチャではなく、過去に符号化、復号処理した参照ピクチャの動きベクトルを用いて予測ベクトルを決定することもある(非特許文献1)。
予測ベクトル決定方法の従来技術として、国際標準化団体ISO/IECとITU−Tが共同に標準化を検討している動画像符号化方式HEVC(High Efficiency Video Coding)の技術が開示されている(非特許文献2〜4)。
以下に、HEVCに関する概要説明を行う。HEVCでは、参照可能なピクチャのリスト(以下、参照ピクチャリストともいう)として、L0と、L1という2つのリストを持つ。各ブロックは、L0とL1それぞれに対応する動きベクトルによって、最大2つの参照ピクチャの領域をインター予測に使用することが出来る。
L0とL1とは一般には、表示時間の方向に対応し、L0は処理対象ピクチャに対して過去のピクチャの参照リストであり、L1は未来のピクチャの参照リストである。参照ピクチャリストの各エントリは、画素データの記憶位置、及びそのピクチャの表示時間情報POC(Picture Order Count)値を含む情報から構成される。
POCとは、各ピクチャの表示順序と相対的な表示時間を表す整数値である。POC値が0となるピクチャの表示時間を0としたときに、あるピクチャの表示時間は、そのピクチャのPOC値の定数倍で表すことが出来る。例えば、フレームの表示周期(Hz)をfr、POC値がpであるピクチャの表示時間は、式(1)で表すことが出来る。これにより、POCはある定数(秒)を単位とした表示時間と見なすことができる。
表示時間=p×(fr/2) ・・・式(1)
1つの参照ピクチャリストのエントリ数が2以上であった場合、各動きベクトルは、参照ピクチャリスト内のインデックス番号(参照インデックス)によって、どの参照ピクチャを参照するかを指定する。特に参照ピクチャリストのエントリ数が1ピクチャしか含まない場合、そのリストに対応する動きベクトルの参照インデックスは自動的に0番となるため、明示的に参照インデックスを指定する必要はない。
すなわち、ブロックの動きベクトルは、L0/L1リスト識別子と、参照インデックスと、ベクトルデータ(Vx、Vy)とを含む。L0/L1リスト識別子と、参照インデックスとにより参照ピクチャが指定される。参照ピクチャ内の領域は、(Vx、Vy)で指定される。VxとVyとは、それぞれ水平方向と垂直方向における参照領域の座標と処理対象ブロック(現ブロックともいう)の座標の差であり、1/4画素単位で表現される。L0/L1リスト識別子と、参照インデックスとを参照ピクチャ識別子とし、(Vx、Vy)をベクトルデータと呼ぶこととする。
HEVCにおける予測ベクトルの決定方法について説明する。予測ベクトルは、L0/L1リスト識別子と、参照インデックスとで指定された参照ピクチャごとに決定される。参照ピクチャリストがLX、参照インデックスがrefidxで指定される参照ピクチャを参照する動きベクトルに対する予測ベクトルのベクトルデータmvpを決定するとき、最大で3つのベクトルデータを予測ベクトル候補として算出する。
処理対象ブロックに対して空間方向と時間方向に隣接するブロックは、左方向に隣接したブロック、上方向に隣接したブロック、時間方向に隣接したブロックの3つに分類される。この3グループからそれぞれ最大で1本の予測ベクトル候補が選出される。
選出された予測ベクトル候補は、時間方向に隣接したグループ、左に隣接したグループ、上に隣接したグループの優先順序でリスト化される。このリストを配列mvp_candとする。もし、全てのグループで予測ベクトル候補が1つも存在していなかった場合、ゼロベクトルをmvp_candに追加する。
また、候補リスト内のいずれの予測ベクトル候補を予測ベクトルとして使用するかの識別子として、予測ベクトル候補インデックスmvp_idxを用いる。すなわち、mvpは、mvp_candのmvp_idx番目にエントリされた予測ベクトル候補のベクトルデータとなる。
動画像符号化装置において、符号化対象ブロックのLXのrefidxを参照する動きベクトルがmvであったとき、mvp_candの中で、mvと最も近い候補を探し、そのインデックスをmvp_idxとする。さらに、差分ベクトルmvdを式(2)で算出し、リストLXの動きベクトル情報として、refidx、mvd、mvp_idxを符号化する。
mvd=mv−mvp ・・・式(2)
動画像復号装置は、refidx、mvd、mvp_idxを復号し、refidxに基づき、mvp_candを決定し、予測ベクトルmvpを、mvp_candのmvp_idx番目の予測ベクトル候補とする。動画像復号装置は、式(3)に基づき、処理対象ブロックの動きベクトルmvを復元する。
mv=mvd+mvp ・・・式(3)
次に、空間方向に隣接したブロックの説明をする。図1は、従来技術(その1)を説明するための図である。図1に示す例では、左隣接のブロックと、上隣接ブロックから予測ベクトルを選択する手順について説明する。
まず、左隣接ブロックから予測ベクトル候補を選出する手順について説明する。処理対象ブロックの左側に隣接したブロックのグループ10の中で、左下に位置するブロックIからブロックFまで、参照リストがLXでrefidxと等しい参照インデックスを持つ動きベクトルが見つかるまで探索する。参照リストがLXでrefidxと等しい参照インデックスを持つ動きベクトルが見つかれば、この動きベクトルが選択される。
次に、上隣接ブロックから予測ベクトル候補を選出する手順について説明する。処理対象ブロックの上側に隣接したブロックのグループ11の中で、右上に位置するブロックEから左上に位置するブロックAまで、参照リストがLXでrefidxと等しい参照インデックスを持つ動きベクトルが見つかるまで探索する。参照リストがLXでrefidxと等しい参照インデックスを持つ動きベクトルが見つかれば、この動きベクトルが選択される。
次に、時間方向に隣接したブロックの説明をする。図2は、従来技術(その2)を説明するための図である。図2に示す例では、時間方向に隣接するブロックから予測ベクトル候補を選択する手順について説明する。
まず、時間方向に隣接するブロックを含むピクチャとしてCollocated Picture(以下、ColPicともいう)と呼ばれる時間方向に隣接した参照ピクチャ20が指定される。ColPic20は、L0とL1とのどちらかの参照リストの参照インデックス0番の参照ピクチャである。通常はL1の参照インデックス0番がColPicとなる。
ColPic20の中で、処理対象ブロックと同一位置のブロック21が有する動きベクトルをmvCol22とし、mvCol22が参照するピクチャをColRefPic23とする。ColPic20のPOC値をColPicPoc、ColRefPic23のPOCをColRefPicPoc、現在の処理対象ピクチャ24のPOC値をCurPocとする。
また、RefPicList LXと、Refidxとで指定されるピクチャ25のPOC値をCurRefPocとすると、時間方向の予測ベクトル候補tmvp26は、mvCol22を式(5)でスケーリングして算出される。
tmvp=mvCol×(CurPoc−CurRefPoc)/(ColPicPoc−ColRefPicPoc) ・・・式(5)
以上、従来技術では、前述したようにして、予測ベクトルの候補が決定されていた。
ISO/IEC 14496-10 (MPEG-4 Part 10) / ITU-T Rec.H.264 A.Fujibayashi, F.Bossen, " CE9 3.2d Simplified Motion vector prediction", JCTVC-D231, January 2011, Daegu Korea J. Jung, G. Clare, "Temporal MV predictor modification for MV-Comp, Skip, Direct and Merge schemes", JCTVC-D164, January 2011, Daegu Korea TK. Tan, Gary J. Sulluvan, Jens-Rainer Ohm, "Summary of HEVC working draft 1 and HEVC test model ( HM)" JCTVC-C405, Octobar 2010, Guangzhou
HEVCでは、複数のピクチャを参照ピクチャとして使用する場合、効率の良い予測ベクトル候補を生成できない課題がある。例えば、空間方向に隣接した周辺ブロックの動きベクトル全てが処理対象ブロックと異なる参照インデックスを有する場合を考える。ここで、処理対象ブロックの参照インデックスをrefidxとする。
左隣接と、上隣接のグループでは、refidxと同一の動きベクトルが存在しないために、予測ベクトル候補が選択されない。また、時間方向の隣接ベクトルは、時間方向の隣接ブロックがイントラ予測であった場合、予測に使用可能な動きベクトルが存在しない。このような場合、予測ベクトル候補としてVxとVyが共に0であるようなゼロベクトルしか生成されず、動きベクトルの符号量が大きくなってしまうという課題があった。
開示の技術は、かかる問題を鑑み、効率の良い予測ベクトル候補を生成し、符号化効率を上げることを目的とする。
開示の一態様における動画像復号装置は、処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて復号処理を行う動画像復号装置であって、前記処理対象ブロックが参照可能なピクチャのピクチャ情報を保持する参照ピクチャリスト保持部と、前記処理対象ブロックの周辺ブロックの動きベクトル、該動きベクトルが参照するピクチャを示す参照ピクチャ識別子を含む動きベクトル情報を保持する動きベクトル情報保持部と、前記周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルの参照ピクチャ識別子が示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、該優先度を用いて前記予測ベクトル候補を決定する予測ベクトル候補決定部と、を備える。
また、他の態様における動画像符号化装置は、入力画像が分割された処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて符号化処理を行う動画像符号化装置であって、前記処理対象ブロックが参照可能なピクチャのピクチャ情報を保持する参照ピクチャリスト保持部と、前記処理対象ブロックの周辺ブロックの動きベクトル、該動きベクトルが参照するピクチャを示す参照ピクチャ識別子を含む動きベクトル情報を保持する動きベクトル情報保持部と、前記周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルの参照ピクチャ識別子が示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、該優先度を用いて前記予測ベクトル候補を決定する予測ベクトル候補決定部と、を備える。
開示の技術によれば、効率の良い予測ベクトル候補を生成し、符号化効率を上げることができる。
従来技術(その1)を説明するための図。 従来技術(その2)を説明するための図。 実施例1における予測ベクトル候補決定部の概略構成の一例を示すブロック図。 隣接グループ予測ベクトル候補決定部の概略構成の一例を示すブロック図。 ブロック動きベクトル情報取得部の概略構成の一例を示すブロック図。 動きベクトル選択部の概略構成の一例を示すブロック図。 予測ベクトル候補の決定処理(その1)の一例を示すフローチャート。 予測ベクトル候補の決定処理(その2)の一例を示すフローチャート。 処理対象ブロックの周辺ブロックの一例を示す図。 ブロックの動きベクトル情報の一例を示す図。 参照インデックステーブルの例を示す図。 実施例2における優先度決定部の概略構成の一例を示すブロック図。 実施例2における優先度決定処理の一理を示すフローチャート。 実施例3における動画像復号装置の概略構成の一例を示すブロック図。 実施例3における動画像復号処理の一例を示すフローチャート。 実施例4における動画像符号化装置の概略構成の一例を示すブロック図。 実施例4における動画像符号化処理の一例を示すフローチャート。 予測候補インデックスの符号の一例を示す図。
以下、添付図面を参照しながら実施例について詳細に説明する。
[実施例1]
<構成>
図3は、実施例1における予測ベクトル候補決定部101の概略構成の一例を示すブロック図である。予測ベクトル候補決定部101は、複数の隣接グループ予測ベクトル候補決定部103−1,・・・,n(以下、まとめて隣接グループ予測ベクトル候補決定部103ともいう)と、候補優先度決定部105とを有する。さらに、候補優先度決定部105は、第1候補優先度決定部106と第2候補優先度決定部107とを有する。また、予測ベクトル候補決定部101は、参照ピクチャリスト保持部102と、動きベクトル情報保持部104とデータの送受信可能に接続される。
予測ベクトル候補決定部101が有する各部はそれぞれ、別個の回路として予測ベクトル候補決定部101に実装される。あるいは、予測ベクトル候補決定部101が有する各部は、その各部の機能を実現する回路が集積された一つの集積回路として予測ベクトル候補決定部101に実装されてもよい。また、予測ベクトル候補決定部101が有する各部は、予測ベクトル候補決定部101が有するプロセッサ上で実行されるコンピュータプログラムにより実現される機能モジュールであってもよい。
予測ベクトル候補決定部101は、処理対象ブロックのピクチャ参照情報を入力とし、処理対象ブロックの動きベクトルの符号化や復号に必要な、動きベクトルの予測ベクトル候補を計算する。
参照ピクチャリスト保持部102は、処理対象ピクチャのPOC値、処理対象ピクチャの参照ピクチャリスト、及び処理対象ピクチャが参照する全参照ピクチャの参照ピクチャリスト、参照ピクチャのPOC値などを保持する。
隣接グループ予測ベクトル候補決定部103は、予測ベクトル候補決定部101に入力される処理対象ブロックの参照リスト識別子と参照インデックスとを含むピクチャ参照情報、参照ピクチャリスト保持部102に保持された参照ピクチャリスト及び、処理対象ピクチャ及び各参照ピクチャのPOC値を取得する。
隣接グループ予測ベクトル候補決定部103は、動きベクトル情報保持部104から出力される、隣接グループ内の各ブロックの動きベクトル情報及び位置情報を取得する。隣接グループ予測ベクトル候補決定部103は、取得した情報に基づいて、隣接グループ内の予測ベクトル候補を決定し、予測ベクトル候補の動きベクトル情報を出力する。動きベクトル情報は、動きベクトルの成分、参照インデックス、参照リスト識別子などを含む。
隣接グループとは、処理対象ブロックに空間的または時間的に隣接するブロックの集合である。各隣接グループが含むブロック群は、重複してもよいし、互いに素であってもよい。具体的な隣接グループは、以下の3グループである。ただし、この3グループに限定されるものではなく、グループの数は3以外であってもよい。
1.L1方向の参照インデックスで0番目の参照ピクチャにおける、処理対象ブロックと空間的に同一位置にあるブロック(隣接グループ1)
2.処理対象ピクチャ中の、処理対象ブロックの左側に隣接するブロック(隣接グループ2)
3.処理対象ピクチャ中の、処理対象ブロックの上側に隣接するブロック(隣接グループ3)
各隣接グループは、それぞれ個別の隣接グループ予測ベクトル候補決定部103に割り当てられる。例えば、隣接グループ予測ベクトル候補決定部103−1は、0以上のブロックの動きベクトルをスケーリングし、予測ベクトル候補の参照リスト識別子と参照インデックスとを含む動きベクトル情報を出力する。隣接グループ予測ベクトル候補決定部103の詳細は後述する。
なお、予測ベクトルとは、処理対象ブロックの動きベクトルと差分をとる復号済みブロックの動きベクトルをいう。予測ベクトル候補とは、予測ベクトルの候補となる動きベクトルや動きベクトル情報をいう。
動きベクトル情報保持部104は、処理対象ピクチャの復号済み全ブロックの動きベクトル情報、及び処理対象ピクチャが参照する全参照ピクチャ内の全ブロックの動きベクトル情報を保持する。動きベクトル情報保持部104は、隣接グループ予測ベクトル候補決定部103が要求する、隣接グループ内の各ブロックの動きベクトル情報を出力する。
候補優先度決定部105は、複数の隣接グループ予測ベクトル候補決定部103から出力される、各隣接グループの予測ベクトル候補(参照リスト識別子と参照インデックスを含む)を評価し、それらの優先度を決定する。
候補優先度決定部105は、各隣接グループの予測ベクトル候補を、決定された優先度順に出力する。候補優先度決定部105に含まれる第1候補優先度決定部106は、処理対象ブロックの隣接グループの位置関係に基づき優先度を決定する。第2候補優先度決定部107は、第1候補優先度決定部106が決定した優先度を、望ましければ参照リスト識別子と参照インデックスとに基づき優先度を変更する。
図4は、隣接グループ予測ベクトル候補決定部103の概略構成の一例を示すブロック図である。隣接グループ予測ベクトル候補決定部103は、ブロック動きベクトル情報取得部201と、優先度決定部202と、動きベクトル選択部203とを有する。
図5は、ブロック動きベクトル情報取得部201の概略構成の一例を示すブロック図である。ブロック動きベクトル情報取得部201は、参照ブロック位置決定部301と、動きベクトル情報取得部302とを有する。
参照ブロック位置決定部301は、隣接グループ内の各ブロックの評価順番、及び各ブロックの処理対象ピクチャもしくは参照ピクチャ中の位置を決定する。参照ブロック位置決定部301は、評価順番に従い、ブロックのピクチャ内位置情報を、動きベクトル情報保持部104、動きベクトル情報取得部302に通知する。
動きベクトル情報取得部302は、参照ブロック位置決定部301が順に出力するピクチャ内位置情報に対応したブロックの動きベクトル情報を、動きベクトル情報保持部104から取得する。取得した動きベクトル情報は、優先度決定部202と動きベクトル選択部203とに通知される。また、動きベクトル情報取得部302は、動きベクトル情報内の参照リスト識別子と参照インデックスとを、スケーリング係数決定部402に通知する。
図4に戻り、優先度決定部202は、後述する動き情報バッファ401に蓄積された複数ブロックの動きベクトル情報、参照ピクチャリスト保持部102から出力される処理対象ピクチャの参照ピクチャリストを取得する。また、優先度決定部202は、隣接グループ予測ベクトル候補決定部103に入力される処理対象ブロックの参照リスト識別子と参照インデックスとを取得する。
優先度決定部202は、取得した情報に基づき、動き情報バッファ401に蓄積された複数ブロックをある優先度を持ったグループとして分類する。優先度決定部202は、これにより、各ブロックが有する動きベクトルの優先度を決定する。
動きベクトル選択部203は、優先度決定部202により決定された優先度に基づいて、優先度の高い動きベクトルの動きベクトル情報を、隣接グループの予測ベクトル候補として出力する。
図6は、動きベクトル選択部203の概略構成の一例を示すブロック図である。図6に示す例では、動きベクトル選択部203は、動き情報バッファ401と、スケーリング係数決定部402と、スケーリング部403と、予測候補選択部404とを有する。
動き情報バッファ401は、動きベクトル情報保持部104から通知される周辺ブロックの動きベクトル情報を保持する。周辺ブロックとは、処理対象ブロックの時間的、空間的に隣接するブロックをいう。
スケーリング係数決定部402は、隣接グループ予測ベクトル候補決定部103に入力される処理対象ブロックの参照リスト識別子と参照インデックスを取得する。スケーリング係数決定部402は、予測候補選択部404から通知される予測ベクトル候補の参照リスト識別子と参照インデックスを動きベクトル情報取得部302から取得する。スケーリング係数決定部402は、スケーリング係数の計算に必要なPOC値を参照ピクチャリスト保持部102から取得し、周辺ブロックの動きベクトルのスケーリング係数を計算し、スケーリング部403に通知する。
スケーリング部403は、予測候補選択部404で選択された動きベクトル情報を受け取り、スケーリング係数決定部402から出力されるスケーリング係数を用いて、この動き情報中の動きベクトルをスケーリングする。スケーリング部403は、スケーリングした動きベクトルと参照インデックスとを予測候補選択部404に通知する。
予測候補選択部404は、動き情報バッファ401に蓄積された複数ブロックの中で、優先度の高い動きベクトル情報を、隣接グループの予測ベクトル候補として出力する。また、予測候補選択部404は、スケーリング部403に予測ベクトル候補を通知し、スケーリングされた結果の動きベクトルを予測ベクトル候補として出力してもよい。
(動きベクトルの優先度決定処理)
優先度決定部202が決定する、周辺ブロックの動きベクトルの優先度について説明する。周辺ブロックの動きベクトルの優先度は、L0方向とL1方向とで個別に決定される。以下、優先度を決定する参照方向をLX(X=[0、1])とする。優先度は値が小さい方がより高い優先度を表すこととする。
ここで、以降の説明で用いる表記を定義する。
・refidx[LX]:処理対象ブロックのLX方向の参照インデックス
・refidx_ref[b][LX]:周辺ブロックbのLX方向の参照インデックス
・mv[b][LX]:周辺ブロックbのLX方向の動きベクトル
・refpic[LX][idx]:処理対象ピクチャのLX方向の参照ピクチャリストのidx番目の参照ピクチャ
・refNum[LX]:処理対象ピクチャのLX方向の参照ピクチャ数
・LY:LXと反対の方向。X=0の場合にはY=1,X=1の場合にはY=0
これらの情報は、動き情報バッファ401に格納される。もし、refidx[LX]が−1の場合には、優先度決定は行わない。refidx[LX]が0以上の場合には、隣接グループ1、隣接グループ2、隣接グループ3、それぞれについて動きベクトルの優先度が決定される。
(隣接グループ1)
隣接グループ1には、参照ピクチャrefpic[LX][0]内の、処理対象ブロックと空間的に同一位置にある、一つのブロックA(以降、ColBlockとする)が含まれる。優先度決定部202は、次のように優先度を決定する。
もし、refidx_ref[A][LX]が0以上の場合、mv[A][LX]を優先度1とする。
refidx_ref[A][LX]が−1の場合で、かつrefidx_ref[A][LY]が0以上の場合、mv[A][LY]を優先度1とする。
予測候補選択部404は、隣接グループ1の予測ベクトル候補として、優先度1の動きベクトル及び参照インデックスを出力する。
(隣接グループ2)
隣接グループ2には、処理対象ブロックの左下、及び左に隣接する、複数のブロックB(x)が含まれる。処理対象ブロックが画面左端に位置する場合には、隣接グループ2が含むブロック数は0となり、隣接グループ2の予測ベクトル候補数は0となる。
処理対象ブロックの左下に隣接するブロックB(0)は、処理対象ピクチャ中の画素(xL−1,yB+1)を含むブロックとして定義される。(xL,yB)は、処理対象ブロック内の最左かつ最下の画素の位置である。処理対象ブロックが画面下端に位置する場合には、B(0)は存在しないので、以下の処理では、refidx_ref[B(0)][LX]は−1として扱う。
処理対象ブロックの左に隣接するブロックB(x)(x=[1,k])は、処理対象ピクチャ中の画素(xL−1,y)(y=[yT,yB])を含むブロックとして定義される。xLは、処理対象ブロックの最左に位置する画素のX座標である。「yT」,「yB」は、それぞれ処理対象ブロックの最上、最下に位置する画素のY座標である。複数の左隣接ブロックは、Y座標の降順(画面の下から上)で、B(1),B(2),...,B(k)の順で参照される。kは、左隣接ブロックの総数である。
処理対象ブロックの左上に隣接するブロックB(k+1)は、処理対象ピクチャ中の画素(xL−1,yT−1)を含むブロックとして定義される。(xL,yT)は、処理対象ブロック内の最左かつ最上の画素の位置である。処理対象ブロックが画面上端に位置する場合には、B(k+1)は存在しないので、以下の処理では、B(k+1)の参照インデックスは−1として扱う。
優先度決定部202は、次のように優先度を決定する。まず、優先度決定部202は、評価するブロックをB(x)(x=[0,k])として、x=0からkまで参照インデックスが−1でないブロックの優先度を決定していく。
ブロックB(x)に対する優先度をm(B(x))として、式(6)、式(7)で算出されるp(x)を使って、m(B(x))=p(x)とする。
p(x)=2×|refidx_ref[B(x)][LX]―refidx[LX]|+1+a(x) ・・・式(6)
ここでa(x)は、式(7)により求められる。
refidx_ref[B(x)][LX]>=refidx[LX]のとき
a(x)=0
refidx_ref[B(x)][LX]<refidx[LX]のとき
a(x)=−1
・・・式(7)
すなわち、優先度1のブロックB(x)は、refidx_ref[B(x)][LX]=refidx[LX]となり、
優先度2のブロックB(x)は、refidx_ref[B(x)][LX]=refidx[LX]−1となり、
優先度3のブロックB(x)は、refidx_ref[B(x)][LX]=refidx[LX]+1となり、
優先度4のブロックB(x)は、refidx_ref[B(x)][LX]=refidx[LX]−2
という条件を満たす。式(6)では、処理対象ブロックと近い参照インデックスの動きベクトルを有するブロックの優先度が高くなる。ただし、この優先度決定方法としては、式(6)に限定されるものではない。
予測候補選択部404は、すでに優先度決定部202が決定したブロックB(y)y=[0,x−1]の中で、最も高い優先度を持つブロックBminを記憶する。予測候補選択部404は、決定した優先度mと、Bminと比較して、B(x)の優先度mの優先度が高ければ(値が小さければ)、Bmin=B(x)とする。
予測候補選択部404は、xが0からkまでの全てのブロックを評価した結果、動きベクトルmv[Bmin][LX]と対応する参照インデックスrefidx_ref[Bmin][LX]とLXを、予測ベクトル候補として出力する。
予測候補選択部404は、全てのブロックを評価しても周辺ブロックの動きベクトルが存在しない場合には、予測ベクトル候補を出力しない。予測候補選択部404は、x=0からx=kのブロックを評価する間にBminが優先度1となれば、それ以上Bminが更新されることはないため、評価を打ち切ってもよい。
ここで、予測ベクトル候補は、スケーリング部403でスケーリングされてもよい。スケーリング部403は、スケーリング係数決定部402にて、参照ピクチャリスト保持部102から、処理対象ピクチャのPOC値POC1、処理対象ブロックの参照する参照ピクチャのPOC値POC2、予測ベクトル候補の参照するピクチャのPOC値POC3を取得する。スケーリング部403は、これらのPOC値からスケーリング係数Scaleを式(8)により算出する。
Scale=(POC1−POC2)/(POC1−POC3) ・・・式(8)
スケーリング部403は、スケーリング対象のベクトルデータをv=(mvx、mvy)とし、出力ベクトルデータをv=(mvx'、mvy')とすれば、式(9)と式(10)により出力ベクトルデータを計算する。
mvx'=(mvx×Scale) ・・・式(9)
mvy'=(mvy×Scale) ・・・式(10)
ここで示した算出式よりもコンピュータプログラムに適した具体的な計算方法の詳細は後述する。
(隣接グループ3)
隣接グループ3には、処理対象ブロックの上右、上、及び上左に隣接する、複数のブロックB(x)が含まれる。処理対象ブロックが画面上端に位置する場合には、隣接グループ3が含むブロック数は0となり、隣接グループ3の動きベクトル候補数は0となる。
処理対象ブロックの上右に隣接するブロックB(0)は、処理対象ピクチャ中の画素(xR+1,yT+1)を含むブロックとして定義される。(xR,yT)は、処理対象ブロック内の最上かつ最右の画素の位置である。処理対象ブロックが画面右端に位置する場合には、B(0)は存在しないので、以下の処理では、refidx_ref[B(0)][LX]は−1として扱う。
処理対象ブロックの上に隣接するブロックB(x)(x=[1,k])は、処理対象ピクチャ中の画素(x,yT+1)(x=[xL,xR])を含むブロックとして定義される。「yT」は、処理対象ブロックの最上に位置する画素のY座標である。「xL」,「xR」は、それぞれ処理対象ブロックの最左、最右に位置する画素のX座標である。複数の左隣接ブロックは、X座標の降順(画面の右から左)で、B(1),B(2),...,B(k)と参照される。kは、上隣接ブロックの総数である。
処理対象ブロックの上左に隣接するブロックB(k+1)は、処理対象ピクチャ中の画素(xL−1,yT−1)を含むブロックとして定義される。(xT,yT)は、処理対象ブロック内の最左かつ最上の画素の位置である。処理対象ブロックが画面右端に位置する場合には、B(k+1)は存在しないので、以下の処理では、B(k+1)の参照インデックスは−1として扱う。
優先度決定部202は、隣接グループ2と同様にして優先度を決定する。優先度決定部202は、評価するブロックをB(x)(x=[0,k+1])として、x=0からk+1まで参照インデックスが−1でないブロックの優先度を決定していく。ブロックB(x)に対する優先度をmとして、式(6)、式(7)で算出されるp(x)を使って、m=p(x)とする。
すなわち、優先度1のブロックB(x)は、refidx_ref[B(x)][LX]=refidx[LX]となり、
優先度2のブロックB(x)は、refidx_ref[B(x)][LX]=refidx[LX]−1となり、
優先度3のブロックB(x)は、refidx_ref[B(x)][LX]=refidx[LX]+1となり、
優先度4のブロックB(x)は、refidx_ref[B(x)][LX]=refidx[LX]−2となる。
予測候補選択部404は、すでに優先度決定部202が決定したブロックB(y)y=[0,x−1]の中で、最も高い優先度を持つブロックBminを記憶する。予測候補選択部404は、決定した優先度mと、Bminと比較して、B(x)の優先度mの優先度が高ければ(値が小さければ)、Bmin=B(x)とする。
予測候補選択部404は、xが0からk+1までの全てのブロックを評価した結果、動きベクトルmv[Bmin][LX]と対応する参照インデックスrefidx_ref[Bmin][LX]とLXを、予測ベクトル候補として出力する。予測候補選択部404は、全てのブロックを評価しても周辺動きベクトルが存在しない場合には、予測ベクトル候補は出力しない。
なお、予測候補選択部404は、隣接グループ2で説明したように、スケーリング処理を行ってもよい。
(予測ベクトル候補の優先度決定処理)
次に、各隣接グループ予測ベクトル候補決定部103−1、・・・、nにより出力された各予測ベクトル候補に対する優先度決定処理について説明する。候補優先度決定部105は、各隣接グループの予測ベクトル候補の優先度付けを、第1候補優先度決定部106により以下のように行う。
一番目の優先度:隣接グループ1の予測ベクトル候補(もし存在すれば)
二番目の優先度:隣接グループ2の予測ベクトル候補(もし存在すれば)
三番目の優先度:隣接グループ3の予測ベクトル候補(もし存在すれば)
さらに、次に説明するように、第2候補優先度決定部107は、予測ベクトル候補の参照インデックスに従って優先度を変更してもよい。例えば、一番目に優先された予測ベクトル候補と二番目の優先された予測ベクトル候補が、空間方向の隣接グループである、隣接グループ2と隣接グループ3に属していた場合に、第二の候補優先度の決定を行う。
第1候補優先度決定部106は、一番目に優先された動きベクトル候補の参照インデックスをrefidx1とし、refidx1とrefidx[LX]とで第二の候補優先度を算出する。算出する第二の優先度は、すでに説明した優先度決定部202と同じ算出式であってよい。ここでは、優先度決定部202と同じく式(6)のrefidx_ref[B(x)][LX]をrefidx1に置き換えた式で算出したものとする。同様に、第二に優先された予測ベクトル候補に関して第二の優先度を算出する。算出された二つの第二の優先度を、最終的な予測ベクトル候補の優先度とする。
<動作>
次に、実施例1における予測ベクトル候補決定部101の動作について説明する。実施例1におけるLX方向の動き予測ベクトル候補の決定処理フローを図7A及び図7Bを用いて説明する。ここで、予測ベクトル候補は配列pMVCand[ ]に格納されるとする。配列エントリ値は、小さい方が優先度が高い。pMVCand[ ]は、予測ベクトル候補決定部101の出力に相当する。
ステップS101で、予測ベクトル候補決定部101は、変数iN(予測候補数に相当)、配列pMVCand[ ]、及びpMVTemp[ ]の初期化を行う。変数iNは、予測ベクトル候補の候補数を表し、0に初期化される。配列pMVCand[ ]、及びpMVTemp[ ]の各エントリは、動きベクトルを保持し、空白に初期化される。pMVTemp[ ]は動き情報バッファ401に相当する。
ステップS102〜S103にて、隣接グループ予測ベクトル候補決定部103−1は、隣接グループ1の第一の予測ベクトル候補を取得する。なお、ここでは、隣接グループ予測ベクトル候補設定部103−1が隣接グループ1を処理し、隣接グループ予測ベクトル候補決定部103−2が隣接グループ2を処理し、隣接グループ予測ベクトル候補決定部103−nが隣接グループ3を処理するとする。
ステップS102は、参照ピクチャrefpic[L1][0]のColBlockの符号化モードがインター予測モードであるかどうかを判定する。インター予測モードの場合にはS103に移行する。インター予測モードでない場合(即ち、イントラ予測モード)の場合にはS104に移行する。
ステップS103は、mvCol=mv[ColBlock][LX]を取得する。もし、refidx_ref[ColBlock][LX]が−1の場合、即ちLX方向の動きベクトルが無い場合にはmvCol=mv[ColBlock][LY]とする。インター予測モードの場合、refidx_ref[ColBlock][LX]とrefidx_ref[ColBlock][LY]の少なくとも一方が0以上になる。
ここで、取得した動きべクトルは、優先度1であるので、そのまま予測ベクトル候補とされ、スケーリングされて、配列pMVCandのiN番目(この場合はiN=0)のエントリに挿入される。次に、iNが1だけ増加される。この処理は、第1候補優先度決定部106の処理に相当する。スケーリング方法は後述する。
ステップS104〜S113にて、隣接グループ予測ベクトル候補決定部103−2は、第二の予測ベクトル候補を取得する。
ステップS104は、予測ベクトル候補の探索対象である探索ブロックBを、処理対象ブロックの左下ブロックとする。またBminを無効に設定する。
ステップS105は、Bminが有効であればm(Bmin)=1を満たすかどうかを判定する。YESの場合にはBminが優先度1で最高であり、これ以上の探索の必要がないのでステップS106に移行する。NOの場合は、ステップS107に移行する。
ステップS106は、探索ブロックBminの動きベクトルmvLeft=mv[Bmin][LX]を取得する。今回の場合のように優先度1のとき、探索ブロックBminと処理対象ブロックとが同一の参照インデックスを持つため、スケーリングは行わない。もし、処理対象ブロックと異なる参照ピクチャを参照するブロックにも優先度1を割り当てるような優先度決定を行う場合、スケーリングを行ってもよい。mvLeftをpMVCand[iN]にセットし、更にiNを1だけ増加させた後、ステップS117に移行する。
ステップS107は、(refidx_ref[B][LX]>=0)であるかを判定する。YESの場合にはステップS108に移行する。NOの場合にはステップS102に移行する。
ステップS108は、探索ブロックBの動きベクトルmvLeftを取得する。pMVTemp[B]=mvLeftとし、動き情報バッファに格納する。
ステップS109は、優先度決定部202の処理に相当し、式(6)で優先度m(B)を算出し、ステップS110に移行する。
ステップS110は、Bminが無効か、またはm(B)がm(Bmin)よりも小さいか(優先度が高いか)を判定する。YESの場合にはステップS111にてBmin=Bとし、Bminが無効であった場合は有効に変更される。NOの場合にはステップS112に移行する。
ステップS112は、探索ブロックBを、現在の探索ブロックの上隣のブロックに置き換える。
ステップS113は、探索ブロックが処理対象ブロックの左上ブロックかどうかを判断する。YESの場合にはS114へ、NOの場合にはS105に移行する。
ステップS114は、Bminが有効であるかを判定する。NOの場合にはS117に移行する。この場合、第二の予測ベクトル候補は無いことを意味する。YESの場合にはS115に移行する。
ステップS115は、配列pMVTemp[ ]の各エントリの中で、最も優先度の高いBminの動きベクトル結果であるmvLeft'を取得する。
ステップS116は、mvLeft'をスケーリング処理し、スケーリング後のmvLeft'をpMVCand[iN]にセットし、またiNを1だけ増加させる。詳細なスケーリング方法は後述する。
ステップS117〜S130にて、隣接グループ予測ベクトル候補決定部103−nは、第三の予測ベクトル候補を取得する。
ステップS117は、配列pMVTemp[ ]を空にする。
ステップS118は、予測ベクトル候補の探索対象である探索ブロックBを、処理対象ブロックの上右ブロックとし、Bminを無効にする。
ステップS119は、rBminが有効で優先度m(Bmin)=1を満たすかどうかを判定する。YESの場合にはBminが優先度1であり、ステップS120に移行する。NOの場合は、ステップS121に移行する。
ステップS120は、探索ブロックBの動きベクトルmvAbove=mv[Bmin][LX]を取得する。ステップS120は、Bminと処理対象ブロックとが同一の参照インデックスを持つため、mvAboveのスケーリングは行わない。mvAboveをpMVCand[iN]にセットし、更にiNを1だけ増加させた後、処理を完了する。
ステップS121は、(refidx_ref[B][LX]>=0)であるかを判定する。YESの場合にはステップS122に移行する。NOの場合にはステップS126に移行する。
ステップS122は、探索ブロックBの動きベクトルmvAboveを取得する。取得した動きべクトルはpMVTemp[B]=mvAboveとする。
ステップS123は、優先度決定部202に相当し、式(6)で優先度m(B)を算出し、ステップS124に移行する。
ステップS124は、Bminが無効か、またはm(B)がm(Bmin)よりも小さいか(優先度が高い)を判定する。YESの場合にはステップS125にてBmin=Bとし、Bminが無効であった場合は有効に変更される。NOの場合にはステップS126に移行する。
ステップS126は、探索ブロックが処理対象ブロックの上左ブロックの左ブロックかどうかを判断する。YESの場合にはS128へ、NOの場合にはS127に移行する。
ステップS127は、探索ブロックBを、現在の探索ブロックの左隣のブロックに置き換える。ステップS127の後はステップS119に移行する。
ステップS128は、Bminが有効であるかを判定する。NOの場合にはステップS131に移行する。この場合、第三の予測ベクトル候補は無いことを意味する。YESの場合にはS129に移行する。
ステップS129は、配列pMVTemp[ ]の各エントリの中で、最も優先度の高いBminのmvAbove'を取得する。
ステップS130は、mvAbove'をスケーリングし、スケーリング後のmvAbove'を配列[iN]にセットし、またiNを1だけ増加させる。
ステップS131とステップS132とは、第2候補優先度決定部107の処理に相当するpMVTemp[ ]の入れ替え処理を行い、処理を完了する。
実施例1では、空間方向の隣接グループとしては、処理対象ブロックのLXの予測ベクトル候補決定に対して、各ブロックの周辺動きベクトルとしてLX方向のみを評価している。しかし、LX方向の動きベクトルを探索しても予測ベクトル候補が見つからなかった場合、各ブロックの周辺動きベクトルのLY方向も評価してもよい。
このとき、ブロックB(x)の優先度m(B(x))の評価として、式(6)、式(7)のかわりに、参照リストLYに登録された参照ピクチャを用いて優先度を評価してもよい。例えば、参照リストLYの中で、処理対象ブロックのLXの参照インデックスrefidx[LX]が指定する参照ピクチャに表示時間として最も近い参照ピクチャの参照インデックスをrefidxLY[LX]とする。このとき、式(11)と式(12)に従い、m(B(x))=p(x)として、refidxLY[LX]に近い参照インデックスを有する周辺ベクトルの優先度を高くする。これと同様の手順で、最も優先度の高いLY方向の周辺動きベクトルを予測ベクトル候補として選択すればよい。
p(x)=2×|refidx_ref[B(x)][LY]―refidxLY[LX]|+1+a(x) ・・・式(11)
ここでa(x)は、式(12)とする。
refidx_ref[B(x)][LY]>=refidxLY[LX]のとき
a(x)=0
refidx_ref[B(x)][LY]<refidxLY[LX]のとき
a(x)=−1
・・・式(12)
(スケーリング処理)
次に、周辺ブロックの動きベクトルのスケーリング処理の詳細について説明する。
処理対象ピクチャのPOCをCurrPOC、処理対象ブロックが参照するピクチャのPOCをCurrRefPOCとする。また、周辺ブロックを含むピクチャ(即ち、処理対象ピクチャ、もしくは処理対象ピクチャのL1方向の0番目の参照インデックスに相当するピクチャ)のPOCをRefPoc、周辺ブロックが参照するピクチャのPOCをRefRefPOCとする。
まず、スケーリング係数決定部402は、DiffPocD、DiffPocBを以下の式により計算する。
DiffPocD=RefPOC−RefRefPOC ・・・式(12)
DiffPocB=CurrPOC−CurrRefPOC ・・・式(13)
もし、DiffPocDとDiffPocBとが同一値の場合は、スケール値iScaleは1024とする。
DiffPocDとDiffPocBとが異なる値の場合は、スケール値iScaleは以下のように計算される。
iTDB=Clip3(−128,127,DiffPocB)
iTDD=Clip3(−128,127,DiffPocD)
iX=(2^14+abs(iTDD/2))/iTDD
iScale=Clip3(−1024,1023,((iTDB×iX+32)>>6)) ・・・式(14)
ただし、Clip3(a,b,c)は、以下のように定義される。
Clip3(a,b,c)=a;c<a
b;c>b
c;otherwise
・・・式(15)
また、abs(x)は、xの絶対値を返す関数である。
スケーリング部403は、スケール値iScaleを用いて、周辺ブロックの動きベクトル(mvx,mvy)をスケーリングし、(mvx',mvy')とする。スケーリング部403は、ピクチャの処理開始で、全ての参照ピクチャの組み合わせに対してiScale値を計算しておくことで、ブロックごとのスケーリング処理を乗算とシフトで実現することができる。
mvx'=(iScale×mvx+128)>>8 ・・・式(16)
mvy'=(iScale×mvy+128)>>8 ・・・式(17)
(予測ベクトル候補の取得)
上記の処理に基づく、予測ベクトル候補の取得例について図8〜10を用いて説明する。
図8は、処理対象ブロックの周辺ブロックの例を示す図である。ブロックA51〜ブロックIは、処理対象ピクチャ50中の、処理対象ブロックの左側及び上側に隣接したブロックである。ブロックT54は、参照ピクチャ53内の、処理対象ブロックと同一位置にあるブロックである。
図9は、動きベクトル情報の一例を示す図である。図9に示すブロックA51〜ブロックI52、ブロックT54の参照インデックスと動きべクトルを示す図である。参照インデックスが−1である方向の動きベクトルは、無効であり、(−,−)と表記される。
図10は、参照インデックステーブルの例を示す図である。図10に示す予測構造71は、処理対象ピクチャを含む、各ピクチャの符号化順番を表す。予測構造71内の四角がピクチャに相当し、四角の数値はPOCを表す。
符号化順番は、矢印で表すように、まずPOCが16のピクチャ、次にPOCが32のピクチャ、と続き、最後はPOCが30のピクチャとなる。
処理対象ピクチャ72は、POCが22番のピクチャである。また、処理対象ピクチャ72のL1方向の参照インデックスが0番目の参照ピクチャ73はPOCが24のピクチャである。
図10のテーブル74及びテーブル75は、それぞれ処理対象ピクチャ72の参照インデックステーブル、及びPOCが24のピクチャ73の参照インデックステーブルである。
図8〜図10に示す例の場合のL0方向の予測ベクトル予測候補を、以下に説明する。まず、第一の予測ベクトル候補であるmvCol'は、図9に示す動きベクトル情報テーブル61の通り、ブロックT54のL0方向の参照インデックスが、処理対象ピクチャ72のL0方向の参照インデックスと同じ0であることから、(Tmv0x,Tmv0y)をスケーリングしたものとなる。
次に、第二の予測ベクトル候補であるmvLeft'は、L0方向の参照インデックスが0であるブロックGの動きベクトル(Gmv0x,Gmv0y)そのものとなる。左周辺ブロックの探索順序は、I、H、G、F、Aの順番になるが、最初に処理対象ブロックと同じ参照インデックスを持つブロックがGとなるからである。
最後に、第三の予測ベクトル候補であるmvTop'は、L0方向の参照インデックスが0であるブロックCの動きベクトル(Gmv0x,Gmv0y)をスケーリングしたものとなる。上周辺ブロックの探索順序は、E、D、C、B、Aの順番になるが、最初に処理対象ブロックと同じ参照インデックスを持つブロックがCとなるからである。
予測ベクトル候補は、優先順にブロックT54のL0方向の動きベクトル、ブロックGのL0方向の動きベクトル、ブロックCのL0方向の動きベクトルとなる。
次に、L1方向の予測ベクトル候補について以下に説明する。まず、第一の予測ベクトル候補であるmvCol'は、ブロックTのL1方向の参照インデックスが−1であることから、代わりにL0の動きベクトルを用いる。(Tmv0x,Tmv0y)をスケーリングしたものとなる。
次に、第二の予測ベクトル候補であるmvLeft'は、L1方向の場合は存在しない。左周辺ブロックの探索順序は、I、H、G、F、Aの順番になるが、全てのブロックのL1方向の参照インデックスが−1となるためである。このときに、左周辺ブロックのL0方向の動きベクトルを探索してもよいが、説明の簡便さのために、L0方向のベクトルは探索しないこととする。
最後に、第三の予測ベクトル候補であるmvTop'は、ブロックEの動きベクトル(Emv0x,Emv0y)をスケーリングしたものとなる。上周辺ブロックの探索順序は、E、D、C、B、Aの順番になるが、これらのブロックは全て処理対象ブロックと異なる参照インデックスを持つ。
次に優先的に選ばれるのは、参照インデックスが0の周辺ブロックである。E、D、C、B、Aの順番に探索した時に、最初に参照インデックスが0になる周辺ブロックはEである。
予測ベクトル候補は、優先順にブロックT54のL0方向の動きベクトル、ブロックEのL1方向の動きベクトルとなる。
ここで、従来技術を用いて選択していた場合、L1の予測ベクトル候補は、ブロックT54のL0方向の動きベクトルのみである。
以上、実施例1によれば、周辺ブロックの動きベクトル全てが処理対象ブロックと異なる参照インデックスを有する場合でも、効率の良い予測ベクトル候補を生成し、符号化効率を上げることができる。
通常、動きベクトルはピクチャ内のオブジェクトの動きを表すため、処理対象ブロックの予測ベクトル候補は、処理対象ピクチャと、第一の参照ピクチャとの間のオブジェクトの動きを予測したベクトルとなる。処理対象ピクチャと第一の参照ピクチャとの間の動きと、処理対象ピクチャと第二の参照ピクチャと間の動きは、第一の参照ピクチャと第二の参照ピクチャの表示時間が近いほど、一致度が高いと考えられる。
実施例1の構成を有することにより、優先度決定手段202にて、第一の参照ピクチャと表示時間が近い参照ピクチャを参照する周辺ブロックの動きベクトルを予測ベクトル候補に優先することができる。第一の参照ピクチャと同一の参照ピクチャを参照する周辺ブロックの動きベクトルが存在しなくても、優先度の高い予測ベクトルを選択することができる。これにより、第一の参照ピクチャと表示時間として近い参照ピクチャを参照する予測ベクトルが動きベクトル選択手段203にて選択される。
また、実施例1では、処理対象ピクチャの表示時間と第一の参照ピクチャの表示時間との差である第一の表示時間差と、処理対象ピクチャの表示時間と動きベクトル選択部203が選択した予測ベクトルの第二の参照ピクチャの表示時間との差である第二の表示時間差との比で、周辺ブロックの動きベクトルをスケーリングするスケーリング処理部403を備えてもよい。
例えば、周辺ブロックの動きベクトルのベクトルデータv1が(vx、vy)、処理対象ピクチャの表示時間と週辺ブロックの動きベクトルが参照する参照ピクチャの表示時間との差である第一の表示時間差をΔT1とする。この場合、v1の動きの速度はv1/ΔT1である。処理対象ピクチャの表示時間と処理対象ブロックの参照する参照ピクチャの表示時間との差である第二の表示時間差をΔT2とする。
ここで、求めたい予測ベクトル候補をv2とすれば、v2/ΔT2が予測ベクトル候補が示す動きの速度となる。第一の参照ピクチャと第二の参照ピクチャとが十分近ければ、動きの速度がほぼ一定であると仮定できる。このとき、式(18)が成り立つので、v2は、式(19)にしたがってv1をスケーリングして求めることができることが分かる。
v1/ΔT1=v2/ΔT2 ・・・式(18)
v2=v1×ΔT2/ΔT1 ・・・式(19)
スケーリング部403にて、周辺ブロックの動きベクトルを第一の表示時間差ΔT1と第二の表示時間差ΔT2との比でスケーリングする。除算は計算量が大きいため、除算を乗算とビットシフトで構成してもよい。
さらに、予測ベクトル候補決定部101は、隣接グループ予測ベクトル候補決定部103から出力された予測ベクトル候補の優先度を決定する候補優先度決定部105を備える。候補優先度決定部105は、隣接グループの位置で予測ベクトル候補の優先度を決定する第1候補優先度決定部106と、予測ベクトル候補の動きベクトルが参照する参照ピクチャを第三の参照ピクチャとして、第一の参照ピクチャと第三の参照ピクチャとの表示時間が近くなる予測ベクトル候補の優先度を高く決定する第2候補優先度決定部107とを備えてもよい。
この構成により、第2候補優先度決定部107にて、隣接グループ予測ベクトル候補決定部103から算出された各予測ベクトル候補の中で、より信頼性の高いと推測される予測ベクトル候補を優先することができる。これにより、予測ベクトル候補リスト内の識別子である予測ベクトル候補インデックスmvp_idxが、0に近い値が選択される確率が上がる。この結果として、mvp_idxのエントロピーが減少するため、符号化に要する符号量が削減されることが期待できる。
また、実施例1では、参照ピクチャを、参照ピクチャリストの識別子と参照ピクチャリスト内のインデックス値(以下、参照インデックス値とも呼ぶ)によって識別する。この場合、優先度決定部202は、処理対象ブロックの参照インデックス値に近い参照インデックス値を有する周辺ブロックの動きベクトルに高い優先度を決定してもよい。HEVCやH.264では、各参照リストのエントリは、表示時間を基準とした順序で整列される。そのため、参照インデックス値の差を、表示時間の差と見なすことができる。
この構成により、参照インデックス値のみで、優先度をすることができるため、低演算量を実現できる。
[実施例2]
次に、実施例1における優先度決定部202の別の実施例2について説明する。図11は、実施例2における優先度決定部500の概略構成の一例を示すブロック図である。図11に示す優先度決定部500は、表示時間取得部501と、表示時間による優先度算出部502とを備える。
優先度決定部500の処理を図12に従って説明する。ステップS201で、表示時間取得部501は、処理対象ブロックが参照する第一の参照ピクチャに関するリスト識別子と参照インデックスとを用いて、第一の参照ピクチャの第一のPOC値を取得する。
ステップS202で、表示時間取得部501は、周辺ブロックの動きベクトルが参照する第二の参照ピクチャの識別子としてリスト識別子と参照ピクチャインデックスが入力されたときに、第二の参照ピクチャの第二のPOC値を取得する。
ステップS203で、優先度算出部502は、第一のPOC値と第二のPOC値とをそれぞれ、POC1、POC2とするとき、優先度を式(20)により算出する。
|POC1−POC2|+1 ・・・式(20)
優先度は、実施例1と同様に小さい値ほど優先度が高く、大きい値ほど優先度が低い。実施例2における構成により、POC1とPOC2とが同じであれば、優先度1となる。POC1とPOC2との差が大きいほど優先度が大きい値となり、低い優先度に設定される。実施例2における構成により、第一の参照ピクチャと第二の参照ピクチャとの表示時間が近くなる動きベクトルが採用され、予測ベクトル候補の精度を向上させることができる。ただし、優先度の算出式は、式(20)に限定されるものではない。
以上、実施例2によれば、優先度決定部500が、参照ピクチャリスト保持部102から、周辺ブロックの動きベクトルの参照ピクチャ識別子が示す参照ピクチャの表示時間を取得する。優先度決定部500は、処理対象ブロックが参照する第一の参照ピクチャの表示時間と、周辺ブロックの動きベクトルが参照する参照ピクチャの表示時間との表示時間差を算出し、表示時間差が小さいほど優先度を高く決定してもよい。
この構成により、周辺ブロックの動きベクトルが参照するピクチャの表示時間をT1、処理対象ブロックが参照する参照ピクチャの表示時間をT2としたときに、T1とT2とが近くなる周辺ブロックの動きベクトルを優先することができる。
[実施例3]
次に、実施例3における動画像復号装置について説明する。実施例3で説明する装置は、実施例1又は実施例2を利用した動画像復号装置である。
図13は、実施例3における動画像復号装置600の概略構成の一例を示すブロック図である。図13に示す動画像復号装置600は、過去に復号したピクチャを復号画像記憶部610に格納し、各参照ピクチャのPOCや画像データの記憶位置を参照ピクチャリスト保持部607に保持している。
図13に示す動画像復号装置600は、圧縮ストリームに対してエントロピーの復号を行うエントロピー復号部601と、量子化された直交変換係数の逆量子化を行う逆量子化部602と、逆直交変換処理を行う逆直交変換部603とを備える。さらに、動画像復号装置600は、予測画素と予測誤差を加算して復号画素を生成する画素復号生成部609と、復号画像から予測画素信号を生成する予測信号生成部608と、周辺ブロックの動きベクトル情報を保持する動きベクトル保持部604とを備える。さらに、動画像復号装置600は、実施例1又は2を利用した予測ベクトル候補決定部605と、動きベクトルを復元する動きベクトル復元部606とを備える。
なお、予測ベクトル候補決定部605は、例えば、実施例1又は2で説明した予測ベクトル候補決定部101であり、参照ピクチャリスト保持部607は、例えば、参照ピクチャリスト保持部102であり、動きベクトル保持部604は、例えば、動きベクトル保持部104である。
動画像復号装置600の復号処理について図14を参照しながら説明する。図14は、実施例3における動画像復号処理の一例を示すフローチャートである。動画像復号装置600への入力は、動画像符号化装置にて圧縮されたストリームデータとし、入力ストリームデータは、エントロピー復号部601に入力される。
ステップS301で、エントロピー復号部601は、ブロックのL0の参照インデックスと差分ベクトル情報、予測候補インデックス、L1の参照インデックスと差分ベクトル情報、予測候補インデックスとを復号する。エントロピー復号部601にて復号されたL0とL1予測候補インデックスと差分ベクトル情報とは、動きベクトル復元部606に記憶される。
ステップS302で、エントロピー復号部601は、直交変換係数を復号する。ステップS303で、逆量子化部602は、直交変換係数を逆量子化する。ステップS304で、逆直交変換部603は、逆量子化された係数を逆直交変換し、予測誤差画素値を算出する。
ステップS305で、予測ベクトル候補決定部605は、復号されたL0とL1の参照インデックスに対し、L0とL1の動きベクトル予測候補リストを算出する。
ステップS306で、予測ベクトル候補決定部605は、予測候補リストと予測候補インデックスによりL0とL1の予測ベクトルをそれぞれ決定する。
ステップS307で、動きベクトル復元部606は、差分ベクトル情報と予測ベクトルとを加算することによりL0とL1動きベクトルをそれぞれ復元する。
ステップS308で、予測信号生成部608は、参照ピクチャリスト保持部607から動きベクトルが参照する領域の画素データを取得し、L0動きベクトルとL1動きベクトルとを用いて予測画素を生成する。
ステップS309で、動きベクトル保持部604は、復元されたL0とL1との参照インデックスと、動きベクトル情報とを記憶する。これらの情報は、次のブロックの復号に利用される。
ステップS310で、復号画像生成部609は、逆直交変換手段の結果の予測誤差画素と予測画素とを加算し、復号画素を生成する。
ステップS311で、復号画像記憶部610は、生成された復号画像の復号画素を記憶する。
ステップS311が終了すると、ブロックの復号処理が終了し、次のブロックの復号処理に移行する。1ピクチャに含まれる全てのブロックの復号処理が終了したときに、復号画像記憶部610に記憶された復号画像は、ディスプレイなどの表示部へ出力可能となる。
以上、実施例3によれば、実施例1又は2で説明した予測ベクトル候補の決定処理を利用して動画像復号処理を行うことができる。
[実施例4]
次に、実施例4における動画像符号化装置について説明する。実施例4で説明する装置は、実施例1又は実施例2を利用した動画像符号化装置である。
図15は、実施例4における動画像符号化装置700の概略構成の一例を示すブロック図である。図15に示す動画像符号化装置700は、動き補償の参照ピクチャとして利用する目的で、過去に符号化処理し動画像符号化装置700内で局所復号処理したピクチャを復号画像記憶部708に記憶する。
また、参照ピクチャリスト保持部711は、例えば、参照ピクチャの記憶位置と、POC情報とを記憶する。動画像符号化装置700は、動きベクトルの検出を行う動き検出部709と、予測画素信号の生成を行う予測信号生成部710と、予測ベクトル候補リストを算出する実施例1や2を利用した予測ベクトル候補決定部713とを備える。
また、動画像符号化装置700は、予測ベクトル候補リストと動きベクトルとから、差分ベクトルを計算する差分ベクトル算出部714と、動き補償を行う予測誤差信号生成部701と、予測誤差信号を直行変換する直交変換部702とを備える。
また、動画像符号化装置700は、直交変換係数を量子化する量子化部703と、量子化された直交変換係数を逆量子化する逆量子化部705と、逆直交変換処理を行う逆直交変換部706と、局所復号画像を生成する復号画像生成部707とを備える。
また、動画像符号化装置700は、差分ベクトルや、直交変換係数などの符号化データをエントロピー符号化し、ストリームとして出力するエントロピー符号化部704とを備える。
なお、予測ベクトル候補決定部713は、例えば、実施例1又は2で説明した予測ベクトル候補決定部101であり、参照ピクチャリスト保持部711は、例えば、参照ピクチャリスト保持部102であり、動きベクトル保持部712は、例えば、動きベクトル保持部104である。
動画像符号化装置700の符号化処理について図16を参照しながら説明する。図16は、実施例4における動画像符号化処理の一例を示すフローチャートである。動画像符号化装置700に入力された原画像は、動き検出部709に入力される。
ステップS401で、動き検出部709は、参照ピクチャリスト保持部711から参照ピクチャの記憶位置を取得し、復号画像記憶部708から参照ピクチャの画素データを取得し、L0、L1の参照インデックスと動きベクトルとを検出する。
ステップ402で、予測信号生成部710は、動き検出部709にて検出された動きベクトルが参照する参照画像の領域位置情報に基づいて、復号画像記憶部708から参照画素を取得し、予測信号を生成する。
ステップS403で、予測誤差信号生成部701は、原画像と予測画素信号とが入力され、原画像と予測信号の差分を算出することで予測誤差信号を生成する。
ステップS504で、直交変換部702は、予測誤差信号に対し、例えば離散コサイン変換などの直交変換処理を施し、直交変換係数を出力する。
ステップS405で、量子化部703は、取得した直交変換係数に対し、量子化処理を行う。量子化された直交変換係数は、エントロピー符号化部704に入力される。
ステップS406で、予測ベクトル候補決定部713は、動き検出部709で生成されたL0とL1参照インデックスに対し、実施例1や2で説明したようにL0とL1の予測ベクトル候補リストをそれぞれ算出する。
ステップS407で、差分ベクトル算出部714は、予測ベクトル候補決定部713からL0とL1それぞれの参照インデックスと予測ベクトル候補リストとを取得し、動き検出部709からL0とL1の動きベクトルを取得する。
差分ベクトル算出部714は、L0とL1の動きベクトルに最も近い予測ベクトルを予測ベクトル候補リストの中からそれぞれ選択し、L0とL1の予測ベクトルと予測ベクトル候補インデックスをそれぞれ決定する。
さらに、差分ベクトル算出部714は、L0動きベクトルからL0予測ベクトルが減算され、L0差分ベクトルを生成し、L1動きベクトルからL1予測ベクトルが減算され、L1差分ベクトルを生成する。L0とL1の参照インデックスと差分ベクトルと予測候補インデックスとは、すべてエントロピー符号化手段704に入力される。
ステップS408で、動きベクトル保持部713は、動きベクトル検出部709から出力されたL0とL1の参照インデックス情報と動きベクトル情報とを記憶する。
ステップS409で、逆量子化部705は、量子化された直交変換係数に対し、逆量子化処理を行う。逆直交変換部706は、逆量子化された直交変換係数に対し、逆直交変換処理し、予測誤差信号を生成する。
ステップS410で、復号画像生成部707は、予測誤差信号と予測信号とを加算することで、復号画素を生成する。
ステップS411で、復号画像記憶部708は、生成された復号画素を記憶する。
ステップS412で、エントロピー符号化部704は、入力されたL0参照インデックス、L0差分ベクトル、L0予測ベクトル候補インデックス、L1参照インデックス、L1差分ベクトル、L1予測ベクトル候補インデックス、および、量子化された直交変換係数情報をエントロピー符号化してストリームデータとして出力する。
ここで、予測ベクトル候補リストの要素数をMAXとしたときの、予測候補インデックスmvp_idxの符号の例を、図17に示す。
図17は、予測候補インデックスの符号の一例を示す図である。図17に示すmvp_idxが0に近いほど、符号量は削減される。実施例1や2で説明した予測ベクトル候補の決定処理を行うことで、mvp_idxは小さい値が選択されやすくなり、動きベクトルの符号量を削減することができる。
以上、実施例4によれば、実施例1又は2で説明した予測ベクトル候補の決定処理を利用して動画像符号化処理を行うことができる。
なお、前述した実施例で説明した画像符号化/復号処理は、コンピュータに実行させるためのプログラムとして実現されてもよい。このプログラムをサーバ等からインストールしてコンピュータに実行させることで、前述した画像符号化/復号処理を実現することができる。
また、このプログラムを記録媒体に記録し、このプログラムが記録された記録媒体をコンピュータや携帯端末に読み取らせて、前述した画像符号化/復号処理を実現させることも可能である。なお、記録媒体は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。また、前述した各実施例で説明した画像符号化/復号処理は、1つ又は複数の集積回路に実装してもよい。
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記変形例以外にも種々の変形及び変更が可能である。
なお、以上の実施例に関し、さらに以下の付記を開示する。
(付記1)
処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて復号処理を行う動画像復号装置であって、
前記処理対象ブロックが参照可能なピクチャのピクチャ情報を保持する参照ピクチャリスト保持部と、
前記処理対象ブロックの周辺ブロックの動きベクトル、該動きベクトルが参照するピクチャを示す参照ピクチャ識別子を含む動きベクトル情報を保持する動きベクトル情報保持部と、
前記周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルの参照ピクチャ識別子が示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、該優先度を用いて前記予測ベクトル候補を決定する予測ベクトル候補決定部と、
を備える動画像復号装置。
(付記2)
前記予測ベクトル候補決定部は、
前記処理対象ブロックを含む処理対象ピクチャの表示時間と、前記第一の参照ピクチャの表示時間との差である第一の表示時間差と、前記周辺ブロックを含むピクチャの表示時間と、前記第二の参照ピクチャの表示時間との差である第二の表示時間差との比で、前記周辺ブロックの動きベクトルをスケーリングするスケーリング部を備える付記1記載の動画像復号装置。
(付記3)
前記予測ベクトル候補決定部は、
前記隣接グループごとの前記予測ベクトル候補に対して優先度を決定する候補優先度決定部を備え、
前記候補優先度決定部は、
前記隣接グループの位置に基づき予測ベクトル候補の優先度を決定する第1候補優先度決定部と、
前記予測ベクトル候補の動きベクトルが参照する参照ピクチャを示す第三の参照ピクチャと、前記第一の参照ピクチャの表示時間が近くなる予測ベクトル候補の優先度を高く決定する第2候補優先度決定部を備える付記1又は2記載の動画像復号装置。
(付記4)
前記参照ピクチャ識別子は、参照ピクチャリスト識別子と参照ピクチャリスト内のインデックス値を含み、
前記予測ベクトル候補決定部は、
前記処理対象ブロックのインデックス値に近いインデックス値を有する前記周辺ブロックの動きベクトルに高い優先度を決定する付記1乃至3いずれか一項に記載の動画像復号装置。
(付記5)
前記予測ベクトル候補決定部は、
前記周辺ブロックの動きベクトルの参照ピクチャ識別子が示す参照ピクチャの表示時間と、前記第一の参照ピクチャの表示時間とを前記参照ピクチャリスト保持部から取得し、取得した表示時間の表示時間差で優先度を決定する付記1乃至4いずれか一項に記載の動画像復号装置。
(付記6)
入力画像が分割された処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて符号化処理を行う動画像符号化装置であって、
前記処理対象ブロックが参照可能なピクチャのピクチャ情報を保持する参照ピクチャリスト保持部と、
前記処理対象ブロックの周辺ブロックの動きベクトル、該動きベクトルが参照するピクチャを示す参照ピクチャ識別子を含む動きベクトル情報を保持する動きベクトル情報保持部と、
前記周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルの参照ピクチャ識別子が示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、該優先度を用いて前記予測ベクトル候補を決定する予測ベクトル候補決定部と、
を備える動画像符号化装置。
(付記7)
処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて復号処理を行う動画像復号装置で実行される動画像復号方法であって、
前記処理対象ブロックの周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルが参照する参照ピクチャを示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、
前記優先度を用いて前記予測ベクトル候補を決定する動画像復号方法。
(付記8)
入力画像が分割された処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて符号化処理を行う動画像符号化装置で実行される動画像符号化方法であって、
前記処理対象ブロックの周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルが参照する参照ピクチャを示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、
前記優先度を用いて前記予測ベクトル候補を決定する動画像符号化方法。
(付記9)
処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて復号処理を行う動画像復号装置で実行される動画像復号プログラムであって、
前記処理対象ブロックの周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルが参照する参照ピクチャを示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、
前記優先度を用いて前記予測ベクトル候補を決定する、
処理を動画像復号装置に実行させるための動画像復号プログラム。
(付記10)
入力画像が分割された処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて符号化処理を行う動画像符号化装置で実行される動画像符号化プログラムであって、
前記処理対象ブロックの周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルが参照する参照ピクチャを示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、
前記優先度を用いて前記予測ベクトル候補を決定する、
処理を動画像符号化装置に実行させるための動画像符号化プログラム。
101 予測ベクトル候補決定部
102 参照ピクチャリスト
103 隣接グループ予測ベクトル候補決定部
104 動きベクトル情報保持部
105 候補優先度決定部
106 第1候補優先度決定部
107 第2候補優先度決定部
201 ブロック動きベクトル情報取得部
202 優先度決定部
203 動きベクトル選択部
301 参照ブロック位置決定部
302 動きベクトル情報取得部
401 動き情報バッファ
402 スケーリング係数記憶部
403 スケーリング部
404 予測候補選択部
600 動画像復号装置
601 エントロピー復号部
602 逆量子化部
603 逆直交変換部
604 動きベクトル保持部
605 予測ベクトル候補決定部
606 動きベクトル復元部
607 参照ピクチャリスト保持部
608 予測信号生成部
609 復号画像生成部
610 復号画像記憶部
700 動画像符号化装置
701 予測誤差信号生成部
702 直交変換部
703 量子化部
704 エントロピー符号化部
705 逆量子化部
706 逆直交変換部
707 復号画像生成部
708 復号画像記憶部
709 動き検出部
710 予測信号生成部
711 参照ピクチャリスト保持部
712 動きベクトル保持部
713 予測ベクトル候補決定部
714 差分ベクトル算出部

Claims (10)

  1. 処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて復号処理を行う動画像復号装置であって、
    前記処理対象ブロックが参照可能なピクチャのピクチャ情報を保持する参照ピクチャリスト保持部と、
    前記処理対象ブロックの周辺ブロックの動きベクトル、該動きベクトルが参照するピクチャを示す参照ピクチャ識別子を含む動きベクトル情報を保持する動きベクトル情報保持部と、
    前記周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルの参照ピクチャ識別子が示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、該優先度を用いて前記予測ベクトル候補を決定する予測ベクトル候補決定部と、
    を備える動画像復号装置。
  2. 前記予測ベクトル候補決定部は、
    前記処理対象ブロックを含む処理対象ピクチャの表示時間と、前記第一の参照ピクチャの表示時間との差である第一の表示時間差と、前記周辺ブロックを含むピクチャの表示時間と、前記第二の参照ピクチャの表示時間との差である第二の表示時間差との比で、前記周辺ブロックの動きベクトルをスケーリングするスケーリング部を備える請求項1記載の動画像復号装置。
  3. 前記予測ベクトル候補決定部は、
    前記隣接グループごとの前記予測ベクトル候補に対して優先度を決定する候補優先度決定部を備え、
    前記候補優先度決定部は、
    前記隣接グループの位置に基づき予測ベクトル候補の優先度を決定する第1候補優先度決定部と、
    前記予測ベクトル候補の動きベクトルが参照する参照ピクチャを示す第三の参照ピクチャと、前記第一の参照ピクチャの表示時間が近くなる予測ベクトル候補の優先度を高く決定する第2候補優先度決定部を備える請求項1又は2記載の動画像復号装置。
  4. 前記参照ピクチャ識別子は、参照ピクチャリスト識別子と参照ピクチャリスト内のインデックス値を含み、
    前記予測ベクトル候補決定部は、
    前記処理対象ブロックのインデックス値に近いインデックス値を有する前記周辺ブロックの動きベクトルに高い優先度を決定する請求項1乃至3いずれか一項に記載の動画像復号装置。
  5. 前記予測ベクトル候補決定部は、
    前記周辺ブロックの動きベクトルの参照ピクチャ識別子が示す参照ピクチャの表示時間と、前記第一の参照ピクチャの表示時間とを前記参照ピクチャリスト保持部から取得し、取得した表示時間の表示時間差で優先度を決定する請求項1乃至4いずれか一項に記載の動画像復号装置。
  6. 入力画像が分割された処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて符号化処理を行う動画像符号化装置であって、
    前記処理対象ブロックが参照可能なピクチャのピクチャ情報を保持する参照ピクチャリスト保持部と、
    前記処理対象ブロックの周辺ブロックの動きベクトル、該動きベクトルが参照するピクチャを示す参照ピクチャ識別子を含む動きベクトル情報を保持する動きベクトル情報保持部と、
    前記周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルの参照ピクチャ識別子が示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、該優先度を用いて前記予測ベクトル候補を決定する予測ベクトル候補決定部と、
    を備える動画像符号化装置。
  7. 処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて復号処理を行う動画像復号装置で実行される動画像復号方法であって、
    前記処理対象ブロックの周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルが参照する参照ピクチャを示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、
    前記優先度を用いて前記予測ベクトル候補を決定する動画像復号方法。
  8. 入力画像が分割された処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて符号化処理を行う動画像符号化装置で実行される動画像符号化方法であって、
    前記処理対象ブロックの周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルが参照する参照ピクチャを示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、
    前記優先度を用いて前記予測ベクトル候補を決定する動画像符号化方法。
  9. 処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて復号処理を行う動画像復号装置で実行される動画像復号プログラムであって、
    前記処理対象ブロックの周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルが参照する参照ピクチャを示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、
    前記優先度を用いて前記予測ベクトル候補を決定する、
    処理を動画像復号装置に実行させるための動画像復号プログラム。
  10. 入力画像が分割された処理対象ブロックごとに、該処理対象ブロックの動きベクトルと該動きベクトルの予測ベクトル候補とを用いて符号化処理を行う動画像符号化装置で実行される動画像符号化プログラムであって、
    前記処理対象ブロックの周辺ブロックに対して空間的及び時間的に隣接したグループに分けた隣接グループごとに、前記処理対象ブロックの動きベクトルが参照する参照ピクチャを示す第一の参照ピクチャと、前記周辺ブロックの動きベクトルが参照する参照ピクチャを示す第二の参照ピクチャとの表示時間に基づいて、前記周辺ブロックの動きベクトルの優先度を決定し、
    前記優先度を用いて前記予測ベクトル候補を決定する、
    処理を動画像符号化装置に実行させるための動画像符号化プログラム。
JP2011051309A 2011-03-09 2011-03-09 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム Withdrawn JP2012191298A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011051309A JP2012191298A (ja) 2011-03-09 2011-03-09 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011051309A JP2012191298A (ja) 2011-03-09 2011-03-09 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム

Publications (1)

Publication Number Publication Date
JP2012191298A true JP2012191298A (ja) 2012-10-04

Family

ID=47084014

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011051309A Withdrawn JP2012191298A (ja) 2011-03-09 2011-03-09 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム

Country Status (1)

Country Link
JP (1) JP2012191298A (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104782127A (zh) * 2012-10-07 2015-07-15 Lg电子株式会社 处理视频信号的方法和设备
JP2015533462A (ja) * 2012-10-25 2015-11-24 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオコーディングのための参照ピクチャステータス
JP2019508918A (ja) * 2016-03-18 2019-03-28 グーグル エルエルシー 参照フレームのバッファ追跡を通じた動きベクトル参照の選択
CN111869214A (zh) * 2018-03-19 2020-10-30 高通股份有限公司 对高级时间运动矢量预测的改进
CN112913233A (zh) * 2018-10-02 2021-06-04 Lg电子株式会社 基于hmvp构造预测候选的方法和设备
US11070814B2 (en) 2018-01-23 2021-07-20 Fujitsu Limited Apparatus and method for video image encoding and video image decoding
JP2022521554A (ja) * 2019-03-06 2022-04-08 北京字節跳動網絡技術有限公司 変換された片予測候補の利用
US11516480B2 (en) 2018-11-12 2022-11-29 Beijing Bytedance Network Technology Co., Ltd. Simplification of combined inter-intra prediction
US11838539B2 (en) 2018-10-22 2023-12-05 Beijing Bytedance Network Technology Co., Ltd Utilization of refined motion vector
US11956465B2 (en) 2018-11-20 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Difference calculation based on partial position

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104782127B (zh) * 2012-10-07 2021-05-28 Lg 电子株式会社 处理视频信号的方法和设备
JP2015536109A (ja) * 2012-10-07 2015-12-17 エルジー エレクトロニクス インコーポレイティド ビデオ信号処理方法及び装置
US10171836B2 (en) 2012-10-07 2019-01-01 Lg Electronics Inc. Method and device for processing video signal
CN104782127A (zh) * 2012-10-07 2015-07-15 Lg电子株式会社 处理视频信号的方法和设备
JP2015533462A (ja) * 2012-10-25 2015-11-24 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオコーディングのための参照ピクチャステータス
US9854234B2 (en) 2012-10-25 2017-12-26 Qualcomm Incorporated Reference picture status for video coding
JP2019508918A (ja) * 2016-03-18 2019-03-28 グーグル エルエルシー 参照フレームのバッファ追跡を通じた動きベクトル参照の選択
US11070814B2 (en) 2018-01-23 2021-07-20 Fujitsu Limited Apparatus and method for video image encoding and video image decoding
CN111869214A (zh) * 2018-03-19 2020-10-30 高通股份有限公司 对高级时间运动矢量预测的改进
CN112913233A (zh) * 2018-10-02 2021-06-04 Lg电子株式会社 基于hmvp构造预测候选的方法和设备
US11968355B2 (en) 2018-10-02 2024-04-23 Tcl King Electrical Appliances (Huizhou) Co. Ltd. Method and apparatus for constructing prediction candidate on basis of HMVP
CN112913233B (zh) * 2018-10-02 2023-08-04 Lg电子株式会社 基于hmvp构造预测候选的方法和设备
US11838539B2 (en) 2018-10-22 2023-12-05 Beijing Bytedance Network Technology Co., Ltd Utilization of refined motion vector
US11889108B2 (en) 2018-10-22 2024-01-30 Beijing Bytedance Network Technology Co., Ltd Gradient computation in bi-directional optical flow
US11843725B2 (en) 2018-11-12 2023-12-12 Beijing Bytedance Network Technology Co., Ltd Using combined inter intra prediction in video processing
US11516480B2 (en) 2018-11-12 2022-11-29 Beijing Bytedance Network Technology Co., Ltd. Simplification of combined inter-intra prediction
US11956449B2 (en) 2018-11-12 2024-04-09 Beijing Bytedance Network Technology Co., Ltd. Simplification of combined inter-intra prediction
US11956465B2 (en) 2018-11-20 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Difference calculation based on partial position
US11509923B1 (en) 2019-03-06 2022-11-22 Beijing Bytedance Network Technology Co., Ltd. Usage of converted uni-prediction candidate
US11930165B2 (en) 2019-03-06 2024-03-12 Beijing Bytedance Network Technology Co., Ltd Size dependent inter coding
JP2022521554A (ja) * 2019-03-06 2022-04-08 北京字節跳動網絡技術有限公司 変換された片予測候補の利用

Similar Documents

Publication Publication Date Title
CN112584171B (zh) 一种编解码方法及其设备
JP2012191298A (ja) 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム
KR101429408B1 (ko) 동화상 복호 방법
JP2014143650A (ja) 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法
JP5807402B2 (ja) 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム
JP2013031131A (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20140513