(57)【要約】【課題】ハードウェアの周波数アップ、アクセスの間引きを行わないで動画像を圧縮符号化できるようにする。【解決手段】所定数の画素から構成される符号化対象のブロック単位で符号化を行う符号化動作を制御するプロセッサを備えた動画像符号化装置において、前記プロセッサが、映像の同期信号を監視する手段と、前記符号化動作を制御する際のレジスタアクセスを監視する手段と、前記同期信号監視手段が監視する前記同期信号の期間に、前記レジスタアクセス監視手段が監視するレジスタアクセスが完了するか否かを判断する手段と、前記レジスタアクセス完了判定手段の判断結果に応じてレジスタアクセスを制御する手段とを備え、レジスタのアクセス数が多く、同期期間に当該フレームの符号化処理が間に合わない場合には、符号化開始後に設定可能なレジスタ設定は符号化開始後に行うようにすることで、画質を良好に保ったまま符号化処理の破綻を防ぐようにする。【選択図】図３
2014075708.tif 000002
【特許請求の範囲】
【請求項１】
所定数の画素から構成される符号化対象のブロックの単位で画面内を行列状に分割し、前記ブロックの単位で符号化を行う符号化動作を制御するプロセッサを備えた動画像符号化装置において、
前記プロセッサは、
映像の同期信号を監視する同期信号監視手段と、
前記符号化動作を制御する際のレジスタアクセスを監視するレジスタアクセス監視手段と、
前記同期信号監視手段が監視する前記同期信号の期間に、前記レジスタアクセス監視手段が監視するレジスタアクセスが完了するか否かを判断するレジスタアクセス完了判定手段と、
前記レジスタアクセス完了判定手段の判断結果に応じてレジスタアクセスを制御するレジスタアクセス制御手段とを有し、
前記レジスタアクセス制御手段は、前記同期信号監視手段と前記レジスタアクセス監視手段の監視状態に応じて、前記レジスタアクセスの中で特定レジスタのアクセスを符号化開始後に行うように制御することを特徴とする動画像符号化装置。
【請求項２】
前記特定レジスタは、１つ以上の前記ブロックを単位としたブロックユニットの目標符号量であることを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記特定レジスタは、１つ以上の前記ブロックを単位としたブロックユニットの発生符号量であることを特徴とする請求項１に記載の動画像符号化装置。
【請求項４】
前記特定レジスタは、１つ以上の前記ブロックを単位としたブロックユニットの符号化難易度であることを特徴とする請求項１に記載の動画像符号化装置。
【請求項５】
前記特定レジスタは、１つ以上の前記ブロックを単位としたブロックユニットの動き探索結果であることを特徴とする請求項１に記載の動画像符号化装置。
【請求項６】
前記レジスタアクセス制御手段は、前記同期信号の周期に応じて前記特定レジスタを変更することを特徴とする請求項１〜５の何れか１項に記載の動画像符号化装置。
【請求項７】
前記レジスタアクセス制御手段は、前記映像の解像度に応じて前記特定レジスタを変更することを特徴とする請求項１〜６の何れか１項に記載の動画像符号化装置。
【請求項８】
前記レジスタアクセス制御手段は、前記プロセッサのクロック周波数に応じて前記特定レジスタを変更することを特徴とする請求項１〜７の何れか１項に記載の動画像符号化装置。
【請求項９】
所定数の画素から構成される符号化対象のブロックの単位で画面内を行列状に分割し、前記ブロックの単位で符号化を行う符号化動作をプロセッサにより制御する動画像符号化方法において、
前記プロセッサは、
映像の同期信号を監視する同期信号監視工程と、
前記符号化動作を制御する際のレジスタアクセスを監視するレジスタアクセス監視工程と、
前記同期信号監視工程が監視する前記同期信号の期間に、前記レジスタアクセス監視工程が監視するレジスタアクセスが完了するか否かを判断するレジスタアクセス完了判定工程と、
前記レジスタアクセス完了判定工程の判断結果に応じてレジスタアクセスを制御するレジスタアクセス制御工程とを実行し、
前記レジスタアクセス制御工程は、前記同期信号監視工程と前記レジスタアクセス監視工程の監視状態に応じて、前記レジスタアクセスの中で特定レジスタのアクセスを符号化開始後に行うように制御することを特徴とする動画像符号化方法。
【請求項１０】
前記特定レジスタは、１つ以上の前記ブロックを単位としたブロックユニットの目標符号量であることを特徴とする請求項９に記載の動画像符号化方法。
【請求項１１】
前記特定レジスタは、１つ以上の前記ブロックを単位としたブロックユニットの発生符号量であることを特徴とする請求項９に記載の動画像符号化方法。
【請求項１２】
前記特定レジスタは、１つ以上の前記ブロックを単位としたブロックユニットの符号化難易度であることを特徴とする請求項９に記載の動画像符号化方法。
【請求項１３】
前記特定レジスタは、１つ以上の前記ブロックを単位としたブロックユニットの動き探索結果であることを特徴とする請求項９に記載の動画像符号化方法。
【請求項１４】
前記レジスタアクセス制御工程は、前記同期信号の周期に応じて前記特定レジスタを変更することを特徴とする請求項９〜１３の何れか１項に記載の動画像符号化方法。
【請求項１５】
前記レジスタアクセス制御工程は、前記映像の解像度に応じて前記特定レジスタを変更することを特徴とする請求項９〜１４の何れか１項に記載の動画像符号化方法。
【請求項１６】
前記レジスタアクセス制御工程は、前記プロセッサのクロック周波数に応じて前記特定レジスタを変更することを特徴とする請求項９〜１５の何れか１項に記載の動画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は動画像符号化装置及び動画像符号化方法に関し、特に、動画像データを圧縮符号化するために用いて好適な技術に関するものである。
【背景技術】
【０００２】
近年、デジタルビデオカメラやハードディスクレコーダーなど、動画像を記録できるデジタル機器が普及している。これらのデジタル機器では、情報量の多い動画像を容量の制限されたフラッシュメモリやハードディスクといった記録メディアに効率的に記録するため、動画像データの圧縮符号化を行っている。代表的な動画像圧縮符号化方式にMPEG2やH.264が挙げられる。
【０００３】
これらの動画像圧縮符号化方式では、１フレームまたは１フィールドをマクロブロック（以下、MB）と呼ばれる所定画素数の領域に分割し、このマクロブロックを単位にして動き補償予測やDCT変換処理や量子化、エントロピー符号化を施す。また、これらの動画像圧縮符号化方式では、効率的に符号化を行い、画質を向上させるため、１MBライン毎、或いは、所定数のMBを一つの単位としたMBユニット毎に制御を行う方法が開示されている（特許文献１、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１８９３１１号公報
【特許文献２】特開２００７−２３５７０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１、特許文献２に記載の技術を用いてリアルタイムに動画像を記録しようとすると、ASIC（Application Specific Integrated Circuit）やFPGA（Field Programmable Gate Array）と呼ばれる専用ハードウェアを用いて行う場合が殆どである。これらの専用ハードウェアを用いて、符号化を行う場合、内蔵されたＣＰＵでMBライン毎やMBユニット毎に目標符号量や符号化難易度などの画質用パラメータ設定を行うためにレジスタへのリードアクセスやライトアクセスを行うことが必要になる。
【０００６】
そのため、近年のHD(High Definition)画像やそれ以上の解像度に対して、特許文献１、特許文献２に記載の技術を用いた場合、ＣＰＵでのレジスタへのリードアクセスやライトアクセスが多く発生してしまう。そのため、動画像の垂直同期信号（以下、V期間）に１ピクチャの処理が間に合わないといった課題があった。
【０００７】
前述の課題の解決方法として、ハードウェアの周波数アップや、複数MBライン、複数MBユニットを単位として同じ値を使用することでアクセス数を削減するといった方法も考えられる。しかしながら、このような方法により処理すると、消費電力の増加、画質の劣化といった新たな課題が発生してしまい、必ずしも最良の解決手段ではなかった。
本発明は前述の問題点に鑑み、ハードウェアの周波数アップ、アクセスの間引きを行わないで動画像を圧縮符号化できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の動画像符号化装置は、所定数の画素から構成される符号化対象のブロックの単位で画面内を行列状に分割し、前記ブロックの単位で符号化を行う符号化動作を制御するプロセッサを備えた動画像符号化装置において、前記プロセッサは、映像の同期信号を監視する同期信号監視手段と、
前記符号化動作を制御する際のレジスタアクセスを監視するレジスタアクセス監視手段と、前記同期信号監視手段が監視する前記同期信号の期間に、前記レジスタアクセス監視手段が監視するレジスタアクセスが完了するか否かを判断するレジスタアクセス完了判定手段と、前記レジスタアクセス完了判定手段の判断結果に応じてレジスタアクセスを制御するレジスタアクセス制御手段とを有し、前記レジスタアクセス制御手段は、前記同期信号監視手段と前記レジスタアクセス監視手段の監視状態に応じて、前記レジスタアクセスの中で特定レジスタのアクセスを符号化開始後に行うように制御することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ハードウェアの周波数アップ、アクセスの間引きを行わずに、良好な画質を維持したまま動画像を圧縮符号化することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１の実施形態を示し、特定のレジスタアクセスを符号化開始後に行う場合の手順を示すフローチャートである。
【図２】第１の実施形態を示し、（ａ）は特定のレジスタアクセスを符号化開始前に行う場合を示すタイミングチャートであり、（ｂ）は特定のレジスタアクセスを符号化開始後に行う場合を示すタイミングチャートである。
【図３】符号化装置の概略構成を示すブロック図である。
【図４】第２の実施形態を示し、特定のレジスタアクセスを符号化開始後に行う場合の手順を示すフローチャートである。
【図５】第２の実施形態を示し、制御タイミングを示すタイミングチャートである。
【図６】第２の実施形態に係るレジスタ設定の分割領域を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照しながら本発明の好適な実施形態を説明する。
（第１の実施形態）
本発明の第１の実施形態を説明するにあたり、図３を用いて本発明の動画像符号化装置の全体構成を説明する。
【００１２】
図３は、本発明が実施、若しくは適応されて好適な符号化装置３００の全体構成を示すブロック図である。
図３において、フレーム並び替え分割部３０１は、符号化装置３００に入力される動画像を符号化ピクチャタイプに応じた並べ替えを行い、所定数の画素から構成される符号化対象のブロック（マクロブロックと称す）の単位に画面内を行列状に分割する。
【００１３】
減算器３０２は、フレーム並び替え分割部３０１から入力された符号化対象画像のデータと後述する予測画像データとの減算を行い、画像残差データとして直交変換部３０３に出力する。直交変換部３０３は、減算器３０２から出力された画像残差データに直交変換処理を行い、DCT係数を量子化部３０４に出力する。
【００１４】
量子化部３０４は、DCT係数を所定の量子化パラメータを用いて量子化し、エントロピー符号化部３１５へ出力する。また、量子化部３０４で量子化されたDCT係数は予測画像データの生成にも使われるため、逆量子化部３０５にも出力する。逆量子化部３０５は、量子化部３０４で量子化されたDCT係数を逆量子化する。
【００１５】
逆直交変換部３０６は、逆量子化部３０５で逆量子化されたDCT係数を逆直交変換し、ローカルデコード画像を出力する。加算器３０７は、ローカルデコード画像と後述する予測画像データを加算してフレームメモリ３０８に出力する。また、ローカルデコード画像と後述する予測画像データを加算したものにデブロッキングフィルタ３０９でフィルタ処理を行い、フレームメモリ３１０に出力する。
【００１６】
イントラ予測部３１１は、フレームメモリ３０８に保存された画像を用いてフレーム内予測処理を行い、予測画像データを生成する。また、インター予測部３１２はフレームメモリ３１０に保存された画像を用いて動き検出部３１３によって検出された動きベクトル情報に基づいてフレーム間予測処理を行い、予測画像データを生成する。
【００１７】
動き検出部３１３は、マクロブロック毎に動きベクトルを検出し、検出した動きベクトル情報をインター予測部３１２とエントロピー符号化部３１５、ストリーム送信部３１７へ出力する。スイッチ３１４は、イントラ予測、インター予測のどちらを用いるかを選択するための選択部であり、イントラ予測部３１１からの出力とインター予測部３１２からの出力の一方を選択して、選択された予測画像データを減算器３０２、加算器３０７へ出力する。
【００１８】
エントロピー符号化部３１５は、入力されたデータをエントロピー符号化して、ストリームバッファ３１６に出力する。ストリームバッファ３１６は、エントロピー符号化部３１５から出力されたデータを蓄積し、ストリーム送信部３１７の指示に従いデータを出力する。ストリーム送信部３１７は、目標ビットレートに従ったビットレートで符号化データを出力する。プロセッサ部であるＣＰＵ３１８は、後述する同期信号監視部３１８１、レジスタアクセス監視部３１８２、レジスタアクセス完了判定部３１８３、レジスタアクセス制御部３１８４を有し、符号化装置３００の符号化動作を制御統括する。
【００１９】
図１は、本発明の第１の実施形態を示し、特定のレジスタアクセスを符号化開始後に行う場合の手順を示すフローチャートである。また、図２は、制御タイミングを示す図であり、図２（ａ）は、特定のレジスタアクセスを符号化開始前に行う場合を示すタイミングチャートであり、図２（ｂ）は、特定のレジスタアクセスを符号化開始後に行う場合を示すタイミングチャートである。
【００２０】
始めに、Ｓ１００において、ＣＰＵ３１８は、符号化完了タイミング２００を待ってＳ１０１に進む。
Ｓ１０１において、ＣＰＵ３１８は、レジスタリードタイミング２０１で、次のピクチャの符号化に必要な前のピクチャの符号化結果である発生符号量、符号化難易度、動き探索結果に関して、マクロブロック（MB）ライン毎にレジスタリードし、Ｓ１０２に進む。
【００２１】
Ｓ１０２においては、ＣＰＵ３１８は、符号化設定算出タイミング２０２で、発生符号量と符号化難易度から次の符号化ピクチャの１MB毎の目標符号量を算出し、Ｓ１０３に進む。
Ｓ１０３においては、ＣＰＵ３１８は、レジスタライト開始タイミング２０３で、次のピクチャの符号化開始前に必要な１MBライン毎の目標符号量と動き探索予測に関してレジスタライトを開始してＳ１０４に進む。
【００２２】
Ｓ１０４においては、ＣＰＵ３１８が有するレジスタアクセス完了判定部３１８３による完了判定を行う。そして、レジスタアクセスを含めた１ピクチャの圧縮符号化処理が映像同期信号期間内（１周期内）に間に合わないとの判断結果である場合、符号化開始タイミング２０４でＳ１０５に進む。また、間に合うとの判断結果である場合、符号化開始タイミング２０５でＳ１０７に進む。この判断は、ＣＰＵ３１８が有する映像の同期信号の期間を監視する同期信号監視部３１８１、レジスタアクセスの進行状況を監視するレジスタアクセス監視部３１８２の監視状態の情報に基づいて行う。
【００２３】
Ｓ１０５では、レジスタアクセス制御部３１８４は、MBライン毎の目標符号量と動き探索予測のレジスタライトを画面内の所定MBライン分だけ設定する。そして、特定レジスタのレジスタライトはせずに、ピクチャの圧縮符号化を開始するように制御し、Ｓ１０６に進む。
【００２４】
Ｓ１０６では、レジスタアクセス制御部３１８４は、符号化開始後に、残りのレジスタライトタイミング２０６に示すように、該当箇所の圧縮符号化が行われる前に残りのMBライン毎の１つ以上のブロックを単位としたブロックユニットの目標符号量と動き探索予測のレジスタライトを行い、このフローを終了する。
【００２５】
Ｓ１０７においては、ＣＰＵ３１８は、ピクチャの符号化を開始し、このフローを終了する。
なお、本実施形態ではレジスタライトを例に説明したが、レジスタリードでも同様のことが可能である。その場合、符号化完了タイミング２００前に、既にレジスタリード可能なMBライン毎の発生符号量、符号化難易度、動き探索結果をレジスタリードし、符号化完了後に残りをレジスタリードすることになる。
なお、本実施形態ではMBラインに関する例を説明したが、MBユニットでも同様のことが可能である。
【００２６】
以上、説明したように、本実施形態では、同期信号監視部３１８１とレジスタアクセス監視部３１８２の情報から映像同期信号期間内に符号化が間に合うか間に合わないかをレジスタアクセス完了判定部３１８３により判断する。そして、符号化開始前に必要な設定は符号化開始前にレジスタライトを行い、符号化開始後に設定可能なレジスタは符号化開始後にレジスタライトを行うことで、良好な画質を保ったまま符号化することが可能である。
【００２７】
（第２の実施形態）
第１の実施形態では、映像の同期信号と画面の解像度が固定である場合を説明したが、本実施形態では、映像の同期信号と画面の解像度が可変である場合を説明する。なお、本発明が実施若しくは適応されて好適な符号化装置の全体構成を示すブロック図は、前述した第１の実施形態と同じなので省略する。
【００２８】
図４は、本発明の第２の実施形態を示し、特定のレジスタアクセスを符号化開始後に行う場合の手順を示すフローチャートである。図５は、本発明の一実施形態に係る制御タイミングを示すタイミングチャートである。
【００２９】
始めにＳ４００において、レジスタアクセス完了判定部３１８３は、符号化設定算出タイミング５００で、解像度、フレームレートからレジスタアクセスを含めた圧縮符号化処理が映像同期信号期間内に間に合うかどうかを判断する。間に合うと判断した場合、Ｓ４０１に進み、間に合わないと判断した場合、Ｓ４０２に進む。
【００３０】
Ｓ４０１においては、解像度、フレームレートからMBライン毎のレジスタライトをピクチャの符号化開始後、MBライン毎のレジスタリードをピクチャの完了前に行う必要がないので、何も設定せずにＳ４０７に進む。
【００３１】
Ｓ４０２においては、レジスタアクセス完了判定部３１８３は、符号化設定算出タイミング５００で、MBライン毎にレジスタライトが必要な目標符号量と動き探索予測に関して、一部をピクチャの符号化開始タイミング５０１の後に行う。そして、レジスタアクセスを含めた圧縮符号化処理が映像同期信号期間内に間に合うかどうか判断する。間に合うと判断した場合は、Ｓ４０３に進み、間に合わないと判断した場合は、Ｓ４０４に進む。
【００３２】
Ｓ４０３においては、レジスタアクセス制御部３１８４は、MBライン毎にレジスタライトが必要な目標符号量と動き探索予測に関して、解像度、フレームレートに応じた分割値を設定し、Ｓ４０７に進む。
【００３３】
Ｓ４０４においては、レジスタアクセス完了判定部３１８３は、符号化設定算出タイミング５００で、MBライン毎にレジスタリードが必要な発生符号量、符号化難易度、動き探索結果に関して、一部をピクチャの符号化完了タイミング５０２の前に行う。そして、レジスタアクセスを含めた圧縮符号化処理が映像同期信号期間内に間に合うかどうか判断する。そして、間に合うと判断した場合、Ｓ４０５に進み、間に合わないと判断した場合、Ｓ４０６に進む。
【００３４】
Ｓ４０５においては、レジスタアクセス制御部３１８４は、MBライン毎にレジスタリードが必要な発生符号量、符号化難易度、動き探索結果に関して、解像度、フレームレートに応じた分割値を設定し、Ｓ４０７に進む。
【００３５】
Ｓ４０６において、レジスタアクセス制御部３１８４は、符号化設定算出タイミング５００で、何MBライン毎に１回のレジスタライト、レジスタリードを行うことでレジスタアクセスを含めた圧縮符号化処理が映像同期信号期間内に間に合うかどうか算出する。具体的に、MBライン毎にレジスタライト、レジスタリードが必要となる目標符号量、動き探索予測、発生符号量、符号化難易度、動き探索結果に関して算出し、Ｓ４０７に進む。
【００３６】
Ｓ４０７においては、レジスタアクセス制御部３１８４は、レジスタライト分割値、レジスタリード分割値、レジスタアクセス間引き情報に従い、圧縮符号化の制御を行い、このフローを終了する。
【００３７】
本実施形態では、レジスタライト分割が必要な場合、レジスタアクセス制御部３１８４が、レジスタライト５０３のタイミングに示すように、符号化開始タイミング５０１の後に一部の目標符号量、動き探索予測のレジスタライトを行うように圧縮符号化を制御する。
【００３８】
レジスタリード分割が必要な場合は、レジスタアクセス制御部３１８４は、レジスタリード５０４のタイミングに示すように、符号化完了タイミング５０２の前に一部の発生符号量、符号化難易度、動き探索結果のレジスタリードを行うように圧縮符号化を制御する。
【００３９】
図６は、第２の実施形態に係るレジスタ設定の分割領域を示す図である。
図６において、６００は１ピクチャ、６０１は所定数の画素から構成されるMB、６０２はそのマクロブロックを水平方向にまとめたMBラインである。レジスタアクセス完了判定部３１８３は、解像度、フレームレートから、MBライン毎にレジスタライト、レジスタリードが必要なものに関して分割処理する。
図６においては、白抜きの矢印で示すように、画面内の所定位置より上のMBラインと所定位置より下のMBラインに分割し、レジスタライト５０３、レジスタリード５０４に示すように符号化開始前後、符号化完了前後で分割処理する。
【００４０】
なお、本実施形態ではMBラインに関する例を説明したが、MBユニットでも同様のことが可能である。また、本実施形態では解像度、フレームレートに応じた例を説明したが、符号化装置３００、ＣＰＵ３１８が使用するクロック周波数においても、同様のことが可能である。その場合は、解像度、或いは、フレームレートがN倍になった場合と、クロック周波数が1/Nになった場合が同じ状態である。
【００４１】
以上、説明したように、本実施形態では、解像度、フレームレートから映像同期信号期間内にレジスタアクセスを含めた圧縮符号化処理が間に合うか間に合わないかを判断する。そして、符号化開始前に必要な設定は符号化開始前にレジスタライトを行い、符号化開始後に設定可能なレジスタは符号化開始後にレジスタライトを行うことで、良好な画質を保ったまま符号化することが可能である。
なお、本発明は、本発明の技術思想の範囲内において、上記実施形態に限定されるものではなく、対象となる回路形態により適時変更されて適応するべきものである。
【００４２】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（コンピュータプログラム）を、ネットワーク又は各種のコンピュータ読み取り可能な記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００４３】
３００  符号化装置
３０１  フレーム並び替え分割部
３０２  減算器
３０３  直交変換部
３０４  量子化部
３０５  逆量子化部
３０７  加算器
３０６  逆直交変換部
３０８、３１０  フレームメモリ
３０９  デブロッキングフィルタ
３１１  イントラ予測部
３１２  インター予測部
３１３  動き検出部
３１４  スイッチ
３１５  エントロピー符号化部
３１６  ストリームバッファ
３１７  ストリーム送信部
３１８  ＣＰＵ
３１８１  同期信号監視部
３１８２  レジスタアクセス監視部
３１８３  レジスタアクセス完了判定部
３１８４  レジスタアクセス制御部
【図１】
2014075708.tif 000003
【図２】
2014075708.tif 000004
【図３】
2014075708.tif 000005
【図４】
2014075708.tif 000006
【図５】
2014075708.tif 000007
【図６】
2014075708.tif 000008