(57)【要約】【課題】入力画像の特性や、ユーザの指定に応じて、符号化に行う前処理の処理内容や処理サイクル数を柔軟に変更するような動画像符号化装置を提供することにある。【解決手段】符号化前に画像処理を行う符号化前処理部（１０１）と、画像符号化処理部（１０５）と、符号化した画像データをビットストリームに変換する可変長符号化処理部（１１０）とはそれぞれ独立に起動し、並列に動作させるものであり、さらに符号化前処理部における複数の処理部はそれぞれ独立に起動し、並列に動作する。それぞれの処理部はレジスタ（８００）の設定情報に応じて処理のオン／オフや処理の軽重が制御される。さらにそれぞれの処理部の間で情報が送受信されることで処理部間での継続処理が可能とされる。【選択図】図１
2009284208.tif 000002
【特許請求の範囲】
【請求項１】
動き予測処理を用いて画像データの符号化処理を行なう符号化処理部、前記符号化処理部による符号化処理の前処理を行なう符号化前処理部、及び制御部を有し、
前記制御部は、符号化前処理部による処理内容と処理量を指定する制御データを受取り、受取った制御データに基づいて前記符号化前処理部及び符号化処理部を制御し、前記符号化前処理部による処理を不要とするときには符号化処理部を符号化前処理部から独立して動作させ、前記符号化前処理部による処理を必要とするときには前記符号化前処理部による処理結果を前記符号化処理部に渡して継続処理させる、動画像符号化装置。
【請求項２】
前記制御部は、前記前記制御データが書換え可能に設定される制御レジスタを有する、請求項1記載の動画像符号化装置。
【請求項３】
前記制御レジスタにピクチャ単位で前記制御データを設定可能なプロセッサを更に有する、請求項２記載の動画像符号化装置。
【請求項４】
前記符号化前処理部は、前処理として顔検出処理を行う、請求項２記載の動画像符号化装置。
【請求項５】
前記符号化前処理部は、前処理として画像符号化処理部が行う動き探索よりも粗い探索を行う、請求項２記載の動画像符号化装置。
【請求項６】
前記符号化前処理部は、前処理として、画像符号化処理部が行う動き探索と同じ探索処理を、ピクチャ内で画像符号化処理部と分担して行う、請求項２記載の動画像符号化装置。
【請求項７】
符号化前処理部は、並列動作する複数のプロセッサユニットを有する、請求項２に記載の動画像符号化装置。
【請求項８】
前記制御部は、前記画像符号化処理部による処理結果に応じて、前記符号化前処理部で行われる処理内容と処理量を変更する、請求項２記載の動画像符号化装置。
【請求項９】
前記制御レジスタは、前記処理量の変更の可否を決定する制御データが書換え可能に設定される記憶領域を有する、請求項８記載の動画像符号化装置。
【請求項１０】
制御回路は、符号化前処理部で行われる処理内容と処理量の組み合わせが、予め禁止されたものであるとき、前記プロセッサにエラー信号を出力する、請求項３記載の動画像符号化装置。
【請求項１１】
撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部とを有する動画像記録装置であって、
前記システム制御部は、前記動画像符号化装置の符号化前処理部で処理可能な処理の選択肢を前記表示部に表示し、その選択肢の中で操作部により選択された処理に応じて前記動画像符号化装置に前記制御データを設定する、動画像記録装置。
【請求項１２】
撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部と、バッテリ電源部とを有する動画像記録装置であって、
前記システム制御部は、バッテリ電源部のバッテリ残量に応じて、前記動画像符号化装置に、符号化前処理部による処理の動作周波数を低くし、又は前記符号化前処理部の動作を停止させる制御データを設定する、動画像記録装置。
【請求項１３】
撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部と、加速度センサとを有する動画像記録装置であって、
前記システム制御部は、前記加速度センサの出力によって得られる動き量が大きいときに、前記動画像符号化装置に、動き予測処理の処理時間を増やすようにする制御データを設定する、動画像記録装置。
【請求項１４】
チューナ部と、前記チューナ部で受信した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、前記チューナ部で受信した番組情報を管理する番組情報管理部と、を有する動画像記録装置であって、
前記番組情報管理部は、受信された番組情報に基づいて、前記動画像符号化装置に、符号化前処理部による処理内容と処理量を決定するための制御データを設定する、動画像記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像信号を符号化する動画像符号化装置に関し、ビデオカメラおよびＤＶＤレコーダ等の動画像記録装置に適用して有効な技術に関する。
【背景技術】
【０００２】
動画像を符号化する技術としては、例えば非特許文献１が知られている。当該文献にも示されるように、一般的な動画像符号化では、時間方向での画像ピクチャ間の相関性や、ピクチャ内の画素間の相関性などを利用して冗長な情報量を削減し、可変長符号化を行うことにより、情報量の圧縮が実現される。画像符号化方式としてはＨ．２６４等がある。また、特許文献１には、画像符号化だけでなくＧ．７７１やＧ．７２８等の音声符号化処理復号も含めた画像音声信号処理についてそれらの勧告に則った処理機能と勧告外の処理機能をディジタル信号処理回路に割当て、主制御回路からの指示に従って、勧告外処理機能による処理量を増減させたり、勧告に則った処理機能と勧告外の処理機能の双方を実行するようにして、信号処理回路の信号処理能力を無駄にせずに、画像品質の向上更には消費電力の低減を可能とする画像音声処理装置について記載される。
【０００３】
【非特許文献１】Sullivan, G. J.;  Wiegand, T.; “Video Compression - from concepts to the H.264/AVC standard.”IEEE proc vol.93, No.1, pp.18-31 (January 2005).
【特許文献１】特開平９−２９８７２７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記文献に記載された技術においては、Ｈ．２６４のような勧告に則った処理機能と勧告外の処理機能との間の関係については処理の軽重若しくは処理速度の相違について考慮されているが、画像処理の性質、処理すべき画像の性質等を考慮して、二つの処理機能を有機的に、また、可変化能に関係付けることについて考慮されていないことが明らかにされた。本発明者は、画像の符号化処理と符号化前処理とを規定し、両方の機能を可変化能に且つ有機的に関連付けて、高画質、処理速度向上又は低消費電力の何れも必要に応じて実現することについて検討した。
【０００５】
本発明の目的は、ユーザの指定に応じて、符号化前処理の処理内容や処理量を柔軟に変更することができる動画像符号化装置、更には動画像記録装置を提供することにある。
【０００６】
本発明の別の目的は、入力画像の特性に応じて、符号化前処理の処理内容や処理量を柔軟に変更することができる動画像記録装置、更には動画像記録装置を提供することにある。
【０００７】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００８】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【０００９】
すなわち、動画像符号化装置は、動き予測処理を用いて画像データの符号化処理を行なう符号化処理部と前記符号化処理部による符号化処理の前処理を行なう符号化前処理部を有する。この動画像符号化装置は、符号化前処理部による処理内容と処理量がピクチャ単位で外部から指定され、指定された条件にしたがって符号化前処理部及び符号化処理部を制御し、符号化前処理部による処理が行なわれないとき符号化処理部は符号化前処理部から独立して動作し、符号化前処理部による処理が行なわれるとき符号化処理部は符号化前処理部による処理データを受取って継続する処理を行なう。
【発明の効果】
【００１０】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００１１】
すなわち、符号化前処理部による処理内容と処理量がピクチャ単位で外部から指定可能にされるから、ユーザの指定に応じて、また、入力画像の特性に応じて、符号化前処理の処理内容や処理量を柔軟に変更することが可能になる。
【発明を実施するための最良の形態】
【００１２】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００１３】
〔１〕動画像符号化装置は、動き予測処理を用いて画像データの符号化処理を行なう符号化処理部(１０５)、前記符号化処理部による符号化処理の前処理を行なう符号化前処理部(１０１)、及び制御部(１００)を有する。前記制御部は、符号化前処理部による処理内容と処理量を指定する制御データを受取り、受取った制御データに基づいて前記符号化前処理部及び符号化処理部を制御し、前記符号化前処理部による処理を不要とするときには前記符号化処理部を符号化前処理部から独立して動作させ、符号化前処理部による処理を必要とするときには前記符号化前処理部による処理結果を前記符号化処理部に渡して継続処理させる。
【００１４】
符号化前処理部による処理内容と処理量を指定可能にされるから、ユーザの指定に応じて、また、入力画像の特性に応じて、符号化前処理の処理内容や処理量を柔軟に変更することが可能になる。例えば人物の顔部分などのように主観的に着目されやすい箇所が符号化処理に入る前に既知であれば、この箇所への符号量を増やすことにより、符号化画像の主観画質の向上が期待でき、一方、動きが激しく選手の顔が小さいようなスポーツシーン中で、人物の顔の部分を検出しても、画質向上は期待できないため、そのような前処理は結果的に無駄に電力を消費してしまうことになり、低消費電力の要求には反する結果となる。このように、符号化処理の前に行う符号化前処理については、入力画像の性質やユーザのニーズなどによって、柔軟に変更できることが望ましく、上記手段はそれを満足させることができる。
【００１５】
〔２〕項１の動画像符号化装置において前記制御部は、例えば前記制御データが書換え可能に設定される制御レジスタ(８００)を有する。制御レジスタに対する設定変更という簡単な処理によって符号化前処理を変更可能になる。
【００１６】
〔３〕項２の動画像符号化装置は、例えば前記制御レジスタにピクチャ単位で前記制御データを設定可能なプロセッサを更に有する。
【００１７】
〔４〕項２の動画像符号化装置において、前記符号化前処理部は、前処理として例えば顔検出処理を行う。符号化画像の主観画質である顔の画質を向上させる選択が可能になる。
【００１８】
〔５〕項２の動画像符号化装置において、前記符号化前処理部は、前処理として画像符号化処理部が行う動き探索よりも粗い探索を行う（図１３、図１４）。これによれば、符号化処理前に予め入力画像を解析してピクチャ間の簡単な相関を知ることができ、これを符号化処理に活用することにより符号化画像の画質向上に寄与することができる。
【００１９】
〔６〕項２の動画像符号化装置において、前記符号化前処理部は、前処理として、例えば画像符号化処理部が行う動き探索と同じ探索処理を、ピクチャ内で画像符号化処理部と分担して行う（図１１、図１２）。少なくとも符号化前処理部と符号化処理部とよる処理のパイプライン化が可能になり、処理速度の向上に資することができる。
【００２０】
〔７〕項２の動画像符号化装置において、符号化前処理部は、例えば並列動作する複数のプロセッサユニット（１７０１，１７０２）を有する（図１７）。符号化前処理部において処理のパイプライン化が可能になり、処理速度の向上に資することができる。
【００２１】
〔８〕項２の動画像符号化装置において、前記制御部は、例えば前記画像符号化処理部による処理結果に応じて、前記符号化前処理部で行われる処理内容と処理量を変更する（図１８）。例えばピクチャに対する顔領域の占める割合を前記画像符号化処理部による処理結果からは把握し、その割合が所定の閾値以上であれば顔検出を行い、前記閾値よりも小さければ顔検出を非活性又は処理量を低減させる選択が可能になる。
【００２２】
〔９〕項８の動画像符号化装置において、前記制御レジスタは、前記処理量の変更の可否を決定する制御データが書換え可能に設定される記憶領域を有する。
【００２３】
〔１０〕項３の動画像符号化装置において、制御回路は、符号化前処理部で行われる処理内容と処理量の組み合わせが、予め禁止されたものであるとき、前記プロセッサにエラー信号を出力する。処理不能や設定の矛盾を外部で確認可能になる。
【００２４】
〔１１〕動画像記録装置（３）は、撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部とを有する。前記システム制御部は、前記動画像符号化装置の符号化前処理部で処理可能な処理の選択肢を前記表示部に表示し、その選択肢の中で操作部により選択された処理に応じて前記動画像符号化装置に前記制御データを設定する。
【００２５】
〔１２〕動画像記録装置（４）は、撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部と、バッテリ電源部とを有する。前記システム制御部は、バッテリ電源部のバッテリ残量に応じて、前記動画像符号化装置に、符号化前処理部による処理の動作周波数を低くし、又は前記符号化前処理部の動作を停止させる制御データを設定する。
【００２６】
〔１３〕動画像記録装置（５）は、撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部と、加速度センサとを有する。前記システム制御部は、前記加速度センサの出力によって得られる動き量が大きいときに、前記動画像符号化装置に、動き予測処理の処理時間を増やすようにする制御データを設定する。
【００２７】
〔１４〕動画像記録装置（６）は、チューナ部と、前記チューナ部で受信した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、前記チューナ部で受信した番組情報を管理する番組情報管理部と、を有する。前記番組情報管理部は、受信された番組情報に基づいて、前記動画像符号化装置に、符号化前処理部による処理内容と処理量を決定するための制御データを設定する。
【００２８】
２．実施の形態の詳細
実施の形態について更に詳述する。以下、本発明を実施するための形態を図面に基づいて詳細に説明する。なお、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。
《実施形態１》
図１には本発明の実施形態１に係る動画像符号化装置が示され、これは符号化前処理の処理内容をピクチャ単位で切り替えることが可能にされるものである。
【００２９】
図１に示される動画像符号化装置１は、外部メモリインタフェース１１５を介して外部メモリ１１６が接続されたバス１１３にプロセッサ１１４と動画像符号化器１０が接続されて構成される。動画像符号化器１０は、符号化器全体を制御する全体制御部１００、符号化前処理を行う符号化前処理部１０１、符号化のための画像処理を行う画像符号化処理部１０５、符号化画像処理結果を最終的なストリーム形式に符号化する可変長符号化処理部１１０、個々の処理部によってワーキングメモリとして共有される内部メモリ１１９、個々の処理部が内部メモリ１１９を利用するためのインタフェースを提供する内部メモリインタフェース１１８、及び個々の処理部が信号をやり取りするためのバスインタフェース１１２から成る。外部メモリ１１６は入出力画像や参照画像などを格納するために利用される。プロセッサ１１４は、動画像符号化器１をピクチャ単位で起動、停止する制御等を行う。
【００３０】
ここで動画像符号化装置１が起動される流れについて簡単に述べる。プロセッサ１１４は、符号化対象の入力画像と参照画像、そして符号化結果のストリーム等を格納するためのメモリ領域を外部メモリ１１６に確保し、これらメモリ領域のアドレスを全体制御部１００が備える図示しないレジスタに設定する。また、プロセッサ１１４は、符号化前処理部１０１、画像符号化処理部１０５、及び可変長符号化処理部１１０の起動時の設定情報を、同様にレジスタに設定する。本明細書では、これら設定情報のうち、符号化前処理部１０１の設定情報の一部について詳細を後述する。その他の設定情報については本発明には直接係わりがないため省略する。
【００３１】
以上のようにして、符号化前処理部１０１、画像符号化処理部１０５、可変長符号化処理部１１０の起動に必要な情報を全体制御部１００内のレジスタ８００等に設定し、その後全体制御部１００に起動信号を送る。全体制御部１００は、ピクチャ単位で符号化前処理部１０１、画像符号化処理部１０５、及び可変長符号化処理部１１０を起動する。この起動の際には起動信号の他、全体制御部１００内のレジスタ設定に基づいた、図示しない動作設定に関する信号が送られる。符号化前処理部１０１、画像符号化処理部１０５、及び可変長符号化処理部１１０は、それぞれ自身に対する上記の起動信号と動作設定に関わる信号とを受け取ることにより起動される。
【００３２】
画像符号化処理部１０５は、内部に、量子化パラメータ制御部１１７、動き予測処理部１０６、直交変換処理部１０７、画面内予測処理部１０８、量子化処理部１０９を有し、これらを制御する機能を有する。
【００３３】
画像符号化処理部１０５では、１ピクチャの画面全体をマクロブロックと呼ばれる１６×１６画素単位に分割し、個々の処理部がパイプライン的にマクロブロックの符号化処理を行うことで、１ピクチャの符号化処理を実現している。
【００３４】
画像符号化処理部１０５は、マクロブロック毎に上記の各モジュールを起動する。起動に際しては起動信号と動作設定に関わる信号を各モジュールに対して送信する。
【００３５】
量子化パラメータ制御部１１７は、量子化処理部１０９における量子化処理の際の、量子化ステップ幅に対応する量子化パラメータの値をマクロブロック毎に決定する。制御の一例としては、ブロック内の画素の分散が大きければ量子化ステップ幅を大きくし、分散が小さければ量子化ステップ幅を小さくするような処理がある。これは、ブロック内の画素の分散が大きいほど、画像の劣化が目立ちにくいという人間の視覚特性を利用し、量子化ステップ幅を大きくすることで画質を落とすことで符号量を削減するものである。逆に分散が小さいときには画質の劣化が目立ちやすいので量子化ステップ幅を小さくし、画質を高くする。本発明では、量子化パラメータ制御部１１７は、後述するように人物の顔の部分など、視覚的に着目されやすい箇所とそうでない箇所での、量子化ステップ幅の制御を行う。
【００３６】
動き予測処理部１０６は、ピクチャ間の相関性を利用した予測処理であり、符号化対象のマクロブロックと最も類似していると予測されるマクロブロックを、参照ピクチャ内で探索し、得られたマクロブロックを動き予測画像とする。そして動き予測画像（マクロブロック）の相対位置情報（動きベクトル）と、符号化画像と予測画像との差分画像を生成する。このような動き予測のアルゴリズムについては一例を後述するが、本発明は動き探索アルゴリズムに依存するものではない。
【００３７】
画面内予測処理部１０８は、ピクチャ内での画素の相関性を利用した予測処理である。動画像符号化方式によってどのような予測をするかが定められている。例えばITU-T H.264では9種類の予測モードが規格により定められており、符号化器では予測モードを自由に選択し、差分画像を得る。画面内予測処理部１０８では、画面内予測で得られた予測結果と、動き予測処理部１０６で得られた予測結果とから、どちらかの予測方式を選択する。一般的にはマクロブロックの差分画像の画素値の絶対値和と動きベクトルの情報量、量子化パラメータ値などを考慮して、符号化効率が高いと推測される方の予測方式を選択する。
【００３８】
直交変換処理部１０７は、画面内予測処理部１０８で選択された、動き予測処理か画面内予測処理かのいずれか、選択された予測方式で生成された差分画像を直交変換する。
【００３９】
量子化処理部１０９は、直交変換処理部１０７によって直交変換されたDCT係数を、前述した量子化パラメータ制御部１１７で決定された量子化ステップ幅により量子化する。
【００４０】
図６に、画像符号化処理部１０５における１ピクチャの符号化処理のマクロブロック単位での処理の流れを示す。同図に示すように、画像符号化処理部１０５では、マクロブロック単位で上記の量子化パラメータ制御処理、動き予測処理、画面内予測処理、直交変換処理、および量子化処理がパイプラインで実行されている。
【００４１】
符号化前処理部１０１は、符号化前の処理を行うモジュール群である。本発明の実施形態１による動画像符号化装置１では、符号化前処理として、ノイズ除去処理、顔検出処理、動き予測処理を拡張する処理を備えており、それぞれノイズ除去処理部１０２、顔検出処理部１０３、拡張動き予測部１０４にて行われる。
【００４２】
符号化前処理部１０１は、ノイズ除去処理部１０２、顔検出処理部１０３、拡張動き予測部１０４をピクチャ単位で起動するための制御機能を有する。すなわち、符号化前処理部１０１は全体制御部１００から受けた動作設定信号に基づいて、各々の処理部に対する動作設定信号を生成し、起動信号とともに動作設定信号を送信することによって、各処理部を起動する。
【００４３】
ノイズ除去処理部１０２は、入力画像の雑音を除去するためのフィルタリング処理を行う。一般的に、入力画像に雑音信号があると、画像符号化処理における画面内や画面間の予測処理がうまく行われず、符号化効率が低減することが知られている。このためノイズ除去処理により符号化効率の改善や主観画質の改善が期待できる。ノイズを除去するフィルタとして高周波ノイズを除去するローパスフィルタが一般的である。ただし単純なローパスフィルタではエッジ部分の尖鋭さが失われてしまう懸念があるため、既知のエッジ保存型の高度なフィルタなどが使用されるべきである。本実施形態１の動画像符号化装置におけるノイズ除去処理部１０２では、フィルタ係数やそのタップ数が可変であることを前提とするが、具体的な値に限定されるものではない。フィルタのタップ数を増減することにより、ノイズ除去処理による演算量を増減することが可能である。
【００４４】
次に図２を参照して、顔検出処理部１０３の処理を説明する。図２の（A）を参照して、一般的な顔検出処理の概要を説明する。顔検出処理部１０３では、顔テンプレートを用いて、後述するテンプレートマッチングを画像上の全ての位置に対して行い、全てのテンプレートでマッチングした場合に顔領域と判定し、それ以外であれば非顔領域と判定する。
【００４５】
テンプレートマッチングの例としては、既知のハールと呼ばれる画素の波で定義される顔テンプレートを用いたマッチングアルゴリズムが挙げられる。具体的には、図２の(A)に示されるような、同一サイズであり、黒と白の矩形領域で定義されるようなテンプレート群の個々のテンプレートにおいて、以下の（１）〜（３）の計算によりハール特徴量を算出する。
（１）白の矩形領域内の画素値の総和を算出し、
（２）黒の矩形領域内の画素値の総和を算出し、
（３）（１）−（２）の値を閾値Ｔと比較し、Ｔ未満であれば値α、Ｔ以上であれば値βを特徴量とする。ただし、Ｔ、α、βは矩形領域毎に異なる。
【００４６】
以上の計算によって得られるハール特徴量が、テンプレート固有の閾値以上であれば顔領域と判定する。なお上記の顔検出処理は、様々な大きさの顔の検出に対応するため、個々のテンプレートを、検出を行う顔領域のサイズに応じて拡大、もしくは縮小してからテンプレートマッチングを行う。
【００４７】
上記のハール特徴量の計算には、矩形領域内の画素値の総和の計算が繰り返し行われる。この矩形領域内の画素値の総和の計算は、入力画像から直接求めることは可能であるが、図２の(B)、(C)、(D)で示すように、積分画像を生成することにより、計算量を削減する手法が広く用いられている。
【００４８】
ある３×３の矩形領域における入力画素値が図２の(B)のように与えられたとすると、図２の(C)に示すような積分画像を生成し、内部メモリ１１９に格納する。積分画像とは、各画素が入力画像の左上矩形内の画素値の総和を持っている画像である。つまり、入力画像の画素値をI（x,y）、積分画像の画素値をS(x,y)とすると以下の式が成り立つ。
【００４９】
【数１】
2009284208.tif 000003
【００５０】
図２の(D)では、上記の積分画像を用いて、ある矩形領域における画素値の総和を求める方法を示している。図２の(D)における矩形領域Dの画素値の総和は、積分画像における画素値P4−P2−P3＋P1により求められる。このように、積分画像を予め求めておくことで、ハール特徴量の計算量を削減できる。また顔検出処理範囲を制限することで、積分画像を計算する範囲を減らせるため、積分画像生成処理の処理量を削減できる。
【００５１】
図４の（A）には顔検出処理部１０３の構成が例示される。積分画像生成部４０１では、上で述べたような積分画像の生成と、テンプレートの拡大・縮小処理などを行う。テンプレートマッチング部４０２では、拡大もしくは縮小されたテンプレート画像を用いて、上述のテンプレートマッチングを行い、顔領域を検出する。このテンプレートの拡大・縮小を行うサイズのバリエーションは、演算速度や消費電力などのリソース制約を考慮して定められるべきである。また、テンプレートマッチングにおける探索の仕方も同様である。
【００５２】
この探索の仕方のバリエーションとしては、例えば１画素ずつ細かく探索するか、もしくは一定間隔で粗く探索して顔の位置の大まかに当たりをつけた後に細かい間隔で探索する、などが挙げられる。前者の探索方法では、顔検出の精度は高くなるが、演算量が多くなる。後者の探索方法では、演算量を削減できる反面、顔検出精度は低くなる。このように、探索アルゴリズムについても同様にリソースの制約を考慮して決められるべきである。
【００５３】
図４の（Ａ）では、テンプレートのバリエーションや探索アルゴリズムの設定は、テンプレートマッチング部４０２のみで実時間で顔検出を行える範囲を想定している。
【００５４】
テンプレートマッチング部４０２の処理量を調整するためには、上で述べたように、テンプレートの拡大・縮小サイズのバリエーションを制限することや、テンプレートマッチング処理の探索処理を粗く行うなどにより可能である。本発明では、探索アルゴリズムやテンプレートのサイズのバリエーションは特に限定されるものではない。
【００５５】
次に、図３と図４の（Ｂ）を参照して、拡張動き予測部１０４の詳細を説明する。拡張動き予測部１０４は、画像符号化処理部１０５における動き予測処理部１０６と連携して、動画像符号化時のピクチャ間の動き予測処理を行う。
【００５６】
図３には動き予測処理の一例が示される。同図では、予め決められた動き探索範囲に対して、参照画像において、４画素単位での粗い動き探索から開始し、次に２画素単位、その次に１画素単位で動き探索を行っていく処理を示している。個々の画素位置では、参照画面上の１６×１６画素と、符号化対象のマクロブロック内の画素との絶対差分を求め、その総和（SAD）を計算する。図３では、符号化対象のマクロブロックの位置に対し、同じ位置である（0,0）と、そこから周囲の４画素間隔離れた８点の、全部で９点（図３では円形の印）においてSADを求める。そしてSADが最小となる１点（図３では、(4,-4)）を起点として同様の探索を行う（ただし図３では、２回目以降の4画素間隔の探索は省略）。次に2画素間隔離れた周囲８点（図３では四角形の印）で同様にSADを求め、SADが最小となる１点（図３では(2,-4)）を起点として同様の探索を行う（ただし図３では、２回目以降の4画素間隔の探索は省略）。次に(2,-4)を起点として、１画素間隔で同様に周囲の８点（図３では三角形の印）のSADを計算し、SADが最小となる位置を起点として、同様の探索を行う（ただし図３では、２回目以降の１画素間隔の探索は省略）。図３では、以上の探索により最終的に(3,-5)の位置が、整数画素精度の動き予測結果として得られる。
【００５７】
さらに小数画素精度で予測を行う場合には、符号化規格で定められる小数画素補間式に従って小数画素精度の補間画像を(3,-5)の周辺で生成する。符号化規格ＩＴＵ−Ｔ  Ｈ．２６４では、1/2、1/4画素単位での補間画像を生成するフィルタ演算式が定められており、この式に従って小数画素精度の補間画像を生成することで、さらに探索を続け、1/2、1/4画素精度での動き探索を行い、1/4画素精度の動きベクトルを得ることができる。
【００５８】
この動きベクトルの情報は外部メモリに格納される。そして符号化対象のマクロブロック位置における１６×１６画素と、動きベクトルが示す参照画像位置における１６×１６画素との差分画像は、画像符号化処理部１０５における、直交変換処理部１０７、量子化処理部１０９においてそれぞれ直交変換、量子化された結果が、外部メモリに格納される。
【００５９】
図４の（Ｂ）には拡張動き予測部１０４の構成が例示される。拡張動き予測部１０４は、拡張動き予測処理部１（４０３）と拡張動き予測処理部２（４０４）とを内部に有する。これら２つの内部の拡張動き予測処理部では、１ピクチャ内の全てのマクロブロックの動き予測処理を分担して行う。処理の分担のさせ方については後述する。これら２つの内部の拡張動き予測処理部は別回路であるので、並列処理させることが可能である。
【００６０】
このように、画像符号化処理部１０５内の動き予測処理部１０６のみならず、拡張動き予測部１０４においても動き予測処理を行うことにより、従来の動き予測処理よりも、１マクロブロック当たりの演算量を増やすことができる。例えば、より広範囲で動き探索を行うことができ、動きが大きいシーンでの画質向上を図ることができる。
【００６１】
次に、図５と図６を参照して、本実施形態１における符号化前処理の処理内容、画像符号化処理の処理内容と、これら各処理の時間的流れについて説明する。
【００６２】
図５には符号化前処理、画像符号化処理、及び可変長符号化処理のピクチャレベルでの処理の時間的流れが示される。
【００６３】
前述のように、全体制御部１００は、符号化前処理部１０１、画像符号化処理部１０５、及び可変長符号化処理部１１０を、ピクチャ単位での起動を制御する。また符号化前処理部１０１は、ピクチャ単位で内部の複数の符号化前処理の起動を制御する。
【００６４】
図５は、符号化前処理としては符号化前処理１と符号化前処理２の２つの処理を行う場合に、それぞれを処理する処理部が２つある場合の例を示している。すなわち、符号化前処理１を行う処理部が２つあり、それぞれ符号化前処理１−１と符号化前処理１−２とが並列に動作する。同様に符号化前処理２に対しても、処理部が２つあり、それぞれ符号化前処理１−１と符号化前処理１−２として並列に動作する例を示している。例えば、図４の（Ｂ）で述べた顔検出処理部１０３における積分画像生成部４０１とテンプレートマッチング部４０２とが、図５における符号化前処理１−１と符号化前処理１−２に相当する。
【００６５】
全体制御部１００は、図５で示すように、符号化前処理と画像符号化処理と可変長符号化処理とを、それぞれが異なるピクチャをパイプライン処理させるように起動させることで、実時間での符号化処理を実現している。符号化前処理１でも同様に、符号化前処理１−１と符号化前処理１−２とでは、それぞれが異なるピクチャを逐次的に処理することにより並列処理を実現している。符号化前処理２でも同様である。
【００６６】
図６には画像符号化処理部１０５における各処理部における処理内容の時間的流れが例示される。同図に示すように、画像符号化処理部１０５は、それぞれの処理部が異なるマクロブロックを逐次的に処理するように並列で起動され、１ピクチャ分のマクロブロックを処理する。画像符号化処理部１０５は、１ピクチャ分のマクロブロックの動きベクトルや、DCT係数などの符号化情報を、前述のように外部メモリに格納する。
【００６７】
図５において、可変長符号化処理部１１０は、この外部メモリに格納された符号化情報を読み込み、１ピクチャ分の可変長符号化を行って符号化ストリームを生成する。この外部メモリに格納される情報の形式については、本発明には直接関わりはないため、説明を省略する。
【００６８】
次に、図７から図１０を参照して、符号化前処理としてノイズ除去処理と顔検出処理を実行している最中に、ある時刻Ｔ６から符号化前処理としてノイズ除去処理と拡張動き予測処理に変更する処理の流れを説明する。
【００６９】
図７は、符号化前処理としてノイズ除去処理と顔検出処理を実行している状態でのピクチャ単位での処理の流れを示す図である。ノイズ除去処理部１０２と顔検出処理１０３のピクチャ単位での起動は符号化前処理部１０１により行われる。また顔検出処理部１０３は、内部の積分画像生成部４０１とテンプレートマッチング部４０２のピクチャ単位での起動を制御する。
【００７０】
時刻Ｔ０にて、ノイズ除去処理部１０２と、積分画像生成部４０１は、入力画像（Ｐｉｃ＃０）に対してそれぞれ既に述べたフィルタリング処理と、積分画像を生成する処理とを行う。
【００７１】
時刻Ｔ１では、テンプレートマッチング部４０２は、入力画像（Ｐｉｃ＃０）に対して、既に述べたテンプレートマッチング処理を行い、顔領域を検出する。検出された入力画像（Ｐｉｃ＃０）の顔領域情報は、画像符号化処理部１０５内の量子化パラメータ制御部１１７へ送られる。また時刻Ｔ１では、ノイズ除去処理部１０２と、積分画像生成部４０１は、入力画像（Ｐｉｃ＃１）に対して、それぞれ同様にフィルタリング処理と、積分画像を求める処理とを行う。
【００７２】
時刻Ｔ２では、画像符号化処理部１０５は、入力画像（Ｐｉｃ＃０）に対して既に述べた画像符号化処理を行う。ここで、量子化パラメータ制御部１１７は、前述の入力画像（Ｐｉｃ＃０）の顔領域情報を参照し、顔領域を含むマクロブロックにおける量子化パラメータ値を、予め定められた分だけ下げる。これにより視覚的に着目されやすい顔領域の画質を高める効果がある。また時刻Ｔ２では、ノイズ除去処理部１０２と、積分画像生成部４０１は、入力画像（Ｐｉｃ＃２）に対して既述の処理を行う。テンプレートマッチング部４０２は、入力画像（Ｐｉｃ＃１）に対して、既述のテンプレートマッチング処理を行う。
【００７３】
時刻Ｔ３では、可変長符号化処理部１１１が、画像符号化処理部１０５による入力画像（Ｐｉｃ＃０）に対する符号化情報を参照して可変長符号化を行い、入力画像（Ｐｉｃ＃０）の符号化ストリームを出力する。また時刻Ｔ３では、ノイズ除去処理部１０２と、積分画像生成部４０１は、入力画像（Ｐｉｃ＃３）に対して既述の処理を行う。テンプレートマッチング部４０２は、入力画像（Ｐｉｃ＃２）に対して、既述のテンプレートマッチング処理を行う。画像符号化処理部１０５は、入力画像（Ｐｉｃ＃１）に対して既述の画像符号化処理を行う。
【００７４】
以上に述べたように、図７に示す状態では、符号化前処理としてノイズ除去処理と顔検出処理とが、画像符号化処理と可変長符号化処理と並行して動作している。
【００７５】
ここで、時刻Ｔ６からは符号化前処理として顔検出処理を、拡張動き予測処理に変更するように指定されたケースを考える。この指定方法としては、後述するようにユーザの指定により符号化前処理が手動で変更される場合や、入力画像の特徴に応じて自動的に変更される場合などが挙げられる。ただし上記の手動変更、自動変更とも、全体制御部１００におけるレジスタ設定値がプロセッサ１１４により変更されることにより実現される。すなわち、時刻T6からは符号化前処理として顔検出を行わずに、拡張動予測処理を行うように全体制御部１００のレジスタが設定される。そして符号化前処理部１０１が、拡張動き予測部１０４を起動する。レジスタ設定については後述する。
【００７６】
拡張動き予測処理は、拡張動き予測部１０４にて行われる。拡張動き予測部１０４は、図１１に示すように、拡張動き予測処理部１（４０３）と拡張動き予測処理部２（４０４）とで構成され、それぞれ拡張動き予測処理１と拡張動き予測処理２を並列に行う。これらの処理については後述する。
【００７７】
図７に示すように、時刻Ｔ５では、可変長符号化処理部１１０が入力画像（Ｐｉｃ＃２）に対して可変長符号化を行い、符号化ストリームを出力する。画像符号化処理部１０５は、入力画像（Ｐｉｃ＃３）に対して既述の画像符号化処理を行う。テンプレートマッチング部４０２は、入力画像（Ｐｉｃ＃４）に対して、既述のテンプレートマッチング処理を行う。ノイズ除去処理部１０２と、積分画像生成部４０１は、入力画像（Ｐｉｃ＃５）に対して既述の処理を行う。
【００７８】
次に時刻Ｔ６では、図９に示すように、ノイズ除去処理部１０２は入力画像（Ｐｉｃ＃６）に対して既述の処理を行う。積分画像生成部４０１は処理を停止し、動き予測処理部１（４０３）が入力画像（Ｐｉｃ＃６）の処理を行う。またテンプレートマッチング部４０２は、入力画像（Ｐｉｃ＃５）に対して既述の処理を行う。同様に可変長符号化処理部１１１と画像符号化処理部１０５はそれぞれ、入力画像（Ｐｉｃ＃４）と入力画像（Ｐｉｃ＃３）に対して既述の画像符号化処理を行う。
【００７９】
時刻Ｔ７では、ノイズ除去処理部１０２と動き予測処理部１（４０３）は入力画像（Ｐｉｃ＃７）の処理を行う。そしてテンプレートマッチング部４０２は処理を停止し、動き予測処理部２（４０４）が入力画像（Ｐｉｃ＃６）の処理を行う。同様に可変長符号化処理部１１１と画像符号化処理部１０５はそれぞれ、入力画像（Ｐｉｃ＃５）と入力画像（Ｐｉｃ＃４）に対して既述の画像符号化処理を行う。
【００８０】
時刻Ｔ７以降は、図１０に示すように符号化前処理であるノイズ除去処理、動き予測処理１、および動き予測処理２と、画像符号化処理と可変長符号化処理とがピクチャ単位のパイプラインで実行される。このようにして、入力画像（Ｐｉｃ＃６）以降の入力画像に対しては、符号化前処理が顔検出処理から拡張動き予測処理に変更されて符号化処理が行われる。
【００８１】
次に図８を参照して、本発明の実施形態１の動画像符号化装置において、ピクチャ単位で符号化前処理を切り替える設定の例を示す。
【００８２】
図８では、本発明の実施形態１の動画像符号化装置が公開している動作設定レジスタ８００を示している。動作設定レジスタ８００は例えば、全体制御部１００に配置され、プロセッサ１１４により書換え可能にアクセスされる。動作設定レジスタ８００は３２ビット幅であり、符号化前処理の内容を指定するビットフィールドであるNF、FA、MVを有する。
【００８３】
ビットフィールドNFにはノイズ除去処理を行うときは１、行わないときは０が設定される。ビットフィールドFAには、顔検出処理を行うときは１、行わないときには０が設定される。ビットフィールドMVには、拡張動き予測処理を行うときには１が、行わないときには０が設定される。
【００８４】
この動作設定レジスタ８００にはプロセッサ１１４（図１参照）が設定を行う。全体制御部１００（図１参照）は、符号化前処理部と画像符号化処理部に対し、この動作設定レジスタ８００で与えられた動作設定情報を送信する。この動作設定レジスタ８００は、ピクチャ毎に設定を変更することが可能であり、符号化前処理部１０１は、図７から図１０で述べたような流れにより、処理の切替えを行う。なお後述するように、画像符号化処理部１０５も同様に、動作設定レジスタ８００の情報を受け、動作の切替えを行う。全体制御部１００は、動作設定レジスタ８００に設定された制御データに基づいて前記符号化前処理部１０１及び符号化処理部１０５を制御し、前記符号化前処理部１０１による処理を不要とするときには符号化処理部１０５を符号化前処理部から独立して動作させ、前記符号化前処理部１０１による処理を必要とするときには前記符号化前処理部１０１による処理結果を前記符号化処理部１０５に渡して継続処理させたりする制御を行なう。
【００８５】
なお、全体制御部１００は、ビットフィールドの組み合わせの確認を行い、もしも禁止される組み合わせであれば何らかの形式によりエラーを出力することが望ましい。この禁止される組み合わせは、消費電力や実行するハードウェアの実行タイミングなどを考慮して動画像符号化装置内で決定されてもよい。あるいはプロセッサ１１４上で、禁止する組み合わせが指定されないかどうかチェックするようなプログラムが実行されてもよい。
【００８６】
次に、拡張動き予測部１０４で行われる処理の例を図１１と図１２を参照して説明する。
【００８７】
図１１と図１２では、拡張動き予測部１０４における拡張動き予測処理部１（４０３）、拡張動き予測処理部２（４０４）と、画像符号化処理部１０５における動き予測処理部１０６との３つの動き予測処理部が、一つのピクチャ内のマクロブロックを分担し、一つのマクロブロックに対して同じ動き予測処理を行うような例を示している。すなわち、図１１に示すように、一つのピクチャ内のマクロブロック数がｋ＋１（ＭＢ＃０〜ＭＢ＃ｋ）とすると、これらのマクロブロックは、３つの部に分割されて処理が行なわれる。すなわち、拡張動き予測処理１では、最初のマクロブロック（＃０〜＃ｉ）までを行い、その次のピクチャ時刻に行われる拡張動き予測処理２では、次のマクロブロック（＃ｉ＋１〜＃ｊ）までを行い、その次のピクチャ時刻に行われる動き予測処理（画像符号化処理内）では、残りのマクロブロック（＃ｊ〜＃ｋ）の動き予測処理を行う。
【００８８】
ただし後述するように、画像符号化処理部１０５内の動き予測処理部１０６では、マクロブロック（＃ｊ〜＃ｋ）の処理を行うが、図６中のパイプライン処理で、後段の画面内予測処理へは、そのパイプラインで処理されるマクロブロックの動きベクトルや予測モード情報を送る必要がある。
【００８９】
このように一つのピクチャ内のマクロブロックを、複数の動き予測処理部で分けてパイプライン処理することにより、一つのマクロブロックに対して行う動き予測処理のサイクル数を増やしながら、且つ実時間での符号化を実現することができる。すなわち動き予測処理のサイクル数を増やすことができるため、より広範囲な動き探索処理や、より高度な演算を有した動き探索処理を実現することができる。
【００９０】
図１２を参照して、上述した拡張動き予測部１０４における拡張動き予測処理部１、動き予測処理部２と、画像符号化処理部１０５における動き予測処理部１０６とで行われる処理の詳細を説明する。
【００９１】
図１２では本発明の実施形態１による動画像符号化装置のうち、動き予測処理に関係するブロックのみに着目してそれを示している。すなわち、動き予測処理部１（４０３）、動き予測処理部２（４０４）と、動き予測処理部１０６とは、バス１１３を介して接続されている。またバスには内部メモリ１１９が、内部メモリへ他のブロックがデータの読み書きを行うための内部メモリインタフェース１１８を介して接続されており、各々の予測処理部（４０３、４０４、１０６）から内部メモリ１１９へのデータの読み書きが可能である。
【００９２】
各動き予測処理部（４０３、４０４、１０６）は、参照画像取得部、原画像取得部、動き探索処理部、及びＭＶ取得／書き込み部を有する。
【００９３】
各々の参照画像取得部は内部メモリ１１９内の参照画像ワークメモリ１２０１から参照画像の画素値データを、探索位置を変える毎に取得する。参照画像取得部は、参照画像ワークメモリ１２０１に、少なくとも探索範囲よりも広い範囲の参照画像（の一部の）画素値データを予め外部メモリ１１６から読み込む。また参照画像取得部では小数画素単位の参照画像の生成処理も行う。
【００９４】
各々の原画像取得部は内部メモリ１１９内の原画像ワークメモリ１２０２から、符号化対象のマクロブロック内の原画像の画素値データを取得する。取得する原画像データの範囲は動き探索処理アルゴリズムに依存するが、本発明には関わりはない。
【００９５】
各々のＭＶ取得／書き込み部は内部メモリ１１９内のＭＶワークメモリ１２０３から、既に符号化済みのマクロブロックの動きベクトル情報を取得する。この動きベクトル情報としては、マクロブロックそれぞれの動きベクトルの予測モード（ｍｏｄｅ）、予測モードに応じた個数の動きベクトルそれぞれの水平成分（ＭＶ＿Ｈ）と垂直成分（ＭＶ＿Ｖ）、などを含む。
【００９６】
ここで予測モードとは、マクロブロック内の１６×１６画素を、どのようなブロック単位で動き予測処理を行っているかを示す情報である。例えばＩＴＵ−Ｔ  Ｈ．２６４では、１６×１６画素、１６×８画素、８×１６画素、８×８画素、８×４画素、４×８画素、４×４画素のブロック単位で動きベクトルを割り当てることができる。一般的にブロック単位が細かい程、動き予測の精度は高まるが、動きベクトル情報のオーバヘッドが増える。このため符号化器では、予測モードを決定する際には予測誤差とオーバヘッドとを考慮して動き探索処理を行う必要がある。
【００９７】
各々の動き探索処理部では符号化対象であるマクロブロック内の１６×１６画素と、最も類似していると推測される参照画素位置を小数画素精度単位まで探索する。動き探索処理の例としては、図３を参照して述べたように、整数画素単位の粗探索を行う。次に、その整数画素位置周辺で、小数画素精度の補間参照画像を生成し、同様に小数画素精度で最も原画像と類似していると推測される参照画像上の小数画素位置を探索する。
【００９８】
さらに動き探索処理部は、このような探索を複数の予測モード（１６×８画素、８×１６画素、８×８画素等）で行い、前述のように予測誤差とオーバヘッドを考慮して最終的な予測モードと動きベクトルを決定する。上述の動き探索アルゴリズムや予測モードを決定するアルゴリズムなどは既知の様々な手法が選択しえるが、本発明に直接関わりはない。
【００９９】
ＭＶ取得／書き込み部は、動き探索処理部にて決定された予測モードと動きベクトル情報をＭＶワークメモリ１２０３に書き込む。また、ＭＶ取得／書き込み部は、ＭＶワークメモリ１２０３に書き込んだ予測モードと動きベクトル情報を、適切なタイミング（例えば動き探索処理部の処理終了時など）により外部メモリに書き込む。
【０１００】
動き予測処理部１で、上述の動き探索処理がマクロブロック（ＭＢ＃０〜ＭＢ＃ｉ）（図１１参照）まで行われると、後段の動き予測処理部２では次のマクロブロック（ＭＢ＃ｉ＋１〜ＭＢ＃ｊ）に対しても同様の処理を行う。このとき、動き予測処理部１から動き予測処理部２に対して、継続情報１２０５が送られる。
【０１０１】
この継続情報１２０５には、少なくとも処理済みのマクロブロックの位置が含まれる。また拡張動き予測処理部１でマクロブロック処理が終了していない場合には、必要に応じて各処理部がどの処理までを行ったかを示す情報が含まれていても良い。すなわち、例えば動き探索処理部が探索の途中でサイクル数の上限により処理が打ち切られた場合には、その探索位置情報などが継続情報１２０５に含まれていても良い。
【０１０２】
このように拡張動き予測処理部１から継続情報１２０５を後段の拡張動き予測処理部２へ送ることにより、動き予測処理部間で跨るような処理を継続して行うことができる。同様に、拡張動き予測処理部２と、その後段の動き予測処理部１０６の間でも、継続情報１２０６とが送られる。
【０１０３】
なお継続情報１２０５、１２０６を受け取る拡張動き予測処理部２（４０４）と動き予測処理部１０６は、それぞれに対する継続情報が存在しない場合には、先頭のマクロブロックから処理を行うことが望ましい。この理由としては、本発明では符号化前処理がピクチャ単位で変更されることを想定するため、個々の処理部は継続情報がある場合には前段の処理を継続し、継続情報がない場合には独立した処理を実行できることが望ましいためである。
【０１０４】
継続情報があるかないかの情報は、拡張動き予測処理部２であれば、拡張動き予測部１０４によって起動される際に設定情報として与えられることが望ましい。また動き予測処理であれば画像符号化処理部１０５によって起動される際に設定情報として与えられることが望ましい。
【０１０５】
これらの継続情報の有無の設定情報は、全体制御部１００内の動作設定レジスタ８００の設定値から得られる。すなわち、図８で述べた動作設定レジスタでのビットフィールドMVを参照することで、拡張動き予測処理が行われているか行われていないかを判定することにより、動き予測処理部１０６への継続情報の有無を判定できる。同様に、後述するように、動作設定レジスタでのビットフィールドMVMを参照することで、拡張動き予測処理の処理量を判定することにより、拡張動き予測処理部２（４０４）への継続情報の有無を判定できる。
【０１０６】
拡張動き予測処理部２（４０４）が、上述の動き探索処理をマクロブロック（ＭＢ＃ｉ＋１〜ＭＢ＃ｊ）（図１１（Ｂ）参照）まで行うと、後段の動き予測処理部１０６では次のマクロブロック（ＭＢ＃ｉ＋１〜ＭＢ＃ｊ）に対しても同様の処理を行う。
【０１０７】
動き予測処理部１０６は、画像符号化処理部１０５内のパイプライン処理の一部を行っているため、継続情報がある場合、動き予測処理部１０６が予測処理を行っているマクロブロックとパイプラインで処理されているマクロブロックとは異なることに注意する必要がある。すなわち動き予測処理部１０６が後段の画面内予測処理部１０７に対して送る予測モード情報と動きベクトル情報とは、動き予測処理を行っているマクロブロックの情報ではなく、パイプラインで処理されるマクロブロックの情報でなければならない。
【０１０８】
例えば図６における時刻t１では、継続情報がある場合、動き予測処理部１０６はＭＢ＃ｉ＋１に対して動き予測処理を行っている（図６は継続情報がない場合の流れを示している）が、後段の画面内予測処理部１０７に対して送る予測モード情報と動きベクトル情報とは、ＭＢ＃０である必要がある。動き予測処理部１０６は適切なタイミングで、外部メモリから上記の情報を内部メモリ１１９内のMVワークメモリ１２０３に予め格納しておき、このMVワークメモリ１２０３から、パイプライン処理の時刻に応じたマクロブロックの予測モード情報と動きベクトル情報とを送る必要がある。ただし継続情報がない場合は、図６における時刻ｔ１では、動き予測処理部１０６は、ＭＢ＃０に対して動き予測処理を行うので、ＭＢ＃０の予測モード情報と動きベクトルとをそのまま画面内予測処理部１０７へ送ればよい。
【０１０９】
以上で述べたように、動き予測処理部１（４０３）、動き予測処理部２（４０４）、及び動き予測処理部１０６間で、同様の動き予測処理を継続させ、さらに各部をパイプライン処理することにより、個々のマクロブロックに対する動き予測処理の処理サイクル数を増やし、かつ実時間での動き予測処理が可能となる。これにより、動き予測の性能が向上し、動画像符号化装置の符号化映像の画質が向上する効果がある。
【０１１０】
以上に述べたように、本発明の実施形態１による動画像符号化装置では、ユーザの指定に応じて、ピクチャ単位で符号化前処理の内容を自由に切り替えることができるため、符号化画像の画質向上の効果がある。
【０１１１】
また本発明の実施形態１による動画像符号化装置では、符号化前処理部から、その後段の画像符号化処理部へ継続情報を送信することにより、これらの処理部の間で処理を継続することができる。これにより、従来よりも画像符号化の処理に対する演算量を増やすことができるため、符号化画像の画質向上の効果がある。
【０１１２】
《実施形態２》
次に図１３と図１４を参照して、本発明の実施形態２に係る動画像符号化装置の詳細を説明する。本発明の実施形態２に係る動画像符号化装置は、実施形態１の動画像符号化装置の拡張動き予測部１０４において、入力画像と参照画像の解像度を縮小して動き予測処理を行うものである。
【０１１３】
図１３で示すようには、本発明の実施形態２による動画像符号化装置は、拡張動き予測処理１０４内に、解像度縮小処理部１３０１と初期探索位置決定部１３０２を有する。図１１で述べた拡張動き予測処理とは異なり、図１３で示す拡張動き予測部１０４内の２つの処理部は、互いに異なる処理を並列実行する。図１３では、拡張動き予測処理部１０４は、１画素単位よりも大きい間隔での粗い動き探索を実行する例を示している。この粗い探索を行うため、解像度縮小処理部１３０１では、入力画像全体に対して解像度を縮小した縮小画像を生成する。本発明では、この画像縮小比や、縮小処理のアルゴリズムは限定されないが、実時間処理を行うために、画像縮小処理は１ピクチャの処理時間以内で完了できる必要がある。
【０１１４】
次に後段の初期探索位置決定部１３０２では、広範囲の動き量を検出するため、解像度縮小処理部１３０１にて作成された縮小画像に対して動き探索処理を行い、後段の動き予測処理を開始する初期探索位置を決定する。本発明では、この初期探索位置決定部１３０２が縮小画像に対して行う動き探索の範囲や動き探索アルゴリズムを限定するものではないが、実時間処理を行うために、１ピクチャの処理時間以内で完了できる処理量である必要がある。
【０１１５】
次に後段の動き予測処理部１０６では、初期探索位置決定部１３０２で決定された初期探索位置から、入力画像と参照画像とを用いて図３で説明したように、整数画素精度、及び小数画素単位の動き予測処理を行う。
【０１１６】
以上のように、図１３では拡張動き予測部１０４内の解像度縮小処理部１３０１、初期探索位置決定部１３０２と、画像符号化処理部１０５内の動き予測処理部１０６とが、パイプライン的にそれぞれ異なる入力画像を処理することで、広範囲の動き探索処理を実時間で実現することが可能である。
【０１１７】
図１４では本発明の実施形態１による動画像符号化装置のうち、図１３で述べた動き予測処理に関係するブロックのみを記している。すなわち、解像度縮小処理部（１３０１）、初期探索位置決定部（１３０２）と、動き予測処理部１０６とは、バス１１３を介して接続されている。またバスには内部メモリ１１９が、内部メモリへ他のブロックがデータの読み書きを行うための内部メモリインタフェース１１８を介して接続されており、各々の予測処理部（１３０１、１３０２、１０６）から内部メモリ１１９へのデータの読み書きが可能である。
【０１１８】
解像度縮小処理部１３０１は、参照画像取得部、原画像取得部、及び画像縮小処理部を有する。解像度縮小処理部１３０１では、参照画像取得部と原画像取得部は、それぞれ内部メモリ１１９内の参照画像ワークメモリと原画像ワークメモリとから、参照画像の画素値データと原画像の画素値データとを取得する。各々のワークメモリには、画像縮小処理を行う範囲に応じて、外部メモリ１１６から読み込んでおく。
【０１１９】
画像縮小処理部は、上述のように取得した原画像と参照画像の画素値データに対し、解像度縮小の演算を行い、外部メモリ１１６へ書き込む。外部メモリ１１６には、計算された縮小画像を書き込む領域と、後段の初期探索位置決定処理において読み込まれる、1ピクチャ時刻前の縮小画像の、少なくとも２つのピクチャ分の縮小画像の格納領域を確保しておく必要がある。
【０１２０】
初期探索位置決定部１３０２は、縮小参照画像取得部、縮小原画像取得部、及び初期探索処理部を有する。縮小参照画像取得部と縮小原画像取得部は、それぞれ内部メモリ１１９内の縮小参照画像ワークメモリと縮小原画像ワークメモリとから、参照画像の画素値データと原画像の画素値データとを取得する。各々のワークメモリには、初期探索処理を行う範囲に応じて、外部メモリ１１６から予め、初期探索処理に必要な範囲の画素値データが読み込んでおく。
【０１２１】
初期探索処理部１３０２は、上記で取得した縮小原画像と縮小参照画像とを用いて粗探索を行う。本発明ではこの粗探索処理の探索範囲やアルゴリズムは限定しないが、実時間処理を行うために、１ピクチャの処理時間内で終了する必要がある。決定された初期探索位置は、外部メモリ１１６へ書き込む。外部メモリ１１６には、決定された初期探索位置を書き込む領域と、後段の動き予測処理において読み込まれる、１ピクチャ時刻前の初期探索位置との、少なくとも２つのピクチャ分の初期探索位置の格納領域を確保しておく必要がある。
【０１２２】
動き予測処理部１０６は、図１２と同様にMV取得／書き込み部、参照画像取得部、現画像取得部、及び動き探索処理部を有する。MV取得／書き込み部、参照画像取得部、及び現画像取得部の動作は図１２と同様であり、動き探索処理部が処理するマクロブロック位置に応じてそれぞれ、既に動き予測処理を行った周囲の動きベクトル情報と、参照画像の画素値データ、及び原画像の画素値データを取得する。
【０１２３】
ここで既に動き予測処理を行った周囲の動きベクトル情報は、動き探索処理の際に、探索位置に相当する動きベクトルが、周囲の動きベクトルとどれだけ類似しているかを考慮するために用いることができる。すなわち、動きベクトル情報を符号化する際には、周囲の動きベクトルから推定される動きベクトルとの差分を可変長符号化するため、周囲の動きベクトルとに類似している程、動きベクトルの可変長符号化に要する符号量を削減し、高画質化の効果が期待できる。
【０１２４】
動き探索処理部は、内部メモリ１１９内の初期探索位置ワークメモリ１４０３内から、探索処理を行うマクロブロック位置における初期探索位置情報を取得し、この探索位置を始点として（例えば図３で述べたような）動き探索処理を行う。この際、上述のように、周囲の動きベクトルと類似しているかなどを考慮してもよい。初期探索位置ワークメモリ１４０３には、探索処理を行うマクロブロック位置に応じて、予め一定の数の初期探索位置情報を読み込んでおき、処理するマクロブロック位置に応じて適宜内容を更新する。
【０１２５】
動き探索処理部は、もしも符号化前処理で拡張動き予測処理を行わないなどの理由により、初期探索位置情報が存在しない場合には、所定のルールにより決定される初期位置（例えば動きベクトルの予測値など）から探索を行う。この、初期探索位置情報が存在するかしないかの判定は、図８で述べた動作設定レジスタでのビットフィールドMVを参照することで、拡張動き予測処理が行われているか行われていないかを判定することにより実現できる。そしてこの初期探索位置情報の有無の判定結果が、動き予測処理部１０６の起動時に、全体制御部１００から設定情報として受け取る。そしてこの判定結果が動き予測処理部１０６から動き探索処理部へ送られることで、動き探索処理部は初期探索位置を切り替えることができる。
【０１２６】
以上に述べたように、本発明の実施形態２による動画像符号化装置では、拡張動き予測処理において、入力画像と参照画像の解像度縮小処理と、縮小された参照画像と入力画像を用いた探索処理により初期探索位置を決定し、この初期探索位置から動き予測処理を行う。これら解像度縮小処理、初期探索位置決定処理、動き予測処理をピクチャ単位でパイプライン処理することにより、広い探索範囲の動き予測を実時間で行うことができ、動きが大きいシーンを含むような入力画像に対しての符号化効率が向上し、画質が向上する効果がある。実施形態２の処理についてもその指示は動作設定レジスタ８００に対する設定値に従って全体制御部が行う。
【０１２７】
《実施形態３》
本発明の実施形態３に係る動画像符号化装置は、本発明の実施形態１の処理に加え、符号化前処理の処理量を調整することを可能とするものである。
【０１２８】
図１５には、符号化前処理として、ノイズ除去処理と顔検出処理、拡張動き予測処理の３つの処理が１つのピクチャの処理時間内で並列実行されるときの処理の時間的流れを示している。
【０１２９】
同図では、顔検出処理を１ピクチャ処理時間内に抑えるために、積分画像生成処理とテンプレートマッチング処理の処理時間を、それぞれ１ピクチャ処理時間の半分となるように処理量を軽減している。積分画像生成処理とテンプレートマッチング処理の処理時間を軽減するには、図２で既に説明したように、顔検出の領域を制限することや、テンプレートの拡大・縮小サイズの種類を制約する、あるいはテンプレートマッチングの探索の間隔を粗くする、といった方法により可能である。
【０１３０】
また同図では、拡張動き予測処理としては、拡張動き予測処理部１（４０３）のみが処理を行っている。すなわち１ピクチャ内のマクロブロックの動き予測処理を、拡張動き予測処理部１（４０３）と、画像符号化処理部１０５内の動き予測処理部１０６の２つの動き予測処理部で分担している。図１１や図１３など実施形態１で説明した例など、３つの動き予測処理部で１ピクチャ内の動き予測処理を分担する場合に比べると、一つのマクロブロックに対する動き予測処理の演算量を削減する必要がある。このためには、動き予測処理の探索範囲を削減する、より粗く探索する、などにより可能である。
【０１３１】
以上のように、図１５で示した例では、実施形態１と比較して、個々の顔検出処理や拡張動き予測処理の演算量を軽減したため個々の処理性能は劣るが、顔検出処理と拡張動き予測処理とを並列に実行できるという利点がある。これにより、入力画像が、人物の顔が大きく入り、且つ動きが大きいといったシーンでは、上記の両処理を行うことにより、画質の改善効果がある。
【０１３２】
図１６では、符号化前処理の内容の別の例を示している。同図では、符号化前処理として、ノイズ除去処理と顔検出処理、拡張動き予測処理の３つの処理が行われるが、ノイズ除去処理と顔検出処理とを、交互のピクチャで実行するような例を示している。これまでの説明において、ピクチャ単位で符号化前処理のONとOFFを切り替えることができることは既に述べているので、後述するように図１５と同様、図１６のような流れの処理は容易に実現できる。
【０１３３】
図１６では、ノイズ除去処理と顔検出処理とは、１ピクチャ毎に交互に実行されるため、図１５に比べて符号化結果の画質が劣る可能性はあるが、図１５に比べて符号化前処理における並列実行処理数が減るため、消費電力が低減できるという効果がある。画像の性質によっては、１ピクチャ毎にノイズ除去処理や顔検出処理を行っても、画質劣化の度合いはさほど大きくはない場合も多いと考えられる。このため、図１５に比べて画質の劣化を抑えながら、消費電力を低減する効果がある。
【０１３４】
図１５や図１６で述べた例において、符号化前処理の処理量や処理間隔を指定するには、実施形態１における図８で述べたような動作設定レジスタ８００により可能である。図８で示す動作設定レジスタ８００には、ビットフィールドNFM、FAM、MVMが指定可能である。
【０１３５】
ビットフィールドNFMでは、ノイズ除去処理の処理モードに、０か１の２種類のモードを指定できる。NFM＝０のときは、通常のノイズ除去演算を行う。NFM＝１のときは、演算量を半減したノイズ除去処理を行う。
【０１３６】
同様にビットフィールドFAMでは、顔検出処理の処理モードに、０か１の２種類のモードを指定できる。FAM＝０のときは、通常の顔検出処理を行う。FAM＝１のときは、演算量を半減した顔検出処理を行う。
【０１３７】
ビットフィールドMVMでは、拡張動き予測処理の処理モードに、０から２の3種類を指定できる。MVM＝０のときは、通常の拡張動き予測処理を毎ピクチャに対して行う。MVM＝１のときは、探索範囲を縮小した拡張動き予測処理を毎ピクチャに対して行う。MVM＝２のときは、粗く探索するような拡張動き予測処理を毎ピクチャに対して行う。
【０１３８】
実施形態１と同様、上記の動作設定レジスタへの設定ビットの書込みは、プロセッサ１１４によって行われる。図１５の処理を実現するには、プロセッサ１１４は、NF＝１、NFM＝０、FA＝１、FAM＝１、MV＝１、MVM＝１（又は２）を設定する。図１６の処理を実現するには、設定１（NF＝１、NFM＝０、FA＝０、MV＝１、MVM＝１（又は２））と、設定２（NF＝０、FA＝１、FAM＝１、MV＝１、MVM＝１（又は２））とをピクチャ単位で交互に設定すればよい。
【０１３９】
全体制御部１００（図１参照）は、符号化前処理部に対し、この動作設定レジスタ８００で与えられた動作設定情報を送信することにより、符号化前処理の切替えを行う。
【０１４０】
以上に述べたように、本発明の実施形態３による動画像符号化装置によれば、符号化前処理の処理量を調整することを可能とする。これにより実時間で行うことのできる符号化前処理の種類を増やすことができるため、符号化結果を高画質化できる効果がある。
【０１４１】
また本発明の実施形態３による動画像符号化装置によれば、符号化前処理の処理タイミングを調整することを可能とする。これにより、符号化前処理の種類を増やし、且つ並列度を下げることができるため、画質を維持しながら消費電力を低減する効果がある。
【０１４２】
《実施形態４》
図１７に本発明の実施形態４に係る動画像符号化装置２の構成が例示される。本発明の実施形態４に係る動画像符号化装置２において、動画像符号化器１１は、一つ以上のプロセッサユニットで構成される符号化前処理部１０１を有する。図１７では、符号化前処理部１０１は、符号化前処理プロセッサユニットA（１７０１）と符号化前処理プロセッサユニットB（１７０２）の２つのプロセッサユニットを有する。これ以外の構成は実施形態１と同様である。符号化前処理部１０１がプロセッサユニットにより行われることで、符号化前処理をプログラムにより実行させることが可能である。このため実施形態１に比べ、より柔軟に符号化前処理の処理内容や処理時間、処理タイミングを調整できる。
【０１４３】
さらにプログラムを追加することで、処理内容を次々に増やしていくことが可能である。すなわち符号化処理内容の種類が多い場合には、実施形態１の場合には、その処理専用のハードウェア回路を追加する必要があるため装置の回路面積が増大することが避けられないが、本発明の実施形態４によればプログラムを追加するだけで符号化処理を増やすことが可能である。
【０１４４】
《実施形態５》
本発明の実施形態５に係る動画像符号化装置は、毎ピクチャの符号化結果の情報に基づいて符号化前処理を変更できるものであり、構成は実施形態１によるものと同様である。
【０１４５】
図１８は、動画像符号化装置が１ピクチャの符号化を終えた後に、ピクチャ内の動きベクトルの平均値と、顔領域がピクチャ全体に占める割合(%)を出力する符号化結果取得レジスタ１８００である。
【０１４６】
プロセッサ１１４は、１ピクチャの画像符号化処理部１０５での1ピクチャ分の符号化処理が終了した時点で、全体制御部１００が提供する、符号化結果取得レジスタ１８００を参照する。そしてプロセッサ１１４は、顔領域がピクチャ全体に占める割合が、所定の閾値FTH1以上であれば通常の顔検出処理を行う、所定の閾値FTH2以下であれば顔検出処理を行わない、それ以外であれば処理量を半減した顔検出処理を行う、などの動作設定を、動作設定レジスタ８００に対して行う。これにより入力画像の顔領域の割合に応じて顔検出処理の処理量の調整を行うことができる。
【０１４７】
拡張動き予測処理の処理量調整についても同様である。すなわちプロセッサ１１４は、１ピクチャの画像符号化処理部１０５での1ピクチャ分の符号化処理が終了した時点で、符号化結果取得レジスタ１８００を参照し、１ピクチャの平均動きベクトル値を取得する。このベクトルの大きさが、所定のMTH1以上であれば通常の拡張動き予測処理を行う、所定の閾値MTH2以下であれば拡張動き予測処理を行わない、それ以外であれば探索範囲を半減して拡張動き予測処理を行う、などの動作設定を、動作設定レジスタ８００に対して行う。これにより入力画像の動き量の大きさに応じて動き予測処理の処理量を調整することができる。
【０１４８】
上記の例は、１ピクチャ毎に閾値判定を行っているが、過去のピクチャの平均動きベクトルの大きさや、顔領域の割合などの履歴を外部メモリ１１６に保持しておき、この履歴情報を元に次のピクチャの符号化前処理を調整してもよい。過去のピクチャの履歴をとることにより、過度に頻繁な調整処理が行われることを防止できる。
【０１４９】
また上記の例では、顔領域の割合と動きの大きさを独立に調整していたが、顔検出処理の処理量を削減したときには拡張動き予測処理の処理量を増やす、顔検出処理の処理量を増やししたときには拡張動き予測処理の処理量を減らす、など符号化前処理全体の処理量を考慮した制御を行っても良い。
【０１５０】
また上記の例では、プロセッサ１１４が符号化結果レジスタ１８００を参照して、次のピクチャの符号化前処理の調整を行っているが、上記のような閾値判定処理は、プロセッサ１１４ではなく、全体制御部１００にて自動的に行ってもよい。
【０１５１】
図８の動作設定レジスタ８００におけるビットフィールドATを１に設定することで、動画像符号化装置内の全体制御部１００が上記の閾値判定処理を行い、符号化前処理の動作設定レジスタ８００の設定を更新する。これにより、プロセッサ１１４からは毎ピクチャの符号化結果を参照せずとも、適切な符号化前処理が選択される。
【０１５２】
以上のように本発明の実施形態５による動画像符号化装置は、毎ピクチャの符号化結果の情報に基づいて符号化前処理を変更できる。これにより入力画像に応じた適切な符号化前処理を行うことができ、符号化画質の改善効果が期待できる。
【０１５３】
《実施形態６》
図１９には本発明の実施形態６に係る動画像記録装置３の構成が示される。本発明の実施形態６に係る動画像記録装置３は、利用者が操作部と表示部を介し、簡易に動画像符号化装置における符号化前処理を設定できるものである。
【０１５４】
図１９における撮像素子１９０１はCCDやCMOS等により実現され、図示しないレンズで結像された光学像を電気信号に変換する。カメラ信号処理部１９０２は、撮像素子１９０１から出力される信号から輝度信号と色差信号とを生成する。動画像符号化装置１９０３は、本発明の実施形態１による動画像符号化装置であり、１９０２からの輝度信号と色差信号とを入力とし、動画像符号化処理を行う。なお、１９０３は実施形態１のみならず、実施形態２、３，４、及び５の適用も可能である。多重部１９０４は、図示しないマイクと音声符号化装置により生成された音声符号化ストリームと、動画像符号化装置１９０３から出力される動画像符号化ストリームとを、既定の多重ファイル形式に変換する。記録再生部１９０５は、多重化１９０４により多重化された信号を記録装置１９０６に記録する。もしくは既に記録装置１９０６に記録された多重化ファイルを、音声と映像に分離し、分離された映像を表示部１９０９へ送る。もしくは記録再生部１９０５は、図示しない音声信号出力端子と図示しない映像信号出力端子とへ、分離した音声信号と映像信号とをそれぞれ出力する。操作部１９０７は、矢印やキーなどのボタン、若しくはタッチパネルなどを備え、ユーザの入力操作を電気信号に変換して、カメラ制御部１９０８へ送る。カメラ制御部１９０８は、操作部１９０７からの信号により、動画像記録装置の制御を行う。本明細書では、本発明に関する動画像符号化装置１９０３の制御のみについて後に述べ、その他の制御処理に関する記述は省略する。表示部１９０９は動画像記録装置の動作設定を行うためのメニュー画面やメッセージの表示や、既に記録された動画像の表示を行う装置である。本明細書では、動画像符号化装置１９０３の動作設定に関するメニュー画面やメッセージを表示する機能に関して後述する。
【０１５５】
図２０と図２１を参照して、本発明の実施形態６による動画像記録装置３の、動画像符号化装置１９０３における動作設定のインタフェースについて説明する。
【０１５６】
カメラ制御部１９０８は、動画像符号化装置１９０３の動作設定メニュー画面を、表示部１９０９に描画する。このメニュー画面の例を図２０に示している。図２０(a)ではとして、画質モードを「オートモード」、「スポーツモード」、「ポートレートモード」、「省電力モード」のいずれかに選択する画面の例を示している。「オートモード」では、カメラ制御部１９０８は、撮影する映像に応じて自動的に動画像符号化装置１９０３を自動的に切り替える。「スポーツモード」では、カメラ制御部１９０８は動きが大きいシーンの録画に適するように動画像符号化装置１９０３を設定する。「ポートレートモード」では、カメラ制御部１９０８は人物の録画に適するように動画像符号化装置１９０３を設定する。「省電力モード」では、カメラ制御部１９０８は動画像符号化装置１９０３における消費電力が少なくなるように、動画像符号化装置１９０３を設定する。
【０１５７】
図２１には各々の画質モードにおける、動画像符号化装置１９０３における動作設定レジスタ８００の設定の例を示している。ここで動画像符号化装置１９０３における動作設定レジスタ８００の設定は、本発明の実施形態１から５によれば外部のプロセッサ１１４により行われる。本発明の実施形態６では、カメラ制御部１９０８が、例えばソフトウェアＡＰＩなどにより、プロセッサ１１４を介して動作設定レジスタ８００の設定を行うことができるものとする。
【０１５８】
カメラ制御部１９０８は、図２１に示すような、各画質モードとそれに対応する動作設定レジスタ８００の設定値との組合わせのテーブルを保持しておき、このテーブルを参照することにより、ユーザが指定する画質モードに対応して動画像符号化装置１９０３の動作を設定する。
【０１５９】
図２１の例では、「オートモード」では動作設定レジスタ８００におけるビットフィールドＡＴを1に設定することで、図８で述べたように、毎ピクチャの符号化結果に応じて、符号化前処理が変更される。これにより入力画像に応じた適切な符号化前処理が、自動的に選択される。
【０１６０】
「スポーツモード」では、ビットフィールドＮＦとＭＶを1に設定し、さらにビットフィールドＮＦＭとＭＶＭとをそれぞれ0に設定している。これにより、符号化前処理ではノイズ除去処理と、拡張動き予測処理とが行われる。このような設定により、動き予測処理の予測精度が向上するため、動きが大きいシーンにおける録画画像の品質の向上が期待できる。
【０１６１】
「ポートレートモード」では、ビットフィールドＮＦとＦＡを1に設定し、さらにビットフィールドＮＦＭとＦＡＭとをそれぞれ0に設定している。これにより、符号化前処理ではノイズ除去処理と、顔検出処理とが行われる。このような設定により、人物の顔領域での画質向上が期待できる。
【０１６２】
「省電力モード」では、ビットフィールドＮＦ、ＦＡ、ＭＶを全て0に設定している。これにより、符号化前処理が行われないため、録画時の消費電力を低減できる。
【０１６３】
上記の「オートモード」、「スポーツモード」、「ポートレートモード」、「省電力モード」は、カメラ制御部１９０８において図２１のテーブルのように動作設定レジスタ８００に設定する値を予め決定しておき、複数の画質モードとしてユーザへ選択させている。このように予め典型的な動作設定の組合わせを決めておき、画質モードとしてユーザに提示することにより、ユーザは動画像符号化装置１９０３の内部動作を意識することなく、撮影対象に応じた設定を行うことが可能である。
【０１６４】
一方で、動画像符号部１９０３の内部動作をより詳細に設定したいユーザに対しては手動設定により、ノイズ除去処理、顔検出処理、動き予測処理、それぞれの機能の強弱やON/OFFを自在に設定できることが望ましい。図２０の(b)〜(e)にこれらの例を示す。例えばカメラ制御部１９０８は、表示部１９０９上に図２０の(b)のようなメニューにより手動設定を選択する手段を提供する。そしてカメラ制御部１９０８は、手動設定メニュー上で、ノイズ除去処理の強弱とON/OFF、顔検出処理の強弱とON/OFF、動き予測処理の強弱（図２０の例では動き予測処理は必ずONと仮定している）の設定をユーザが選択できるような選択画面（それぞれ図２０の(c)、(d)、及び(e)）を表示部１９０９上で提示する。
【０１６５】
これらの個々の選択肢に対する、動作設定レジスタ８００の設定値の例を図２１のテーブルに示す。同図で示すように、ノイズ除去処理のON/OFFはビットフィールドNFにより設定される。NFが1（ノイズ除去処理がON）のときの処理の強弱は、ビットフィールドNFMにより設定する。同様に、顔検出処理のON/OFFはビットフィールドFAにより設定される。FAが1（顔検出処理がON）のときの、同処理の強弱は、ビットフィールドFAMにより設定する。同様に、動き検出処理の強弱はビットフィールドMVとMVAにより設定される。
【０１６６】
ここで、動画像処理符号化装置１９０３のハードウェア構成や処理時間の制約上、禁止されるビットフィールドの組み合わせが存在する場合がある。例えば、実施形態１で述べた例では、処理のパイプライン構成上、２ピクチャ時間内で符号化前処理を行うため、顔検出処理と拡張動き予測処理との両方の処理を行うことはできないと仮定している。図２１では、顔検出処理が「強」のときには、MV=0とし、動き予測処理を「弱」(すなわち拡張動き予測処理をOFF)とすることを必須としている。同様に、動き予測処理を「強」とするときには、FA=0として顔検出処理を行わないことを必須としている。
【０１６７】
ただし図２１では、顔検出処理を「弱」、動き予測処理を「中」とする組み合わせは許可している。この組合わせは、本発明の実施形態３の説明において、図１５や図１６で示した例で述べたように、顔検出処理と拡張動き予測処理の処理量を軽減することで、両方の処理を符号化前処理ステージで２ピクチャ時間内に処理することを可能としている。
【０１６８】
上述のような禁止された組合わせの設定（図２１の例では、顔検出処理「強」と動き予測処理「強」）が選択された場合には、カメラ制御部１９０８は、表示部１９０９上に、禁止された設定であることを示すメッセージを提示することが望ましい。すなわち図２０の(e)のように、顔検出処理が「強」に設定された状態で、動き予測処理を「強」に設定しようとすると、図２０の(f)のように、禁止された設定であることを示すメッセージを表示する。
【０１６９】
上述のような禁止された組合わせの設定がユーザから行われた場合には、許可された設定に変更してユーザに提示できることも望ましい。例えば図２０の(e)の選択リストでは、上から順に優先順位が高いと想定する。すなわち顔検出処理が「強」が動き予測処理の選択肢よりも優先されるものとする。このような場合に、動き予測処理を「強」に変更する場合には、図２０の(g)のように動き予測処理を顔検出処理よりも優先順位を高くするように変更するような、図示しない設定を可能とすることが望ましい。このように、顔検出処理を「強」とし、これよりも優先度が高い動き予測処理「強」に変更すると、図２０の(h)に示すように顔検出処理を「OFF」に自動的に変更する。
【０１７０】
このように、禁止された可能な組合わせがユーザから設定されたときに、優先度の低い設定項目の値を変更し、可能な組合わせの設定に変更することにより、ユーザは可能な設定の組合わせを理解せずとも、優先したい項目の処理を指定できる。
【０１７１】
以上に述べたように、本発明の実施形態６による動画像記録装置では、動画像符号化処理部における符号化前処理に関する設定を、代表的な動作設定の組合わせを表示部を介してユーザに提示し、操作部を介してユーザが設定を選択することにより可能とする。これにより、複雑な符号化前処理の設定を、ユーザが処理の詳細を知る必要なく、簡易に行うことが可能である。
【０１７２】
《実施形態７》
図２２には本発明の実施形態７に係る動画像記録装置４の構成が示される。この動画像記録装置４は、バッテリ残量に応じて動画像符号化装置の符号化前処理の処理時間や処理タイミングを変更することで消費電力を低減しようとするものである。
【０１７３】
図２２において１９０１から１９０９までは、本発明の実施形態６と同様であるため、説明を省略する。実施形態７による動画像記録装置４では、実施形態６による構成に加え、バッテリ２２０１とバッテリ残量ゲージ２２０２とを備える。バッテリ残量ゲージ２２０１は、バッテリ２２０１の電圧を計測する既知の電気回路を有し、計測される電圧値は定期的にカメラ制御部１９０８に送られる。
【０１７４】
カメラ制御部１９０８は、バッテリ残量ゲージ２２０１から取得したバッテリ２２０１の電圧値が、ある閾値を下回った際には、以降のピクチャでは、動画像符号化装置１９０３の符号化前処理を、消費電力が少なくなるように設定する。
【０１７５】
具体的には、動作設定レジスタ８００により、符号化前処理であるノイズ除去処理、顔検出処理、拡張動き予測処理のON/OFFを設定するビットフィールドであるNF、FA、MVを全て0とする。これにより、符号化前処理が行われないため、動画像符号化装置１９０３における消費電力が低減され、バッテリの持続時間を長くする効果がある。
【０１７６】
ただし、上述のように符号化前処理を全てOFFにすると、録画画質が急激に劣化する可能性がある。このため、前述のバッテリ電圧の閾値を複数設定し、段階的に符号化前処理を一つずつOFFにすることや、動作設定レジスタ８００のビットフィールドNFM、FAM、MVMの設定により、個々の符号化前処理の処理量を減らす、などを行ってもよい。
【０１７７】
以上で述べたように、本発明の実施形態７による動画像記録装置では、バッテリ残量に応じて動画像符号化装置の符号化前処理の処理量を調整することができるため、動画像符号化装置の消費電力を低減し、バッテリの持続時間を長くすることができる。
【０１７８】
《実施形態８》
図２３には本発明の実施形態８に係る動画像記録装置５の構成が例示される。本発明の実施形態８による動画像記録装置は、動画像記録装置の動きに応じて動画像符号化装置の符号化前処理における動き予測処理の処理量を変更するものである。
【０１７９】
図２３において、１９０１から１９０９までは、本発明の実施形態６と同様であるため、説明を省略する。実施形態８による動画像記録装置では、実施形態６による構成に加え、角速度検出素子２３０１と角速度信号処理部２３０２とを備える。角速度検出素子２３０１は、既知の振動ジャイロ機構などにより構成され、動画像記録装置の振れを電気信号に変換する。角速度信号処理部２３０２は、角速度検出素子２３０１からの電気信号を処理し、動画像記録装置の振れの量を出力する。出力される動画像記録装置の振れの量は定期的にカメラ制御部１９０８に送られる。
【０１８０】
カメラ制御部１９０８は、角速度信号処理部２３０１から取得した振れの量が、ある閾値を上回った際には、以降のピクチャでは、動画像符号化装置１９０３の符号化前処理を、動き予測処理の処理量が大きくなるように設定する。
【０１８１】
具体的には、動作設定レジスタ８００により、符号化前処理である拡張動き予測処理のON/OFFを設定するビットフィールドであるMVの現在値を保持し、MVの値が0であれば1に変更する。また拡張動き予測処理の処理量を設定するビットフィールドであるMVMの現在値を保持し、このMVMの値が0以外であれば、0に変更する。この変更に合わせて必要に応じて他の設定項目を変更してもよい。（例えば既に顔検出処理をOFFにするなど）。
【０１８２】
その後、動画像記録装置の振れ量が閾値を下回った場合には、変更した動作設定レジスタ８００の設定値を、保持していた元の値に変更する。
【０１８３】
以上のように、本発明の実施形態８による動画像記録装置では、動画像記録装置の振れの量に応じて動画像符号化装置の動き予測処理の処理量を調整することができる。これにより、動画像記録装置を急に大きく動かすことにより、急に映像中の動き量が増えた場合でも、動き予測処理の性能を増やすことで、録画品質の改善効果がある。
【０１８４】
《実施形態９》
図２４には本発明の実施形態９に係る放送受信記録装置６の構成が例示される。本発明の実施形態９に係る放送受信記録装置６は、放送波に含まれる番組情報を解析し、番組のジャンルに応じて符号化前処理の種類や処理時間を切り替えることを特徴とするものである。
【０１８５】
図２４において、アンテナ２４００は、地上デジタル放送や、衛星デジタル放送の放送電波を受信する。チューナ部２４０１は、受信した放送電波のうち、視聴するチャネルの設定を行う。復調部２４０２は、チューナ２４０１より出力される信号の復調を行い、デジタル放送信号を生成する。このデジタル放送信号形式としては、地上デジタル放送や衛星デジタル放送では、ＭＰＥＧ−２トランスポートストリーム（ＭＰＥＧ−２  ＴＳ）形式が用いられている。以下では、デジタル放送信号としてＭＰＥＧ−２  ＴＳ形式が用いられる場合について説明する。
【０１８６】
デジタル放送の録画方式は、主にＴＳモードとＶＲモードとに分けられる。ＴＳモードとは、受信したＭＰＥＧ−２  ＴＳ形式のデジタル放送信号をそのままの形式で記録媒体２４０９に記録する方式である（図２４中のパス２４１２）。ＴＳモードでは、再生時の画質が放送品質そのものであることが特徴であるが、ビットレートが高いため、ＤＶＤなどの容量の小さい記録媒体へ録画することができない。一方、ＶＲモードでは、デジタル放送信号からビットレートを下げてから記録媒体２４０９に記録する方式である。
【０１８７】
ＶＲモードでの録画の場合、復調部２４０２で生成されるデジタル放送信号は多重分離部２４０３に送られる。多重分離部２４０３は、このデジタル放送信号から、映像信号、音声信号、及びこれらに付随する制御情報や番組情報などを分離する。分離された映像信号は動画像復号部２４０４へ送られ、復号される。復号された動画像信号は、信号出力部２４０５へ接続され、ＨＤＭＩなどの信号伝送規格によりＴＶ等のディスプレイに出力される。またＶＲモードでの録画時には、多重分離部２４０３で分離された映像信号は動画像符号化装置２４０６にて符号化され、多重部２４０８にて再びＭＰＥＧ−２  ＴＳ形式に多重化されて記録媒体２４０９に記録される。ここで動画像符号化装置２４０６は、本発明の実施形態１、２，３，４、及び５により構成される。
【０１８８】
また多重分離部２４０３で分離された番組情報データは番組情報管理部２４０７に送られる。番組情報管理部２４０７は、番組情報管理部２４０７では、多重分離部２４０３で分離された番組情報データを復号し、復号した結果、得られる番組情報を記録媒体２４０９に格納する。記録制御部２４１０は、記録媒体２４０９へのデータの読み書きの制御を行う。システム制御部２４１１は上記の全てのモジュールの制御を行う。
【０１８９】
番組情報の処理の流れについて詳細を説明する。多重分離部２４０３では、ＭＰＥＧ−２  ＴＳ形式のデジタル放送信号の中から、ＰＳＩ／ＳＩ（Ｐｒｏｇｒａｍ  Ｓｐｅｃｉｆｉｃ  Ｉｎｆｏｒｍａｔｉｏｎ／Ｓｅｒｖｉｃｅ  Ｉｎｆｏｒｍａｔｉｏｎ）データを分離して、番組情報管理部２４０７へ送る。
【０１９０】
ここでＰＳＩはデジタル放送信号に含まれる番組を特定するための情報であり、例えば事業者番号、放送番組番号、映像・音声符号化方式の識別情報などが含まれる。ＳＩは番組配列情報と呼ばれ、デジタル放送信号に含まれる番組のタイトルや放送時間、チャネル名称、番組のジャンル等の情報を含む。
【０１９１】
ＳＩには、ＥＩＴ（Ｅｖｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔａｂｌｅ）と呼ばれるテーブル形式で番組情報が格納されている。具体的には、ＥＩＴには番組名称、番組のジャンル情報、番組の概要や詳細情報などが格納されている。
【０１９２】
番組のジャンル情報は、その番組が属するジャンルを示す情報である。一例として、ＡＲＩＢ（Ａｓｓｏｃｉａｔｉｏｎ  ｏｆ  Ｒａｄｉｏ  Ｉｎｄｕｓｔｒｉｅｓ  ａｎｄ  Ｂｒｏａｄｃａｓｔ、社団法人電波産業会）が定める番組ジャンルでは、ジャンルの大分類として「ニュース／報道」、「スポーツ」、「情報／ワイドショー」、「ドラマ」、「音楽」、「バラエティ」、「映画」などを定義し、さらに個々の大分類ジャンルに対して中分類を定めている。中分類内容は、「ニュース／報道」には、「定時・総合」、「天気・交通」、「特集・ドキュメント」などが定められている。同様に「スポーツ」には、「スポーツニュース」、「野球」、「サッカー」、ゴルフ」、「球技全般」、「相撲・格闘技」などの中分類が定められている。
【０１９３】
システム制御部２４１１は、図２５に示すような、各ジャンルとそれに対応する動作設定レジスタ８００の設定値との組合わせのテーブルを保持しておき、このテーブルを参照することにより、番組のジャンルに応じて動画像符号化装置１９０３の動作を設定する。
【０１９４】
図２５の例では、大分類ジャンル「ニュース／報道」では、中分類ジャンルに依らず、動作設定レジスタ８００におけるビットフィールドNF、FA、MV、FAM、MVMを1に、その他を0に設定することで、符号化前処理として、ノイズ除去処理、顔検出処理、拡張動き予測処理を全て行っている。ただし顔検出処理と拡張動き予測処理とは、両方とも処理量を少なくする(FAM=MVM=1)ことで両方の処理を行っている。これはニュースや報道ではキャスターの顔がシーンの多くを占める可能性がある上、ニュース素材によっては動きの大きいシーンが出現すること（スポーツのニュース等）を考慮した設定である。
【０１９５】
同様に大分類ジャンル「スポーツ」では、さらに個々の中分類ジャンル（「スポーツニュース」、「野球」、「サッカー」、「ゴルフ」等）に対して動作設定レジスタ８００のビットフィールド値を定めている。例えば「スポーツニュース」では、「ニュース／報道」と同じ設定とし、顔検出処理と拡張動き予測処理との両方を行うように設定している。一方、「野球」「サッカー」「ゴルフ」「球技全般」「相撲・格闘技」では、符号化前処理としては顔検出処理を行わず(FA=0)に、拡張動き予測を優先して行うよう設定している(MV=1,MVM=0)。これは、上記のスポーツ番組では動きが大きいシーンが多くを占める可能性が高いことを考慮した設定である。上記の、個々のジャンルに応じた動作設定レジスタ８００の設定値は、ユーザが任意に調整できることが望ましい。
【０１９６】
以上のように、デジタル放送信号に含まれる番組ジャンル情報を利用し、個々のジャンルに対して動画像符号化装置の符号化前処理の設定値を予め決めておくことにより、番組のジャンルに応じて適切な符号化処理を行うことができるため、録画画質を改善できる。
【０１９７】
また番組のジャンルのみならず、SIに含まれる番組のタイトルや番組概要、番組詳細情報に含まれる文字列をキーワードとして動作設定レジスタ８００のフィールド値を設定することも可能である。例えば、番組タイトルに「プロ野球」という文字列が含まれる場合には、符号化前処理として拡張動き予測モードを優先させるような設定（例えばNF=MV=1,その他のフィールドを0とする）になるように、システム制御部２４１１に設定しておく。このような設定を次々に追加できることが望ましい。
【０１９８】
このように、キーワードによって符号化前処理の設定を行うことができるため、番組に応じてユーザの好みの録画設定を行うことができる。
【０１９９】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【図面の簡単な説明】
【０２００】
【図１】実施形態１に係る動画像符号化装置のシステム構成を示すブロック図である。
【図２】実施形態１に係る動画像符号化装置の顔検出処理を説明する図である。
【図３】実施形態１に係る動画像符号化装置の動き探索処理を説明する図である。
【図４】実施形態１に係る動画像符号化装置の顔検出処理部と拡張動き予測部の構成を示すブロック図である。
【図５】実施形態１に係る動画像符号化装置のピクチャ単位の処理の流れを示すフローチャートである。
【図６】実施形態１に係る動画像符号化装置の画像符号化処理部におけるマクロブロック単位の処理の流れを示すフローチャートである。
【図７】実施形態１に係る動画像符号化装置の、符号化前処理を切り替えるときの、切り替え時刻前までのピクチャ単位の処理を示すフローチャートである。
【図８】実施形態１に係る動画像符号化装置の動作を設定するレジスタを示す図である。
【図９】実施形態１に係る動画像符号化装置の、符号化前処理を切り替えるときの、切り替え時刻直後のピクチャ単位の処理を示すフローチャートである。
【図１０】実施形態１に係る動画像符号化装置の、符号化前処理を切り替えるときの、切り替え後のピクチャ単位の処理を示すフローチャートである。
【図１１】実施形態１に係る動画像符号化装置の、動き予測処理のマクロブロック単位の処理の流れを示すフローチャートである。
【図１２】実施形態１に係る動画像符号化装置の、動き予測処理に関するブロックの構成を示す図である。
【図１３】実施形態２に係る動画像符号化装置の、動き予測処理のマクロブロック単位の処理の流れを示す図である。
【図１４】実施形態２に係る動画像符号化装置の、動き予測処理に関するブロックの構成を示す図である。
【図１５】実施形態３による動画像符号化装置の、符号化前処理のピクチャ単位の処理の流れの第一の例を示すフローチャートである。
【図１６】実施形態３に係る動画像符号化装置の、符号化前処理のピクチャ単位の処理の流れの第二の例を示すフローチャートである。
【図１７】実施形態４に係る動画像符号化装置のシステム構成を示すブロック図である。
【図１８】実施形態５に係る動画像符号化装置の、符号化結果レジスタを示す図である。
【図１９】実施形態６に係る動画像記録装置の、システム構成を示すブロック図である。
【図２０】実施形態６に係る動画像記録装置において表示される、設定画面の例を示す図である。
【図２１】実施形態６に係る動画像記録装置における画質モードと動画像符号化装置の動作設定レジスタの設定との組合わせを示す図である。
【図２２】実施形態７に係る動画像記録装置の、システム構成を示すブロック図である。
【図２３】実施形態８に係る動画像記録装置の、システム構成を示すブロック図である。
【図２４】実施形態９に係る放送受信記録装置の、システム構成を示すブロック図である。
【図２５】実施形態９に係る放送受信記録装置の、番組ジャンルと動画像符号化装置の動作設定レジスタの設定との組合わせを示す図である。
【符号の説明】
【０２０１】
１、２：動画像符号化装置
３、４、５：動画像記録装置
６：放送受信記録装置
１０、１１：動画像符号化器
１００：全体制御部
１０１：符号化前処理部
１０２：ノイズ除去処理部
１０３：顔検出処理部
１０４：拡張動き予測部
１０５：画像符号化処理部
１０６：動き予測処理部
１１０：可変長符号化処理部
１１４：プロセッサ
１１６：外部メモリ
１１９：内部メモリ
４０１：積分画像生成部
４０２：テンプレートマッチング部
４０３：拡張動き予測処理部１
４０４：拡張動き予測処理部２
８００：動作設定レジスタ
【図１】
2009284208.tif 000004
【図２】
2009284208.tif 000005
【図３】
2009284208.tif 000006
【図４】
2009284208.tif 000007
【図５】
2009284208.tif 000008
【図６】
2009284208.tif 000009
【図７】
2009284208.tif 000010
【図８】
2009284208.tif 000011
【図９】
2009284208.tif 000012
【図１０】
2009284208.tif 000013
【図１１】
2009284208.tif 000014
【図１２】
2009284208.tif 000015
【図１３】
2009284208.tif 000016
【図１４】
2009284208.tif 000017
【図１５】
2009284208.tif 000018
【図１６】
2009284208.tif 000019
【図１７】
2009284208.tif 000020
【図１８】
2009284208.tif 000021
【図１９】
2009284208.tif 000022
【図２０】
2009284208.tif 000023
【図２１】
2009284208.tif 000024
【図２２】
2009284208.tif 000025
【図２３】
2009284208.tif 000026
【図２４】
2009284208.tif 000027
【図２５】
2009284208.tif 000028