(57)【要約】【課題】一般的な動きベクトルの高速探索法では、画像の動き特徴や複雑さの特徴を反映していなかったため、探索するサンプル点の数の割合に対して探索された動きベクトルの精度が低いという問題点があった。動き特徴を用いてステップ探索法におけるサンプル点間隔を制御する方式は提案されているが、この方式では画像の複雑さの特徴を反映していないため精度が十分でなかった。【解決手段】フレーム間予測符号化における動き探索において、画像の複雑さを算出する手段と画像の動き量を推定する手段を用いて、ステップ探索におけるサンプル点の間隔や個数等の動き探索に必要なパラメータを制御することによって、高速かつ高精度な動きベクトルを探索するための方式と、これを行う画像符号化装置を提供する。【選択図】図１
2006313950.tif 000002
【特許請求の範囲】
【請求項１】
動画像を構成する画像の複雑度を算出する画像複雑度推定部と、
上記画像とその前又は後の画像との動き量を推定する近傍動き量推定部と、
上記画像の動き予測を行う動き予測部とを有し、
上記動き予測部は上記複雑度算出部と動き推定部からの出力に基づき動き予測の制御を行うことを特徴とする画像符号化装置。
【請求項２】
上記動き予測部は、ステップ探索によって動き探索を行うことを特徴とする請求項１記載の画像符号化装置。
【請求項３】
上記動き予測部は、上記複雑度が所定値以上の場合には上記ステップ探索から全探索に探索方法を変更することを特徴とする請求項２記載の画像符号化装置。
【請求項４】
上記動き予測部は、上記複雑度に基づいて上記ステップ探索における各ステップの探索点間隔、ステップの探索点の数、ステップ数の少なくともいずれかを制御することを特徴とする請求項２又は３に記載の画像符号化装置。
【請求項５】
上記予測部は、上記動き量が所定値以上の場合には処理対象のマクロブロックに隣接するマクロブロックから推定した予測ベクトルの位置を上記探索の開始位置とすることを特徴とする請求項１乃至３の何れかに記載の画像符号化装置。
【請求項６】
上記画像複雑度は、上記画面内の一定領域の輝度値の分散、又は、所定領域にアダマール変換等の直交変換を行った係数の部分和と該領域に対してエッジフィルタをかけた出力の合計を用いることを特徴とする請求項１乃至５の何れかに記載の画像符号化装置。
【請求項７】
上記動き量は、上記画像中の符号化対象のマクロブロックの隣接マクロブロックにおいて既に決定された動きベクトル、過去の画像の同じ位置にあるマクロブロックにおいて既に決定された動きベクトル、又は、上記画像と過去の画像の領域単位での比較によって予め推定された動き量のいずれかを用いることを特徴とする請求項１乃至６の何れかに記載の画像符号化装置。
【請求項８】
連続する画像からなる動画像を符号化する画像符号化方法において、画像の複雑度を算出するステップと、上記画像とその前の画像との動き量を推定するステップと、上記複雑度と上記動き量によって制御を行いながら動き予測を行うステップからなることを特徴とする画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像を符号化するための画像符号化装置、及び画像符号化方法に関し、特にこれらを用いた画像記録装置、プレーヤ、携帯電話、デジタルカメラ等の装置に関する。
【背景技術】
【０００２】
大容量の映像、音声情報をデジタルデータ化して記録、伝達する手法として、MPEG(Moving Picture Experts Group)方式等の符号化方式が策定され、MPEG-1規格、MPEG-2規格、MPEG-4規格等として国際標準の符号化方式となっている。また、さらに圧縮率を向上させる方式として、H.264/AVC(Advanced Video Coding)規格等が定められている。これらの方式はデジタル衛星放送やDVD、携帯電話やデジタルカメラなどにおける符号化方式として採用され、現在ますます利用の範囲が広がり、身近なものとなってきている。
【０００３】
このような画像符号化方式においては、フレーム間の予測符号化が圧縮率の向上に大きな役割を果たしている。フレーム間予測符号化は、符号化対象のフレームを既に符号化した参照フレームから予測して符号化する方式であり、上記のMPEGやH.264等の規格ではマクロブロックと呼ばれる一定サイズのブロック単位で動き予測を行うことによって実現される。動き予測は、符号化対象マクロブロックを参照フレームに対して一定の動き探索範囲内で重ねあわせ、最も圧縮効率の良い位置を動きベクトルとして探索する方式である。フレーム間予測符号化では、動き予測によって探索された動きベクトルと、このベクトルを適用した時の符号化マクロブロックと参照フレームの差分を符号化して伝送する。
動き予測の方式には、予め指定された動き探索範囲内を全て探索する全探索法（フルサーチ）と、動き探索範囲内を段階的にまばらに探索する高速探索法とがある。全探索法は、全ての候補となるベクトルをチェックするため最も圧縮効率のよい動きベクトルを選択することができるが、処理量が大きいという問題点がある。高速探索法は、段階的に候補ベクトルをチェックすることによって圧縮効率の高さを維持しながら高速に処理を行う方式であり、最も代表的な方式としてステップ探索法が挙げられる。ステップ探索法の例としては、非特許文献１のThree Step Search (3SS)や、非特許文献２のFour Step Search (4SS)等がある。
【０００４】
3SSの例を図２に示す。この方式では、探索の開始点から一定の距離にあるサンプル点における動きベクトルの候補について誤差の計測を行い、最も誤差の小さい点を選択して徐々にサンプル間隔を狭め、最終的に調査した候補ベクトルの中で最も誤差の小さい動きベクトルを選択する。図２において(1)、(2)、(3)がそれぞれのステップにおいて計測された動きベクトルの位置を示し、グレーになっているのがそのステップにおいて選択された動きベクトルである。図２に示すように、第一ステップ、第二ステップ、第三ステップとそれぞれ選択された候補ベクトルを中心にサンプル間隔を狭めながら誤差の小さい候補ベクトルを求めていく。第一ステップのサンプル間隔は一般的に最大動き探索範囲の半分程度に設定されることが多い。
【０００５】
4SSの例を図３に示す。この方式では、まず第一ステップは3SSと同様に開始点から一定の距離にあるサンプル点の候補ベクトルについて誤差の計測を行う。次に第二ステップ、第三ステップについては、選択された候補ベクトルから外側に広がるように３つのサンプル点について候補ベクトルの誤差を計測する。外側にサンプル点を広げても誤差の小さい候補ベクトルが見つからない場合に第四ステップに進み、選択された候補ベクトルを中心に誤差の小さい動きベクトルを探索する。
【０００６】
ステップ探索法は常に一定の間隔でサンプル点を選ぶため、画像の動き特徴を反映せず精度が低いという問題点があった。これに対し、ステップ探索法を改良した方式として特許文献１の方式が挙げられる。本技術では、ステップ探索法において符号化対象領域の近傍の動き量を計測し、これに応じてベクトル探索の探索範囲を変更する方式について述べている。
【０００７】
【非特許文献１】T. Koga, K. Iinuma, A. Hirano, Y. Iijima, and T. Ishiguro : "Motion Compensated Inter-Frame Coding for Video-Conferencing", Proc. NTC81 (Nov. 1981).
【０００８】
【非特許文献２】L. M. Po and W. C. Ma : "A Novel Four-Step Search Algorithm for Fast Block Motion Estimation", IEEE Trans. Circuits System, Video Technology (June 1996).
【特許文献１】特開平１１−２１５５０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上記のような一般的な動きベクトルの高速探索法では、画像の動き特徴や複雑さの特徴を反映していなかったため、探索するサンプル点の数が多く速度が遅いわりには、探索された動きベクトルの精度が低いという問題点があった。すなわち、画像の複雑さを考慮せずに一定のサンプル間隔で探索を行うため、動きベクトルの精度が要求される画像の複雑な部分ではサンプル点数が必要な量より少なく、逆にそれほど必要でない部分ではサンプル点数が必要以上に多いという状態になっていた。動き特徴のみを用いてステップ探索法における探索範囲を制御する方式は提案されているが、この方式では画像の複雑さの特徴を反映していないため精度が十分でなかった。
本発明は上記従来技術を鑑みて、フレーム間予測符号化における動き探索において、画像の複雑さを算出する手段と画像の動き量を推定する手段を用いて動き探索に必要なパラメータを制御することによって、高速かつ高精度な動きベクトルを探索するための方式と、これを行う画像符号化装置を提供するものである。
【課題を解決するための手段】
【００１０】
上記課題を解決するために本願で開示する構成の代表的なものは以下の通りである。
連続する画像からなる動画像を符号化する画像符号化装置において、画像の複雑度を算出する画像複雑度推定部と、上記画像とその前の画像との動き量を推定する近傍動き量推定部と、上記画像の動き予測を行う動き予測部とを有し、上記動き予測部は、上記複雑度算出部と動き推定部からの出力に基づき動き予測の制御を行う画像符号化装置。
【発明の効果】
【００１１】
本発明により、画像の複雑さや画像の動きの激しさなど、それぞれの画像特徴に応じて効率的に動きベクトルの探索を行うことができるようになり、より精度の高い動きベクトルを探索することができ、その結果として動画像の圧縮効率を高めることが可能になり、高性能な画像符号化装置を実現できる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施例を図示により説明する。
図１に本発明による画像符号化装置の一実施例を示し、その特徴について述べる。
図１は画像符号化装置における動き探索処理部分について説明した図である。主に動き探索を行う部分は画像複雑度推定部(103)と動き予測部(104)と近傍動き量推定部(105)であり、その他に原画像メモリ(101)、参照画像メモリ(102)、参照画像動きベクトルメモリ(106)、符号化画像動きベクトルメモリ(107)がある。
【００１３】
画像複雑度推定部(103)は、原画像メモリ(101)の入力を用いて符号化するフレームの画像の複雑さを推定する。画像の複雑さとは画像の一定領域内の信号変化の大きさであり、画像が複雑であるほど画像の符号化が難しくなることを示す。画像の複雑さは、例えば画面内の一定領域の輝度値の分散や、一定領域に対してアダマール変換をかけた時のDC成分以外の係数の和や、一定領域に対してエッジフィルタをかけた時の出力の合計等によって計測することができる。以下では8×8画素からなるブロックに対してそれぞれ動きベクトルを探索する例について説明する。
【００１４】
符号化対象の8×8画素ブロックの輝度値の分散Varは数１のようにして求められる。
【００１５】
【数１】
2006313950.tif 000003
【００１６】
ここでPkは各画素の輝度値を示し、Pavrはブロックの輝度値の平均を示す。分散値が大きいほど複雑度が大きいといえるので、これにより複雑度を判定できる。分散値は計算負荷があまり大きくないため、高速に処理することができる。画像信号は輝度信号と色差信号によって構成されるが、人間の視覚は輝度に対して敏感で、色差に対してはやや鈍いので、輝度値のみを用いて複雑度を計算することによって処理負荷を下げながら効果的な計測を行うことができる。
【００１７】
また8×8画素ブロックのアダマール変換は、ブロックに対して数２のアダマール行列を右側と左側からそれぞれ乗算することによって得られる。アダマール変換後の係数行列について、一番左上の係数がDC係数であり残りの係数がAC係数である。AC係数は左上の係数ほど周波数が低く、右下ほど周波数が高い。係数の和が大きいほど複雑度が高いと言えるので、AC係数の一部または全部の和を取ることによって複雑度を判定できる。アダマール変換後のAC係数の分布は複雑さに関する画像特徴を示すため、垂直方向の周波数が高い場合には垂直方向のベクトル探索を特に詳細に行うなど、パターンに応じた詳細な制御が可能である。
【００１８】
【数２】
2006313950.tif 000004
【００１９】
エッジフィルタを用いる場合には、例えば数３に示すSobelオペレータを用いればよい。注目画素を0の位置とした時、周辺画素に数３の二つのフィルタ係数をかけ、注目画素に足す計算を行う。この処理を対象ブロック全体に行うことによって各画素のエッジのパワーが得られる。エッジのパワーが大きいほど複雑度が高いので、これによって複雑度を判定できる。エッジフィルタを用いるとエッジの多さを基準に複雑度が計算されるため、コントラストの高い画像やアニメーションなどで特に効果的となる。
【００２０】
【数３】
2006313950.tif 000005
【００２１】
近傍動き量推定部(105)は、参照画像動きベクトルメモリ(106)及び符号化画像動きベクトルメモリ(107)からの入力を用いて、符号化対象ブロックの動き量、つまり、映っている対象が前後のフレームからどの程度動いているかを推定する。例えばフレーム内において符号化対象ブロックの上側にあるブロックと左側にあるブロック、及び右上にあるブロックで既に決定された動きベクトルから、横方向、縦方向それぞれの要素についてメジアンを取ることによって、符号化対象ブロックの予測ベクトルを得ることができる。この予測ベクトルの長さを動き量とすればよい。また、参照画像の動きベクトルを用いる場合、参照画像において符号化対象ブロックと画面上の同じ位置にある動きベクトルを予測ベクトルとし、この長さを動き量としてもよい。符号化画像から得た予測ベクトルと参照画像から得た予測ベクトルを両方用いて動き量を算出してもよい。予測ベクトルの計算は負荷が軽いため高速に処理できる。動き量の推定精度は、一般的に参照画像の動きベクトルを用いるより符号化画像における近傍ブロックの動きベクトルを用いた方が精度が高くなる傾向がある。これは、画面上のある程度大きな物体が移動することを考える時、前のフレームとの比較では動きが変化する場合があるのに対し、画面内に関してはこの物体を含む隣り合うブロック群がほぼ同じ動きベクトルを持つと考えられることによる。また、符号化に先立って参照画像と現画像との間で画面全体、あるいは画面をいくつかに分割した領域について大まかな動き予測を行い、これをブロックの予測ベクトルとして用いてもよい。
【００２２】
動き予測部(104)は原画像メモリ(101)の原画像と、参照画像メモリ(102)の参照画像を用いて、通常の動き予測部と同様に全探索法やステップ探索法によって動き予測を行う。本発明による動き予測部(104)では画像複雑度推定部(103)と近傍動き量推定部(105)からの入力に従って最大動き探索範囲や探索サンプル点間隔を変更し制御する点が異なる。特に、動きベクトル探索の精度を画像複雑度によって調整することが重要であり、必ずしも動き量を考慮する必要はないが、動き量を加えることによってより詳細な調整を行うことができ、少ない処理量で精度の高い動きベクトルを探索できるようになる。
【００２３】
画像が複雑であるほど動き探索が誤った時の誤差の量は大きくなり、画像が平坦な箇所は動き探索が誤ったとしても発生する誤差はそれほど大きくならない。このため、画像が複雑な箇所ほど動きベクトルの探索精度を上げる必要がある。また動き量が大きいほど、最大探索範囲又はステップ探索における第一ステップのサンプル間隔を広げることが望ましい。これは、動きが大きい箇所は動きベクトルが大きくなると予想されるため、初期の探索間隔は大きくてよく、また探索範囲は十分広い必要があるためである。
【００２４】
本発明によるステップ探索の方法を、図４を用いて説明する。図４は4SSをベースとしたステップ探索の例である。この方式では、第一ステップは開始点から一定の距離にあるサンプル点の候補ベクトルについて誤差の計測を行う。次に第二ステップ、第三ステップについては、選択された候補ベクトルから外側に広がるように３つのサンプル点について候補ベクトルの誤差を計測する。外側にサンプル点を広げても誤差の小さい候補ベクトルが見つからない場合に第四ステップに進み、選択された候補ベクトルを中心に誤差の小さい動きベクトルを探索する。
【００２５】
次に、このステップ探索を効率的に行うために動き予測部(104)において制御するパラメータの例を説明する。まず、探索方法が挙げられる。画像が複雑な箇所ほど正確な探索が必要となるため、複雑度が一定以上の場合にはステップ探索ではなく全探索を行うように処理を変更すれば、ベクトルの精度を上げることができる。更に、ステップ探索においては、探索のサンプル間隔とサンプル個数を変更することもできる。画像の複雑度が高い時ほど、ステップ探索のサンプル間隔を狭め、サンプル個数を増やすようにする。
【００２６】
また、例えばH.264等の符号化方式では、整数画素、1/2画素、1/4画素の精度で動きベクトルを扱うことができるが、精度が細かいほど処理量が多くなる。そこで複雑度の低い箇所では整数精度、1/2画素精度で探索を行い、複雑度の高い箇所では1/4画素精度で探索を行うことによって、精度を落とさずに高速に動き探索を行うことができる。探索精度の制御は、ステップ探索に限らずフルサーチの場合にも応用可能であり、探索速度の向上に寄与する。
【００２７】
本願において精度よくかつ高速に動き探索を行うためには、画像の複雑度と推定動き量の両方を用いて探索方法を制御する。本方式はステップ探索に限らずフルサーチの場合にも応用可能であるが、以下ではより効果の大きいステップ探索の場合を例に挙げ説明する。動き量を考慮したパラメータ例として動き探索の探索開始位置が挙げられる。通常は符号化対象マクロブロックと同じ位置から開始するが、動き量が大きい時には近傍ブロックから推定した予測ベクトルの位置を開始位置にすることによって、より精度の高いベクトル探索を行うことができる。符号化対象マクロブロック位置と予測ベクトル位置の両方についてまず動き予測を行った場合の誤差を計算し、小さい方から探索を開始する方法を用いてもよい。次に、動き探索の最大探索範囲が挙げられる。動き量が大きい時ほど探索する範囲を広げるように制御することによって、より正確な動きベクトルを得られる。又、推定された動き量が大きい場合にはステップ探索のサンプル間隔を広げるようにする。又、ベクトル精度を制御することもできる。
【００２８】
次にステップ探索をどのステップまで行うのかの段数判定が挙げられる。動きが小さい時は図４の例で第一ステップと第四ステップのみを行うようにする。(2)(3)に示す範囲を広げる処理を行わないことによって高速化が図れる。
【００２９】
ステップ探索においては、まず推定動き量から各ステップにおける候補ベクトルのサンプル範囲を決定する。動き量が大きければ範囲が広くなり、小さければ範囲は狭くなる。次に画像の複雑度を用いてサンプル点数を決定する。複雑度が高ければサンプル点数が多くなり、低ければ少なくなる。この結果サンプル間隔は、複雑度が低く動き量が大きい時が最も長く、次いで複雑度が高く動き量が大きい時と複雑度が低く動き量が小さい時が中くらいになり、複雑度が高く動き量が小さい時が最も短くなる。このように両方を組み合わせることによって、動きの大きさに追従するだけでなく、画像の複雑さに合わせて動きベクトル探索の精度もコントロールできる。
【００３０】
上記の制御パラメータに関し、画像の複雑度と動き量に関して条件が反する時には適宜調整する。例えば、ステップ探索のサンプル間隔は画像が複雑な時に小さくして精度を上げ、動き量が大きい時には大きくして速度を上げる方がよい。この場合には、精度を一定以上に保つためサンプル間隔を小さくした方が動き探索を安定的に行える。特に速度向上の設定がある場合にのみサンプル間隔を大きくするようにしてもよい。逆に画像の複雑度が小さく、動き量も小さい場合にも精度と速度の優先順位によって調整可能であるが、一般には精度を優先してサンプル間隔を小さくする。画像の複雑度と動き量の両方を条件として用いることによって、画像の特徴に合わせた詳細な動きベクトル探索の調整を行うことができる。
【００３１】
上記の説明は主にステップ探索を用いた場合について述べているが、本発明による動き探索方法はステップ探索以外にも用いることができる。例えばフルサーチを高速に行う方法として、サンプル点を一つ飛ばしで誤差の計測を行う準フルサーチがある。この場合、符号化対象ブロック毎に画像複雑度を計算して、複雑度が大きければ全てのサンプル点を検査するフルサーチを用い、小さければ一つ飛ばしで行う準フルサーチを用いるようにすればよい。最大動き探索範囲については、動き量に応じて変化させればよい。この方法を用いると、ステップ探索より処理量は大きいが、より高精度な動きベクトルを探索することができ、全てフルサーチを用いる方法と比べると処理量が少なくて済む。
【００３２】
図５に本発明による画像符号化方法の一実施例を示し、その特徴について述べる。
まずステップ(501)において画像符号化における動き探索処理を開始する。
ステップ(502)では輝度分散値の計算を行う。上記のように原画像から符号化するフレームの画像の複雑さを推定する。画像の複雑さは輝度値の分散や、アダマール変換後の係数の和や、エッジフィルタをかけた時の出力の合計等によって計算すればよい。計算方法については上述のとおりである。次にステップ(504)に進む。
ステップ(503)では近傍動き量の計算を行う。参照画像の動きベクトル及び符号化画像の動きベクトルから符号化対象ブロックの動き量を推定する。参照画像または符号化画像の動きベクトルから予測ベクトルを計算し、このベクトル長を動き量とする。計算方法については上述のとおりである。次にステップ(504)に進む。
ステップ(504)ではステップ(502)及びステップ(503)から得られた情報に基づき、動き探索パラメータの設定、制御を行う。画像の複雑度が高いほど動きベクトル探索の精度を高くする、すなわちステップ探索におけるサンプル間隔を小さくする。また、動き量が大きいほど動き探索の範囲を広げるようにする、すなわち最大動き探索範囲を広げ、サンプル間隔については大きくする。パラメータの制御方法については上述のとおりである。次にステップ(505)に進む。
ステップ(505)ではステップ(504)にて設定された動き探索パラメータに従って動き探索を行う。動き探索方法としては、ステップ探索や全探索を用いる。
【００３３】
上記のような方法により、画像の複雑さや動きの大きさといった動画像の特徴に応じて動き探索のパラメータを調節し、より高精度な動きベクトルを選択することによって現行方式よりも圧縮率を高めた画像符号化装置を実現できる。
なお、前記実施例では特定のブロックサイズを例に挙げて本発明による画像符号化装置の説明を行ったが、本発明の適用はこれに限定されるものではなく、様々なブロックサイズでの動き探索に応用することができる。また、符号化方式の規格についてもMPEGを例に挙げて説明したが、これ以外の画像符号化装置にも用いることができる。
【図面の簡単な説明】
【００３４】
【図１】本発明で用いる画像符号化装置の一実施例の説明図である。
【図２】ステップ探索による動き探索方法の一例を示した図である。
【図３】ステップ探索による動き探索方法の別の一例を示した図である。
【図４】本発明による動き探索パラメータの一例を説明した図である。
【図５】本発明による動き探索方法の一実施例を説明した図である。
【符号の説明】
【００３５】
101…原画像メモリ; 102…参照画像メモリ; 103…画像複雑度推定部; 104…動き予測部; 105…近傍動き量推定部; 106…参照画像動きベクトルメモリ; 107…符号化画像動きベクトルメモリ; 501, 502,503,504,505…ステップ。
【図１】
2006313950.tif 000006
【図２】
2006313950.tif 000007
【図３】
2006313950.tif 000008
【図４】
2006313950.tif 000009
【図５】
2006313950.tif 000010