(57)【要約】【課題】  動きベクトル検出を効率良くかつ精度良く行うこと。【解決手段】  入力フレームと参照フレームから画面内の各領域の動き補償難易度を算出する。そして、算出された動き補償難易度と動きベクトル検出処理部の処理性能とから各領域に処理時間を適応的に割り振る。各領域においては与えられた処理時間から動きベクトルの探索範囲等を適応的に変化させる。【選択図】  図１
2006345186.tif 000002
【特許請求の範囲】
【請求項１】
参照フレーム画像に対する入力フレーム画像の動きベクトルを、前記入力フレーム画像を構成する領域毎に検出する動きベクトル検出処理のための時間を前記領域毎に決定する動きベクトル検出処理時間算出装置であって、
前記入力フレーム画像の領域と、対応する前記参照フレーム画像の領域とから、当該領域に対する動き補償難易度を求める動き補償難易度算出手段と、
前記入力フレーム画像全体に対して与えられる動きベクトル検出処理時間を、前記動き補償難易度の大きい領域には前記動き補償難易度の小さい領域よりも長い時間となるように割り当てることにより前記領域の各々に対する動きベクトル検出処理時間を決定する処理時間決定手段を有することを特徴とする動きベクトル検出処理時間算出装置。
【請求項２】
前記動き補償難易度が、前記入力フレーム画像の前記領域の動きの大きさを表す情報であり、
前記処理時間決定手段が、前記入力フレーム画像全体に対して与えられる動きベクトル検出処理時間を、動きの大きい領域には動きの小さい領域よりも長い時間となるように割り当てることにより前記領域の各々に対する動きベクトル検出処理時間を決定することを特徴とする請求項１記載の動きベクトル検出処理時間算出装置。
【請求項３】
前記動き補償難易度算出手段が、前記入力フレーム画像の領域と、対応する前記参照フレーム画像の領域との差分値の空間微分値に基づいて前記動き補償難易度を算出することを特徴とする請求項１又は請求項２記載の動きベクトル検出処理時間算出装置。
【請求項４】
請求項１乃至請求項３のいずれか１項に記載の動きベクトル検出処理時間算出装置と、
前記領域に対して決定された処理時間を、前記領域内に均等に適用して前記領域内の動きベクトルを検出する検出手段を有する動きベクトル検出装置。
【請求項５】
請求項１乃至請求項３のいずれか１項に記載の動きベクトル検出処理時間算出装置と、
前記決定された処理時間が長い領域ほど、当該領域内でのベクトル検出を小さな領域単位で行う検出手段を有する動きベクトル検出装置。
【請求項６】
請求項４又は請求項５に記載の動きベクトル検出装置を用いて検出した動きベクトルを用い、前記入力フレーム画像の動き補償フレーム間予測符号化を行う画像符号化装置。
【請求項７】
前記参照フレーム画像が、前記入力フレーム画像より過去のフレーム画像の符号化結果を復号して得られた画像であることを特徴とする請求項６記載の画像符号化装置。
【請求項８】
参照フレーム画像に対する入力フレーム画像の動きベクトルを、前記入力フレーム画像を構成する領域毎に検出する動きベクトル検出処理のための時間を前記領域毎に決定する動きベクトル検出処理時間算出方法であって、
前記入力フレーム画像の領域と、対応する前記参照フレーム画像の領域とから、当該領域に対する動き補償難易度を求める動き補償難易度算出工程と、
前記入力フレーム画像全体に対して与えられる動きベクトル検出処理時間を、前記動き補償難易度の大きい領域には前記動き補償難易度の小さい領域よりも長い時間となるように割り当てることにより前記領域の各々に対する動きベクトル検出処理時間を決定する処理時間決定工程を有することを特徴とする動きベクトル検出処理時間算出方法。
【請求項９】
請求項８に記載の動きベクトル検出処理時間算出方法の各工程をコンピュータに実行させる制御プログラム。
【請求項１０】
請求項９記載の制御プログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は動きベクトルの検出技術に関し、特に動き補償を用いたフレーム間予測を用いた画像符号化技術に好適に適用可能な動きベクトルの検出技術に関する。
【背景技術】
【０００２】
デジタルデータ化された画像（画像データ）を有効に利用するためには、効率的に記憶、伝送する必要があり、結果として画像データの圧縮符号化は必須である。画像データの圧縮符号化方式として広く用いられているＪＰＥＧ(Joint Photographic Experts Group)符号化方式の概要は以下の通りである。
【０００３】
まず圧縮対象となる画像データを複数のブロック（符号化ブロック）に分割し、直交変換を用いて各マクロブロックの画像データを直流成分と交流成分とで構成される直交変換係数に変換する。この直交変換係数に対して符号量を減らすために量子化を行い、量子化された直交変換係数をエントロピー符号することにより、最終的な符号化結果を得る。
【０００４】
量子化を行う際、人間の視覚特性が敏感な低周波成分については小さい量子化値を、鈍感な高周波成分については大きな量子化値を用いることにより、視覚的な劣化を抑制しながら効率的に符号量を減少させることができる。また他の画像圧縮符号化方式として、ＭＰＥＧ−２(Motion Picture Experts Group Phase 2)のようなフレーム間予測動画像符号化方式が知られている。これは、画像間の動きを検出し、動きを補償した後に直交変換、量子化、エントロピー符号化を施す方式であり、動画像のフレーム間の相関性を利用して符号量を効果的に削減することができる。
【０００５】
図８にＭＰＥＧ−２方式におけるフレーム間予測の概念図を示す。現フレームは例えば、１６画素×１６ラインのブロック（予測ブロック又は動き補償単位と呼ぶ）に分割され、例えば予測ブロックを処理対象単位として動きベクトルを探索する。動きベクトルは例えば過去に符号化した動画像データを復号して得られる動画像データである参照フレームに関して検出する。具体的には、参照フレーム中の、現フレームの処理対象ブロックに対応する位置の領域を基準に、その領域を含む周囲の画素群を動き探索範囲として、最も相関度の大きい領域の相対位置を求める。この相関度は、現フレームの処理対象ブロックと、動き探索範囲の中の現処理対象ブロックと同サイズの領域（以下、参照領域）とをずらしながら比較することによって求める。また、相関度の測定には、領域内における互いに対応する位置の画素の差分絶対値和等がよく用いられ、該差分絶対値和の値が小さいほど相関が高いと評価される。
【０００６】
このようなフレーム間予測を用いた動画像符号化装置の構成例を図７に示す。
図７に示す動画像符号化装置は、減算器７０１、直交変換器７０２、量子化器７０３、スキャン処理器７０４、エントロピー符号化器７０５、逆量子化器７０６、逆直交変換器７０７、加算器７０８、記憶装置７０９、動きベクトル検出器７１０、参照領域生成器７１１を含む。なお、符号化ブロックの大きさと動き補償を行う予測ブロックの大きさは必ずしも一致しないが、説明及び理解を容易にするため、ここでは符号化ブロックと予測ブロックとが同じブロックであるものとして説明する。
【０００７】
符号化対象フレーム内の情報のみで符号化を行うフレーム内符号化を行う場合、減算器７０１での減算処理は行わず、原画像データがそのまま直交変換器７０２へ入力される。一方、時間的に異なる参照フレームを用いたフレーム間予測符号化を行う場合には、減算器７０１により、参照領域生成器７１１からの参照画像データを原画像データから減算して、減算結果（予測誤差）を直交変換器７０２へ出力する。
【０００８】
直交変換器７０２は、減算器７０１からの入力データに対し、ブロック単位で直交変換を施し、得られた直交変換係数を量子化器７０３へ出力する。量子化器７０３は、ブロック内の位置に対応する量子化テーブル値と当該ブロックの量子化スケール値を用いて直交変換係数を量子化し、全ての量子化直交変換係数をスキャン処理器７０４及び逆量子化器７０６に出力する。スキャン処理器７０４は符号化モードに応じてジグザグスキャン等のスキャン処理を行う。エントロピー符号化器７０５はスキャン処理器７０４の出力をエントロピー符号化し、圧縮符号化結果としての符号を出力する。
【０００９】
図７の動画像符号化装置においては、動きベクトル検出及び動き補償を行うために、逆量子化器７０６、逆直交変換器７０７を用いて局所復号化処理が行われる。
【００１０】
逆量子化器７０６においては対象ブロックの量子化スケール値を用いて対象ブロックの量子化直交変換係数の逆量子化を行い、逆量子化係数を逆直交変換器７０７へ出力する。逆直交変換器７０７は逆量子化された直交変換係数に対して逆直交変換を施し、復号した予測誤差を加算器７０８へ出力する。加算器７０８は参照ブロック生成器７１１から出力された予測値と逆直交変換器７０７からの復号された予測誤差を加算し、加算結果を復号化された参照画像として記憶装置７０９に記憶する。動きベクトル検出器７１０は図８で示したように処理対象ブロックと記憶装置７０９に記憶された参照フレームとから、次の処理対象ブロックのための動きベクトル検出を行う。参照ブロック生成器７１１は、動きベクトル検出器７１０によって検出された動きベクトルと、記憶装置７０９に記憶された参照フレームとから、動き補償を行うための参照ブロックデータを生成し、減算器７０１へ出力する。
【００１１】
図９は、このようなフレーム間予測を用いた動画像符号化装置が１フレームの画像データを処理する際に各部が行う処理を時系列で示した図である。ここでは処理対象フレームをＮ個のブロックに分割して処理を行うものとしており、図中の数字１，，，Ｎ−１，Ｎは何番目のブロックを処理しているかを示している。
【００１２】
図９から明らかなように、動きベクトル検出器と、直交変換器、量子化器等の動きベクトル検出器以外の処理部とは、同時刻に異なるブロックを処理し、並列に動作している。動きベクトル検出器において検出が終わった動きベクトルを用いて直交変換やエントロピー符号化等の処理が行われ、その間に動きベクトル検出器はその次のブロックの処理を行っている。このようなシステムにおいては、動きベクトル検出器の処理速度が符号化装置全体の処理速度を決定する。よって動きベクトル検出器を効率的に動作させることにより、符号化装置全体の処理速度を向上させることが可能である。
【００１３】
動きベクトル検出回路の処理時間は、動きベクトルの検出方法と動きベクトル検出回路の処理性能とから決定することができる。たとえば動きベクトル検出回路をプロセッサ型回路で実現する場合には、動きベクトル検出を行うための命令数と１命令あたりのサイクル数及びプロセッサの動作周波数から動きベクトル検出に必要とされる処理時間を得ることができる。また動きベクトル検出を専用の処理回路で実現する場合には処理回路のスループット及び動作周波数から処理時間を得ることができる。
【００１４】
また、動きベクトルの探索範囲を広くして探索回数を多くすればするほど符号化効率は向上する反面、処理時間は長くなるため、動きベクトル検出の処理時間と符号化効率と相関がある。現在の一般的なフレーム間予測動画像符号化装置はフレーム内の動き補償を行う単位である各ブロックに同じ動きベクトル検出・動き補償方式を適用するのが一般的である。従って、各ブロックについての動きベクトル検出処理時間はほぼ一定と考えられ、動画像のフレームレート及びフレームサイズから動きベクトル検出のための処理時間を決定している。
【００１５】
動きベクトルの検出方法を変化させることも提案されており、特許文献１には、１フレームの符号化終了後に、符号化目標時間と実際の符号化時間を求め、そのずれから次フレームの処理時間と動きベクトル検出方法を決定して、実時間での符号化を実現する動き補償予測方式が提案されている。また特許文献２には、動きベクトル探索の過程において動きベクトル候補に対する閾値を設けることにより演算量を最適化し、余剰となった演算量を次の動きベクトルを得るのに必要な演算量に加え次の動きベクトルの探索範囲を広くする動画像符号化方法が提案されている。
【００１６】
また近年新しく定められたＨ．２６４ビデオ動画像標準符号化方式においては符号化効率を更に向上させるために、動き補償を行う単位領域（予測ブロック又は動き補償単位）の大きさを適応的に変化させる方式が定められている。図１０にＨ．２６４符号化方式におけるフレーム間予測の概念図を示す。図６に示したＭＰＥＧ−２方式では動き補償単位の大きさが１６画素×１６ライン固定と定められていたのに対し、Ｈ．２６４符号化方式では図のように符号化単位である１６画素×１６ラインのマクロブロックを様々な分割方法により分割し、分割した領域を動き補償単位とする動き補償方式が定められており、動き補償の自由度が高まっている。
【００１７】
この動き補償単位の大きさと符号量には相関がある。動画符号化方式における符号量の構成要素は以下の３つに分類される。
１）直交変換係数の符号量
２）動きベクトルの符号量
３）動きベクトル以外のヘッダ情報の符号量
【００１８】
直交変換係数の符号量は量子化スケール値を大きくすることにより削減可能である反面、画質が劣化してしまうという問題がある。動きベクトルの符号量は動きベクトルの数と動きベクトル検出の結果及び周辺マクロブロックにおける動きベクトルから一意に決定される。また、ヘッダ情報については直交変換係数、動きベクトルに比べると符号量は小さく、またヘッダ情報を削減することは一般に難しい。よって画質を劣化させずに符号化効率を向上させるかは直交変換係数と動きベクトルの符号量をいかに効率良く減らすかに左右される。
【００１９】
【特許文献１】特開２００２−１１２２７４号公報
【特許文献２】特開２００４−０４８５１２号公報
【発明の開示】
【発明が解決しようとする課題】
【００２０】
特許文献１記載の手法においては動画像フレーム内のブロック毎の動き情報を考慮に入れずに各ブロックの動きベクトル検出のための処理時間を決定している。そのため、あるブロックにおいては処理時間が無駄に消費され、別のブロックにおいては処理時間が足りないために符号量を十分に削減できないという問題が生じていた。たとえばほとんど動きの無いブロックにおいては一般に動きベクトル検出の早い段階で最適な動きベクトルが検出できるので、処理時間を多くしても少なくしても（動きベクトルの探索回数が少なくても多くても）符号化効率はあまり変化しない。一方、動きの激しいブロックにおいては処理時間を多くすればする程、すなわち動きベクトルの探索範囲を広くして探索回数を多くすればするほど最適な動きベクトルを検出できる可能性が高くなり、符号化効率が向上する。
【００２１】
また特許文献２記載の手法においては画面全体の情報を考慮していない。よって画面全体に動きがない場合にフレーム全体の処理時間が短くなり、処理時間が無駄になってしまう可能性がある。例えば「他のブロックに動きの激しい箇所がある場合にのみ動きの少ない領域の処理時間を少なくする」というような適応的な処理を実現することは困難である。
【００２２】
また、Ｈ．２６４符号化方式に関し、直交変換係数と動きベクトルの両方を効率的に削減するような動き補償単位の決定に関する手法は確立されていないのが現状である。一つの手法としてＨ．２６４符号化方式において規定されているすべての動き補償単位について符号化を行い、最終的に最も符号量の少ない動き補償単位を最適な動き補償単位として決定する手法が考えられる。しかしこのような全探索的手法では、処理が増大するため、リアルタイム符号化を実現するには回路規模が莫大になり、また限られた回路規模においてはリアルタイム符号化を実現することができなくなってしまう。
【００２３】
本発明はこのような従来技術の問題点に鑑みなされたものであり、その目的は、符号化効率のさらなる向上に寄与する動きベクトルの検出を可能とすることにある。
【課題を解決するための手段】
【００２４】
本発明によれば、上述の目的は、参照フレーム画像に対する入力フレーム画像の動きベクトルを、入力フレーム画像を構成する領域毎に検出する動きベクトル検出処理のための時間を領域毎に決定する動きベクトル検出処理時間算出装置であって、入力フレーム画像の領域と、対応する参照フレーム画像の領域とから、当領域に対する動き補償難易度を求める動き補償難易度算出手段と、入力フレーム画像全体に対して与えられる動きベクトル検出処理時間を、動き補償難易度の大きい領域には動き補償難易度の小さい領域よりも長い時間となるように割り当てることにより領域の各々に対する動きベクトル検出処理時間を決定する処理時間決定手段を有することを特徴とする動きベクトル検出処理時間算出装置によって達成される。
【００２５】
また、上述の目的は、本発明の動きベクトル検出処理時間算出装置と、領域に対して決定された処理時間を領域内に均等に適用して領域内の動きベクトルを検出する検出手段を有する動きベクトル検出装置によっても達成される。
【００２６】
また、上述の目的は、本発明の動きベクトル検出装置を用いて検出した動きベクトルを用い、入力フレーム画像の動き補償フレーム間予測符号化を行う符号化装置によっても達成される。
【発明の効果】
【００２７】
以上の構成により、本発明によれば、入力フレーム画像の領域毎に動き補償難易度を求め、動き補償難易度に応じて動きベクトルの検出方法や検出範囲を決定することにより、効率の良いフレーム間予測動画像符号化に寄与することができる。
【発明を実施するための最良の形態】
【００２８】
＜＜第１の実施形態＞＞
以下、図面を参照して本発明の好ましい実施形態について説明する。
図１は本発明の一実施形態にかかるフレーム間予測動画像符号化装置に含まれる、動きベクトル検出器の処理時間算出器２１０の構成例を示すブロック図である。また、図１５は、本実施形態にかかるフレーム予測動画像符号化装置における動きベクトル検出方法決定処理を説明するフローチャートである。
【００２９】
処理時間算出器２１０は、減算器１０１、空間微分器１０２、領域内最大動き補償難易度算出器１０３、記憶装置１０４及び処理時間算出器１０５を含む。減算器１０１は記憶装置２０９から出力される参照フレーム（再構成フレーム）と入力フレームとの差分値を計算し、差分値を空間微分器１０２へ出力する（Ｓ１０１）。なお、本実施形態において動き補償難易度算出及び動きベクトル検出は動画像データの輝度値成分のみを用いて行われるとする。空間微分器１０２は差分の変化を抽出するため差分値に空間微分演算を施し、画素位置における差分の空間微分値を、画素毎の動き補償難易度として出力する（Ｓ１０３）。ここで空間微分器１０２においては水平方向、垂直方向独立に空間微分演算を行う方式を採用しているが、差分の変化を抽出可能な任意の方式により空間微分を行うことができる。
【００３０】
領域内最大動き補償難易度算出器１０３は、入力された画素毎の動き補償難易度のうち、予め定めた領域内での最大値を、領域の動き補償難易度として記憶装置１０４に記憶する（Ｓ１０５）。この「領域」はフレーム内に複数存在する、処理時間を与える単位であり、「４マクロブロック（ＭＰＥＧ−２方式では符号化単位かつ動き補償単位）を一つの「領域」にする」等、ユーザーが符号化方式等に応じて任意に設定できるものである。この「領域」が小さくなれば細かい処理時間の割り当てが可能である反面、処理時間算出のための計算が煩雑となる。逆にマクロブロックより大きな「領域」を単位に動き補償難易度を求めることで、より高速に領域毎の処理時間を計算し、各領域に最適な処理時間を割り振ることが可能となる。
【００３１】
フレーム内における全ての「領域」についての動き補償難易度を算出し（Ｓ１０７）、記憶装置１０４に記憶されると、処理時間算出器１０５は記憶装置１０４から読み出した各「領域」の動き補償難易度ＤＭＣijを用いて次式（１）のように各「領域」における動きベクトル検出のための処理時間ＴＭＣijを算出する（Ｓ１０９、Ｓ１１１）。ここで添え字ｉ，ｊは各領域のフレーム内における位置（例えば垂直、水平方向の番号）を示している。
ＴＭＣij＝（ＤＭＣij＊ＬＭＣtotal）／ΣＤＭＣij      （１）
【００３２】
ここで、ＬＭＣtotalは動画のフレームレート（例えば３０フレーム／秒）を保証するために許容されるフレームあたりのサイクル数であり、前述した動きベクトル検出処理部の処理性能によって決定される変数である。分母のΣＤＭＣijはフレーム内における各「領域」の動き補償難易度の総和（フレーム全体に対する動き補償難易度）を示している。このように動きベクトル検出部の処理性能から決定される１フレーム当たりのサイクル数を、動き補償難易度に応じて各領域に比例配分することにより、各領域における動きベクトル検出のための処理時間を決定している。
【００３３】
一般に画面内に動きがあるか否かは動きベクトルから判断が行われるが、動きベクトル情報を利用することはリアルタイム符号化においては困難である。本実施形態では、動きベクトル情報を利用する代わりに、処理対象フレームと再構成動画像のフレームとを用いた単純な演算からフレーム全体及び各領域の動き補償難易度を求めているため、リアルタイム符号化においても利用可能である。
【００３４】
本実施形態では、具体的には差分の算出と、差分値に対する空間微分という単純な簡単な計算により、フレーム全体及び各領域の動き補償難易度を求めている。一般に動きが無いか非常に少ない領域ではこの差分の空間微分値は零に近くなり、逆に動きがある箇所程この値は大きくなる。よって、この差分の空間微分値が小さい画素からなる領域は動きが少ない領域であり、短時間の動きベクトル検出処理により最適な動きベクトルを検出しやすい領域と考えられる（以下、このような領域を動き補償難易度が低い領域と言う）。
【００３５】
逆に、差分の空間微分値が大きい画素を含む領域では動きが大きく生じているので、処理時間をかけて動きベクトルを検出し、符号化効率を向上させるべき領域であると考えられる（以下、このような領域を動き補償難易度が高い領域と言う）。このように、本実施形態において動き補償難易度は、動きの大きさを表す情報であると考えることができる。もちろん、動き補償難易度、すなわち動きベクトルの検出の困難度と相関があれば、動きの大きさ以外の要因を用いて動き保証難易度を求めても良い。
【００３６】
この動き補償難易度はフレーム全体において計算されるべき値であるが、動画像のフレームサイズが大きい場合に動き補償難易度の計算が複雑であると、符号化処理装置全体の処理速度低下を招いてしまう。しかし、本実施形態のように、動き補償難易度の計算を差分の算出と空間微分の適用といった簡易な計算で実現することで、高速にフレーム全体の動き補償難易度を計算することが可能となる。
【００３７】
そして、各領域及びフレーム全体に対して求められた動き補償難易度と動きベクトル検出部の処理性能とから、各領域の動きベクトル検出処理に許容する処理時間を決定する。動き補償難易度が大きい領域ほど、処理時間をかけて動きベクトルを探索することにより、従来よりも精度の良い動きベクトル検出が可能となる可能性が高くなり、結果として符号化効率の向上が期待される。また、フレーム当たりの処理時間を増加させる必要がないため、リアルタイム符号化のように処理速度が要求される用途には特に好適に適用可能である。
【００３８】
図２は図１で示した動きベクトル検出器の処理時間算出器をフレーム内予測動画像符号化装置に適用した場合の構成図であり、図示されるように減算器２０１、直交変換器２０２、量子化器２０３、スキャン処理器２０４、エントロピー符号化器２０５、逆量子化器２０６、逆直交変換器２０７、加算器２０８、記憶装置２０９、動きベクトル検出の処理時間算出器２１０、動きベクトル検出器２１１、参照領域生成器２１２を含む。
【００３９】
なお、２０１〜２０９及び２１２の各構成は、図７における７０１〜７０９及び７１１の各構成と同一でよいため、ここでの説明は省略する。
【００４０】
図２において動きベクトル検出の処理時間算出器２１０は、上述のように、記憶装置２０９から読み出された再構成フレーム及び入力フレームから、入力フレームの各「領域」についての動き補償難易度及びその合計であるフレーム全体の動き補償難易度を計算する。そして、これらの値と予め求めておいた動きベクトル検出器の処理性能値を用い、式（１）に基づいて各領域における動きベクトル検出の処理時間を決定し、動きベクトル検出器２１１へ出力する（Ｓ１０１〜Ｓ１１１）。
【００４１】
動きベクトル検出器２１１は、与えられた処理時間から閾値Ｔ１、Ｔ２（Ｔ１＜Ｔ２）を用いて動きベクトル検出方式を決定する（Ｓ１１３）。
【００４２】
図３は、動きベクトル検出器２１１における動きベクトル検出方式の決定方法の例を模式的に示す図である。図３の例においては、与えられた各領域の処理時間と閾値との大小関係に応じて、動きベクトル探索範囲の異なる３種類のベクトル検出方式の中から１つを決定する。図３に示すように、与えられる処理時間ＴＭＣijが大きいほど広い動きベクトル探索範囲について動きベクトル検出を行う。
【００４３】
このように、動きベクトル探索範囲のみが異なる動きベクトル検出方式から１つを決定する場合、動きベクトル探索範囲と探索処理に必要な時間を求め、その時間に基づいて閾値Ｔ１、Ｔ２を定めることができる。
【００４４】
図４は、図２に示す動画像符号化装置が１フレームの画像データを処理する際に各部が行う処理を時系列で示した図である。
図４に示すように、本実施形態の動画像符号化装置では、処理対象フレームの処理を行う前に、動きベクトル検出器の処理時間算出器２１０において処理対象フレームの動き補償難易度を決定する。そして、この決定結果に基づいて、符号化効率が向上するようにフレームの各「領域」における動きベクトル検出の処理時間を割り振る。なお、図４では、動き補償難易度を与える「領域」が、マクロブロックと等しい場合を示している。
【００４５】
従来の動画像符号化装置について説明した同様の図９においては、各「領域」に対する動きベクトル検出器の処理時間が一定であったのに対し、図４においては各領域の動きベクトル検出器の処理時間が異なっていることが示されている。またこの動きベクトル検出の処理時間算出器２１０は動きベクトル検出器２１１及び直交変換器２０２等の他の処理部と並行して動作することが可能であり、符号化装置の処理速度を低下させることなく各領域に最適な処理時間を決定できている様子がわかる。
【００４６】
また本実施形態においては、異なる動きベクトル検出方式の決定を、与えられた処理時間に応じた動きベクトル探索範囲を適応的な変化により実現している。しかし、処理時間に応じた選択対象となる動きベクトル検出方式は動きベクトル探索範囲のみが異なる方式に限定されない。例えば、ＭＰＥＧ−４方式で用いられているような、単位領域あたりで定義する動きベクトルの数を、処理時間に応じて異ならせるようにしても良い。
【００４７】
いずれの場合であっても、動きベクトル検出方式の各候補を適用した際に必要となる処理時間に基づいて閾値Ｔ１、Ｔ２を決定すればよい。また、４種類以上の方式から１つを選択することも可能であり、この場合には閾値の数を増やせばよい。
【００４８】
フレーム内の各領域に対する処理時間と発生する符号量を示す図６を用いて、本実施形態における効果について更に説明する。図６（ａ）に示すように、従来技術においては各領域の処理時間が一定であったため動きの小さい領域では処理時間内に精度の良い動きベクトルが検出でき、符号量が小さくなるが、一定の処理時間内に精度の良い動きベクトルが検出できないような動きの激しい領域ではあまり符号量が削減できなかった。
【００４９】
これに対し、本実施形態によれば、動きの激しい領域には動きの少ない領域よりも長い処理時間を割り振ることで、フレーム全体に与えられた処理時間を効率よく利用することが可能である。そのため、もともと少ない処理時間で精度の良い動きベクトルが検出できる動きの少ない領域の符号化量に対する影響を抑えながら、動きの大きな領域で検出する動きベクトルの精度を向上させることが可能で、フレーム全体での符号化効率を向上させることができる。さらに、動きベクトルの検出精度のばらつきが抑制されるため、フレーム内の各領域における符号量のばらつきを抑えることが可能となる。
【００５０】
結果として、図６（ｂ）に示すように、各領域の符号量が一定になるように近づき、画面内における符号量制御を行う場合に制御しやすく、結果として更なる高画質化を実現することが可能となる。また、各領域の動きベクトル検出の処理時間を高速に決定することが可能となり、よりリアルタイム符号化に適した構成とすることができる。
【００５１】
また、本実施形態の更なる特徴として、拡張性を挙げることができる。本実施形態における各領域の処理時間の決定手法は動きベクトル検出器の実装形態に非依存であり、動きベクトル検出器がプロセッサにより実現される場合でも、専用回路により実現される場合でも適用可能である。さらに動きベクトル検出処理部の処理性能は実装形態に応じて変えることが可能である。よってフレーム間予測動画像符号化装置において動きベクトル検出器をより高性能なものに取り替え、動きベクトル検出処理部の処理性能の値を変えることにより同一の構成で更なる高画質化が可能となる。
【００５２】
＜＜第２の実施形態＞＞
本実施形態は、第１の実施形態で用いた動きベクトル検出の処理時間算出器２１０を用いて、動きベクトルの検出を行う動き補償単位の大きさを決定することにより、Ｈ．２６４符号化方式などの動き補償単位の大きさが可変な符号化方式において、動き補償単位の適切な設定を可能とするものである。
【００５３】
図１１は本発明の第２の実施形態にかかるフレーム間予測動画像符号化装置の構成図であり、図２に示した第１の実施形態の符号化装置と同じ構成要素には同じ参照数字を付し、説明を省略する。図２と図１１との比較から明らかなように、本実施形態に係る符号化装置では、動きベクトル検出の処理時間算出器２１０が出力する処理時間から動き補償単位の大きさを決定する動き補償単位算出器１１２を有することを特徴とする。
【００５４】
本実施形態に係るフレーム間予測動画像符号化装置において、動きベクトル検出の処理時間算出器２１０は、４マクロブロック（３２画素×３２ライン）を動き補償難易度（動きの程度を与える情報）を与える「領域」としている他は第１の実施形態と同様に式（１）から各「領域」に対する処理時間ＴＭＣijを算出する。
【００５５】
一般に動きが無いか非常に少ない領域ではこの差分の空間微分値は零に近くなり、逆に動きがある箇所程この値は大きくなる。よって、この差分の空間微分値が小さい画素からなる領域は動きが少ない領域であり、大きな動き補償単位であっても動き補償により直交変換係数の符号量を十分削減することが可能であり、かつ定義される動きベクトルの数も少ないために動きベクトルの符号量も少なくなる。逆に動き補償の単位を小さくすると直交変換係数の符号量は十分削減できるが、動きベクトルの符号量が多くなってしまう可能性がある。従って、動きが少ない領域においては動き補償単位は大きい方が良いといえる。
【００５６】
逆に、差分の空間微分値が大きい画素を含む領域では動きが大きく生じている。動きが大きい場合に動き補償単位が大きいと動きベクトルの符号量はそれほど増加しないが、細かい動き補償ができないために動き補償後の残差が大きく、直交変換係数の符号量が膨大になってしまう。ここで動き補償単位を小さくすることにより動きベクトルの符号量は増加してしまうが、動きベクトル符号量の増加分以上に直交変換係数の符号量を削減することができる。従って、動きが大きい領域においては動き補償単位は小さい方が良いといえる。
【００５７】
また動き補償単位と処理時間の関係という観点から見ると、動き補償単位を小さくすればするほど１フレームあたりの動きベクトルの数が多くなり、多くなった動きベクトルの回数だけ動きベクトル検出を行うため処理時間は長くなる。リアルタイム符号化を行うためには、動き補償単位を小さくするのには限界があり、動きベクトル検出器の処理性能を考慮しながら動き補償単位を決定しなければいけない。
【００５８】
このような状況を鑑み、本実施形態においては、図１２のように、抽出された動き情報が大きいところには処理時間を多く割り当てて動き補償の単位を小さくし、直交変換係数の符号量を削減する。
【００５９】
一方、抽出された動き情報が小さいところは処理時間を少なく割り当てて動き補償の単位を大きくし、直交変換係数の符号量及び動きベクトル双方の符号量を削減する。
このように抽出された動き情報に応じて動き補償単位を変化させることにより、符号化効率の高い、フレーム間予測動画像符号化装置をリアルタイムで実現することが可能となる。
【００６０】
動き補償単位算出器１１２は、動きベクトル検出の処理時間算出器２１０から与えられた処理時間ＴＭＣijと、予め定めた閾値Ｔ１、Ｔ２、Ｔ３（Ｔ１＜Ｔ２＜Ｔ３）を用いて以下のように「領域」内の動き補償単位を決定する（図１３）。
ＴＭＣij＜Ｔ１の場合      ：３２画素×３２ラインを動き補償単位とする
Ｔ１≦ＴＭＣij＜Ｔ２の場合：１６画素×１６ラインを動き補償単位とする
Ｔ２≦ＴＭＣij＜Ｔ３の場合：８画素×８ラインを動き補償単位とする
Ｔ３≦ＴＭＣijの場合      ：４画素×４ラインを動き補償単位とする
このように、与えられた処理時間が多いほど動き補償単位が小さくなるように、各「領域」内の動き補償単位の大きさを決定する。
【００６１】
動き補償単位算出器１１２において決定された動き補償単位の大きさは動きベクトル検出器１１３及び参照領域生成器２１２へ出力される。動きベクトル検出器１１３においては与えられた動き補償単位で動きベクトル検索を行い、最も相関度が高いと判断された動きベクトルが参照領域生成器２１２へ出力される。
【００６２】
なおＨ．２６４符号化方式において最大の動き補償単位はマクロブロック（１６画素×１６ライン）であるが、本実施形態において動き補償単位が３２画素×３２ライン（内部に４つのマクロブロックを含む）と定められた場合は、３２画素×３２ラインで動きベクトル検出を行う。そして、３２画素×３２ラインの単位で決定された動きベクトルを内部の４つのマクロブロックに適用することで各マクロブロックの動きベクトルを決定する。このように標準符号化方式で定められていない動き補償単位についても定義し、動きベクトルの数を減らして処理を高速化する。結果として動きの激しいブロックほど処理時間を多く割り振ることになり、第１の実施形態と同様に符号化効率を向上させることが可能となる。
【００６３】
参照領域生成器２１２においては決定された動きベクトルと動き補償単位を用いて動き補償を行うための参照動画像を生成し、減算器２０１へ出力する。
【００６４】
第２の実施形態における動き補償領域の大きさ決定処理のフローチャートを図１５に示す。この処理は、第１の実施形態におけるステップＳ１１３の代わりに、動き補償領域の大きさを算出するステップＳ２０１を実行する処理に相当する。
図１４は、図１１に示す動画像符号化装置が１フレームの画像データを処理する際に各部が行う処理を時系列で示した図である。
【００６５】
図１４に示すように、本実施形態の動画像符号化装置では、処理対象フレームの処理を行う前に、動きベクトル検出器の処理時間算出器２１０において処理対象フレームの動き補償難易度を決定する。そして、この決定結果に基づいて、符号化効率が向上するようにフレームの各「領域」における動きベクトル検出の処理時間を割り振る。そして、この処理時間に基づいて動き補償単位算出器１１２が各「領域」内の動き補償単位の大きさを決定する。この一連の動き補償単位の決定処理は動きベクトル検出器１１３及び直交変換器２０２等、他の処理部と並行して動作することが可能であり、符号化装置の処理速度を低下させることなく各領域に最適な動き補償単位を決定することができる。
なお、図１４では、動き補償難易度を与える「領域」が、マクロブロックと等しい場合を示している。
【００６６】
以上説明したように、本実施形態によれば、動画像データの動き情報に応じて各領域の動きベクトル検出処理部の処理時間を決定し、決定した処理時間を用いて動き補償単位の大きさを適応的に変化させることにより符号化効率を向上することができ、第１の実施形態と同様の効果を実現することが可能である。特に、動き補償単位の大きさが可変な符号化方式においては、本実施形態を適用することにより、効率的な符号化を実現することが可能である。
【００６７】
＜＜他の実施形態＞＞
図５は、本発明の第１又は第２の実施形態に係るフレーム間予測動画像符号化装置を適用したビデオカメラの構成例を示すブロック図である。
ビデオカメラ５００は、図示するようにレンズ５０１、撮像素子５０２、信号処理回路５０３、記憶装置５０４、動画像符号化装置５０５、記録媒体５０６を含む。撮影対象から入力された映像はレンズ５０１を通して撮像素子５０２に入力され、映像信号に変換される。変換された映像信号は信号処理回路５０３において色空間変換やノイズ除去等が行われる。
【００６８】
信号処理回路５０３から出力された映像信号は処理速度を調整するために一時記憶装置５０４へ記憶される。記憶装置５０４から読み出された映像信号は動画像符号化装置５０５へ入力され、符号化データとして出力される。出力された符号化データは半導体メモリや光／磁気ディスク、磁気テープ等の記録媒体５０６に記録される。
【００６９】
本実施形態におけるフレーム間予測動画像符号化装置を動画像符号化装置５０５として適用することにより符号化効率が向上するので、限られた容量の記録媒体５０６に対して同じ記録時間ならばより高画質の動画像を、また同一画質ならばより長時間記録することが可能となる。また高速なリアルタイム符号化が可能な構成となっているので一時記憶の記憶装置５０４の容量も小さくすることが可能となり、より安価にビデオカメラを構成することが可能となる。
【００７０】
また、前述した実施形態の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線／無線通信を用いて当該プログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムを実行することによって同等の機能が達成される場合も本発明に含む。
【００７１】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。
【００７２】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００７３】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記録媒体、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ等の光／光磁気記憶媒体、不揮発性の半導体メモリなどがある。
【００７４】
有線／無線通信を用いたプログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明を形成するコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイル等、クライアントコンピュータ上で本発明を形成するコンピュータプログラムとなりうるデータファイル（プログラムデータファイル）を記憶し、接続のあったクライアントコンピュータにプログラムデータファイルをダウンロードする方法などが挙げられる。この場合、プログラムデータファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに配置することも可能である。
【００７５】
つまり、本発明の機能処理をコンピュータで実現するためのプログラムデータファイルを複数のユーザに対してダウンロードさせるサーバ装置も本発明に含む。
【００７６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件を満たしたユーザに対して暗号化を解く鍵情報を、例えばインターネットを介してホームページからダウンロードさせることによって供給し、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７７】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００７８】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【図面の簡単な説明】
【００７９】
【図１】本発明の実施形態に係る動きベクトル検出の処理時間算出回路の構成例を示すブロック図である。
【図２】本発明の第１の実施形態に係るフレーム間予測動画像符号化装置の構成例を示すブロック図である。
【図３】第１の実施形態に係るフレーム関与側道が符号化装置の動きベクトル検出方法の決定方法の例を示す図である。
【図４】第１の実施形態に係る動画像符号化装置が１フレームの画像データを処理する際に各部が行う処理を時系列で示した図である。
【図５】本発明の実施形態に係るフレーム間予測動画像符号化装置を適用したビデオカメラの構成例を示すブロック図である。
【図６】実施形態に係る動画像符号化装置と従来の動画像符号化装置における、フレーム内の各領域に対する処理時間と発生する符号量の関係を示す図である。
【図７】従来のフレーム間予測動画像符号化装置の構成例を示すブロック図である。
【図８】ＭＰＥＧ−２方式におけるフレーム間予測方法を模式的に示す図である。
【図９】従来の動画像符号化装置が１フレームの画像データを処理する際に各部が行う処理を時系列で示した図である。
【図１０】Ｈ．２６４符号化方式におけるフレーム間予測方法を模式的に示す図である。
【図１１】本発明の第２の実施形態に係るフレーム間予測動画像符号化装置の構成例を示すブロック図である。
【図１２】第２の実施形態に係るフレーム間予測動画像符号化装置における、動き補償単位の大きさの設定方法を模式的に示す図である。
【図１３】第２の実施形態に係るフレーム間予測動画像符号化装置における、動き補償単位の大きさの設定方法の具体例を示す図である。
【図１４】第２の実施形態に係る動画像符号化装置が１フレームの画像データを処理する際に各部が行う処理を時系列で示した図である。
【図１５】本発明の実施形態に係るフレーム間予測動画像符号化装置の要部動作を説明するフローチャートである。
【図１】
2006345186.tif 000003
【図２】
2006345186.tif 000004
【図３】
2006345186.tif 000005
【図４】
2006345186.tif 000006
【図５】
2006345186.tif 000007
【図６】
2006345186.tif 000008
【図７】
2006345186.tif 000009
【図８】
2006345186.tif 000010
【図９】
2006345186.tif 000011
【図１０】
2006345186.tif 000012
【図１１】
2006345186.tif 000013
【図１２】
2006345186.tif 000014
【図１３】
2006345186.tif 000015
【図１４】
2006345186.tif 000016
【図１５】
2006345186.tif 000017