Nothing Special   »   [go: up one dir, main page]

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

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

Info

Publication number
JP2015046920A
JP2015046920A JP2014210516A JP2014210516A JP2015046920A JP 2015046920 A JP2015046920 A JP 2015046920A JP 2014210516 A JP2014210516 A JP 2014210516A JP 2014210516 A JP2014210516 A JP 2014210516A JP 2015046920 A JP2015046920 A JP 2015046920A
Authority
JP
Japan
Prior art keywords
motion vector
vector
prediction
decoding
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014210516A
Other languages
English (en)
Other versions
JP5858119B2 (ja
Inventor
章弘 屋森
Akihiro Yamori
章弘 屋森
純平 小山
Junpei Koyama
純平 小山
智史 島田
Tomohito Shimada
智史 島田
三好 秀誠
Hidemasa Miyoshi
秀誠 三好
数井 君彦
Kimihiko Kazui
君彦 数井
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 JP2014210516A priority Critical patent/JP5858119B2/ja
Publication of JP2015046920A publication Critical patent/JP2015046920A/ja
Application granted granted Critical
Publication of JP5858119B2 publication Critical patent/JP5858119B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】動きベクトルの符号化処理/復号処理を効率良く行う動画像復号方法を提供する。【解決手段】複数のブロックに分割された画像の符号化データを復号する動画像復号方法であって、記憶部に記憶される、復号済みブロックの動きベクトル及び動きベクトルの参照先を示す参照先情報を含む動きベクトル情報を用いて、復号対象ブロックの動きベクトルに対する予測ベクトルを決定し、復号対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すか否かに応じて、予測ベクトルを用いる動きベクトルの可変長復号処理方法を変更し、選ばれた可変長復号処理方法で復号対象ブロックの動きベクトルを復号する。【選択図】図5

Description

本発明は、多視点映像を処理する動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラムに関する。
動画像符号化方式において、動き予測を用いて差分情報をより少なくし、かつその差分情報に周波数変換を施し、低周波のより少ない有効係数に減らすことで、高圧縮を実現している。
動画像符号化は、ISO/IEC(International Standardization Organization/International Electrotechnical Commission)で策定されたMPEG-2(Moving Picture Experts Group)、MPEG-4、あるいはH.264/AVC(H.264/ MPEG-4 Advanced Video Coding)が広く利用されている。
H.264は、通信向けの国際標準規格を定めるITU-T(International Telecommunication Union Telecommunication Standardization Sector)側で策定された名称である。
また、次世代符号化として、HEVC(High Efficiency Video Coding)の符号化も推進されている。
動画像符号化方式において、周波数変換された差分情報は可変長符号化が施される。一方で、動きベクトルに関しても、動きベクトルの成分そのものを符号化するのではなく、周辺ブロックの動きベクトルとの差分ベクトルを符号化することにより、動きベクトルの符号量削減を実現している。
例えば、H.264の符号化では、動きベクトルと差分を算出する予測ベクトルを次のようにして求める。図1は、符号化対象の現在のブロックと周辺ブロックとの例を示す図である。符号化対象の現在のブロックを現ブロックbCurrともいう。図1に示す例では、周辺ブロックは、ブロックbA(左ブロック)、ブロックbB(上ブロック)、ブロックbC(右上ブロック)である。ブロックは、例えばマクロブロックとする。
この周辺ブロックのベクトルの中から、現ブロックの動きベクトルとの差分ベクトルを計算するための予測ベクトル(PMV:Predicted Motion Vector)が求められる。予測ベクトルは、具体的には、水平・垂直の成分毎に周辺ベクトルの中間値となる。
ここで、ブロックbAの動きベクトルをVbA=(VbAx,VbAy)、ブロックbBの動きベクトルをVbB=(VbBx,VbBy)、ブロックbCの動きベクトルをVbC=(VbCx,VbCy)とする。このとき、予測ベクトルは次の式により算出される。
PMVx=median (VbAx,VbBx,VbCx) ・・・式(1)
PMVy=median (VbAy,VbBy,VbCy) ・・・式(2)
PMV=(PMVx,PMVy):予測ベクトル
median():要素中の中間値の選択
ブロックbAが分割されている場合は、分割サブブロックの内の一番上のサブブロックのベクトルがVbAとして用いられる。ブロックbBが分割されている場合は、分割サブブロックの内の一番左のサブブロックのベクトルがVbBとして用いられる。
また、H.264には、以下の通り、例外処理がいくつかある。
(1)ブロックbA、bB、bCが画面外もしくはスライス外で参照出来ない場合は、そのブロックは無効となる。ただし、画面右端でposCのブロックが画面外になる場合は、ブロックbD(左上ブロック)が参照される。
(2)動きベクトルVbA、VbB、VbCのうち、現ピクチャの現ブロックbCurrの動きベクトルVbCurrと参照ピクチャが同一のものが一つしかない場合には、PMVはVbXとなる。Xは、参照ピクチャが同一のブロックが入る。現ブロックを含むピクチャを現ピクチャともいう。
(3)現ブロックbCurrが垂直分割されている場合には、左側VbCurrのPMVはVbA、右側VbCurrのPMVはVbCとする。また、現ブロックbCurrが水平分割されている場合には、上側VbCurrのPMVはVbB、下側VbCurrのPMVはVbCとする。
また、HEVCにおいては、周辺ベクトルの選択方法がよりフレキシブルになるCompetition-based scheme for motion vector selection and coding(以下、MV Competitionともいう)と呼ばれる動きベクトルの符号化方法が提案されている。
MV Competitionでは、予測ベクトルに使用可能なブロック等の情報について、復号対象ブロックの位置とともに明示的に通知可能な仕組みが取り込まれている。
図2は、HEVCにおける周辺ブロックの定義を説明するための図である。図2に示す例では、予測ベクトルは、現ブロックbCurrが存在する現ピクチャの周辺ブロックbA、bB、bCの動きベクトルのみでなく、既に処理済の別ピクチャcolPicのブロックcolMB、c0〜c7の動きベクトルを用いることも可能である。ブロックcolMBは、ピクチャcolPicのうち、現ブロックbCurrの位置と同位置にあるブロックである。
H.264より新しい符号化方式では、各参照方向に対し、複数の参照も可能なためにピクチャ単位にrefPicListを設定する。このrefPicListは、参照に用いるピクチャのListにインデックス番号を付けて、ピクチャ単位に設定されている。
予測ベクトルは、指標pmvIdx(予測ベクトルの識別子)により、明示的に送信される。具体的な例を以下に挙げる。図2に示す例では、現ピクチャCurrPicの周辺ブロックのうち、左、上、右上、左上に隣接するブロックbA、bB、bC、bDは、H.264同様に周辺ブロックである。
各参照ブロックbA、bB、bC、bDの動きベクトルを、それぞれ、VbA、VbB、VbC、VbDで表す。
さらに、直前の非参照処理ピクチャであるcolPicにおいて、現ブロックbCurrと同一位置にあるブロックcolMB及びその周囲の各ブロックc0〜c7を、周辺ブロックとすることができる。
ブロックcolMB及びその全周囲周辺ブロックであるci(i=0,1,...,7)の動きベクトルを、それぞれ、Vcol及びVciで表す。
全ての参照ブロックが参照可能である場合、指標pmvIdxは、例えば、4ビットで表される値「0」〜「9」で表すことが可能である。指標pmvIdxの値に応じて、予測ベクトルPMVは、以下のように定義される。
pmvIdx=0:PMV=median(VbA,VbB,VbC)
pmvIdx=1:PMV=VbA
pmvIdx=2:PMV=VbB
pmvIdx=3:PMV=VbC
pmvIdx=4:PMV=VbD
pmvIdx=5:PMV=VspaEXT
pmvIdx=6:PMV=Vcol
pmvIdx=7:PMV=med(Vcol,Vc0,Vc1,Vc2,Vc3)
pmvIdx=8:PMV=med(Vcol,Vc0,Vc1,Vc2,Vc3,Vc4,Vc5,Vc6,Vc7)
pmvIdx=9:PMV=med(Vcol,Vcol,VbA,VbB,VbC)
関数median(Vj)(Vj∈{VbA,VbB,VbC,Vcol,Vci})は、その関数の引数である動きベクトルVjの水平方向成分の中央値及び垂直方向成分の中央値をそれぞれ独立して出力する関数である。
また、関数median(Vj)の引数の何れかが未定義である場合、関数median(Vj)の出力値は定義されない。
また、VspaEXTの定義は以下の通りである。
VspaEXT = med(VbA,VbB,VbC):全ブロックが有効である場合
= VbA:bAが有効で、bBまたはbCが有効でない場合
= VbB:bBが有効で、bAが有効でない
= VbC:上記以外
参照ブロックの有効は、参照ブロックが参照可能であり、かつ、refPicList内に存在し、動きベクトルを用いたインター符号化されているかで判断する。
また、ある指標のPMVが有効でない場合の定義は以下の通りである。
有効でない参照ブロックがbA:VbA = (0,0)
有効でない参照ブロックがbB:VbB = VbA
有効でない参照ブロックがbC:VbC = VbA
有効でない参照ブロックがbD:VbD = VbA
有効でない参照ブロックがcolMB:Vcolは未定義
有効でない参照ブロックがci(i=0,1,...,7):Vci = Vcol
未定義である動きベクトルに対応する指標pmvIdxの値も未定義となる。さらに、予測ベクトルが同一となる複数の指標pmvIdxの値が存在する場合、そのうちの最小値以外は取り除くことが可能である。この場合、指標pmvIdxの値は再割り当てされてもよい。
参照ブロックの増加による処理量、帯域幅の増加を避けるために、次のように指標を制限して実装する事も可能である。
pmvIdx=0:PMV= median(VbA,VbB,VbC)
pmvIdx=1:PMV=VbA
pmvIdx=2:PMV=VbB
pmvIdx=3:PMV=VbC
pmvIdx=4:PMV=Vcol
なお、pmvIdxの指標は、数字が小さい方が可変長符号でより短い符号が割り当てられる。
また、HEVCで現ブロックが64×64サイズなどの大きいブロックの場合で、周辺ブロックが複数になるときは、左隣接ブロックの中で一番上のブロックをbAとし、上隣接ブロックの中で一番左のブロックをbBとして、予測ベクトルが生成される。
また、近年、MVC(Multi-view Video Coding)などの複数視点の映像の符号化が実用化されている。MVCでは、他視点の情報を用いずに符号化/復号化処理を行うBase-Viewと、他視点の情報も予測に活用可能なnon-Base-Viewが存在し、従来の符号化と同様の時間方向の動き予測を行う視点内予測と、同一時刻の他視点の映像から動き予測を行う視点間予測が存在する。inter-view予測は、同一時刻の視点間予測を行うものである。ピクチャの識別情報はPOC(Picture Order Count)で表されるため、同一時刻のピクチャは、同一のPOCを有する。
例えば、多視点映像を符号化する技術として、高レベル構文を使用して、ブロックの視点間予測を行う技術がある。
特表2009−522985号公報
ここで、視点間予測について考えると、多視点映像は、一般に映像が飛び出す表現をする為に、人間の左右の目の方向のずれと、同じ水平方向に左右の映像をそれぞれずらす。水平にずらした映像が左右それぞれの視点に映される。よって、左右のずれの観点から考えると、視点間予測の動きベクトルは、殆どの場合が、水平方向を指す動きベクトルとなる。
ある画像において視点間予測を許容した場合、この画像の各ブロックでは、視点内予測と視点間予測とが混在することになる。図3は、各ブロックの動きベクトルの例を示す図である。
図3に示すブロック11は、視点間予測、ブロック12は、視点内予測のブロックであるとする。また、動きベクトル13は、視点間の動きベクトルを表し、動きベクトル14は、視点内の動きベクトルを表す。動きベクトル14は、前方向又は後方向のブロックを参照する。
この場合、動きベクトルには、次のような傾向が存在すると言える。
視点内予測:動きベクトル14は動画の動きに応じた方向を指す
視点間予測:動きベクトル13は水平方向の小さな動き(多視点映像の視差)を指す
動きベクトルの符号化を行う際、例えば、周辺ブロックの代表である予測ベクトルとの差分ベクトルを符号化する。しかし、視点間予測を許容する多視点映像の符号化の場合、図3に示すように、視点内のブロックを参照する動きベクトル14と視点間のブロックを参照する動きベクトル13とが存在する。
ここで、垂直方向のベクトル成分に注目する。現ブロックの動きベクトルの参照先と予測ベクトルの参照先とが、視点内と視点間とで異なる場合、視点間予測の動きベクトルの垂直成分はほぼ0であるのに対して、視点内予測の動きベクトルの垂直成分は画面の動きにより垂直方向に非0の成分が発生する。
この場合、垂直成分の差分ベクトルが大きな値となりやすい。結果的に、垂直成分の動きベクトルの符号量が大きくなってしまう。よって、従来の多視点映像の符号化方式では、動きベクトルの符号化/復号を効率良く行うことができなかった。
そこで、開示の技術は、多視点映像に対して、動きベクトルの符号化処理/復号処理を効率良く行うことができる動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラムを提供することを目的とする。
開示の一態様の動画像復号方法は、複数のブロックに分割された画像の符号化データを復号する動画像復号方法であって、記憶部に記憶される、復号済みブロックの動きベクトル及び該動きベクトルの参照先を示す参照先情報を含む動きベクトル情報を用いて、復号対象ブロックの動きベクトルに対する予測ベクトルを決定し、前記復号対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すか否かに応じて、前記予測ベクトルを用いる動きベクトルの可変長復号処理方法を変更し、選ばれた可変長復号処理方法で前記復号対象ブロックの動きベクトルを復号する。
また、開示の他の態様の動画像符号化方法は、複数のブロックに分割された画像を符号化する動画像符号化方法であって、記憶部に記憶される、符号化済みブロックの動きベクトル及び動きベクトルの参照先を示す参照先情報を含む動きベクトル情報を用いて、符号化対象ブロックの動きベクトルに対する予測ベクトルを決定し、前記符号化対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すか否かに応じて、前記予測ベクトルを用いる動きベクトルの可変長符号化処理方法を変更し、選ばれた可変長符号化処理方法で前記符号化対象ブロックの動きベクトルを符号化する。
開示の技術によれば、多視点映像に対して、動きベクトルの符号化処理/復号処理を効率良く行うことができる。
符号化対象の現在のブロックと周辺ブロックとの例を示す図。 HEVCにおける周辺ブロックの定義を説明するための図。 各ブロックの動きベクトルの例を示す図。 実施例1における動画像符号化装置の構成の一例を示すブロック図。 視点内予測及び視点間予測における動きベクトルの関係を示す図。 実施例1における動画像符号化処理の一例を示すフローチャート。 実施例2における動画像復号装置の構成の一例を示すブロック図。 実施例2における動画像復号処理の一例を示すフローチャート。 実施例3における動画像符号化装置の構成の一例を示すブロック。 H.264におけるCABACのコンテキストモデルの要素表を示す図。 実施例3におけるコンテキストモデルの要素表(その1)の例を示す図。 実施例3におけるコンテキストモデルの要素表(その2)の例を示す図。 実施例3における動画像符号化処理の一例を示すフローチャート。 実施例4における動画像復号装置の構成の一例を示すブロック図。 実施例4における動画像復号処理の一例を示すフローチャート。 実施例5における動画像符号化装置の構成の一例を示すブロック図。 実施例5における動画像符号化処理(その1)の一例を示すフローチャート。 実施例5における動画像符号化処理(その2)の一例を示すフローチャート。 実施例5におけるAの算出処理の一例を示すフローチャート。 実施例6における動画像復号装置600の構成の一例を示すブロック図。 実施例6における動画像復号処理の一例を示すフローチャート。 HEVCのMV Competitionにおける問題点を説明するための図。 各ブロックのブロック名、参照位置、動きベクトルを示す図。 実施例7における動画像符号化処理の一例を示すフローチャート。 実施例8における動画像復号処理の一例を示すフローチャート。 画像処理装置の構成の一例を示すブロック図。
100、300、500 動画像符号化装置
101 予測誤差生成部
102 直交変換・量子化部
103、302 可変長符号化部
104 逆直交変換・逆量子化部
105 復号画像生成部
106 フレームメモリ
107 動きベクトル検出部
108 モード判定部
109 イントラ予測部
110 動き補償部
111 動きベクトルメモリ
112 予測ベクトル決定部
113 差分ベクトル算出部
114 動きベクトル処理制御部
200、400、600 動画像復号装置
201、401 可変長復号部
202 逆直交変換・逆量子化部
203 予測モード判定部
204 イントラ予測部
205 差分ベクトル取得部
206 予測ベクトル決定部
207 動きベクトル処理制御部
208 動きベクトル決定部
209 動きベクトルメモリ
210 動き補償部
211 復号画像生成部
212 フレームメモリ
301 コンテキスト変更部
401 コンテキスト変更部
501 予測ベクトル補正部
601 予測ベクトル補正部
まず、以下に示す実施例は、符号化対象/復号対象ブロック(現ブロックともいう)の動きベクトルの参照先及びその周辺ブロックの動きベクトルの参照先の関係によって、差分ベクトルの符号化処理/復号処理を制御する。これにより、動きベクトルの符号量をより少なくし、動きベクトルの符号化処理/復号処理を効率良くする。以下、図面に基づいて、各実施例について説明する。
[実施例1]
<構成>
図4は、実施例1における動画像符号化装置100の構成の一例を示すブロック図である。図4に示す動画像符号化装置100は、予測誤差生成部101、直交変換・量子化部102、可変長符号化部103、逆直交変換・逆量子化部104、復号画像生成部105、フレームメモリ106を備える。また、動画像符号化装置100は、動きベクトル検出部107、モード判定部108、イントラ予測部109、動き補償部110、動きベクトルメモリ111、予測ベクトル決定部112、差分ベクトル算出部113、動きベクトル処理制御部114を備える。
図4に示す動画像符号化装置100は、非Base-Viewの動画像を符号化するための構成を示す。前述した各処理部のうち、動きベクトル処理制御部114以外の処理部は、Base-Viewの動画像を符号化する場合も設けられるが、各処理部の重複記載を避けるため、ここでは省略することにする。以降で説明する動画像符号化装置においても同様とする。
非Base-View側の動画像を符号化する処理について説明する。予測誤差生成部101は、入力された動画像データの符号化対象画像が16×16ピクセル(画素)のブロック(MB)に分割されたマクロブロックデータ(以降、MBデータともいう)を取得する。
予測誤差生成部101は、そのMBデータと、イントラ予測部109又は動き補償部110から出力される予測画像のMBデータとの差分をとり、予測誤差データを生成する。予測誤差生成部101は、生成された予測誤差データを直交変換・量子化部102に出力する。
直交変換・量子化部102は、入力された予測誤差データを8×8単位や4×4単位で直交変換処理する。直交変換処理は、DCT(Discrete Cosine Transform)変換やアダマール(Hadamard)変換などがある。直交変換・量子化部102は、直交変換処理によって水平及び垂直方向の周波数成分に分離されたデータを取得する。
これは、画像の空間相関性により、周波数成分に変換する事により低周波成分にデータが集まり情報量圧縮を行う事が可能となるからである。
直交変換・量子化部102は、直交変換されたデータを量子化することによって、データの符号量を低減し、この量子化された値を可変長符号化部103及び逆直交変換・逆量子化部104に出力する。
可変長符号化部103は、直交変換・量子化部102から出力されたデータを可変長符号化して出力する。可変長符号化とは、シンボルの出現頻度に応じて可変長の符号を割り当てる方式をいう。
可変長符号化部103は、例えば、基本的には出現頻度の高い係数の組合せにはより短い符号を、出現頻度の低い係数組合せにはより長い符号を割当てる。これにより、全体的に符号長を短くしようとする。H.264では、CAVLC(Context-Adaptive Variable Length Coding)やCABAC(Context-Adaptive Binary Arithmetic Coding)と呼ばれる方式の可変長符号を選択することができる。
可変長符号化部103は、例えば、動きベクトルを符号化する場合、動きベクトル処理制御部114により符号化処理を制御される場合もある。
逆直交変換・逆量子化部104は、直交変換・量子化部102から出力されたデータを逆量子化してから逆直交変換する。逆直交変換・逆量子化部104は、逆直交変換を行って、周波数成分から画素成分へ変換し、変換後のデータを復号画像生成部105に出力する。この逆直交変換・逆量子化部104によって復号化処理が行われることにより、符号化前の予測誤差信号と同程度の信号が得られる。
復号画像生成部105は、イントラ予測部109から出力されるデータ又は動き補償部110で動き補償された画像のMBデータと、逆直交変換・逆量子化部104により復号処理された予測誤差データとを加算する。これにより、復号側と同等の処理画像を符号化側でも生成することができる。
符号化側で生成された画像を局所復号画像と呼び、符号化側に復号側と同一の処理画像を生成することにより、次ピクチャ以降の差分符号化を行うことが可能となる。復号画像生成部105は、加算して生成した局所復号画像のMBデータを、フレームメモリ106に出力する。なお、局所復号画像のMBデータに対し、デブロックフィルタをかけてもよい。局所復号画像は、参照画像となりうる。
フレームメモリ106は、入力したMBデータを新たな参照画像のデータとして記憶する。参照画像は、動き補償部110、動きベクトル検出部107により読み出される。フレームメモリ106は、他視点の参照画像を記憶してもよい。
動きベクトル検出部107は、符号化対象画像におけるMBデータと、フレームメモリ106から取得する符号化済みの参照画像のMBデータとを用いて動き探索を行い、適切な動きベクトルを求める。
動きベクトルとは、ブロック単位で参照画像から符号化対象画像に最も類似している位置を探索するブロックマッチング技術を用いて求められるブロック単位の空間的なずれを示す値である。
動き探索は、例えば、画素の差分絶対値和の大きさのみでなく、動きベクトルの評価値も付加することが一般的である。動きベクトルの符号化は、成分そのものでなく周辺MBの動きベクトルとの差分ベクトルを符号化する。よって、動きベクトル検出部107は、差分ベクトルを求め、その成分の大きさにより、動きベクトル符号長相当の評価値を出力する。
動き探索の評価値をcost、差分絶対値をSAD(Sum Absolute Difference)_cost、動きベクトルの符号量相当の評価値をMV(Motion Vector)_costとすると、動きベクトル検出部107は、次の式により、costを最小とする動きベクトルの位置を検出する。
cost = SAD_cost + MV_cost
動きベクトル検出部107は、検出した動きベクトルをモード判定部108に出力する。
なお、動きベクトル検出部107は、他視点の参照画像を用いることができるときは、他視点の局所復号画像が記憶されるフレームメモリから取得した参照画像のブロックに対し、ブロックマッチングを行う。
モード判定部108は、以下に示す5つの符号化モードのうち、符号化コストが最も低い符号化モードを選択する。符号化モードは、予測モードともいう。モード判定部108は、例えば、ダイレクトベクトルを用いた動き予測を行う場合と、通常の動きベクトルの予測を行う場合(前方向、後方向、双方向、イントラ)とで、最適な予測モードを選択する。
具体的には、モード判定部108は、予測モード毎に以下のような評価値を計算する。
cost_direct = SAD(*org, *ref);
cost_forward = SAD(*org, *ref) + MV_COST(*mv, *prevmv);
cost_backward = SAD(*org, *ref) + MV_COST(*mv, *prevmv);
cost_bidirection = SAD(*org, *ref) + MV_COST(*mv, *prevmv);
cost_intra = ACT(*org);
ここで、モード判定部108は、SAD()について、MB内の画素差分絶対値和を求め、この場合、原画MB(*org)と参照画MB(*ref)の16×16画素の差分絶対値和を次の式により求める。
SAD() = Σ|*org−*ref|
また、ダイレクトモードに関しては、既に符号化済の、colPicの同位置のMBを符号化する際に用いた動きベクトルを基準ベクトルとして動きベクトルメモリ111から読み出す。ダイレクトモードは、読み出された基準ベクトルからダイレクトベクトルの計算を行い、動き予測を行うモードである。よって、ダイレクトモードは、動きベクトルの情報を送らなくてよいというモードである。
H.264符号化などでは、MBは、1MB内に複数のサブブロックに分割することが可能である。そこで、MBが、例えば8×8のサブブロックの4つに分かれている場合は、8×8=64画素の差分絶対値和の4つの集まりが、SAD評価値となる。なお、サブブロックには、16×16、8×8の他にも、8×16、16×8、4×8、8×4、4×4と様々な大きさが存在可能である。
IntraMBの場合は、差分画像でなく原画像そのものを符号化するので、アクティビティという別の評価値を用いる。Intra符号化の場合は、原画MBそのものを直交変換する。よって、ACT()は、MBの各画素のMB平均値(=AveMB)からの隔たり等により次の式により求められる。
ACT() = Σ|*org−AveMB|
MV_COSTは、動きベクトルの符号量に比例した評価値である。動きベクトル(*mv)は、成分そのものではなくて、周辺MBに基づく予測ベクトル(*prevmv)との差分ベクトルを符号化するので、その絶対値の大きさにより評価値が決定される。
重み定数λが使用され、MV_COSTの全体cost評価値に対する影響度を変更することも一般的に行われている。
MV_COST = λ×(Table[*mv−*prevmv])
ここで、Table[]は、差分ベクトルの大きさを符号量相当に変換するテーブルである。
なお、実際に重み付けを行う方法は、様々な方法がある。例えば、以下に2つの例を挙げる。
cost_direct += W (W:重み定数)
上記式により、固定値を付加して評価値を大きくしてもよい。
cost_direct *= α (α:重み係数)
上記式により、評価値を定数倍してもよい。
モード判定部108は、例えば、次の式により最小の評価costを求め、その最小の評価costに対応するMB_Typeを、符号化に使用するMB_Typeと決定する。
min_cost = min(cost_direct, cost_forward, cost_backward, cost_bidirection, cost_intra);
モード判定部108は、選択した予測モードで用いた動きベクトルを動きベクトルメモリ111に書き込み、動きベクトルや選択した符号化モードを動き補償部110に通知する。また、モード判定部108は、動きベクトルやその動きベクトルの参照先を示す参照先情報を差分ベクトル算出部113、動きベクトル処理制御部114に出力する。
イントラ予測部109は、符号化対象画像のすでに符号化された周辺画素から予測画像を生成する。
動き補償部110は、フレームメモリ106から取得した参照画像のデータをモード判定部108から提供される動きベクトルで動き補償する。これにより、動き補償された参照画像(予測画像)としてのMBデータが生成される。
動きベクトルメモリ111は、符号化に用いられた動きベクトルや動きベクトルの参照先を示す参照先情報を記憶する。動きベクトルメモリ111は、例えば、記憶部である。動きベクトルメモリ111で記憶する動きベクトルは、予測ベクトル決定部112により読み出される。
予測ベクトル決定部112は、例えば、符号化対象ブロックの周辺ブロックで、符号化済みのブロックの動きベクトルを用いて式(1)と(2)により、予測ベクトルを決定する。予測ベクトル決定部112は、決定した予測ベクトルを差分ベクトル算出部113出力し、決定した予測ベクトル及び参照先情報を動きベクトル処理制御部114に出力する。
差分ベクトル算出部113は、符号化対象ブロックの動きベクトルと、予測ベクトルとの差分をとって差分ベクトルを生成する。差分ベクトル算出部113は、生成した差分ベクトルを可変長符号化部103に出力する。
動きベクトル処理制御部114は、符号化対象ブロックの動きベクトルの参照先情報及び/又は予測ベクトルの参照先情報に基づいて、動きベクトルの符号化処理を変更するよう制御する。
図5は、視点内予測及び視点間予測における動きベクトルの関係を示す図である。図5に示すように、復号対象ブロックの動きベクトルが視点間予測、予測ベクトルが視点間予測である場合、双方の動きベクトルの相関は極大となる。これは、双方の動きベクトルが同じ視差ベクトルを有する可能性が高いからである。
また、復号対象ブロックの動きベクトルが視点内予測、予測ベクトルが視点内予測の場合も、双方の動きベクトルの相関は高い。これは、復号対象ブロックの周辺ブロックも、復号対象ブロックと同様の動きをしている可能性があるからである。
また、復号対象ブロックの動きベクトルと予測ベクトルとの予測が視点間予測、視点内予測で異なる場合、双方の動きベクトルの相関は低い。前述したように、視点間予測の動きベクトル(視差ベクトル)と、視点内予測の動きベクトルとは基本的に異なるからである。
よって、動きベクトル処理制御部114は、図5に示すように、動きベクトルの相関がある場合に、その相関に適した動きベクトルの符号化処理が行われるように、可変長符号化部103又は差分ベクトル算出部113などを制御する。
例えば、動きベクトル処理制御部114は、双方の参照先情報が同じ視点間参照の場合と、その他の場合とで異なる符号化処理になるよう制御する。視点間参照とは、動きベクトルの参照先が他視点のブロックを指す場合をいう。視点内参照とは、動きベクトルの参照先が同視点のブロックを指す場合をいう。
<動作>
次に、実施例1における動画像符号化装置100の動作について説明する。図6は、実施例1における動画像符号化処理の一例を示すフローチャートである。
図6に示すステップS101で、モード判定部108は、符号化対象ブロックの予測モードを判定する。例えば、符号化コストが最小となる予測モードが選択される。
ステップS102で、差分ベクトル算出部113は、モード判定部108から符号化対象ブロックの動きベクトルVbCurrを、予測ベクトル決定部112により決定された予測ベクトルPMVを取得する。
ステップS103で、差分ベクトル算出部113は、動きベクトルVbCurrと予測ベクトルPMVとの差分をとり、差分ベクトルを算出する。
ステップS104で、動きベクトル処理制御部114は、符号化対象ブロックは、MVC符号化されているか否かを判定する。MVC符号化されていれば(ステップS104−YES)ステップS105に進み、MVC符号化されていなければ(ステップS104−NO)ステップS108に進む。
ステップS105で、動きベクトル処理制御部114は、動きベクトルVbCurrが視点間予測を示すか否かを判定する。視点間予測を示す否かは、VbCurrの参照先情報が視点内のピクチャを指すか視点間のピクチャを指すかにより判断できる。
動きベクトルVbCurrが視点間予測を示せば(ステップS105−YES)ステップS106に進み、動きベクトルVbCurrが視点間予測を示さなければ(ステップS105−NO)ステップS108に進む。
ステップS106で、動きベクトル処理制御部114は、予測ベクトルPMVが視点間予測を示すか否かを判定する。予測ベクトルPMVが視点間予測を示せば(ステップS106−YES)ステップS107に進み、予測ベクトルPMVが視点間予測を示さなければ(ステップS106−NO)ステップS108に進む。
ステップS107で、動きベクトル処理制御部114は、動きベクトルの符号化処理を制御する。
ステップS108で、可変長符号化部103は、MBの量子化値を可変長符号化する。可変長符号化部103は、差分ベクトルに対し、動きベクトル処理制御部114により制御された場合は、その符号化処理で符号化を行う。
ステップS109で、動画像符号化装置100は、全てのMBに対して符号化処理を行ったかを判定する。全てのMBの処理が終了していれば(ステップS109−YES)符号化処理を終了し、全てのMBの処理が終了していなければ(ステップS109−NO)ステップS101に戻る。
以上、実施例1によれば、動きベクトルの符号化処理において、符号化対象ブロックの動きベクトル及び/又は予測ベクトルの参照先情報に基づいて動きベクトルの符号化処理を制御することで、動きベクトルの符号量を削減することができる。
[実施例2]
次に、実施例2における動画像復号装置200について説明する。実施例2では、実施例1における動画像符号化装置100で符号化されたデータを復号する。
<構成>
図7は、実施例2における動画像復号装置200の構成の一例を示すブロック図である。図7に示す動画像復号装置200は、可変長復号部201、逆直交変換・逆量子化部202、予測モード判定部203、イントラ予測部204、差分ベクトル取得部205を備える。また、動画像復号装置200は、予測ベクトル決定部206、動きベクトル処理制御部207、動きベクトル決定部208、動きベクトルメモリ209、動き補償部210、復号画像生成部211、フレームメモリ212を備える。
図7に示す動画像復号装置200は、非Base-Viewの入力ビットストリームを復号するための構成を示す。前述した各処理部のうち、動きベクトル処理制御部207以外の処理部は、Base-Viewの動画像を復号する場合も設けられるが、各処理部の重複記載を避けるため、ここでは省略することにする。以降で説明する動画像復号装置においても同様とする。
非Base-View側の動画像の復号処理について説明する。可変長復号部201は、非Base-View側のビットストリームが入力されると、動画像符号化装置100の可変長符号化に対応する可変長復号を行う。可変長復号部201により復号された予測誤差信号などは逆直行変換・逆量子化部202に出力される。復号されるデータは、SPS(Sequence Parameter Set:シーケンスヘッダ)やPPS(Picture Parameter Set:ピクチャヘッダ)等の各種ヘッダー情報と、ピクチャ内のMB毎の、予測モードや動きベクトル、差分係数情報のデータ等である。
逆直交変換・逆量子化部202は、可変長復号部201からの出力信号に対して逆量子化処理を行う。逆直交変換・逆量子化部202は、逆量子化された出力信号に対して逆直交変換処理を行い、残差信号を生成する。残差信号は復号画像生成部211に出力される。
予測モード判定部203は、MB毎に、フレーム内符号化、前方向予測符号化、後方向予測符号化、双方向予測符号化、ダイレクトモードの何れの予測モードが使われているかを復号されたデータから読込み、判定する。実際には、ブロック分割サイズ等も、この予測モードの中に含まれている。
MBの予測モードが決まると、予測モードに応じた復号処理が行われる。フレーム内符号化の場合、イントラ予測部204は、イントラ予測のモードを読込み、イントラ予測を行う。
イントラ予測部204は、イントラ予測の方向などを復号し、周辺画素計算を行い、イントラ予測を行ってブロック画像を復号する。復号した画像は、被参照ピクチャ内のブロックであれば、フレームメモリ212の復号対象ブロックの位置に記録され、次に復号するブロックで参照されることも可能となる。
インター予測であった場合、差分ベクトル取得部205は、復号対象ブロックの差分ベクトルを取得する。
予測ベクトル決定部206は、ダイレクトモードの場合、復号済のcolPic(co-located Picture)の復号処理で蓄積された動きベクトルメモリ209の中から、動きベクトルmvCol(motion vector of the co-located macroblock)を読み出す。予測ベクトル決定部206は、mvColに対してスケーリングを行ってダイレクトベクトルを計算する。
予測ベクトル決定部206は、既に復号済みの周辺ブロックの動きベクトルを動きベクトルメモリ209から読み出し、予測ベクトルを決定する。
動きベクトル処理制御部207は、取得した差分ベクトルの参照先情報及び/又は予測ベクトルの参照先情報に基づいて、動きベクトルの復号処理を制御する。
動きベクトル決定部208は、差分ベクトルと予測ベクトルとを加算することで、動きベクトルを決定する。決定された動きベクトルは、動きベクトルメモリ209に書き込まれたり、動き補償部210に通知されたりする。
動きベクトルメモリ209は、復号済みブロックの動きベクトルや動きベクトルの参照先を示す参照先情報を記憶する。動きベクトルメモリ209は、例えば記憶部である。
動き補償部210は、計算されたダイレクトベクトル、又は決定された動きベクトルと、フレームメモリ212から取得した参照画像とに基づいて動き補償を行う。
復号画像生成部211は、イントラ予測部204又は動き補償部210から出力される予測画像と、逆直交変換・逆量子化部202から出力される残差信号とを加算し、復号画像を生成する。生成された復号画像は表示部に表示されたり、フレームメモリ212に出力されたりする。
フレームメモリ212は、ローカルデコードが画像を記憶する。また、フレームメモリ212は、他視点の参照画像を記憶してもよい。
<動作>
次に、実施例2における動画像復号装置200の動作について説明する。図8は、実施例2における動画像復号処理の一例を示すフローチャートである。
図8に示すステップS201で、可変長復号部201は、入力ストリームに対して、可変長復号を行う。
ステップS202で、予測モード判定部203は、復号したデータの中から復号対象ブロックの予測モードを読み出し、判定する。
ステップS203で、差分ベクトル取得部205は、復号対象ブロックの差分ベクトルを予測モード判定部203から取得する。
ステップS204で、動きベクトル処理制御部207は、復号対象ブロックに対し、MVC復号をするか否かを判定する。MVC復号をすれば(ステップS204−YES)ステップS205に進み、MVC復号をしなければ(ステップS204−NO)ステップS208に進む。
ステップS205で、動きベクトル処理制御部207は、復号対象ブロックの動きベクトルが視点間予測を示す否かを判定する。視点間予測を示す否かは、復号対象ブロックの参照先情報が視点内のピクチャを指すか視点間のピクチャを指すかにより判断できる。
動きベクトルが視点間予測を示せば(ステップS205−YES)ステップS206に進み、動きベクトルが視点間予測を示さなければ(ステップS205−NO)ステップS208に進む。
ステップS206で、動きベクトル処理制御部207は、予測ベクトル決定部206により決定された予測ベクトルPMVが視点間予測を示す否かを判定する。予測ベクトルPMVが視点間予測を示せば(ステップS206−YES)ステップS207に進み、予測ベクトルPMVが視点間予測を示さなければ(ステップS206−NO)ステップS208に進む。
ステップS207で、動きベクトル処理制御部207は、動きベクトルの復号処理を制御する。
ステップS208で、イントラ予測部204、動き補償部210、復号画像生成部211などは、MBデータを復号する。
ステップS209で、動画像復号装置200は、全てのMBに対して復号処理を行ったかを判定する。全てのMBの処理が終了していれば(ステップS209−YES)復号処理を終了し、全てのMBの処理が終了していなければ(ステップS209−NO)ステップS201に戻る。
以上、実施例2によれば、動きベクトルの復号処理において、実施例1における符号化処理の逆の順序で復号することで、動きベクトルの符号量を削減した符号化データを適切に復号することができる。
[実施例3]
次に、実施例3における動画像符号化装置について説明する。実施例3では、符号化対象ブロックbCurrの動きベクトルの参照先(ref_idx_Curr)と予測ベクトルの参照先(ref_idx_X)との関係によって、CABACのコンテキストを変更する。
<構成>
図9は、実施例3における動画像符号化装置300の構成の一例を示すブロック図である。図9に示す構成で、図4に示す構成と同様のものは同じ符号を付し、その説明を省略する。よって、以下では、コンテキスト変更部301、可変長符号化部302を主に説明する。
コンテキスト変更部301は、動きベクトルの可変長符号化を、符号化対象ブロックbCurrの動きベクトルの参照先(ref_idx_Curr)と予測ベクトルの参照先(ref_idx_X)との値の関係によって、コンテキストを変更する。なお、参照先ref_idx_XのXは、周辺ブロックのbA、bB、bCなどのいずれかである。
一般に、視点間参照か視点内参照かの参照先の違いによる動きベクトルの傾向は、図5に示したような相関関係になる。よって、コンテキスト変更部301は、動きべクトルの可変長符号化に対し、動きベクトルの相関が高い場合は、0ベクトルに短い符号を割り当てる符号化処理に変更する。
例えば、H.264以降の符号化においては、コンテキスト適応型2値算術符号化(CABAC)という算術符号により、ヘッダー情報以外のMBレイヤの符号化が行われている。
CABACに関しては、H.264の規格書の9.3章CABAC parsing process for slice dataに記載されている。詳しくは、Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC Video Compression Standard , IEEE TRANSACTION ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, Vol13, No.7, JULY 2003を参照されたい。
CABACは、簡単に説明すると、以下の処理により符号化される。
(1)バイナリ化(0と1での表現化)
(2)コンテキストモデリング
(3)バイナリ算術符号
コンテキスト変更部301は、(2)の処理を制御する。(2)の処理のコンテキストモデリングは、シンボルの頻度分布表であって、各要素のバイナリ化の傾向的特徴を判断することで異なる頻度分布表を用いる。かつ、この頻度分布表は、コンテキストモデル毎に処理結果に応じて適応的に変化していく。
例えば、図5に示したように、動きベクトルの相関に偏りがある場合には、その偏りがある要因毎に、コンテキストモデルを作成すれば、より効率的なCABAC符号化が可能となる。
図10は、H.264におけるCABACのコンテキストモデルの要素表を示す図である。図10に示すように、Slice_type(I-Slice、P-Slice、B-Slice)毎に、MBタイプ(mb_type)や動きベクトル成分(mvd)、参照ピクチャ番号(ref_idx)や量子化コード(mb_qp_delta)、イントラ予測モード(intra_pred_mode)、ブロックの有効無効(codec_block_pattern)、直交変換係数(significant_coeff_flag)のなどのシンタックスエレメント毎に、コンテキストモデルが定められている。
これらに、例えば、ref_idx_Currとref_idx_Xとが同じ参照先を示すか否かなどの判断を加え、その相関の特徴を加える事により、コンテキストモデルを変更する事が可能となる。
例えば、図10に示すコンテキストモデルの要素(ctxIdx)を増やす。動きベクトルのコンテキストに関しては、図10に示す水平成分の差分ベクトルには40−46番、垂直成分の差分ベクトルには47−53番のコンテキスト番号(ctxIdx)が、H.264においては振られている。
動きベクトルに関するコンテキスト記載方法に関しては、H.264の規格書の9.3.3.1.1.7に記載されている。本実施例でも、規格書に沿うものとする。H.264では、40−46もしくは47−53の各7種類のctxIdxが振られていたが、図5の判断により、更に2条件で分割(ref_idx_Curr:視点間、ref_idx_X:視点間であるか、それ以外)、もしくは3条件で分割(ref_idx_Curr:視点間、ref_idx_X:視点間であるか、ref_idx_Curr:視点内、ref_idx_X:視点内であるか、それ以外)して、コンテキストモデルを分けることが考えられる。
例えば、垂直ベクトルの偏りだけに注目する。この場合、47−53番のctxIdxである現状のコンテキストモデルを、符号化対象ブロックbCurrの動きベクトルの参照先(ref_idx_Curr)と予測ベクトルの参照先(ref_idx_X:Xは周辺ブロックのA、B、Cなどのいずれか)の値の関係によって、更に増やすことが考えられる。
ref_idx_Currとref_idx_Xとが共に視点間参照である場合のみを別管理としてコンテキストモデルを倍に増やす場合は、垂直成分の差分ベクトルに対し、例えば、2倍のctxIdxが与えられる。
図11は、実施例3におけるコンテキストモデルの要素表(その1)の例を示す図である。図11に示すように、垂直成分の差分ベクトルには、47−53番、277−283番のコンテキストモデルが割り当てられる。これにより、2倍のコンテキストモデルを用いることができる。
さらに、ref_idx_Currとref_idx_Xとが共に視点内参照である場合も別途分けて3倍に増やす場合には、垂直成分の差分ベクトルに対し、3倍のctxIdxが与えられる。
図12は、実施例3におけるコンテキストモデルの要素表(その2)の例を示す図である。図12に示すように、垂直成分の細分ベクトルに対し、47−53番、277−290番のコンテキストモデルが割り当てられる。これにより、3倍のコンテキストモデルを用いることができる。
上記のように、従来のctxIdxの最大番号以降にインデックスを追加してもよいし、例えば47−53を47−60の様に、mvd(vertical)のctxIdxを連番にし、mvd(horizontal)のctxIdxの番号を61番以降に振りなおして要素表を変更してもよい。水平ベクトルのctxIdxを増やす場合も同様である。
コンテキストモデルは、ctxIdx毎に初期化に必要な変数mとnを持つ。このm,nの値については、例えばH.264の規格書9.3.1.1の初期化の章に詳細は記載されているが、バイナリ化した信号の、0と1の値の偏り具合の初期値を示す変数である。
変数m,nに関しては、mvdのctdIdxを増加した場合も、例えば元のctxIdxの47−53にそれぞれ用いられていたm、nの値を、277−283や284−290のそれぞれに用いてもよい。コンテキストモデルの頻度分布は、各ctxIdxのバイナリ変数の発生確率により適応的に変化して行くので、次の条件により区別する。
(1)ref_idx_Curr:視点間参照 かつ ref_idx_X:視点間参照
(2)ref_idx_Curr:視点内参照 かつ ref_idx_X:視点内参照
(3)ref_idx_Curr:視点内参照、ref_idx_X:視点間参照 もしくは、
ref_idx_Curr:視点間参照、ref_idx_X:視点内参照
上記の条件によって、差分ベクトルの偏りが異なってくるので、各々頻度分布が変更していき、各条件に適したCABAC符号化を行うことが可能となる。
特に、(1)の条件の視点間参照ベクトルである場合は、垂直方向の動きベクトルは殆ど0ベクトルとなり、差分ベクトルもほぼ0ベクトルとなる。よって、視点間参照ベクトルか否かによりベクトルの傾向は大きく異なると考えられるので、このコンテキストの変更(ctxIdxの追加)は、効果がある。
<動作>
次に、実施例3における動画像符号化装置300の動作について説明する。図13は、実施例3における動画像符号化処理の一例を示すフローチャートである。図13に示すステップS301〜S306、S309の処理は、図6に示すステップS101〜S106、S109の処理とそれぞれ同様であるため、その説明を省略する。
ステップS307で、コンテキスト変更部301は、符号化対象ブロックと周辺ブロックのそれぞれの参照先の関係によって、垂直ベクトルのコンテキストを変更する。コンテキスト変更部301は、例えば、図5に示すような関係で場合分けを行って、コンテキストを変更する。これにより、それぞれの関係に適した頻度分布が生成されて符号化効率を上げることができる。
ステップS308で、可変長符号化部302は、MBの量子化値を可変長符号化する。可変長符号化部302は、差分ベクトルに対し、コンテキスト変更部301により変更されたコンテキストに対応するコンテキストモデルを用いてCABAC符号化を行う。
以上、実施例3によれば、符号化対象ブロック(bCurr)及び周辺ブロック(bX)それぞれの参照先(ref_idx_bCurr,ref_idx_bX)の関係によって、差分ベクトルの符号化の可変長符号化傾向を変更する。この概念は、例えば、CABACのコンテキストを変更するという概念である。従来では、差分ベクトルの符号化の可変長符号化傾向に応じて、CABACのコンテキストを変更するという概念が存在しなかったので、効率の良い動きベクトルの符号化を実現することができていなかった。
しかし、実施例3で説明したように、符号化対象ブロック(bCurr)及び周辺ブロック(bX)それぞれの参照先(ref_idx_bCurr,ref_idx_bX)の関係によって、コンテキストモデルを変更し、それぞれの関係に適した頻度分布を用いて符号化効率を上げることができる。
[実施例4]
次に、実施例4における動画像復号装置について説明する。実施例4では、実施例3の動画像符号化装置300で符号化されたデータを復号する。
<構成>
図14は、実施例4における動画像復号装置400の構成の一例を示すブロック図である。図14に示す構成で、図7に示す構成と同様のものは同じ符号を付し、その説明を省略する。よって、以下では、可変長復号部401、コンテキスト変更部402を主に説明する。
可変長復号部401は、入力されたストリームに対し、可変長復号処理を行い、予測誤差信号などを取得する。復号されるデータは、SPS(シーケンスヘッダ)やPPS(ピクチャヘッダ)等の各種ヘッダー情報と、ピクチャ内のMB毎の、予測モードや動きベクトル、差分係数情報のデータ等である。
例えば、可変長復号部401は、CABACに対応する復号処理を行い、コンテキスト変更部402によりコンテキストモデルの頻度分布が更新される。
コンテキスト変更部402は、実施例3で説明したコンテキスト変更部301と同様の処理を行い、CABACのコンテキストモデルを制御する。コンテキスト変更部402は、差分ベクトル取得部205から取得した動きベクトルの参照先と予測ベクトル決定部206から取得した予測ベクトルの参照先の結果を可変長復号部401にフィードバックする。これにより、可変長復号部401のコンテキストモデルの頻度分布を適切に更新することができる。
<動作>
次に、実施例4における動画像復号装置400の動作について説明する。図15は、実施例4における動画像復号処理の一例を示すフローチャートである。図15に示すステップS402〜S406、S408〜S409の処理は、図8に示すステップS202〜S206、S208〜S209の処理とそれぞれ同様であるため、その説明を省略する。
ステップS401で、可変長復号部401は、例えば、CABAC符号化に対応する復号方式で、入力されたストリームを復号する。CABACのコンテキストモデルの頻度分布は、コンテキスト変更部402により更新される。
ステップS407で、コンテキスト変更部402は、復号対象ブロックの動きベクトルと予測ベクトルとの参照先に応じて、例えば、垂直ベクトルのコンテキストのコンテキストモデルを更新するよう制御する。
以上、実施例4によれば、動きベクトルの復号処理において、実施例3における符号化処理の逆の順序で復号することで、動きベクトルの符号量を削減した符号化データを適切に復号することができる。
[実施例5]
次に、実施例5における動画像符号化装置について説明する。実施例5では、予測ベクトルそのものを変更する実施例である。
<構成>
図16は、実施例5における動画像符号化装置500の構成の一例を示すブロック図である。図16に示す構成で、図4に示す構成と同様のものは同じ符号を付し、その説明を省略する。よって、以下では、予測ベクトル補正部501を主に説明する。
予測ベクトル補正部501は、符号化対象ブロック(bCurr)及び/又は周辺ブロック(bX)それぞれの参照先(ref_idx_bCurr,ref_idx_bX)に基づいて、予測ベクトルそのものを補正する。以下、予測ベクトルの補正の例について説明する。
(補正例1)
予測ベクトル補正部501は、符号化対象ブロックの動きベクトルVbCurr=(VbCurrx,VbCurry)や、予測ベクトルPMV=(PMVx,PMVy)などの条件により、予測ベクトルの補正を判定する。例えば、予測ベクトル補正部501は、符号化対象ブロックの動きベクトルの参照先ref_idx_Currが、視点間参照であるか否かによって以下の制御を行う。
・ref_idx_Currが視点間参照の場合
予測ベクトル補正部501は、PMVy=0と補正する。
・ref_idx_Currが視点間参照でない場合
予測ベクトル補正部501は、PMVyの補正をしない。
これにより、簡単な処理で、動きベクトルの差分をより小さくすることが可能である。なお、この補正例1は、実施例3のコンテキストモデルの変更と組み合わせても、動きベクトルの差分をより小さくする効果を奏することができる。
(補正例2)
符号化対象ブロックの動きベクトルが視点間参照である場合には、動きベクトルの垂直成分がほぼ0になるだけでなく、水平成分にも一定の傾向が存在する場合がある。
例えば、視点間参照の動きベクトルの水平成分は、ある固定値Aに近いものになるという傾向がある。立体映像に関しては、左右の映像を飛び出させる為に、左右の画像に水平方向の隔たりを持たせる。この隔たりは視差と呼ばれる。補正例2では、この視差が一つの符号化画像内では大きく変動しないという傾向を用いる。
予測ベクトル補正部501は、符号化対象ブロックの動きベクトルVbCurr=(VbCurrx,VbCurry)や、PMV=(PMVx,PMVy)などの条件により、予測ベクトルの補正を判定する。例えば、予測ベクトル補正部501は、符号化対象ブロックの動きベクトルの参照先ref_idx_Currが、視点間参照であるか否かによって以下の制御を行う。
・ref_idx_Currが視点間参照の場合
予測ベクトル補正部501は、PMVx=Aと補正する。
・ref_idx_Currが視点間参照でない場合
予測ベクトル補正部501は、PMVxの補正をしない。
これにより、動きベクトルの差分をより小さくする効果を奏することができる。予測ベクトル補正部501は、このAについて、既に復号済のピクチャのうち視点間参照であったブロックの動きベクトルを用いて、以下の式(3)により求めることができる。
Figure 2015046920
num_interView:視点間参照のブロックの数
予測ベクトル補正部501は、例えば、現ピクチャの内、これまで処理した視点間参照の動きベクトルの平均をAとする事も可能である。また、予測ベクトル補正部501は、使用する視点間参照のブロック数を、参照可能なもの全てとするのではなく、ある一定の範囲内のものと制限することも可能である。
また、予測ベクトル補正部501は、1ピクチャ内を所定領域に分割し、所定領域毎にAを算出するようにしてもよい。また、予測ベクトル補正部501は、Aを平均値とするのではなく、視点間参照の動きベクトルの代表値としてもよい。このように、Aの求め方のバリエーションは様々考えられる。また、この補正例2は、実施例3や補正例1との組合せも可能である。
<動作>
次に、実施例5における動画像符号化装置500の動作について説明する。まず、補正例1による予測ベクトルの補正を行う場合の動画像符号化処理について説明する。
(補正例1)
図17は、実施例5における動画像符号化処理(その1)の一例を示すフローチャートである。図17に示すステップS501〜S506、S508〜S509の処理は、図6に示すステップS101〜S106、S108〜S109の処理とそれぞれ同様であるため、その説明を省略する。なお、ステップS506の判定は行われなくてもよい。
ステップS507で、予測ベクトル補正部501は、符号化対象ブロックの動きベクトルの参照先ref_idx_Currが、視点間予測を示す場合、予測ベクトルPMVの垂直ベクトル成分を0に補正する。これにより、符号化対象ブロックの動きベクトルと補正された予測ベクトルとで差分ベクトルが生成される。
(補正例2)
図18は、実施例5における動画像符号化処理(その2)の一例を示すフローチャートである。図18に示すステップS601〜S606、S608〜S609の処理は、図6に示すステップS101〜S106、SS108〜109の処理とそれぞれ同様であるため、その説明を省略する。なお、ステップS606の判定は行われなくてもよい。
ステップS607で、予測ベクトル補正部501は、符号化対象ブロックの動きベクトルの参照先ref_idx_Currが、視点間予測を示す場合、予測ベクトルPMVの水平ベクトル成分をAに補正する。Aの算出処理は、図19を用いて後述する。これにより、符号化対象ブロックの動きベクトルと補正された予測ベクトルとで差分ベクトルが生成される。
(Aの算出処理)
図19は、実施例5におけるAの算出処理の一例を示すフローチャートである。ステップS701で、予測ベクトル補正部501は、次のパラメータの初期化を行う。
num_interView=0
ave_interView=0
ここで、ave_interViewは、視点間予測を行う動きベクトルの成分毎の累積値である。
ステップS702で、予測ベクトル補正部501は、符号化対象ブロックの動きベクトルVbCurrを取得する。
ステップS703で、予測ベクトル補正部501は、符号化対象ブロックの動きベクトルの参照先ref_idx_Currが、視点間予測を示すか否かを判定する。視点間予測であれば(ステップS703−YES)ステップS705に進み、視点間予測でなければ(ステップS703−NO)ステップS705に進む。
ステップS704で、予測ベクトル補正部501は、各パラメータを更新する。
num_interView++
ave_interView+=VbCurr
ステップS705で、予測ベクトル補正部501は、1ピクチャの処理が終了したかを判定する。1ピクチャの処理が終了していれば(ステップS705−YES)ステップS706に進み、1ピクチャの処理が終了していなければ(ステップS705−NO)ステップS702に戻る。
ステップS706で、予測ベクトル補正部501は、次の式(4)によりAを算出する。
A=ave_interView/num_interView ・・・式(4)
なお、ステップS706は、ステップS705の前に行われてもよい。
以上、実施例5によれば、符号化対象ブロックの動きベクトルの参照先が、視点間予測であるか否かに基づいて予測ベクトルを補正することで、動きベクトルの符号量を削減することができる。
[実施例6]
次に、実施例6における動画像復号装置について説明する。実施例6では、予測ベクトルそのものを変更して復号処理を行う実施例である。
<構成>
図20は、実施例6における動画像復号装置600の構成の一例を示すブロック図である。図20に示す構成で、図7に示す構成と同様のものは同じ符号を付し、その説明を省略する。よって、以下では、予測ベクトル補正部601を主に説明する。
予測ベクトル補正部601は、動画像符号化装置500の予測ベクトル補正部501の補正処理と同様の処理を行う。例えば、予測ベクトル補正部601は、復号対象ブロックの動きベクトルの参照先が視点間参照か否かで、予測ベクトルの成分を補正する。
<動作>
次に、実施例6における動画像復号装置600の動作について説明する。図21は、実施例6における動画像復号処理の一例を示すフローチャートである。図21に示すステップS801〜S806、S808〜S809の処理は、図8に示すステップS201〜S206、S208〜S209の処理とそれぞれ同様であるため、その説明を省略する。なお、ステップS806の判定は行われなくてもよい。
ステップS807で、予測ベクトル補正部601は、復号対象ブロックの動きベクトルの参照先に応じて、予測ベクトルの成分を補正する。この補正処理は、動画像符号化装置500と同様の補正処理を行う。
以上、実施例6によれば、動きベクトルの復号処理において、実施例5における符号化処理の逆の順序で復号することで、動きベクトルの符号量を削減した符号化データを適切に復号することができる。
[実施例7]
次に、実施例7における動画像符号化装置について説明する。実施例7では、HEVCにおける符号化の実施例を示す。HEVCに関しては、従来技術で説明したように、指標pmvIdxにより、予測ベクトル候補は明示的に送信される。指標pmvIdxは、予測ベクトルの識別子である。
<構成>
実施例7における動画像符号化装置の構成は、実施例5における動画像符号化装置の構成と同様であるため、動画像符号化装置500を用いて説明する。実施例7では、予測ベクトル決定部112は、時間的及び空間的に隣接する周辺ブロックの動きベクトルから予測ベクトルの候補を決定する。予測ベクトル補正部501は、決定された予測ベクトル候補の指標pmIdxを小さい番号が選択されるように並べ替えて、差分ベクトル算出部113に出力する。
差分ベクトル算出部113が、符号化対象ブロックの動きベクトルと予測ベクトルの候補と差分を取り、差分が一番小さい予測ベクトルの候補の指標pmvIdxと差分とを可変長符号化部103に出力する。
ここで、HEVCのMV Competitionには以下に説明するような問題がある。図22は、HEVCのMV Competitionにおける問題点を説明するための図である。
図22に示す時間方向の動きベクトルVbCurrの参照先ピクチャと予測ベクトルPMVの参照先ピクチャが異なる場合でも、予測ベクトルPMVのスケーリングを行う処理がある。以下、スケーリング処理をMV Scalingとも呼ぶ。
スケーリングは、動きベクトルVbCurrの参照元ピクチャ及び参照先ピクチャと、予測ベクトルPMVの参照元ピクチャ及び参照先ピクチャの時間関係を考慮して、予測ベクトルPMVを時間配分する処理である。
図22に示す例では、動きベクトルVbCurrの参照元と参照先の距離をtb、Vcolの参照元と参照先の距離をtdとすると、以下の式(5)によりスケーリングされる。
PMV=Vcol×(tb/td) ・・・式(5)
上記式(5)により、MV Scalingの計算式を表すことが可能である。
しかし、例えば、多視点映像符号化(MVC)で、図22に示す太点線のように視点間参照を行う場合には、視点間参照は、同一時刻のピクチャしか参照できない。よって、この場合に、PMVのMV Scalingは時間差が0(tb=0)であることと上記Scalingの式により、スケーリング後のPMVは常に0ベクトルとなる。そのため、MV Scalingの計算が適切にできず、視点間参照の場合に指標pmvIdxを適切に利用できない。
一方、実施例7におけるHEVCの符号化処理では、符号化対象ブロックが視点間参照を行う場合であっても、適切な指標pmvIdxが選択されるようにし、符号化効率を上げることができる。
HEVCのおおよその処理の流れは、以下の通りである。
(1)ピクチャの符号化開始時に、そのピクチャで参照可能な参照ピクチャリスト(refPicList)が決定される。
(2)符号化対象ブロックの動きベクトルVbCurrが求められる。動きベクトルの持つ参照ピクチャ番号(ref_idx_Curr)により参照ピクチャがわかる。ref_idx_Curr情報は、動きベクトル情報として、符号化対象ブロックの位置や動きベクトルの成分等と一緒に動きベクトルメモリ111に蓄積される。
(3)周辺ブロックから予測ベクトルPMVが求められる。この際、PMVの持つref_idxにより参照ピクチャがわかる。
例えば、TMuC(Test Model under Consideration)と呼ばれる、HEVCのリファレンスソフトでは、以下の様にpmvIdxが定義されている。
pmvIdx=0:PMV= median(VbA, VbB, VbC)
pmvIdx=1:PMV=VbA
pmvIdx=2:PMV=VbB
pmvIdx=3:PMV=VbC
pmvIdx=4:PMV=Vcol
HEVCのMV Competitionでは、VbCurrの参照先ピクチャとPMVの参照先ピクチャとが異なる場合には、スケーリングが行われる。例えば、VbCurrの参照元ピクチャ(符号化対象ピクチャ)及び参照先ピクチャと、PMVの参照元ピクチャ及び参照先ピクチャの時間関係を考慮して、PMVの動きベクトルは、Scalingによる補正が行われる。
多視点映像符号化(MVC)で、視点間参照を行う場合には、視点間参照は問題点で説明したように、同一時刻のピクチャしか参照できない。この場合、PMVのMV Scalingは、時間差が0であることによりふさわしくない。実施例7では、多視点(二視点以上)の符号化の効率を向上させる為に、MV Scalingの概念に以下の制御を施す。
予測ベクトル補正部501は、各予測ベクトルPMVの候補の参照先及び動きベクトルの成分によってpmvIdxの生成方法を変更する。予測ベクトル決定部112や予測ベクトル補正部501は、具体的には、以下の処理順で、pmvIdxを生成する。
(1)周辺ブロックの動きベクトルの参照ピクチャ位置は、動きベクトルメモリ111に蓄積される時点で判明しているので、動きベクトルメモリ111から参照ピクチャ位置の値が読み込まれる。その値は、それぞれref_idx_A,ref_idx_B,ref_idx_C,ref_idx_colMBとする。
図23は、各ブロックのブロック名、参照位置、動きベクトルを示す図である。例えば、ブロック21のブロック名は「bA」、参照位置は「ref_idx_A」、動きベクトルは「VbA」である。
なお、medianの動きベクトルは、x,yの成分毎に求めるので必ずしも実在するベクトルとはならないが、仮にref_idx_mとする。ref_idx_mの定義は、以下の通りである。
if (VbA,VbB,VbC が同じ参照先) {
pmvIdx_m = ref_idx_A
} else if (VbAが有効) {
pmvIdx_m = ref_idx_A
} else if (VbBが有効) {
pmvIdx_m = ref_idx_B
} else if (VbCが有効) {
pmvIdx_m = ref_idx_C
} else {
pmvIdx_m = refPicListの最大値
}
(2)現ブロックの動きベクトルを処理し、ref_idx_Currが把握される。
(3)従来のpmvIdxの順は、デフォルトの設定順とする。
(4)ref_idx_bCurrの動きベクトルの参照先情報と、予測ベクトルの参照先情報とを比較することで、以下の手順により指標pmvIdxの並び変えが行われる。
(4−1)同じ参照ピクチャ(ref_idx)を持つものにより小さいpmeIdxが割り振られる。
(4−2)ref_idxが等しい場合は、動きベクトルの垂直成分が成分Bに近い順に、pmvIdxが割り振られる。
(4−3)ref_idx及び動きベクトルの垂直成分が等しい場合は、動きベクトルの水平成分がAに近い順にpmvIdxが割り振られる。
(4−4)(4−1)〜(4−3)の動きベクトル情報が全て同じ場合は、median,bA,bB,bC,colMBの順に小さいpmvIdxが割り振られる。
ここで、予測ベクトル補正部501は、Bについて、0を設定してもよいが、特にこれに限定されることなく、ref_idx_Currと同じ参照先を予測する動きベクトルの垂直成分の代表値を求めてもよい。
また、予測ベクトル補正部501は、Aについて、視点間参照の動きベクトルの平均を算出しているが、これに限定されることなく、ref_idx_Currと同じ参照先を予測する動きベクトルの水平成分の代表値を求めてもよい。
予測ベクトル補正部501は、前述した(4−1)〜(4−4)の一連の処理を実施することで、より差分ベクトルを小さくするベクトルを予測ベクトルとして用いる可能性が高くなり、動きベクトルの符号量を削減することができる。
<動作>
次に、実施例7における動画像符号化装置の動作について説明する。図24は、実施例7における動画像符号化処理の一例を示すフローチャートである。図24に示すステップS901、S902、S905、S906は、図6に示すステップS101、S102、S108、S109とそれぞれ同様の処理を行うので、説明を省略する。
ステップS903で、予測ベクトル補正部501は、符号化対象ブロックの動きベクトルの参照先と、予測ベクトルの参照先とを比較する。また、予測ベクトル補正部501は、符号化対象ブロックの動きベクトルと予測ベクトルとの垂直成分、及び/又は水平成分の比較を行う。予測ベクトル補正部501は、比較結果に基づいて、予測ベクトルの候補の指標pmvIdxを更新する。
ステップS904で、差分ベクトル算出部113は、符号化対象ブロックの動きベクトルと予測ベクトルの候補との差分を算出し、差分が一番小さいpmvIdxを選択する。このpmvIdxが可変長符号化部103で符号化される。
これにより、各予測ベクトルPMVの候補の参照先及び動きベクトルの成分によってpmvIdxの並べ替えを行うことで、値が小さいpmvIdxが選択される可能性が高くなり、符号量を削減することができる。pmvIdxは、値が小さいほど短い符号になる符号化方式で、可変長符号化部103により符号化される。
[実施例8]
次に、実施例8における動画像復号装置について説明する。実施例8では、HFVC復号を行ない、実施例7における動画像符号化装置で符号化されたストリームを復号する。
<構成>
実施例8における動画像復号装置の構成は、実施例6における動画像復号装置の構成と同様であるため、動画像符号化装置600を用いて説明する。ここでは、差分ベクトル取得部205は、復号された予測ベクトルの指標pmvIdxを取得し、予測ベクトル補正部601に出力する。
予測ベクトル補正部601は、実施例7で説明した並べ替え規則に従って、予測ベクトル決定部206に決定された予測ベクトルの候補の指標を並べ替えておく。予測ベクトル補正部601は、差分ベクトル取得部205から取得した指標pmvIdxを用いて、並べ替え後の予測ベクトルの候補リストから予測ベクトルを特定し、特定した予測ベクトルを動きベクトル決定部208に出力する。
<動作>
次に、実施例8における動画像復号装置の動作について説明する。図25は、実施例8における動画像復号処理の一例を示すフローチャートである。図25に示すステップS1001、S1002、S1006、S1007は、図8に示すステップS201、S202、S208、S209とそれぞれ同様の処理を行うため、その説明を省略する。
図25に示すステップS1003で、差分ベクトル取得部205は、復号されたデータの中から、予測ベクトルの指標pmvIdxを取得する。
ステップS1004で、予測ベクトル補正部601は、予測ベクトルの候補の指標pmvIdxを、各予測ベクトルPMVの候補の参照先及び動きベクトルの成分などによって並べ替える。予測ベクトル補正部601は、並べ替えた後のpmvIdxから予測ベクトルを特定する。
ステップS1005で、動きベクトル決定部208は、特定された予測ベクトルを用いて、復号対象ブロックの動きベクトルを算出する。
以上、実施例8によれば、動きベクトルの復号処理において、実施例7における符号化処理の逆の順序で復号することで、動きベクトルの符号量を削減した符号化データを適切に復号することができる。
[変形例]
図26は、画像処理装置700の構成の一例を示すブロック図である。画像処理装置700は、実施例で説明した動画像符号化装置、又は動画像復号装置の一例である。図26に示すように、画像処理装置700は、制御部701、主記憶部702、補助記憶部703、ドライブ装置704、ネットワークI/F部706、入力部707、表示部708を含む。これら各構成は、バスを介して相互にデータ送受信可能に接続されている。
制御部701は、コンピュータの中で、各装置の制御やデータの演算、加工を行うCPUである。また、制御部701は、主記憶部702や補助記憶部703に記憶されたプログラムを実行する演算装置であり、入力部707や記憶装置からデータを受け取り、演算、加工した上で、表示部708や記憶装置などに出力する。
主記憶部702は、ROM(Read Only Memory)やRAM(Random Access Memory)などであり、制御部701が実行する基本ソフトウェアであるOSやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
補助記憶部703は、HDD(Hard Disk Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
ドライブ装置704は、記録媒体705、例えばフレキシブルディスクからプログラムを読み出し、記憶装置にインストールする。
また、記録媒体705に、所定のプログラムを格納し、この記録媒体705に格納されたプログラムはドライブ装置704を介して画像処理装置700にインストールされる。インストールされた所定のプログラムは、画像処理装置700により実行可能となる。
ネットワークI/F部706は、有線及び/又は無線回線などのデータ伝送路により構築されたLAN(Local Area Network)、WAN(Wide Area Network)などのネットワークを介して接続された通信機能を有する周辺機器と画像処理装置700とのインターフェースである。
入力部707は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、表示部708の表示画面上でキーの選択等を行うためのマウスやスライスパット等を有する。また、入力部707は、ユーザが制御部701に操作指示を与えたり、データを入力したりするためのユーザインターフェースである。
表示部708は、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)等により構成され、制御部701から入力される表示データに応じた表示が行われる。なお、表示部708は、外部に設けられてもよく、その場合は、画像処理装置700は、表示制御部を有する。
このように、前述した実施例で説明した動画像符号化処理又は動画像復号処理は、コンピュータに実行させるためのプログラムとして実現されてもよい。このプログラムをサーバ等からインストールしてコンピュータに実行させることで、前述した画像符号化処理又は画像復号処理を実現することができる。
また、このプログラムを記録媒体705に記録し、このプログラムが記録された記録媒体705をコンピュータや携帯端末に読み取らせて、前述した動画像符号化処理又は動画像復号処理を実現させることも可能である。なお、記録媒体705は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。また、前述した各実施例で説明した動画像符号化処理又は動画像復号処理は、1つ又は複数の集積回路に実装してもよい。
なお、前述した各実施例では、特に2視点の立体映像であるステレオ立体視対応の符号化/復号方法に関して説明してきたが、3視点以上の多視点映像の場合であってもよい。よって、基本的に考え方は同じで、処理対象ブロックの参照先ピクチャと予測ベクトルの参照先ピクチャの各々の値を考慮して、より効率の良い動きベクトルの符号化/復号を実施することが可能であるのは、明らかである。
以上、実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。

Claims (9)

  1. 複数のブロックに分割された画像の符号化データを復号する動画像復号方法であって、
    記憶部に記憶される、復号済みブロックの動きベクトル及び該動きベクトルの参照先を示す参照先情報を含む動きベクトル情報を用いて、復号対象ブロックの動きベクトルに対する予測ベクトルを決定し、
    前記復号対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すか否かに応じて、前記予測ベクトルを用いる動きベクトルの可変長復号処理方法を変更し、
    選ばれた可変長復号処理方法で前記復号対象ブロックの動きベクトルを復号する動画像復号方法。
  2. 前記動きベクトルの可変長復号処理方法を変更する場合、
    前記復号対象ブロックの動きベクトルの参照先情報と、前記予測ベクトルの参照先情報とが、ともに視点間の参照画像を示すか否かにより、前記可変長復号処理方法を変更する請求項1記載の動画像復号方法。
  3. 前記動きベクトルの可変長復号処理方法を変更する場合、
    前記可変長復号処理方法がコンテキスト適応型2値算術符号化方式に対応する復号方式である場合、前記復号対象ブロックの動きベクトルの参照先情報と、前記予測ベクトルの参照先情報とが視点間の参照画像を示すとき、コンテキストを変更する請求項1又は2記載の動画像復号方法。
  4. 前記動きベクトルの可変長復号処理方法を変更する場合、
    前記復号対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すとき、前記予測ベクトルの垂直成分を0にする請求項1又は2記載の動画像復号方法。
  5. 前記動きベクトルの可変長復号処理方法を変更する場合、
    前記復号対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すとき、前記予測ベクトルの水平成分を所定値にする請求項1又は2記載の動画像復号方法。
  6. 前記動きベクトルの可変長復号処理方法が、可変長復号された前記予測ベクトルの識別子から予測ベクトルを特定して動きベクトルを復号する場合、各予測ベクトルの候補の参照先情報及び各予測ベクトルの成分によって各予測ベクトルの識別子を並べ替える請求項1記載の動画像復号方法。
  7. 複数のブロックに分割された画像を符号化する動画像符号化方法であって、
    記憶部に記憶される、符号化済みブロックの動きベクトル及び動きベクトルの参照先を示す参照先情報を含む動きベクトル情報を用いて、符号化対象ブロックの動きベクトルに対する予測ベクトルを決定し、
    前記符号化対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すか否かに応じて、前記予測ベクトルを用いる動きベクトルの可変長符号化処理方法を変更し、
    選ばれた可変長符号化処理方法で前記符号化対象ブロックの動きベクトルを符号化する動画像符号化方法。
  8. 複数のブロックに分割された画像の符号化データを復号する動画像復号装置であって、
    復号済みブロックの動きベクトル及び該動きベクトルの参照先を示す参照先情報を含む動きベクトル情報を記憶する記憶部と、
    前記記憶部に記憶された動きベクトル情報を用いて、復号対象ブロックの動きベクトルに対する予測ベクトルを決定する決定部と、
    前記復号対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すか否かに応じて、前記予測ベクトルを用いる動きベクトルの可変長復号処理方法を変更する制御部と、
    選ばれた可変長復号処理方法で前記復号対象ブロックの動きベクトルを復号する復号部と、
    を備える動画像復号装置。
  9. 複数のブロックに分割された画像の符号化データを復号する動画像復号プログラムであって、
    記憶部に記憶される、復号済みブロックの動きベクトル及び該動きベクトルの参照先を示す参照先情報を含む動きベクトル情報を用いて、復号対象ブロックの動きベクトルに対する予測ベクトルを決定し、
    前記復号対象ブロックの動きベクトルの参照先情報が視点間の参照画像を示すか否かに応じて、前記予測ベクトルを用いる動きベクトルの可変長復号処理方法を変更し、
    選ばれた可変長復号処理方法で前記復号対象ブロックの動きベクトルを復号する、
    処理をコンピュータに実行させるための画像復号プログラム。
JP2014210516A 2014-10-15 2014-10-15 動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラム Expired - Fee Related JP5858119B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014210516A JP5858119B2 (ja) 2014-10-15 2014-10-15 動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014210516A JP5858119B2 (ja) 2014-10-15 2014-10-15 動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラム

Related Parent Applications (1)

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

Publications (2)

Publication Number Publication Date
JP2015046920A true JP2015046920A (ja) 2015-03-12
JP5858119B2 JP5858119B2 (ja) 2016-02-10

Family

ID=52672028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014210516A Expired - Fee Related JP5858119B2 (ja) 2014-10-15 2014-10-15 動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラム

Country Status (1)

Country Link
JP (1) JP5858119B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113170103B (zh) * 2018-12-07 2024-03-15 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09275578A (ja) * 1996-04-04 1997-10-21 Sharp Corp 多視点画像符号化装置および復号装置
WO2008053758A1 (fr) * 2006-10-30 2008-05-08 Nippon Telegraph And Telephone Corporation Procédé de codage d'image dynamique, procédé de décodage, leur dispositif, leur programme et support de stockage contenant le programme
WO2008053746A1 (fr) * 2006-10-30 2008-05-08 Nippon Telegraph And Telephone Corporation Procédé de génération d'informations de référence prédictives, procédé de codage et de décodage d'image dynamiques, leur dispositif, leur programme et support de stockage contenant le programme
JP2009502084A (ja) * 2005-07-18 2009-01-22 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュート 時間及び視点間参照映像バッファを活用した予測符号化/復号化装置及びその方法
JP2009508388A (ja) * 2005-09-21 2009-02-26 サムスン エレクトロニクス カンパニー リミテッド 多視点動映像を符号化及び復号化する装置及び方法
JP2009509454A (ja) * 2005-09-22 2009-03-05 サムスン エレクトロニクス カンパニー リミテッド 視差ベクトルの予測方法、その方法を利用して多視点動画を符号化及び復号化する方法及び装置
WO2012042895A1 (ja) * 2010-09-30 2012-04-05 パナソニック株式会社 立体映像符号化装置、立体映像撮影装置、および立体映像符号化方法
JP2012129951A (ja) * 2010-12-17 2012-07-05 Toshiba Corp 動画像復号装置及び動画像復号方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09275578A (ja) * 1996-04-04 1997-10-21 Sharp Corp 多視点画像符号化装置および復号装置
JP2009502084A (ja) * 2005-07-18 2009-01-22 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュート 時間及び視点間参照映像バッファを活用した予測符号化/復号化装置及びその方法
JP2009508388A (ja) * 2005-09-21 2009-02-26 サムスン エレクトロニクス カンパニー リミテッド 多視点動映像を符号化及び復号化する装置及び方法
JP2009509454A (ja) * 2005-09-22 2009-03-05 サムスン エレクトロニクス カンパニー リミテッド 視差ベクトルの予測方法、その方法を利用して多視点動画を符号化及び復号化する方法及び装置
WO2008053758A1 (fr) * 2006-10-30 2008-05-08 Nippon Telegraph And Telephone Corporation Procédé de codage d'image dynamique, procédé de décodage, leur dispositif, leur programme et support de stockage contenant le programme
WO2008053746A1 (fr) * 2006-10-30 2008-05-08 Nippon Telegraph And Telephone Corporation Procédé de génération d'informations de référence prédictives, procédé de codage et de décodage d'image dynamiques, leur dispositif, leur programme et support de stockage contenant le programme
WO2012042895A1 (ja) * 2010-09-30 2012-04-05 パナソニック株式会社 立体映像符号化装置、立体映像撮影装置、および立体映像符号化方法
JP2012129951A (ja) * 2010-12-17 2012-07-05 Toshiba Corp 動画像復号装置及び動画像復号方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113170103B (zh) * 2018-12-07 2024-03-15 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法

Also Published As

Publication number Publication date
JP5858119B2 (ja) 2016-02-10

Similar Documents

Publication Publication Date Title
JP5664762B2 (ja) 動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラム
JP7071453B2 (ja) 動き情報の復号化方法、符号化方法及び記録媒体
US10863193B2 (en) Buffer restriction during motion vector prediction for video coding
US11647219B2 (en) Image encoding and decoding method with merge flag and motion vectors
CN112956190B (zh) 仿射运动预测
JP6298140B2 (ja) 映像の復号化方法
JP6608275B2 (ja) ビデオコード化における視差ベクトル予測
KR101961889B1 (ko) 움직임 정보 저장 방법 및 이를 이용한 시간적 움직임 벡터 예측자 유도 방법
CN112740695A (zh) 使用间预测处理视频信号的方法和装置
KR102550448B1 (ko) 다시점 영상을 위한 움직임 벡터를 부호화/복호화하는 방법 및 그 장치
JP5821542B2 (ja) 動画像符号化装置、および動画像復号装置
JP5895469B2 (ja) 動画像符号化装置、および動画像復号装置
JP5983430B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法
JP5541364B2 (ja) 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置、画像復号プログラム、及び画像符号化プログラム
US20220060744A1 (en) Image encoding/decoding method and device, and recording medium in which bitstream is stored
JP2019022120A (ja) 動画像符号化装置、動画像符号化方法、動画像符号化用コンピュータプログラム、動画像復号装置及び動画像復号方法ならびに動画像復号用コンピュータプログラム
JP6032367B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法
JP5858119B2 (ja) 動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラム
US20130215966A1 (en) Image encoding method, image decoding method, image encoding device, image decoding device
JP5680778B2 (ja) 動画像符号化方法及び動画像復号化方法
CN118476225A (zh) 用于隐式地指示运动矢量预测值精度的方法和装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150811

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151005

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151130

R150 Certificate of patent or registration of utility model

Ref document number: 5858119

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees