(57)【特許請求の範囲】
【請求項１】
画像データを所定の大きさのブロックに分割し、当該ブロック毎に動きベクトルを求めて動き補償を用いた動画像信号の予測符号化を行う画像処理装置であって、
行アドレスと列アドレスにより一意に記憶領域が定まり、かつ前記列アドレス方向にはデータの連続した読み出しが可能な同期型メモリと、
前記同期型メモリに格納されている画像データから、複数の探索精度で階層的に前記動きベクトルを探索する動き探索手段と、
前記動き探索手段により探索された前記動きベクトルを使用して画像データを予測符号化する符号化手段とを備え、
前記複数の探索精度とは粗探索と、当該粗探索の探索精度より高い探索精度で動きベクトルを探索する密探索とを含み、
前記動き探索手段は、前記粗探索の探索精度での動きベクトル探索時には縮小された参照画像を使った探索を行い、前記密探索の探索精度での動きベクトル探索時には縮小されていない参照画像を使った探索を行うものであって、
前記同期型メモリは、前記行アドレスと前記列アドレスとの組み合わせにより特定される１つのアドレスに対して画像の水平方向に連続する複数の画素値を格納可能であり、
前記粗探索の探索精度での動きベクトル探索時に用いる縮小された参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を１つの前記アドレスに対して格納し、かつ、当該参照画像の垂直方向に連続する各水平ラインにおける複数の画素値を前記列アドレス方向に連続して格納するようにし、
前記密探索の探索精度での動きベクトル探索時に用いる縮小されていない参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を、前記列アドレス方向に連続する複数の前記アドレスに対して格納し、かつ、水平ラインの右端の画素値の次に、当該参照画像の垂直方向に連続する次の水平ラインにおける左端の画素値を前記列アドレス方向に連続して格納するようにしたことを特徴とする画像処理装置。
【請求項２】
前記ブロックの水平画素数がｍ（ｍは自然数）であり、前記同期型メモリの１つの前記アドレスに対して格納される複数の画素値の数がｎ（ｎは自然数）である場合に、前記粗探索の探索精度は、画像の水平方向における（（ｍ／ｎ）×ｋ）画素単位（ｋは自然数）とすることを特徴とする請求項１記載の画像処理装置。
【請求項３】
画像データを所定の大きさのブロックに分割し、当該ブロック毎に動きベクトルを求めて動き補償を用いた動画像信号の予測符号化を行う画像処理方法であって、
行アドレスと列アドレスにより一意に記憶領域が定まり、かつ前記列アドレス方向にはデータの連続した読み出しが可能であって、前記行アドレスと前記列アドレスとの組み合わせにより特定される１つのアドレスに対して画像の水平方向に連続する複数の画素値を格納可能な同期型メモリに参照画像を格納するデータ格納工程と、
前記同期型メモリに格納されている、縮小された参照画像を用いて粗探索の探索精度で前記動きベクトルを探索する第１の動き探索工程と、
前記第１の動き探索工程で探索した結果に基づいて、前記同期型メモリに格納されている、縮小されていない参照画像を用いて前記粗探索の探索精度より高い密探索の探索精度で前記動きベクトルを探索する第２の動き探索工程と、
前記第２の動き探索工程で得られた前記動きベクトルを使用して画像データを予測符号化する符号化工程とを有し、
前記データ格納工程では、
前記粗探索の探索精度での動きベクトル探索時に用いる縮小された参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を１つの前記アドレスに対して格納し、かつ、当該参照画像の垂直方向に連続する各水平ラインにおける複数の画素値を前記列アドレス方向に連続して格納するようにし、
前記密探索の探索精度での動きベクトル探索時に用いる縮小されていない参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を、前記列アドレス方向に連続する複数の前記アドレスに対して格納し、かつ、水平ラインの右端の画素値の次に、当該参照画像の垂直方向に連続する次の水平ラインにおける左端の画素値を前記列アドレス方向に連続して格納するようにしたことを特徴とする画像処理方法。
【請求項４】
画像データを所定の大きさのブロックに分割し、当該ブロック毎に動きベクトルを求めて動き補償を用いた動画像信号の予測符号化を行う画像処理方法をコンピュータに実行させるプログラムであって、
行アドレスと列アドレスにより一意に記憶領域が定まり、かつ前記列アドレス方向にはデータの連続した読み出しが可能であって、前記行アドレスと前記列アドレスとの組み合わせにより特定される１つのアドレスに対して画像の水平方向に連続する複数の画素値を格納可能な同期型メモリに参照画像を格納するデータ格納ステップと、
前記同期型メモリに格納されている、縮小された参照画像を用いて粗探索の探索精度で前記動きベクトルを探索する第１の動き探索ステップと、
前記第１の動き探索ステップで探索した結果に基づいて、前記同期型メモリに格納されている、縮小されていない参照画像を用いて前記粗探索の探索精度より高い密探索の探索精度で前記動きベクトルを探索する第２の動き探索ステップと、
前記第２の動き探索ステップで得られた前記動きベクトルを使用して画像データを予測符号化する符号化ステップとをコンピュータに実行させ、
かつ前記データ格納ステップでは、
前記粗探索の探索精度での動きベクトル探索時に用いる縮小された参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を１つの前記アドレスに対して格納し、かつ、当該参照画像の垂直方向に連続する各水平ラインにおける複数の画素値を前記列アドレス方向に連続して格納するようにし、
前記密探索の探索精度での動きベクトル探索時に用いる縮小されていない参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を、前記列アドレス方向に連続する複数の前記アドレスに対して格納し、かつ、水平ラインの右端の画素値の次に、当該参照画像の垂直方向に連続する次の水平ラインにおける左端の画素値を前記列アドレス方向に連続して格納するようにしたことを特徴とするプログラム。
【請求項５】
請求項４記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像信号を符号化する動画像符号化技術に関し、特に、動き補償を用いた動画像信号の予測符号化処理技術に関する。
【背景技術】
【０００２】
従来から、膨大なデータ量の各種データを符号化することによりデータ量を削減して低い伝送レートで伝送し得るようにするための各種装置が開発されている。例えば、動画像符号化方式の国際標準規格であるＭＰＥＧ（Moving Picture Experts Group）符号化を用いて動画像信号を符号化して記録媒体に記録する動画像符号化装置がある。
【０００３】
ＭＰＥＧ符号化は、動き補償を用いた予測符号化であって、符号化処理においては動き補償に用いる動きベクトルを検出する必要がある。ＭＰＥＧ符号化により効率的な符号化を行うためには、できるだけ広い探索領域で動きベクトルを検出する必要がある。しかし、広い探索領域で動きベクトルを探索するためには、膨大なデータが必要になる。
【０００４】
広い探索領域で動きベクトルを探索しながらも必要なデータ量を低減させるために、動きベクトルの階層的な探索が行われている（例えば、特許文献１参照）。特許文献１に記載の手法は、入力画像と参照画像とを同じ縮小率で縮小し、それらの画像（縮小画像）を用いて動きベクトルの粗探索を行う。その後、その周辺の小領域で、縮小率を変えた画像を用いてさらに動きベクトルの探索を行い、所望の精度の動きベクトルが得られるまで、この探索を繰り返し行う。
【０００５】
【特許文献１】特開平７−１０７４８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術においては、動きベクトルを探索するために必要なデータ量の低減は実現されているが、メモリアクセス量の低減は必ずしも実現されているとはいえない。
【０００７】
また、動きベクトルを探索するために必要なデータは、例えば大容量の同期型メモリに格納される。一般に大容量の同期型メモリは、アクセスするための手順があり、列アドレス方向に連続したアクセスは高速に行えるが、現在アクセス中の列アドレスとは異なる列アドレスをアクセスするためには数サイクルの手続きが必要である。すなわち、大容量の同期型メモリは、そのようなランダムアクセスを行うと非常に効率が悪くなるという特徴を有している。
【０００８】
したがって、上述した従来技術の手法を用いたとしても、動きベクトルの探索に係るメモリアクセス量は、必ずしも低減されない。その結果、広い探索領域での動きベクトルの探索は、装置の高い動作クロック周波数を必要とし、装置の消費電力の増大を招くという問題があった。
【０００９】
本発明は、動き補償を用いた動画像信号の予測符号化処理において、広い探索領域で動きベクトルを探索しながらも、装置の動作周波数の低減及び消費電力の低減を実現することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の画像処理装置は、画像データを所定の大きさのブロックに分割し、当該ブロック毎に動きベクトルを求めて動き補償を用いた動画像信号の予測符号化を行う画像処理装置であって、行アドレスと列アドレスにより一意に記憶領域が定まり、かつ前記列アドレス方向にはデータの連続した読み出しが可能な同期型メモリと、前記同期型メモリに格納されている画像データから、複数の探索精度で階層的に前記動きベクトルを探索する動き探索手段と、前記動き探索手段により探索された前記動きベクトルを使用して画像データを予測符号化する符号化手段とを備え、前記複数の探索精度とは粗探索と、当該粗探索の探索精度より高い探索精度で動きベクトルを探索する密探索とを含み、前記動き探索手段は、前記粗探索の探索精度での動きベクトル探索時には縮小された参照画像を使った探索を行い、前記密探索の探索精度での動きベクトル探索時には縮小されていない参照画像を使った探索を行うものであって、前記同期型メモリは、前記行アドレスと前記列アドレスとの組み合わせにより特定される１つのアドレスに対して画像の水平方向に連続する複数の画素値を格納可能であり、前記粗探索の探索精度での動きベクトル探索時に用いる縮小された参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を１つの前記アドレスに対して格納し、かつ、当該参照画像の垂直方向に連続する各水平ラインにおける複数の画素値を前記列アドレス方向に連続して格納するようにし、前記密探索の探索精度での動きベクトル探索時に用いる縮小されていない参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を、前記列アドレス方向に連続する複数の前記アドレスに対して格納し、かつ、水平ラインの右端の画素値の次に、当該参照画像の垂直方向に連続する次の水平ラインにおける左端の画素値を前記列アドレス方向に連続して格納するようにしたことを特徴とする。
【００１３】
本発明の画像処理方法は、画像データを所定の大きさのブロックに分割し、当該ブロック毎に動きベクトルを求めて動き補償を用いた動画像信号の予測符号化を行う画像処理方法であって、行アドレスと列アドレスにより一意に記憶領域が定まり、かつ前記列アドレス方向にはデータの連続した読み出しが可能であって、前記行アドレスと前記列アドレスとの組み合わせにより特定される１つのアドレスに対して画像の水平方向に連続する複数の画素値を格納可能な同期型メモリに参照画像を格納するデータ格納工程と、前記同期型メモリに格納されている、縮小された参照画像を用いて粗探索の探索精度で前記動きベクトルを探索する第１の動き探索工程と、前記第１の動き探索工程で探索した結果に基づいて、前記同期型メモリに格納されている、縮小されていない参照画像を用いて前記粗探索の探索精度より高い密探索の探索精度で前記動きベクトルを探索する第２の動き探索工程と、前記第２の動き探索工程で得られた前記動きベクトルを使用して画像データを予測符号化する符号化工程とを有し、前記データ格納工程では、前記粗探索の探索精度での動きベクトル探索時に用いる縮小された参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を１つの前記アドレスに対して格納し、かつ、当該参照画像の垂直方向に連続する各水平ラインにおける複数の画素値を前記列アドレス方向に連続して格納するようにし、前記密探索の探索精度での動きベクトル探索時に用いる縮小されていない参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を、前記列アドレス方向に連続する複数の前記アドレスに対して格納し、かつ、水平ラインの右端の画素値の次に、当該参照画像の垂直方向に連続する次の水平ラインにおける左端の画素値を前記列アドレス方向に連続して格納するようにしたことを特徴とする。
【００１４】
本発明のプログラムは、画像データを所定の大きさのブロックに分割し、当該ブロック毎に動きベクトルを求めて動き補償を用いた動画像信号の予測符号化を行う画像処理方法をコンピュータに実行させるプログラムであって、行アドレスと列アドレスにより一意に記憶領域が定まり、かつ前記列アドレス方向にはデータの連続した読み出しが可能であって、前記行アドレスと前記列アドレスとの組み合わせにより特定される１つのアドレスに対して画像の水平方向に連続する複数の画素値を格納可能な同期型メモリに参照画像を格納するデータ格納ステップと、前記同期型メモリに格納されている、縮小された参照画像を用いて粗探索の探索精度で前記動きベクトルを探索する第１の動き探索ステップと、前記第１の動き探索ステップで探索した結果に基づいて、前記同期型メモリに格納されている、縮小されていない参照画像を用いて前記粗探索の探索精度より高い密探索の探索精度で前記動きベクトルを探索する第２の動き探索ステップと、前記第２の動き探索ステップで得られた前記動きベクトルを使用して画像データを予測符号化する符号化ステップとをコンピュータに実行させ、かつ前記データ格納ステップでは、前記粗探索の探索精度での動きベクトル探索時に用いる縮小された参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を１つの前記アドレスに対して格納し、かつ、当該参照画像の垂直方向に連続する各水平ラインにおける複数の画素値を前記列アドレス方向に連続して格納するようにし、前記密探索の探索精度での動きベクトル探索時に用いる縮小されていない参照画像については、当該参照画像の１つの水平ラインにおける複数の画素値を、前記列アドレス方向に連続する複数の前記アドレスに対して格納し、かつ、水平ラインの右端の画素値の次に、当該参照画像の垂直方向に連続する次の水平ラインにおける左端の画素値を前記列アドレス方向に連続して格納するようにしたことを特徴とする。
本発明のコンピュータ読み取り可能な記録媒体は、前記プログラムを記録したことを特徴とする。
【発明の効果】
【００１５】
本発明によれば、参照画像を同期型メモリに格納する際、粗探索の探索精度での動きベクトル探索時に用いる縮小された参照画像については、参照画像の１つの水平ラインにおける複数の画素値を１つのアドレスに対して格納し、かつ、参照画像の垂直方向に連続する各水平ラインにおける複数の画素値を列アドレス方向に連続して格納する。また、密探索の探索精度での動きベクトル探索時に用いる縮小されていない参照画像については、参照画像の１つの水平ラインにおける複数の画素値を、列アドレス方向に連続する複数のアドレスに対して格納し、かつ、水平ラインの右端の画素値の次に、参照画像の垂直方向に連続する次の水平ラインにおける左端の画素値を列アドレス方向に連続して格納する。これにより、動き補償を用いた動画像信号の予測符号化処理にて使用される動きベクトルを、広い探索領域で探索しながらも、効率的なメモリアクセスで探索することができ、装置の動作周波数の低減及び消費電力の低減を実現することができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施形態を図面に基づいて説明する。
【００１７】
（第１の実施形態）
図１は、本発明の第１の実施形態による画像処理装置の一例である動画像符号化装置の構成例を示すブロック図である。
【００１８】
本実施形態における動画像符号化装置は、図１に示すように、映像入力部１０１、動き探索部１０２、動き補償部１０３、画像縮小部１０４、フレームメモリ１０５、減算器１０６、及び加算器１０７を有する。また、本実施形態における動画像符号化装置は、直交変換（ＤＣＴ：Discrete Cosine Transform）部１０８、量子化（Ｑ）部１０９、及び可変長符号化（ＶＬＣ：Variable Length Code）部１１０を有する。本実施形態における動画像符号化装置は、符号化データバッファ１１１、符号量制御部１１２、逆量子化（ＩＱ）部１１３、逆直交変換（ＩＤＣＴ：Inverse Discrete Cosine Transform）部１１４をさらに有する。
【００１９】
映像入力部１０１は、動画像符号化装置に対して映像信号を入力するためのものである。例えば、映像入力部１０１は、レンズにより結像した光学像を光電変換素子（例えばＣＣＤイメージセンサ）により電気信号に変換し、前記電気信号に変換された動画像アナログ信号をＡ／Ｄコンバータにより動画像デジタル信号に変換する。さらに、映像入力部１０１は、デジタル信号処理回路により、前記動画像デジタル信号にホワイトバランス処理やガンマ補正処理などの信号処理を施こす機能を有する。なお、光電変換素子、Ａ／Ｄコンバータ、及びデジタル信号処理回路等は、映像入力部１０１内に備えられている。
【００２０】
映像入力部１０１により得られた動画像デジタル信号は、フレームメモリ１０５に一旦格納される。ここで、フレームメモリ１０５は、行アドレス（Ｒｏｗ：第２のアドレス）と列アドレス（Ｃｏｌ：第１のアドレス）による２次元のアドレス空間を持ち、列アドレス方向にはデータの連続した読み出しが可能な同期型メモリである。フレームメモリ１０５は、行アドレスと列アドレスを用いて各記憶領域がマッピングされており、行アドレスと列アドレスとの組み合わせにより記憶領域が一意に定まる。本実施形態では、フレームメモリ１０５は、一例としてデータのビット長が３２ビットのＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）で構成されているものとする。
【００２１】
動き探索部１０２は、フレームメモリ１０５に格納されている符号化対象画像（動画像デジタル信号）を読み出す。符号化対象画像を読み出す際、動き探索部１０２は、符号化対象画像を水平１６画素、垂直１６画素の大きさの符号化対象マクロブロック（以下、「カレントＭＢ」とも称す。）に分割し、カレントＭＢ毎にフレームメモリ１０５から読み出す。
【００２２】
ここで、本実施形態における画像信号（動画像デジタル信号）のフレームメモリ１０５への格納方法について図２を参照して説明する。
図２に示すように本実施形態では、図２（ａ）に示す画像の座標で水平方向及び垂直方向ともに１６画素分のカレントＭＢにおける各画素の画素値が、図２（ｂ）に示すようにフレームメモリ１０５の同一の行アドレス（Ｒｏｗ）に配置される。また、図２（ａ）において塗りつぶした画素（Ｃｏｌ０の４画素）のように、画像において水平方向に連続する４画素の画素値が、行アドレスと列アドレスとの組み合わせにより特定されるフレームメモリ１０５の１つのアドレスにまとめて格納される。したがって、図２（ａ）に示すカレントＭＢの画像信号は、Ｃｏｌ０，Ｃｏｌ１，Ｃｏｌ２，…のような順番で、図２（ｂ）に示すように同一の行アドレス内の列アドレス（Ｃｏｌ）方向に連続的に格納される。なお、カレントＭＢにおける右端の画素値（例えばＣｏｌ３）の次には、当該カレントＭＢにおける１ライン下の左端の画素値（例えばＣｏｌ４）が格納される。
【００２３】
動き探索部１０２は、フレームメモリ１０５から１つのカレントＭＢのデータを読み出すと、読み出したカレントＭＢのデータを動き探索部１０２内部のメモリに格納する。さらに動き探索部１０２は、読み出したカレントＭＢのデータを水平方向に４分の１に縮小した縮小カレントＭＢのデータを生成して、動き探索部１０２内部のメモリに格納する。
【００２４】
次に、動き探索部１０２は、符号化対象画像とは時間的に異なる画像を参照画像としてフレームメモリ１０５から読み出す。参照画像は、後述するように、過去に符号化した際に生成した画像（ローカルデコード画像）を使用する。まず、動き探索部１０２は、例えば水平４画素単位、垂直１画素単位の精度で動きベクトルを探索（粗探索）するために、過去の符号化時にあらかじめ縮小処理を施してフレームメモリ１０５に格納しておいた粗探索用の参照画像を読み出す。
【００２５】
ここで、本実施形態において粗探索用の参照画像として用いられる縮小画像信号のフレームメモリ１０５への格納方法について図３を参照して説明する。
図３（ａ）は元々の参照画像を示しており、これを水平方向に４分の１に縮小した画像（縮小画像）が図３（ｂ）に示している。図３（ｂ）に示す４分の１に縮小処理した後の参照画像において水平方向に連続する画素の画素値（例えば図３（ｂ）中で塗りつぶした画素群Ｃｏｌ０の画素値）が、図３（ｃ）に示すようにフレームメモリ１０５の１つのアドレスにまとめて格納される。したがって、図３（ｂ）に示す４分の１に縮小後の参照画像の画像信号は、図３（ｃ）に示すように同一の行アドレス（Ｒｏｗ）内の列アドレス（Ｃｏｌ）方向に連続的に格納される。具体的には、図３（ｂ）においてＣｏｌ０，Ｃｏｌ１，Ｃｏｌ２，…のように画像の座標で垂直方向に連続した、参照画像の水平方向に連続する画素値が、図３（ｃ）に示すようにフレームメモリ１０５に格納される。以上のように、粗探索用の参照画像は図３（ｃ）に示すようにフレームメモリ１０５に配置される。
【００２６】
粗探索用の参照画像は、動きベクトルの探索を行う際、カレントＭＢの周辺も含めて広い範囲で読み出される。例えば、カレントＭＢの周辺を含む縮小前の画像で水平方向８０画素（水平±３２画素のベクトルを算出可能な画素数）、垂直方向４８画素（垂直±１６画素のベクトルを算出可能な画素数）分の広い範囲で粗探索用の参照画像が読み出される。動き探索部１０２は、読み出した縮小参照画像のデータと縮小カレントＭＢのデータとのパターンマッチングを順次行い、最も差分値が小さい縮小参照画像の座標から粗探索の動きベクトルを算出する。
【００２７】
粗探索での動きベクトルの探索は、フレームメモリ１０５から読み出すべき縮小参照画像のデータ量が多いため、探索範囲すべてのデータを動き探索部１０２に格納せずに、以下のようにして行う。例えば動き探索部１０２の内部に縮小参照画像用のメモリとして、縮小後の画像で水平８画素、垂直４８画素分のメモリを設け、動き探索部１０２は、フレームメモリ１０５から縮小参照画像のデータを読み出しながら動きベクトルの探索を実行する。このとき、動き探索部１０２内部のメモリで不要になったデータは、フレームメモリ１０５から新たに読み出した縮小参照画像のデータで置き換えていく。このようにして、動き探索部１０２は、所定の領域内において縮小カレントＭＢのデータと縮小参照画像のデータとの差分が最も小さい縮小参照画像の座標を求め、それを粗探索の動きベクトルとして算出する。本実施形態では、縮小参照画像は、元の参照画像を水平方向に４分の１に縮小した画像であるため、粗探索における動きベクトルの探索精度は縮小前の画像に換算すると水平４画素単位の探索精度になる。
【００２８】
次に、動き探索部１０２は、水平及び垂直ともに１画素単位の精度で動きベクトルを探索（密探索）するため、フレームメモリ１０５に格納されている密探索用の参照画像（縮小していない画像）を読み出す。詳細には、上述した粗探索で求めた動きベクトルの例えば水平±４画素、垂直±４画素の範囲での密探索を行うため、動き探索部１０２は、水平２４画素、垂直２４画素分の範囲の参照画像をフレームメモリ１０５から読み出し、内蔵するメモリに格納する。なお、縮小していない参照画像は、図２に示したようなカレントＭＢのデータと同様の配置でフレームメモリ１０５に格納されている。
【００２９】
動き探索部１０２は、動き探索部１０２内部のメモリに格納した、カレントＭＢのデータと参照画像のデータとのパターンマッチングを行い、密探索の動きベクトルを算出する。具体的には、動き探索部１０２は、縮小していないカレントＭＢのデータと縮小していない参照画像のデータとの差分が最も小さい参照画像の座標を求め、それを密探索の動きベクトルとして算出する。
【００３０】
動き補償部１０３は、動き探索部１０２が密探索で算出した動きベクトルに対応する参照画像をフレームメモリ１０５から読み出し、動き補償部１０３内部のメモリに格納する。減算器１０６は、カレントＭＢの符号化対象画像の画素値から、動き補償部１０３内部のメモリに格納された参照画像の画素値を減算して、減算結果を直交変換部１０８に出力する。
【００３１】
減算器１０６から出力された減算結果は、直交変換部１０８により直交変換され、さらに量子化部１０９により量子化される。ここで量子化部１０９が量子化する際の量子化係数は、符号量制御部１１２により決定される。量子化部１０９より出力される量子化後の係数は、可変長符号化部１１０及び逆量子化部１１３に入力される。
【００３２】
可変長符号化部１１０に入力された前記量子化後の係数は、可変長符号化された後、符号化データバッファ１１１に格納される。データバッファ１１１に入力された符号化信号の符号量は符号量制御部１１２に入力され、それを基に符号量制御部１１２は、目標とする符号量になるように次の符号化対象マクロブロックの量子化係数を決定する。
【００３３】
一方、逆量子化部１１３に入力された前記量子化後の係数は、量子化部１０９が量子化する際に使用した量子化係数で逆量子化され、さらに逆直交変換部１１４により逆直交変換された後、加算器１０７に入力される。また、動き補償部１０３内部のメモリに格納された密探索で求めた動きベクトルに対応する参照画像も加算器１０７に入力される。
【００３４】
加算器１０７は、動き補償部１０３より入力される参照画像と逆直交変換部１１４より入力される値とを加算して、現在のフレームとは異なるフレームの符号化時に使用する参照画像（ローカルデコード画像）を生成する。生成されたローカルデコード画像は、そのまま図２に示したようなカレントＭＢのデータと同様の配置でフレームメモリ１０５に格納される。また、生成されたローカルデコード画像は、画像縮小部１０４に入力されて水平方向に４分の１に縮小された後に、図３に示す配置でフレームメモリ１０５に格納される。
【００３５】
以上、第１の実施形態によれば、列アドレス方向についてデータの連続読み出しが可能な同期型メモリで構成されたフレームメモリ１０５に、粗探索用及び密探索用それぞれの参照画像の画像信号を同一の行アドレス内の列アドレス方向に連続的に格納する。これにより、動き補償を用いた動画像信号の予測符号化を行う場合に、広い探索領域で探索しながらもフレームメモリ１０５からデータを読み出すためのメモリアクセスを効率良く行い動きベクトルを探索することができる。したがって、装置の動作周波数を低減することができ、かつ消費電力を低減することができる。
【００３６】
特に、本実施形態では、フレームメモリ１０５の１つのアドレスに４画素の画素値を格納できるため、参照画像を水平方向に４分の１に縮小した場合には、１つのアドレスに格納可能な縮小画像の情報は、縮小前の画像に換算すると１６画素分の情報となる。これは、本実施形態における画像信号の符号化単位である１マクロブロック（カレントＭＢ）の水平画素数の１６と同一であるため、縮小後の水平４画素を垂直方向に読み込むことでマクロブロックのデータを揃えることが可能になる。縮小参照画像のデータは、図３に示したように、縮小後の水平４画素の画素値を垂直方向に、フレームメモリ１０５の列アドレス方向に連続して格納しているため、効率良く縮小参照画像のデータを読み込むことができる。
【００３７】
なお、本実施形態では、粗探索の探索精度を縮小前の画像に換算して４画素単位としているが、８画素単位や１６画素単位など他の探索精度でも、本発明が適用できる。また、本実施形態では、フレームメモリ１０５の１つのアドレスに格納可能な画素値を４画素としているが、８画素格納可能なフレームメモリなど、他のフレームメモリ構成でも本発明が適用できる。
【００３８】
（第２の実施形態）
次に、第２の実施形態について説明する。
以下に説明する本発明の第２の実施形態は、フレームメモリ１０５への画像データの格納方法が上述した第１の実施形態とは異なる。なお、第２の実施形態におけるその他の要素は、上述した第１の実施形態と同様であるので説明を省略する。例えば、第２の実施形態による画像処理装置の一例である動画像符号化装置は、上述した第１の実施形態における図１に示した動画像符号化装置と同様に構成される。
【００３９】
第２の実施形態においては、縮小していない画像データのフレームメモリ１０５への格納方法が異なる。上述した第１の実施形態では、マクロブロック単位（図２（ａ）参照）で画像データをフレームメモリ１０５の列アドレス方向に連続して格納していた。それに対して、第２の実施の形態では、図４に示すように水平方向に連続した２つのマクロブロック単位で画像データをフレームメモリ１０５の列アドレス方向に連続して格納する。
【００４０】
なお、第２の実施形態において、粗探索用の参照画像として用いられる縮小参照画像のデータのフレームメモリ１０５への格納方法は第１の実施形態と同じであり、上述した図３に示す配置でフレームメモリ１０５に格納される。
【００４１】
図４を参照して、第２の実施形態における縮小していない画像信号のフレームメモリ１０５への格納方法について説明する。
図４（ａ）に示す画像の座標で水平方向に連続した２つのカレントＭＢの水平方向３２画素及び垂直方向１６画素分の各画素の画素値が、図４（ｂ）に示すようにフレームメモリ１０５の同一の行アドレス（Ｒｏｗ）に配置される。また、図４（ａ）において塗りつぶした画素（Ｃｏｌ０の４画素）のように、画像において水平方向に連続する４画素の画素値が、フレームメモリ１０５の１つのアドレスにまとめて格納される。したがって、図４（ａ）に示すカレントＭＢの画像信号は、Ｃｏｌ０，Ｃｏｌ１，Ｃｏｌ２，…のような順番で、図４（ｂ）に示すように同一の行アドレス内の列アドレス（Ｃｏｌ）方向に連続的に格納される。なお、図４（ｂ）に示すように、水平方向に連続した２つのカレントＭＢにおける右端の画素値（例えばＣｏｌ７）の次には、１ライン下の左端の画素値（例えばＣｏｌ８）が格納される。
【００４２】
第２の実施形態によれば、上述した第１の実施形態と同様の効果が得られる。さらに、動き探索部１０２や動き補償部１０３が読み込む参照画像の読み込み開始座標（開始アドレス）が符号化単位であるマクロブロック端ではない場合でも、行アドレスの変更が比較的少なくフレームメモリ１０５へのアクセスが可能となる。
【００４３】
なお、上述した第１及び第２の実施形態では、縮小していない画像のデータをフレームメモリ１０５の列アドレス方向に連続して格納する場合に、右端の画素値の次には１ライン下の左端の画素値を格納している。しかしながら、本発明はこれに限定されず、縮小していない画像のデータがフレームメモリ１０５における同一の行アドレス内の列アドレス方向に連続して格納されれば良い。
また、上述した第１及び第２の実施形態では、符号化対象マクロブロック（カレントＭＢ）の大きさを水平１６画素、垂直１６画素としているが、符号化対象マクロブロックの大きさは任意である。
【００４４】
（本発明の他の実施形態）
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置又はシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、その装置又はシステムのコンピュータ（ＣＰＵ又はＭＰＵ）に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、前記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体は本発明を構成する。また、そのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）又は他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【００４５】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施形態における動画像符号化装置の構成例を示すブロック図である。
【図２】第１の実施形態における画像信号のフレームメモリへの格納方法を説明するための図である。
【図３】第１の実施形態における縮小画像信号のフレームメモリへの格納方法を説明するための図である。
【図４】第２の実施形態における画像信号のフレームメモリへの格納方法を説明するための図である。
【符号の説明】
【００４７】
１０１  映像入力部
１０２  動き探索部
１０３  動き補償部
１０４  画像縮小部
１０５  フレームメモリ
１０６  減算器
１０８  直交変換部
１０９  量子化部
１１０  可変長符号化部
【図１】
0004590335.tif 000002
【図２】
0004590335.tif 000003
【図３】
0004590335.tif 000004
【図４】
0004590335.tif 000005