(57)【特許請求の範囲】
【請求項１】
イメージ・センサを含むカメラ・モジュールからホスト装置に画像データを転送する方法であって、
前記ホスト装置が前記カメラ・モジュールに対して一定の転送周期で画像データの転送要求をするステップと、
ある転送要求から次の転送要求までの各転送周期において前記カメラ・モジュールがロー・パワー状態から撮影状態に遷移して画像データを生成するステップと、
各転送要求に応じて前記カメラ・モジュールが前記ホスト装置に１フレームの画像データを転送するステップと、
各転送周期での転送が終了したことに応答して前記カメラ・モジュールが前記ロー・パワー状態に遷移するステップと
を有する方法。
【請求項２】
前記転送周期が、前記撮影状態に遷移している実動作時間と、前記ホスト装置が必要とするフレーム・レートから計算した時間の間に設定されている請求項１に記載の方法。
【請求項３】
各転送周期において、撮影条件に適合させるためのキャリブレーションをスキップしてあらかじめ取得したパラメータ値を前記カメラ・モジュールに設定する請求項１または請求項２に記載の方法。
【請求項４】
前記あらかじめ取得したパラメータ値が、最初のフレームの転送の際に前記カメラ・モジュールが前記キャリブレーションを実行して取得したパラメータ値である請求項３に記載の方法。
【請求項５】
前記ホスト装置が前記画像データを評価するステップと、
前記評価の結果に基づいて前記ホスト装置が前記カメラ・モジュールに前記キャリブレーションを再実行するようにリクエストするステップと、
前記再実行して取得したパラメータ値を前記カメラ・モジュールが設定するステップと
を有する請求項４に記載の方法。
【請求項６】
前記ホスト装置が前記画像データを評価するステップと、
前記評価の結果に基づいて前記ホスト装置が前記画像データの転送要求の周期を変更するステップと
を有する請求項１から請求項５のいずれかに記載の方法。
【請求項７】
イメージ・センサを含むカメラ・モジュールから画像データを受け取ることが可能なコンピュータに、
前記カメラ・モジュールを撮影状態からロー・パワー状態に遷移させる機能と、
前記カメラ・モジュールに対して１フレームの画像データを転送するためのフレーム転送コマンドを一定の転送周期で発行する機能と、
各転送周期において前記カメラ・モジュールを前記ロー・パワー状態から前記撮影状態に遷移させる機能と、
前記カメラ・モジュールが前記フレーム転送コマンドに応答して生成した１フレームの画像データを受け取る機能と、
前記画像データを受け取ったことに応答して各転送周期において前記カメラ・モジュールを前記ロー・パワー状態に遷移させる機能と
を実現させるコンピュータ・プログラム。
【請求項８】
イメージ・センサを含み動画像データを出力することが可能なカメラ・モジュールと、
前記カメラ・モジュールに接続され前記カメラ・モジュールに一定の転送周期で画像データの転送要求をするホスト装置とを有し、
前記カメラ・モジュールは前記ホスト装置から受け取ったある転送要求から次の転送要求までの各転送周期において撮影状態とロー・パワー状態の間での電力遷移を繰り返しながら１フレームの画像データを前記ホスト装置に転送するカメラ・システム。
【請求項９】
各転送周期において前記撮影状態に遷移したときに前記カメラ・モジュールは最初のフレームの撮影条件に適合させるためにキャリブレーションをして取得したパラメータ値を設定する請求項８に記載のカメラ・システム。
【請求項１０】
前記ホスト装置は、前記パラメータ値を更新するように前記カメラ・モジュールに要求する請求項９に記載のカメラ・システム。
【請求項１１】
イメージ・センサを含むカメラ・モジュールから画像データを受け取るインターフェースと、
前記カメラ・モジュールに対して一定の転送周期で画像データの転送要求をする転送要求部と、
各転送周期において前記カメラ・モジュールを撮影状態とロー・パワー状態に遷移させるように制御する電力制御部と、
前記カメラ・モジュールから各転送周期で１フレームの画像データを受け取る画像処理部と
を有するコンピュータ。
【請求項１２】
前記インターフェースがＵＳＢである請求項１１に記載のコンピュータ。
【請求項１３】
前記コンピュータが、電池駆動で動作する携帯式コンピュータである請求項１１または請求項１２に記載のコンピュータ。
【請求項１４】
前記カメラ・モジュールが前記携帯式コンピュータの筐体に取り付けられている請求項１３に記載のコンピュータ。
【請求項１５】
前記カメラ・モジュールが前記携帯式コンピュータから電力の供給を受ける請求項１３または請求項１４に記載のコンピュータ。
【請求項１６】
ホスト装置に動画像データを転送することが可能なカメラ・モジュールであって、
被写体の像を結像する光学機構と、
前記光学機構が結像した光を電気信号に変換するイメージ・センサと、
前記イメージ・センサの出力信号を処理する画像信号処理回路と、
前記ホスト装置に対するインターフェース回路と、
前記カメラ・モジュールの動作を制御するプロセッサとを有し、
前記プロセッサは、前記ホスト装置から一定の転送周期で画像データの転送コマンドを受け取るたびに前記カメラ・モジュールを撮影状態とロー・パワー状態の間を遷移させながら前記ホスト装置に各転送周期で１フレームの画像データを転送するカメラ・モジュール。
【請求項１７】
前記カメラ・モジュールは前記撮影状態に遷移したときに少なくとも露光時間とホワイト・バランスのパラメータを最初に取得したパラメータ値に設定する請求項１６に記載のカメラ・モジュール。
【請求項１８】
前記ロー・パワー状態の消費電力は前記撮影状態の消費電力に対して１０％以下である請求項１６または請求項１７に記載のカメラ・モジュール。
【請求項１９】
イメージ・センサを含みホスト装置に動画像データを出力することが可能なカメラ・モジュールに、
前記ホスト装置に１フレームの画像データを転送するための転送コマンドを一定の転送周期で受け取る機能と、
前記転送コマンドに基づいてロー・パワー状態から撮影状態に遷移する機能と、
画像データを生成して出力する機能と、
各転送周期で１フレームの画像データの出力が完了した後に前記ロー・パワー状態に遷移する機能と、
各転送周期で前記撮影状態への遷移と前記画像データの出力と前記ロー・パワー状態への遷移を繰り返す機能と
を実現させるコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラ・モジュールが動画像データよりも小さいフレーム・レートで連続的にホスト装置に画像データを転送する技術に関し、さらに詳細にはデータ転送の際のカメラ・モジュールとホスト装置の消費電力を低減する技術に関する。
【背景技術】
【０００２】
単体で存在するディジタル・カメラは、静止画像を撮影するスティル・カメラと動画像を撮影するビデオ・カメラに大別することができる。スティル・カメラでもビデオ・カメラでも電源を投入して撮影準備状態に入ると液晶モニターに被写体の画像が表示される。ユーザは液晶モニターの画像を確認しながら静止画像または動画像を撮影してカメラ本体にデータを記録する。
【０００３】
ノートブック型パーソナル・コンピュータ（以下、ノートＰＣという。）、タブレット型コンピュータ、または多機能携帯電話などのホスト装置には、テレビ電話や周囲環境の撮影を目的にしたカメラ・モジュールを搭載することがある。通常、カメラ・モジュールが撮影した画像データはノートＰＣのアプリケーションが受け取ってホスト装置の記録媒体に記録される。したがって、ノートＰＣに組み込まれたカメラ・モジュールは、画像データを処理および記録するアプリケーションと組み合わせられることで、単体で存在するディジタル・カメラに対応するカメラ・システムを構成しているといえる。
【０００４】
このようなカメラ・システムには、静止画像だけを必要とするアプリケーション・プログラム（アプリケーション）を実装することも可能である。カメラ・モジュールは、撮影準備状態に入ると３０ｆｐｓといった動画像のフレーム・レートでシステムに画像データを転送する。この場合の動画像データは、撮影対象となる画像をモニターすることを目的にしているため通常は本来の動画像データよりも画素数を低く設定している。なお、フレーム・レートは１枚の静止画像を作成する複数の撮像素子の集合体が出力する画素信号で構成された画像データを１フレームとしたときに、単位時間で生成または転送されるフレーム数（ｆｐｓ）をいう。１枚の静止画像は１フレームに対応する。
【０００５】
アプリケーションは、受け取ったモニター用の動画像データの中から静止画像を選択するタイミングを決定する。そして、決定したタイミングでカメラ・モジュールは本来の画素数の静止画像データを転送する。あるいは、本来の画素数の動画像デーを転送している途中でそこから直接静止画像データを取得することもできる。すなわちカメラ・システムで静止画像を取得するためには、アプリケーションまたはユーザが必要な静止画像を選択するまでの所定の時間の間、モニター用の画素数または本来の画素数の動画像データを取得する必要がある。
【０００６】
特許文献１は、動画像を処理するために消費する電力を削減した異常監視装置を提供する。異常監視装置は、常時は動画処理部分の動作を休止し、音声による異常検知をトリガとして動画処理部分の動作を開始する。特許文献２は静止画像データを動画像フォーマットに格納して画像表示装置に出力する際に、静止画像データを出力する側の消費電力を低減させる画像表示システムを開示する。デジタル・ビデオ・カメラは、ディジタル・テレビからの画像転送要求コマンドに基づく静止画像データの転送動作を行った後は、ディジタル・テレビが送る画像転送要求コマンドを受信するまで、低消費電力モードで動作する。
【０００７】
非特許文献１は、ＵＳＢで接続されたカメラ・モジュールからスティル・イメージを取得するStill Image Captureを規定する。同文献には、ホスト装置がビデオ・ストリーミングを一旦中断してスティル・イメージを取得した後に再度ビデオ・ストリーミンの転送モードに復帰したり、ビデオ・ストリーミングを中断しないで専用のバルク・スティル・イメージ・パイプを使用してスティル・イメージを転送したりすることが記載されている。
【０００８】
非特許文献２、３は、ロー・パワー・モードといわれるＵＳＢデバイスの選択サスペンド（Selective Suspend）について記載している。選択サスペンドでは、ＵＳＢクライアント・ドライバが、ＵＳＢデバイスがアイドルであると決定したときにＵＳＢバス・ドライバにリクエスト・パケットを送る。当該ＵＳＢハブに接続されているすべてのＵＳＢデバイスがアイドルになると、それを受けてＵＳＢバス・ドライバが当該ＵＳＢハブに繋がるＵＳＢバスをアイドル状態に遷移させ、そのバスの状態遷移を検知したＵＳＢデバイスが選択サスペンド状態に遷移する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００４−１２０５９５号公報
【特許文献２】特開２００８−１８７５３６号公報
【非特許文献】
【００１０】
【非特許文献１】USB Device Class Definition for Video Devices, REvision1.1 June 1,2005
【非特許文献２】Universal Serial Bus Specification Revision 2.0
【非特許文献３】Power saving of using USB Selective Suspend Support Whitepaper, Intel Mobile Platforms Group Version 0.3, May 20,2003, Kris Fleming
【発明の概要】
【発明が解決しようとする課題】
【００１１】
カメラ・モジュールは、画像データの転送をしていないときはサスペンド状態に遷移することができる。しかしこれまでのカメラ・システムでは、ホスト側が静止画像データしか必要がない場合でもモニター用の動画像データを送る必要があり、一定の周期で静止画像データを転送しようとしても、その動画像のデータ転送を終了するまでカメラ・モジュールはサスペンド状態に遷移することができなかった。さらに撮影準備段階で動画像データを転送するためバスのデータ・トラフィックが必要以上に増大し、さらに、ストリーミング・データを処理するためのＣＰＵの負荷も増大してホスト装置の消費電力も必要以上に増大していた。
【００１２】
ノートＰＣには、テレビ電話やビデオ撮影などの動画像データを利用するさまざまアプリケーションが存在する。ノートＰＣが電池駆動で動作するときはカメラ・システムの消費電力を極限まで低減する必要があるため、カメラ・システムを動作させるときはＡＣ／ＤＣアダプタを接続してＡＣ電力を使用するのが一般的である。しかし近年、動画像データのフレーム・レートより小さいフレーム・レートで連続的に静止画像データを取得したいアプリケーションが開発されてきている。
【００１３】
たとえば、会議中にノートＰＣを使っているユーザの顔の向きを１〜２秒ごとに取得した静止画像で判断して、顔が画面とは異なる方向を向いているときや画面から離れたときにはディスプレイのバックライトを停止させたり、プロセッサのクロック周波数を低下さえたりして省電力状態に移行させ、顔が画面に向いたときは復帰させるようなアプリケーションを考えることができる。
【００１４】
このようなアプリケーションを実現しようとしたときには、これまでのカメラ・システムでは消費電力が大きいため、ノートＰＣが電池駆動のときには動作させることはできない。また、遠隔地でノートＰＣを電池駆動するときに動画像の利用は困難だとしてもある程度の周期で送られてくる静止画像を使ってテレビ会議をしたい場合もある。
【００１５】
そこで本発明の目的は、消費電力の低減を図りながらカメラ・モジュールからホスト装置に画像データを転送する方法を提供することにある。さらに本発明の目的はカメラ・システムの消費電力を低減しながら動画像データより小さいフレーム・レートで連続的に静止画像データを転送する方法を提供することにある。さらに本発明の目的はホスト装置が要求するフレーム・レートの維持と消費電力の低減の両立を図りながら画像データを転送する方法を提供することにある。さらに本発明の目的は、そのような方法を実現するカメラ・システム、カメラ・モジュール、コンピュータ、およびコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【００１６】
本発明は、イメージ・センサを含むカメラ・モジュールからホスト装置に画像データを転送する方法を提供する。カメラ・モジュールは画像データの転送に必要な時間帯以外は、撮影状態より消費電力の少ないロー・パワー状態に遷移する。ホスト装置はカメラ・モジュールに対して順番に画像データの転送要求をする。転送要求があるとカメラ・モジュールはロー・パワー状態から撮影状態に遷移する。撮影状態に遷移したカメラ・モジュールは画像データを生成してホスト装置に転送する。転送が終了したことに応答してカメラ・モジュールはロー・パワー状態に遷移する。
【００１７】
本発明によれば、カメラ・モジュールはモニター用の動画像データを転送する必要がなくホスト装置が必要な画像データだけを転送するため、転送動作をしていないときはロー・パワー状態に遷移することができる。したがってカメラ・モジュールの消費電力だけでなく、画像データのトラフィックが必要最小限まで低減するためそれを処理するバスおよびＣＰＵの消費電力も低減することができる。
【００１８】
転送要求は一定の転送周期で発行してもよい。ホスト装置は許容できるフレーム・レートの下限値または転送周期の上限値を設定することができる。静止画像転送モードでは、各転送周期においてカメラ・モジュールが必ずロー・パワー状態に遷移する必要がある。したがって、各転送周期において撮影状態に遷移している実動作時間から計算した転送周期の最小値と、ホスト装置が要求するフレーム・レートから計算した転送周期の最大値の間に実用的な転送周期を設定すると、ホスト装置の要求を満たしながらカメラ・モジュールがロー・パワー状態に遷移する時間を確保することができる。各転送期間に転送する画像データは複数のフレームでもよいが１フレームとすることでロー・パワー状態に遷移する時間を長くして消費電力を最大限まで低減することができる。
【００１９】
実動作時間は、カメラ・モジュールの固有の性能により左右されるが、各転送期間でキャリブレーションをしないであらかじめ取得したパラメータ値をカメラ・モジュールに設定することで実動作時間を短縮することができる。カメラ・モジュールの実動作時間を短縮すると、各転送期間においてロー・パワー状態に遷移している時間を長くしたり、同一のロー・パワー状態に遷移する時間に対して転送周期を短く（フレーム・レートを大きく）したりすることができるので、カメラ・モジュールの消費電力の低減とフレーム・レートの増大の両立を図ることができる。
【００２０】
あらかじめ取得したパラメータ値は、最初の転送期間においてカメラ・モジュールが撮影条件に適合するようにキャリブレーションを実行して取得したパラメータ値とすることができる。キャリブレーションをスキップして２番目以降の転送期間におけるパラメータ値を固定する方法は、撮影当初の撮影条件が変化しないことを前提にしている。
【００２１】
しかし実際には撮影条件が撮影当初から変化して、ホスト装置が望ましい画質の画像データを取得できなくなることがある。これに対応するために、ホスト装置が静止画像データを評価した結果に基づいてカメラ・モジュールにキャリブレーションを再実行するようにリクエストすることができる。ホスト装置またはカメラ・モジュールはキャリブレーションを再実行して取得したパラメータ値を設定することができる。パラメータは、ローリング・シャッタの露光時間およびホワイト・バランスを含んで構成することができる。
【００２２】
ホスト装置は定期的に受け取った画像データを評価して、転送要求の間隔を変更することができる。たとえば、被写体の変化が大きくなったときは間隔を短くし、変化が小さくなったときは間隔を長くする。転送要求の間隔を変更すると、不必要な画像データの転送をしなかったり、必要なタイミングで画像データを転送したりすることができるため、ホスト装置の満足度を充足させながらカメラ・システムの消費電力を効果的に低減することができる。
【００２３】
ホスト装置はコンピュータで構成することができる。この場合、カメラ・モジュールとシステムの接続はＵＳＢインターフェースを使用することができる。本発明は、カメラ・システムの消費電力を大幅に低減しながら、たとえば１〜２ｆｐｓのフレーム・レートで静止画像データを転送することができるため、電池駆動の携帯式コンピュータにそのようなフレーム・レートで転送される画像データを利用したアプリケーションを実装できるようになる。
【発明の効果】
【００２４】
本発明により、消費電力の低減を図りながらカメラ・モジュールからホスト装置に画像データを転送する方法を提供することができた。さらに本発明によりカメラ・システムの消費電力を低減しながら動画像データより小さいフレーム・レートで連続的に静止画像データを転送する方法を提供することができた。さらに本発明によりホスト装置が要求するフレーム・レートの維持と消費電力の低減の両立を図りながら画像データを転送する方法を提供することができた。さらに本発明により、そのような方法を実現する、カメラ・システム、カメラ・モジュール、コンピュータ、およびコンピュータ・プログラムを提供することができた。
【図面の簡単な説明】
【００２５】
【図１】ノートＰＣ１０で実現したカメラ・システムのハードウェアの構成を示す機能ブロック図である。
【図２】カメラ・モジュール１００の概略の構成を示す機能ブロック図である。
【図３】カメラ・システムを構成するノートＰＣ１０に搭載されたソフトウェアの構成を示す機能ブロック図である。
【図４】静止画像転送モードにおけるカメラ・モジュール１００の動作状態を説明する図である。
【図５】静止画像転送モードにより画像データを転送する手順を説明するフローチャートである。
【図６】静止画像転送モードの特徴を説明する図である。
【発明を実施するための形態】
【００２６】
［カメラ・システムのハードウェア構成］
図１は、ノートＰＣ１０で実現したカメラ・システムのハードウェアの構成を示す機能ブロック図である。ＣＰＵ１１はメモリ・コントローラとＰＣＩ  Ｅｘｐｒｅｓｓコントローラを内蔵しており、メイン・メモリ１３、ビデオ・カード１５およびチップ・セット１９に接続されている。ビデオ・カード１５にはＬＣＤ１７が接続されている。チップ・セット１９は、ＳＡＴＡ、ＵＳＢ、ＰＣＩ  Ｅｘｐｒｅｓｓ、ＬＰＣなどのコントローラおよびＲＴＣ（Real Time Clock）などを内蔵している。ＳＡＴＡコントローラにはＨＤＤ２１が接続されている。ＵＳＢコントローラはＵＳＢホスト・コントローラ、ルート・ハブ、および入出力ポートを構成する複数のハブで構成されている。
【００２７】
カメラ・モジュール１００は、ＵＳＢ２．０規格またはＵＳＢ３．０規格に適合するＵＳＢデバイスである。カメラ・モジュール１００は、差動信号でデータ転送する１対または３対のＵＳＢバス５０でＵＳＢコントローラのＵＳＢポートに接続されている。カメラ・モジュール１００が接続されるＵＳＢポートは、ハブを他のＵＳＢデバイスと共用してもよいが、ＵＳＢシステムの選択サスペンド機構を利用してカメラ・モジュール１００の電力を効果的に制御するためには当該ＵＳＢポートがカメラ・モジュール１００の専用のハブに接続されていることが望ましい。カメラ・モジュール１００は、ノートＰＣ１０の筐体に組み込む組込タイプでもよいし、ノートＰＣ１０の筐体に取り付けたＵＳＢコネクタに接続する外付けタイプでもよい。
【００２８】
また、カメラ・モジュール１００は、ワイヤレスＵＳＢでノートＰＣ１０に接続してもよい。本発明にかかるカメラ・システムは従来から存在していた動画像転送モードに加えて新規な静止画像転送モードで画像データを転送することができる。カメラ・モジュール１００は、動画像転送モードまたは静止画像転送モードのいずれかで画像データを転送する。
【００２９】
ここに、カメラ・システムを構成するノートＰＣ１０のシステムは、ＣＰＵ１１、チップ・セット１９、メイン・メモリ１３などのハードウェアと、図３に示す静止画像アプリケーション２０２、各階層のデバイス・ドライバ２０７、２０９、２１１、２３１、静止画像転送サービス２０５およびオペレーティング・システム２０３などのソフトウェアで構成される。なお静止画像転送モードは静止画像アプリケーション２０２が静止画像を取得する際に使用する転送モードであるが、その内容は後に説明する。
【００３０】
ＥＣ２５は、コンピュータ１０の筐体内部の温度を制御したり、デバイスの電力を制御したり、さらキーボードやマウスの動作制御をしたりするマイクロ・コントローラである。ＥＣ２５は、ＣＰＵ１１とは独立して動作する。ＥＣ２５には電池パック２７およびＤＣ／ＤＣコンバータ２９が接続され、さらに、図示しないキーボード、マウス、充電器、および排気ファンなどが接続される。ＥＣ２５は、電池パック２７、チップ・セット１９およびＣＰ１Ｕ１１と通信することができる。電池パック２７は、図示しないＡＣ／ＤＣアダプタが接続されていないときにＤＣ／ＤＣコンバータ２９に電力を供給する。ＤＣ／ＤＣコンバータ２９は、コンピュータ１０を構成するデバイスに電力を供給する。
【００３１】
［カメラ・モジュール］
図２は、カメラ・モジュール１００の概略の構成を示す機能ブロック図である。カメラ・モジュール１００は、静止画像転送モードにおいてＶＧＡ（６４０×４８０）、ＱＶＧＡ（３２０×２４０）、ＷＶＧＡ（８００×４８０）およびＷＱＶＧＡ（４００×２４０）などの画像データを転送することができる。光学機構１０１は、光学レンズおよび光学フィルタなどで構成され、被写体の像をイメージ・センサ１０３に結像させる。
【００３２】
イメージ・センサ１０３は、画素を構成するフォト・ダイオードに蓄積された光量に対応する電荷を電気信号に変換して出力するＣＭＯＳイメージ・センサ、ノイズを抑圧するＣＤＳ回路、ゲインを調整するＡＧＣ回路、アナログ信号をディジタル信号に変換するＡＤ変換回路などで構成され、被写体の像に対応するディジタル信号を出力する。イメージ・センサ１０３は、動画像転送モードで動作するときに３０ｆｐｓのフレーム・レートで画像データを生成することができる。
【００３３】
ＣＭＯＳイメージ・センサは、ローリング・シャッタといわれる電子シャッタを備えている。ローリング・シャッタは、１または数ラインを１ブロックにして撮影環境に最適になるように露光時間を制御する。ローリング・シャッタは１フレーム期間またはインターレース方式の場合は１フィールド期間に各画素を構成するフォト・ダイオードに蓄積される信号電荷を撮影の途中にリセットしてシャッタ・スピードに相当する光の蓄積期間を制御する。なお、イメージ・センサ１０３は、ＣＭＯＳイメージ・センサに代えてＣＣＤイメージ・センサを採用することもできる。
【００３４】
イメージ・シグナル・プロセッサ（ＩＳＰ）１０５は、画素欠陥およびシェーディングを補正する補正処理、イメージ・センサ１０３の分光特性を人間の視感度に合わせて補正するホワイト・バランス処理、ＲＧＢベイヤー配列の信号から一般的なＲＧＢデータを出力する補間処理、イメージ・センサ１０３のカラー・フィルターが持つ分光特性を理想特性に近づける色補正処理などを行う画像信号処理回路である。ＩＳＰ１０５はさらに、被写体の解像感を高めるための輪郭補正処理およびＬＣＤ１７の非線形な入出力特性を補正するガンマ処理などを行う。
【００３５】
エンコーダ１０７は、ＩＳＰ１０５から受け取った画像データを圧縮する。エンド・ポイント・バッファ１０９は、システムとの間で双方向に転送するデータを一時的に記憶することでＵＳＢデータ転送のための複数のパイプを形成する。シリアル・インターフェース・エンジン（ＳＩＥ）１１１は、エンド・ポイント・バッファ１０９から受け取った画像データをＵＳＢ規格に適合するようにパケット化してトランシーバ１１３に送ったり、トランシーバ１１３から受け取ったパケットを解析してペイロードをＭＰＵ１１５に送ったりする。ＳＩＥ１１１は、ＵＳＢバス５０が所定の時間以上アイドル状態のときに、サスペンド状態に遷移するためにＭＰＵ１１５に割り込みをかける。ＳＩＥ１１１は、ＵＳＢバス５０がレジュームしたときにサスペンドしているＭＰＵ１１５を動作させる。
【００３６】
トランシーバ１１３は、ＵＳＢ通信のための送信用のトランシーバと受信用のトランシーバを含む。ＭＰＵ１１５は、ＵＳＢ転送のためのエニュメレーションを実行し、さらに撮影および画像データの転送をするためにカメラ・モジュール１００の動作を制御する。カメラ・モジュール１００は、ＵＳＢ規格に規定するパワー・マネジメントに準拠する。ＭＰＵ１１５は、ＳＩＥ１１１から割り込みがかかったときに、内部クロックを中断させて自らも含めてカメラ・モジュール１００をサスペンド状態に遷移させる。
【００３７】
ＭＰＵ１１５は、ＵＳＢバス５０がレジュームしたときにカメラ・モジュール１００をパワー・オン状態または撮影状態に復帰させる。ＭＰＵ１１５は、システムから受け取ったコマンドを解釈して動画像転送モードまたは静止画像転送モードで画像データを転送するように各部の動作を制御する。ＭＰＵ１１５は、静止画像転送モードによる画像データの転送を開始するときは、最初にローリング・シャッタの露光時間（露光量）、ホワイト・バランス、およびＡＧＣ回路のゲインなどのキャリブレーションを行い、その時点での撮影環境に最適なパラメータ値を取得してイメージ・センサ１０３およびＩＳＰ１０５の所定のレジスタに設定する。
【００３８】
露光時間のキャリブレーションは、ＣＭＯＳイメージ・センサの出力信号から測光選択領域の輝度信号の平均値を計算し、この計算した輝度信号を目標レベルに一致させるようにパラメータ値を調整することで行う。ＭＰＵ１１５は露光時間のキャリブレーションの際にＡＧＣ回路のゲインも併せて調整する。ホワイト・バランスのキャリブレーションは、被写体の色温度によって変化する白の被写体に対するＲＧＢ信号のバランスを調整することで行う。
【００３９】
動画像転送モードで画像データを転送するときは、カメラ・モジュールは転送期間中にサスペンド状態に遷移することはないため、一旦レジスタに設定したパラメータ値が消失することはない。そして、ＭＰＵ１１５は、動画像転送モードで画像データを転送するときは、撮影中も適宜キャリブレーションを実行してそれらのパラメータ値を更新する。
【００４０】
これに対して静止画像転送モードで画像データを転送するときは、転送周期毎にカメラ・モジュールはサスペンド状態に遷移するため、接続されているイメージ・センサーに依っては、同センサーの内部レジスタに設定されたパラメータ値の一部またはすべてが消失する。撮影を間欠で繰り返しながら逐次サスペンド状態に遷移するという使い方が想定されていないため、内部レジスタの値をサスペンド状態で保持する設計上の動機がなかったためである。静止画像転送モードでは、キャリブレーションを先頭の転送周期で撮影するときにだけ行い、それ以降の転送周期での撮影では撮影条件に変化がないことを前提にして最初のキャリブレーションで取得したパラメータ値をウェイクアップの都度設定することができる。
【００４１】
２番目以降の各転送周期でキャリブレーションをスキップすることで、画像データの転送中にカメラ・モジュール１００がサスペンド状態に遷移する時間を一層長くしたり、転送周期を短くしてもサスペンド状態に遷移する時間を所定値以上に確保して十分な消費電力の低減を図ったりすることができるようになる。ＭＰＵ１１５は、静止画像転送モードで画像データを定期的に転送するときは、キャリブレーションを最初の転送のときにだけ行うようにイメージ・センサ１０３およびＩＳＰ１０５の動作を制御する。このときＭＰＵ１１５はキャリブレーションをして取得したパラメータ値を最初の静止画像データの転送の際にシステムに送り、２番目以降の転送周期の際にはシステムから受け取ったパラメータ値を設定することができる。
【００４２】
ＭＰＵ１１５は静止画転送モードのときに、システムからキャリブレーションの指示を受け取ったときには直後のデータ転送の前にキャリブレーションを実行して新たなパラメータ値を設定すると共に当該パラメータ値をシステムに送る。なお、パラメータ値をシステムに送らないでフラッシュＲＯＭ１１９に記憶しておき、ＭＰＵ１１５はフラッシュＲＯＭ１１９から読み出したパラメータ値を各転送周期において設定することもできる。フラッシュＲＯＭ１１９は、ＭＰＵ１１５が実行するプログラムおよびキャリブレーションを必要としないパラメータ値も記憶する。ＭＰＵ１１５は、システムから受け取ったコマンドを解釈して、キャリブレーションを実行したり各転送周期で転送するフレーム数を変更したりすることができる。
【００４３】
カメラ・モジュール１００は、ＵＳＢバスから電力の供給を受けて動作するバス・パワード・デバイスである。ただし、カメラ・モジュール１００は、独自の電力で動作するセルフ・パワード・デバイスであってもよい。セルフ・パワード・デバイスである場合は、ＭＰＵ１１５はＵＳＢバス５０の状態に追従するように独自に供給を受けている電力を制御する。
【００４４】
カメラ・モジュール１００は、ＵＳＢ規格に基づいて選択サスペンド状態とパワー・オン状態の間を遷移する。カメラ・モジュール１００は、選択サスペンド状態のときに複数のロー・パワー状態に遷移してよい。カメラ・モジュール１００は、静止画像転送モードで動作するときには、画像データを送るためにパワー・オン状態に遷移する必要がないときに最も消費電力の少ないロー・パワー状態に遷移することが望ましい。最も消費電力の少ない選択サスペンド状態のときの消費電力は、パワー・オン状態または撮影状態のときの１０％以下であることが望ましい。
【００４５】
なお、図１および図２は本実施の形態を説明するために、本実施の形態に関連する主要なハードウェアの構成および接続関係を簡略化して記載したに過ぎないものである。ここまでの説明で言及した以外にも、カメラ・システムを構成するには多くのデバイスが使われる。しかしそれらは当業者には周知であるので、ここでは詳しく言及しない。図で記載した複数のブロックを１個の集積回路もしくは装置としたり、逆に１個のブロックを複数の集積回路もしくは装置に分割して構成したりすることも、当業者が任意に選択することができる範囲においては本発明の範囲に含まれる。
【００４６】
［カメラ・システムのソフトウェア構成］
図３は、ノートＰＣ１０に搭載されたソフトウェアの構成を示す機能ブロック図である。動画像アプリケーション２０１は、カメラ・モジュール１００から動画像データを取得してＬＣＤ１７に表示したりＨＤＤ１５に記録したりする周知のプログラムである。動画像アプリケーション２０１は、テレビ電話プログラムまたは動画像撮影プログラムとすることができる。動画像アプリケーション２０１は、動画像データから静止画像のスナップ・ショットを取得することができる。
【００４７】
静止画像アプリケーション２０２は、カメラ・モジュール１００から静止画像転送モードで画像データを取得して分析したり記録したりする新規なプログラムである。静止画像アプリケーション２０２は、ユーザの指示を受け取るためのユーザ・インターフェースを備えていても良い。静止画像アプリケーション２０２は、ノートＰＣ１０がＡＣ／ＤＣアダプタから電力の供給を受けている間に実行してもよいが、カメラ・システムは小さな消費電力で動作するので電池パック２７から電力の供給を受けている間に動作させることができる。静止画像アプリケーション２０２は、ユーザの顔の向きを判断してノートＰＣ１０の電力を制御するプログラムとしたり、機械装置の状態を監視するプログラムとしたり、テレビ電話のプログラムとしたりあるいは長時間にわたって環境の変化の様子を撮影するプログラムとすることができる。
【００４８】
ストリーミング・サービス２０３は、ＯＳが提供するサービス・プログラムで動画像転送モードでの動画像データを動画像アプリケーション２０１に送ったり、静止画像データを取得するためのモニター用の動画像データを動画アプリケーション２０１に送ったり、さらに動画像アプリケーション２０１が発行したコマンドをＵＳＢカメラ・ドライバ２０７に渡したりする。静止画像転送サービス２０５は、ＯＳのユーザ・モードで動作する新規のプログラムで、静止画転送モードで転送される静止画像データを静止画像アプリケーション２０２に送ったり、静止画像アプリケーション２０２からのコマンドをＵＳＢカメラ・ドライバ２０７に送ったりする。
【００４９】
ＵＳＢカメラ・ドライバ２０７は、カメラ・モジュール１００の動作を制御したりデータ転送を制御したりするデバイス・ドライバである。ＵＳＢクラス・ドライバ２０９は、ＵＳＢビデオ・クラスに定義された共通の処理を行うデバイス・ドライバである。ＵＳＢバス・ドライバ２１１は、ＵＳＢコントローラに接続されたＵＳＢバスの動作を制御する。
【００５０】
ＵＳＢバス・ドライバ２１１は、ＵＳＢカメラ・ドライバ２０７からカメラ・モジュール１００を選択サスペンドに遷移させる指示を受け取ったときに、カメラ・モジュール１００に接続されたＵＳＢバス５０をアイドル状態に遷移させ、レジュームさせる指示またはデータ転送の指示を受け取ったときにＵＳＢバスをアクティブ状態（レジューム状態）に遷移させる。ＵＳＢホスト・コントロール・ドライバ２１３は、ＵＳＢデバイスに対するデータ転送とＵＳＢホスト・コントローラの動作を制御する。
【００５１】
［静止画像転送モードの手順］
つぎに、図４、図５を参照して静止画像転送モードによりカメラ・モジュール１００が画像データを転送する手順を説明する。図４は、静止画像転送モードにおけるカメラ・モジュール１００の動作状態を説明する図である。図４（Ａ）は全体動作を示し、図４（Ｂ）は最初の転送周期の詳細を示し、図４（Ｃ）は２番目以降の転送周期の詳細を示している。図５は、静止画像転送モードにより画像データを転送する手順を説明するフローチャートである。
【００５２】
図４（Ａ）において、２個目の画像データを転送するためのフレーム転送コマンドを発行する時刻ｔ１と３個目の画像データを転送するためのフレーム転送コマンドを発行する時刻ｔ２間の時間、および時刻ｔ２と４個目の画像データを転送するためのフレーム転送コマンドを発行する時刻ｔ３の間の時間のように２番目以降の画像データを転送するためにフレーム転送コマンドを発行する一定の時間間隔を転送周期Ｔという。
【００５３】
ブロック３０１では、ＵＳＢバス５０はアイドル状態に遷移し、さらにカメラ・モジュール１００は選択サスペンド状態に遷移している。静止画像転送モードではストリーミング・サービス２０３は実行しないためＣＰＵ１１の負荷はその分だけ小さい。パラメータ値を設定するカメラ・モジュール１００の各種レジスタはクリアされている。時刻ｔ０で静止画像アプリケーション２０２が転送開始コマンドをＵＳＢカメラ・ドライバ２０７に送る。転送開始コマンドは画像データの転送周期Ｔと転送フレーム数を含む。
【００５４】
ここでは一例として転送周期を１秒とし、転送フレーム数を１フレームとする。この場合はフレーム・レートが１ｆｐｓとなる。フレーム・レートは、もし転送周期を２秒にすれば０．５ｆｐｓになり、転送フレーム数を２フレームとすれば２ｆｐｓとなる。ＵＳＢカメラ・ドライバ２０７は、ＵＳＢクラス・ドライバ２０９を介してＵＳＢバス・ドライバ２１１に転送開始コマンドから生成した１個目のフレーム転送コマンドを送る。
【００５５】
ブロック３０３では、ＵＳＢバス・ドライバ２１１がＵＳＢバス５０をレジュームさせて１個目のフレーム転送コマンドをカメラ・モジュール１００に送る。ＳＩＥ１１１は、ＵＳＢバス５０がレジュームしたことを検知するとＭＰＵ１１５にクロックを送って動作させる。ＭＰＵ１１１は時刻ｔｗ０で動作を開始してフレーム転送コマンドを実行しカメラ・モジュール１００をウェイクアップさせる。
【００５６】
ブロック３０５では、ＭＰＵ１１５は、各種レジスタにフラッシュＲＯＭ１１９に格納されたキャリブレーションの必要のない固定パラメータ値を設定し、さらに、露光時間、ホワイト・バランスおよびＡＧＣ回路のゲインなどのパラメータ値を取得するためにイメージ・センサ１０３およびＩＳＰ１０５にキャリブレーションを実行させて取得したパラメータ値を各レジスタに設定する。
【００５７】
さらにＭＰＵ１１５は、キャリブレーションして取得したパラメータ値をＵＳＢカメラ・ドライバ２０７からの要求を受けて送付する。ＵＳＢカメラ・ドライバ２０７は、受け取ったパラメータ値をメイン・メモリ１３に記憶する。さらにＭＰＵ１１５はすべての画素のローリング・シャッタを順番にリセットして時刻ｔｘ０に到達する。ウェイクアップした時刻ｔｗ０から撮影の準備が完了した時刻ｔｘ０までは１〜２秒程度必要とする。
【００５８】
ブロック３０７ではローリング・シャッタのリセットが終了すると時刻ｔｘ０で順番に画素を走査して画像信号を読み出して１個目のフレームの画像データの転送を開始する。ＳＩＥ１１１は、エンコーダ１０７から出力された画素データを所定のブロックごとにパケット化して静止画像アプリケーション２０２に出力する。ＭＰＵ１１５は、イメージ・センサ１０３が１フレームの画像データだけを生成するように制御する。ブロック３０９でＭＰＵ１１５は、１フレーム分の画像データの出力を時刻ｔｙ０で完了する。この時点でカメラ・モジュール１００の電力状態はパワー・オン状態を維持するかまたはそれよりわずかに消費電力が少ないロー・パワー状態に遷移してもよいが、最も消費電力が少ない選択サスペンド状態にはまだ遷移しない。
【００５９】
時刻ｔｘ０から時刻ｔｙ０までの時間は、イメージ・センサ１０３のフレーム・レートが３０ｆｐｓであることより、ほぼ１／３０秒（３３ミリ秒）である。ブロック３１１では、１個目の画像データの転送が完了したことを検出したＵＳＢカメラ・ドライバ２０７は、時刻ｔ０ｒでＵＳＢバス・ドライバ２１１にカメラ・モジュール１００をサスペンド状態に遷移させるためのバス停止コマンドを送る。バス停止コマンドを受け取ったＵＳＢバス・ドライバ２１１は、ＵＳＢバス５０をアイドル状態に遷移させる。
【００６０】
時刻ｔｓ０でＵＳＢバス５０がアイドル状態に遷移したことを検出したＳＩＥ１１１は、ブロック３１３でＭＰＵ１１５に割り込みをかけて、カメラ・モジュール１００を最も消費電力の少ない選択サスペンド状態に遷移させる。選択サスペンド状態に遷移するとレジスタに設定されたパラメータ値は消去されるため、次回の読み出しの際には再度パラメータ値の設定が必要になる。
【００６１】
時刻ｔ０から時刻ｔ１までの時間はキャリブレーションの時間を含むために転送周期より長い。ブロック３１５では、時刻ｔ１で１個目の画像データの転送が完了したことを確認したＵＳＢカメラ・ドライバ２０７が、２個目のフレーム転送コマンドをカメラ・モジュール１００に送る。ＵＳＢカメラ・ドライバ２０７は、２個目のフレーム転送コマンドを送る際に、ブロック３０５でカメラ・モジュール１００から取得したパラメータ値も一緒に送る。２個目のフレーム転送コマンドを送るためにＵＳＢバス・ドライバ２１１がＵＳＢバス５０をレジュームさせる。
【００６２】
カメラ・モジュール１００はＵＳＢバス５０がレジュームしたことを検出すると、時刻ｔｗ１でウェイクアップする。１個目のフレームの画像データを転送する場合と異なり、ＭＰＵ１１５は２個目以降のフレームの画像データを転送する際には、キャリブレーションをしない。ＭＰＵ１１５はフラッシュＲＯＭ１１９に格納された固定パラメータ値とＵＳＢカメラ・ドライバ２０７から取得したキャリブレーションの必要なパラメータ値を各レジスタに設定する。
【００６３】
つづいてＭＰＵ１１５は、ローリング・シャッタのリセットをしてから１フレーム分の画像データを生成し時刻ｔｙ１で出力を完了する。時刻ｔ１で２個目のフレーム転送コマンドが発行されてから画像データが生成できる状態になるまでの撮影準備時間は、パラメータの設定時間を約３ミリ秒とすれば、ローリング・シャッタのリセット時間との合計で約３６ミリ秒以下とすることができる。したがって時刻ｔ１から時刻ｔｙ１までの時間は、それに１フレーム分の画像データの生成時間（３３ミリ秒）を加えて約７０ミリ秒以内とすることができる。なお、画像データは数ライン分が生成されると１フレーム分生成するのを待たないで所定のパケット単位で転送されるため出力の時間は無視することができる。
【００６４】
時刻ｔｙ１で１フレーム分の画像データの転送が完了したことを検出したＵＳＢカメラ・ドライバ２０７は、時刻ｔ１ｒでカメラ・モジュール１００を最も消費電力の少ない選択サスペンド状態に遷移させるためにＵＳＢバス・ドライバ２１１にバス停止コマンドを送る。ＵＳＢバス５０がアイドル状態に遷移すると時刻ｔｓ１でカメラ・モジュール１００は、選択サスペンド状態に遷移する。時刻ｔｙ１から時刻ｔｓ１までの時間は、時刻ｔ１から時刻ｔｙ１までの時間に比べて十分に短い。
【００６５】
時刻ｔｗ１から時刻ｔｓ１までの時間は、２番目以降の各転送周期においてカメラ・モジュールが撮影状態に遷移している時間でこれを実動作時間Ｔａという。同様に最初の転送周期で撮影状態に遷移する時刻ｔｗ０から選択サスペンド状態に遷移する時刻ｔｓ０までの時間を実動作時間Ｔｂという。転送周期Ｔに対する実動作時間Ｔａ、Ｔｂの割合が小さいほど単位画像データに対するカメラ・モジュール１００の消費電力は低下する。
【００６６】
静止画像アプリケーション２０２は、画像データの転送を開始したあとはいつでもカメラ・モジュール１００に転送終了コマンドを発行して静止画像データの転送を終了することができる。ブロック３１６では、カメラ・モジュール１００が転送終了コマンドを受け取っていればブロック３１７に移行して静止画像転送モードを終了して選択サスペンド状態に遷移する。転送終了コマンドを受け取っていない場合は、ブロック３１９に移行する。
【００６７】
本実施の形態では、画像データを転送する際に、カメラ・モジュール１００のキャリブレーションを最初の転送周期のときにだけ行い、２番目以降の転送周期では撮影条件が変化しないという仮定に基づいてそれ以前にキャリブレーションをして取得したパラメータ値を使用する。しかし、静止画像転送モードでの画像データの転送を長い時間継続すると、主として照度に関する撮影条件が変化して鮮明な画像が得られなくなる可能性がある。
【００６８】
静止画像アプリケーション２０２は、受け取った画像データから顔の向きを認識できなくなったと判断した場合や、周知の方法で画質の低下を認識したときに、キャリブレーションを再実行する再実行コマンドを発行する。ブロック３１９では、静止画像アプリケーション２０２が再実行コマンドを発行したときはブロック３２１に移行する。ブロック３２１でカメラ・モジュール１００はブロック３０５と同様の手順でキャリブレーションを実行し、取得したパラメータ値をＵＳＢカメラ・ドライバ２０７に送る。
【００６９】
ＵＳＢカメラ・ドライバ２０７はパラメータ値を受け取ったあとにフレーム転送コマンドを発行するときは、更新されたパラメータ値をカメラ・モジュール１００に送る。カメラ・モジュール１００は、それ以降の転送周期においてＵＳＢカメラ・ドライバ２０７から受け取った更新されたパラメータ値をレジスタに設定して新たな画像データを生成する。ブロック３１５に戻って、ＵＳＢカメラ・ドライバ２０７は、静止画像アプリケーション２０２から取得した転送開始コマンドに基づいて一定の周期でフレーム転送コマンドを発行し、カメラ・モジュール１００は同様の手順で３番目以降の各転送周期で静止画像データを静止画像アプリケーション２０２に送る。
【００７０】
静止画像アプリケーション２０２が再実行コマンドを発行しないときはブロック３２３に移行する。静止画像アプリケーション２０２は、取得した画像データを分析して変化が激しくなったり単調になったりしたときに、転送周期を変更することができる。ブロック３２３では、静止画像アプリケーション２０２が転送周期の変更の必要性を判断し、必要なときはブロック３２５に移行し、必要がないときはブロック３１５に戻る。
【００７１】
ブロック３２５では、静止画像アプリケーション２０２がＵＳＢカメラ・ドライバ２０７に転送周期を変更する変更コマンドを送る。ＵＳＢカメラ・ドライバ２０７はそれ以降のフレーム転送コマンドを変更された転送周期でカメラ・モジュール１００に送る。静止画像アプリケーション２０２がその必要性に基づいて転送周期、すなわちフレーム・レートを変更することで、単位時間当たりで必要とする量の画像データを最も消費電力の少ない方法で取得することができるようになる。
【００７２】
従来の方法でカメラ・モジュール１００から静止画像を取得する場合は、静止画像の取得が完了するまでストリーミング・サービス２０３が動画像アプリケーション２０１に送り続ける動画像データから動画像アプリケーション２０１が静止画像を取得していた。したがって、多くの画像データが無駄に捨てられることになり、ストリーミング・サービス２０３を実行するＣＰＵ１１の消費電力も増大する。静止画像転送モードでは、カメラ・システム１０が最小限必要な動作をして１フレームの画像データを転送すればよいために、カメラ・モジュール１００の消費電力に加えて、ＣＰＵ１１の消費電力およびＵＳＢバス５０の消費電力も大幅に低減することができる。
【００７３】
本実施の形態では１フレームに相当する画像データの転送には約３３ミリ秒を費やす。転送周期を１秒としたときに、各転送周期において複数のフレームを転送するようにしてもサスペンド状態に遷移している時間を確保できるためある程度のフレーム数までは消費電力の低減効果を期待することができる。したがって、各転送周期において転送する画像データのフレーム数は２以上としてもよい。
【００７４】
［静止画像転送モードの特徴］
静止画像転送モードは、画像データを順番にまたは一定の転送周期で転送する点で動画像転送モードに類似する面がある。動画像は単位時間当たりに更新される静止画像の集合であるため、両者は転送される画像データのフレーム・レートで区別することができる。
【００７５】
動画像はフレーム・レートが大きいほど滑らかな動きの映像となるが、その分だけデータ量が多くなる。フレーム・レートとしては、ＮＴＳＣ方式では３０ｆｐｓ、ＰＡＬ方式およびＳＥＣＡＭ方式では２５ｆｐｓ、携帯電話・移動体端末向け１セグメント部分受信サービス（ワンセグ）では１５ｆｐｓが使用されている。したがって静止画像転送モードは、これらに規定されるフレーム・レートより小さいフレーム・レートで画像データを転送する転送方法ということができる。
【００７６】
本発明の主要な特徴は、各転送周期において選択サスペンド状態に遷移して画像データを転送することで、ある程度のフレーム・レートは必要とするが動画像のフレーム・レートまでは必要としない用途に対して消費電力の少ないデータ転送を実現することにある。静止画像転送モードの転送周期は、消費電力の低減効果に対する期待値からの最小限界値とアプリケーションが要求するフレーム・レートからの最大限界値で規定される。そして各転送周期においてキャリブレーションをスキップする意義は両方からの要求を最大限に満たす点にある。
【００７７】
図４（Ｂ）に示すキャリブレーションを行うときの時刻ｔｗ０から時刻ｔｓ０までの実動作時間をＴｂとし、図４（Ｃ）に示すキャリブレーションをスキップしたときの時刻ｔｗ１から時刻ｔｓ１までの実動作時間をＴａとしたときに、Ｔｂ／ＴおよびＴａ／Ｔはそれぞれ単位静止画像当たりの省電力効果を示しており、これを電力低減率ηということにする。
【００７８】
電力低減率は、従来のようにサスペンドしないカメラ・モジュール１００の消費電力に対する静止画像転送モードの消費電力の割合を示す。図６は、転送周期Ｔと電力低減率ηの関係を示す図である。ライン４０１は、各転送周期でキャリブレーションをスキップしたときの電力低減率を示し、ライン４０３は各転送周期でキャリブレーションを実施したときの電力低減率を示している。
【００７９】
横軸の転送周期Ｔは、その逆数がフレーム・レートに相当する。いずれも転送周期が増大するとそれに反比例して電力低減率が低下する。ここで電力低減率が低下するとは、電力低減効果が向上するという意味になる。ライン４０１、４０３で転送周期がそれぞれ実動作時間Ｔａ、Ｔｂのときは電力低減率が１．０になって、カメラ・モジュール１００はサスペンド状態に遷移しなくなる。実動作時間Ｔａ、Ｔｂは選択サスペンド状態から復帰して画像データを生成するまでの待ち時間と実際に画像データを生成および出力する時間で構成され、カメラ・モジュールの固有の性能に依存する。
【００８０】
実動作時間Ｔａ、Ｔｂを所与の値としたときに、各転送周期でサスペンド状態に遷移するためには、転送周期に理論的な下限値、またはフレーム・レートの理論的な上限値が存在することになる。たとえばキャリブレーションをしない場合の実動作時間Ｔａが約７０ミリ秒の場合には、３０ミリ秒のサスペンド遷移時間を加えた１００ミリ秒を転送周期の理論的な下限値として考えることができる。この値はフレーム・レートに換算すると１０ｆｐｓになる。キャリブレーションをする場合は、実動作時間Ｔｂが約１〜２秒と大きいため２秒を転送周期の理論的な下限値として考えることができる。この値はフレーム・レートに換算すると０．５ｆｐｓに相当する。
【００８１】
静止画像転送モードは、カメラ・モジュール１００が連続的にパワー・オン状態を維持する場合に比べて電力低減率がある程度大きいことが期待され、また、アプリケーションが目的を果たすためには動画像ほどではないとしてもある程度の頻度で画像データが更新される必要がある。ここに静止画像転送モードに対して電力低減率ηの上限値に対する要求がでて、静止画像アプリケーション２０２から転送周期の上限値またはフレーム・レートの下限値に対する要求がでてくる。
【００８２】
図６で電力低減率の上限値がη１だとすれば、キャリブレーションをしない場合は電力低減率をη１以下にするためには転送周期をＴ１以上にする必要がある。キャリブレーションをする場合は電力低減率をη１以下にするためには転送周期をＴ２以上にする必要がある。アプリケーションの要求による転送周期Ｔの上限値をＴｘとすれば、キャリブレーションをしない場合は転送周期をＴ１とＴｘの間に設定することができ、キャリブレーションをする場合はＴ２とＴｘの間に設定することができる。
【００８３】
図６から明らかなように、静止画像アプリケーション２０２の要求するフレーム・レートが大きくなって転送周期ＴｘがＴ２より小さくなった場合は、キャリブレーションをすると静止画像転送モードを実現できなくなる。また、電力低減率ηの上限値がη２未満まで低下させようとした場合には転送周期ＴがＴ２よりも長くなってキャリブレーションをすると静止画像転送モードを実現できなくなる。また、キャリブレーションをしても実現できる転送周期に対して、キャリブレーションをしないほうが電力低減率は小さくなる。
【００８４】
一例では電力低減率の上限値を０．１としたときの転送周期の下限値は、キャリブレーションしない場合は約１秒（フレーム・レートの上限値は１ｆｐｓ）でキャリブレーションした場合は２０秒（フレーム・レートの上限値は０．０５ｆｐｓ）となる。また、電力低減率の上限値を０．２まで緩和したときの転送周期の下限値は、キャリブレーションしない場合は０．５秒（フレーム・レートの上限値は２ｆｐｓ）でキャリブレーションした場合は１０秒（フレーム・レートの上限値は０．１ｆｐｓ）となる。したがって、静止画像転送モードの実用的な転送周期は、電力低減率の上限値とアプリケーションが要求するフレーム・レートの下限値で決定することができる。
【００８５】
これまで、カメラ・モジュールをシステムに接続するインターフェースにＵＳＢを例示して説明したが、インターフェースは、ＩＥＥＥ１３９４などのローカル・インターフェースでもよい。また、カメラ・モジュールは有線または無線のネットワークでノートＰＣ１０に接続してもよい。また、ＵＳＢカメラ・ドライバ２０７のフレーム転送コマンドと停止コマンドで各転送周期におけるカメラ・モジュール１００のウェイクアップと選択サスペンド状態への遷移を制御する例を説明したが、本発明では転送開始コマンドを受け取ってから転送終了コマンドを受け取るまでのパワー・ステートの制御をカメラ・モジュール１００のファームウェアで実行することもできる。
【００８６】
たとえば、カメラ・モジュール１００は静止画像アプリケーション２０２から指示された転送周期で画像データを転送する際に、サスペンド状態への遷移のタイミングと撮影状態への遷移のタイミングを自らが決定することができる。このときサスペンド状態の間は、時間を計測する最小限の回路にだけ電力を供給したり、コンデンサに蓄積した電荷の放電時間を利用したりして、ウェイクアップのタイミングを取得するように構成してもよい。
【００８７】
カメラ・モジュール１０がキャリブレーションして取得したパラメータ値は、一旦、ＵＳＢカメラ・ドライバ２０７に送りＵＳＢカメラ・ドライバ２０７がフレーム転送コマンドを送るたびにカメラ・モジュールに送る例を説明したが、パラメータ値は、フラッシュＲＯＭ１１９に記憶して静止画像転送モードのときには、ウェイクアップのたびに、ＭＰＵ１１５が各レジスタに設定するようにしてもよい。
【００８８】
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。
【符号の説明】
【００８９】
１０  カメラ・システム
１００  カメラ・モジュール
【図１】
0005485956.tif 000002
【図２】
0005485956.tif 000003
【図３】
0005485956.tif 000004
【図４】
0005485956.tif 000005
【図５】
0005485956.tif 000006
【図６】
0005485956.tif 000007