JP2005260883A - 動画像符号化装置及び動画像符号化方法、並びにプログラムおよびコンピュータ読み取り可能な記憶媒体 - Google Patents

動画像符号化装置及び動画像符号化方法、並びにプログラムおよびコンピュータ読み取り可能な記憶媒体 Download PDF

Info

Publication number
JP2005260883A
JP2005260883A JP2004073402A JP2004073402A JP2005260883A JP 2005260883 A JP2005260883 A JP 2005260883A JP 2004073402 A JP2004073402 A JP 2004073402A JP 2004073402 A JP2004073402 A JP 2004073402A JP 2005260883 A JP2005260883 A JP 2005260883A
Authority
JP
Japan
Prior art keywords
motion vector
encoding
prediction error
unit
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.)
Withdrawn
Application number
JP2004073402A
Other languages
English (en)
Inventor
Masaki Suzuki
正樹 鈴木
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004073402A priority Critical patent/JP2005260883A/ja
Publication of JP2005260883A publication Critical patent/JP2005260883A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】 動きベクトル検出の演算を効率よく行い、動きベクトル検出に掛かる演算時間を短縮することができる動画像符号化装置を提供する。
【解決手段】 本発明は、符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出して、前記符号化対象画像を符号化する動画像符号化装置及び方法に関連する。本発明では、符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視し、この監視された予測誤差の変動が所定条件を充足するかを判定する。そして、判定結果に基づいて、動きベクトルを決定し、決定された動きベクトルと符号化画像を多重化して多重化データを生成する。
【選択図】 図4

Description

本発明は、動きベクトル探索によるフレーム間予測を用いて動画像フレームを符号化する動画像符号化装置および方法に関するものである。
一般的に、ディジタル化された生の動画像は情報量が多いため、記録・伝送するにあたって情報量を圧縮する技術が必要になる。動きベクトルを用いた動画像の符号化方法の例として、“ITU勧告H.261 オーディオビジュアル・サービス用ビデオ符号化”があり、この符号化によれば、符号化対象のフレームを複数のブロックに分割し、ブロック毎に参照フレーム(1フレーム前のフレーム)と比較して動きベクトルを検出する。この際、符号化対象ブロックの周囲±15画素の範囲で動きベクトルを探索している。
図3は、上述した従来技術における動画像符号化装置の構成を示すブロック図である。図3において、動画像入力部100は、時間方向に連続する複数フレームで構成されるデジタル動画像が入力される。ブロック分割部101は、動画像入力部100から入力された動画像を小さな矩形Bij(例えば8x8,16x16など)に分割して、ブロック毎に出力する。カラー動画像の場合はマクロブロック(MBij)と呼ばれる矩形単位で行い、MBijはBijより大きなサイズとなる。以下では、入力画像がカラー画像である事を想定しマクロブロック単位で処理を行う。動きベクトル検出部108では、フレームバッファ107に記憶された前フレームの符号化画像を参照して、ブロック分割部101で分割したブロック単位で動きベクトル検出する。
この際、符号化対象ブロックの周囲±15画素の範囲で、ブロックマッチングを行い、予測誤差の絶対和の平均MAEが最小のブロックを予測ブロックとして、動きベクトルを検出する。フレームバッファ107には、予測画像保持部110の情報と、減算器115、直交変換102、量子化103、逆量子化104、逆直交変換105を経た差分信号の再生情報を加算器116で加算した再生フレームを蓄積する領域がある。
動き補償部109は、動きベクトル検出部108により検出された動きベクトルを用いて、フレームバッファ107に蓄積された参照フレームから予測ブロックを検出し、予測画像保持部110に出力する。予測画像保持部110は、蓄積している予測画像を減算器115と加算器107に出力する。減算器115はブロック分割部101から入力される符号化対象ブロックと、予測画像保持部110からの予測値の差を算出し、直交変換部102に出力する。直交変換部102では、減算器115から出力された予測値の差(以下、予測誤差)を直交変換する。
量子化部103では、スカラー量子化が行われ、量子化後の値を可変長符号化部104と逆量子化部105に出力する。可変長符号化部104では、量子化部103で量子化された値を可変長符号化し、多重化部113へ出力する。逆量子化部105では、量子化部103で量子化された値を逆量子化し、逆量子化された値を逆直交変換部106へ出力する。逆直交変換部106では、直交化された予測誤差信号を逆直交化し、加算器116に出力する。加算器116は、逆直交変換部106の出力と、予測画像保持部110の出力を加算し符号化対象ブロックを再生し、フレームバッファ107に出力する。差分動きベクトル検出部111では、動きベクトル検出部108で検出された動きベクトルと、符号化対象ブロックの左隣の動きベクトルとの差分を検出し、動きベクトル可変長符号化部112に出力する。動きベクトル可変長符号化部112では、差分動きベクトル部111から出力された差分ベクトルを可変長符号化し、多重化部113へ出力する。多重化部113では、可変長符号化部104と、差分動きベクトル可変長符号化部112の出力を多重化し、符号出力部に出力する。符号出力部114では、多重化部113で多重化された符号化が出力される。
このような流れで、動きベクトルを用いた動画像符号化が施されるが、画面上で高周波が少なく、低周波が多く、面積が大きい領域がある場合、その領域内で検出した動きベクトルが散乱し、動きベクトルの発生符号量が増大する場合がある。
動きベクトル検出の際、符号化対象ブロックを用いて参照フレームをブロックマッチングするが、予測誤差最小であるブロックを用いて動きベクトル検出するアルゴリズムが符号化量を増大させる原因である。この問題に対しては、フィールド/フレーム動きベクトル検出に特化するが、予測誤差が小さいものから所定の個数の分散がしきい値以下であり(動きベクトルが正確に定まらない状況を意味する)、近傍8マクロブロックに対して以下のA値がしきい値以下の場合(近傍が平坦な領域)、ベクトルの長さが小さいものを動きベクトルとして検出する方法が公開されている(HDTV高圧縮技術、社団法人映像メディア学会技術報告,Vol26, No31, pp.25-30,CS2002-12)。
Figure 2005260883
HDTV高圧縮技術、社団法人映像メディア学会技術報告,Vol26, No31, pp.25-30,CS2002-12
しかしながら、上述の方法により動きベクトルの散乱を抑制する場合、予測誤差の小さいものから所定の数の分散を用いるので、常時与えられた動きベクトル探索範囲の探索が全て終了しなければ動きベクトルが不正確である事を検出できず、計算時間がかかる。さらに画面の多くの領域でベクトルが散乱するような画像の場合、上記Aの値を毎回計算すると計算コストが高くなる。
本発明は、このような事情を考慮してなされたものであり、事前に簡易な計算で動きベクトルが正確に定まらない領域を検出し、一回のブロックマッチング毎に近傍が平坦であるかを監視し、動きベクトルの散乱を抑制し、発生符号量を抑制する動画像符号化装置を提供するものである。
以上の課題を解決するために、本発明による動画像符号化装置は、符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出し、前記符号化対象画像を符号化する動画像符号化装置であって、前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視手段と、前記監視手段によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定手段と、前記判定手段の判定結果に基づいて、前記動きベクトルの決定する動きベクトル決定手段と、前記動きベクトル決定手段によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化手段と、を備えることを特徴とする。
また、本発明による動画像符号化方法は、符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出して、前記符号化対象画像を符号化する動画像符号化方法であって、前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視工程と、前記監視工程によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定工程と、前記判定工程の判定結果に基づいて、前記動きベクトルの決定する動きベクトル決定工程と、前記動きベクトル決定工程によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化工程と、を備えることを特徴とする。
さらなる本発明の特徴は、以下に説明する各実施形態及び添付図面によって明らかにされる。
本発明によれば、動きベクトル検出の演算を効率よく行い、動きベクトル検出に掛かる演算時間を短縮することができる。
以下、本発明の好適な実施の形態について説明する。
<第1の実施形態>
図4は、本発明の第1の実施形態に係る画像符号化装置の構成を示すブロック図である。本実施例においては動きベクトルを用いた簡単なフレーム間符号化方式を例にとって説明するが、これに限定されない。例えば、MPEG2やMPEG4符号化のようなフレーム間符号化手段であっても構わない。
第1の実施形態に係る動画像符号化装置は、動画像を入力する動画像入力部100、入力フレームを小さな矩形(この例では8x8)に分割するブロック分割部101、直交変換を施す直交変換部102、量子化を施す量子化部103、可変長符号化を施す可変長符号化部104、逆量子化を施す逆量子化部105、逆直交変換を施す逆直交変換部106、画像情報を保存するフレームバッファ107、動きベクトルを検出する動きベクトル検出部108、動き補償を行い、予測画像を生成する動き補償部109、予測画像を保持する予測画像保持部110、差分動きベクトルを検出する差分動きベクトル検出部111、差分動きベクトルから動きベクトルを可変長符号化する動きベクトル可変長符号化部112、符号を多重化する多重化部113、多重化された符号化出力する符号出力部114、二つの入力ブロックの画素同士を減算する減算器115、二つの入力ブロックの画素同士を加算する加算器116、動きベクトル検出方法を適応的に切り替え、動きベクトルを決定する動きベクトル検出制御部200とを備える。
上記構成において、各部の動作手順について説明する。動画像入力部100は、時間方向に連続する複数フレームで構成されるデジタル動画像が入力される。ブロック分割部101は、動画像入力部100から入力された動画像を小さな矩形Bij(8x8)に分割して、ブロック毎に出力する。カラー動画像の場合はマクロブロック(MBij)と呼ばれる矩形単位で行い、MBijはBijより大きなサイズとなる。以下では、入力画像がカラー画像である事を想定しマクロブロック単位で処理を行う。
フレームバッファ107には、予測画像保持部110の情報と減算器115、直交変換102、量子化103、逆量子化104、逆直交変換105を経た差分信号の再生情報を加算器116で加算した再生フレームを蓄積する領域がある。
動き補償部109は、動きベクトル検出部108により検出された動きベクトルを用いて、フレームバッファ107に蓄積された参照フレームから予測ブロックを検出し、予測画像保持部110に出力する。予測画像保持部110は、蓄積している予測画像を減算器115と加算器107に出力する。
減算器115はブロック分割部101から入力される符号化対象ブロックと、予測画像保持部110からの予測値の差を算出し、直交変換部102に出力する。直交変換部102では、減算器115から出力された予測値の差(以下、予測誤差)を直交変換する。
量子化部103では、スカラー量子化が行われ、量子化後の値を可変長符号化部104と逆量子化部105に出力する。可変長符号化部104では、量子化部103で量子化された値を可変長符号化し、多重化部113へ出力する。逆量子化部115では、量子化部103で量子化された値を逆量子化し、逆量子化された値を逆直交変換部106へ出力する。
逆直交変換部106では、直交化された予測誤差信号を逆直交化し、加算器116に出力する。加算器116は、逆直交変換部106の出力と、予測画像保持部110の出力を加算し符号化対象ブロックを再生し、フレームバッファ107に出力する。差分動きベクトル検出部111では、動きベクトル検出部108で検出された動きベクトルと、符号化対象ブロックの左隣の動きベクトルとの差分を検出し、動きベクトル可変長符号化部112に出力する。動きベクトル可変長符号化部112では、差分動きベクトル部111から出力された差分ベクトルを可変長符号化し、多重化部113へ出力する。多重化部113では、可変長符号化部104と、差分動きベクトル可変長符号化部112の出力を多重化し、符号出力部に出力する。符号出力部114は多重化された符号を出力する。
動きベクトル検出部108では、フレームバッファ107に記憶された前フレームの符号化画像を参照して、ブロック分割部101で分割したブロック単位で動きベクトル検出し、算出した平均絶対誤差MAE(Mean Absolute Error:MB単位における画素値の差分の絶対値の総和)と対応する動きベクトルは動きベクトル検出制御部200に送信され、動きベクトル決定方法は、動きベクトル検出制御部200によって制御される。
動きベクトル検出制御部200は図5に示すように、動きベクトル検出部108から出力されるMAEから△MAEを算出する予測誤差統計量監視部204と、予測誤差統計量監視部204で算出する△MAEの情報に基づき、動きベクトル決定方法を最少ベクトル算出部207と動きベクトル検出部108のいずれかに委ねる、動きベクトル検出停止部205と、動きベクトル検出部108で算出したMAEと対応する候補動きベクトルを蓄積する“候補ベクトルと予測誤差蓄積部”206と、動きベクトル検出停止命令部205からの命令に基づき、“候補ベクトルと予測誤差蓄積部”206に蓄積されているから、動きベクトルを決定する最少ベクトル算出部207”から構成される(図5)。なお、ここで、△MAE=MAE(i+1)−MAE(i)を意味している。
まず、本発明を特徴付ける動きベクトル検出部108と、動きベクトル検出制御部200の各部の動作手順について説明する前に、動きベクトルが散乱する低周波領域検出の概略を図6A乃至Cに基づき説明する。なお、動画像圧縮符号化では16x16のマクロブロック単位でブロックマッチングを行い、差分信号の絶対値の平均MAEを算出するが、以下の説明においては、1画素単位でマッチングを行う。
図6は、第1の実施形態における画素値、MAE及び△MAEの推移を説明するための図である。図6では、説明を単純化するためMAEと△MAEを画素単位で見ている。本来はマクロブロックMB単位で動作するものである。
図6Aのように、参照画像中RIに輝度が2、1、1、1、2と並んでいるとして、符号化画像TIの符号化対象ブロックの輝度が1である場合を考える。すると、図6Bに示されるように、RIにおいて輝度が1の画素はMAEが0になり、2の画素はMAEが1になる。
次に、MAEの差分を画素方向に算出すると、図6Cのようになる。画素方向0番目は−0番目の画素が存在しないとデルタMAEを算出できないが、仮想的に△MAE=0とする。
そこで、△MAEが閾値B以下(以下、閾値B=0、Bは実数)の画素数CNTがC以上(以下、閾値C=3と表す、Cは実数)という条件を定義すると、図6Cのように広い範囲で低周波が存在する領域を検出できる。低周波領域検出後は、ベクトルの長さが小さい画素、この例の場合、0番目の画素から動きベクトルが算出される。
以下では、本発明を特徴付ける動きベクトル検出部108と、動きベクトル検出制御部200の各部の動作手順について図5および図7のフローチャートを参照して説明する。
動きベクトル検出部108が起動すると、CNTを0に初期化し(ステップS300)、動きベクトル検出制御部200を起動する。次に、符号化対象フレームから符号化対象となるブロックを決定する(ステップS301)。予測誤差統計量監視部204では、ブロックマッチングで算出される予測誤差MAEの△MAEを監視する(ステップS304)。その後、動きベクトル検出部108において参照フレーム内のブロックを所定の順序でブロックマッチングする(ステップS305)。
△MAEが閾値B以下の時(ステップS306)、CNT=CNT+1とし(ステップS307)、CNTが閾値C以上でなく(ステップS308)、ベクトル探索範囲を超えない(ステップS309)という2つの条件を同時に満たす場合、ブロックマッチングは続く。また、△MAEが閾値B以上の時(ステップS306)で、ベクトル探索範囲を超えない(ステップS309)という2つの条件を同時に満たす場合も、ブロックマッチングは続く。
ブロックマッチングを行っている最中に算出されるMAEと対応する動きベクトルは、“候補ベクトルと予測誤差蓄積部206”に蓄積され、動きベクトル検出停止部205では、ベクトル探索範囲を超えない範囲でCNTが閾値C以上の場合(ステップS308)、最少ベクトル算出部207に決定命令を送る。最少ベクトル算出部207では、“候補ベクトルと予測誤差の統計量蓄積部206”に蓄積されている候補ベクトルの中から水平成分と垂直成分の絶対和が最小のベクトルを動きベクトルとして決定し(ステップS310)、動きベクトル検出を終了する(ステップS312)。
CNTが閾値C以上という条件を満たさず(ステップS308)に動きベクトル探索範囲を超えた場合(ステップS309)、最少ベクトル算出部207では、動きベクトル検出部108に動きベクトル決定を委ね、動きベクトル検出部108では、MAEが最小のブロックから動きベクトルを決定し(ステップS309)、動きベクトル検出を終了する(ステップS313)。
以上、第1の実施形態によれば、平坦な領域において動きベクトルの散乱を高速に抑制できる。
なお、最少ベクトル算出部207において動きベクトルを決定する条件は、ベクトルの長さが最少のベクトルでもかまわない。また、いずれかの座標だけ(例えばx軸)だけを比較し、最少の長さでもかまわない。
<第2の実施形態>
図8は第2の実施形態に係る動きベクトル検出制御部200の内部構成を示すブロック図であり、予測誤差閾値部201と補正ベクトル検出制御部202と、予測誤差統計量監視部204とを備える。
ここで、本実施形態を特徴付ける動きベクトル検出部108と、動きベクトル検出制御部200の各部の動作手順について説明する前に、本実施形態の概略を図9A乃至Cに基づいて説明する。なお、動画像圧縮符号化では16x16のマクロブロック単位でブロックマッチングを行い、差分信号の絶対値の平均MAEを算出するが、以下の説明においては、1画素単位でマッチングを行う。
第1の実施形態では、△MAEが閾値B以下というマクロブロックに着目しているため動きベクトルの発生符号量が小さい動きベクトルを選択しても、テクスチャの発生符号量が増加して、結果的にフレーム当たりの発生符号量が増加する場合がある。例えば、図9Aでは、輝度が1、1、2、4、4、4、4と並んでいるが、ここで、図から0番目付近と4番目付近に低周波が存在していることが分かる。そして、MAEは、参照画像の画素値と符号化対象画像の画素値の差分であり、そのMAEが図9Bに示されている。なお、第2の実施形態でも、第1の実施形態同様、説明の単純化のため、MAEと△MAEについて画素単位で演算している。
そして、低周波検出のための閾値Bを0、閾値Cを3とし、△MAEを算出すると、図9Cに示されるように、4番目の画素付近が低周波として検出される。しかし、4番目付近の画素は図9Bから分かるようにMAEは大きい。従って、動きベクトルから発生する符号量を抑制するはずの動きベクトルを選択したのにもかかわらず、テクスチャの発生符号量の方が、大きくなってしまい、結果的にフレーム当たりの発生符号量が増加する(MAEとテクスチャの発生符号量はおおまかにみて比例関係と言えるためである)。
そこで、本実施形態では、動きベクトルが(0,0)になるマクロブロックとの差分信号の和が閾値A以下の場合、動きベクトルが(0,0)のマクロブロックからブロックマッチングされる順番に△MAEを監視し、(0,0)のマクロブロックから数えて、△MAEが閾値B以下になるマクロブロックが連続で閾値C以上検出した場合、低周波領域と決め打ちして、動きベクトルを(0,0)とする。なお、第1の実施形態のように、候補ベクトルから、垂直成分と水平成分の絶対和が最小のベクトルを検出された動きベクトルとしてもよい。
以下では、本発明を特徴付ける、動きベクトル制御部200と動きベクトル検出部108の動作の概略について、図8及び図11のフローチャートを参照して説明する。
動きベクトル検出部108は、従来の動きベクトル検出方法(MAE最少のマクロブロックから動きベクトルを決定する方法)を行う他に、ブロックマッチングの過程で算出される予測誤差のうち空間的に対応するマクロブロック(動きベクトルが(0,0))から算出される平均絶対値MAEを予測誤差閾値部201へ出力する。また、補正ベクトル検出制御部202からの信号に基づき、従来の動きベクトル検出方法を停止し、補正ベクトル決定部に動きベクトル検出方法決定を委ねる。またブロックマッチングの順序は図10のように(0,0)を初期座標とした任意の方向である
図8において、予測誤差閾値部201は、動きベクトル検出部108で算出された予測誤差を閾値処理して2値化し、その総和をΣLとして出力する。
ここで、ΣLの意味を図1及び2を参照して確認しておこう。ΣLを演算する目的は動きベクトルが散乱すると予想される低周波領域の高速検出である。画面上で、大きな面積をもつ低周波領域が比較的遅い速度で画面上を動いた時(図1の黒く塗りつぶした領域の面積が大きい低周波領域)、フレーム間差分を計算すると、フレーム間で低周波領域が空間的に交わっていれば、ΣLは小さな値を持つ。極端な場合、図1のように、RGB値(0,0,0)で塗りつぶした物体が動いた場合、図2のように大きな範囲で差分が0になる。よってΣLが所定の閾値以下である時そのマクロブロックMBは低周波領域として検出される。
補正ベクトル検出制御部202では、予測誤差閾値部201で算出したΣLが閾値A以上の場合(低周波領域ではなく、高周波領域であると検出した場合)、動きベクトル検出部108へ従来型動きベクトル検出命令を送る。また、ΣLが閾値A以下の時(低周波領域と検出した場合)、補正ベクトル決定部203を起動し、動きベクトル検出部108にMAE算出継続命令と、動きベクトル決定待機命令を送信する。
補正ベクトル決定部203は、動きベクトル検出部108から出力されるMAEから△MAEを算出する予測誤差統計量監視部204と、予測誤差統計量監視部204で算出する△MAEの情報に基づき、動きベクトル決定方法をゼロベクトル決定部208と動きベクトル検出部108のいずれかに委ねる動きベクトル検出停止部205と、動きベクトル検出停止部205からの命令により動きベクトルを(0,0)と決定するゼロベクトル決定部208から構成される。
以下、本発明を特徴付ける補正ベクトル決定部と、動きベクトル制御部200と動きベクトル検出部108の動作について、図12のフローチャートを参照して説明する。
動きベクトル検出部108が起動すると(ステップS400)、予測誤差閾値部201と補正ベクトル検出制御部202を起動する。次に、符号化対象フレームから符号化対象となるブロックを決定し(ステップS401)、予測誤差閾値部201によって参照フレームで対応するブロック(動きベクトルが(0,0))との差分信号に閾値処理を行い2値化し、処理後の値の和ΣLを算出する(ステップS402)。
次に、補正ベクトル検出制御部202は、ΣLが閾値A以上の場合(ステップS403)、動きベクトル検出部108に従来型動きベクトル検出を命令する。すなわち、参照フレーム内のブロックを所定の順序でブロックマッチングし(ステップS410)、決められたベクトル探索範囲の探索が終了したら(ステップS411)、MAEが最小のブロックから動きベクトルを決定し(ステップS412)、動きベクトル検出を終了する(ステップS413)。
また、二値化後の和ΣLが閾値A以下の場合は(ステップS403)、補正ベクトル決定部203を稼動するし、動きベクトル検出部108は、MAEの検出と、MAE最少のマクロブロックの蓄積を継続する。予測誤差統計量監視部204では、ブロックマッチングで算出される予測誤差MAEの△MAEを監視する(ステップS404)。
その後、参照フレーム内のブロックを所定の順序でブロックマッチングし(ステップS405)、△MAEがB以下である(ステップS406)マクロブロックが動きベクトル(0,0)から連続で何回続いているかカウント(ステップS407)し(変数CNTでカウント)、CNTが閾値C以上でないという条件(ステップS414)と、ベクトル探索範囲を超えないという2つの条件(ステップS408)を同時に満たす場合、ブロックマッチングは続く。動きベクトル検出停止部205では、CNTが閾値C以上の場合(ステップS414)、ゼロベクトル決定部209に決定命令を送る。ゼロベクトル算出部209では(0,0)を動きベクトルとして決定すし(ステップS415)、動きベクトル検出を終了する(ステップS413)。
また、CNTが閾値C以上という条件を満たさずに動きベクトル探索範囲を超えた場合(ステップS408)、ゼロベクトル決定部209では、動きベクトル検出部108に蓄積されているMAE最少のマクロブロックから動きベクトルを決定すし(ステップS409)、動きベクトル検出を終了する(ステップS413)。
以上説明したように、第1の実施形態では候補動きベクトルから、動きベクトルを決定するプロセスがあったが、第2の本実施形態では、そのプロセスが存在しないので高速に符号化される。
<第3の実施形態>
図13は第3の実施形態に係る動きベクトル検出制御部200の内部構成を示すブロック図であり、第1の実施形態における、“候補ベクトルと予測誤差蓄積部”206から予測誤差監視部204へ情報が供給されるようになっている。
今、第3の実施形態を説明するに当たって、図14Aで示されるような参照画像RI中の輝度列0、0、1、1、1、1を考える。上述の実施形態と同様、符号化画像TIの符号化対象ブロックの輝度が全て1であると、図14Bに示されるように、MAEは1、1、0、0、0、0となる。ここで、MAEが全て正となっているのは、MAEは絶対値で表されるからである。そして、△MAEは図14Cのように表される。△MAE演算においては、第1の実施形態同様、0番目の△MAEは仮想的に0としている。
なお、第2の実施形態では、動きベクトル(0,0)のマクロブロックを含んだ低周波領域だけが検出できる。よって、図14Aのような低周波領域は検出できない。つまり、第2の実施形態では、マクロブロックの動きベクトル(0,0)を基準として△MAEを演算し、それが閾値B以下になるかを見ているので、一旦△MAEが閾値B以上になってしまい、その後安定して低周波領域が続いても検出されないからである。
そこで、本実施形態では、△MAEが閾値B以下でも、MAEが閾値D以上の場合は、カウントせず、△MAEが連続で閾値以下Bでなければならないという制限も排除する。
以下、本発明を特に特徴付ける動きベクトル検出制御部203による動きベクトル検出器108の制御を、図15のフローチャートを参照して説明する。
動きベクトル検出部108が起動すると(700)、符号化対象フレームから符号化対象となるブロックを決定し(701)、補正ベクトル決定部202が稼動する。予測誤差統計量監視部204では、△MAEを監視する(704)。その後、参照フレーム内のブロックを所定の順序でブロックマッチングし(705)、MAEが閾値D以下でない時は、ステップ711に進む。MAEが閾値D以下であるマクロブロック(706)から算出した△MAEが閾値B以下(707)であった場合、CNT=CNT+1とし(708)、マクロブロックの数CNTが閾値C以上でない場合(709)、ステップ711に進む。
△MAEが閾値D以下でない場合、ステップ711に進む。また△MAEが閾値B以下でない場合も、ステップ711に進む。CNTが閾値C以上であるとき(709)、候補ベクトルの中から水平成分と垂直成分の絶対和が最小のベクトルを動きベクトルとして決定し(710)、動きベクトル検出を終了する(713)。
ステップ711では、ベクトル探索が動きベクトル探索範囲を超えない場合、ステップ705に進み、超えた場合は、予測誤差の絶対和の平均MAEが最小のブロックから動きベクトルを決定し(712)、動きベクトル検出を終了する(713)。
以上、第3の実施形態によれば、より精度良く低周波領域を検出でき、効率よい符号化を行える。
低周波が多い領域がフレーム間で動いている様子を表した図である。 低周波が多い領域がフレーム間で動いている時の、フレーム間差分画像を表す図である。 動き補償予測フレーム動きベクトルを用いた動画像符号化装置のブロック図である。 全実施形態に共通に適用される動画像符号化装置のブロック図である。 動画像符号化装置で用いられる動きベクトル検出制御部200の内部構成を示すブロック図である(第1の実施形態)。 第1の実施形態の説明で用いられる画素列、MAE及び△MAEの具体例を示す図である。 第1の実施形態に係るベクトル検出制御部200と動きベクトル検出部108の動作を説明するためのフローチャートである。 動画像符号化装置で用いられる動きベクトル検出制御部200の内部構成を示すブロック図である(第2の実施形態)。 第2の実施形態の説明で用いられる画素列、MAE及び△MAEの具体例を示す図である。 ブロックマッチングの処理順序の例を示す図である。 第2の実施形態に係る補正ベクトル決定部203の内部構成を示すブロック図である。 第2の実施形態に係るベクトル検出制御部200と動きベクトル検出部108の動作を説明するためのフローチャートである。 動画像符号化装置で用いられる動きベクトル検出制御部200の内部構成を示すブロック図である(第3の実施形態)。 第3の実施形態の説明で用いられる画素列、MAE及び△MAEの具体例を示す図である。 第3の実施形態に係るベクトル検出制御部200と動きベクトル検出部108の動作を説明するためのフローチャートである。 予測誤差閾値部で差分をとるブロックの説明図である。
符号の説明
100 動画像入力部
101 ブロック分割部
102 直交変換部
103 量子化部
104 可変長符号化部
105 逆量子化部
106 逆直交変換部
107 フレームバッファ
108 動きベクトル検出部
109 動き補償部
110 予測画像保持部
111 差分動きべクトル検出部
112 動きベクトル可変長部
113 多重化部
114 符号出力部
115 減算部
116 加算器
200 動きベクトル検出制御部
201 予測誤差閾値部
202 動きベクトル検出停止部
203 動きベクトル決定部

Claims (11)

  1. 符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出し、前記符号化対象画像を符号化する動画像符号化装置であって、
    前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視手段と、
    前記監視手段によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定手段と、
    前記判定手段の判定結果に基づいて、前記動きベクトルを決定する動きベクトル決定手段と、
    前記動きベクトル決定手段によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化手段と、
    を備えることを特徴とする動画像符号化装置。
  2. 前記予測誤差の変動が所定条件を充足する場合、前記動きベクトル決定手段は、前記予測誤差に対応する候補動きベクトルの中から水平成分及び垂直成分の絶対和が最小の動きベクトルを検出された動きベクトルとして採用することを特徴とする請求項1に記載の動画像符号化装置。
  3. 前記予測誤差の変動が所定条件を充足する場合、前記動きベクトル決定手段は、(0
    ,0)の動きベクトルを検出された動きベクトルとして採用することを特徴とする請求項1に記載の動画像符号化装置。
  4. 前記予測誤差の変動が所定条件を充足しない場合、前記動きベクトル決定手段は、前記予測誤差が最小の動きベクトルを検出された動きベクトルとして採用することを特徴とする請求項2又は3に記載の動画像符号化装置。
  5. 前記判定手段は、第1の閾値以下の前記予測誤差の変動が所定回数連続するか否かを判定することを特徴とする請求項1乃至4のいずれか1項に記載の動画像符号化装置。
  6. さらに、前記符号化ブロックの前記符号化画像内の位置に対応する前記参照画像内のブロックと前記符号化ブロックの予測誤差を閾値処理し、この閾値処理結果の総和が第2の閾値以上か否かを判定する閾値処理判定手段と、を備え、
    前記閾値処理結果の総和が前記第2の閾値以上である場合に、前記動きベクトル決定手段は、前記予測誤差が最小の動きベクトルを検出された動きベクトルとして採用することを特徴とする請求項1乃至5のいずれか1項に記載の動画像符号化装置。
  7. さらに、前記予測誤差が第3の閾値以下であるか否かを判定する平均予測誤差判定手段を備え、
    前記監視手段は、前記第3の閾値以下前記予測誤差についてのみ、予測誤差の変動を監視することを特徴とする請求項1乃至6のいずれか1項に記載の動画像符号化装置。
  8. 前記符号化ブロックは、MPEG4符号化形式におけるマクロブロックであることを特徴とする請求項1乃至7のいずれか1項に記載の動画像符号化装置。
  9. 符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出して、前記符号化対象画像を符号化する動画像符号化方法であって、
    前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視工程と、
    前記監視工程によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定工程と、
    前記判定工程の判定結果に基づいて、前記動きベクトルを決定する動きベクトル決定工程と、
    前記動きベクトル決定工程によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化工程と、
    を備えることを特徴とする動画像符号化方法。
  10. 符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出して、前記符号化対象画像を符号化する動画像符号化方法を実行するコンピュータプログラムであって、
    前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視工程を実行するためのコードと、
    前記監視工程によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定工程を実行するためのコードと、
    前記判定工程の判定結果に基づいて、前記動きベクトルを決定する動きベクトル決定工程を実行するためのコードと、
    前記動きベクトル決定工程によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化工程を実行するためのコードと、
    を備えることを特徴とするコンピュータプログラム。
  11. 請求項10に記載のコンピュータプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
JP2004073402A 2004-03-15 2004-03-15 動画像符号化装置及び動画像符号化方法、並びにプログラムおよびコンピュータ読み取り可能な記憶媒体 Withdrawn JP2005260883A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004073402A JP2005260883A (ja) 2004-03-15 2004-03-15 動画像符号化装置及び動画像符号化方法、並びにプログラムおよびコンピュータ読み取り可能な記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004073402A JP2005260883A (ja) 2004-03-15 2004-03-15 動画像符号化装置及び動画像符号化方法、並びにプログラムおよびコンピュータ読み取り可能な記憶媒体

Publications (1)

Publication Number Publication Date
JP2005260883A true JP2005260883A (ja) 2005-09-22

Family

ID=35086145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004073402A Withdrawn JP2005260883A (ja) 2004-03-15 2004-03-15 動画像符号化装置及び動画像符号化方法、並びにプログラムおよびコンピュータ読み取り可能な記憶媒体

Country Status (1)

Country Link
JP (1) JP2005260883A (ja)

Similar Documents

Publication Publication Date Title
JP5054826B2 (ja) 時空間的複雑度を用いた符号化モード決定方法及び装置
JP4529919B2 (ja) 適応量子化装置及び適応量子化プログラム
US20100195722A1 (en) Image prediction encoding device, image prediction decoding device, image prediction encoding method, image prediction decoding method, image prediction encoding program, and image prediction decoding program
US10652570B2 (en) Moving image encoding device, moving image encoding method, and recording medium for recording moving image encoding program
JP2007060164A (ja) 動きベクトル検出装置および動きベクトル検出方法
US20090168878A1 (en) Moving picture coding device, moving picture coding method, and recording medium with moving picture coding program recorded thereon
JP2007124408A (ja) 動きベクトル検出装置および動きベクトル検出方法
US7809198B2 (en) Coding apparatus having rate control to prevent buffer breakdown
TWI511531B (zh) 影像編碼裝置、影像編碼方法及影像編碼程式
US10349071B2 (en) Motion vector searching apparatus, motion vector searching method, and storage medium storing motion vector searching program
KR20130130695A (ko) 복수의 프로세서를 사용하여 비디오 프레임을 인코딩하는 방법 및 시스템
JP2007521740A (ja) 変換ドメイン内のゼロを早期に発見する方法
US20140233645A1 (en) Moving image encoding apparatus, method of controlling the same, and program
RU2715519C1 (ru) Устройство кодирования видео с предсказанием, способ кодирования видео с предсказанием, программа кодирования видео с предсказанием, устройство декодирования видео с предсказанием, способ декодирования видео с предсказанием и программа декодирования видео с предсказанием
JP5748225B2 (ja) 動画像符号化方法,動画像符号化装置および動画像符号化プログラム
JPWO2006100946A1 (ja) 画像信号再符号化装置及び画像信号再符号化方法
JP5178616B2 (ja) シーンチェンジ検出装置および映像記録装置
US8472523B2 (en) Method and apparatus for detecting high level white noise in a sequence of video frames
JP5832263B2 (ja) 画像符号化装置及び画像符号化方法
JP3812808B2 (ja) スキップ領域検出型動画像符号化装置および記録媒体
US8126277B2 (en) Image processing method, image processing apparatus and image pickup apparatus using the same
JP2005260883A (ja) 動画像符号化装置及び動画像符号化方法、並びにプログラムおよびコンピュータ読み取り可能な記憶媒体
KR101319916B1 (ko) 움직임 추정방법 및 장치, 및 이를 이용한 영상 부호화방법및 장치
JP2013115580A (ja) 動画像符号化装置及びその制御方法、コンピュータプログラム
JP2008072608A (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: 20070605