JP2011091696A - 動きベクトル予測方法 - Google Patents

動きベクトル予測方法 Download PDF

Info

Publication number
JP2011091696A
JP2011091696A JP2009244661A JP2009244661A JP2011091696A JP 2011091696 A JP2011091696 A JP 2011091696A JP 2009244661 A JP2009244661 A JP 2009244661A JP 2009244661 A JP2009244661 A JP 2009244661A JP 2011091696 A JP2011091696 A JP 2011091696A
Authority
JP
Japan
Prior art keywords
motion vector
block
prediction
unit
pixel
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.)
Pending
Application number
JP2009244661A
Other languages
English (en)
Inventor
Hideki Takehara
英樹 竹原
Motoharu Ueda
基晴 上田
Masaki Goto
正樹 後藤
Hiroya Nakamura
博哉 中村
Kazumi Arakage
和美 荒蔭
Satoshi Sakazume
智 坂爪
Hiroyuki Kurashige
宏之 倉重
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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan 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 Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2009244661A priority Critical patent/JP2011091696A/ja
Publication of JP2011091696A publication Critical patent/JP2011091696A/ja
Pending legal-status Critical Current

Links

Abstract

【課題】動きベクトルの符号化効率を著しく低下させない動きベクトル予測方法を提供する。
【解決手段】動きベクトル予測方法において、3つ以上の候補動きベクトルの少なくとも1つ以上の候補動きベクトルを符号化対象ブロックの周辺予測ブロックの大きさに応じて決定し、前記3つ以上の候補動きベクトルを用いて予測動きベクトルを導出する。これにより、動きベクトルの符号化効率は著しく低下しない。予測動きベクトルはメディアンフィルタを用いて導出してもよい。
【選択図】図4

Description

本発明は、動き補償予測を用いた画像処理方法において動きベクトルを差分符号化する際の動きベクトル予測方法に関する。
動画像圧縮符号化方法としてMPEGが知られている。MPEGでは画像間の相関性を利用する動き補償予測を用いて圧縮効率を上げている。MPEGでは画像は水平16画素×垂直16画素からなるマクロブロックと呼ばれるブロックに分割され、マクロブロック単位で動き補償予測が行われる。動き補償予測では予測されるブロック毎に動きベクトルが検出される。
MPEGではある符号化対象ブロックの動きベクトルを符号化する場合、最初に周辺ブロックから予測動きベクトルを導出する。そして、符号化対象ブロックの動きベクトルと予測動きベクトルから差分動きベクトルを算出し、差分動きベクトルをエントロピー符号化する。周辺ブロックから予測動きベクトルを導出するのは、動きベクトルが周辺ブロックと相関性を持つと考えられるためである。差分動きベクトルの絶対値が小さいほど動きベクトルの圧縮効率は高くなる。
予測動きベクトルの算出方法について説明する。MPEGやMPEG−2では図20に示すように、符号化対象ブロックXの左側ブロックAの動きベクトルMVAが予測動きベクトルpmvとして用いられる(下記の式(1)参照)。
次に、ワンセグ放送やブルーレイディスクで利用されているMPEG−4AVCの予測動きベクトルの算出方法について説明する。MPEG−4AVCでは動き補償予測を行う予測ブロックサイズは多数定義されている。すなわち、水平16画素×垂直16画素のブロックに加え、水平16画素×垂直8画素、水平8画素×垂直16画素、水平8画素×垂直8画素、水平8画素×垂直4画素、水平4画素×垂直8画素、水平4画素×垂直4画素の予測ブロックが定義されている。
このように、MPEG−4AVCでは小さなブロックを利用することにより動き補償予測の効率を向上させている。ところが、動き補償予測ブロックサイズが小さくなると動きベクトルの数が増加するため、動きベクトルの圧縮効率の向上が課題となる。そこで、MPEG−4AVCでは予測動きベクトルの精度向上のため、水平方向の相関性に加えて垂直方向の相関性も考慮している。
MPEG−4AVCの予測ベクトルの算出方法に利用される周辺ブロックを図21に示す。周辺ブロックとして、基本的にはブロックA、ブロックB、ブロックCが利用される。ブロックCが無効である場合、ブロックDが用いられる。
次に、MPEG−4AVCの予測動きベクトルの算出方法を図22及び、図23のフローチャートを用いて説明する。
ブロックAは符号化対象ブロックXの左上の画素xが水平方向に−1画素だけ移動した位置の画素aが含まれるブロックとなる。ブロックAの動きベクトルをMVAとする(ステップS1000)。
ブロックBは符号化対象ブロックXの左上の画素xが垂直方向に−1画素だけ移動した位置の画素bが含まれるブロックとなる。ブロックBの動きベクトルをMVBとする(ステップS1100)。
ブロックCが有効である場合、ブロックCは符号化対象ブロックXの左上の画素xが垂直方向に−1画素だけ移動し、水平方向にブロックXの水平方向の大きさ(長さ)だけ移動した位置の画素cが含まれるブロックとなる。ブロックCの動きベクトルをMVCとする(ステップS1200)。
ブロックCが無効である場合、ブロックDは符号化対象ブロックXの左上の画素xが垂直方向に−1画素だけ移動し、水平方向に−1画素だけ移動した位置の画素dが含まれるブロックとなる。ブロックDの動きベクトルをMVDとする(ステップS1300)。MVDをMVCに置き換える(ステップS1400)。
上述したようにして決まった動きベクトルMVA、MVB、及びMVCの成分毎にメディアンフィルタを適用して下記の式(2)に示すように予測動きベクトルpmvを求める(ステップS1500)。pmv(x)はpmvの水平方向成分であり、pmv(y)はpmvの垂直方向成分である。
なお、特許文献1及び2に符号化対象ブロックの周辺ブロック用いて予測動きベクトルを算出する方法が開示されている。
特開2007−336603号公報 特開2004−72712号公報
以下、MPEG−4AVCのように予測ブロックサイズが可変であって、周辺の複数の動きベクトルにメディアンフィルタを作用させて予測動きベクトルを導出する動きベクトル予測方法についての課題を図24を用いて説明する。
符号化対象のブロックXは水平8画素×垂直8画素のブロックサイズであるとし、動きベクトルMVXを持つ。周辺ブロックA、B、Cはそれぞれ動きベクトルMVA、MVB、MVCを持つ。ここで、周辺ブロックB、Cが水平16画素×垂直16画素の予測ブロックUに含まれる場合、ブロックBとブロックCの動きベクトルはブロックUの動きベクトルMVUと同じになる。そのため、メディアンフィルタの結果、符号化対象のブロックXの予測動きベクトルは必然的にブロックUの動きベクトルと同一となる。
MVA(x,y)=(3,3)、MVU(x,y)=(128,128)であるとき、式(2)から予測動きベクトルは下記の式(3)のように導出される。
したがって、符号化対象ブロックXの動きベクトルMVX(x,y)=(4,4)に対する差分動きベクトルdmvは下記の式(4)のようになる。
この結果、差分動きベクトルdmvは元の動きベクトルMVXよりも遥かに大きくなって、動きベクトルの圧縮効率が著しく低下する。
このように、予測ブロックサイズが可変であって3つ以上の周辺ブロックからの候補動きベクトルにメディアンフィルタを用いて予測動きベクトルを導出する動きベクトル予測方法を用いる場合、候補動きベクトルの過半数が同じ予測ブロックに属し、その予測ブロックの動きベクトルが符号化対象の動きベクトルと相関性が低いとき、動きベクトルの符号化効率が著しく低下してしまう課題がある。
この課題は、従来の動きベクトル予測方法では、予測動きベクトルを符号化対象の予測ブロックサイズに応じて決定しており、周辺の予測ブロックサイズを考慮していないために発生する。
本発明は、動きベクトルの符号化効率を著しく低下させない動きベクトル予測方法を提供することを目的とする。
上記課題を解決し上記目的を達成するために、本発明の動きベクトル予測方法は、3つ以上の候補動きベクトルの少なくとも1つ以上の候補動きベクトルを符号化対象ブロックの周辺予測ブロックの大きさに応じて決定し、前記3つ以上の候補動きベクトルを用いて予測動きベクトルを導出する。前記予測動きベクトルをメディアンフィルタを用いて導出してもよい。前記候補動きベクトルに、前記候補動きベクトルが属する予測ブロックと前記符号化対象ブロックとの距離に応じた重み付けを施してもよい。前記符号化対象ブロックの大きさと前記周辺予測ブロックの大きさとによって、前記候補動きベクトルの数を可変としてもよい。
また、本発明の動きベクトル予測方法は、符号化対象ブロックの大きさと2つ以上の候補動きベクトルが属する予測ブロックの大きさとによって、予測動きベクトルを決定する。
本発明は、動きベクトルの符号化効率を著しく低下させない動きベクトル予測方法を提供することができる。
本発明の動きベクトル予測方法を用いれば、複数の候補動きベクトルが必ず異なる予測ブロックの動きベクトルになるようにすることで、特定の予測ブロックの動きベクトルが必ず選択されることを回避し、メディアンフィルタが適切に作用するようにすることができる。また、符号化対象ブロックと周辺予測ブロックとの距離に基づいて周辺予測ブロックの候補動きベクトルを重み付けすることで、候補動きベクトルの精度を向上させることができる。
本実施の形態の動画像符号化装置の構成図である。 ピクチャとマクロブロックの関係を説明するための図である。 マクロブロック内のブロックの組み合わせの例を説明するための図である。 本実施の形態の予測動きベクトル算出に利用するブロックを説明するための図である。 本実施の形態の周辺ブロックの決定を説明するための図である。 本実施の形態の予測動きベクトル算出を示すフローチャートである。 本実施の形態の動きベクトルの重み付け関数を示す第1の図である。 本実施の形態の動きベクトルの重み付け関数を示す第2の図である。 本実施の形態の動きベクトルの重み付け関数を示す第3の図である。 本実施の形態の周辺ブロックを説明するための図である。 変形例1の予測動きベクトル算出に利用するブロックを説明するための図である。 変形例1の周辺ブロックの決定を説明するための図である。 変形例1の予測動きベクトル算出を示すフローチャートである。 変形例2の予測動きベクトル算出に利用するブロックを説明するための図である。 変形例2の周辺ブロックの決定を説明するための図である。 変形例2の予測動きベクトル算出を示すフローチャートである。 変形例3の予測動きベクトル算出を説明するための図である。 変形例3の予測動きベクトル算出を示すフローチャートである。 本実施の形態の動画像復号装置の構成図である。 MPEG−1/2で予測動きベクトル算出に利用するブロックを説明するための図である。 MPEG−4AVCで予測動きベクトル算出に利用するブロックを説明する図ための図である。 MPEG−4AVCで周辺ブロックの決定を説明するための図である。 MPEG−4AVCで予測動きベクトル算出を示すフローチャートである。 MPEG−4AVCでの予測動きベクトル算出における課題を説明するための図である。
以下、図面を参照しながら本発明の実施の形態を説明する。
(動画像符号化装置)
本実施の形態の動きベクトル予測方法を図1を用いて説明する。図1は本実施の形態の動きベクトル予測方法を実行する動画像符号化装置の構成図である。本実施の形態の動画像符号化装置は、図1に示すように、減算部100、予測誤差符号部110、符号列生成部120、予測誤差復号部130、加算部140、動き補償予測決定部150、動き検出部160、フレームメモリ170、動きベクトル符号部180、動きベクトル記憶部190、動き補償形状符号部200、及び、動き補償形状記憶部210を有する。
入力画像10は減算部100及び動き検出部160に供給される。
<符号化単位>
本実施の形態の符号化は、16画素×16画素のマクロブロック(MB)を単位として行なわれる。そのため、入力画像は、図2に示すように、複数のマクロブロックに分割される。図2は96画素×64画素の画像を水平方向に6つ、垂直方向に4つのマクロブロックに分割した例を示している。
マクロブロックは16画素×16画素、16画素×8画素、8画素×16画素、8画素×8画素、8画素×4画素、4画素×8画素、4画素×4画素のブロックの組み合わせで動き補償予測される。ブロックの組み合わせの例を図3に示す。図3(a)は16画素×16画素のブロック1個を有するマクロブロックを示している。図3(b)は4画素×4画素のブロック16個を有するマクロブロックを示している。図3(c)は16画素×8画素のブロック1個と、8画素×8画素のブロック1個と、8画素×4画素のブロック1個と、4画素×4画素のブロック2個とを有するマクロブロックを示している。
本実施の形態ではマクロブロックの大きさを16画素×16画素とするが、マクロブロックの大きさは、8画素×8画素、32画素×32画素、64画素×64画素、32画素×16画素、64画素×32画素などであっても構わない。また、本実施の形態では各ブロックには1つの動きベクトルが割り当てられるとするが、MPEGでよく用いられる両方向予測で利用する場合には各ブロックに2つの動きベクトルが割り当てられる。
<動き検出部160>
動き検出部160は、入力画像10とフレームメモリ170より供給される参照画像を用いて、16画素×16画素、16画素×8画素、8画素×16画素、8画素×8画素、8画素×4画素、4画素×8画素、4画素×4画素の全てのブロックに関する動きベクトルを求める。動き検出部160は全てのブロックに関する動きベクトルを動き補償予測決定部150に供給する。
<動き補償予測決定部150>
動き補償予測決定部150は、フレームメモリ170より供給される参照画像と動き検出部160より供給される全てのブロックに関する動きベクトルを用いて予測画像を生成し、入力画像と絶対誤差差分和(SAD)が最も小さくなるブロックの組み合わせを選択する。動き補償予測決定部150は選択したブロックの組み合わせから生成された予測画像を減算部100及び加算部140に供給する。また、動き補償予測決定部150は選択したブロックの組み合わせを動き補償形状記憶部210に送り、選択したブロックの組み合わせに関係する動きベクトルを動きベクトル記憶部190に送る。
<減算部100>
減算部100は入力画像10と動き補償予測決定部150から供給される予測画像の予測誤差を求め、予測誤差符号部110に供給する。
<予測誤差符号部110>
予測誤差符号部110は減算部100から供給される予測誤差を直交変換や量子化などの処理を行って予測誤差符号データに変換し、符号列生成部120及び予測誤差復号部130に供給する。
<予測誤差復号部130>
予測誤差復号部130は予測誤差符号部110から供給される予測誤差符号データを逆量子化や逆直交変換などの処理を行って予測誤差に変換し、予測誤差を加算部140に供給する。
<加算部140>
加算部140は予測誤差復号部130から供給される予測誤差と動き補償予測決定部150から供給される予測画像から復号画像を求め、フレームメモリ170に供給する。
<フレームメモリ170>
フレームメモリ170は加算部140から供給される復号画像を保持し、動き補償予測決定部150及び動き検出部160に供給する。
<動きベクトル記憶部190>
動きベクトル記憶部190は動き補償予測決定部150から供給される動きベクトルを記憶し、その動きベクトルを動きベクトル符号部180に供給する。なお、動きベクトル記憶部190は入力画像の全てのマクロブロックに関する動きベクトルを記憶しており、現在符号化しているマクロブロックの周辺マクロブロックの動きベクトルを動きベクトル符号部180に供給する。
また、本実施の形態では動きベクトル記憶部190は入力画像の全てのマクロブロックに関する動きベクトルを記憶するとしたが、動きベクトル記憶部190の目的は現在符号化しているマクロブロックの周辺ブロックの動きベクトルを動きベクトル符号部180に供給することであり、それを実現することができれば入力画像の全てのマクロブロックに関する動きベクトルを記憶する必要はない。
<動き補償形状記憶部210>
動き補償形状記憶部210は動き補償予測決定部150から供給されるブロックの組み合わせを記憶し、そのブロックの組み合わせを動き補償形状符号部200に供給する。なお、動き補償形状記憶部210は入力画像の全てのマクロブロックに関するブロックの組み合わせを記憶しており、現在符号化しているマクロブロックの周辺マクロブロックのブロックの組み合わせを動きベクトル符号部180に供給する。
また、本実施の形態では動き補償形状記憶部210は入力画像の全てのマクロブロックに関するブロックの組み合わせを記憶するとしたが、動き補償形状記憶部210の目的は現在符号化しているマクロブロックの周辺のブロックの組み合わせを動きベクトル符号部180に供給することであり、それを実現することができれば入力画像の全てのマクロブロックに関するブロックの組み合わせを記憶する必要はない。
<動きベクトル符号部180>
動きベクトル符号部180は動きベクトル記憶部190から供給される現在符号化しているマクロブロックの動きベクトル、周辺マクロブロックの動きベクトルと動き補償形状記憶部210から供給される現在符号化しているマクロブロックのブロックの組み合わせ、周辺マクロブロックのブロックの組み合わせを用いて予測動きベクトルを求め、現在符号化しているマクロブロックの動きベクトルと予測動きベクトルから差分ベクトルを求めて差分ベクトル符号データに変換し、符号列生成部120に供給する。
<動き補償形状符号部200>
動き補償形状符号部200は動き補償形状記憶部210から供給されるブロックの組み合わせをマクロブロックタイプとして符号化し、符号列生成部120に供給する。
<符号列生成部120>
符号列生成部120は予測誤差符号部110から供給される予測誤差符号データ、動きベクトル符号部180から供給される差分ベクトル符号データ、動き補償形状記憶部210から供給されるマクロブロックタイプをその他の制御情報などと共に出力符号列に変換して出力する。
以下、本実施の形態における動きベクトル予測方法について図4、図5、及び図6を用いて説明する。
本実施の形態における動きベクトル予測方法で利用する周辺ブロックの様子を図4に示す。図4はブロックAの形状の違いによる周辺ブロックの様子の違いを示している。本実施の形態ではMPEG−4AVCと同様にブロックDを定義する。ただし、ブロックDは常に利用する必要はなく、ブロックCが無効である場合にはMVCを固定ベクトル、例えば(0,0)としてもよい。
次に、本実施の形態における予測動きベクトルの算出方法を図5及び、図6のフローチャートを用いて説明する。
ブロックAは、符号化対象ブロックXの左上の画素xが水平方向に−1画素だけ移動した位置の画素aが含まれるブロックとなる。ブロックAの動きベクトルをMVA’とする(ステップS100)。
ブロックBは、符号化対象ブロックXの左上の画素xが垂直方向に−1画素だけ移動した位置の画素bが含まれるブロックとなる。ブロックBの動きベクトルをMVB’とする(ステップS110)。
ブロックCは、ブロックBの右下の画素brが水平方向に+1画素だけ移動した位置の画素cが含まれるブロックとなる(ステップS120)。
ブロックCが有効であるかどうかを判定する(ステップS130)。
ブロックCが有効である場合、ブロックCの動きベクトルをMVC’’とする(ステップS140)。また、ブロックCの画素cとブロックXの右上の画素xrとの距離dxcをdxとする(ステップS150)。
続いてブロックCが無効である場合について説明する。
画素xの垂直座標x(y)がブロックAの右上の画素arの垂直座標ar(y)と等しいかどうかを判断する(ステップS160)。
画素xの垂直座標x(y)がブロックAの右上の画素arの垂直座標ar(y)と等しい場合、つまりブロックAの上端がブロックXの上端と等しい場合(図5(a))、ブロックDはブロックBの左下の画素blが水平方向に−1画素だけ移動した位置の画素dが含まれるブロックとなる。ブロックDの動きベクトルをMVDとする(ステップS170)。
一方、画素xの垂直座標x(y)がブロックAの右上の画素arの垂直座標ar(y)よりも大きい場合(図5(b))、ブロックDはブロックBの画素bが水平方向に−(ブロックAの水平方向の大きさ(長さ))だけ移動した位置の画素dが含まれるブロックとなる。ブロックDの動きベクトルをMVDとする(ステップS180)。
MVDをMVC’’に置き換える(ステップS190)。また、ブロックDの画素dとブロックXの左上の画素xとの距離dxdをdxとする(ステップS200)。
続いてMVCの距離補正について説明する。
下記の式(5)にしたがってMVC’’の水平垂直成分に距離補正を加えてMVC’を求める(ステップS210)。
本実施の形態では、動きベクトルの重み付け関数w1は図7に示す関数である。図7に示す関数は重み付け値が距離dxに応じて変化し、マクロブロックの水平方向の大きさ(長さ)である16画素までは線形に重み付ける。重み付け関数w1は、ブロックCまたはブロックDの距離がブロックXから大きくなれば相関性が低くなると考えて、ブロックXからのブロックCまたはブロックDの距離に応じて動きベクトルMVC’’を重み付けするように定義されている。このような性質を持つ関数であれば図7に示す関数でなくてもよい。
重み付けは、図8に示すように、距離dxに応じてブロックBとブロックCを単純に切り替えてもよい。また、水平成分のみまたは垂直成分のみに距離補正を加えることも可能である。なお、重み付け関数w1は符号化してビットストリーム中に含めておき、復号の際に解読して利用することも可能である。
次に、下記の式(6)にしたがってMVA’、MVB’、MVC’にサイズ補正を加えてMVA、MVB、MVCを求める(ステップS220)。
本実施の形態では、動きベクトルの重み付け関数w2を図9に示すように定義する。重み付け関数w2は、周辺のブロックサイズがブロックXと近いほど動きの相関性も高くなることを考慮して、ブロックXと周辺のブロックサイズに応じて周辺の動きベクトルを重み付ける。このような性質を持つ関数であれば図9に示す関数でなくてもよい。
なお、重み付け関数のw2は符号化してビットストリーム中に含めておき、復号の際に解読して利用することも可能である。
最後に、動きベクトルMVA、MVB、及びMVCの成分毎にメディアンフィルタを適用して下記の式(7)のように予測動きベクトルpmvを求める(ステップS230)。pmv(x)はpmvの水平方向成分であり、pmv(y)はpmvの垂直方向成分である。
予測動きベクトルpmvは下記の式(8)のように導出される。
そして、符号化対象ブロックXの動きベクトルMVX(x,y)=(4,4)に対する差分動きベクトルdmvは下記の式(9)のようになる。
上述したように、本実施の形態における動きベクトル予測方法によれば符号化対象ブロックよりも大きな予測ブロックサイズを持つ周辺ブロックが存在する場合でも好適な予測動きベクトルを求めることができる。
なお、本実施の形態では予測動きベクトルの算出に用いる周辺ブロックの数を3としたが、図10のように周辺ブロックを4つ、5つやそれ以上にすることもできる。周辺ブロックの数が偶数である場合、メディアンフィルタは、中央値の2つの平均値をpmvとして出力してもよい。
以下では、上述した実施の形態の形態を実施例1と記載する。
(変形例1)
動きベクトル予測方法の変形例1について図11、図12、及び図13を用いて説明する。
変形例1は、図4、図5及び図6に示す実施例1とは、図11に示すように、ブロックDの位置だけが異なる。以下では、ブロックDの位置の決定方法について図12、及び図13のフローチャートを用いて説明する。
画素xの垂直座標x(y)がブロックAの右上の画素arの垂直座標ar(y)と等しいかどうかを判断する(ステップS160)。
画素xの垂直座標x(y)がブロックAの右上の画素arの垂直座標ar(y)と等しい場合、つまりブロックAの上端がブロックXの上端と等しい場合(図11(a)、図12(a))、ブロックDはブロックBの左下の画素blが水平方向に−1画素だけ移動した位置のた画素dが含まれるブロックとなる。ブロックDの動きベクトルをMVDとする(ステップS170)。
一方、画素xの垂直座標x(y)がブロックAの右上の画素arの垂直座標ar(y)よりも大きい場合(図11(b)図12(b))、ブロックDはブロックAの画素arが垂直方向に−1画素だけ移動した位置の画素dが含まれるブロックとなる。ブロックDの動きベクトルをMVDとする(ステップS181)。
変形例1の動きベクトル予測方法によれば符号化対象ブロックよりも大きな予測ブロックサイズを持つ周辺ブロックが存在する場合でも好適な予測動きベクトルを求めることができる。
(変形例2)
変形例2の動きベクトル予測方法について図14、図15、及び図16を用いて説明する。
変形例2では図14に示すように符号化対象ブロックよりも周辺の予測ブロックの大きさが小さい。変形例2では周辺ブロックA及びBが符号化対象ブロックXよりも小さい場合について説明する。
変形例2は、実施例1とMVA’及びMVB’の算出方法だけが異なり、MVA’及びMVA’の算出に複数の予測ブロックを用いるのが特徴である。MVA’及びMVB’の算出方法について図14、図15、及び図16のフローチャートを用いて説明する。
ブロックA1は符号化対象ブロックXの左上の画素xが水平方向に−1画素だけ移動した位置の画素aが含まれるブロックとなる。ブロックA1の動きベクトルをMVA1とする(ステップS101〜ステップ103の1巡目)。
ブロックA1の右下の画素a1bの垂直成分a1b(y)が符号化対象ブロックXの左下の画素xbの垂直成分xb(y)よりも小さいため(ステップS104の1巡目)、ブロックA2は画素a1bが垂直方向に+1画素だけ移動した位置の画素a2が含まれるブロックとなる。ブロックA2の動きベクトルをMVA2とする(ステップS101〜ステップ103の2巡目)。
ブロックA2の右下の画素a2bの垂直成分a2b(y)が符号化対象ブロックXの左下の画素xbの垂直成分xb(y)よりも小さいため(ステップS104の2巡目)、ブロックA3は画素a2bが垂直方向に+1だけ画素だけ移動した位置の画素a3が含まれるブロックとなる。ブロックA3の動きベクトルをMVA3とする(ステップS101〜ステップ103の3巡目)。
ブロックA3の右下の画素a3bの垂直成分a3b(y)が符号化対象ブロックXの左下の画素xbの垂直成分xb(y)と等しいため(ステップS104の3巡目)、次にMVA’を下記の式(10)により算出する(ステップS105)。
ブロックB1は符号化対象ブロックXの左上の画素xが垂直方向に−1画素だけ移動した位置の画素bが含まれるブロックとなる。ブロックBの動きベクトルをMVB’とする(ステップS111〜ステップ113の1巡目)。
ブロックB1の左下の画素b1rの水平成分b1r(x)が符号化対象ブロックXの左上の画素xrの垂直成分xr(x)よりも小さいため(ステップS114の1巡目)、ブロックB2は画素b1rが水平方向に+1画素だけ移動した位置の画素b2が含まれるブロックとなる。ブロックB2の動きベクトルをMVB2とする(ステップS111〜ステップ113の2巡目)。
ブロックB2の左下の画素b2rの水平成分b2r(x)が符号化対象ブロックXの左上の画素xrの垂直成分xr(x)よりも小さいため(ステップS114の2巡目)、ブロックB3は画素b2rが水平方向に+1画素だけ移動した位置の画素b3が含まれるブロックとなる。ブロックB3の動きベクトルをMVB3とする(ステップS111〜ステップ113の3巡目)。
ブロックB3の左下の画素b3rの水平成分b3r(x)が符号化対象ブロックXの左上の画素xrの垂直成分xr(x)よりも小さいため(ステップS114の3巡目)、ブロックB4は画素b3rが水平方向に+1画素だけ移動した位置の画素b4が含まれるブロックとなる。ブロックB4の動きベクトルをMVB4とする(ステップS111〜ステップ113の4巡目)。
ブロックB4の右下の画素b4rの水平成分b4r(y)が符号化対象ブロックXの左下の画素xrの垂直成分xr(x)と等しいため(ステップS114の4巡目)、次にMVB’を下記の式(11)により算出する(ステップS115)。
変形例2の動きベクトル予測方法によれば符号化対象ブロックよりも小さな予測ブロックサイズを持つ周辺ブロックが多数存在する場合、周辺ブロックの動きベクトルをより多く利用することで、好適な予測動きベクトルを求めることができる。
なお、変形例2ではMVA’やMVB’の算出に平均値を用いたが、メディアンフィルタなどを用いてもよい。
(変形例3)
変形例3による動きベクトル予測方法について図17、及び図18を用いて説明する。
実施例1とは予測動きベクトルの決定方法が異なる。
図17において、ブロックXの水平方向の大きさをWidth(X)、垂直方向の大きさをHeight(X)、ブロックAの垂直方向の大きさをHeight(A)、ブロックBの水平方向の大きさをWidth(B)とする。このときの予測動きベクトルの決定方法について図18を用いて説明する。
Width(B)がWidth(X)の2倍以上で、Height(A)がHeight(X)の2倍よりも小さい場合、MVAを予測動きベクトルとする(ステップS221)。Height(A)がHeight(X)の2倍以上で、Width(B)がWidth(X)の2倍より小さい場合、MVBを予測動きベクトルとする(ステップS222)。いずれでもない場合、実施例1と同じ方法で予測動きベクトルを決定する。なお、図17のブロックA、ブロックBと同様に、ブロックCの水平方向の大きさWidth(C)を比較対照に加えることも可能である。また、上記のいずれの場合でもない場合には、従来のMPEG−4AVCによる予測動きベクトルを用いることも可能である。
変形例3の動きベクトル予測方法によれば符号化対象ブロックよりも大きな予測ブロックサイズを持つ周辺ブロックが存在する場合でも好適な予測動きベクトルを求めることができる。
なお、変形例3ではブロックの大きさの比較の基準を2倍としたが、基準は2倍に限定するものではなく、3倍や4倍などでもよい。
(動画像復号装置)
本実施の形態の動画像復号装置を図19を用いて説明する。図19は本実施の形態の動画像復号装置の構成図である。本実施の形態の動画像復号装置は、図19に示すように、符号列解析部500、予測誤差復号部510、加算部520、動き補償予測部530、フレームメモリ540、動きベクトル復号部550、動きベクトル記憶部560、動き補償形状復号部570、及び、動き補償形状記憶部580を有する。
入力符号列50は符号列解析部500に供給される。
<符号化単位>
本実施の形態の復号化は16画素×16画素のマクロブロックを単位として行なわれる。
<符号列解析部500>
符号列解析部500は入力符号列50から予測誤差符号データ、差分ベクトル符号データ、及びマクロブロックタイプを取り出し、それぞれを予測誤差復号部510、動きベクトル記憶部560、及び動き補償形状復号部570に供給する。
<予測誤差復号部510>
予測誤差復号部510は符号列解析部500から供給される予測誤差符号データを逆量子化や逆直交変換などの処理を行って予測誤差に変換し、予測誤差を加算部520に供給する。
<動き補償形状復号部570>
動き補償形状復号部570は符号列解析部500から供給されるマクロブロックタイプをブロックの組み合わせに変換し、動き補償形状記憶部580及び動き補償予測部530に供給する。
<動き補償形状記憶部580>
動き補償形状記憶部580は動き補償形状復号部570から供給されるブロックの組み合わせを記憶し、そのブロックの組み合わせを動きベクトル復号部550に供給する。なお、動き補償形状記憶部580は復号画像の全てのマクロブロックに関するブロックの組み合わせを記憶しており、現在復号しているマクロブロックの周辺マクロブロックのブロックの組み合わせを動きベクトル復号部550に供給する。
<動きベクトル復号部550>
動きベクトル復号部550は符号列解析部500から供給される差分ベクトル符号データを差分ベクトルに変換する。動きベクトル復号部550は動きベクトル記憶部560から供給される周辺マクロブロックの動きベクトル、動き補償形状記憶部580から供給される現在符号化しているマクロブロックのブロックの組み合わせ、周辺マクロブロックのブロックの組み合わせを用いて予測動きベクトルを求め、差分ベクトルと予測ベクトルから動きベクトルを求め、動き補償予測部530及び動きベクトル記憶部560に供給する。
<動きベクトル記憶部560>
動きベクトル記憶部560は動きベクトル復号部550から供給される動きベクトルを記憶する。なお、動きベクトル記憶部560は入力画像の全てのマクロブロックに関する動きベクトルを記憶しており、現在符号化しているマクロブロックの周辺マクロブロックの動きベクトルを動きベクトル復号部550に供給する。
<動き補償予測部530>
動き補償予測部530はフレームメモリ540から供給される参照画像、動き補償形状復号部570から供給されるブロックの組み合わせ、及び動きベクトル復号部550より供給される動きベクトルを用いて予測画像を生成し、加算部520に供給する。
<加算部520>
加算部520は予測誤差復号部510から供給される予測誤差と動き補償予測部530から供給される予測画像から復号画像を求め、フレームメモリ540に供給すると共に、画像出力60として出力する。
<フレームメモリ540>
フレームメモリ540は加算部520から供給される復号画像を保持し、動き補償予測部530に供給する。
動きベクトル予測方法は実施例1と同じである。
10 入力画像、 20 出力符号列、 100 減算部、 110 予測誤差符号部、 120 符号列生成部、 130 予測誤差復号部、 140 加算部、 150 動き補償予測決定部、 160 動き検出部、 170 フレームメモリ、 180 動きベクトル符号部、 190 動きベクトル記憶部、 200 動き補償形状符号部、 210 動き補償形状記憶部、 50 入力符号列、 60 画像出力、 500 符号列解析部、 510 予測誤差復号部、 520 加算部、 530 動き補償予測部、 540 フレームメモリ、 550 動きベクトル復号部、 560 動きベクトル記憶部、 570 動き補償形状復号部、 580 動き補償形状記憶部。

Claims (5)

  1. 3つ以上の候補動きベクトルの少なくとも1つ以上の候補動きベクトルを符号化対象ブロックの周辺予測ブロックの大きさに応じて決定し、前記3つ以上の候補動きベクトルを用いて予測動きベクトルを導出する動きベクトル予測方法。
  2. 前記予測動きベクトルをメディアンフィルタを用いて導出する請求項1に記載の動きベクトル予測方法。
  3. 前記候補動きベクトルに、前記候補動きベクトルが属する予測ブロックと前記符号化対象ブロックとの距離に応じた重み付けを施す請求項1または2に記載の動きベクトル予測方法。
  4. 前記符号化対象ブロックの大きさと前記周辺予測ブロックの大きさとによって、前記候補動きベクトルの数を可変とする請求項1から3のいずれかに記載の動きベクトル予測方法。
  5. 符号化対象ブロックの大きさと2つ以上の候補動きベクトルが属する予測ブロックの大きさとによって、予測動きベクトルを決定する動きベクトル予測方法。
JP2009244661A 2009-10-23 2009-10-23 動きベクトル予測方法 Pending JP2011091696A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009244661A JP2011091696A (ja) 2009-10-23 2009-10-23 動きベクトル予測方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009244661A JP2011091696A (ja) 2009-10-23 2009-10-23 動きベクトル予測方法

Publications (1)

Publication Number Publication Date
JP2011091696A true JP2011091696A (ja) 2011-05-06

Family

ID=44109508

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009244661A Pending JP2011091696A (ja) 2009-10-23 2009-10-23 動きベクトル予測方法

Country Status (1)

Country Link
JP (1) JP2011091696A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012056924A1 (ja) * 2010-10-25 2012-05-03 ソニー株式会社 画像処理装置と画像処理方法
JP2013058873A (ja) * 2011-09-07 2013-03-28 Nippon Hoso Kyokai <Nhk> 動きベクトル予測装置、符号化装置、復号装置、及びこれらのプログラム
JP2019535202A (ja) * 2016-10-06 2019-12-05 エルジー エレクトロニクス インコーポレイティド インター予測モードベースの画像処理方法及びそのための装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004040785A (ja) * 2002-06-03 2004-02-05 Microsoft Corp 双方向予測(b)ピクチャの時空間予測および複数ピクチャ参照動き補償の動きベクトル予測
JP2006074474A (ja) * 2004-09-02 2006-03-16 Toshiba Corp 動画像符号化装置、動画像符号化方法および動画像符号化プログラム
WO2008082158A1 (en) * 2007-01-03 2008-07-10 Samsung Electronics Co., Ltd. Method and apparatus for estimating motion vector using plurality of motion vector predictors, encoder, decoder, and decoding method
JP2008259174A (ja) * 2007-04-05 2008-10-23 Mitsubishi Electric Research Laboratories Inc コンピュータにより実施される動きベクトルのマッピング方法、動きベクトルをマッピングするトランスコーダ及び動きベクトルをマッピングするデコーダ
JP2009049519A (ja) * 2007-08-14 2009-03-05 Kddi Corp 動画像符号化装置の予測動きベクトル生成装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004040785A (ja) * 2002-06-03 2004-02-05 Microsoft Corp 双方向予測(b)ピクチャの時空間予測および複数ピクチャ参照動き補償の動きベクトル予測
JP2006074474A (ja) * 2004-09-02 2006-03-16 Toshiba Corp 動画像符号化装置、動画像符号化方法および動画像符号化プログラム
WO2008082158A1 (en) * 2007-01-03 2008-07-10 Samsung Electronics Co., Ltd. Method and apparatus for estimating motion vector using plurality of motion vector predictors, encoder, decoder, and decoding method
JP2008259174A (ja) * 2007-04-05 2008-10-23 Mitsubishi Electric Research Laboratories Inc コンピュータにより実施される動きベクトルのマッピング方法、動きベクトルをマッピングするトランスコーダ及び動きベクトルをマッピングするデコーダ
JP2009049519A (ja) * 2007-08-14 2009-03-05 Kddi Corp 動画像符号化装置の予測動きベクトル生成装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012056924A1 (ja) * 2010-10-25 2012-05-03 ソニー株式会社 画像処理装置と画像処理方法
JP2013058873A (ja) * 2011-09-07 2013-03-28 Nippon Hoso Kyokai <Nhk> 動きベクトル予測装置、符号化装置、復号装置、及びこれらのプログラム
JP2019535202A (ja) * 2016-10-06 2019-12-05 エルジー エレクトロニクス インコーポレイティド インター予測モードベースの画像処理方法及びそのための装置
EP3525460A4 (en) * 2016-10-06 2020-06-17 LG Electronics Inc. -1- METHOD FOR PROCESSING A VIDEO BASED ON AN INTRAPREDICATION MODE AND DEVICE THEREFOR
US10785477B2 (en) 2016-10-06 2020-09-22 Lg Electronics Inc. Method for processing video on basis of inter prediction mode and apparatus therefor

Similar Documents

Publication Publication Date Title
CN111385569B (zh) 一种编解码方法及其设备
TWI440364B (zh) 使用預測導引減數搜尋之移動估計
CN113709474B (zh) 一种编解码方法、装置及其设备
TWI571108B (zh) 動畫像編碼裝置、動畫像解碼裝置、動畫像編碼方法及動畫像解碼方法
JP5976197B2 (ja) 3dシーンの1以上のビデオを処理する方法
KR20110008653A (ko) 움직임 벡터 예측 방법과 이를 이용한 영상 부호화/복호화 장치 및 방법
US8817871B2 (en) Adaptive search range method for motion estimation and disparity estimation
TWI718908B (zh) 影像預測解碼方法
CN110933426B (zh) 一种解码、编码方法及其设备
JP2013225892A (ja) 直接モード符号化及び復号化装置
WO2012043541A1 (ja) 予測ベクトル生成方法、画像符号化方法、画像復号方法、予測ベクトル生成装置、画像符号化装置、画像復号装置、予測ベクトル生成プログラム、画像符号化プログラムおよび画像復号プログラム
JP5248632B2 (ja) 動き推定のための技術
JP4786612B2 (ja) 動画像符号化装置の予測動きベクトル生成装置
JP2011091696A (ja) 動きベクトル予測方法
JPH1188888A (ja) 動きベクトル予測符号化方法および動きベクトル復号方法、予測符号化装置および復号装置、並びに、動きベクトルの予測符号化プログラムおよび復号プログラムを記録した記録媒体
JP6390275B2 (ja) 符号化回路、符号化方法
CN112449180B (zh) 一种编解码方法、装置及其设备
KR101078525B1 (ko) 다중시점 영상의 부호화 방법
CN103281533A (zh) 用于可伸缩视频编码中增强层运动估计的设备和方法
JPWO2013125171A1 (ja) イントラ予測モード判定装置、イントラ予測モード判定方法、及びイントラ予測モード判定プログラム
KR101650056B1 (ko) 복수 참조에 의한 움직임 예측을 이용한 부호화 방법 및 장치, 그리고 복수 참조에 의한 움직임 예측을 이용한 복호화 방법 및 장치
KR101590875B1 (ko) 복수 참조에 의한 움직임 예측을 이용한 부호화 방법 및 장치, 그리고 복수 참조에 의한 움직임 예측을 이용한 복호화 방법 및 장치
KR101021538B1 (ko) H.264 인코딩 시 고속 인트라 모드 결정 방법

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20111012

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120329

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130822

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130903

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140318

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140509

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140617