JP4438949B2 - 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム - Google Patents
動き補償予測符号化装置、動き補償予測符号化方法及びプログラム Download PDFInfo
- Publication number
- JP4438949B2 JP4438949B2 JP2004368854A JP2004368854A JP4438949B2 JP 4438949 B2 JP4438949 B2 JP 4438949B2 JP 2004368854 A JP2004368854 A JP 2004368854A JP 2004368854 A JP2004368854 A JP 2004368854A JP 4438949 B2 JP4438949 B2 JP 4438949B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- motion vector
- determination
- motion
- equivalent
- 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.)
- Active
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
この発明では、予め定められた反復数以下の少ない反復で所定の探索アルゴリズムを用いて複数の第二ブロックの各々の動きベクトルを演算し、それらの動きベクトルが完全等価又は近似等価である場合に、第一ブロックを動き補償予測ブロックとして選択する一方、それらの動きベクトルが完全等価又は近似等価でない場合に第二ブロックを動き補償予測ブロックとして選択する。ここで、第一ブロックを複数に分割したものが第二ブロックであるから、第一ブロックは「大きい動き補償予測ブロック」であり、第二ブロックは「小さい動き補償予測ブロック」である。
そして、複数の第二ブロック(小さい動き補償予測ブロック)の各々の動きベクトルが揃っている(完全等価又は近似等価している)ということは、各々の画像が同一方向且つ同一量に動いているということであり、これは、第一ブロック(大きい動き補償予測ブロック)の画像の動きを表すから、この場合は、演算量削減を意図として大きい動き補償予測ブロック、つまり、第一ブロックを選択する。
この発明の“ブロック選択”に要する時間は、もっぱら、複数の第二ブロックの各々の動きベクトルの演算時間で与えられるが、この演算は、探索アルゴリズムの“予め定められた反復数以下の少ない反復”で行われるため、探索アルゴリズムを予め定められた反復数で行った場合に比べて明らかに短い時間で済む。
したがって、トータルの演算量を減らしつつ、最適なブロックサイズの選択を可能とする動き補償予測符号化装置を提供できる。
また、この発明では、複数の第二ブロックの各々の動きベクトルが揃っていない(完全等価又は近似等価していない)場合には、第二ブロックの各々の動きベクトルを再探索する。この再探索は、予め定められた第3の反復数を上限にした所定の探索アルゴリズムの正確な演算で行われるので、第一動きベクトル演算手段の演算結果に比べて精度が高い。
このため、仮に、第二判定手段で逆の判定結果(等価)が得られた場合には、第一判定手段の判定結果が間違っていると判断して、大きい動き補償予測ブロック、つまり、第一ブロックを選択し、また、第二判定手段で同じ判定結果(等価でない)が得られた場合には、第一判定手段の判定結果が正しかったと判断して、小さい動き補償予測ブロック、つまり、第二ブロックを選択する。
したがって、仮に、第一判定手段の判定結果に誤りがあった場合でも、正しいブロック選択を行うことができ、実用上好ましいものとすることができる。
請求項2に記載の発明は、請求項1記載の発明であって、前記第二動きベクトル演算手段は、前記第一動きベクトル演算手段が前記所定の探索アルゴリズムを反復させた結果得られた中間値を初期値として前記所定の探索アルゴリズムによる反復を開始することを特徴とする。
請求項3記載の発明は、請求項1又は2記載の発明であって、前記所定の探索アルゴリズムとは、最近傍探索法又はNステップ探索法若しくは対数探索法を利用したアルゴリズムであることを特徴とする。
請求項4記載の発明は、第一ブロックと該第一ブロックを複数に分割した第二ブロックのいずれか一方を動き補償予測ブロックとして選択する動き補償予測符号化方法であって、前記第二ブロックの各々について、所定の探索アルゴリズムを予め定められた第1の反復数以下の少ない反復で動きベクトルを演算する第一動きベクトル演算ステップと、この第一動きベクトル演算ステップにて演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第一判定ステップと、この第一判定ステップによる判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する第一選択制御ステップと、前記第一判定ステップによる判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックについて、前記所定の探索アルゴリズムにより予め定められた第2の反復数を上限として動きベクトルを演算する第二動きベクトル演算ステップと、前記第一判定ステップによる判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックの各々について、所定の探索アルゴリズムにより予め定められた第3の反復数を上限として動きベクトルを演算する第三動きベクトル演算ステップと、この第三動きベクトル演算ステップで演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第二判定ステップと、前記第二判定ステップによる判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する一方、前記第二判定ステップによる判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックを動き補償予測ブロックとして選択するよう制御する第二選択制御ステップとを含むことを特徴とする。
請求項5記載の発明は、動き補償予測符号化処理を実行するコンピュータに、第一ブロックと該第一ブロックを複数に分割した第二ブロックのいずれか一方を動き補償予測ブロックとして選択する機能を実行させるプログラムであって、当該コンピュータを、前記第二ブロックの各々について、所定の探索アルゴリズムを予め定められた第1の反復数以下の少ない反復で動きベクトルを演算する第一動きベクトル演算手段、この第一動きベクトル演算手段によって演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第一判定手段、この第一判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する第一選択制御手段、前記第一判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックについて、前記所定の探索アルゴリズムにより予め定められた第2の反復数を上限として動きベクトルを演算する第二動きベクトル演算手段、前記第一判定手段による判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックの各々について、所定の探索アルゴリズムにより予め定められた第3の反復数を上限として動きベクトルを演算する第三動きベクトル演算手段、この第三動きベクトル演算手段で演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第二判定手段、前記第二判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する一方、前記第二判定手段による判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックを動き補償予測ブロックとして選択するよう制御する第二選択制御手段として機能させることを特徴とする。
まず、動き補償予測ブロックについて説明する。
図1は、動き補償予測ブロックの種類を示す図である。(a)〜(h)は、それぞれMPEG−4/AVC(又はH.264/AVC)で使用が認められている7種類の動き補償予測ブロックである。詳しくは、(a)は「16×16」のサイズの動き補償予測ブロック、(b)は「16×16」の動き補償予測ブロックを上下に2分割したそれぞれ「16×8」のサイズの動き補償予測ブロック、(c)は同じく「16×16」の動き補償予測ブロックを左右に2分割したそれぞれ「8×16」のサイズの動き補償予測ブロック、(d)は同じく「16×16」の動き補償予測ブロックを上下左右に4分割したそれぞれ「8×8」のサイズの動き補償予測ブロックである。
次に、動き補償予測符号化装置の構成を説明する。
図4は、動き推定部19の概念的なブロック図である。動き推定部19は、推定動きベクトル演算部21(第一動きベクトル演算手段)、第一判定部22(第一判定手段)、MB(マクロブロック)探索部23(第二動きベクトル演算手段)、第一MB動きベクトル出力部24(第一選択手段)、SB(サブブロック)探索部25(第三動きベクトル演算手段)、第二判定部26(第二判定手段)、第二MB動きベクトル出力部27(第二選択手段)、SB動きベクトル出力部28(第二選択手段)を備える。
次に、上記の動き推定部19の動作をより詳しく説明する。なお、ここではフローチャートの形で説明するが、これには二つの意味合いがある。第一の意味は、フローに沿って順番に動作説明を行うことにより理解を助ける点にあり、第二の意味は、上記の動き推定部19のそれぞれの機能をハードロジックで構成する実施態様だけでなく、このようなフローチャートの流れに沿って設計されたソフトウェアとコンピュータとの有機的結合によって実現される実施態様も排除しない点にある。
図7は、元画像のブロック位置(座標)とブロックサイズを説明する図である。この図において、元画像29の升目30のそれぞれはブロック(MB又はSB)であり、それらのブロック位置は、たとえば、その升目30の左上隅の画素座標(x,y)で表されるものとする。また、ブロックサイズは横方向(行方向)をsx、縦方向(列方向)をsyとして表されるものとする。
図9は、動き推定部19の動作フローチャートを示す図である。このフローチャートを開始すると、まず、SB0 〜SB3 (図2参照)の各々について、探索アルゴリズム(たとえば、最近傍探索法などの高速探索アルゴリズム)の第1反復(予め定められた反復数又は予め定められた第1の反復数以下の少ない反復)だけを行って、SB0 〜SB3 の大まかな推定動きベクトルfv0 〜fv3 を演算出力する推定動きベクトル演算処理(ステップS10:第一動きベクトル演算工程)を実行する。次いで、式「fv0 =fv1 =fv2 =fv3 」を評価(ステップS11:第一判定工程)して、その評価結果が“True”であるか否かを判定する(ステップS12)。そして、その判定結果が“True”であれば、次に、MB探索処理(ステップS13:第二動きベクトル演算工程)を実行し、そのMB探索処理で得られたMB動きベクトル(mv)と大きい分割モード(たとえば、「16×16」)とを出力(ステップS14:選択工程、第一選択工程)した後、フローチャートを終了する。
図10及び図11は、推定動きベクトル演算処理の動作フローチャートを示す図である。このフローチャートを開始すると、まず、ブロックサイズ変数sx、syとループ変数iにそれぞれ初期値をセットする(ステップS20)。iの初期値は“0”、sxとsyの初期値はSBの横サイズと縦サイズに相当する“8”である。
まず、i=0を判定し(ステップS21)、x=X、y=Yをセットする(ステップS22)。X及びYはSB0 の位置座標を表している。したがって、この回(i=0)では、図2の左上のサブブロック(SB0 )を対象にした処理が行われる。
A=SAD(x,y,x0 、y0 ,sx,sy)
B=SAD(x,y,x0 +1、y0 ,sx,sy)
C=SAD(x,y,x0 −1、y0 ,sx,sy)
D=SAD(x,y,x0 、y0 +1,sx,sy)
E=SAD(x,y,x0 、y0 −1,sx,sy)
の5回計算される。
A=SAD(X,Y,x0 、y0 ,8,8)
B=SAD(X,Y,x0 +1、y0 ,8,8)
C=SAD(X,Y,x0 −1、y0 ,8,8)
D=SAD(X,Y,x0 、y0 +1,8,8)
E=SAD(X,Y,x0 、y0 −1,8,8)
となる。これらの式は、たとえば、最近傍探索法などの高速探索アルゴリズムの1反復(予め定められた反復数又は予め定められた第1の反復数以下の少ない反復)分に相当する。
次に、ループ変数iを+1し(ステップS38)、i>3であるか否かを判定する(ステップS29)。今、i=1であるからループし、i=1を判定して(ステップS40)、x=X+8、y=Yをセットする(ステップS41)。X+8及びYはSB1 の位置座標を表している。したがって、この回(i=1)では、図2の右上のサブブロック(SB1 )を対象にした処理が行われる。
A=SAD(x,y,x0 、y0 ,sx,sy)
B=SAD(x,y,x0 +1、y0 ,sx,sy)
C=SAD(x,y,x0 −1、y0 ,sx,sy)
D=SAD(x,y,x0 、y0 +1,sx,sy)
E=SAD(x,y,x0 、y0 −1,sx,sy)
の5回計算される。
A=SAD(X+8,Y,x0 、y0 ,8,8)
B=SAD(X+8,Y,x0 +1、y0 ,8,8)
C=SAD(X+8,Y,x0 −1、y0 ,8,8)
D=SAD(X+8,Y,x0 、y0 +1,8,8)
E=SAD(X+8,Y,x0 、y0 −1,8,8)
となる。これらの式は、たとえば、最近傍探索法などの高速探索アルゴリズムの1反復(予め定められた反復数又は予め定められた第1の反復数以下の少ない反復)分に相当する。
次に、ループ変数iを+1し(ステップS38)、i>3であるか否かを判定する(ステップS29)。今、i=2であるからループし、i=2を判定して(ステップS42)、x=X、y=Y+8をセットする(ステップS43)。X及びY+8はSB2 の位置座標を表している。したがって、この回(i=2)では、図2の左下のサブブロック(SB2 )を対象にした処理が行われる。
A=SAD(x,y,x0 、y0 ,sx,sy)
B=SAD(x,y,x0 +1、y0 ,sx,sy)
C=SAD(x,y,x0 −1、y0 ,sx,sy)
D=SAD(x,y,x0 、y0 +1,sx,sy)
E=SAD(x,y,x0 、y0 −1,sx,sy)
の5回計算される。
A=SAD(X,Y+8,x0 、y0 ,8,8)
B=SAD(X,Y+8,x0 +1、y0 ,8,8)
C=SAD(X,Y+8,x0 −1、y0 ,8,8)
D=SAD(X,Y+8,x0 、y0 +1,8,8)
E=SAD(X,Y+8,x0 、y0 −1,8,8)
となる。これらの式は、たとえば、最近傍探索法などの高速探索アルゴリズムの1反復(予め定められた反復数又は予め定められた第1の反復数以下の少ない反復)分に相当する。
次に、ループ変数iを+1し(ステップS38)、i>3であるか否かを判定する(ステップS29)。今、i=3であるからループし、i=3を判定して(ステップS42の“NO”)、x=X+8、y=Y+8をセットする(ステップS44)。X+8及びY+8はSB3 の座標を表す。したがって、この回(i=3)では、図2の左下のサブブロック(SB3 )を対象にした処理が行われる。
A=SAD(x,y,x0 、y0 ,sx,sy)
B=SAD(x,y,x0 +1、y0 ,sx,sy)
C=SAD(x,y,x0 −1、y0 ,sx,sy)
D=SAD(x,y,x0 、y0 +1,sx,sy)
E=SAD(x,y,x0 、y0 −1,sx,sy)
の5回計算される。
A=SAD(X+8,Y+8,x0 、y0 ,8,8)
B=SAD(X+8,Y+8,x0 +1、y0 ,8,8)
C=SAD(X+8,Y+8,x0 −1、y0 ,8,8)
D=SAD(X+8,Y+8,x0 、y0 +1,8,8)
E=SAD(X+8,Y+8,x0 、y0 −1,8,8)
となる。これらの式は、たとえば、最近傍探索法などの高速探索アルゴリズムの1反復(予め定められた反復数又は予め定められた第1の反復数以下の少ない反復)分に相当する。
また、SB1 の探索中心(x0 ,y0 )の残差評価値A、探索中心(x0 ,y0 )の1画素右(x0 +1、y0 )の残差評価値B、探索中心(x0 ,y0 )の1画素左(x0 −1、y0 )の残差評価値C、探索中心(x0 ,y0 )の1画素上(x0 、y0 +1)の残差評価値D、及び、探索中心(x0 ,y0 )の1画素下(x0 、y0 −1)の残差評価値Eのうち最小のものを「fv1 」として、
また、SB2 の探索中心(x0 ,y0 )の残差評価値A、探索中心(x0 ,y0 )の1画素右(x0 +1、y0 )の残差評価値B、探索中心(x0 ,y0 )の1画素左(x0 −1、y0 )の残差評価値C、探索中心(x0 ,y0 )の1画素上(x0 、y0 +1)の残差評価値D、及び、探索中心(x0 ,y0 )の1画素下(x0 、y0 −1)の残差評価値Eのうち最小のものを「fv2 」として、
また、SB3 の探索中心(x0 ,y0 )の残差評価値A、探索中心(x0 ,y0 )の1画素右(x0 +1、y0 )の残差評価値B、探索中心(x0 ,y0 )の1画素左(x0 −1、y0 )の残差評価値C、探索中心(x0 ,y0 )の1画素上(x0 、y0 +1)の残差評価値D、及び、探索中心(x0 ,y0 )の1画素下(x0 、y0 −1)の残差評価値Eのうち最小のものを「fv3 」として、それぞれ得られる。
図12は、MB探索処理の動作フローチャートを示す図である。このフローチャートを開始すると、まず、fv0 が初期値(x0 ,y0 )であるか否かを判定し(ステップS50)、初期値である場合はmvに(x0 ,y0 )をセット(ステップS51)した後、フローチャートを終了する。
図13は、SB探索処理の動作フローチャートを示す図である。このフローチャートを開始すると、まず、sx=8、sy=8、n=14をセットする(ステップS60)。次いで、x=X、y=Y、ox=fv0 、oy=fv0 をセットし(ステップS61)、それらを引数にしてNNS関数処理(図14又は図15)を実行し、その関数の戻り値をmv0 にセットする(ステップS62)。ここで、x=X、y=Y、ox=fv0 、oy=fv0 、sx=8、sy=8、n=14であるから、NNS(X,Y,fv0 ,fv0 ,8,8,14)となる。
図14は、NNS関数処理のフローチャートを示す図である。この関数は与えられた引数(x:ブロックX座標,y:ブロックY座標,ox:オフセットX座標,oy:オフセットY座標,sx:ブロックサイズX,sy:ブロックサイズY,n:最大反復数)に従って高速探索アルゴリズムの一つである最近傍探索法を実行し、その結果を戻り値として返す。
次いで、ループ変数iを+1して(ステップS76)、そのiが最大反復数nを超えているか否かを判定し(ステップS77)、超えていなければ、ステップS71に戻って以上の処理を繰り返し(反復し)、超えていれば、そのときの探索中心の座標を戻り値にして(ステップS74)、フローを終了(反復を終了)する。
このように、本実施形態によれば、最近傍探索法の第1反復(予め定められた反復数又は予め定められた第1の反復数以下の少ない反復)に相当する演算だけを行って得られた各サブブロック(SB0 〜SB3 )の各々の推定動きベクトル(fv0 〜fv3 )に基づいてマクロブロック(MB)内の動きが一様に近いか否かを早い段階で判断し、その判断結果に従って探索ブロックの分割方法(大きい分割モードにするか、小さい分割モードにするか)を決定するので、従来技術に比べて、その決定に要する時間を短くすることができ、しかも、次に述べる理由より、計算量をほぼ半減することもできる。
(1)サブブロックのサイズ、個数、形状は任意である。また、分割方法に階層関係があれば同様に適用できる。例えば、H.264では「16×16」を分割した「8×8」をさらに「4×8」、「8×4」、「4×4」に分割することができ、階層構造が二重になっているが、このいずれかの階層間で、または両方の階層間で行うことができる。
(2)残差評価値はSADの代わりにSSD(sum of squared difference:差分二乗和)等であってもよい。サブブロック評価値の集まりからブロック評価値を計算可能であれば、全く同様に適用できる。また、動きベクトルの符号割り当てコストを評価値に加えてもよい。
(3)推定動きベクトル(fv0 〜fv3 )を求めるための反復(予め定められた反復数又は予め定められた第1の反復数以下の少ない反復)は1回だけとしたが、2回ないしはそれ以上の反復を行ってもよい。少なくとも最大反復数(予め定められた反復数又は予め定められた第1の反復数)以下であればよい。反復回数を増やすほど、推定の確実さが高まる。
(4)推定動きベクトル(fv0 〜fv3 )の等価判別は、完全等価のみならず、各成分の差分絶対値が所定値以内などの近似等価によって行ってもよい。
(5)動き推定のための探索アルゴリズムは、最近傍探索法だけでなく、たとえば、Nステップ探索法や対数探索法など他のアルゴリズムを用いてもよい。
S11 第一判定処理(第一判定工程)
S13 MB探索処理(第二動きベクトル演算工程)
S14 MB動きベクトル出力(選択工程、第一選択工程)
S15 SB探索処理(第三動きベクトル演算工程)
S16 第二判定処理(第二判定工程)
S18 MB動きベクトル出力(選択工程、第二選択工程)
S19 SB動きベクトル出力(選択工程、第二選択工程)
10 動き補償予測符号化装置
19 動き推定部(ブロック選択手段)
21 推定動きベクトル演算部(第一動きベクトル演算手段)
22 第一判定部(第一判定手段)
23 MB探索部(第二動きベクトル演算手段)
24 第一MB動きベクトル出力部(第一選択手段)
25 SB探索部(第三動きベクトル演算手段)
26 第二判定部(第二判定手段)
27 第二MB動きベクトル出力部(第二選択手段)
28 SB動きベクトル出力部(第二選択手段)
Claims (5)
- 第一ブロックと該第一ブロックを複数に分割した第二ブロックのいずれか一方を動き補償予測ブロックとして選択する動き補償予測符号化装置において、
前記第二ブロックの各々について、所定の探索アルゴリズムを予め定められた第1の反復数以下の少ない反復で動きベクトルを演算する第一動きベクトル演算手段と、
この第一動きベクトル演算手段によって演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第一判定手段と、
この第一判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する第一選択制御手段
と、
前記第一判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックについて、前記所定の探索アルゴリズムにより予め定められた第2の反復数を上限として動きベクトルを演算する第二動きベクトル演算手段と、
前記第一判定手段による判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックの各々について、所定の探索アルゴリズムにより予め定められた第3の反復数を上限として動きベクトルを演算する第三動きベクトル演算手段と、
この第三動きベクトル演算手段で演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第二判定手段と、
前記第二判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する一方、前記第二判定手段による判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックを動き補償予測ブロックとして選択するよう制御する第二選択制御手段と
を備えたことを特徴とする動き補償予測符号化装置。 - 前記第二動きベクトル演算手段は、前記第一動きベクトル演算手段が前記所定の探索アルゴリズムを反復させた結果得られた中間値を初期値として前記所定の探索アルゴリズムによる反復を開始することを特徴とする請求項1記載の動き補償予測符号化装置。
- 前記所定の探索アルゴリズムとは、最近傍探索法又はNステップ探索法若しくは対数探索法を利用したアルゴリズムであることを特徴とする請求項1又は2記載の動き補償予測符号化装置。
- 第一ブロックと該第一ブロックを複数に分割した第二ブロックのいずれか一方を動き補
償予測ブロックとして選択する動き補償予測符号化方法であって、
前記第二ブロックの各々について、所定の探索アルゴリズムを予め定められた第1の反復数以下の少ない反復で動きベクトルを演算する第一動きベクトル演算ステップと、
この第一動きベクトル演算ステップにて演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第一判定ステップと、
この第一判定ステップによる判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する第一選択制御ステップと、
前記第一判定ステップによる判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックについて、前記所定の探索アルゴリズムにより予め定められた第2の反復数を上限として動きベクトルを演算する第二動きベクトル演算ステップと、
前記第一判定ステップによる判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックの各々について、所定の探索アルゴリズムにより予め定められた第3の反復数を上限として動きベクトルを演算する第三動きベクトル演算ステップと、
この第三動きベクトル演算ステップで演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第二判定ステップと、
前記第二判定ステップによる判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する一方、前記第二判定ステップによる判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックを動き補償予測ブロックとして選択するよう制御する第二選択制御ステップと
を含むことを特徴とする動き補償予測符号化方法。 - 動き補償予測符号化処理を実行するコンピュータに、第一ブロックと該第一ブロックを複数に分割した第二ブロックのいずれか一方を動き補償予測ブロックとして選択する機能を実行させるプログラムであって、当該コンピュータを、
前記第二ブロックの各々について、所定の探索アルゴリズムを予め定められた第1の反復数以下の少ない反復で動きベクトルを演算する第一動きベクトル演算手段、
この第一動きベクトル演算手段によって演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第一判定手段、
この第一判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する第一選択制御手段、
前記第一判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックについて、前記所定の探索アルゴリズムにより予め定められた第2の反復数を上限として動きベクトルを演算する第二動きベクトル演算手段、
前記第一判定手段による判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックの各々について、所定の探索アルゴリズムにより予め定められた第3の反復数を上限として動きベクトルを演算する第三動きベクトル演算手段、
この第三動きベクトル演算手段で演算された各々の動きベクトルが完全等価又は近似等価であるか否かを判定する第二判定手段、
前記第二判定手段による判定の結果、完全等価又は近似等価であると判定した場合に、前記第一ブロックを動き補償予測ブロックとして選択するよう制御する一方、前記第二判定手段による判定の結果、完全等価又は近似等価でないと判定した場合に、前記第二ブロックを動き補償予測ブロックとして選択するよう制御する第二選択制御手段
として機能させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004368854A JP4438949B2 (ja) | 2004-12-21 | 2004-12-21 | 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004368854A JP4438949B2 (ja) | 2004-12-21 | 2004-12-21 | 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009264503A Division JP4957780B2 (ja) | 2009-11-20 | 2009-11-20 | 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2006180014A JP2006180014A (ja) | 2006-07-06 |
JP2006180014A5 JP2006180014A5 (ja) | 2007-11-29 |
JP4438949B2 true JP4438949B2 (ja) | 2010-03-24 |
Family
ID=36733722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004368854A Active JP4438949B2 (ja) | 2004-12-21 | 2004-12-21 | 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4438949B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8311120B2 (en) * | 2006-12-22 | 2012-11-13 | Qualcomm Incorporated | Coding mode selection using information of other coding modes |
CN103703780B (zh) * | 2011-07-22 | 2016-12-07 | 株式会社日立制作所 | 运动图像解码方法及图像编码方法 |
-
2004
- 2004-12-21 JP JP2004368854A patent/JP4438949B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2006180014A (ja) | 2006-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8705611B2 (en) | Image prediction encoding device, image prediction encoding method, image prediction encoding program, image prediction decoding device, image prediction decoding method, and image prediction decoding program | |
JP5373626B2 (ja) | 複数の動きベクトル・プレディクタを使用して動きベクトルを推定する方法、装置、エンコーダ、デコーダ及びデコーディング方法 | |
KR102042374B1 (ko) | 이미지들의 시퀀스를 인코딩하기 위한 방법 및 디바이스 및 이미지들의 시퀀스를 디코딩하기 위한 방법 및 디바이스 | |
CN101283600B (zh) | 参考图像选择方法以及装置 | |
KR100510137B1 (ko) | 고속 움직임 추정을 위한 참조 픽쳐 및 블록 모드 결정방법, 그 장치, 블록 모드 결정 방법 및 그 장치 | |
CN101326550A (zh) | 利用预测指导的抽取搜索的运动估计 | |
JP4523023B2 (ja) | 画像符号化装置および方法 | |
US20080002772A1 (en) | Motion vector estimation method | |
JP2008227670A (ja) | 画像符号化装置 | |
JP2007189276A (ja) | 画像圧縮装置及び画像圧縮プログラム | |
CN101888546A (zh) | 一种运动估计的方法及装置 | |
JP4957780B2 (ja) | 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム | |
CN108924551B (zh) | 视频图像编码模式的预测方法及相关设备 | |
CN114079792A (zh) | 视频编码参考块的压缩方法、编码方法和装置 | |
JP4257789B2 (ja) | 動画像符号化装置 | |
WO2016116984A1 (ja) | 動画像符号化装置、動画像符号化方法および動画像符号化プログラム | |
JP4438949B2 (ja) | 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム | |
WO2019150411A1 (ja) | 映像符号化装置、映像符号化方法、映像復号装置、映像復号方法、及び映像符号化システム | |
JP4547668B2 (ja) | 動き補償予測符号化装置及び動き補償予測符号化方法 | |
US20130195190A1 (en) | Method for deciding motion partition mode and encoder | |
CN113794883B (zh) | 一种编解码方法、装置及其设备 | |
CN110662074B (zh) | 一种运动矢量确定方法和设备 | |
JP2012120108A (ja) | 補間画像生成装置及びプログラム、並びに、動画像復号装置及びプログラム | |
US20240064336A1 (en) | Image decoding apparatus and image encoding apparatus using ai, and methods performed thereby | |
JPH10164596A (ja) | 動き検出装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071011 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071011 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090917 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090924 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091120 |
|
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: 20091216 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130115 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4438949 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091229 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130115 Year of fee payment: 3 |