JP2009284208A - 動画像符号化装置及び動画像記録装置 - Google Patents
動画像符号化装置及び動画像記録装置 Download PDFInfo
- Publication number
- JP2009284208A JP2009284208A JP2008134048A JP2008134048A JP2009284208A JP 2009284208 A JP2009284208 A JP 2009284208A JP 2008134048 A JP2008134048 A JP 2008134048A JP 2008134048 A JP2008134048 A JP 2008134048A JP 2009284208 A JP2009284208 A JP 2009284208A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- encoding
- unit
- processing unit
- moving image
- 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
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
【課題】入力画像の特性や、ユーザの指定に応じて、符号化に行う前処理の処理内容や処理サイクル数を柔軟に変更するような動画像符号化装置を提供することにある。
【解決手段】符号化前に画像処理を行う符号化前処理部(101)と、画像符号化処理部(105)と、符号化した画像データをビットストリームに変換する可変長符号化処理部(110)とはそれぞれ独立に起動し、並列に動作させるものであり、さらに符号化前処理部における複数の処理部はそれぞれ独立に起動し、並列に動作する。それぞれの処理部はレジスタ(800)の設定情報に応じて処理のオン/オフや処理の軽重が制御される。さらにそれぞれの処理部の間で情報が送受信されることで処理部間での継続処理が可能とされる。
【選択図】図1
【解決手段】符号化前に画像処理を行う符号化前処理部(101)と、画像符号化処理部(105)と、符号化した画像データをビットストリームに変換する可変長符号化処理部(110)とはそれぞれ独立に起動し、並列に動作させるものであり、さらに符号化前処理部における複数の処理部はそれぞれ独立に起動し、並列に動作する。それぞれの処理部はレジスタ(800)の設定情報に応じて処理のオン/オフや処理の軽重が制御される。さらにそれぞれの処理部の間で情報が送受信されることで処理部間での継続処理が可能とされる。
【選択図】図1
Description
本発明は、動画像信号を符号化する動画像符号化装置に関し、ビデオカメラおよびDVDレコーダ等の動画像記録装置に適用して有効な技術に関する。
動画像を符号化する技術としては、例えば非特許文献1が知られている。当該文献にも示されるように、一般的な動画像符号化では、時間方向での画像ピクチャ間の相関性や、ピクチャ内の画素間の相関性などを利用して冗長な情報量を削減し、可変長符号化を行うことにより、情報量の圧縮が実現される。画像符号化方式としてはH.264等がある。また、特許文献1には、画像符号化だけでなくG.771やG.728等の音声符号化処理復号も含めた画像音声信号処理についてそれらの勧告に則った処理機能と勧告外の処理機能をディジタル信号処理回路に割当て、主制御回路からの指示に従って、勧告外処理機能による処理量を増減させたり、勧告に則った処理機能と勧告外の処理機能の双方を実行するようにして、信号処理回路の信号処理能力を無駄にせずに、画像品質の向上更には消費電力の低減を可能とする画像音声処理装置について記載される。
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).
特開平9−298727号公報
しかしながら、上記文献に記載された技術においては、H.264のような勧告に則った処理機能と勧告外の処理機能との間の関係については処理の軽重若しくは処理速度の相違について考慮されているが、画像処理の性質、処理すべき画像の性質等を考慮して、二つの処理機能を有機的に、また、可変化能に関係付けることについて考慮されていないことが明らかにされた。本発明者は、画像の符号化処理と符号化前処理とを規定し、両方の機能を可変化能に且つ有機的に関連付けて、高画質、処理速度向上又は低消費電力の何れも必要に応じて実現することについて検討した。
本発明の目的は、ユーザの指定に応じて、符号化前処理の処理内容や処理量を柔軟に変更することができる動画像符号化装置、更には動画像記録装置を提供することにある。
本発明の別の目的は、入力画像の特性に応じて、符号化前処理の処理内容や処理量を柔軟に変更することができる動画像記録装置、更には動画像記録装置を提供することにある。
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
すなわち、動画像符号化装置は、動き予測処理を用いて画像データの符号化処理を行なう符号化処理部と前記符号化処理部による符号化処理の前処理を行なう符号化前処理部を有する。この動画像符号化装置は、符号化前処理部による処理内容と処理量がピクチャ単位で外部から指定され、指定された条件にしたがって符号化前処理部及び符号化処理部を制御し、符号化前処理部による処理が行なわれないとき符号化処理部は符号化前処理部から独立して動作し、符号化前処理部による処理が行なわれるとき符号化処理部は符号化前処理部による処理データを受取って継続する処理を行なう。
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
すなわち、符号化前処理部による処理内容と処理量がピクチャ単位で外部から指定可能にされるから、ユーザの指定に応じて、また、入力画像の特性に応じて、符号化前処理の処理内容や処理量を柔軟に変更することが可能になる。
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
〔1〕動画像符号化装置は、動き予測処理を用いて画像データの符号化処理を行なう符号化処理部(105)、前記符号化処理部による符号化処理の前処理を行なう符号化前処理部(101)、及び制御部(100)を有する。前記制御部は、符号化前処理部による処理内容と処理量を指定する制御データを受取り、受取った制御データに基づいて前記符号化前処理部及び符号化処理部を制御し、前記符号化前処理部による処理を不要とするときには前記符号化処理部を符号化前処理部から独立して動作させ、符号化前処理部による処理を必要とするときには前記符号化前処理部による処理結果を前記符号化処理部に渡して継続処理させる。
符号化前処理部による処理内容と処理量を指定可能にされるから、ユーザの指定に応じて、また、入力画像の特性に応じて、符号化前処理の処理内容や処理量を柔軟に変更することが可能になる。例えば人物の顔部分などのように主観的に着目されやすい箇所が符号化処理に入る前に既知であれば、この箇所への符号量を増やすことにより、符号化画像の主観画質の向上が期待でき、一方、動きが激しく選手の顔が小さいようなスポーツシーン中で、人物の顔の部分を検出しても、画質向上は期待できないため、そのような前処理は結果的に無駄に電力を消費してしまうことになり、低消費電力の要求には反する結果となる。このように、符号化処理の前に行う符号化前処理については、入力画像の性質やユーザのニーズなどによって、柔軟に変更できることが望ましく、上記手段はそれを満足させることができる。
〔2〕項1の動画像符号化装置において前記制御部は、例えば前記制御データが書換え可能に設定される制御レジスタ(800)を有する。制御レジスタに対する設定変更という簡単な処理によって符号化前処理を変更可能になる。
〔3〕項2の動画像符号化装置は、例えば前記制御レジスタにピクチャ単位で前記制御データを設定可能なプロセッサを更に有する。
〔4〕項2の動画像符号化装置において、前記符号化前処理部は、前処理として例えば顔検出処理を行う。符号化画像の主観画質である顔の画質を向上させる選択が可能になる。
〔5〕項2の動画像符号化装置において、前記符号化前処理部は、前処理として画像符号化処理部が行う動き探索よりも粗い探索を行う(図13、図14)。これによれば、符号化処理前に予め入力画像を解析してピクチャ間の簡単な相関を知ることができ、これを符号化処理に活用することにより符号化画像の画質向上に寄与することができる。
〔6〕項2の動画像符号化装置において、前記符号化前処理部は、前処理として、例えば画像符号化処理部が行う動き探索と同じ探索処理を、ピクチャ内で画像符号化処理部と分担して行う(図11、図12)。少なくとも符号化前処理部と符号化処理部とよる処理のパイプライン化が可能になり、処理速度の向上に資することができる。
〔7〕項2の動画像符号化装置において、符号化前処理部は、例えば並列動作する複数のプロセッサユニット(1701,1702)を有する(図17)。符号化前処理部において処理のパイプライン化が可能になり、処理速度の向上に資することができる。
〔8〕項2の動画像符号化装置において、前記制御部は、例えば前記画像符号化処理部による処理結果に応じて、前記符号化前処理部で行われる処理内容と処理量を変更する(図18)。例えばピクチャに対する顔領域の占める割合を前記画像符号化処理部による処理結果からは把握し、その割合が所定の閾値以上であれば顔検出を行い、前記閾値よりも小さければ顔検出を非活性又は処理量を低減させる選択が可能になる。
〔9〕項8の動画像符号化装置において、前記制御レジスタは、前記処理量の変更の可否を決定する制御データが書換え可能に設定される記憶領域を有する。
〔10〕項3の動画像符号化装置において、制御回路は、符号化前処理部で行われる処理内容と処理量の組み合わせが、予め禁止されたものであるとき、前記プロセッサにエラー信号を出力する。処理不能や設定の矛盾を外部で確認可能になる。
〔11〕動画像記録装置(3)は、撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部とを有する。前記システム制御部は、前記動画像符号化装置の符号化前処理部で処理可能な処理の選択肢を前記表示部に表示し、その選択肢の中で操作部により選択された処理に応じて前記動画像符号化装置に前記制御データを設定する。
〔12〕動画像記録装置(4)は、撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部と、バッテリ電源部とを有する。前記システム制御部は、バッテリ電源部のバッテリ残量に応じて、前記動画像符号化装置に、符号化前処理部による処理の動作周波数を低くし、又は前記符号化前処理部の動作を停止させる制御データを設定する。
〔13〕動画像記録装置(5)は、撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部と、加速度センサとを有する。前記システム制御部は、前記加速度センサの出力によって得られる動き量が大きいときに、前記動画像符号化装置に、動き予測処理の処理時間を増やすようにする制御データを設定する。
〔14〕動画像記録装置(6)は、チューナ部と、前記チューナ部で受信した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、前記チューナ部で受信した番組情報を管理する番組情報管理部と、を有する。前記番組情報管理部は、受信された番組情報に基づいて、前記動画像符号化装置に、符号化前処理部による処理内容と処理量を決定するための制御データを設定する。
2.実施の形態の詳細
実施の形態について更に詳述する。以下、本発明を実施するための形態を図面に基づいて詳細に説明する。なお、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。
《実施形態1》
図1には本発明の実施形態1に係る動画像符号化装置が示され、これは符号化前処理の処理内容をピクチャ単位で切り替えることが可能にされるものである。
実施の形態について更に詳述する。以下、本発明を実施するための形態を図面に基づいて詳細に説明する。なお、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。
《実施形態1》
図1には本発明の実施形態1に係る動画像符号化装置が示され、これは符号化前処理の処理内容をピクチャ単位で切り替えることが可能にされるものである。
図1に示される動画像符号化装置1は、外部メモリインタフェース115を介して外部メモリ116が接続されたバス113にプロセッサ114と動画像符号化器10が接続されて構成される。動画像符号化器10は、符号化器全体を制御する全体制御部100、符号化前処理を行う符号化前処理部101、符号化のための画像処理を行う画像符号化処理部105、符号化画像処理結果を最終的なストリーム形式に符号化する可変長符号化処理部110、個々の処理部によってワーキングメモリとして共有される内部メモリ119、個々の処理部が内部メモリ119を利用するためのインタフェースを提供する内部メモリインタフェース118、及び個々の処理部が信号をやり取りするためのバスインタフェース112から成る。外部メモリ116は入出力画像や参照画像などを格納するために利用される。プロセッサ114は、動画像符号化器1をピクチャ単位で起動、停止する制御等を行う。
ここで動画像符号化装置1が起動される流れについて簡単に述べる。プロセッサ114は、符号化対象の入力画像と参照画像、そして符号化結果のストリーム等を格納するためのメモリ領域を外部メモリ116に確保し、これらメモリ領域のアドレスを全体制御部100が備える図示しないレジスタに設定する。また、プロセッサ114は、符号化前処理部101、画像符号化処理部105、及び可変長符号化処理部110の起動時の設定情報を、同様にレジスタに設定する。本明細書では、これら設定情報のうち、符号化前処理部101の設定情報の一部について詳細を後述する。その他の設定情報については本発明には直接係わりがないため省略する。
以上のようにして、符号化前処理部101、画像符号化処理部105、可変長符号化処理部110の起動に必要な情報を全体制御部100内のレジスタ800等に設定し、その後全体制御部100に起動信号を送る。全体制御部100は、ピクチャ単位で符号化前処理部101、画像符号化処理部105、及び可変長符号化処理部110を起動する。この起動の際には起動信号の他、全体制御部100内のレジスタ設定に基づいた、図示しない動作設定に関する信号が送られる。符号化前処理部101、画像符号化処理部105、及び可変長符号化処理部110は、それぞれ自身に対する上記の起動信号と動作設定に関わる信号とを受け取ることにより起動される。
画像符号化処理部105は、内部に、量子化パラメータ制御部117、動き予測処理部106、直交変換処理部107、画面内予測処理部108、量子化処理部109を有し、これらを制御する機能を有する。
画像符号化処理部105では、1ピクチャの画面全体をマクロブロックと呼ばれる16×16画素単位に分割し、個々の処理部がパイプライン的にマクロブロックの符号化処理を行うことで、1ピクチャの符号化処理を実現している。
画像符号化処理部105は、マクロブロック毎に上記の各モジュールを起動する。起動に際しては起動信号と動作設定に関わる信号を各モジュールに対して送信する。
量子化パラメータ制御部117は、量子化処理部109における量子化処理の際の、量子化ステップ幅に対応する量子化パラメータの値をマクロブロック毎に決定する。制御の一例としては、ブロック内の画素の分散が大きければ量子化ステップ幅を大きくし、分散が小さければ量子化ステップ幅を小さくするような処理がある。これは、ブロック内の画素の分散が大きいほど、画像の劣化が目立ちにくいという人間の視覚特性を利用し、量子化ステップ幅を大きくすることで画質を落とすことで符号量を削減するものである。逆に分散が小さいときには画質の劣化が目立ちやすいので量子化ステップ幅を小さくし、画質を高くする。本発明では、量子化パラメータ制御部117は、後述するように人物の顔の部分など、視覚的に着目されやすい箇所とそうでない箇所での、量子化ステップ幅の制御を行う。
動き予測処理部106は、ピクチャ間の相関性を利用した予測処理であり、符号化対象のマクロブロックと最も類似していると予測されるマクロブロックを、参照ピクチャ内で探索し、得られたマクロブロックを動き予測画像とする。そして動き予測画像(マクロブロック)の相対位置情報(動きベクトル)と、符号化画像と予測画像との差分画像を生成する。このような動き予測のアルゴリズムについては一例を後述するが、本発明は動き探索アルゴリズムに依存するものではない。
画面内予測処理部108は、ピクチャ内での画素の相関性を利用した予測処理である。動画像符号化方式によってどのような予測をするかが定められている。例えばITU-T H.264では9種類の予測モードが規格により定められており、符号化器では予測モードを自由に選択し、差分画像を得る。画面内予測処理部108では、画面内予測で得られた予測結果と、動き予測処理部106で得られた予測結果とから、どちらかの予測方式を選択する。一般的にはマクロブロックの差分画像の画素値の絶対値和と動きベクトルの情報量、量子化パラメータ値などを考慮して、符号化効率が高いと推測される方の予測方式を選択する。
直交変換処理部107は、画面内予測処理部108で選択された、動き予測処理か画面内予測処理かのいずれか、選択された予測方式で生成された差分画像を直交変換する。
量子化処理部109は、直交変換処理部107によって直交変換されたDCT係数を、前述した量子化パラメータ制御部117で決定された量子化ステップ幅により量子化する。
図6に、画像符号化処理部105における1ピクチャの符号化処理のマクロブロック単位での処理の流れを示す。同図に示すように、画像符号化処理部105では、マクロブロック単位で上記の量子化パラメータ制御処理、動き予測処理、画面内予測処理、直交変換処理、および量子化処理がパイプラインで実行されている。
符号化前処理部101は、符号化前の処理を行うモジュール群である。本発明の実施形態1による動画像符号化装置1では、符号化前処理として、ノイズ除去処理、顔検出処理、動き予測処理を拡張する処理を備えており、それぞれノイズ除去処理部102、顔検出処理部103、拡張動き予測部104にて行われる。
符号化前処理部101は、ノイズ除去処理部102、顔検出処理部103、拡張動き予測部104をピクチャ単位で起動するための制御機能を有する。すなわち、符号化前処理部101は全体制御部100から受けた動作設定信号に基づいて、各々の処理部に対する動作設定信号を生成し、起動信号とともに動作設定信号を送信することによって、各処理部を起動する。
ノイズ除去処理部102は、入力画像の雑音を除去するためのフィルタリング処理を行う。一般的に、入力画像に雑音信号があると、画像符号化処理における画面内や画面間の予測処理がうまく行われず、符号化効率が低減することが知られている。このためノイズ除去処理により符号化効率の改善や主観画質の改善が期待できる。ノイズを除去するフィルタとして高周波ノイズを除去するローパスフィルタが一般的である。ただし単純なローパスフィルタではエッジ部分の尖鋭さが失われてしまう懸念があるため、既知のエッジ保存型の高度なフィルタなどが使用されるべきである。本実施形態1の動画像符号化装置におけるノイズ除去処理部102では、フィルタ係数やそのタップ数が可変であることを前提とするが、具体的な値に限定されるものではない。フィルタのタップ数を増減することにより、ノイズ除去処理による演算量を増減することが可能である。
次に図2を参照して、顔検出処理部103の処理を説明する。図2の(A)を参照して、一般的な顔検出処理の概要を説明する。顔検出処理部103では、顔テンプレートを用いて、後述するテンプレートマッチングを画像上の全ての位置に対して行い、全てのテンプレートでマッチングした場合に顔領域と判定し、それ以外であれば非顔領域と判定する。
テンプレートマッチングの例としては、既知のハールと呼ばれる画素の波で定義される顔テンプレートを用いたマッチングアルゴリズムが挙げられる。具体的には、図2の(A)に示されるような、同一サイズであり、黒と白の矩形領域で定義されるようなテンプレート群の個々のテンプレートにおいて、以下の(1)〜(3)の計算によりハール特徴量を算出する。
(1)白の矩形領域内の画素値の総和を算出し、
(2)黒の矩形領域内の画素値の総和を算出し、
(3)(1)−(2)の値を閾値Tと比較し、T未満であれば値α、T以上であれば値βを特徴量とする。ただし、T、α、βは矩形領域毎に異なる。
(1)白の矩形領域内の画素値の総和を算出し、
(2)黒の矩形領域内の画素値の総和を算出し、
(3)(1)−(2)の値を閾値Tと比較し、T未満であれば値α、T以上であれば値βを特徴量とする。ただし、T、α、βは矩形領域毎に異なる。
以上の計算によって得られるハール特徴量が、テンプレート固有の閾値以上であれば顔領域と判定する。なお上記の顔検出処理は、様々な大きさの顔の検出に対応するため、個々のテンプレートを、検出を行う顔領域のサイズに応じて拡大、もしくは縮小してからテンプレートマッチングを行う。
上記のハール特徴量の計算には、矩形領域内の画素値の総和の計算が繰り返し行われる。この矩形領域内の画素値の総和の計算は、入力画像から直接求めることは可能であるが、図2の(B)、(C)、(D)で示すように、積分画像を生成することにより、計算量を削減する手法が広く用いられている。
ある3×3の矩形領域における入力画素値が図2の(B)のように与えられたとすると、図2の(C)に示すような積分画像を生成し、内部メモリ119に格納する。積分画像とは、各画素が入力画像の左上矩形内の画素値の総和を持っている画像である。つまり、入力画像の画素値をI(x,y)、積分画像の画素値をS(x,y)とすると以下の式が成り立つ。
図2の(D)では、上記の積分画像を用いて、ある矩形領域における画素値の総和を求める方法を示している。図2の(D)における矩形領域Dの画素値の総和は、積分画像における画素値P4−P2−P3+P1により求められる。このように、積分画像を予め求めておくことで、ハール特徴量の計算量を削減できる。また顔検出処理範囲を制限することで、積分画像を計算する範囲を減らせるため、積分画像生成処理の処理量を削減できる。
図4の(A)には顔検出処理部103の構成が例示される。積分画像生成部401では、上で述べたような積分画像の生成と、テンプレートの拡大・縮小処理などを行う。テンプレートマッチング部402では、拡大もしくは縮小されたテンプレート画像を用いて、上述のテンプレートマッチングを行い、顔領域を検出する。このテンプレートの拡大・縮小を行うサイズのバリエーションは、演算速度や消費電力などのリソース制約を考慮して定められるべきである。また、テンプレートマッチングにおける探索の仕方も同様である。
この探索の仕方のバリエーションとしては、例えば1画素ずつ細かく探索するか、もしくは一定間隔で粗く探索して顔の位置の大まかに当たりをつけた後に細かい間隔で探索する、などが挙げられる。前者の探索方法では、顔検出の精度は高くなるが、演算量が多くなる。後者の探索方法では、演算量を削減できる反面、顔検出精度は低くなる。このように、探索アルゴリズムについても同様にリソースの制約を考慮して決められるべきである。
図4の(A)では、テンプレートのバリエーションや探索アルゴリズムの設定は、テンプレートマッチング部402のみで実時間で顔検出を行える範囲を想定している。
テンプレートマッチング部402の処理量を調整するためには、上で述べたように、テンプレートの拡大・縮小サイズのバリエーションを制限することや、テンプレートマッチング処理の探索処理を粗く行うなどにより可能である。本発明では、探索アルゴリズムやテンプレートのサイズのバリエーションは特に限定されるものではない。
次に、図3と図4の(B)を参照して、拡張動き予測部104の詳細を説明する。拡張動き予測部104は、画像符号化処理部105における動き予測処理部106と連携して、動画像符号化時のピクチャ間の動き予測処理を行う。
図3には動き予測処理の一例が示される。同図では、予め決められた動き探索範囲に対して、参照画像において、4画素単位での粗い動き探索から開始し、次に2画素単位、その次に1画素単位で動き探索を行っていく処理を示している。個々の画素位置では、参照画面上の16×16画素と、符号化対象のマクロブロック内の画素との絶対差分を求め、その総和(SAD)を計算する。図3では、符号化対象のマクロブロックの位置に対し、同じ位置である(0,0)と、そこから周囲の4画素間隔離れた8点の、全部で9点(図3では円形の印)においてSADを求める。そしてSADが最小となる1点(図3では、(4,-4))を起点として同様の探索を行う(ただし図3では、2回目以降の4画素間隔の探索は省略)。次に2画素間隔離れた周囲8点(図3では四角形の印)で同様にSADを求め、SADが最小となる1点(図3では(2,-4))を起点として同様の探索を行う(ただし図3では、2回目以降の4画素間隔の探索は省略)。次に(2,-4)を起点として、1画素間隔で同様に周囲の8点(図3では三角形の印)のSADを計算し、SADが最小となる位置を起点として、同様の探索を行う(ただし図3では、2回目以降の1画素間隔の探索は省略)。図3では、以上の探索により最終的に(3,-5)の位置が、整数画素精度の動き予測結果として得られる。
さらに小数画素精度で予測を行う場合には、符号化規格で定められる小数画素補間式に従って小数画素精度の補間画像を(3,-5)の周辺で生成する。符号化規格ITU−T H.264では、1/2、1/4画素単位での補間画像を生成するフィルタ演算式が定められており、この式に従って小数画素精度の補間画像を生成することで、さらに探索を続け、1/2、1/4画素精度での動き探索を行い、1/4画素精度の動きベクトルを得ることができる。
この動きベクトルの情報は外部メモリに格納される。そして符号化対象のマクロブロック位置における16×16画素と、動きベクトルが示す参照画像位置における16×16画素との差分画像は、画像符号化処理部105における、直交変換処理部107、量子化処理部109においてそれぞれ直交変換、量子化された結果が、外部メモリに格納される。
図4の(B)には拡張動き予測部104の構成が例示される。拡張動き予測部104は、拡張動き予測処理部1(403)と拡張動き予測処理部2(404)とを内部に有する。これら2つの内部の拡張動き予測処理部では、1ピクチャ内の全てのマクロブロックの動き予測処理を分担して行う。処理の分担のさせ方については後述する。これら2つの内部の拡張動き予測処理部は別回路であるので、並列処理させることが可能である。
このように、画像符号化処理部105内の動き予測処理部106のみならず、拡張動き予測部104においても動き予測処理を行うことにより、従来の動き予測処理よりも、1マクロブロック当たりの演算量を増やすことができる。例えば、より広範囲で動き探索を行うことができ、動きが大きいシーンでの画質向上を図ることができる。
次に、図5と図6を参照して、本実施形態1における符号化前処理の処理内容、画像符号化処理の処理内容と、これら各処理の時間的流れについて説明する。
図5には符号化前処理、画像符号化処理、及び可変長符号化処理のピクチャレベルでの処理の時間的流れが示される。
前述のように、全体制御部100は、符号化前処理部101、画像符号化処理部105、及び可変長符号化処理部110を、ピクチャ単位での起動を制御する。また符号化前処理部101は、ピクチャ単位で内部の複数の符号化前処理の起動を制御する。
図5は、符号化前処理としては符号化前処理1と符号化前処理2の2つの処理を行う場合に、それぞれを処理する処理部が2つある場合の例を示している。すなわち、符号化前処理1を行う処理部が2つあり、それぞれ符号化前処理1−1と符号化前処理1−2とが並列に動作する。同様に符号化前処理2に対しても、処理部が2つあり、それぞれ符号化前処理1−1と符号化前処理1−2として並列に動作する例を示している。例えば、図4の(B)で述べた顔検出処理部103における積分画像生成部401とテンプレートマッチング部402とが、図5における符号化前処理1−1と符号化前処理1−2に相当する。
全体制御部100は、図5で示すように、符号化前処理と画像符号化処理と可変長符号化処理とを、それぞれが異なるピクチャをパイプライン処理させるように起動させることで、実時間での符号化処理を実現している。符号化前処理1でも同様に、符号化前処理1−1と符号化前処理1−2とでは、それぞれが異なるピクチャを逐次的に処理することにより並列処理を実現している。符号化前処理2でも同様である。
図6には画像符号化処理部105における各処理部における処理内容の時間的流れが例示される。同図に示すように、画像符号化処理部105は、それぞれの処理部が異なるマクロブロックを逐次的に処理するように並列で起動され、1ピクチャ分のマクロブロックを処理する。画像符号化処理部105は、1ピクチャ分のマクロブロックの動きベクトルや、DCT係数などの符号化情報を、前述のように外部メモリに格納する。
図5において、可変長符号化処理部110は、この外部メモリに格納された符号化情報を読み込み、1ピクチャ分の可変長符号化を行って符号化ストリームを生成する。この外部メモリに格納される情報の形式については、本発明には直接関わりはないため、説明を省略する。
次に、図7から図10を参照して、符号化前処理としてノイズ除去処理と顔検出処理を実行している最中に、ある時刻T6から符号化前処理としてノイズ除去処理と拡張動き予測処理に変更する処理の流れを説明する。
図7は、符号化前処理としてノイズ除去処理と顔検出処理を実行している状態でのピクチャ単位での処理の流れを示す図である。ノイズ除去処理部102と顔検出処理103のピクチャ単位での起動は符号化前処理部101により行われる。また顔検出処理部103は、内部の積分画像生成部401とテンプレートマッチング部402のピクチャ単位での起動を制御する。
時刻T0にて、ノイズ除去処理部102と、積分画像生成部401は、入力画像(Pic#0)に対してそれぞれ既に述べたフィルタリング処理と、積分画像を生成する処理とを行う。
時刻T1では、テンプレートマッチング部402は、入力画像(Pic#0)に対して、既に述べたテンプレートマッチング処理を行い、顔領域を検出する。検出された入力画像(Pic#0)の顔領域情報は、画像符号化処理部105内の量子化パラメータ制御部117へ送られる。また時刻T1では、ノイズ除去処理部102と、積分画像生成部401は、入力画像(Pic#1)に対して、それぞれ同様にフィルタリング処理と、積分画像を求める処理とを行う。
時刻T2では、画像符号化処理部105は、入力画像(Pic#0)に対して既に述べた画像符号化処理を行う。ここで、量子化パラメータ制御部117は、前述の入力画像(Pic#0)の顔領域情報を参照し、顔領域を含むマクロブロックにおける量子化パラメータ値を、予め定められた分だけ下げる。これにより視覚的に着目されやすい顔領域の画質を高める効果がある。また時刻T2では、ノイズ除去処理部102と、積分画像生成部401は、入力画像(Pic#2)に対して既述の処理を行う。テンプレートマッチング部402は、入力画像(Pic#1)に対して、既述のテンプレートマッチング処理を行う。
時刻T3では、可変長符号化処理部111が、画像符号化処理部105による入力画像(Pic#0)に対する符号化情報を参照して可変長符号化を行い、入力画像(Pic#0)の符号化ストリームを出力する。また時刻T3では、ノイズ除去処理部102と、積分画像生成部401は、入力画像(Pic#3)に対して既述の処理を行う。テンプレートマッチング部402は、入力画像(Pic#2)に対して、既述のテンプレートマッチング処理を行う。画像符号化処理部105は、入力画像(Pic#1)に対して既述の画像符号化処理を行う。
以上に述べたように、図7に示す状態では、符号化前処理としてノイズ除去処理と顔検出処理とが、画像符号化処理と可変長符号化処理と並行して動作している。
ここで、時刻T6からは符号化前処理として顔検出処理を、拡張動き予測処理に変更するように指定されたケースを考える。この指定方法としては、後述するようにユーザの指定により符号化前処理が手動で変更される場合や、入力画像の特徴に応じて自動的に変更される場合などが挙げられる。ただし上記の手動変更、自動変更とも、全体制御部100におけるレジスタ設定値がプロセッサ114により変更されることにより実現される。すなわち、時刻T6からは符号化前処理として顔検出を行わずに、拡張動予測処理を行うように全体制御部100のレジスタが設定される。そして符号化前処理部101が、拡張動き予測部104を起動する。レジスタ設定については後述する。
拡張動き予測処理は、拡張動き予測部104にて行われる。拡張動き予測部104は、図11に示すように、拡張動き予測処理部1(403)と拡張動き予測処理部2(404)とで構成され、それぞれ拡張動き予測処理1と拡張動き予測処理2を並列に行う。これらの処理については後述する。
図7に示すように、時刻T5では、可変長符号化処理部110が入力画像(Pic#2)に対して可変長符号化を行い、符号化ストリームを出力する。画像符号化処理部105は、入力画像(Pic#3)に対して既述の画像符号化処理を行う。テンプレートマッチング部402は、入力画像(Pic#4)に対して、既述のテンプレートマッチング処理を行う。ノイズ除去処理部102と、積分画像生成部401は、入力画像(Pic#5)に対して既述の処理を行う。
次に時刻T6では、図9に示すように、ノイズ除去処理部102は入力画像(Pic#6)に対して既述の処理を行う。積分画像生成部401は処理を停止し、動き予測処理部1(403)が入力画像(Pic#6)の処理を行う。またテンプレートマッチング部402は、入力画像(Pic#5)に対して既述の処理を行う。同様に可変長符号化処理部111と画像符号化処理部105はそれぞれ、入力画像(Pic#4)と入力画像(Pic#3)に対して既述の画像符号化処理を行う。
時刻T7では、ノイズ除去処理部102と動き予測処理部1(403)は入力画像(Pic#7)の処理を行う。そしてテンプレートマッチング部402は処理を停止し、動き予測処理部2(404)が入力画像(Pic#6)の処理を行う。同様に可変長符号化処理部111と画像符号化処理部105はそれぞれ、入力画像(Pic#5)と入力画像(Pic#4)に対して既述の画像符号化処理を行う。
時刻T7以降は、図10に示すように符号化前処理であるノイズ除去処理、動き予測処理1、および動き予測処理2と、画像符号化処理と可変長符号化処理とがピクチャ単位のパイプラインで実行される。このようにして、入力画像(Pic#6)以降の入力画像に対しては、符号化前処理が顔検出処理から拡張動き予測処理に変更されて符号化処理が行われる。
次に図8を参照して、本発明の実施形態1の動画像符号化装置において、ピクチャ単位で符号化前処理を切り替える設定の例を示す。
図8では、本発明の実施形態1の動画像符号化装置が公開している動作設定レジスタ800を示している。動作設定レジスタ800は例えば、全体制御部100に配置され、プロセッサ114により書換え可能にアクセスされる。動作設定レジスタ800は32ビット幅であり、符号化前処理の内容を指定するビットフィールドであるNF、FA、MVを有する。
ビットフィールドNFにはノイズ除去処理を行うときは1、行わないときは0が設定される。ビットフィールドFAには、顔検出処理を行うときは1、行わないときには0が設定される。ビットフィールドMVには、拡張動き予測処理を行うときには1が、行わないときには0が設定される。
この動作設定レジスタ800にはプロセッサ114(図1参照)が設定を行う。全体制御部100(図1参照)は、符号化前処理部と画像符号化処理部に対し、この動作設定レジスタ800で与えられた動作設定情報を送信する。この動作設定レジスタ800は、ピクチャ毎に設定を変更することが可能であり、符号化前処理部101は、図7から図10で述べたような流れにより、処理の切替えを行う。なお後述するように、画像符号化処理部105も同様に、動作設定レジスタ800の情報を受け、動作の切替えを行う。全体制御部100は、動作設定レジスタ800に設定された制御データに基づいて前記符号化前処理部101及び符号化処理部105を制御し、前記符号化前処理部101による処理を不要とするときには符号化処理部105を符号化前処理部から独立して動作させ、前記符号化前処理部101による処理を必要とするときには前記符号化前処理部101による処理結果を前記符号化処理部105に渡して継続処理させたりする制御を行なう。
なお、全体制御部100は、ビットフィールドの組み合わせの確認を行い、もしも禁止される組み合わせであれば何らかの形式によりエラーを出力することが望ましい。この禁止される組み合わせは、消費電力や実行するハードウェアの実行タイミングなどを考慮して動画像符号化装置内で決定されてもよい。あるいはプロセッサ114上で、禁止する組み合わせが指定されないかどうかチェックするようなプログラムが実行されてもよい。
次に、拡張動き予測部104で行われる処理の例を図11と図12を参照して説明する。
図11と図12では、拡張動き予測部104における拡張動き予測処理部1(403)、拡張動き予測処理部2(404)と、画像符号化処理部105における動き予測処理部106との3つの動き予測処理部が、一つのピクチャ内のマクロブロックを分担し、一つのマクロブロックに対して同じ動き予測処理を行うような例を示している。すなわち、図11に示すように、一つのピクチャ内のマクロブロック数がk+1(MB#0〜MB#k)とすると、これらのマクロブロックは、3つの部に分割されて処理が行なわれる。すなわち、拡張動き予測処理1では、最初のマクロブロック(#0〜#i)までを行い、その次のピクチャ時刻に行われる拡張動き予測処理2では、次のマクロブロック(#i+1〜#j)までを行い、その次のピクチャ時刻に行われる動き予測処理(画像符号化処理内)では、残りのマクロブロック(#j〜#k)の動き予測処理を行う。
ただし後述するように、画像符号化処理部105内の動き予測処理部106では、マクロブロック(#j〜#k)の処理を行うが、図6中のパイプライン処理で、後段の画面内予測処理へは、そのパイプラインで処理されるマクロブロックの動きベクトルや予測モード情報を送る必要がある。
このように一つのピクチャ内のマクロブロックを、複数の動き予測処理部で分けてパイプライン処理することにより、一つのマクロブロックに対して行う動き予測処理のサイクル数を増やしながら、且つ実時間での符号化を実現することができる。すなわち動き予測処理のサイクル数を増やすことができるため、より広範囲な動き探索処理や、より高度な演算を有した動き探索処理を実現することができる。
図12を参照して、上述した拡張動き予測部104における拡張動き予測処理部1、動き予測処理部2と、画像符号化処理部105における動き予測処理部106とで行われる処理の詳細を説明する。
図12では本発明の実施形態1による動画像符号化装置のうち、動き予測処理に関係するブロックのみに着目してそれを示している。すなわち、動き予測処理部1(403)、動き予測処理部2(404)と、動き予測処理部106とは、バス113を介して接続されている。またバスには内部メモリ119が、内部メモリへ他のブロックがデータの読み書きを行うための内部メモリインタフェース118を介して接続されており、各々の予測処理部(403、404、106)から内部メモリ119へのデータの読み書きが可能である。
各動き予測処理部(403、404、106)は、参照画像取得部、原画像取得部、動き探索処理部、及びMV取得/書き込み部を有する。
各々の参照画像取得部は内部メモリ119内の参照画像ワークメモリ1201から参照画像の画素値データを、探索位置を変える毎に取得する。参照画像取得部は、参照画像ワークメモリ1201に、少なくとも探索範囲よりも広い範囲の参照画像(の一部の)画素値データを予め外部メモリ116から読み込む。また参照画像取得部では小数画素単位の参照画像の生成処理も行う。
各々の原画像取得部は内部メモリ119内の原画像ワークメモリ1202から、符号化対象のマクロブロック内の原画像の画素値データを取得する。取得する原画像データの範囲は動き探索処理アルゴリズムに依存するが、本発明には関わりはない。
各々のMV取得/書き込み部は内部メモリ119内のMVワークメモリ1203から、既に符号化済みのマクロブロックの動きベクトル情報を取得する。この動きベクトル情報としては、マクロブロックそれぞれの動きベクトルの予測モード(mode)、予測モードに応じた個数の動きベクトルそれぞれの水平成分(MV_H)と垂直成分(MV_V)、などを含む。
ここで予測モードとは、マクロブロック内の16×16画素を、どのようなブロック単位で動き予測処理を行っているかを示す情報である。例えばITU−T H.264では、16×16画素、16×8画素、8×16画素、8×8画素、8×4画素、4×8画素、4×4画素のブロック単位で動きベクトルを割り当てることができる。一般的にブロック単位が細かい程、動き予測の精度は高まるが、動きベクトル情報のオーバヘッドが増える。このため符号化器では、予測モードを決定する際には予測誤差とオーバヘッドとを考慮して動き探索処理を行う必要がある。
各々の動き探索処理部では符号化対象であるマクロブロック内の16×16画素と、最も類似していると推測される参照画素位置を小数画素精度単位まで探索する。動き探索処理の例としては、図3を参照して述べたように、整数画素単位の粗探索を行う。次に、その整数画素位置周辺で、小数画素精度の補間参照画像を生成し、同様に小数画素精度で最も原画像と類似していると推測される参照画像上の小数画素位置を探索する。
さらに動き探索処理部は、このような探索を複数の予測モード(16×8画素、8×16画素、8×8画素等)で行い、前述のように予測誤差とオーバヘッドを考慮して最終的な予測モードと動きベクトルを決定する。上述の動き探索アルゴリズムや予測モードを決定するアルゴリズムなどは既知の様々な手法が選択しえるが、本発明に直接関わりはない。
MV取得/書き込み部は、動き探索処理部にて決定された予測モードと動きベクトル情報をMVワークメモリ1203に書き込む。また、MV取得/書き込み部は、MVワークメモリ1203に書き込んだ予測モードと動きベクトル情報を、適切なタイミング(例えば動き探索処理部の処理終了時など)により外部メモリに書き込む。
動き予測処理部1で、上述の動き探索処理がマクロブロック(MB#0〜MB#i)(図11参照)まで行われると、後段の動き予測処理部2では次のマクロブロック(MB#i+1〜MB#j)に対しても同様の処理を行う。このとき、動き予測処理部1から動き予測処理部2に対して、継続情報1205が送られる。
この継続情報1205には、少なくとも処理済みのマクロブロックの位置が含まれる。また拡張動き予測処理部1でマクロブロック処理が終了していない場合には、必要に応じて各処理部がどの処理までを行ったかを示す情報が含まれていても良い。すなわち、例えば動き探索処理部が探索の途中でサイクル数の上限により処理が打ち切られた場合には、その探索位置情報などが継続情報1205に含まれていても良い。
このように拡張動き予測処理部1から継続情報1205を後段の拡張動き予測処理部2へ送ることにより、動き予測処理部間で跨るような処理を継続して行うことができる。同様に、拡張動き予測処理部2と、その後段の動き予測処理部106の間でも、継続情報1206とが送られる。
なお継続情報1205、1206を受け取る拡張動き予測処理部2(404)と動き予測処理部106は、それぞれに対する継続情報が存在しない場合には、先頭のマクロブロックから処理を行うことが望ましい。この理由としては、本発明では符号化前処理がピクチャ単位で変更されることを想定するため、個々の処理部は継続情報がある場合には前段の処理を継続し、継続情報がない場合には独立した処理を実行できることが望ましいためである。
継続情報があるかないかの情報は、拡張動き予測処理部2であれば、拡張動き予測部104によって起動される際に設定情報として与えられることが望ましい。また動き予測処理であれば画像符号化処理部105によって起動される際に設定情報として与えられることが望ましい。
これらの継続情報の有無の設定情報は、全体制御部100内の動作設定レジスタ800の設定値から得られる。すなわち、図8で述べた動作設定レジスタでのビットフィールドMVを参照することで、拡張動き予測処理が行われているか行われていないかを判定することにより、動き予測処理部106への継続情報の有無を判定できる。同様に、後述するように、動作設定レジスタでのビットフィールドMVMを参照することで、拡張動き予測処理の処理量を判定することにより、拡張動き予測処理部2(404)への継続情報の有無を判定できる。
拡張動き予測処理部2(404)が、上述の動き探索処理をマクロブロック(MB#i+1〜MB#j)(図11(B)参照)まで行うと、後段の動き予測処理部106では次のマクロブロック(MB#i+1〜MB#j)に対しても同様の処理を行う。
動き予測処理部106は、画像符号化処理部105内のパイプライン処理の一部を行っているため、継続情報がある場合、動き予測処理部106が予測処理を行っているマクロブロックとパイプラインで処理されているマクロブロックとは異なることに注意する必要がある。すなわち動き予測処理部106が後段の画面内予測処理部107に対して送る予測モード情報と動きベクトル情報とは、動き予測処理を行っているマクロブロックの情報ではなく、パイプラインで処理されるマクロブロックの情報でなければならない。
例えば図6における時刻t1では、継続情報がある場合、動き予測処理部106はMB#i+1に対して動き予測処理を行っている(図6は継続情報がない場合の流れを示している)が、後段の画面内予測処理部107に対して送る予測モード情報と動きベクトル情報とは、MB#0である必要がある。動き予測処理部106は適切なタイミングで、外部メモリから上記の情報を内部メモリ119内のMVワークメモリ1203に予め格納しておき、このMVワークメモリ1203から、パイプライン処理の時刻に応じたマクロブロックの予測モード情報と動きベクトル情報とを送る必要がある。ただし継続情報がない場合は、図6における時刻t1では、動き予測処理部106は、MB#0に対して動き予測処理を行うので、MB#0の予測モード情報と動きベクトルとをそのまま画面内予測処理部107へ送ればよい。
以上で述べたように、動き予測処理部1(403)、動き予測処理部2(404)、及び動き予測処理部106間で、同様の動き予測処理を継続させ、さらに各部をパイプライン処理することにより、個々のマクロブロックに対する動き予測処理の処理サイクル数を増やし、かつ実時間での動き予測処理が可能となる。これにより、動き予測の性能が向上し、動画像符号化装置の符号化映像の画質が向上する効果がある。
以上に述べたように、本発明の実施形態1による動画像符号化装置では、ユーザの指定に応じて、ピクチャ単位で符号化前処理の内容を自由に切り替えることができるため、符号化画像の画質向上の効果がある。
また本発明の実施形態1による動画像符号化装置では、符号化前処理部から、その後段の画像符号化処理部へ継続情報を送信することにより、これらの処理部の間で処理を継続することができる。これにより、従来よりも画像符号化の処理に対する演算量を増やすことができるため、符号化画像の画質向上の効果がある。
《実施形態2》
次に図13と図14を参照して、本発明の実施形態2に係る動画像符号化装置の詳細を説明する。本発明の実施形態2に係る動画像符号化装置は、実施形態1の動画像符号化装置の拡張動き予測部104において、入力画像と参照画像の解像度を縮小して動き予測処理を行うものである。
次に図13と図14を参照して、本発明の実施形態2に係る動画像符号化装置の詳細を説明する。本発明の実施形態2に係る動画像符号化装置は、実施形態1の動画像符号化装置の拡張動き予測部104において、入力画像と参照画像の解像度を縮小して動き予測処理を行うものである。
図13で示すようには、本発明の実施形態2による動画像符号化装置は、拡張動き予測処理104内に、解像度縮小処理部1301と初期探索位置決定部1302を有する。図11で述べた拡張動き予測処理とは異なり、図13で示す拡張動き予測部104内の2つの処理部は、互いに異なる処理を並列実行する。図13では、拡張動き予測処理部104は、1画素単位よりも大きい間隔での粗い動き探索を実行する例を示している。この粗い探索を行うため、解像度縮小処理部1301では、入力画像全体に対して解像度を縮小した縮小画像を生成する。本発明では、この画像縮小比や、縮小処理のアルゴリズムは限定されないが、実時間処理を行うために、画像縮小処理は1ピクチャの処理時間以内で完了できる必要がある。
次に後段の初期探索位置決定部1302では、広範囲の動き量を検出するため、解像度縮小処理部1301にて作成された縮小画像に対して動き探索処理を行い、後段の動き予測処理を開始する初期探索位置を決定する。本発明では、この初期探索位置決定部1302が縮小画像に対して行う動き探索の範囲や動き探索アルゴリズムを限定するものではないが、実時間処理を行うために、1ピクチャの処理時間以内で完了できる処理量である必要がある。
次に後段の動き予測処理部106では、初期探索位置決定部1302で決定された初期探索位置から、入力画像と参照画像とを用いて図3で説明したように、整数画素精度、及び小数画素単位の動き予測処理を行う。
以上のように、図13では拡張動き予測部104内の解像度縮小処理部1301、初期探索位置決定部1302と、画像符号化処理部105内の動き予測処理部106とが、パイプライン的にそれぞれ異なる入力画像を処理することで、広範囲の動き探索処理を実時間で実現することが可能である。
図14では本発明の実施形態1による動画像符号化装置のうち、図13で述べた動き予測処理に関係するブロックのみを記している。すなわち、解像度縮小処理部(1301)、初期探索位置決定部(1302)と、動き予測処理部106とは、バス113を介して接続されている。またバスには内部メモリ119が、内部メモリへ他のブロックがデータの読み書きを行うための内部メモリインタフェース118を介して接続されており、各々の予測処理部(1301、1302、106)から内部メモリ119へのデータの読み書きが可能である。
解像度縮小処理部1301は、参照画像取得部、原画像取得部、及び画像縮小処理部を有する。解像度縮小処理部1301では、参照画像取得部と原画像取得部は、それぞれ内部メモリ119内の参照画像ワークメモリと原画像ワークメモリとから、参照画像の画素値データと原画像の画素値データとを取得する。各々のワークメモリには、画像縮小処理を行う範囲に応じて、外部メモリ116から読み込んでおく。
画像縮小処理部は、上述のように取得した原画像と参照画像の画素値データに対し、解像度縮小の演算を行い、外部メモリ116へ書き込む。外部メモリ116には、計算された縮小画像を書き込む領域と、後段の初期探索位置決定処理において読み込まれる、1ピクチャ時刻前の縮小画像の、少なくとも2つのピクチャ分の縮小画像の格納領域を確保しておく必要がある。
初期探索位置決定部1302は、縮小参照画像取得部、縮小原画像取得部、及び初期探索処理部を有する。縮小参照画像取得部と縮小原画像取得部は、それぞれ内部メモリ119内の縮小参照画像ワークメモリと縮小原画像ワークメモリとから、参照画像の画素値データと原画像の画素値データとを取得する。各々のワークメモリには、初期探索処理を行う範囲に応じて、外部メモリ116から予め、初期探索処理に必要な範囲の画素値データが読み込んでおく。
初期探索処理部1302は、上記で取得した縮小原画像と縮小参照画像とを用いて粗探索を行う。本発明ではこの粗探索処理の探索範囲やアルゴリズムは限定しないが、実時間処理を行うために、1ピクチャの処理時間内で終了する必要がある。決定された初期探索位置は、外部メモリ116へ書き込む。外部メモリ116には、決定された初期探索位置を書き込む領域と、後段の動き予測処理において読み込まれる、1ピクチャ時刻前の初期探索位置との、少なくとも2つのピクチャ分の初期探索位置の格納領域を確保しておく必要がある。
動き予測処理部106は、図12と同様にMV取得/書き込み部、参照画像取得部、現画像取得部、及び動き探索処理部を有する。MV取得/書き込み部、参照画像取得部、及び現画像取得部の動作は図12と同様であり、動き探索処理部が処理するマクロブロック位置に応じてそれぞれ、既に動き予測処理を行った周囲の動きベクトル情報と、参照画像の画素値データ、及び原画像の画素値データを取得する。
ここで既に動き予測処理を行った周囲の動きベクトル情報は、動き探索処理の際に、探索位置に相当する動きベクトルが、周囲の動きベクトルとどれだけ類似しているかを考慮するために用いることができる。すなわち、動きベクトル情報を符号化する際には、周囲の動きベクトルから推定される動きベクトルとの差分を可変長符号化するため、周囲の動きベクトルとに類似している程、動きベクトルの可変長符号化に要する符号量を削減し、高画質化の効果が期待できる。
動き探索処理部は、内部メモリ119内の初期探索位置ワークメモリ1403内から、探索処理を行うマクロブロック位置における初期探索位置情報を取得し、この探索位置を始点として(例えば図3で述べたような)動き探索処理を行う。この際、上述のように、周囲の動きベクトルと類似しているかなどを考慮してもよい。初期探索位置ワークメモリ1403には、探索処理を行うマクロブロック位置に応じて、予め一定の数の初期探索位置情報を読み込んでおき、処理するマクロブロック位置に応じて適宜内容を更新する。
動き探索処理部は、もしも符号化前処理で拡張動き予測処理を行わないなどの理由により、初期探索位置情報が存在しない場合には、所定のルールにより決定される初期位置(例えば動きベクトルの予測値など)から探索を行う。この、初期探索位置情報が存在するかしないかの判定は、図8で述べた動作設定レジスタでのビットフィールドMVを参照することで、拡張動き予測処理が行われているか行われていないかを判定することにより実現できる。そしてこの初期探索位置情報の有無の判定結果が、動き予測処理部106の起動時に、全体制御部100から設定情報として受け取る。そしてこの判定結果が動き予測処理部106から動き探索処理部へ送られることで、動き探索処理部は初期探索位置を切り替えることができる。
以上に述べたように、本発明の実施形態2による動画像符号化装置では、拡張動き予測処理において、入力画像と参照画像の解像度縮小処理と、縮小された参照画像と入力画像を用いた探索処理により初期探索位置を決定し、この初期探索位置から動き予測処理を行う。これら解像度縮小処理、初期探索位置決定処理、動き予測処理をピクチャ単位でパイプライン処理することにより、広い探索範囲の動き予測を実時間で行うことができ、動きが大きいシーンを含むような入力画像に対しての符号化効率が向上し、画質が向上する効果がある。実施形態2の処理についてもその指示は動作設定レジスタ800に対する設定値に従って全体制御部が行う。
《実施形態3》
本発明の実施形態3に係る動画像符号化装置は、本発明の実施形態1の処理に加え、符号化前処理の処理量を調整することを可能とするものである。
本発明の実施形態3に係る動画像符号化装置は、本発明の実施形態1の処理に加え、符号化前処理の処理量を調整することを可能とするものである。
図15には、符号化前処理として、ノイズ除去処理と顔検出処理、拡張動き予測処理の3つの処理が1つのピクチャの処理時間内で並列実行されるときの処理の時間的流れを示している。
同図では、顔検出処理を1ピクチャ処理時間内に抑えるために、積分画像生成処理とテンプレートマッチング処理の処理時間を、それぞれ1ピクチャ処理時間の半分となるように処理量を軽減している。積分画像生成処理とテンプレートマッチング処理の処理時間を軽減するには、図2で既に説明したように、顔検出の領域を制限することや、テンプレートの拡大・縮小サイズの種類を制約する、あるいはテンプレートマッチングの探索の間隔を粗くする、といった方法により可能である。
また同図では、拡張動き予測処理としては、拡張動き予測処理部1(403)のみが処理を行っている。すなわち1ピクチャ内のマクロブロックの動き予測処理を、拡張動き予測処理部1(403)と、画像符号化処理部105内の動き予測処理部106の2つの動き予測処理部で分担している。図11や図13など実施形態1で説明した例など、3つの動き予測処理部で1ピクチャ内の動き予測処理を分担する場合に比べると、一つのマクロブロックに対する動き予測処理の演算量を削減する必要がある。このためには、動き予測処理の探索範囲を削減する、より粗く探索する、などにより可能である。
以上のように、図15で示した例では、実施形態1と比較して、個々の顔検出処理や拡張動き予測処理の演算量を軽減したため個々の処理性能は劣るが、顔検出処理と拡張動き予測処理とを並列に実行できるという利点がある。これにより、入力画像が、人物の顔が大きく入り、且つ動きが大きいといったシーンでは、上記の両処理を行うことにより、画質の改善効果がある。
図16では、符号化前処理の内容の別の例を示している。同図では、符号化前処理として、ノイズ除去処理と顔検出処理、拡張動き予測処理の3つの処理が行われるが、ノイズ除去処理と顔検出処理とを、交互のピクチャで実行するような例を示している。これまでの説明において、ピクチャ単位で符号化前処理のONとOFFを切り替えることができることは既に述べているので、後述するように図15と同様、図16のような流れの処理は容易に実現できる。
図16では、ノイズ除去処理と顔検出処理とは、1ピクチャ毎に交互に実行されるため、図15に比べて符号化結果の画質が劣る可能性はあるが、図15に比べて符号化前処理における並列実行処理数が減るため、消費電力が低減できるという効果がある。画像の性質によっては、1ピクチャ毎にノイズ除去処理や顔検出処理を行っても、画質劣化の度合いはさほど大きくはない場合も多いと考えられる。このため、図15に比べて画質の劣化を抑えながら、消費電力を低減する効果がある。
図15や図16で述べた例において、符号化前処理の処理量や処理間隔を指定するには、実施形態1における図8で述べたような動作設定レジスタ800により可能である。図8で示す動作設定レジスタ800には、ビットフィールドNFM、FAM、MVMが指定可能である。
ビットフィールドNFMでは、ノイズ除去処理の処理モードに、0か1の2種類のモードを指定できる。NFM=0のときは、通常のノイズ除去演算を行う。NFM=1のときは、演算量を半減したノイズ除去処理を行う。
同様にビットフィールドFAMでは、顔検出処理の処理モードに、0か1の2種類のモードを指定できる。FAM=0のときは、通常の顔検出処理を行う。FAM=1のときは、演算量を半減した顔検出処理を行う。
ビットフィールドMVMでは、拡張動き予測処理の処理モードに、0から2の3種類を指定できる。MVM=0のときは、通常の拡張動き予測処理を毎ピクチャに対して行う。MVM=1のときは、探索範囲を縮小した拡張動き予測処理を毎ピクチャに対して行う。MVM=2のときは、粗く探索するような拡張動き予測処理を毎ピクチャに対して行う。
実施形態1と同様、上記の動作設定レジスタへの設定ビットの書込みは、プロセッサ114によって行われる。図15の処理を実現するには、プロセッサ114は、NF=1、NFM=0、FA=1、FAM=1、MV=1、MVM=1(又は2)を設定する。図16の処理を実現するには、設定1(NF=1、NFM=0、FA=0、MV=1、MVM=1(又は2))と、設定2(NF=0、FA=1、FAM=1、MV=1、MVM=1(又は2))とをピクチャ単位で交互に設定すればよい。
全体制御部100(図1参照)は、符号化前処理部に対し、この動作設定レジスタ800で与えられた動作設定情報を送信することにより、符号化前処理の切替えを行う。
以上に述べたように、本発明の実施形態3による動画像符号化装置によれば、符号化前処理の処理量を調整することを可能とする。これにより実時間で行うことのできる符号化前処理の種類を増やすことができるため、符号化結果を高画質化できる効果がある。
また本発明の実施形態3による動画像符号化装置によれば、符号化前処理の処理タイミングを調整することを可能とする。これにより、符号化前処理の種類を増やし、且つ並列度を下げることができるため、画質を維持しながら消費電力を低減する効果がある。
《実施形態4》
図17に本発明の実施形態4に係る動画像符号化装置2の構成が例示される。本発明の実施形態4に係る動画像符号化装置2において、動画像符号化器11は、一つ以上のプロセッサユニットで構成される符号化前処理部101を有する。図17では、符号化前処理部101は、符号化前処理プロセッサユニットA(1701)と符号化前処理プロセッサユニットB(1702)の2つのプロセッサユニットを有する。これ以外の構成は実施形態1と同様である。符号化前処理部101がプロセッサユニットにより行われることで、符号化前処理をプログラムにより実行させることが可能である。このため実施形態1に比べ、より柔軟に符号化前処理の処理内容や処理時間、処理タイミングを調整できる。
図17に本発明の実施形態4に係る動画像符号化装置2の構成が例示される。本発明の実施形態4に係る動画像符号化装置2において、動画像符号化器11は、一つ以上のプロセッサユニットで構成される符号化前処理部101を有する。図17では、符号化前処理部101は、符号化前処理プロセッサユニットA(1701)と符号化前処理プロセッサユニットB(1702)の2つのプロセッサユニットを有する。これ以外の構成は実施形態1と同様である。符号化前処理部101がプロセッサユニットにより行われることで、符号化前処理をプログラムにより実行させることが可能である。このため実施形態1に比べ、より柔軟に符号化前処理の処理内容や処理時間、処理タイミングを調整できる。
さらにプログラムを追加することで、処理内容を次々に増やしていくことが可能である。すなわち符号化処理内容の種類が多い場合には、実施形態1の場合には、その処理専用のハードウェア回路を追加する必要があるため装置の回路面積が増大することが避けられないが、本発明の実施形態4によればプログラムを追加するだけで符号化処理を増やすことが可能である。
《実施形態5》
本発明の実施形態5に係る動画像符号化装置は、毎ピクチャの符号化結果の情報に基づいて符号化前処理を変更できるものであり、構成は実施形態1によるものと同様である。
本発明の実施形態5に係る動画像符号化装置は、毎ピクチャの符号化結果の情報に基づいて符号化前処理を変更できるものであり、構成は実施形態1によるものと同様である。
図18は、動画像符号化装置が1ピクチャの符号化を終えた後に、ピクチャ内の動きベクトルの平均値と、顔領域がピクチャ全体に占める割合(%)を出力する符号化結果取得レジスタ1800である。
プロセッサ114は、1ピクチャの画像符号化処理部105での1ピクチャ分の符号化処理が終了した時点で、全体制御部100が提供する、符号化結果取得レジスタ1800を参照する。そしてプロセッサ114は、顔領域がピクチャ全体に占める割合が、所定の閾値FTH1以上であれば通常の顔検出処理を行う、所定の閾値FTH2以下であれば顔検出処理を行わない、それ以外であれば処理量を半減した顔検出処理を行う、などの動作設定を、動作設定レジスタ800に対して行う。これにより入力画像の顔領域の割合に応じて顔検出処理の処理量の調整を行うことができる。
拡張動き予測処理の処理量調整についても同様である。すなわちプロセッサ114は、1ピクチャの画像符号化処理部105での1ピクチャ分の符号化処理が終了した時点で、符号化結果取得レジスタ1800を参照し、1ピクチャの平均動きベクトル値を取得する。このベクトルの大きさが、所定のMTH1以上であれば通常の拡張動き予測処理を行う、所定の閾値MTH2以下であれば拡張動き予測処理を行わない、それ以外であれば探索範囲を半減して拡張動き予測処理を行う、などの動作設定を、動作設定レジスタ800に対して行う。これにより入力画像の動き量の大きさに応じて動き予測処理の処理量を調整することができる。
上記の例は、1ピクチャ毎に閾値判定を行っているが、過去のピクチャの平均動きベクトルの大きさや、顔領域の割合などの履歴を外部メモリ116に保持しておき、この履歴情報を元に次のピクチャの符号化前処理を調整してもよい。過去のピクチャの履歴をとることにより、過度に頻繁な調整処理が行われることを防止できる。
また上記の例では、顔領域の割合と動きの大きさを独立に調整していたが、顔検出処理の処理量を削減したときには拡張動き予測処理の処理量を増やす、顔検出処理の処理量を増やししたときには拡張動き予測処理の処理量を減らす、など符号化前処理全体の処理量を考慮した制御を行っても良い。
また上記の例では、プロセッサ114が符号化結果レジスタ1800を参照して、次のピクチャの符号化前処理の調整を行っているが、上記のような閾値判定処理は、プロセッサ114ではなく、全体制御部100にて自動的に行ってもよい。
図8の動作設定レジスタ800におけるビットフィールドATを1に設定することで、動画像符号化装置内の全体制御部100が上記の閾値判定処理を行い、符号化前処理の動作設定レジスタ800の設定を更新する。これにより、プロセッサ114からは毎ピクチャの符号化結果を参照せずとも、適切な符号化前処理が選択される。
以上のように本発明の実施形態5による動画像符号化装置は、毎ピクチャの符号化結果の情報に基づいて符号化前処理を変更できる。これにより入力画像に応じた適切な符号化前処理を行うことができ、符号化画質の改善効果が期待できる。
《実施形態6》
図19には本発明の実施形態6に係る動画像記録装置3の構成が示される。本発明の実施形態6に係る動画像記録装置3は、利用者が操作部と表示部を介し、簡易に動画像符号化装置における符号化前処理を設定できるものである。
図19には本発明の実施形態6に係る動画像記録装置3の構成が示される。本発明の実施形態6に係る動画像記録装置3は、利用者が操作部と表示部を介し、簡易に動画像符号化装置における符号化前処理を設定できるものである。
図19における撮像素子1901はCCDやCMOS等により実現され、図示しないレンズで結像された光学像を電気信号に変換する。カメラ信号処理部1902は、撮像素子1901から出力される信号から輝度信号と色差信号とを生成する。動画像符号化装置1903は、本発明の実施形態1による動画像符号化装置であり、1902からの輝度信号と色差信号とを入力とし、動画像符号化処理を行う。なお、1903は実施形態1のみならず、実施形態2、3,4、及び5の適用も可能である。多重部1904は、図示しないマイクと音声符号化装置により生成された音声符号化ストリームと、動画像符号化装置1903から出力される動画像符号化ストリームとを、既定の多重ファイル形式に変換する。記録再生部1905は、多重化1904により多重化された信号を記録装置1906に記録する。もしくは既に記録装置1906に記録された多重化ファイルを、音声と映像に分離し、分離された映像を表示部1909へ送る。もしくは記録再生部1905は、図示しない音声信号出力端子と図示しない映像信号出力端子とへ、分離した音声信号と映像信号とをそれぞれ出力する。操作部1907は、矢印やキーなどのボタン、若しくはタッチパネルなどを備え、ユーザの入力操作を電気信号に変換して、カメラ制御部1908へ送る。カメラ制御部1908は、操作部1907からの信号により、動画像記録装置の制御を行う。本明細書では、本発明に関する動画像符号化装置1903の制御のみについて後に述べ、その他の制御処理に関する記述は省略する。表示部1909は動画像記録装置の動作設定を行うためのメニュー画面やメッセージの表示や、既に記録された動画像の表示を行う装置である。本明細書では、動画像符号化装置1903の動作設定に関するメニュー画面やメッセージを表示する機能に関して後述する。
図20と図21を参照して、本発明の実施形態6による動画像記録装置3の、動画像符号化装置1903における動作設定のインタフェースについて説明する。
カメラ制御部1908は、動画像符号化装置1903の動作設定メニュー画面を、表示部1909に描画する。このメニュー画面の例を図20に示している。図20(a)ではとして、画質モードを「オートモード」、「スポーツモード」、「ポートレートモード」、「省電力モード」のいずれかに選択する画面の例を示している。「オートモード」では、カメラ制御部1908は、撮影する映像に応じて自動的に動画像符号化装置1903を自動的に切り替える。「スポーツモード」では、カメラ制御部1908は動きが大きいシーンの録画に適するように動画像符号化装置1903を設定する。「ポートレートモード」では、カメラ制御部1908は人物の録画に適するように動画像符号化装置1903を設定する。「省電力モード」では、カメラ制御部1908は動画像符号化装置1903における消費電力が少なくなるように、動画像符号化装置1903を設定する。
図21には各々の画質モードにおける、動画像符号化装置1903における動作設定レジスタ800の設定の例を示している。ここで動画像符号化装置1903における動作設定レジスタ800の設定は、本発明の実施形態1から5によれば外部のプロセッサ114により行われる。本発明の実施形態6では、カメラ制御部1908が、例えばソフトウェアAPIなどにより、プロセッサ114を介して動作設定レジスタ800の設定を行うことができるものとする。
カメラ制御部1908は、図21に示すような、各画質モードとそれに対応する動作設定レジスタ800の設定値との組合わせのテーブルを保持しておき、このテーブルを参照することにより、ユーザが指定する画質モードに対応して動画像符号化装置1903の動作を設定する。
図21の例では、「オートモード」では動作設定レジスタ800におけるビットフィールドATを1に設定することで、図8で述べたように、毎ピクチャの符号化結果に応じて、符号化前処理が変更される。これにより入力画像に応じた適切な符号化前処理が、自動的に選択される。
「スポーツモード」では、ビットフィールドNFとMVを1に設定し、さらにビットフィールドNFMとMVMとをそれぞれ0に設定している。これにより、符号化前処理ではノイズ除去処理と、拡張動き予測処理とが行われる。このような設定により、動き予測処理の予測精度が向上するため、動きが大きいシーンにおける録画画像の品質の向上が期待できる。
「ポートレートモード」では、ビットフィールドNFとFAを1に設定し、さらにビットフィールドNFMとFAMとをそれぞれ0に設定している。これにより、符号化前処理ではノイズ除去処理と、顔検出処理とが行われる。このような設定により、人物の顔領域での画質向上が期待できる。
「省電力モード」では、ビットフィールドNF、FA、MVを全て0に設定している。これにより、符号化前処理が行われないため、録画時の消費電力を低減できる。
上記の「オートモード」、「スポーツモード」、「ポートレートモード」、「省電力モード」は、カメラ制御部1908において図21のテーブルのように動作設定レジスタ800に設定する値を予め決定しておき、複数の画質モードとしてユーザへ選択させている。このように予め典型的な動作設定の組合わせを決めておき、画質モードとしてユーザに提示することにより、ユーザは動画像符号化装置1903の内部動作を意識することなく、撮影対象に応じた設定を行うことが可能である。
一方で、動画像符号部1903の内部動作をより詳細に設定したいユーザに対しては手動設定により、ノイズ除去処理、顔検出処理、動き予測処理、それぞれの機能の強弱やON/OFFを自在に設定できることが望ましい。図20の(b)〜(e)にこれらの例を示す。例えばカメラ制御部1908は、表示部1909上に図20の(b)のようなメニューにより手動設定を選択する手段を提供する。そしてカメラ制御部1908は、手動設定メニュー上で、ノイズ除去処理の強弱とON/OFF、顔検出処理の強弱とON/OFF、動き予測処理の強弱(図20の例では動き予測処理は必ずONと仮定している)の設定をユーザが選択できるような選択画面(それぞれ図20の(c)、(d)、及び(e))を表示部1909上で提示する。
これらの個々の選択肢に対する、動作設定レジスタ800の設定値の例を図21のテーブルに示す。同図で示すように、ノイズ除去処理のON/OFFはビットフィールドNFにより設定される。NFが1(ノイズ除去処理がON)のときの処理の強弱は、ビットフィールドNFMにより設定する。同様に、顔検出処理のON/OFFはビットフィールドFAにより設定される。FAが1(顔検出処理がON)のときの、同処理の強弱は、ビットフィールドFAMにより設定する。同様に、動き検出処理の強弱はビットフィールドMVとMVAにより設定される。
ここで、動画像処理符号化装置1903のハードウェア構成や処理時間の制約上、禁止されるビットフィールドの組み合わせが存在する場合がある。例えば、実施形態1で述べた例では、処理のパイプライン構成上、2ピクチャ時間内で符号化前処理を行うため、顔検出処理と拡張動き予測処理との両方の処理を行うことはできないと仮定している。図21では、顔検出処理が「強」のときには、MV=0とし、動き予測処理を「弱」(すなわち拡張動き予測処理をOFF)とすることを必須としている。同様に、動き予測処理を「強」とするときには、FA=0として顔検出処理を行わないことを必須としている。
ただし図21では、顔検出処理を「弱」、動き予測処理を「中」とする組み合わせは許可している。この組合わせは、本発明の実施形態3の説明において、図15や図16で示した例で述べたように、顔検出処理と拡張動き予測処理の処理量を軽減することで、両方の処理を符号化前処理ステージで2ピクチャ時間内に処理することを可能としている。
上述のような禁止された組合わせの設定(図21の例では、顔検出処理「強」と動き予測処理「強」)が選択された場合には、カメラ制御部1908は、表示部1909上に、禁止された設定であることを示すメッセージを提示することが望ましい。すなわち図20の(e)のように、顔検出処理が「強」に設定された状態で、動き予測処理を「強」に設定しようとすると、図20の(f)のように、禁止された設定であることを示すメッセージを表示する。
上述のような禁止された組合わせの設定がユーザから行われた場合には、許可された設定に変更してユーザに提示できることも望ましい。例えば図20の(e)の選択リストでは、上から順に優先順位が高いと想定する。すなわち顔検出処理が「強」が動き予測処理の選択肢よりも優先されるものとする。このような場合に、動き予測処理を「強」に変更する場合には、図20の(g)のように動き予測処理を顔検出処理よりも優先順位を高くするように変更するような、図示しない設定を可能とすることが望ましい。このように、顔検出処理を「強」とし、これよりも優先度が高い動き予測処理「強」に変更すると、図20の(h)に示すように顔検出処理を「OFF」に自動的に変更する。
このように、禁止された可能な組合わせがユーザから設定されたときに、優先度の低い設定項目の値を変更し、可能な組合わせの設定に変更することにより、ユーザは可能な設定の組合わせを理解せずとも、優先したい項目の処理を指定できる。
以上に述べたように、本発明の実施形態6による動画像記録装置では、動画像符号化処理部における符号化前処理に関する設定を、代表的な動作設定の組合わせを表示部を介してユーザに提示し、操作部を介してユーザが設定を選択することにより可能とする。これにより、複雑な符号化前処理の設定を、ユーザが処理の詳細を知る必要なく、簡易に行うことが可能である。
《実施形態7》
図22には本発明の実施形態7に係る動画像記録装置4の構成が示される。この動画像記録装置4は、バッテリ残量に応じて動画像符号化装置の符号化前処理の処理時間や処理タイミングを変更することで消費電力を低減しようとするものである。
図22には本発明の実施形態7に係る動画像記録装置4の構成が示される。この動画像記録装置4は、バッテリ残量に応じて動画像符号化装置の符号化前処理の処理時間や処理タイミングを変更することで消費電力を低減しようとするものである。
図22において1901から1909までは、本発明の実施形態6と同様であるため、説明を省略する。実施形態7による動画像記録装置4では、実施形態6による構成に加え、バッテリ2201とバッテリ残量ゲージ2202とを備える。バッテリ残量ゲージ2201は、バッテリ2201の電圧を計測する既知の電気回路を有し、計測される電圧値は定期的にカメラ制御部1908に送られる。
カメラ制御部1908は、バッテリ残量ゲージ2201から取得したバッテリ2201の電圧値が、ある閾値を下回った際には、以降のピクチャでは、動画像符号化装置1903の符号化前処理を、消費電力が少なくなるように設定する。
具体的には、動作設定レジスタ800により、符号化前処理であるノイズ除去処理、顔検出処理、拡張動き予測処理のON/OFFを設定するビットフィールドであるNF、FA、MVを全て0とする。これにより、符号化前処理が行われないため、動画像符号化装置1903における消費電力が低減され、バッテリの持続時間を長くする効果がある。
ただし、上述のように符号化前処理を全てOFFにすると、録画画質が急激に劣化する可能性がある。このため、前述のバッテリ電圧の閾値を複数設定し、段階的に符号化前処理を一つずつOFFにすることや、動作設定レジスタ800のビットフィールドNFM、FAM、MVMの設定により、個々の符号化前処理の処理量を減らす、などを行ってもよい。
以上で述べたように、本発明の実施形態7による動画像記録装置では、バッテリ残量に応じて動画像符号化装置の符号化前処理の処理量を調整することができるため、動画像符号化装置の消費電力を低減し、バッテリの持続時間を長くすることができる。
《実施形態8》
図23には本発明の実施形態8に係る動画像記録装置5の構成が例示される。本発明の実施形態8による動画像記録装置は、動画像記録装置の動きに応じて動画像符号化装置の符号化前処理における動き予測処理の処理量を変更するものである。
図23には本発明の実施形態8に係る動画像記録装置5の構成が例示される。本発明の実施形態8による動画像記録装置は、動画像記録装置の動きに応じて動画像符号化装置の符号化前処理における動き予測処理の処理量を変更するものである。
図23において、1901から1909までは、本発明の実施形態6と同様であるため、説明を省略する。実施形態8による動画像記録装置では、実施形態6による構成に加え、角速度検出素子2301と角速度信号処理部2302とを備える。角速度検出素子2301は、既知の振動ジャイロ機構などにより構成され、動画像記録装置の振れを電気信号に変換する。角速度信号処理部2302は、角速度検出素子2301からの電気信号を処理し、動画像記録装置の振れの量を出力する。出力される動画像記録装置の振れの量は定期的にカメラ制御部1908に送られる。
カメラ制御部1908は、角速度信号処理部2301から取得した振れの量が、ある閾値を上回った際には、以降のピクチャでは、動画像符号化装置1903の符号化前処理を、動き予測処理の処理量が大きくなるように設定する。
具体的には、動作設定レジスタ800により、符号化前処理である拡張動き予測処理のON/OFFを設定するビットフィールドであるMVの現在値を保持し、MVの値が0であれば1に変更する。また拡張動き予測処理の処理量を設定するビットフィールドであるMVMの現在値を保持し、このMVMの値が0以外であれば、0に変更する。この変更に合わせて必要に応じて他の設定項目を変更してもよい。(例えば既に顔検出処理をOFFにするなど)。
その後、動画像記録装置の振れ量が閾値を下回った場合には、変更した動作設定レジスタ800の設定値を、保持していた元の値に変更する。
以上のように、本発明の実施形態8による動画像記録装置では、動画像記録装置の振れの量に応じて動画像符号化装置の動き予測処理の処理量を調整することができる。これにより、動画像記録装置を急に大きく動かすことにより、急に映像中の動き量が増えた場合でも、動き予測処理の性能を増やすことで、録画品質の改善効果がある。
《実施形態9》
図24には本発明の実施形態9に係る放送受信記録装置6の構成が例示される。本発明の実施形態9に係る放送受信記録装置6は、放送波に含まれる番組情報を解析し、番組のジャンルに応じて符号化前処理の種類や処理時間を切り替えることを特徴とするものである。
図24には本発明の実施形態9に係る放送受信記録装置6の構成が例示される。本発明の実施形態9に係る放送受信記録装置6は、放送波に含まれる番組情報を解析し、番組のジャンルに応じて符号化前処理の種類や処理時間を切り替えることを特徴とするものである。
図24において、アンテナ2400は、地上デジタル放送や、衛星デジタル放送の放送電波を受信する。チューナ部2401は、受信した放送電波のうち、視聴するチャネルの設定を行う。復調部2402は、チューナ2401より出力される信号の復調を行い、デジタル放送信号を生成する。このデジタル放送信号形式としては、地上デジタル放送や衛星デジタル放送では、MPEG−2トランスポートストリーム(MPEG−2 TS)形式が用いられている。以下では、デジタル放送信号としてMPEG−2 TS形式が用いられる場合について説明する。
デジタル放送の録画方式は、主にTSモードとVRモードとに分けられる。TSモードとは、受信したMPEG−2 TS形式のデジタル放送信号をそのままの形式で記録媒体2409に記録する方式である(図24中のパス2412)。TSモードでは、再生時の画質が放送品質そのものであることが特徴であるが、ビットレートが高いため、DVDなどの容量の小さい記録媒体へ録画することができない。一方、VRモードでは、デジタル放送信号からビットレートを下げてから記録媒体2409に記録する方式である。
VRモードでの録画の場合、復調部2402で生成されるデジタル放送信号は多重分離部2403に送られる。多重分離部2403は、このデジタル放送信号から、映像信号、音声信号、及びこれらに付随する制御情報や番組情報などを分離する。分離された映像信号は動画像復号部2404へ送られ、復号される。復号された動画像信号は、信号出力部2405へ接続され、HDMIなどの信号伝送規格によりTV等のディスプレイに出力される。またVRモードでの録画時には、多重分離部2403で分離された映像信号は動画像符号化装置2406にて符号化され、多重部2408にて再びMPEG−2 TS形式に多重化されて記録媒体2409に記録される。ここで動画像符号化装置2406は、本発明の実施形態1、2,3,4、及び5により構成される。
また多重分離部2403で分離された番組情報データは番組情報管理部2407に送られる。番組情報管理部2407は、番組情報管理部2407では、多重分離部2403で分離された番組情報データを復号し、復号した結果、得られる番組情報を記録媒体2409に格納する。記録制御部2410は、記録媒体2409へのデータの読み書きの制御を行う。システム制御部2411は上記の全てのモジュールの制御を行う。
番組情報の処理の流れについて詳細を説明する。多重分離部2403では、MPEG−2 TS形式のデジタル放送信号の中から、PSI/SI(Program Specific Information/Service Information)データを分離して、番組情報管理部2407へ送る。
ここでPSIはデジタル放送信号に含まれる番組を特定するための情報であり、例えば事業者番号、放送番組番号、映像・音声符号化方式の識別情報などが含まれる。SIは番組配列情報と呼ばれ、デジタル放送信号に含まれる番組のタイトルや放送時間、チャネル名称、番組のジャンル等の情報を含む。
SIには、EIT(Event Information Table)と呼ばれるテーブル形式で番組情報が格納されている。具体的には、EITには番組名称、番組のジャンル情報、番組の概要や詳細情報などが格納されている。
番組のジャンル情報は、その番組が属するジャンルを示す情報である。一例として、ARIB(Association of Radio Industries and Broadcast、社団法人電波産業会)が定める番組ジャンルでは、ジャンルの大分類として「ニュース/報道」、「スポーツ」、「情報/ワイドショー」、「ドラマ」、「音楽」、「バラエティ」、「映画」などを定義し、さらに個々の大分類ジャンルに対して中分類を定めている。中分類内容は、「ニュース/報道」には、「定時・総合」、「天気・交通」、「特集・ドキュメント」などが定められている。同様に「スポーツ」には、「スポーツニュース」、「野球」、「サッカー」、ゴルフ」、「球技全般」、「相撲・格闘技」などの中分類が定められている。
システム制御部2411は、図25に示すような、各ジャンルとそれに対応する動作設定レジスタ800の設定値との組合わせのテーブルを保持しておき、このテーブルを参照することにより、番組のジャンルに応じて動画像符号化装置1903の動作を設定する。
図25の例では、大分類ジャンル「ニュース/報道」では、中分類ジャンルに依らず、動作設定レジスタ800におけるビットフィールドNF、FA、MV、FAM、MVMを1に、その他を0に設定することで、符号化前処理として、ノイズ除去処理、顔検出処理、拡張動き予測処理を全て行っている。ただし顔検出処理と拡張動き予測処理とは、両方とも処理量を少なくする(FAM=MVM=1)ことで両方の処理を行っている。これはニュースや報道ではキャスターの顔がシーンの多くを占める可能性がある上、ニュース素材によっては動きの大きいシーンが出現すること(スポーツのニュース等)を考慮した設定である。
同様に大分類ジャンル「スポーツ」では、さらに個々の中分類ジャンル(「スポーツニュース」、「野球」、「サッカー」、「ゴルフ」等)に対して動作設定レジスタ800のビットフィールド値を定めている。例えば「スポーツニュース」では、「ニュース/報道」と同じ設定とし、顔検出処理と拡張動き予測処理との両方を行うように設定している。一方、「野球」「サッカー」「ゴルフ」「球技全般」「相撲・格闘技」では、符号化前処理としては顔検出処理を行わず(FA=0)に、拡張動き予測を優先して行うよう設定している(MV=1,MVM=0)。これは、上記のスポーツ番組では動きが大きいシーンが多くを占める可能性が高いことを考慮した設定である。上記の、個々のジャンルに応じた動作設定レジスタ800の設定値は、ユーザが任意に調整できることが望ましい。
以上のように、デジタル放送信号に含まれる番組ジャンル情報を利用し、個々のジャンルに対して動画像符号化装置の符号化前処理の設定値を予め決めておくことにより、番組のジャンルに応じて適切な符号化処理を行うことができるため、録画画質を改善できる。
また番組のジャンルのみならず、SIに含まれる番組のタイトルや番組概要、番組詳細情報に含まれる文字列をキーワードとして動作設定レジスタ800のフィールド値を設定することも可能である。例えば、番組タイトルに「プロ野球」という文字列が含まれる場合には、符号化前処理として拡張動き予測モードを優先させるような設定(例えばNF=MV=1,その他のフィールドを0とする)になるように、システム制御部2411に設定しておく。このような設定を次々に追加できることが望ましい。
このように、キーワードによって符号化前処理の設定を行うことができるため、番組に応じてユーザの好みの録画設定を行うことができる。
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
1、2:動画像符号化装置
3、4、5:動画像記録装置
6:放送受信記録装置
10、11:動画像符号化器
100:全体制御部
101:符号化前処理部
102:ノイズ除去処理部
103:顔検出処理部
104:拡張動き予測部
105:画像符号化処理部
106:動き予測処理部
110:可変長符号化処理部
114:プロセッサ
116:外部メモリ
119:内部メモリ
401:積分画像生成部
402:テンプレートマッチング部
403:拡張動き予測処理部1
404:拡張動き予測処理部2
800:動作設定レジスタ
3、4、5:動画像記録装置
6:放送受信記録装置
10、11:動画像符号化器
100:全体制御部
101:符号化前処理部
102:ノイズ除去処理部
103:顔検出処理部
104:拡張動き予測部
105:画像符号化処理部
106:動き予測処理部
110:可変長符号化処理部
114:プロセッサ
116:外部メモリ
119:内部メモリ
401:積分画像生成部
402:テンプレートマッチング部
403:拡張動き予測処理部1
404:拡張動き予測処理部2
800:動作設定レジスタ
Claims (14)
- 動き予測処理を用いて画像データの符号化処理を行なう符号化処理部、前記符号化処理部による符号化処理の前処理を行なう符号化前処理部、及び制御部を有し、
前記制御部は、符号化前処理部による処理内容と処理量を指定する制御データを受取り、受取った制御データに基づいて前記符号化前処理部及び符号化処理部を制御し、前記符号化前処理部による処理を不要とするときには符号化処理部を符号化前処理部から独立して動作させ、前記符号化前処理部による処理を必要とするときには前記符号化前処理部による処理結果を前記符号化処理部に渡して継続処理させる、動画像符号化装置。 - 前記制御部は、前記前記制御データが書換え可能に設定される制御レジスタを有する、請求項1記載の動画像符号化装置。
- 前記制御レジスタにピクチャ単位で前記制御データを設定可能なプロセッサを更に有する、請求項2記載の動画像符号化装置。
- 前記符号化前処理部は、前処理として顔検出処理を行う、請求項2記載の動画像符号化装置。
- 前記符号化前処理部は、前処理として画像符号化処理部が行う動き探索よりも粗い探索を行う、請求項2記載の動画像符号化装置。
- 前記符号化前処理部は、前処理として、画像符号化処理部が行う動き探索と同じ探索処理を、ピクチャ内で画像符号化処理部と分担して行う、請求項2記載の動画像符号化装置。
- 符号化前処理部は、並列動作する複数のプロセッサユニットを有する、請求項2に記載の動画像符号化装置。
- 前記制御部は、前記画像符号化処理部による処理結果に応じて、前記符号化前処理部で行われる処理内容と処理量を変更する、請求項2記載の動画像符号化装置。
- 前記制御レジスタは、前記処理量の変更の可否を決定する制御データが書換え可能に設定される記憶領域を有する、請求項8記載の動画像符号化装置。
- 制御回路は、符号化前処理部で行われる処理内容と処理量の組み合わせが、予め禁止されたものであるとき、前記プロセッサにエラー信号を出力する、請求項3記載の動画像符号化装置。
- 撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部とを有する動画像記録装置であって、
前記システム制御部は、前記動画像符号化装置の符号化前処理部で処理可能な処理の選択肢を前記表示部に表示し、その選択肢の中で操作部により選択された処理に応じて前記動画像符号化装置に前記制御データを設定する、動画像記録装置。 - 撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部と、バッテリ電源部とを有する動画像記録装置であって、
前記システム制御部は、バッテリ電源部のバッテリ残量に応じて、前記動画像符号化装置に、符号化前処理部による処理の動作周波数を低くし、又は前記符号化前処理部の動作を停止させる制御データを設定する、動画像記録装置。 - 撮像素子と、前記撮像素子で撮像した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、表示部と、操作部と、システム制御部と、加速度センサとを有する動画像記録装置であって、
前記システム制御部は、前記加速度センサの出力によって得られる動き量が大きいときに、前記動画像符号化装置に、動き予測処理の処理時間を増やすようにする制御データを設定する、動画像記録装置。 - チューナ部と、前記チューナ部で受信した動画像データを符号化する請求項1記載の動画像符号化装置と、符号化されたデータを記録媒体に記録する記録部と、前記チューナ部で受信した番組情報を管理する番組情報管理部と、を有する動画像記録装置であって、
前記番組情報管理部は、受信された番組情報に基づいて、前記動画像符号化装置に、符号化前処理部による処理内容と処理量を決定するための制御データを設定する、動画像記録装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008134048A JP2009284208A (ja) | 2008-05-22 | 2008-05-22 | 動画像符号化装置及び動画像記録装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008134048A JP2009284208A (ja) | 2008-05-22 | 2008-05-22 | 動画像符号化装置及び動画像記録装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009284208A true JP2009284208A (ja) | 2009-12-03 |
Family
ID=41454202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008134048A Withdrawn JP2009284208A (ja) | 2008-05-22 | 2008-05-22 | 動画像符号化装置及び動画像記録装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009284208A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013094389A1 (ja) * | 2011-12-22 | 2013-06-27 | 株式会社メガチップス | 画像処理装置 |
WO2013094388A1 (ja) * | 2011-12-22 | 2013-06-27 | 株式会社メガチップス | 画像処理装置 |
JP2013171435A (ja) * | 2012-02-21 | 2013-09-02 | Nippon Telegr & Teleph Corp <Ntt> | サービス提供システム、サービス提供方法、リソースマネージャ、プログラム |
JP2014529256A (ja) * | 2011-09-30 | 2014-10-30 | インテル コーポレイション | ビデオ符号化パイプラインのためのシステム、方法及びコンピュータプログラム |
JP2015119335A (ja) * | 2013-12-18 | 2015-06-25 | Kddi株式会社 | 動き変化量に応じて撮影動画像のフレームを間引く端末、システム、プログラム及び方法 |
WO2016047375A1 (ja) * | 2014-09-24 | 2016-03-31 | 株式会社日立情報通信エンジニアリング | 動画像符号化装置、動画像復号装置、および動画像符号化・復号化方法 |
-
2008
- 2008-05-22 JP JP2008134048A patent/JP2009284208A/ja not_active Withdrawn
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014529256A (ja) * | 2011-09-30 | 2014-10-30 | インテル コーポレイション | ビデオ符号化パイプラインのためのシステム、方法及びコンピュータプログラム |
WO2013094389A1 (ja) * | 2011-12-22 | 2013-06-27 | 株式会社メガチップス | 画像処理装置 |
WO2013094388A1 (ja) * | 2011-12-22 | 2013-06-27 | 株式会社メガチップス | 画像処理装置 |
JP2013132002A (ja) * | 2011-12-22 | 2013-07-04 | Mega Chips Corp | 画像処理装置 |
JP2013132003A (ja) * | 2011-12-22 | 2013-07-04 | Mega Chips Corp | 画像処理装置 |
US9443319B2 (en) | 2011-12-22 | 2016-09-13 | Megachips Corporation | Image processor for motion searches |
US9454826B2 (en) | 2011-12-22 | 2016-09-27 | Megachips Corporation | Image processor for motion searches |
JP2013171435A (ja) * | 2012-02-21 | 2013-09-02 | Nippon Telegr & Teleph Corp <Ntt> | サービス提供システム、サービス提供方法、リソースマネージャ、プログラム |
JP2015119335A (ja) * | 2013-12-18 | 2015-06-25 | Kddi株式会社 | 動き変化量に応じて撮影動画像のフレームを間引く端末、システム、プログラム及び方法 |
WO2016047375A1 (ja) * | 2014-09-24 | 2016-03-31 | 株式会社日立情報通信エンジニアリング | 動画像符号化装置、動画像復号装置、および動画像符号化・復号化方法 |
JP2016066850A (ja) * | 2014-09-24 | 2016-04-28 | 株式会社日立情報通信エンジニアリング | 動画像符号化装置、動画像復号装置、および動画像符号化・復号化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8019169B2 (en) | Image coding apparatus, image decoding apparatus, image processing apparatus and methods thereof | |
EP2202748B1 (en) | Reproducing apparatus using slow motion in a region of interest ROI in a video bitstream. | |
KR101488548B1 (ko) | 비디오 인덱싱 방법, 및 비디오 인덱싱 디바이스 | |
US7899260B2 (en) | Method and apparatus for generating thumbnail of digital image | |
US7193660B2 (en) | Image processing apparatus | |
US20090103630A1 (en) | Image processing device | |
US8218949B2 (en) | Video information recording device, video information recording method, and recording medium containing the video information recording program | |
WO2006054387A1 (ja) | 手ぶれ補正装置 | |
JP2007281542A (ja) | デジタル放送受信装置 | |
KR20040069210A (ko) | 코딩 정보 및 로컬 공간 특징을 이용한 디지털 비디오신호들의 후처리에서의 선명도 향상 | |
JP2006217343A (ja) | 信号処理装置および録画方法 | |
US8363726B2 (en) | Electronic apparatus, motion vector detecting method, and program therefor | |
JP2009284208A (ja) | 動画像符号化装置及び動画像記録装置 | |
US7957604B2 (en) | Moving image coding apparatus, moving image decoding apparatus, control method therefor, and computer-readable storage medium | |
US8165217B2 (en) | Image decoding apparatus and method for decoding prediction encoded image data | |
JP2004173011A (ja) | 画像信号の処理装置および処理方法、それに使用される係数データの生成装置および生成方法、並びに各方法を実行するためのプログラム | |
JP2007122232A (ja) | 画像処理装置及びプログラム | |
JP2005525014A (ja) | 符号化されたデジタルビデオのためのシャープネスエンハンスメントのシステムおよび方法 | |
JP2006311079A (ja) | 画像ビットストリーム変換装置 | |
JP4023324B2 (ja) | 透かし埋め込み及び画像圧縮部 | |
KR20030005219A (ko) | 비디오 개선을 위한 코딩 정보에 기초한 유용성 메트릭제공 방법 및 장치 | |
US8300692B2 (en) | Moving picture coding method, moving picture decoding method, moving picture coding device, and moving picture decoding device | |
US7650031B2 (en) | Method and system for detecting black frames in a sequence of frames | |
US7388620B2 (en) | Method and system for pan-scan using motion vectors presentation | |
JP2009218965A (ja) | 画像処理装置、それを搭載した撮像装置、および画像再生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20100527 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110802 |