(57)【要約】【課題】高フレームレートで撮像された符号化画像ストリームのデータ量は、通常のフレームレートで撮像された符号化画像ストリームのデータ量より大きくなってしまう。【解決手段】符号化装置１００は、動画像の撮像中において、所定の閾値を超える移動量、速さまたは加速度で本装置が移動していることを検出することにより、フレームレートを低下させる。または、撮像したピクチャの記録を停止する。符号化装置１００は、撮像した複数のピクチャにわたる動きベクトルの変化を参照し、所定の閾値を超える移動量、速さまたは加速度で本装置が移動しているか否かを判定する。【選択図】図４
2008085860.tif 000002
【特許請求の範囲】
【請求項１】
動画像の撮像中において、所定の閾値を超える移動量、速さまたは加速度で本装置が移動していることを検出することにより、フレームレートを低下させることを特徴とする画像符号化装置。
【請求項２】
動画像の撮像中において、所定の閾値を超える移動量、速さまたは加速度で本装置が移動していることを検出することにより、撮像したピクチャの記録を停止することを特徴とする画像符号化装置。
【請求項３】
撮像した複数のピクチャにわたる動きベクトルの変化を参照し、前記所定の閾値を超える移動量、速さまたは加速度で本装置が移動しているか否かを判定することを特徴とする請求項１または２に記載の画像符号化装置。
【請求項４】
撮像した複数のピクチャにわたる注目領域の動きベクトルの変化を参照し、判定することを特徴とする請求項３に記載の画像符号化装置。
【請求項５】
本装置の動きを検出するためのセンサの出力を参照し、前記所定の閾値を超える移動量、速さまたは加速度で本装置が移動しているか否かを判定することを特徴とする請求項１または２に記載の画像符号化装置。
【請求項６】
前記所定の閾値を超えない期間、基本フレームレートより高いフレームレートで前記動画像を撮像していることを特徴とする請求項１から５のいずれかに記載の画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像した動画像を符号化するための画像符号化装置に関する。
【背景技術】
【０００２】
デジタルビデオカメラなどが普及してきており、一般ユーザも簡単に動画像を撮像することができるようになってきている。また、デジタルビデオカメラの性能も年々向上しており、毎秒３００コマで撮像可能なＣＭＯＳ（Complementary Metal-Oxide Semiconductor）センサを搭載したものもある。このようなカメラを使用すると、スポーツなど被写体の動きが大きい動画像を撮像する場合でも、高品質なスロー再生などの特殊再生が可能な符号化画像ストリームを生成することができる。
【０００３】
特許文献１は、自動焦点調節装置を備えたカメラにて、被写体の静止、移動に応じて駒速を設定する技術を開示する。
【特許文献１】特開平５−５９３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
毎秒３００コマなど、高フレームレートで撮像された符号化画像ストリームのデータ量は、通常のフレームレートで撮像された符号化画像ストリームのデータ量より大きくなってしまう。特に、携帯型で小型のデジタルビデオカメラではデータ量の削減に対する要求が強くなる。したがって、符号化画像ストリーム中で高品質な画像が要求されない部分ではできるだけデータ量を削減することが望まれる。例えば、ユーザが被写体やシーンを切り替えるために高速なパンニングをした場合、パンニング中に撮像された画像は、高品質な画像が要求されない画像といえる。
【０００５】
本発明はこうした状況に鑑みなされたものであり、その目的は、画像品質の低下を抑制しながら、データ量を削減することができる画像符号化装置を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のある態様の画像符号化装置は、動画像の撮像中において、所定の閾値を超える移動量、速さまたは加速度で本装置が移動していることを検出することにより、フレームレートを低下させる。所定の閾値を超える移動量、速さまたは加速度で本装置が移動していることを検出している期間、フレームレートを低下させてもよい。
【０００７】
この態様によると、高速なパンニングがなされている間など、動画像の品質にあまり影響を与えない期間のフレームレートを低下させることにより、画像品質の低下を抑制しながら、データ量を削減することができる。
【０００８】
本発明の別の態様もまた、画像符号化装置である。この装置は、動画像の撮像中において、所定の閾値を超える移動量、速さまたは加速度で本装置が移動していることを検出することにより、撮像したピクチャの記録を停止する。所定の閾値を超える移動量、速さまたは加速度で本装置が移動していることを検出している期間、その期間に撮像されたピクチャの記録を停止してもよい。「ピクチャ」は符号化の単位であり、その概念にはフレーム、フィールド、ＶＯＰ（Video Object Plane）などが含まれてもよい。撮像したピクチャの記録を停止している間、フレームレートを低下させてもよい。
【０００９】
この態様によると、高速なパンニングがなされている間など、動画像の品質にあまり影響を与えない部分のピクチャの記録を停止することにより、画像品質の低下を抑制しながら、データ量を削減することができる。
【００１０】
撮像した複数のピクチャにわたる動きベクトルの変化を参照し、所定の閾値を超える移動量、速さまたは加速度で本装置が移動しているか否かを判定してもよい。「動きベクトルの変化」を参照して、ピクチャ間におけるマクロブロックの移動量が設定された移動量を超えたか否か判定してもよい。設定された移動量を超えた場合、各ピクチャのマクロブロック間の移動方向の一致度が、設定された一致度を超えるか否か判定してもよい。
【００１１】
撮像した複数のピクチャにわたる注目領域の動きベクトルの変化を参照し、判定してもよい。「注目領域」は、少なくとも顔が含まれる領域であってもよい。「注目領域」は、オートフォーカス制御により合焦された領域に基づいて設定されてもよい。
【００１２】
本装置の動きを検出するためのセンサの出力を参照し、所定の閾値を超える移動量、速さまたは加速度で本装置が移動しているか否かを判定してもよい。「センサ」は本装置の姿勢の変化を角速度で出力してもよい。
【００１３】
所定の閾値を超えない期間、基本フレームレートより高いフレームレートで動画像を撮像していてもよい。「基本フレームレート」は、非変速再生に対応したレートであってもよい。被写体の動きが速い動画像でも、高いフレームレートで撮像すると、高品質なスロー再生に対応することができる。
【００１４】
所定の閾値を超えない期間、撮像した複数のピクチャにわたる動きベクトルの変化を参照し、所定の上限値を上回る場合、フレームレートを高くし、所定の下限値を下回る場合、フレームレートを低くしてもよい。所定の閾値を超えない間、被写体の動きなどに応じて、適応的にフレームレートを切り替えることにより、画像品質の低下を抑制しながら、データ量をさらに削減することができる。
【００１５】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１６】
本発明によれば、画像品質の低下を抑制しながら、データ量を削減することができる。
【発明を実施するための最良の形態】
【００１７】
本発明の実施形態を詳細に説明する前に概要を説明する。ユーザが撮像装置を用いて動画像を撮像しているとき、被写体やシーンを切り替えるために撮像装置を大きく動かす場合がある。切り替え前の被写体やシーンから切り替え後の被写体やシーンまでの期間に撮像された画像は、ユーザが積極的に撮像することを意図した画像ではない。したがって、その期間に撮像された画像は、高品質なスロー再生が可能な程度に高いフレームレートで撮像される必要はない。そこで、本発明の実施形態では、その期間のフレームレートを低下させることにより、データ量を削減する。また、その期間の符号化または記録を停止することにより、データ量を削減する。
【００１８】
図１は、シーンチェンジを含む動画像を記録する際の一般的なコマ数の遷移を示す図である。図１は、野球の試合を撮像した動画像を示す。画像ａは、バッターがバットにボールを当てたが、ボールが前に飛ばず、キャッチャーにキャッチされる寸前のシーンを示す。この間にファーストランナーが盗塁している。そのファーストランナーをセカンドベースでアウトにするため、キャッチャーはボールをキャッチするとセカンドに送球した。この状況を撮像しているユーザは、盗塁が成功したか否かを撮像するため、撮像装置を高速にパンニングして、ホームベース付近のシーンからセカンドベース付近のシーンに切り替えた。
【００１９】
画像ｂは、セカンドベース付近のシーンに切り替えるためにユーザが撮像装置を高速にパンニングしている最中に撮像された画像を示す。画像ｃは、切り替えられたセカンドベース付近のシーンを示す。図１に示すように一般的な処理では、シーンの切り替えに関わらず、フレームレートは一定であり、記録されるコマ数も一定である。
【００２０】
図２は、シーンチェンジを含む動画像を記録する際の本発明の実施形態に係るコマ数の遷移１を示す図である。図２に示す画像も、図１と同じ状況を撮像したものである。高速にパンニングされている期間に撮像された画像ｂは記録されない。したがって、この期間に撮像された画像は符号化されなくてもよい。撮像されたフレーム間の動きベクトルなどの特徴の変化を参照して、高速なパンニングの開始や終了を推定する場合、撮像自体は継続する必要がある。その際、フレームレートを低下させてもよいし、維持してもよい。なお、ジャイロセンサなどを利用して、高速なパンニングの開始や終了を判定する場合、撮像自体を停止してもよい。高速なパンニングが終了したと判断された時点で、画像の記録が再開される。
【００２１】
図２に示すように高速にパンニングしている期間に撮像された画像ｂは大きくぶれており、この期間の画像を再生しても、もともと高品質な画像を得ることができない。また、撮像したユーザの意図を考慮しても、特に必要なシーンとして撮像されたわけではない。よって、上記期間の画像ｂは記録されなくてもよく、その場合、データ量が削減する。
【００２２】
図３は、シーンチェンジを含む動画像を記録する際の本発明の実施形態に係るコマ数の遷移２を示す図である。図３に示す画像も、図１と同じ状況を撮影したものである。高速にパンニングされている期間に撮像された画像ｂを記録する際のコマ数が削減される。その際、フレームレートを低下させてもよい。図３に示した例も、上記期間に撮像された画像ｂを記録する際のコマ数が削減されることにより、データ量が削減する。図２に示した例よりも、シーンチェンジの際の画像は滑らかなものとなる。図１に示した動画像と比較し、動画像全体の品質がほとんど同じでありながら、データ量は少なくなる。
【００２３】
以下、上述した処理を実現するための具体的な実施形態について詳細に説明する。
図４は、実施形態１に係る符号化装置１００を搭載した撮像装置５００の構成図である。これらの構成は、ハードウェア的には、任意のコンピュータのＣＰＵ、メモリ、その他のＬＳＩで実現でき、ソフトウェア的にはメモリにロードされた画像符号化機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【００２４】
撮像装置５００は、撮像部４００および符号化装置１００を備える。撮像部４００は、ＣＣＤ（Charge Coupled Devices）センサやＣＭＯＳセンサなどの固体撮像素子、それを駆動するドライバを備え、撮像した画像を電気信号に変換し、符号化装置１００に出力する。符号化装置１００は、フレーム単位で動画像の入力を受け取り、動画像を符号化し、符号化ストリームを出力する。
【００２５】
本実施形態の符号化装置１００は、国際標準化機関であるＩＳＯ（International Organization for Standardization）／ＩＥＣ（International Electrotechnical Commission）によって標準化されたＭＰＥＧ（Moving Picture Experts Group）シリーズの規格（ＭＰＥＧ−１、ＭＰＥＧ−２およびＭＰＥＧ−４）、電気通信に関する国際標準機関であるＩＴＵ−Ｔ（International Telecommunication Union-Telecommunication Standardization Sector）によって標準化されたＨ．２６ｘシリーズの規格（Ｈ．２６１、Ｈ．２６２およびＨ．２６３）、もしくは両方の標準化機関によって合同で標準化された最新の動画像圧縮符号化標準規格であるＨ．２６４／ＡＶＣ（両機関における正式勧告名はそれぞれMPEG-4 Part 10: Advanced Video CodingとH.264）に準拠して動画像の符号化を行う。
【００２６】
ＭＰＥＧシリーズの規格では、フレーム内符号化を行う画像フレームをＩ（Intra）フレーム、過去のフレームを参照画像として順方向のフレーム間予測符号化を行う画像フレームをＰ（Predictive）フレーム、過去と未来のフレームを参照画像として双方向のフレーム間予測符号化を行う画像フレームをＢフレームという。
【００２７】
一方、Ｈ．２６４／ＡＶＣでは、参照画像として利用できるフレームは、時間の先後を問わず、過去の２枚のフレームを参照画像としてもよく、未来の２枚のフレームを参照画像としてもよい。また、参照画像として利用できるフレームの枚数も問わず、３枚以上のフレームを参照画像として用いることもできる。したがって、ＭＰＥＧ−１／２／４では、Ｂフレームは双方向予測（Bi-directional prediction）フレームのことを指していたが、Ｈ．２６４／ＡＶＣでは、Ｂフレームは、参照画像の時間の先後は問わないため、双予測（Bi-predictive prediction）フレームのことを指すことに留意する。
【００２８】
なお、本願明細書では、フレームとピクチャを同じ意味で用いており、Ｉフレーム、Ｐフレーム、Ｂフレームは、それぞれＩピクチャ、Ｐピクチャ、Ｂピクチャとも呼ばれている。
また、本願明細書では、符号化の単位としてフレームを例に挙げて説明するが、符号化の単位はフィールドであってもよい。また、符号化の単位はＭＰＥＧ−４におけるＶＯＰであってもよい。
【００２９】
ブロック生成部１０は、撮像部４００から入力された画像フレームをマクロブロックに分割する。画像フレームの左上から右下方向の順にマクロブロックが形成される。ブロック生成部１０は生成したマクロブロックを差分器１２および動き補償部６０に供給する。
【００３０】
差分器１２は、ブロック生成部１０から供給される画像フレームがＩフレームであれば、そのままＤＣＴ部２０に出力するが、ＰフレームまたはＢフレームであれば、動き補償部６０から供給される予測画像との差分を計算してＤＣＴ部２０に供給する。
【００３１】
動き補償部６０は、フレームメモリ８０に格納されている過去または未来の画像フレームを参照画像として利用し、ブロック生成部１０から入力されたＰフレームまたはＢフレームの各マクロブロックについて、誤差の最も小さい予測領域を参照画像から探索し、マクロブロックから予測領域へのずれを示す動きベクトルを求める。動き補償部６０は、動きベクトルを用いてマクロブロック毎に動き補償を行い、予測画像を生成する。動き補償部６０は、生成した動きベクトルをフレームレート制御部７０と可変長符号化部９０に供給し、予測画像を差分器１２と加算器１４に供給する。
【００３２】
動き補償部６０では、双方向予測と片方向予測のいずれも適用可能である。動き補償部６０は、片方向予測では、前方参照フレームに対する動きを示す順方向動きベクトルを生成する。双方向予測では、順方向動きベクトルに加えて、後方参照フレームに対する動きを示す逆方向動きベクトルの２つの動きベクトルを生成する。
【００３３】
差分器１２は、ブロック生成部１０から出力される現在の画像、すなわち符号化対象の画像と、動き補償部６０から出力される予測画像との差分を求め、ＤＣＴ部２０に出力する。ＤＣＴ部２０は、差分器１２から与えられた差分画像を離散コサイン変換（ＤＣＴ）し、ＤＣＴ係数を量子化部３０に与える。
【００３４】
量子化部３０は、ＤＣＴ係数を量子化し、可変長符号化部９０に与える。可変長符号化部９０は、動き補償部６０から与えられた動きベクトルとともに差分画像の量子化されたＤＣＴ係数を可変長符号化し、符号化ストリームＣＳを生成する。符号化ストリームＣＳは、メモリカードやハードディスクやＤＶＤなどの記録媒体に記録されるか、ストリーミング配信される。
【００３５】
量子化部３０は、画像フレームの量子化されたＤＣＴ係数を逆量子化部４０に供給する。逆量子化部４０は、与えられた量子化データを逆量子化し、逆ＤＣＴ部５０に与え、逆ＤＣＴ部５０は、与えられた逆量子化データを逆離散コサイン変換する。これにより、符号化された画像フレームが復元される。復元された画像フレームは加算器１４に入力される。
【００３６】
加算器１４は、逆ＤＣＴ部５０から供給される画像フレームがＩフレームであれば、そのままフレームメモリ８０に格納する。加算器１４は、逆ＤＣＴ部５０から供給される画像フレームがＰフレームまたはＢフレームであれば、それは差分画像であるため、逆ＤＣＴ部５０から供給された差分画像と動き補償部６０から供給される予測画像とを加算することにより、元の画像フレームを再構成し、フレームメモリ８０に格納する。
【００３７】
ＰフレームもしくはＢフレームの符号化処理の場合は、上述のように動き補償部６０が動作するが、Ｉフレームの符号化処理の場合は、動き補償部６０は動作せず、ここでは図示しないが、Ｉフレームはフレーム内予測が行われた後、ＤＣＴ部２０に供給される。
【００３８】
フレームレート制御部７０は、所定の条件にしたがいフレームレートを変更する。適応的に変更してもよい。例えば、ユーザが被写体またはシーンを変更するために本撮像装置５００を所定の第１閾値を超える移動量、速さまたは加速度で動かしたとき、フレームレートを低下させる。上記第１閾値は、被写体またはシーンを変更するために加えられた動きであるか否かを判定するための閾値であり、設計者が実験やシミュレーションにより求めた値に設定されることができる。また、ユーザが設定してもよい。
【００３９】
フレームレート制御部７０は、フレームレートの変更とともに、符号化もしくは記録を停止することができる。また、フレームレートの変更と独立して、符号化もしくは記録を停止することができる。また、フレームレート制御部７０は、ブロック生成部１０以降の符号化処理を施すフレーム数を少なくすることができ、また、記録するフレーム数を少なくすることもできる。これらのフレーム数も、フレームレートと独立に制御することができる。これらの処理に先立ち、フレームレート制御部７０は、動き補償部６０から与えられる動きベクトルを参照して、本撮像装置５００に加えられた動きを推測する。以下、具体的に説明する。
【００４０】
図５は、実施形態１に係るフレームレート制御部７０の実施例１を説明する図である。実施例１に係るフレームレート制御部７０は、動きベクトル解析部７２およびフレームレート設定部７８を備える。動きベクトル解析部７２は、移動量検出部７３および移動方向検出部７４を含む。
【００４１】
動きベクトル解析部７２は、動き補償部６０から各マクロブロックの動きベクトルを取得し、解析する。移動量検出部７３は、取得した動きベクトルから、各マクロブロックの移動量を検出する。例えば、各マクロブロックのｘ方向およびｙ方向への移動量を絶対値で表し、フレームごとにすべてのマクロブロックの上記移動量を足し合わせた値（以下、総移動量と表記する）を検出する。移動方向検出部７４は、取得した動きベクトルから、各マクロブロックの移動方向を検出する。
【００４２】
動きベクトル解析部７２は、上記総移動量が所定の第２閾値を超えたか否かを判定する。所定の第２閾値も、設計者が実験やシミュレーションにより求めた値に設定されることができる。撮影用途ごとに異なるモードが搭載されている場合、そのモードごとに第２閾値を変更してもよい。用途ごとに被写体の想定される移動速度が異なるためである。この第２閾値は、上記第１閾値と関連付けられる。すなわち、上記総移動量と、撮像装置５００に加えられた動きとの関係がモデル化され、上記第１閾値が設定されると上記第２閾値が決定される関係にある。上記総移動量が非常に大きい場合、被写体が移動したのではなく、撮像装置５００自体が高速に動かされたとモデル化することができる。
【００４３】
ただし、上記総移動量が非常に大きい場合でも、複数の被写体が高速に移動しているなどの可能性もある。そこで、動きベクトル解析部７２は、各フレームにおける全マクロブロックの移動方向の一致度を判定する。当該一致度が所定の第３閾値を超える場合、撮像装置５００がパンニングされていると推測する。この第３閾値も、設計者が実験やシミュレーションにより求めた値に設定されることができ、上記第１閾値と関連付けられる。大部分のマクロブロックが同じ方向に移動している場合、撮像装置５００自体がその逆の方向にパンニングされていると推測される。
【００４４】
動きベクトル解析部７２は、上述したような判定を複数のフレームに渡って行う。複数のフレームに渡って観測すると、マクロブロックの総移動量やマクロブロックの移動方向の一致度などの各種パラメータの傾向を把握することができる。例えば、パラメータの増減傾向や、パラメータの値が維持される期間や、パラメータが上記第２閾値または第３閾値を超えた回数、頻度などを求めることができる。
【００４５】
動きベクトル解析部７２は、各種パラメータに統計的な処理も施すことができる。例えば、複数のフレームに渡るパラメータに対し、最大値、最小値を排除したり、移動平均処理を行うことにより、異常値を排除することができる。動きベクトル解析部７２は、これらの解析に基づき、上記第１閾値を超える移動量、速さまたは加速度で撮像装置５００が移動したと推測した場合、フレームレート設定部７８にフレームレートの変更を指示する。
【００４６】
フレームレート設定部７８は、動きベクトル解析部７２からの指示に応じて、フレームレートを変更する。例えば、スポーツ撮影などに適した、高品質なスロー再生も可能な高画質モードのフレームレートが３００、通常モードのフレームレートが６０とする。高画質モードで撮影中に、動きベクトル解析部７２が上記第１閾値を超える移動量、速さまたは加速度で撮像装置５００が移動したと判定した場合、フレームレート設定部７８は、フレームレートを３００から６０に変更する。なお、さらにデータ量を削減したい場合、６０未満に変更してもよい。例えば、１にしてもよい。また、フレームレートを６０に変更しつつ、符号化を停止するようブロック生成部１０以降の構成要素に指示してもよい。
【００４７】
図６は、実施例１に係るフレームレート制御部７０を搭載した実施形態１に係る撮像装置５００の動作を示すフローチャートである。前提として、上述した高画質モードで撮影されている場合を想定する。ユーザによる高速パンニング動作などが検出されると、通常モードまたは低画質モードに移行する場合を想定する。図６では、高画質モードにおけるフレームレートを基本値と表記し、移行される通常モードまたは低画質モードにおけるフレームレートを削減値と表記する。
【００４８】
まず、ユーザが設定可能なパラメータがある場合、パラメータを設定する（Ｓ１０）。例えば、移行後のフレームレートを設定する。また、フレームレートを低下させる処理を発動させる感度を、弱、中、強モードから選択して設定可能な場合、いずれかのモードを選択する。選択されたモードに対応した上記第２閾値および第３閾値が設定される。
【００４９】
ユーザから撮像装置５００に撮像開始の指示が入力されると（Ｓ１２のＹ）、撮像装置５００は撮像を開始する（Ｓ１４）。ユーザから撮像装置５００に撮像終了の指示が入力された場合（Ｓ１６のＹ）、処理を終了する。撮像終了の指示が入力されない間（Ｓ１６のＮ）、以下のように処理する。
【００５０】
動き補償部６０は、フレームごとに各マクロブロックの動きベクトルを抽出して動きベクトル解析部７２に与える（Ｓ２２）。動きベクトル解析部７２は、与えられた動きベクトルを解析する（Ｓ２４）。具体的には、フレームごとにマクロブロックの総移動量およびマクロブロックの移動方向を検出する。
【００５１】
動きベクトル解析部７２は、マクロブロックの総移動量が所定時間、上記第２閾値を超え続けたか否かを検出する（Ｓ２６）。この時間も、設計者が実験やシミュレーションにより求めた値に設定されることができる。この時間中、上記第２閾値を超えないフレームが１枚から数枚程度あっても、上記第２閾値を超え続けたと見なしてもよい。
【００５２】
上記第２閾値を超え続けない場合（Ｓ２６のＮ）、フレームレートが基本値に設定される（Ｓ２８）。現在のフレームレートが基本値に設定されている場合、その状態が維持される。以下、ステップＳ１６に遷移し、処理が続行される。上記第２閾値を超え続けた場合（Ｓ２６のＹ）、動きベクトル解析部７２は、その時間中に解析されたフレームの移動方向の一致度が上記第３閾値を超え続けたか否かを検出する（Ｓ２９）。上記時間中、上記第３閾値を下回る一致度のフレームが１枚から数枚程度あっても、上記第３閾値を超え続けたと見なしてもよい。
【００５３】
上記第３閾値を超え続けた場合（Ｓ２９のＹ）、フレームレートが削減値に設定される（Ｓ３０）。現在のフレームレートの値が削減値に設定されている場合、その状態が維持される。以下、ステップＳ１６に遷移し、処理が続行される。上記第３閾値を超え続けない場合（Ｓ２９のＮ）、フレームレートが基本値に設定される（Ｓ２８）。現在のフレームレートが基本値に設定されている場合、その状態が維持される。以下、ステップＳ１６に遷移し、処理が続行される。
【００５４】
通常モードまたは低画質モード、すなわちフレームレートが削減値に設定されている状態から、高画質モードに復帰する処理も、ステップＳ２６以降の処理により可能である。この場合、少なくとも上記第２閾値および第３閾値の一方を、通常モードまたは低画質モードに移行する場合に使用する閾値と異なるものにしてもよい。例えば、必要なシーンになっても、高画質モードに復帰しないという事態を回避するため、高画質モードへの復帰を判定するために使用する第２閾値を、通常モードまたは低画質モードへの移行を判定するために使用する第２閾値より小さくしてもよい。
【００５５】
なお、以上の記載では、高画質モードで撮影されている場合を想定し、ユーザによる高速パンニング動作などが検出されると、通常モードまたは低画質モードに移行する処理を説明した。この点、通常モードで撮影されている場合を想定し、ユーザによる高速パンニング動作などが検出されると、低画質モードに移行する処理にも適用可能である。この場合、通常モードにおけるフレームレートを基本値として、低画質モードにおけるフレームレートを削減値とする。
【００５６】
以上説明したように本実施形態の実施例１によれば、フレーム全体に渡るマクロブロックの動きベクトルを参照して、フレームレートを変更することにより、画像品質の低下を抑制しながら、データ量を削減することができる。また、高画質モードで撮影している場合、高品質な画像を記録しつつ、データ量の肥大化を抑制することができる。すなわち、不必要なシーンのデータ量を削減することができる。
【００５７】
図７は、実施形態１に係るフレームレート制御部７０の実施例２を説明する図である。実施例２に係るフレームレート制御部７０は、実施例１に係るフレームレート制御部７０の構成要素に加えて、注目領域設定部７６を備える。ここで、注目領域とはユーザが主として撮影しようとしている被写体を含む領域である。例えば、人間や動物などが該当する。
【００５８】
注目領域設定部７６は、ＤＣＴ係数の高周波成分を用いて、当該被写体の輪郭成分を検出することにより、画像内における被写体の位置を特定し、その被写体を含む領域を注目領域に設定することができる。また、人物撮影モードなどにおいて、画像内における顔の位置をパターンマッチングにより特定して、注目領域に設定してもよい。
【００５９】
オートフォーカス機能を搭載した撮像装置５００の場合、オートフォーカス制御部１１０を備える。オートフォーカス制御部１１０は、画像内のコントラストなどを参照して、被写体にピントが合うよう自動的に制御する。ユーザは、ファインダ中央部に被写体が位置するよう、撮像装置５００を動かすことにより被写体にピントを合わせることができる。ファインダ中央部だけでなく、複数のポイントからピントを合わせるべき位置を選択可能な構成の場合、ポイントを選択することによりピントを合わせることができる。
【００６０】
注目領域設定部７６は、オートフォーカス制御部１１０からピントが合っている領域を取得し、その領域またはその領域を含む領域を注目領域に設定してもよい。なお、注目領域を矩形に設定すると、演算量を低減することができる。注目領域設定部７６は、設定した注目領域を動き補償部６０に設定する。
【００６１】
本実施例に係る動き補償部６０は、上述した処理に加え、以下の処理も行う。すなわち、注目領域と誤差の最も小さい予測領域をフレームメモリ８０に格納されている参照画像から探索し、注目領域から予測領域へのずれを示す動きベクトルを求める。動き補償部６０は、この動きベクトルを、動きベクトル解析部７２に供給する。
【００６２】
動きベクトル解析部７２は、動き補償部６０から注目領域の動きベクトルを取得し、解析する。図５に示した移動量検出部７３（図７では図示せず）は、取得した動きベクトルから、注目領域の移動量を検出する。マクロブロックの移動方向の一致度を判定する必要はないため、注目領域の移動方向は検出しなくてもよい。
【００６３】
動きベクトル解析部７２は、注目領域の移動量が所定の第４閾値を超えたか否かを判定する。この第４閾値も、設計者が実験やシミュレーションにより求めた値に設定されることができ、上記第１閾値と関連付けられる。
【００６４】
運動会で子供が走っている姿を撮影する場合など、動いている被写体を撮影する場合、ユーザは、被写体を追従するように撮像装置５００をパンニングすることがある。このパンニングをシーンの切り替えるためのパンニングなどと区別する必要がある。前者のパンニングを許容するため、上記第４閾値を、移動量の検出領域に応じた比で調整された上記第２閾値より大きく設定してもよい。
【００６５】
動きベクトル解析部７２は、注目領域の移動量に基づき、上記第１閾値を超える移動量、速さまたは加速度で撮像装置５００が移動したと推測した場合、フレームレート設定部７８にフレームレートの変更を指示する。フレームレート設定部７８は、動きベクトル解析部７２からの指示に応じて、フレームレートを変更する。
【００６６】
図８は、実施例２に係るフレームレート制御部７０を搭載した実施形態１に係る撮像装置５００の動作を示すフローチャートである。図８は、図６のフローチャートを基礎にしており、同一の処理には同一の符号が付されている。以下、図６と同様の処理については適宜、説明を省略し、相違する処理を中心に説明する。
【００６７】
まず、ステップＳ１０からステップＳ１６までの処理は、図６と同様のため説明を省略する。図８では、撮像終了の指示が入力されない間（Ｓ１６のＮ）、以下のように処理する。
【００６８】
注目領域設定部７６が注目領域を設定した場合（Ｓ１８のＹ）、動き補償部６０は、フレームごとに注目領域の動きベクトルを抽出して動きベクトル解析部７２に与える（Ｓ２０）。動きベクトル解析部７２は、与えられた動きベクトルを解析する（Ｓ２４）。具体的には、フレームごとに注目領域の移動量を検出する。
【００６９】
動きベクトル解析部７２は、注目領域の移動量が所定時間、上記第４閾値を超え続けたか否かを検出する（Ｓ２６）。この時間も、設計者が実験やシミュレーションにより求めた値に設定されることができる。
【００７０】
上記第４閾値を超え続けない場合（Ｓ２６のＮ）、フレームレートが基本値に設定される（Ｓ２８）。現在のフレームレートが基本値に設定されている場合、その状態が維持される。以下、ステップＳ１６に遷移し、処理が続行される。上記第４閾値を超え続けた場合（Ｓ２６のＹ）、フレームレートが削減値に設定される（Ｓ３０）。現在のフレームレートが削減値に設定されている場合、その状態が維持される。フレームレートが削減値に設定されると、注目領域設定部７６は注目領域を解除する（Ｓ３１）。また、フレームレートが削減値の間、注目領域は設定されない。この期間はユーザが特定の被写体を撮影している期間ではなく、シーンなどを切り替えている期間と推測されるためである。以下、ステップＳ１６に遷移し、処理が続行される。
【００７１】
ステップＳ１８にて、注目領域設定部７６が注目領域を設定しない場合（Ｓ１８のＮ）、図６で説明したステップＳ２２以降の処理と同様となる。説明の便宜上、図８にはステップＳ２９の処理を記載していないが、移動方向の一致度の判定処理も行う。
【００７２】
実施例２においても実施例１と同様に、通常モードまたは低画質モードから高画質モードに復帰する処理も、ステップＳ２６以降の処理により可能である。通常モードまたは低画質モードでは注目領域が解除されているため、フレーム全体に渡るマクロブロックの総移動量と上記第２閾値とが比較されることになる。高画質モードに復帰後、注目領域が再設定されてもよい。
【００７３】
以上説明したように本実施形態の実施例２によれば、被写体を含む注目領域の動きベクトルを参照して、フレームレートを変更させることにより、画像品質の低下を抑制しながら、データ量を削減することができる。また、被写体を含む注目領域の動きベクトルを用いて判定するため、ユーザの撮影意図を的確に推測することができ、誤判定を低減することができる。
【００７４】
次に、実施例３について説明する。実施例３は、実施例１に係る処理と、通常のフレームレートより高いフレームレートで高速撮像されているモードの実行中に、被写体などの動きの変化に応じて、フレームレートを適応的に変更させる処理を組み合わせたものである。実施例３に係る構成は、図４および図５に示したものと同様であるが、動きベクトル解析部７２およびフレームレート設定部７８は、以下に示す処理も行う。
【００７５】
フレームレート設定部７８には、基本フレームレート、遷移可能なフレームレートすなわちフレームレートの変更点が複数設定される。基本フレームレートは、通常モードでの撮影に対応したフレームレートを指す。フレームレートの変更点は、基本フレームレートの整数倍のフレームレートに設定可能である。
【００７６】
動きベクトル解析部７２は、マクロブロックの総移動量が、所定の第５閾値を上回ったか否か、および所定の第６閾値を下回ったか否かを判定する。当該第５閾値は、現在のフレームレートを高くするか否かを判定するための上限値であり、当該第６閾値は、現在のフレームレートを低くするか否かを判定するための下限値である。いずれの閾値も、設計者が実験やシミュレーションにより求めた値に設定されることができる。
【００７７】
図９は、実施例３に係るフレームレート制御部７０を搭載した実施形態１に係る撮像装置５００の動作を示すフローチャートである。図９は、図６のフローチャートを基礎にしており、同一の処理には同一の符号が付されている。以下、図６と同様の処理については適宜、説明を省略し、相違する処理を中心に説明する。
【００７８】
まず、ステップＳ１０からステップＳ３０までの処理は、図６と基本的に同様のため説明を省略する。実施例３では、ステップＳ２８にてフレームレートが基本値に設定されたまたは維持された後、ステップＳ３２に遷移する。
【００７９】
動きベクトル解析部７２は、マクロブロックの総移動量が単位分析期間内に上記第５閾値を上回った回数が、あらかじめ設定された所定の回数を超えたか否かを判定する（Ｓ３２）。上記第５閾値を上回った回数が所定の回数を超えた場合（Ｓ３２のＹ）、現在のフレームレートを高方向に変更する（Ｓ３４）。以下、ステップＳ１６に遷移し処理を続行する。
【００８０】
ステップＳ３２にて、上記第５閾値を上回った回数が所定の回数を超えない場合（Ｓ３２のＮ）、動きベクトル解析部７２は、マクロブロックの総移動量が単位分析期間内に上記第６閾値を下回った回数が、あらかじめ設定された所定の回数を超えたか否かを判定する（Ｓ３６）。上記第６閾値を下回った回数が所定の回数を超えた場合（Ｓ３６のＹ）、現在のフレームレートを低方向に変更する（Ｓ３８）。以下、ステップＳ１６に遷移し処理を続行する。上記第６閾値を下回った回数が所定の回数を超えない場合（Ｓ３６のＮ）、フレームレートを変更せずに、ステップＳ１６に遷移し処理を続行する。ステップＳ３２およびステップＳ３６の処理に利用する所定の回数も、設計者が実験やシミュレーションで求めた値に設定されることができる。
【００８１】
なお、低方向または高方向に変更すべきフレームレートの変更点が、もはや低方向または高方向に存在しない場合、上述した所定の回数を超えている場合でもフレームレートを変更しない。フレームレートの変更は、基本的には隣り合う変更点に段階的に遷移させるものであるが、例えば、所定の回数を２倍以上超えるなど、上記第５閾値を上回るまたは上記第６閾値を下回る頻度が非常に高い場合、フレームレートを現在の動作点から２段階以上離れた変更点に遷移させてもよい。なお、各フレームレートの変更点ごとに上記第５閾値および第６閾値をあらかじめ設定しておいてもよい。
【００８２】
以上説明したように本実施形態の実施例３によれば、フレーム全体に渡るマクロブロックの動きベクトルを参照して、フレームレートを変更させることにより、画像品質の低下を抑制しながら、データ量を削減することができる。また、上記第２閾値を超えない範囲内にて、フレームレートを適応的に変更することにより、高品質な画像の記録をしつつ、データ量を削減することができる。この範囲内では、動きベクトルの移動量が大きいほど、高品質なスロー再生に対応させるべくフレームレートを高くする。ただし、この範囲を超えて動きベクトルの移動量が大きくなると、高速にパンニングされたと判定し、フレームレートを低くする。
【００８３】
図１０は、実施形態２に係る撮像装置５００の構成図である。実施形態２に係る撮像装置５００は、実施形態１に係る撮像装置５００に手振れ検出部１２０が付加された構成である。したがって、手振れ検出部１２０に関連する構成要素以外は、実施形態１と同様のためその説明は省略する。
【００８４】
手振れ検出部１２０は、ジャイロセンサなどを備え、センサの出力信号により手振れを検出すると、その手振れを打ち消す方向に補正レンズまたは固体撮像素子を動かす。ジャイロセンサは、撮像装置５００のヨー方向およびピッチ方向への動きを、角速度として出力する。
【００８５】
本実施形態に係るフレームレート制御部７０は、手振れ検出部１２０から得られる、撮像装置５００のヨー角およびピッチ方向への動きに対応した値を参照して、本撮像装置５００に加えられた動きを推測する。したがって、本実施形態では動き補償部６０から動きベクトルを取得する必要はない。フレームレート制御部７０は、上述したヨー角およびピッチ方向への動きに対応した値が所定の第６閾値を超えたか否かを判定する。この第６閾値も、設計者が実験やシミュレーションにより求めた値に設定されることができ、第１閾値と関連付けられる。
【００８６】
図１１は、実施形態２に係る撮像装置５００の動作を示すフローチャートである。図１１は、図６のフローチャートを基礎にしており、同一の処理には同一の符号が付されている。以下、図６と同様の処理については適宜、説明を省略し、相違する処理を中心に説明する。
【００８７】
まず、ステップＳ１０からステップＳ１６までの処理は、図６と同様のため説明を省略する。図１１では、撮像終了の指示が入力されない間（Ｓ１６のＮ）、以下のように処理する。
【００８８】
フレームレート制御部７０は、手振れ検出部１２０からジャイロセンサなどの出力値を取得する（Ｓ４０）。フレームレート制御部７０は、その出力値が上記第６閾値を超えたか否か判定する（Ｓ４２）。上記第６閾値を超えない場合（Ｓ４２のＮ）、フレームレートを基本値に設定する（Ｓ４４）。現在のフレームレートが基本値に設定されている場合、その状態を維持する。以下、ステップＳ１６に遷移し、処理が続行される。
【００８９】
上記第６閾値を超えた場合（Ｓ４２のＹ）、フレームレートを削減値に設定する（Ｓ４６）。現在のフレームレートが削減値に設定されている場合、その状態を維持する。以下、ステップＳ１６に遷移し、処理が続行される。実施形態２においても実施形態１と同様に、通常モードまたは低画質モードから高画質モードに復帰する処理も、ステップＳ４２以降の処理により可能である。上記第６閾値も、通常モードまたは低画質モードに移行するか否かを判定する場合と、高画質モードに復帰するか否かを判定する場合で異なる値に設定されてもよい。
【００９０】
以上説明したように本実施形態によれば、撮像装置５００の動きをセンサで検出して、フレームレートを変更させることにより、画像品質の低下を抑制しながら、データ量を削減することができる。また、撮像装置５００の動きをセンサで直接検出しているため、ユーザの意図に反して、被写体の大きな動きなどによりフレームレートが低下する事態を回避することができる。また、撮像したフレームから撮像装置５００の動きを推測する必要がないため、上記第１閾値を超える移動量、速さまたは加速度で撮像装置５００が動かされていると判定された期間において、撮像自体を停止させる処理も可能である。
【００９１】
以上、本発明をいくつかの実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００９２】
例えば、実施形態にて、撮像装置５００の図示しないファインダなどの表示部に、撮影モード、フレームレート、何倍速で撮像されているかなどを示すメッセージを表示させてもよい。これにより、フレームレートの変更をユーザにリアルタイムに通知することができる。
【図面の簡単な説明】
【００９３】
【図１】シーンチェンジを含む動画像を記録する際の一般的なコマ数の遷移を示す図である。
【図２】シーンチェンジを含む動画像を記録する際の本発明の実施形態に係るコマ数の遷移１を示す図である。
【図３】シーンチェンジを含む動画像を記録する際の本発明の実施形態に係るコマ数の遷移２を示す図である。
【図４】実施形態１に係る符号化装置を搭載した撮像装置の構成図である。
【図５】実施形態１に係るフレームレート制御部の実施例１を説明する図である。
【図６】実施例１に係るフレームレート制御部を搭載した実施形態１に係る撮像装置の動作を示すフローチャートである。
【図７】実施形態１に係るフレームレート制御部の実施例２を説明する図である。
【図８】実施例２に係るフレームレート制御部を搭載した実施形態１に係る撮像装置の動作を示すフローチャートである。
【図９】実施例３に係るフレームレート制御部を搭載した実施形態１に係る撮像装置の動作を示すフローチャートである。
【図１０】実施形態２に係る撮像装置の構成図である。
【図１１】実施形態２に係る撮像装置の動作を示すフローチャートである。
【符号の説明】
【００９４】
１０  ブロック生成部、  １２  差分器、  １４  加算器、  ２０  ＤＣＴ部、  ３０  量子化部、  ４０  逆量子化部、  ５０  逆ＤＣＴ部、  ６０  動き補償部、  ７０  フレームレート制御部、  ７２  動きベクトル解析部、  ７３  移動量検出部、  ７４  移動方向検出部、  ７６  注目領域設定部、  ７８  フレームレート設定部、  ８０  フレームメモリ、  ９０  可変長符号化部、  １００  符号化装置、  １１０  オートフォーカス制御部、  １２０  手振れ検出部、  ５００  撮像装置。
【図１】
2008085860.tif 000003
【図２】
2008085860.tif 000004
【図３】
2008085860.tif 000005
【図４】
2008085860.tif 000006
【図５】
2008085860.tif 000007
【図６】
2008085860.tif 000008
【図７】
2008085860.tif 000009
【図８】
2008085860.tif 000010
【図９】
2008085860.tif 000011
【図１０】
2008085860.tif 000012
【図１１】
2008085860.tif 000013