(57)【特許請求の範囲】
【請求項１】
対象物を撮影して得られる動画像の各フレーム画像から複数解像度の画像のデータを生成し、横一列の画素ごとに各画像のストリームとして順次出力する画像データ生成部と、
前記画像データ生成部から出力された前記複数解像度の画像のデータを、画像の横一列分の画素列またはそれより小さい範囲の画素列単位で所定の順序で接続することにより、前記複数解像度の画像がそれぞれ矩形領域を構成する仮想的な合成画像を横一列の画素列ごとに生成し、ストリームとして出力する画像合成部と、
接続したホスト端末から、前記仮想的な合成画像における、縦方向の範囲を同じとした複数の矩形領域を指定するデータの送信要求を受け付け、前記画像合成部が出力した前記仮想的な合成画像の画素列ごとに、指定された領域を切り出して接続し、新たなストリームとして前記ホスト端末に送信する画像送出部と、
を備えることを特徴とする動画像撮影装置。
【請求項２】
前記動画像撮影装置は、対象物を既知の距離を隔てた左右の視点から撮影する２つのカメラをさらに備え、
前記画像データ生成部は、前記２つのカメラが撮影した左右のフレーム画像をそれぞれ多段階で縮小することにより、複数解像度の画像のデータを左右のフレーム画像について生成したうえ、それぞれの画像の横一列の画素ごとに出力し、
前記画像合成部は、前記仮想的な合成画像において左右のフレーム画像の複数解像度の画像がそれぞれ矩形領域を構成するように前記画像データ生成部から出力された画像のデータを接続することを特徴とする請求項１に記載の動画像撮影装置。
【請求項３】
前記２つのカメラのうち第２のカメラは、第１のカメラが２以上の所定の数のフレームを撮影するごとに同じシャッタースピードで１フレーム撮影し、
前記画像合成部は、前記第１のカメラが撮影したフレーム画像から生成された画像のデータのみが前記画像データ生成部から出力される期間、前記仮想的な合成画像のうち、前記第２のカメラが撮影したフレーム画像から生成された画像が構成すべき矩形領域が無効データで構成されるように、前記画像データ生成部から出力された画像のデータに無効データを接続してストリームに加え、
前記画像送出部は、無効データの有無に関わらず指定された領域を切り出すことを特徴とする請求項２に記載の動画像撮影装置。
【請求項４】
前記２つのカメラのうち第２のカメラは、Ｎを２以上の自然数としたとき、第１のカメラの１／Ｎ倍のフレームレート、およびＮ倍のシャッタースピードで撮影し、
前記画像合成部は、前記第１のカメラが撮影したフレーム画像から生成された画像のデータの横Ｎ列の画素列のそれぞれに対し、前記第２のカメラが撮影したフレーム画像から生成された画像のデータの横一列の同一の画素列を接続することを特徴とする請求項２に記載の動画像撮影装置。
【請求項５】
前記２つのカメラのうち第１のカメラは、縦方向の長さが第２のカメラの１／Ｎ（Ｎは２以上の自然数）の撮影範囲をＮ倍のフレームレートで撮影し、
前記画像合成部は、前記第２のカメラが撮影した１フレーム分の画像のデータの画素列に対し、前記第１のカメラが撮影したＮフレーム分の画像のデータの画素列をそれぞれ接続することを特徴とする請求項２に記載の動画像撮影装置。
【請求項６】
対象物を撮影して動画像のデータを生成する動画像撮影装置と、当該動画像撮影装置から動画像のデータの一部を取得し、それを利用して所定の画像処理を行ったうえ画像を表示するホスト端末と、を備えた情報処理システムであって、
前記動画像撮影装置は、
動画像の各フレーム画像から複数解像度の画像のデータを生成し、横一列の画素ごとに各画像のストリームとして順次出力する画像データ生成部と、
前記画像データ生成部から出力された前記複数解像度の画像のデータを、画像の横一列分の画素列またはそれより小さい範囲の画素列単位で所定の順序で接続することにより、前記複数解像度の画像がそれぞれ矩形領域を構成する仮想的な合成画像を横一列の画素列ごとに生成し、ストリームとして出力する画像合成部と、
接続したホスト端末から、前記仮想的な合成画像における、縦方向の範囲を同じとした複数の矩形領域を指定するデータの送信要求を受け付け、前記画像合成部が出力した前記仮想的な合成画像の画素列ごとに、指定された領域を切り出して接続し、新たなストリームとして前記ホスト端末に送信する画像送出部と、を備え、
前記ホスト端末は、
前記動画像撮影装置において生成される複数解像度の画像のデータのうち少なくとも２つの画像のデータに対応する、前記仮想的な合成画像における矩形領域を、縦方向の範囲を同じとして指定してデータの送信を要求するデータ要求部と、
前記動画像撮影装置から送信されたストリームを、指定した各矩形領域の横方向の長さに基づき個別の画像のデータに分別し、２次元の画像としてメモリに展開するデータ展開部と、
を備えることを特徴とする情報処理システム。
【請求項７】
対象物を撮影して得られる動画像の各フレーム画像から生成した複数解像度の画像をそれぞれ所定の矩形領域に配置した合成画像を生成する動画像撮影装置に対し、少なくとも２つの画像のデータに対応する、前記合成画像における矩形領域を、縦方向の範囲を同じとして指定してデータの送信を要求するデータ要求部と、
要求に従って前記動画像撮影装置から送信された、指定した複数の矩形領域の画素値を画素列ごとに接続したストリームの状態の画像データを、指定した各矩形領域の横方向の長さに基づき個別の画像のデータに分別し、２次元の画像としてメモリに展開するデータ展開部と、
前記２次元の画像を利用して所定の画像処理を行ったうえ画像を表示するデータ処理部と、
を備えることを特徴とする情報処理装置。
【請求項８】
動画像撮影装置が行う画像データ処理方法であって、
対象物を撮影して得られる動画像の各フレーム画像から複数解像度の画像のデータを生成し、横一列の画素ごとに各画像のストリームとして順次出力するステップと、
前記出力するステップにおいて出力された前記複数解像度の画像のデータを、画像の横一列分の画素列またはそれより小さい範囲の画素列単位で所定の順序で接続することにより、前記複数解像度の画像がそれぞれ矩形領域を構成する仮想的な合成画像を横一列の画素列ごとに生成し、ストリームとして出力するステップと、
接続したホスト端末から、前記仮想的な合成画像における、縦方向の範囲を同じとした複数の矩形領域を指定するデータの送信要求を受け付け、前記仮想的な合成画像の画素列ごとに、指定された領域を切り出して接続し、新たなストリームとして前記ホスト端末に送信するステップと、
を含むことを特徴とする画像データ処理方法。
【請求項９】
対象物を撮影して得られた動画像のデータを出力する撮像装置のコンピュータに、
前記動画像の各フレーム画像から生成された複数解像度の画像のデータを、画像の横一列分の画素列またはそれより小さい範囲の画素列単位で所定の順序で接続することにより、前記複数解像度の画像がそれぞれ矩形領域を構成する仮想的な合成画像を横一列の画素列ごとに生成し、ストリームとして出力する機能と、
接続したホスト端末から、前記仮想的な合成画像における、縦方向の範囲を同じとした複数の矩形領域を指定するデータの送信要求を受け付け、前記仮想的な合成画像の画素列ごとに、指定された領域を切り出して接続し、新たなストリームとして前記ホスト端末に送信する機能と、
を実現させることを特徴とするコンピュータプログラム。
【請求項１０】
対象物を撮影して得られた動画像のデータを出力する撮像装置のコンピュータに、
前記動画像の各フレーム画像から生成された複数解像度の画像のデータを、画像の横一列分の画素列またはそれより小さい範囲の画素列単位で所定の順序で接続することにより、前記複数解像度の画像がそれぞれ矩形領域を構成する仮想的な合成画像を横一列の画素列ごとに生成し、ストリームとして出力する機能と、
接続したホスト端末から、前記仮想的な合成画像における、縦方向の範囲を同じとした複数の矩形領域を指定するデータの送信要求を受け付け、前記仮想的な合成画像の画素列ごとに、指定された領域を切り出して接続し、新たなストリームとして前記ホスト端末に送信する機能と、
を実現させるコンピュータプログラムを記録したことを特徴とする、コンピュータにて読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物の動きに応じて情報処理を行う技術に関する。
【背景技術】
【０００２】
従来、ユーザの頭部など体の一部をビデオカメラで撮影し、目、口、手などの所定の領域を抽出し、その領域を別の画像で置換してディスプレイに表示するゲームが知られている（例えば、特許文献１）。また、ビデオカメラで撮影された口や手の動きをアプリケーションの操作指示として受け取るユーザインタフェースシステムも知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】欧州特許出願公開第０９９９５１８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような技術では、ユーザの口や手などの所定の領域を抽出するために高解像度の画像が必要になる。しかしながら、ビデオカメラの撮像素子を高性能化するほど画像のデータ量が増大する。その結果、転送用の圧縮、伸張処理や認識、検出、計測処理等に必要な情報を適切なスケールで提供するフィルタリングやスケーリング、クロッピング等のデータマイニング処理コストが増え、カメラ入力から各処理出力までのレイテンシが増大してしまうという問題がある。また、カメラをユーザインタフェースとして使用する場合には、レイテンシの増大が使い勝手の著しい低下を招くという問題がある。このように、ビデオカメラの撮像素子の性能が向上しても、システム全体としての性能が悪化してしまうおそれがある。
【０００５】
本発明はこうした課題に鑑みてなされたものであり、その目的は、高性能の撮像素子を使用しつつ、撮像から、そのデータを用いた画像表示までのレイテンシを抑制することができる画像処理技術を提供することにある。
【課題を解決するための手段】
【０００６】
本発明のある態様は動画像撮影装置に関する。この動画像撮影装置は、対象物を撮影して得られる動画像の各フレーム画像から複数の画像のデータを生成し、横一列の画素ごとにストリームとして順次出力する画像データ生成部と、画像データ生成部から出力された複数の画像のデータを、画像の横一列分の画素列またはそれより小さい範囲の画素列ごとに循環して接続し、ストリームとして出力することにより、接続が一巡したときの画素列を横一列分の画素列とする、複数の画像を含む仮想的な合成画像を生成する画像合成部と、接続したホスト端末から、仮想的な合成画像における、縦方向の範囲を同じとした複数の矩形領域を指定するデータの送信要求を受け付け、画像合成部が出力した仮想的な合成画像の画素列ごとに、指定された領域を切り出して接続し、新たなストリームとしてホスト端末に送信する画像送出部と、を備えることを特徴とする。
【０００７】
本発明のさらに別の態様は情報処理システムに関する。この情報処理システムは、対象物を撮影して動画像のデータを生成する動画像撮影装置と、当該動画像撮影装置から動画像のデータの一部を取得し、それを利用して所定の画像処理を行ったうえ画像を表示するホスト端末と、を備えた情報処理システムであって、動画像撮影装置は、動画像の各フレーム画像から複数の画像のデータを生成し、横一列の画素ごとにストリームとして順次出力する画像データ生成部と、画像データ生成部から出力された複数の画像のデータを、画像の横一列分の画素列またはそれより小さい範囲の画素列ごとに循環して接続し、ストリームとして出力することにより、接続が一巡したときの画素列を横一列分の画素列とする、複数の画像を含む仮想的な合成画像を生成する画像合成部と、接続したホスト端末から、仮想的な合成画像における、縦方向の範囲を同じとした複数の矩形領域を指定するデータの送信要求を受け付け、画像合成部が出力した仮想的な合成画像の画素列ごとに、指定された領域を切り出して接続し、新たなストリームとしてホスト端末に送信する画像送出部と、を備え、ホスト端末は、動画像撮影装置において生成される複数の画像のデータのうち少なくとも２つの画像のデータに対応する、仮想的な合成画像における矩形領域を、縦方向の範囲を同じとして指定してデータの送信を要求するデータ要求部と、動画像撮影装置から送信されたストリームを、指定した各矩形領域の横方向の長さに基づき個別の画像のデータに分別し、２次元の画像としてメモリに展開するデータ展開部と、を備えることを特徴とする。
【０００８】
本発明のさらに別の態様は情報処理装置に関する。この情報処理装置は、対象物を撮影して得られる動画像の各フレーム画像から生成した複数の画像をそれぞれ所定の矩形領域に配置した合成画像を生成する動画像撮影装置に対し、少なくとも２つの画像のデータに対応する、合成画像における矩形領域を、縦方向の範囲を同じとして指定してデータの送信を要求するデータ要求部と、要求に従って動画像撮影装置から送信された、指定した複数の矩形領域の画素値を画素列ごとに循環して接続したストリームの状態の画像データを、指定した各矩形領域の横方向の長さに基づき個別の画像のデータに分別し、２次元の画像としてメモリに展開するデータ展開部と、２次元の画像を利用して所定の画像処理を行ったうえ画像を表示するデータ処理部と、を備えることを特徴とする。
【０００９】
本発明のさらに別の態様は画像データ処理方法に関する。この画像データ処理方法は、動画像撮影装置が行う画像データ処理方法であって、対象物を撮影して得られる動画像の各フレーム画像から複数の画像のデータを生成し、横一列の画素ごとにストリームとして順次出力するステップと、出力された複数の画像のデータを、画像の横一列分の画素列またはそれより小さい範囲の画素列ごとに循環して接続し、ストリームとして出力することにより、接続が一巡したときの画素列を横一列分の画素列とする、複数の画像を含む仮想的な合成画像を生成するステップと、接続したホスト端末から、仮想的な合成画像における、縦方向の範囲を同じとした複数の矩形領域を指定するデータの送信要求を受け付け、仮想的な合成画像の画素列ごとに、指定された領域を切り出して接続し、新たなストリームとして前記ホスト端末に送信するステップと、を含むことを特徴とする。
【００１０】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを記録した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１１】
本発明によると、撮像から、そのデータを用いた画像の表示までのレイテンシを抑えることができる。
【図面の簡単な説明】
【００１２】
【図１】本実施の形態を適用できる情報処理システムの構成例を示す図である。
【図２】本実施の形態におけるホスト端末と撮像装置の構成を示す図である。
【図３】本実施の形態における撮像装置の第１カメラの構成を詳細に示す図である。
【図４】本実施の形態における画像合成部および画像送出部の構成を詳細に示す図である。
【図５】本実施の形態の撮像装置およびホスト端末におけるデータの形態の基本的な変遷を模式的に示す図である。
【図６】本実施の形態における、１／４デモザイク後画像、１／１６デモザイク後画像、１／６４デモザイク後画像の画素値の、ピラミッドフィルタ部からの入力タイミングを示すタイムチャートである。
【図７】本実施の形態において画像合成部が複数の画像の画素列のデータをつなげた様子を模式的に示す図である。
【図８】図７を参照して説明した処理を、第１カメラ、第２カメラが出力する各画像データについて交互に繰り返したときに生成される合成画像を示す図である。
【図９】本実施の形態においてホスト端末からの要求に応じた画像データの流れを模式的に示す図である。
【図１０】本実施の形態においてローリングシャッターを備えた第１カメラおよび第２カメラによって異なるフレームレートで撮影した場合に画像合成部が生成する合成画像の変遷を示す図である。
【図１１】図１０で示した撮影条件においてクロッピング部が切り出して生成する新たな合成画像とホスト端末のメインメモリに格納される画像を示す図である。
【図１２】図１０に示した撮影条件のうち、第２カメラのシャッタースピードを１／４倍にし、第１カメラが４フレーム撮影する時間をかけて第２カメラが１フレーム撮影する場合の合成画像の変遷を示す図である。
【図１３】図１２で示した撮影条件においてクロッピング部が切り出して生成する新たな合成画像とホスト端末のメインメモリに格納される画像を示す図である。
【図１４】本実施の形態において第１カメラが、第２カメラより小さい画角を、第２カメラより高いフレームレートで撮影する場合の合成画像の変遷を示す図である。
【図１５】図１４で示した撮影条件においてクロッピング部が切り出して生成する新たな合成画像とホスト端末のメインメモリに格納される画像を示す図である。
【図１６】本実施の形態においてホスト端末と撮像装置が協働して画像表示を行う処理手順の例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
７００
図１は本実施の形態を適用できる情報処理システムの構成例を示す。情報処理システム１０は、ユーザ１などの対象物を撮影する２つのカメラを搭載した撮像装置１２、撮影した画像に基づき、ユーザの要求に応じた情報処理を行うホスト端末２０、ホスト端末２０が処理した結果得られた画像データを出力する表示装置１６を含む。またホスト端末２０はインターネットなどのネットワーク１８と接続可能とする。
【００１４】
ホスト端末２０と、撮像装置１２、表示装置１６、ネットワーク１８とは、有線ケーブルで接続されてよく、また無線ＬＡＮ（Local Area Network）などにより無線接続されてもよい。撮像装置１２、ホスト端末２０、表示装置１６のうちいずれか２つ、または全てが組み合わされて一体的に装備されていてもよい。また、撮像装置１２は必ずしも表示装置１６の上に設置されていなくてもよい。さらにユーザ１は人でなくてもよく、その数も限定されない。
【００１５】
撮像装置１２は、それぞれがＣＣＤ（Charge Coupled Device）またはＣＭＯＳ（Complementary Metal Oxide Semiconductor）等の撮像素子を備えた、第１カメラ２２ａ、第２カメラ２２ｂ、の２つのデジタルビデオカメラを既知の間隔で左右に配置した構成を有する。２つのデジタルビデオカメラはそれぞれ、同一空間に存在する対象物を左右の位置から同一、あるいは異なるフレームレートで撮影する。撮像装置１２はさらに、撮影した結果得られた画像を用いて複数種類の画像データを生成する。
【００１６】
撮像装置１２が撮影、生成した画像のデータは後に述べるようなストリーム形式でホスト端末２０に送信される。ホスト端末２０は、送信された画像データを用いて必要な情報処理を行い出力画像を生成する。ここでホスト端末２０が行う処理の内容は特に限定されず、ユーザが求める機能やアプリケーションの内容などによって適宜設定される。
【００１７】
例えば対象物であるユーザ１の動作を反映させたキャラクタが登場するゲームや、ユーザ１の動きをコマンド入力に変換する情報処理などを行う場合、ホスト端末２０は撮像装置１２から取得した同じ時刻の左右の画像のデータに基づきステレオマッチングを行う。そしてカメラの視野に対する縦、横、奥行き、の３次元空間における対象物の位置座標を所定のレートで特定することにより位置座標の時間変化を取得し、その結果に基づき撮影された画像に所定の処理を施したり、あらかじめ準備した画像に反映させたりして出力画像を生成する。
【００１８】
ビデオチャットアプリケーションの場合は、ユーザ１の画像をネットワーク１８を介してリアルタイムでチャット相手に送信する。このときホスト端末２０は顔検出処理を行い、その結果得られたユーザ１の顔の領域のみ高解像度で表すなどの加工を行ってもよい。ホスト端末２０は、このような画像処理の他に、各種アプリケーションを実行するためのメニューやカーソル等のオブジェクト画像を合成してもよい。
【００１９】
７１４
表示装置１６は、ホスト端末２０が行った処理の結果を、必要に応じて画像として表示する。表示装置１６は、画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよく、例えば液晶テレビ、プラズマテレビ、ＰＣディスプレイ等である。
【００２０】
上述のように、情報処理システム１０において撮像装置１２が撮影した動画像を利用してなされる処理は様々考えられ、その内容は特に限定されない。本実施の形態ではいずれの処理を行う場合でも、撮像装置１２は、動画像の撮影のみならず、それを用いて複数種類の画像データを生成する。そしてホスト端末２０が指定する画像データのみを効率的に送信することにより、撮影から画像表示までのレイテンシが少なく、かつ高度な処理も可能な情報処理システムを実現する。撮像装置１２が生成する画像の種類もアプリケーションなどに応じて適宜決定してよいが、以後、動画像の各フレームを複数の解像度で表した画像のデータを生成する場合について説明する。
【００２１】
図２はホスト端末２０と撮像装置１２の構成を示している。図２および後に説明する図３、４に示す各機能ブロックは、ハードウェア的には、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、描画回路などの構成で実現でき、ソフトウェア的にはデータ入力機能、データ保持機能、画像解析機能、描画機能などの諸機能を発揮するプログラムで実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００２２】
ホスト端末２０は、ユーザからの指示入力を取得する指示入力部３６、ホスト端末２０および撮像装置１２を統括的に制御し、目的に応じた情報処理を行う情報処理部３８、出力画像を生成する画像処理部４０、撮像装置１２からの画像データを格納するメインメモリ４２、および撮像装置１２に対する画像データの要求および取得を行うインターフェースである通信部４４を含む。
【００２３】
指示入力部３６は、ユーザからの指示入力を受け付け、それに応じた処理要求信号を生成して情報処理部３８に送信する。指示入力部３６は、ボタン、キーボード、マウス、トラックボール、タッチパネルなど一般的な入力装置と、当該入力装置になされた操作内容を解釈して処理要求信号を生成するプロセッサなどの協働により実現する。
【００２４】
情報処理部３８は、指示入力部３６から取得した処理要求信号に応じて撮像装置１２への画像データの要求、画像処理部４０への画像処理の要求などを行う。また撮像装置１２から送信された画像データを後に詳述するようにメインメモリ４２に展開する。さらに情報処理システム１０が実行する処理の内容によっては、撮像装置１２から送信された画像データを用いてステレオマッチング、対象物のトラッキング、顔検出、ジェスチャ検出などの画像解析を行う。
【００２５】
画像処理部４０は、メインメモリ４２に展開された画像を用いて、情報処理部３８からの要求に応じた画像処理を行い、表示画像を生成する。生成した表示画像は図示しないフレームメモリに格納され、情報処理部３８の制御のもと、表示装置１６に順次表示される。通信部４４は情報処理部３８が生成した撮像装置１２への画像データの要求信号を取得し、撮像装置１２へ送信する。また、それに応じて撮像装置１２から送信された画像データを取得し情報処理部３８へ送る。
【００２６】
撮像装置１２は動画像を撮影したうえ複数種類の画像データを生成する第１カメラ２２ａおよび第２カメラ２２ｂ、複数種類の画像データを統合する画像合成部３０、ホスト端末２０が要求する画像データを抽出してパケット化する画像送出部３２、およびホスト端末２０からの画像データの要求信号の受信および画像データ送信を行うインターフェースである通信部３４を含む。
【００２７】
第１カメラ２２ａおよび第２カメラ２２ｂは、同じ対象物を左右の視点から動画撮影する。そして撮影したフレーム画像を段階的に縮小することにより異なる解像度の複数の画像データを生成する。画像合成部３０は、第１カメラ２２ａ、第２カメラ２２ｂが生成した画像データを統合し、後に述べるような仮想的な合成画像を生成する。
【００２８】
画像送出部３２は、第１カメラ２２ａ、第２カメラ２２ｂが撮影したＲＡＷ画像、および、画像合成部３０が生成した仮想的な合成画像から、ホスト端末２０が要求する画像データを抽出してパケット化する。このとき、仮想的な合成画像に含まれる画像データを要求された場合は、クロッピング処理により画像の切り出しを行う。
【００２９】
通信部３４は、ホスト端末２０からの画像データの要求信号を受け付け、画像送出部３２に通知するとともに、画像送出部３２が生成した画像データのパケットを取得してホスト端末２０に送信する。通信部３４は、例えばＵＳＢ１．０／２．０／３．０等の所定のプロトコルにしたがって、パケットをホスト端末２０に送出する。ホスト端末２０との通信は有線に限らず、例えばＩＥＥＥ８０２．１１ａ／ｂ／ｇなどの無線ＬＡＮ通信、ＩｒＤＡなどの赤外線通信、などの無線通信であってもよい。
【００３０】
本実施の形態において撮像装置１２が行う処理は、基本的には画像の横一列分の画素単位で行われ、当該単位で次の機能ブロックに供給される。このようにすることで撮像装置１２の各機能ブロックが備えるメモリは最小限のラインバッファのみですみ、また、撮影からホスト端末２０への画像データの送信までを低遅延に行える。
【００３１】
図３は撮像装置１２の第１カメラ２２ａの構成を詳細に示している。なお第２カメラ２２ｂも同じ構成を有する。第１カメラ２２ａは、画像取得部１０２ａ、デモザイク部１０４ａ、ピラミッドフィルタ部１３５ａを備える。画像取得部１０２ａは、ＣＣＤまたはＣＭＯＳ等の撮像素子で露光された画像を所定のフレームレートで読み出す。以下の説明では、この画像は横方向に画素Ｗ個分、縦方向に画素Ｈ個分の幅を有するものとする。この画像はいわゆるＲＡＷ画像である。画像取得部１０２ａは、ＲＡＷ画像の横一列分の露光が完了する毎に、これをデモザイク部１０４ａおよび画像送出部３２に送る。
【００３２】
デモザイク部１０４ａは、画素Ｗ個分の容量を有するＦＩＦＯ（First In First Out）バッファ１０５と簡易デモザイク処理部１０６とを有する。ＦＩＦＯバッファ１０５には、ＲＡＷ画像の横一列分の画素情報が入力され、次の横一列分の画素がデモザイク部１０４ａに入力されるまでそれを保持する。簡易デモザイク処理部１０６は、横二列分の画素を受け取ると、それらを用いて、各画素に対してその周辺画素に基づき色情報を補完してフルカラー画像を作り出すデモザイク（de-mosaic）処理を実行する。
【００３３】
当業者には周知のように、このデモザイク処理には多数の手法が存在するが、ここでは横二列分の画素のみを利用する簡易なデモザイク処理で十分である。一例として、対応するＹＣｂＣｒ値を算出すべき画素がＧ値のみを有している場合は、Ｒ値は左右に隣接するＲ値を平均、Ｇ値は当該Ｇ値をそのまま使用、Ｂ値は上または下に位置するＢ値を使用してＲＧＢ値とし、これを所定の変換式に代入してＹＣｂＣｒ値を算出するなどである。このようなデモザイク処理は周知であるからこれ以上詳細な説明は省略する。なおデモザイク部１０４ａおよび以後の処理で生成される画像データの色空間はＹＣｂＣｒに限定されるものではない。
【００３４】
簡易なデモザイク処理で十分な理由は、高品質の画像が必要な場合はＲＡＷ画像を用いることができるためである。簡易なデモザイク処理の変形例として、ＲＧＢの４画素から一画素のＹＣｂＣｒ値を構成する手法を用いてもよい。この場合は、ＲＡＷ画像の１／４サイズのデモザイク後画像が得られるので、後述する第１フィルタ１１０ａは不要になる。
【００３５】
簡易デモザイク処理部１０６は、例えば図示のように、横２×縦２のＲＧＢの４画素をＹＣｂＣｒカラー信号に変換する。そして、この４画素からなるブロックは、画像合成部３０に１／１デモザイク後画像として渡されるとともに、ピラミッドフィルタ部１３５ａに送られる。
【００３６】
ピラミッドフィルタ部１３５ａは、ある画像を複数の解像度に階層化して出力する機能を有する。ピラミッドフィルタは、一般に必要とする解像度のレベルに応じた数の１／４縮小フィルタを備えるが、同図では第１フィルタ１１０ａ〜第３フィルタ１３０ａの３階層のフィルタを有している。各フィルタは、相互に隣接する４個の画素をバイリニア補間して４画素の平均画素値を演算する処理を実行する。したがって、処理後の画像サイズは処理前の画像の１／４になる。なお本実施の形態は、３階層以外のフィルタ数であっても同様に実現できることは当業者には容易に理解されるところである。
【００３７】
第１フィルタ１１０ａの前段には、Ｙ、Ｃｂ、Ｃｒのそれぞれの信号に対応して、画素Ｗ個分のＦＩＦＯバッファ１１２が一つずつ配置される。これらのＦＩＦＯバッファ１１２は、横一列分のＹＣｂＣｒ画素を、次の横一列分の画素が簡易デモザイク処理部１０６から出力されるまで保持する役割を有する。画素の保持時間は、撮像素子のラインスキャンの速度に応じて決まる。横二列分の画素が入力されると、第１フィルタ１１０ａは、横２×縦２の４画素分のＹ、Ｃｂ、Ｃｒの画素値を平均する。この処理を繰り返すことによって、１／１デモザイク後画像は縦横それぞれ１／２の長さとなり、全体として１／４のサイズに変換される。変換された１／４デモザイク後画像は、画像合成部３０に送られるとともに、次段の第２フィルタ１２０ａに渡される。
【００３８】
第２フィルタ１２０ａの前段階には、Ｙ、Ｃｂ，Ｃｒのそれぞれの信号に対応して、画素Ｗ／２個分のＦＩＦＯバッファ１２２が一つずつ配置される。これらのＦＩＦＯバッファ１２２も、横一列分のＹＣｂＣｒ画素を、次の横一列分の画素が第１フィルタ１１０ａから出力されるまで保持する役割を有する。横二列分の画素が入力されると、第２フィルタ１２０ａは、横２×縦２の４画素分のＹ、Ｃｂ、Ｃｒの画素値を平均する。この処理を繰り返すことによって、１／４デモザイク後画像は縦横それぞれ１／２の長さとなり、全体として１／１６のサイズに変換される。変換された１／１６デモザイク後画像は、画像合成部３０に送られるとともに、次段の第３フィルタ１３０ａに渡される。
【００３９】
第３フィルタ１３０ａについても、前段にＷ／４個分のＦＩＦＯバッファ１３２が配置される以外は、上記と同様の処理を繰り返す。そして画像合成部３０に、１／６４サイズのデモザイク後画像を出力する。なお、上記のようなピラミッドフィルタは、特許文献１にも記載されているように周知であるから、本明細書ではこれ以上の詳細な説明を省略する。
【００４０】
このように、ピラミッドフィルタ部１３５ａの各フィルタからは、１／４ずつ縮小された画像出力が画像合成部３０に入力される。これから分かるように、ピラミッドフィルタ部１３５ａ内のフィルタを通過するほど、各フィルタの前段に必要となるＦＩＦＯバッファの大きさは小さくて済むようになる。なおフィルタの数は３つに限定されず、求められる解像度の幅に応じて適宜決定してよい。
【００４１】
なお撮像装置１２の第２カメラ２２ｂも第１カメラ２２ａと同じ構造を有するため図示を省略するが、以後の説明において、第２カメラ２２ｂの画像取得部、デモザイク部、ピラミッドフィルタ部、第１フィルタ、第２フィルタ、第３フィルタをそれぞれ、画像取得部１０２ｂ、デモザイク部１０４ｂ、ピラミッドフィルタ部１３５ｂ、第１フィルタ１１０ｂ、第２フィルタ１２０ｂ、第３フィルタ１３０ｂと符号を付して記載する。
【００４２】
図４は画像合成部３０および画像送出部３２の構成を詳細に示している。画像合成部３０は第１カメラ２２ａおよび第２カメラ２２ｂから送られた各サイズの画像データの、画像送出部３２への出力タイミングを調整する出力タイミング調整部１４０、および、出力タイミング調整のためのＦＩＦＯバッファ１７２ａ、１７４ａ、１７６ａ、１７０ｂ、１７２ｂ、１７４ｂ、１７６ｂを含む。なお図３においてはＹ、Ｃｂ、Ｃｒのデータを個別に表現し、そのそれぞれに対してデータ入出力のための矢印を示したが、以後は図が煩雑にならないよう、それらの要素を１セットで表す。
【００４３】
ＦＩＦＯバッファ１７２ａ、１７４ａ、１７６ａはそれぞれ、第１カメラ２２ａの第１フィルタ１１０ａ、第２フィルタ１２０ａ、第３フィルタ１３０ａから送られた、１／４、１／１６、１／６４デモザイク後画像の横一列分のＹＣｂＣｒ画素値を保持する。したがってＦＩＦＯバッファ１７２ａ、１７４ａ、１７６ａはそれぞれ、Ｗ／２、Ｗ／４、Ｗ／８個分の画素値を保持するバッファである。
【００４４】
ＦＩＦＯバッファ１７０ｂ、１７２ｂ、１７４ｂ、１７６ｂはそれぞれ、第２カメラ２２ｂのデモザイク部１０４ｂ、第１フィルタ１１０ｂ、第２フィルタ１２０ｂ、第３フィルタ１３０ｂから送られた、１／１、１／４、１／１６、１／６４デモザイク後画像の横一列分のＹＣｂＣｒ画素値を保持する。したがって１７０ｂ、１７２ｂ、１７４ｂ、１７６ｂはそれぞれ、Ｗ、Ｗ／２、Ｗ／４、Ｗ／８個分の画素値を保持するバッファである。
【００４５】
出力タイミング調整部１４０は、第１カメラ２２ａのデモザイク部１０４ａから送られた１／１デモザイク後画像の横一列分の画素値を画像送出部３２に出力した後、ＦＩＦＯバッファ１７０ｂに格納した、第２カメラ２２ｂの１／１デモザイク後画像の横一列分の画素値を出力する。その後、後に詳述するような規則で各画像の横一列分の画素列、あるいは一列分より小さい範囲の画素列を出力していくことで、Ｙ、Ｃｂ、Ｃｒの画素値のそれぞれについて、１／１、１／４、１／１６、１／６４デモザイク後画像の画素列が循環して接続した新たな画素列が生成されるように出力タイミングを調整する。
【００４６】
上述の通り、本実施の形態において撮像装置１２が行う処理は、画像の左上を起点とし、左から右への処理を画像の下方向へ繰り返すラスタ順で実行され、横一列の画素を基本的な処理単位とする。そして各カメラから画像送出部３２までの画像データの入出力、およびホスト端末２０への画像データの送信は基本的に、画像の横一列の画素値を上から順につなげたストリーム形式とする。
【００４７】
画像合成部３０が出力するデータも、左右のフレーム画像をそれぞれ４つの解像度で表したデモザイク後画像の画素列が混在する一連の画素値のストリームである。したがって厳密には８つのデモザイク後画像をつなげた結果を２次元平面の画像として生成するものではない。しかしながら後に詳述するように、画像合成部３０が出力するストリームに対し、各デモザイク後画像の接続が一巡したときの画素列の画素数を画像の横一列分の画素数として定義すれば、以後の処理は、画像合成部３０を介さないＲＡＷ画像に対するものと同様となる。結果として画像合成部３０は、実質的には１／１、１／４、１／１６、１／６４デモザイク後画像を合成した画像を生成していることになる。以後、この仮想的な画像を「合成画像」と呼ぶ。
【００４８】
画像送出部３２は、制御部１４２、データ選択部１４４、およびパケット化部１４６を有する。制御部１４２は、ホスト端末２０からの要求信号に基づき、データ選択部１４４に、各種画像データのうちいずれをパケットとして送出するかを指示する。制御部１４２はさらに、ホスト端末２０から撮影の開始や終了を要求する信号、撮影条件を指定する信号などを受信し、第１カメラ２２ａ、第２カメラ２２ｂの画像取得部１０２ａ、１０２ｂなどに適宜その情報を提供するが、ここでは一般的な技術を適用できるため詳細な説明を省略する。
【００４９】
データ選択部１４４は、第１カメラ２２ａの画像取得部１０２ａ、第２カメラ２２ｂの画像取得部１０２ｂから入力された左右のＲＡＷ画像の画素列、画像合成部３０から入力された合成画像の画素列のデータを入力データとし、制御部１４２から指示されたデータを選択、抽出し、パケット化部１４６に送る。
【００５０】
データ選択部１４４はストリーム選択部１４８とクロッピング部１５０を含む。ストリーム選択部１４８は、左右のＲＡＷ画像および合成画像のストリームの中から要求されたストリームを選択する。ホスト端末２０がデモザイク後画像のいずれかを要求した場合、クロッピング部１５０は、ストリーム選択部１４８から合成画像のストリームを取得し、当該ストリームに含まれるデモザイク後画像の画素列のうち要求された画素列の切り出しを行う。
【００５１】
複数のデモザイク後画像を要求された場合、クロッピング部１５０は当該複数の画像に対応する画素列の切り出しを同時に行う。そして切り出した画素列のデータをつなげることによりストリームを再構築してパケット化部１４６に送る。ホスト端末２０がＲＡＷ画像を要求した場合、ストリーム選択部１４８はＲＡＷ画像のストリームを直接、パケット化部１４６に送る。
【００５２】
パケット化部１４６はデータ選択部１４４から入力されたストリームを、通信部３４のプロトコルに応じたサイズごとにパケット化し、内部のパケットバッファ（図示せず）に書き込む。例えばＵＳＢの場合、ストリームをエンドポイントのサイズごとにパケット化する。通信部１０８は、当該パケットバッファ内のパケットを、所定の通信プロトコルにしたがってホスト端末２０に転送する。
【００５３】
図５は撮像装置１２およびホスト端末２０におけるデータの形態の基本的な変遷を模式的に示している。ここでは例として、横方向に画素Ｗ個分、縦方向に画素Ｈ個分の幅を有するフレーム画像２００全体のデータを、撮像装置１２からホスト端末２０に送信する場合を考える。上述のように本実施の形態では画像データの生成、選択、送信を画素のラスタ順に行い、横一列分の画素列を順次つなげてストリームの形式で処理する。
【００５４】
このような状況においてデータ選択部１４４が出力するデータがストリーム２０２である。同図においてストリーム２０２の横軸は時間経過を表しており、ストリーム２０２を構成する各矩形Ｌ１、Ｌ２、・・・、ＬＨはそれぞれ、フレーム画像２００の１列目、２列目、・・・、Ｈ列目の画素のデータを表す。１画素のデータサイズをｄバイトとすると各矩形のデータサイズはＷ×ｄバイトである。
【００５５】
パケット化部１４６は、ストリーム２０２を所定サイズごとにパケットにまとめ、パケットＰ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、・・・を生成する。これにより撮像装置１２からホスト端末２０へ、パケットＰ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、・・・の順に送信される。ホスト端末２０はパケットＰ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、・・・を通信部４４を介して受信すると、それぞれのデータを、情報処理部３８の制御のもとメインメモリ４２に格納する。
【００５６】
このとき、本来のフレーム画像２００の横方向の画素数Ｗを横幅とするように、メインメモリ４２に各パケットのデータをラスタ順に並べていき、Ｗ×ｄ×Ｈバイトの連続したアドレスにデータを展開することにより、フレーム画像２００を復元した画像２０４を生成する。同図において画像２０４を構成する矩形は各パケットのデータを示している。画像処理部４０は情報処理部３８の制御のもと、メインメモリ４２に展開された画像２０４に加工を施したり別の画像と合成したりして表示装置１６に表示すべき画像を描画する。
【００５７】
次に画像合成部３０が解像度の異なるデモザイク後画像を合成する手法について説明する。なお図６、７では１／１、１／４、１／１６、の３種のデモザイク後画像について示しているが、１／６４以下のデモザイク後画像を加えても原理は同様である。図６は、１／１デモザイク後画像、１／４デモザイク後画像、１／１６デモザイク後画像の画素値が、ピラミッドフィルタ部１３５ａの各フィルタから入力されるタイミングを示すタイムチャートである。同図において時間ステップＳ１、Ｓ２、Ｓ３、Ｓ４、・・・はそれぞれ、１／１デモザイク後画像の１列目、２列目、３列目、４列目、・・・の画素値が入力される期間を表す。
【００５８】
上記の１／１デモザイク後画像のように、合成画像に含まれる画像のうち最高解像度の画像は、ピラミッドフィルタ部１３５ａにおけるデータの生成レートが最も高い。そこで当該画像の横一列分の画素値が入力される期間を基準の時間ステップとし、当該時間ステップを合成画像の横一列分の画素列と対応させる。すなわち、最高解像度の画像の横一列分の画素値が入力される期間を基準周期として、合成画像の横一列分のデータが生成される。
【００５９】
図の上段、中段、下段はそれぞれ、１／１デモザイク後画像、１／４デモザイク後画像、１／１６デモザイク後画像の入力タイミングを示しており、１つの矩形が１画素分の入力に対応する。まず時間ステップＳ１において、１／１デモザイク後画像の１列目の画素列Ｌ（１／１）１の画素値が左の画素から順に入力される。この時間ステップでは、１／４デモザイク後画像、１／１６デモザイク後画像は生成されていないため入力されない。
【００６０】
次の時間ステップＳ２では、１／１デモザイク後画像の２列目の画素列Ｌ（１／１）２の画素値が左の画素から順に入力される。このときピラミッドフィルタ部１３５ａでは、１／１デモザイク画像の１列目の画素列Ｌ（１／１）１および２列目の画素列Ｌ（１／１）２の画素値を用いて１／４デモザイク後画像の１列目の画素列Ｌ（１／４）１が生成されるため、時間ステップＳ２では当該画素列の画素値も入力される。
【００６１】
例えば１／４デモザイク後画像の１列目の画素列Ｌ（１／４）１の左端の期間２１０で入力される画素値は、１／１デモザイク後画像の１列目の画素列Ｌ（１／１）１のうち、期間２０６で入力される２つの画素の画素値、および２列目の画素列Ｌ（１／１）２のうち、期間２０８で入力される２つの画素の画素値を用いて生成される。このため時間ステップＳ２において、画素列Ｌ（１／４）１の画素値の入力タイミングは、画素列Ｌ（１／１）２の対応する画素の画素値の入力タイミングより少なくとも２画素分遅延する。
【００６２】
次の時間ステップＳ３では、１／１デモザイク後画像の３列目の画素列Ｌ（１／１）３の画素値が入力される。この時間ステップでは、１／４デモザイク後画像の２列目の画素値が生成されておらず、１／１６デモザイク後画像は生成されていないため、そのいずれも入力されない。次の時間ステップＳ４、すなわち１／１デモザイク画像の４列目の画素列Ｌ（１／１）４の画素値が入力される期間では、時間ステップＳ２と同様、１／４デモザイク後画像の２列目の画素列Ｌ（１／４）２の画素値も入力される。
【００６３】
さらにピラミッドフィルタ部１３５ａでは、１／４デモザイク画像の１列目の画素列Ｌ（１／４）１および２列目の画素列Ｌ（１／４）２の画素値を用いて１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１が生成されるため、時間ステップＳ４では当該画素列の画素値も入力される。例えば１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１のうち、最初の入力期間２１８で入力される画素値は、１／４デモザイク画像の１列目の画素列Ｌ（１／４）１のうち、期間２１０および期間２１２で入力される２つの画素の画素値、および２列目の画素列Ｌ（１／４）２のうち、期間２１４および期間２１６で入力される２つの画素の画素値を用いて生成される。
【００６４】
このため時間ステップＳ４において、画素列Ｌ（１／１６）１の入力タイミングは、画素列Ｌ（１／４）２の対応する画素の画素値の入力タイミングより少なくとも２画素分遅延する。以後、同様に各画像の画素値入力を繰り返すことにより、１／１デモザイク後画像、１／４デモザイク後画像、１／１６デモザイク後画像の全画素値が画像合成部３０へ入力される。
【００６５】
このように各画像の画素値は、第１カメラ２２ａのピラミッドフィルタ部１３５ａ、第２カメラ２２ｂのピラミッドフィルタ部１３５ｂの対応するフィルタから個別のストリームとしてラスタ順に入力される。画像合成部３０はこれらをつなげて１つのストリームとなるようにして画像送出部３２へ出力する。最も単純には、元の画像に関わらず、入力された時間順で画素値のデータをつなげていくことが考えられる。この場合、合成処理自体は容易であるが、後の処理で画像ごとに一列ずつデータを分類、抽出する必要が生じ、処理が煩雑化する。
【００６６】
また各時間ステップにおいて画像ごとに画素値をまとめて画素列を生成し、それらを直列につなげることも考えられる。この場合、時間ステップＳ１やＳ３では、入力される画素値が１／１デモザイク後画像のデータのみであるのに対し、例えば時間ステップＳ４では１／１デモザイク画像、１／４デモザイク画像、１／１６デモザイク画像の３つの画像のデータとなるなど、時間ステップによって出力されるデータ長が大きく変化する。そこで本実施の形態では、データが入力されない時間ステップがある画像については、その時間ステップを利用して、直前に入力された画素値の一部を出力するようにし、各時間ステップで出力されるデータ長をおよそ均等化する。
【００６７】
図７は画像合成部３０が複数の画像の画素列のデータをつなげた様子を模式的に示している。なお同図では理解を容易にするため、図６で示した３種のデモザイク後画像のみをつなげた様子を示しているが、実際には後述するように、左右のカメラからの画像データを交互につなげていく。図中、Ｓ０、Ｓ１、Ｓ２、Ｓ３、・・・は図６と同様の時間ステップであり、それぞれの期間に、１／１デモザイク後画像の一列分の画素値が入力される。
【００６８】
同図では各時間ステップに出力される画素列を、画像ごとに異なる網掛け矩形で示している。図６を参照して説明したように、時間ステップＳ１では１／１デモザイク後画像の１列目の画素列Ｌ（１／１）１の画素値のみが入力されるため、画像合成部３０はそれをそのまま出力する。元のＲＡＷ画像の横方向の画素数がＷであるとすると、１／１デモザイク後画像の一列分の画素数も、同図に示すようにＷである。
【００６９】
次の時間ステップＳ２では、１／１デモザイク後画像の２列目の画素列Ｌ（１／１）２の画素値、および１／４デモザイク後画像の１列目の画素列Ｌ（１／４）１の画素値が図６に示すようなタイミングで並列に入力される。画像合成部３０はそのうち、１／４デモザイク後画像の１列目の画素列Ｌ（１／４）１の画素値をＦＩＦＯバッファ１７２ａに一時保存し、１／１デモザイク後画像の２列目の画素列Ｌ（１／１）２の画素値を連続して先に出力する。
【００７０】
１／１デモザイク画像の２列目の画素列Ｌ（１／１）２の画素値が全て出力されたら、続けて、１／４デモザイク後画像の１列目の画素列Ｌ（１／４）１をＦＩＦＯバッファ１７２ａから読み出し、出力する。このとき次の時間ステップＳ３で出力する分を考慮し、１／４デモザイク後画像の１列目の画素列Ｌ（１／４）１の全画素のうち前半部分（画像平面における左半分）の画素値のみ出力し、残りはＦＩＦＯバッファ１７２ａに引き続き保存しておく。
【００７１】
次の時間ステップＳ３では、１／１デモザイク後画像の３列目の画素列Ｌ（１／１）３の画素値のみが入力される。画像合成部３０は、当該画素列の画素値をそのまま出力し、続けて、１／４デモザイク後画像の１列目の画素列Ｌ（１／４）１のうち未出力であった後半部分（画像平面における右半分）の画素値をＦＩＦＯバッファ１７２ａから読み出し、出力する。
【００７２】
次の時間ステップＳ４では、１／１デモザイク後画像の４列目の画素列Ｌ（１／１）４の画素値および１／４デモザイク後画像の２列目の画素列Ｌ（１／４）２、１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１の画素値が図６に示すようなタイミングで並列に入力される。画像合成部３０はそのうち、１／４デモザイク後画像の２列目の画素列Ｌ（１／４）２および１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１の画素値をそれぞれＦＩＦＯバッファ１７２ａ、１７４ａに一時保存し、１／１デモザイク後画像の４列目の画素列Ｌ（１／１）４の画素値を連続して先に出力する。
【００７３】
１／１デモザイク画像の４列目の画素列Ｌ（１／１）４の画素値が全て出力されたら、続けて、１／４デモザイク後画像の２列目の画素列Ｌ（１／４）２の前半部分をＦＩＦＯバッファ１７２ａから読み出し、出力する。次に１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１を出力する。このとき次以降の３つの時間ステップＳ５、Ｓ６、Ｓ７で出力する分を考慮し、１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１を４分の１分割し、その最初の部分の画素値のみ出力する。残りはＦＩＦＯバッファ１７４ａに保存しておく。
【００７４】
次の時間ステップＳ５では、１／１デモザイク後画像の５列目の画素列Ｌ（１／１）５の画素値のみが入力される。画像合成部３０は、当該画素列の画素値をそのまま出力し、続けて、１／４デモザイク後画像の２列目の画素列Ｌ（１／４）２のうち未出力であった後半部分の画素値をＦＩＦＯバッファ１７２ａから読み出し、出力する。さらに１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１の未出力のデータのうち４分の１分割した２番目の部分の画素値を出力する。
【００７５】
同様に、次の時間ステップＳ６では、１／１デモザイク後画像の６列目の画素列Ｌ（１／１）６の画素値、１／４デモザイク後画像の３列目の画素列Ｌ（１／４）３の前半部分の画素値、１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１の未出力のデータのうち４分の１分割した３番目の部分の画素値を出力する。次の時間ステップＳ７では、１／１デモザイク後画像の７列目の画素列Ｌ（１／１）７の画素値、１／４デモザイク後画像の３列目の画素列Ｌ（１／４）３の後半部分の画素値、１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１のうち４分の１分割した最後の部分の画素値を出力する。
【００７６】
すなわち１／４デモザイク後画像の１列目の画素列Ｌ（１／４）１は、時間ステップＳ２およびＳ３の２つの時間ステップに半分ずつ出力される。また１／１６デモザイク後画像の１列目の画素列Ｌ（１／１６）１は、時間ステップＳ４、Ｓ５、Ｓ６、Ｓ７の４つの時間ステップに４分の１ずつ出力される。ＲＡＷ画像の横方向の画素数がＷであるとすると、１／４デモザイク後画像および１／１６デモザイク後画像の横一列分の画素数はそれぞれＷ／２、Ｗ／４であるため、同図に示すように、時間ステップあたり（Ｗ／２）／２個、（Ｗ／４）／４個の画素のデータがそれぞれ出力される。
【００７７】
以上の出力処理を画像の最下段の列まで繰り返す。このとき１／１デモザイク後画像の最下段の画素列のデータを出力した時点では、１／４デモザイク後画像の最下段の画素列の後半部分のデータ、および１／１６デモザイク後画像の最下段の残り４分の３の画素のデータが未出力となる。そこで直後の時間ステップＳ（Ｈ＋１）では、１／４デモザイク後画像の最下段の画素列の後半部分のデータ、および１／１６デモザイク後画像の最下段の画素列を４分の１分割した２番目の部分のデータを出力する。
【００７８】
このとき、それまで１／１デモザイク後画像のデータを出力していたＷ画素分のデータとして、まず無効データを出力し、続けて１／４デモザイク後画像、１／１６デモザイク後画像のデータを出力する。続く２つの時間ステップＳ（Ｈ＋２）、Ｓ（Ｈ＋３）では、それまで１／１デモザイク後画像および１／４デモザイク後画像のデータを出力していたＷ＋（Ｗ／２）／２画素分のデータとして、まず無効データを出力し、続けて１／１６デモザイク後画像の最下段の画素列を４分の１分割した３番目の部分、４番目の部分のデータをそれぞれ出力する。
【００７９】
このように出力すると同図に示すように、はじめの３つの時間ステップと終わりの３つの時間ステップを除く全ての時間ステップで、Ｗ＋（Ｗ／２）／２＋（Ｗ／４）／４＝２１Ｗ／１６個の画素のデータが出力されることになる。また１列分の画素値を出力するのに、１／１デモザイク後画像は１時間ステップ、１／４デモザイク後画像は２時間ステップ、１／１６デモザイク後画像は４時間ステップを要するため、１フレーム分の画像データを出力するのに要する時間ステップ数は、Ｈ＝（Ｈ／２）×２＝（Ｈ／４）×４と、全て等しくなる。結果として、３種の画像の１フレーム分のデータを出力するのに要する総時間ステップ数はＨ＋３となる。
【００８０】
上述のように画像合成部３０が出力するデータは画素値の羅列であるが、各時間ステップに対応する画素の個数、すなわち２１Ｗ／１６を横一列分の画素の個数として与えておくことにより、画像送出部３２ではＲＡＷ画像と同様、各時間ステップにおいて出力されるデータを画像の一列分のデータとして扱う。
【００８１】
したがって各時間ステップを画像の縦方向の画素に対応させることができ、結果として、図７の全体的な矩形領域で表されるような合成画像２２０を生成していることになる。上述のように各時間ステップで出力する画素列において各画像のデータが占める範囲を固定することにより、合成画像２２０において１／１デモザイク後画像、１／４デモザイク後画像、１／１６デモザイク後画像のデータは、それぞれまとまった矩形領域を構成する。そのため、その局所性を利用すれば、画像ごとのデータの切り出しが容易に行える。
【００８２】
図８は図７を参照して説明した処理を、第１カメラ２２ａ、第２カメラ２２ｂが出力する各画像データについて交互に繰り返したときに生成される合成画像を示している。合成画像２２２は、第１カメラ２２ａによる１／１デモザイク後画像２２４、第２カメラ２２ｂによる１／１デモザイク後画像２２６、第１カメラ２２ａによる１／４デモザイク後画像２２８、第２カメラ２２ｂによる１／４デモザイク後画像２３０、第１カメラ２２ａによる１／１６デモザイク後画像２３２、第２カメラ２２ｂによる１／１６デモザイク後画像２３４、第１カメラ２２ａによる１／６４デモザイク後画像２３６、第２カメラ２２ｂによる１／６４デモザイク後画像２３８によって構成される。
【００８３】
同図において１／１デモザイク後画像２２４、２２６には、左右から撮影したユーザ１の顔が表されている。その他のデモザイク後画像、すなわち１／４デモザイク後画像２２８と２３０、１／１６デモザイク後画像２３２と２３４、１／６４デモザイク後画像２３６と２３８はそれぞれ、当該１／１デモザイク後画像を１／４、１／１６、１／６４に縮小したうえ、横一列の画素列を１／２分割、１／４分割、１／８分割して縦方向に並べた画像となる。
【００８４】
したがって各画像の上端に網掛けして示している通り、合成画像２２２において、１／１デモザイク後画像２２４および２２６の横１列の画素の領域は、１／４デモザイク後画像２２８および２３０の横２列の画素の領域、１／１６デモザイク後画像２３２および２３４の横４列の画素の領域、１／６４デモザイク後画像２３６および２３８の横８列の画素の領域と対応する。なお同図は説明のために画素１列の幅を実際より広く示している。そのため無効データの領域が広く表されているが、実際には図７で説明した原理により、無効データの領域は最大で７列分の画素であり、合成画像２２２の全面積の１％以下である。
【００８５】
画像送出部３２のクロッピング部１５０は、ホスト端末２０が要求する画像データのみを合成画像２２２から切り出す。クロッピング部１５０が行う処理は、画像内の指定された矩形領域を切り出して余分な領域を除外する一般的なクロッピング処理と同様である。本実施の形態では処理対象が画像平面ではなく画素列単位となるが、合成画像の横一列分の画素数の情報を与えておけば、画像平面の二次元座標をストリームにおける一次元座標と対応づけることは容易であり、切り取る画素の特定は同様に行える。
【００８６】
本実施の形態では、左右それぞれの１／１デモザイク後画像、１／４デモザイク後画像、１／１６デモザイク後画像、１／６４デモザイク後画像のデータを、図８に示すような合成画像上の矩形領域にまとめているため、このクロッピング処理によって画像の切り分けを容易に行える。
【００８７】
図９はホスト端末２０からの要求に応じた画像データの流れを模式的に示している。まずホスト端末２０は、合成画像内の領域を指定するデータ要求信号を撮像装置１２に送信する。ここでは例えば、合成画像２２２内の縦方向の画素の範囲と横方向の画素の範囲を指定する。
【００８８】
図９の例では、縦方向（Ｙ軸）が（最小値，最大値）＝（Ｙｓ，Ｙｅ）の範囲であり、横方向（Ｘ軸）が（最小値，最大値）＝（Ｘｓ１，Ｘｅ１）、（Ｘｓ２，Ｘｅ２）、（Ｘｓ３，Ｘｅ３）、（Ｘｓ４，Ｘｅ４）の範囲である４つの領域を指定している。（Ｘｓ１，Ｘｅ１）、（Ｘｓ２，Ｘｅ２）の範囲の画像は、左右のカメラの１／１デモザイク後画像の顔周辺の領域であり、（Ｘｓ３，Ｘｅ３）は一方のカメラの１／４デモザイク後画像全体、（Ｘｓ４，Ｘｅ４）は一方のカメラの１／１６デモザイク後画像全体である。
【００８９】
クロッピング部１５０は、画像合成部３０が横一列の画素列ごとに入力した合成画像から指定された領域を切り取る。具体的にはＹｓの位置の画素列から、（Ｘｓ１，Ｘｅ１）、（Ｘｓ２，Ｘｅ２）、（Ｘｓ３，Ｘｅ３）、（Ｘｓ４，Ｘｅ４）の範囲の画素列のみを切り出し、パケット化部１４６に順次送出する。次にＹｓ＋１の画素列、Ｙｓ＋２の画素列、・・・と同様に同じ範囲の画素列を切り出し、パケット化部１４６に送出する。パケット化部１４６は切り出された画素列をつなげてストリームとし、順次パケット化する。
【００９０】
結果としてホスト端末２０で受信する画像データは、切り出された領域のみからなる新たな合成画像２４０のストリームとなる。ホスト端末２０の情報処理部３８はこれを個別の画像に切り分け、メインメモリ４２の連続したアドレスに展開する。その結果、メインメモリ４２には、左右の１／１デモザイク画像のうち顔周辺の画像２４２、２４４、および１／４デモザイク後画像の全体画像２４６、１／１６デモザイク後画像の全体画像２４８が格納される。あるいは情報処理部３８は、メインメモリ４２に合成画像２４０をそのまま展開し、画像処理等に使用する段階で区別するようにしてもよい。
【００９１】
このようにホスト端末２０は、複数の画像の種類、およびそのうちの特定の領域を、合成画像内の領域を指定することで同時に要求することができる。そしてクロッピング部１５０は、指定された範囲の画素値を画素の列ごとに抽出していくことにより、複数の画像データを同時に切り出し、必要な画像データのみからなる新たなストリームを生成する。
【００９２】
この態様においてホスト端末２０は、同時に指定する複数の領域の縦方向の範囲を共通とする。図９の例では、指定された４つの領域は全て、縦方向の範囲が（Ｙｓ，Ｙｅ）となっている。このようにすることで、クロッピング部１５０が合成画像の横方向の画素列単位で個別に画素値の抽出を行っても、全ての画素列で抽出する範囲が同じとなる。
【００９３】
結果として、抽出した画素をつなげてストリームとしても、画素列によって抽出した画素数が多くなったり少なくなったりすることがなく、新たな合成画像２４０において、切り出した矩形領域の画像平面がそのまま保存された状態となる。これによりホスト端末２０では、要求した各領域の横方向の画素数に基づき、取得したストリームを容易に個々の画像に展開することができる。
【００９４】
次に、撮像装置１２における撮影条件を様々に変化させたときの本実施の形態の適用例を示す。図１０はローリングシャッターを備えた第１カメラ２２ａおよび第２カメラ２２ｂによって、それぞれ６０ｆｐｓおよび１５ｆｐｓのフレームレートで撮影した場合に画像合成部３０が生成する合成画像の変遷を示している。同図上段の太線は、各カメラのスキャンラインの位置を時間経過とともに示しており、第２カメラ２２ｂは、第１カメラ２２ａが４フレーム撮影するごとに同じシャッタースピードで１フレーム撮影する。なおこのフレームレートは一例であり、第１カメラ２２ａが２以上の所定の数のフレームを撮影するごとに第２カメラ２２ｂが１フレーム撮影する条件であればよい。
【００９５】
この場合、第１カメラ２２ａのみが撮影を行う第１撮影周期（時刻ｔ０からｔ１）、第２撮影周期（時刻ｔ１からｔ２）、第３撮影周期（時刻ｔ２からｔ３）では、同図に示すように、第１カメラ２２ａが撮影したフレームの１／１デモザイク後画像２５０、１／４デモザイク後画像２５２、１／１６デモザイク後画像２５４、１／６４デモザイク後画像２５６のみが順次、画像合成部３０から出力される。そして第２カメラ２２ｂも撮影を行う第４撮影周期（時刻ｔ３からｔ４）において、両カメラが撮影したフレームの１／１デモザイク後画像２５８、２６０、１／４デモザイク後画像２６２、２６４、１／１６デモザイク後画像２６６、２６８、１／６４デモザイク後画像２７０、２７２が出力される。
【００９６】
なお画像合成部３０は、第２カメラ２２ｂの各フィルタから画像データの入力がない期間も、各デモザイク後画像の分の無効データを、第２カメラ２２ｂからのデータを出力するタイミングでストリームに加える。これにより同図に示すように、どの期間においても合成画像の横１列の画素数が変化せず、同じ位置に同じ種類の画像が配置されるようになる。結果的に画像データの種類と合成画像上の領域が一対一に対応し、ホスト端末２０の領域指定を単純化できる。以後の期間においてもこのような画像データの送出が繰り返される。
【００９７】
図１１は、図１０で示した撮影条件においてクロッピング部１５０が切り出して生成する新たな合成画像とホスト端末２０のメインメモリ４２に格納される画像を示している。ここでホスト端末２０は、図９で示した領域を指定して画像データを要求したとする。なお縦軸に示した各時刻は、その元となるフレームが撮影された時刻を図１０と対応させて表しており、切り出し処理やメインメモリ４２への格納までの時間は省いている。
【００９８】
第１撮影周期である時刻ｔ０からｔ１では、第１カメラ２２ａが撮影したフレームの画像のみがクロッピング部１５０に入力されるため、当該フレームの１／１デモザイク後画像のうち顔周辺の領域の画像２８０、１／４デモザイク後画像の全体画像２８４、１／１６デモザイク後画像の全体画像２８６のデータが１列ごとに抽出される。このときホスト端末２０からは、画像データの有無にかかわらず第２カメラ２２ｂが撮影したフレームの１／１デモザイク後画像の顔周辺の画像が入るべき合成画像上の領域も指定されるため、クロッピング部１５０は、元の合成画像で無効データであった部分２８２も同様に抽出する。
【００９９】
ホスト端末２０は、このような画像データをストリーム形式で受け取ると、それをメインメモリ４２に展開する。このとき無効データであった部分を破棄すると、時刻ｔ１においてメインメモリ４２には、第１カメラ２２ａが撮影したフレームの１／１デモザイク後画像のうち顔周辺の領域の画像２８８、１／４デモザイク後画像の全体画像２９０、１／１６デモザイク後画像の全体画像２９２の格納が完了する。第２撮影周期（時刻ｔ１からｔ２）、第３撮影周期（時刻ｔ２からｔ３）も同様である。
【０１００】
そして第４撮影周期である時刻ｔ３からｔ４において、両カメラが撮影したフレームの１／１デモザイク後画像のうち顔周辺の領域の画像２９４，２９６、第１カメラ２２ａが撮影したフレームの１／４デモザイク後画像の全体画像２９８、１／１６デモザイク後画像の全体画像３００のデータが順次抽出され、時刻ｔ４においてメインメモリ４２への展開が完了する。
【０１０１】
この態様は例えば、ホスト端末２０において４フレームごとに１回、ステレオマッチングを行ってユーザ１などの対象物の位置を確認しつつ、顔領域のみ１／１デモザイク後画像を用いて解像度を上げた、１／４デモザイク後画像または１／１６デモザイク後画像の全体画像を表示装置１６に表示する、といった状況に利用できる。ステレオマッチングの結果は、撮像装置１２に対する画像データ要求時の領域指定や、撮像装置１２のズーム機構やパンチルタ制御機構などにフィードバックする。これにより、対象物が移動しても常にその付近のみを詳細に表した全体画像を、最小限の画像データ転送で表示できる。
【０１０２】
あるいは２つのカメラの露光時間を変化させ、露光時間が長く輝度が十分得られている画像を表示に用い、輝度が小さくフレームレートの高い画像を画像解析に用いるように、２つのカメラを使い分けてもよい。
【０１０３】
図１２は図１０に示した撮影条件のうち、第２カメラ２２ｂのシャッタースピード（露光時間）を４倍にし、第１カメラ２２ａが４フレーム撮影する時間をかけて第２カメラ２２ｂが１フレーム撮影する場合の合成画像の変遷を示している。この場合、第２カメラ２２ｂから出力された１／１デモザイク後画像の１列分のデータは、第１カメラ２２ａから１／１デモザイク後画像の４列分のデータが出力されるまで変化しない。その他の解像度の画像も同様に、第２カメラ２２ｂからのデータ出力は、第１カメラ２２ａのデータ出力の４倍の周期でなされる。なおこのフレームレートとシャッタースピードは一例であり、第２カメラ２２ｂのフレームレートが第１カメラ２２ａの１／Ｎ倍、第２カメラ２２ｂのシャッタースピードが第１カメラ２２ａのＮ倍（Ｎは２以上の自然数）であればよい。
【０１０４】
その結果同図に示すように、第２カメラ２２ｂが撮影したフレームの１／１デモザイク後画像３０２は、時間経過が縦方向の画素に対応する合成画像において、縦方向に４倍引き延ばされた状態、厳密には、画素４列ごとに同じ画素値を有する画像となる。同図においては第１撮影周期（時刻ｔ０からｔ１）ではユーザ１の頭部分、第２撮影周期（時刻ｔ１からｔ２）では目の部分、第３撮影周期（時刻ｔ２からｔ３）では口の部分、第４撮影周期（時刻ｔ３からｔ４）では肩の部分が出力され、１／４デモザイク後画像、１／１６デモザイク後画像、１／６４デモザイク後画像も、各撮影周期でそれらを縮小した画像となる。
【０１０５】
図１３は、図１２で示した撮影条件においてクロッピング部１５０が切り出して生成する新たな合成画像とホスト端末２０のメインメモリ４２に格納される画像を示している。図の示し方は図１１と同様である。この場合、第１撮影周期である時刻ｔ０からｔ１では、第１カメラ２２ａが撮影したフレームの１／１デモザイク後画像のうち顔周辺の領域の画像３０４、第２カメラ２２ｂが撮影したフレームの１／１デモザイク後画像のうち顔周辺の領域の一部３０６、第１カメラ２２ａが撮影したフレームの１／４デモザイク後画像の全体画像３０８、１／１６デモザイク後画像の全体画像３１０のデータが１列ごとに抽出される。
【０１０６】
ホスト端末２０は図１１と同様にメインメモリ４２に画像データを展開するが、撮像装置１２から送信されたストリームのうち、第２カメラ２２ｂが撮影したフレームの１／１デモザイク後画像の部分については、同じ画素値を保持する４列分のデータのうち３列分を破棄する。その結果、第４撮影周期終了時の時刻ｔ４において、第２カメラ２２ｂが撮影したフレームの１／１デモザイク後画像のうち顔周辺の領域の画像３１２の展開が完了する。なお図１１、１３、１５におけるメインメモリ４２内の画像は、展開が完了したもののみを完了したタイミングで示しているが、図１３において第２カメラ２２ｂが撮影したフレームの１／１デモザイク後画像は、実際には時刻ｔ０の直後から徐々に格納されていく。メインメモリ４２内のその他の画像は図１１と同様である。
【０１０７】
図１４は、第２カメラ２２ｂのフレームレートを６０ｆｐｓとし、第１カメラ２２ａは第２カメラ２２ｂより小さい画角を、第２カメラ２２ｂより高い２４０ｆｐｓのフレームレートで撮影する場合の合成画像の変遷を示している。同図の例で第１カメラ２２ａは、第２カメラ２２ｂが１フレームを撮影する間に、ユーザ１の目の部分を４回撮影している。なおこれらの値は一例であり、第１カメラ２２ａの撮影範囲の縦方向の長さが第２カメラ２２ｂの１／Ｎ（Ｎは２以上の自然数）のとき、第１カメラ２２ａのフレームレートを第２カメラ２２ｂのＮ倍とすれば、同図に示すように２つのカメラの同期をとることができる。
【０１０８】
したがって第２カメラ２２ｂの各撮影周期に対応する合成画像において、第１カメラ２２ａのフレームの１／１デモザイク後画像３１４は、同図に示すように、ユーザ１の目の部分の画像が縦方向に４つ連なった画像となる。第１カメラ２２ａのフレームの１／４デモザイク後画像、１／１６デモザイク後画像、１／６４デモザイク後画像も、各撮影周期でそれらを縮小した画像となる。
【０１０９】
図１５は、図１４で示した撮影条件においてクロッピング部１５０が切り出して生成する新たな合成画像とホスト端末２０のメインメモリ４２に格納される画像を示している。図の示し方は図１１と同様である。ただし同図の場合、第１カメラ２２ａが撮影した高フレームレートの目の部分の１／１デモザイク後画像３１６、第２カメラが撮影したフレームの１／１デモザイク後画像３１８、および１／４デモザイク後画像３２０を切り出している。
【０１１０】
その結果、ホスト端末２０のメインメモリ４２には、各撮影周期の終了時刻に対応して、それらの画像の展開が完了する。この態様は例えば、目の部分の１／１デモザイク後画像を用いて目やまぶたの動きを高い時間分解能で高精度にトラッキングして表情やジェスチャを検出しつつ、顔領域のみ１／１デモザイク後画像を用いて解像度を上げた、１／４デモザイク後画像の全体画像を表示装置１６に表示する、といった状況に利用できる。
【０１１１】
このとき、検出した表情やジェスチャに応じて表示画像に加工を加えることができる。当該画像をネットワークを介して別のユーザの表示装置に表示すれば、表情によって画像に装飾やアニメーションが出現するビデオチャットなども実現できる。図１５の例では目の部分を高フレームレートで撮影したが、ユーザの手やユーザが保持するマーカーなどを撮影し、トラッキング対象としてもよい。この場合、手やマーカーの動きを情報処理の操作入力手段とすることもできる。
【０１１２】
図１６は、ホスト端末２０と撮像装置１２が協働して画像表示を行う処理手順の例を示すフローチャートである。図１６のフローチャートは、ユーザがホスト端末２０にアプリケーションの起動指示を入力することによって開始される。また理解を容易にするため各ステップは直列に接続した矩形で表されているが、動画像を撮影している期間において、各画素列、各フレームに対しこれらのステップが並列に実行されるものとする。
【０１１３】
まずホスト端末２０は、アプリケーションプログラムなどに設定されている、初期条件および必要な画像データを指定して、撮像装置１２に対し撮影開始指示およびデータ送信要求を行う（Ｓ１０）。初期条件とは撮像装置１２の２つのカメラが撮影する動画像の解像度、フレームレート、シャッタースピード、画角などである。なおカメラが撮影する動画像の解像度やフレームレートは、撮像素子による露光自体の条件設定を変化させてもよいし、撮像素子からのデータを後段で間引くなどの調整を行うことにより変化させてもよい。
【０１１４】
必要な画像データは上述のとおり合成画像の領域によって指定するが、初期値としては、ユーザが存在すると考えられる領域の１／１デモザイク後画像や、いずれかの解像度の全体画像などを指定する。初期条件の指定および画像データ要求を受け付けた撮像装置１２の第１カメラ２２ａおよび第２カメラ２２ｂは、当該初期条件で動画像の撮影を開始する（Ｓ１２）。
【０１１５】
各カメラで取得されたＲＡＷ画像は画素列ごとにデモザイク部１０４ａ、１０４ｂ、ピラミッドフィルタ部１３５ａ、１７０ｂによって処理され、各時間ステップで出力される各階層のデモザイク後画像が画像合成部３０によって合成される（Ｓ１４）。続いて画像送出部３２は、Ｓ１０で指定された画像データのみを合成画像から切り出してストリームとしパケット化したうえホスト端末２０へ送信する（Ｓ１６、Ｓ１８）。なおＲＡＷ画像のデータが要求された場合はＳ１６の処理を省略してよい。
【０１１６】
データを受信したホスト端末２０の情報処理部３８は、送信されたストリームを、メインメモリ４２に画像として展開する（Ｓ２０）。情報処理部３８は展開された画像を用いて、実行中のアプリケーションに応じた処理を行う（Ｓ２２）。このとき必要に応じて画像処理部４０に画像処理を要求し、画像処理部４０はメインメモリ４２から画像を読み出し、加工や合成を行う。メインメモリ４２に展開された画像データは一般的な画像データと同様であるため、テクスチャとして読み出すことも可能である。
【０１１７】
情報処理部３８はＳ２２において、ステレオマッチング、トラッキング、顔検出、ジェスチャ検出などの画像解析処理を行いその結果を表示画像に反映させるようにしてもよい。このようにして表示画像を生成し、表示装置１６に表示する（Ｓ２４、Ｓ２６）。情報処理部３８はさらに、Ｓ２２において上記の画像解析により対象物の領域などを特定し、要求する画像データを変更するようにしてもよい。この場合、撮像装置１２のクロッピング部１５０は、新たな画像フレームを処理するタイミングで、切り出す領域を指定に従い変更する。Ｓ１４からＳ２６の処理を繰り返すことにより、撮像装置１２が撮影した画像を用いた動画像を表示装置１６に表示させることができる。
【０１１８】
以上述べた本実施の形態によれば、ユーザなどの動きを撮影する撮像装置と、それを利用して画像表示を行うホスト端末を含むシステムにおいて、撮影した動画像をカメラ内部で複数の解像度のデータとする。そして画像の種類および解像度ごとに、画素のラスタ順に画素値をつなげたストリームとする。そしてホスト端末の要求に従いその一部を送信し、ホスト端末のメモリにおいてフレーム画像を構築する。このように、カメラ内部ではフレーム画像として展開することなく画素列の状態で順次処理を行っていくことにより、カメラに設けるべきメモリサイズを最低限に抑えることができる。また撮影からホスト端末へ送信するまでの間、１フレーム分のデータが出揃うのを待つ必要が生じないため、システム全体として低遅延で動きに応じた画像表示を行える。
【０１１９】
また複数の解像度の画像データを、一列分の画素値ごとにつなげて１つのストリームに含ませる。このとき、解像度によって「一列分の画素値」が生成されるレートが異なるため、低いレートでデータが生成される低解像度の画像は、データが生成されない期間も含め、均等にストリームに含まれるように配分する。これにより、単位時間あたりに処理および送信すべきデータサイズがおよそ均等になり、出力までに要する時間、使用する伝送帯域、送信に要する時間の見積もりが容易となるうえ、突発的なデータサイズの増大によって伝送帯域を圧迫する可能性が低くなる。
【０１２０】
このようにして生成したストリームは、後段の処理において、１つの解像度の画像データのみからなるストリームと同等に扱えるため、実質的に、複数の解像度の画像からなる合成画像を生成していることになる。そして上述のようにつなげることにより、合成対象の画像がそれぞれ、合成画像中の矩形領域を構成するようになるため、合成画像内の領域を指定することで、クロッピングという一般的な画像処理によって、１つのストリームに混在する複数の画像のデータを容易に分別できる。
【０１２１】
またクロッピングによって合成画像のうち複数の領域を同時に切り出し、複数種類の画像データを混在させた状態でストリームとして送信する。このとき、複数の領域の縦方向の範囲を同じとすることにより、実際の処理は画素列単位であっても合成画像の矩形領域を維持した状態で切り出しを行えるため、ホスト端末において画像の区別が容易にできる。
【０１２２】
複数の画像データを混在させて同時に送信できるため、並列送信が可能な複数チャネルの送信機構を設けずに、多様な画像データを低遅延で送信し、画像処理に利用することができる。さらに合成画像と同様の原理で、送信するデータのストリームにおいても、各サイズの画像データの生成レートに応じてストリームに含まれるデータサイズが均等化されるため、ビットレートが増大することによる転送遅延が起こりにくくなる。
【０１２３】
以上、本発明を実施の形態をもとに説明した。上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１２４】
例えば本実施の形態ではステレオ画像のフレームを異なる解像度で表した複数の画像データをストリームに混在させて仮想的な合成画像を生成した。この場合、データ生成レートの異なる画像の合成画像における配置を工夫することでビットレートを均等化できる、という点で特に効果的である。一方、合成画像に含まれる画像はこれに限らず、各時刻で生成される複数種類の画像であれば同様に合成し、切り出し、ホスト端末に送信することができる。
【０１２５】
例えば１つの解像度のステレオ画像の対のみでもよいし、対象物の奥行き方向の位置を画像平面上に表した奥行き画像、フレーム間差分画像などを混ぜてもよい。後者の場合、撮像装置にステレオマッチング処理やフレーム間差分処理を行う機構を設ける。またステレオ画像でなく単一のフレーム画像から生成された複数種類の画像でもよい。いずれの場合も、合成画像における縦方向の範囲を共通に複数の領域を指定することにより、複数種類の画像をクロッピング処理により同時に切り出し、ストリームに混在させてホスト端末に送信することができる。これによりホスト端末では、送信経路を複数チャンネル設けることなく複数種類の画像を領域指定のみで低遅延に取得することができる。
【符号の説明】
【０１２６】
１０  情報処理システム、  １２  撮像装置、  １６  表示装置、  ２０  ホスト端末、  ２２ａ  第１カメラ、  ２２ｂ  第２カメラ、  ３０  画像合成部、  ３２  画像送出部、  ３４  通信部、  ３６  指示入力部、  ３８  情報処理部、  ４０  画像処理部、  ４２  メインメモリ、  ４４  通信部、  １０２ａ  画像取得部、  １０４ａ  デモザイク部、  １１０ａ  第１フィルタ、  １２０ａ  第２フィルタ、  １３０ａ  第３フィルタ、  １３５ａ  ピラミッドフィルタ部、  １４０  出力タイミング調整部、  １４２  制御部、  １４４  データ選択部、  １４６  パケット化部、  １４８  ストリーム選択部、  １５０  クロッピング部。
【図１】
0005701707.tif 000002
【図２】
0005701707.tif 000003
【図３】
0005701707.tif 000004
【図４】
0005701707.tif 000005
【図５】
0005701707.tif 000006
【図６】
0005701707.tif 000007
【図７】
0005701707.tif 000008
【図８】
0005701707.tif 000009
【図９】
0005701707.tif 000010
【図１０】
0005701707.tif 000011
【図１１】
0005701707.tif 000012
【図１２】
0005701707.tif 000013
【図１３】
0005701707.tif 000014
【図１４】
0005701707.tif 000015
【図１５】
0005701707.tif 000016
【図１６】
0005701707.tif 000017