(57)【要約】【課題】  コンピュータシステムや専用レンズを用いずにパノラマ画像を取得する。【解決手段】  それぞれがパノラマ画像シーンの部分である一連の画像フレームをキャプチャするステップ１００と、前記一連の画像フレームを取得している間に前記画像フレームをパノラマ画像に合成するステップ１０２とを含んでなる、パノラマ画像の生成方法と、その方法を用いたパノラマ画像撮影用のカメラ１０とを提供する。【選択図】        図１
2005151563.tif 000002
【特許請求の範囲】
【請求項１】
それぞれがパノラマ画像シーンの部分である一連の画像フレームをキャプチャするステップと、
前記一連の画像フレームを取得している間に前記画像フレームをパノラマ画像に合成するステップと
を含んでなる、パノラマ画像の生成方法。
【請求項２】
前記キャプチャするステップは、
前記パノラマ画像の解像度に対応する解像度を有する第１の画像フレームをキャプチャするステップと、
前記第１の画像フレームと第２の画像フレームとの間の相対的な動きが検出されると、前記パノラマ画像の解像度に対応する解像度を有する前記第２の画像フレームをキャプチャするステップと
を含む請求項１に記載のパノラマ画像の生成方法。
【請求項３】
前記パノラマ画像の解像度よりも低い解像度を有する一連の画像フレームをキャプチャすることによって相対的な動きを求めるステップをさらに含む請求項２に記載のパノラマ画像の生成方法。
【請求項４】
前記キャプチャするステップは、パノラマ画像シーンのストリップをなす一連の画像フレームをキャプチャするステップを有するものである請求項１に記載のパノラマ画像の生成方法。
【請求項５】
前記パノラマ画像の進行を示す視覚フィードバックをユーザに提供するステップをさらに含む請求項１に記載のパノラマ画像の生成方法。
【請求項６】
前記パノラマ画像内の関心のある対象物へのズームインを実施するステップと、
前記関心のある対象物の画像フレームが、前記パノラマ画像の残りから取得される画像フレームよりも高い解像度を有するように、前記関心のある対象物のサンプルを提供する画像フレームをキャプチャするステップと、
前記ズームに関連するメタデータのセットを記録するステップと、
前記メタデータに応答して、前記関心のある対象物の画像フレームと、前記パノラマ画像の残りとを合成するステップと
をさらに含む請求項１に記載のパノラマ画像の生成方法。
【請求項７】
それぞれがパノラマ画像シーンのストリップである一連の画像フレームをキャプチャする画像センサと、
前記一連の画像フレームを取得している間に前記画像フレームをパノラマ画像に合成するプロセッサと
を含んでなるカメラ。
【請求項８】
前記画像フレームは、前記パノラマ画像の解像度に対応する解像度を有する１以上の画像フレームと、前記パノラマ画像の解像度よりも低い解像度を有する１以上の画像フレームとを含む請求項７に記載のカメラ。
【請求項９】
動きセンサをさらに含む請求項７に記載のカメラ。
【請求項１０】
前記パノラマ画像の進行を示す視覚フィードバックをユーザに提供する手段をさらに含む請求項７に記載のカメラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パノラマ画像の生成するための方法および装置に関する。
【背景技術】
【０００２】
パノラマ画像は、従来のカメラによって撮影される写真よりもかなり広いビューを有する画像として定義することができる。たとえば、パノラマ画像は、従来のフィルムカメラまたはデジタルカメラの幅の何倍もの幅を有する場合がある。
【０００３】
パノラマ画像は、広いパノラマビューを撮影することが可能なレンズ構造を従来のフィルムまたはデジタルカメラに設けることによって取得することができる。残念ながら、パノラマレンズ構造が高コストなので、パノラマ写真を取得したいと望む多数のユーザの手に入らない場合がある。
【０００４】
パノラマ画像は、広いパノラマビューにわたって体系的にカメラレンズを回転させるための機構を有する専用のカメラを用いて取得することができる。残念ながら、このような専用のカメラは、パノラマ写真を望む多数のユーザにとっても高価すぎる場合がある。
【０００５】
パノラマ画像は、デジタルカメラを用いて所望のシーンの複数の写真を取得してから、コンピュータを用いて、取得した写真をパノラマ写真に合成することによって生成することができる。残念ながら、この方法は、コンピュータおよび専用のソフトウェアの使用を必要とする。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、コンピュータシステムまたは専用のレンズの助けを必要とせずにパノラマ画像を取得することができるようにするものである。
【課題を解決するための手段】
【０００７】
コンピュータシステムまたは専用のレンズの助けを必要とせずに、ユーザがデジタルカメラでパノラマ画像を取得することができるようにする、パノラマ画像を生成するための方法が開示される。本発明の技法によるデジタルカメラは、ユーザがパノラマ画像シーンにわたってデジタルカメラをパン（pan）する間に一連の画像フレームを取り込み、画像フレームが取り込まれている間に、取り込まれた画像フレームを合成する。
【０００８】
本発明の他の特徴および利点は、以下の詳細な説明から明らかとなるであろう。
【０００９】
本発明は、特定の例示的な実施形態に関して記載され、それに応じて、図面が参照される。
【発明を実施するための最良の形態】
【００１０】
図１は、本発明の技法によるデジタルカメラを用いてパノラマ画像を取得する方法を示す。デジタルカメラは、ユーザが所望のパノラマ画像シーンにわたってデジタルカメラをパンする間にステップ１００〜１０２を実施する。
【００１１】
ステップ１００では、デジタルカメラは、それぞれが所望のパノラマ画像シーンの部分のサンプルである一連の画像フレームをキャプチャする。ステップ１０２では、所望のパノラマ画像シーンの一連の画像フレームが連続して取り込まれる間に、デジタルカメラは、取り込まれた画像フレームをパノラマ画像に合成する。
【００１２】
デジタルカメラは、ステップ１００〜１０２を実施している間に、パノラマ画像の進行を示すフィードバックをユーザに提供することができる。たとえば、収集されているパノラマ画像の欠落したエリアを示すか、または再度サンプリングされる必要があるエリアを示すために、視覚もしくは聴覚または他のインジケータを用いることができる。
【００１３】
デジタルカメラは、所望のパノラマ画像シーンのユーザが規定した境界に応答して、ステップ１００〜１０２を自動的に実施することができる。たとえば、ユーザは、所望のパノラマ画像シーンの縁部を撮影して、収集用のシーンの境界を規定することができる。
【００１４】
図２は、本発明の教示を取り入れるデジタルカメラ１０を示す。デジタルカメラ１０は、画像センサ１６と、カメラプロセッサ１２と、カメラメモリ１４とを含む。デジタルカメラ１０は、画像シーンからの光を画像センサ１６に与える（たとえば、レンズ、シャッタ、絞り制御部、ズーム等の）取り込み機構１８を含む。デジタルカメラ１０は、（たとえば、ＬＣＤディスプレイ等の）ビューファインダ１９を含む。
【００１５】
デジタルカメラ１０は、ユーザが選択可能なパノラマ画像モードを提供する。たとえば、デジタルカメラ１０は、ユーザによって押されると、デジタルカメラ１０をパノラマ画像モードに設定する特定のボタンを含みうる。別の実施例では、ユーザは、写真を非パノラマモードでキャプチャするために用いることができるシャッタボタンを押して保持することによって、デジタルカメラ１０をパノラマ画像モードに設定することができる。
【００１６】
カメラプロセッサ１２は、パノラマ画像モードのユーザ選択を検出して、複数のカメラ設定を固定する。たとえば、取り込み機構１８の露出とズームとフォーカスとを固定することができる。パノラマ画像モードでは、ユーザが、所望のパノラマ画像シーン全体にわたってデジタルカメラ１０を移動させている（sweep）間に、カメラプロセッサ１２は、画像センサ１６をサンプリングしてパノラマ画像を構築する。
【００１７】
一実施形態では、画像センサ１６は、高解像度画像フレームおよび低解像度ビデオ画像フレームを生成することができる。カメラプロセッサ１２は、画像センサ１６の高解像度およびビデオ機能を用いて、パノラマ画像を生成することができる。
【００１８】
図３は、画像センサ１６の高解像度およびビデオ機能を用いてパノラマ画像を生成する方法を示す。ステップ１２０では、ユーザは、デジタルカメラ１０をパノラマ画像モードに設定し、カメラプロセッサ１２は、画像センサ１６を用いて高解像度画像フレームを取得する。カメラプロセッサ１２は、高解像度画像フレームをカメラメモリ１４に記憶する。たとえば、ステップ１２０では、高解像度画像フレームは、ユーザがデジタルカメラ１０を所望のパノラマ画像シーンの最も左の境界に向けて、パノラマ画像モードを選択する場合に取得することができる。
【００１９】
ステップ１２２では、カメラプロセッサ１２は、ステップ１２０からの高解像度の画像フレームを基準ビデオフレームに変換する。たとえば、カメラプロセッサ１２は、画像センサ１６のフル解像度からより低い解像度のビデオフレームに取得した高解像度の画像フレームをダウンサンプリングすることができる。
【００２０】
ステップ１２４〜１３２は、ユーザが所望のパノラマ画像シーンにわたってデジタルカメラ１０をパンする間にループで実施される。ステップ１２４では、カメラプロセッサ１２は、画像センサ１６を用いて画像センサ１６から新しいビデオフレームを取得する。ステップ１２６では、カメラプロセッサ１２は、基準ビデオフレームと、新しいビデオフレームとの間の相対的な動きをステップ１２４から求める。
【００２１】
基準ビデオフレームと新しいビデオフレームとの間の相対的な動きを求めるために、様々な既知の方法をステップ１２６において用いることができる。基準ビデオフレームおよび新しいビデオフレームに含まれる全体的な画素情報を考慮する動き推定法を用いることが好ましい場合もある。ステップ１２６は、新しいビデオフレームに対する動き推定値を提供する。
【００２２】
ステップ１２８では、ステップ１２６からの動き推定値が所定の閾値を越えると、カメラプロセッサ１２はステップ１３０に進む。ステップ１３０では、カメラプロセッサ１２は、画像センサ１６を用いて別の高解像度画像フレームを取得して、それをステップ１２６からの動き推定値とともにカメラメモリ１４に記憶する。次に、ステップ１３２では、カメラプロセッサ１２は、たとえば、ダウンサンプリングによって、ステップ１３０からの高解像度画像フレームを基準ビデオフレームに変換し、その基準ビデオフレームが、新しい基準ビデオフレームとなり、ステップ１２４に戻って再び繰り返される。
【００２３】
ステップ１２８では、ステップ１２６からの動き推定値が所定の閾値を越えない場合には、カメラプロセッサ１２は、ステップ１２４に戻り、新しいビデオフレームを取得する。
【００２４】
ユーザが所望のパノラマ画像シーンにわたってデジタルカメラ１０をパンし終えた後、カメラプロセッサ１２は、画像フレームを収集するのを停止する。たとえば、ユーザは、シャッタボタンを放して収集を停止する。その時点で、カメラメモリ１４は、所望のパノラマ画像シーンから取り込まれた高解像度の画像フレームのセットを記憶する。カメラメモリ１４は、取り込まれた高解像度の画像フレームの相対的な位置を示す動き推定値も保持する。カメラプロセッサ１２は、この情報を用いてパノラマ画像を構築する。
【００２５】
ステップ１２０および１３０で取得された高解像度の画像フレームをパノラマ画像に合成するための様々な既知の技法を用いることができる。例として、高解像度の画像フレームをともに「とじ合せる（stitching）」ことによってモザイクを構築するための方法を含む。これらの方法は、隣接する高解像度の画像フレームにおける重複するエリアを検出することを含みうる。取り込みプロセス中に生成される動き推定値は、モザイクを形成すると、取得された高解像度の画像フレームの相対的な位置の初期の推定値としての役割を果たし、それによって、初期の推定値がなくても、モザイクを形成した場合と比較して取得されるパノラマ画像の質は向上する。
【００２６】
取得された画像フレームをともにとじ合わせるステップを、さらなる画像フレームが収集される間に実施することができる。たとえば、ステップ１３０は、ステップ１２６からの動き推定値を精密にし、収集された画像フレームをとじ合わせるサブステップを含みうる。
【００２７】
収集された画像フレームの部分のみを記憶することによって、カメラメモリ１４内の記憶スペースを節約することができる。たとえば、カメラプロセッサ１２は、ステップ１２６からの動き推定値を用いて、対応する画像フレーム間の重複を求めることができる。カメラプロセッサ１２は、記憶された画像フレームの非重複エリア全体と重複エリアのほんの一部とを保持し、画像フレームの残りをカメラメモリ１４から破棄することができる。
【００２８】
カメラメモリ１４のサイズが比較的小さい実施形態では、収集された画像フレームは記憶されない場合もある。その代わりに、カメラプロセッサ１２は、画像フレームが収集されたときにそれらをともにとじ合わせてから、それらを破棄する。収集された画像フレームが記憶されない場合には、それらをパノラマ画像にとじ合わせるプロセスは、画像フレーム収集の時間順序で発生する。他方、収集された画像フレームが記憶される場合には、これらの画像フレームは、任意の順序でパノラマ画像にとじ合わせられる。
【００２９】
図４Ａおよび図４Ｂは、たとえば、ＣＭＯＳ画像センサによって提供される柔軟なアドレッシングを利用するパノラマ画像を取得するための方法を示す。この方法では、画像センサ１６によって、カメラプロセッサ１２は、高解像度の画像フレーム２０の画像ストリップ２２を読み取ることができる。カメラプロセッサ１２は、関与するデータの相対量のために、高解像度の画像フレーム２０を読み取ることができるフレームレートと比較して比較的高いフレームレートで画像ストリップ２２を読み取ることができる。
【００３０】
一実施形態では、高解像度の画像フレーム２０は、水平に２０００画素および垂直に１５００画素が配置された３Ｍ画素センサを含む。画像ストリップ２２は、水平に２０５画素および垂直に１５００画素を含むストリップである。カメラプロセッサ１２は、１秒当たり３０フレームで画像ストリップ２２を読み取ることができる。これによって、カメラプロセッサ１２は、画像センサ１６のフル１５００画素垂直解像度を生成しながら、ＶＧＡビデオのレートで画像ストリップ２２を用いて画像シーンをサンプリングすることができる。
【００３１】
画像ストリップ２２の比較的高いサンプリングレートによって、カメラプロセッサ１２は、デジタルカメラ１０のユーザが所望のパノラマ画像シーンにわたってパンしている間に、画像ストリップ３０のセットを収集することができる。カメラプロセッサ１２は、画像ストリップ３０が収集される間に画像ストリップ３０をともにとじ合わせるか、または画像ストリップ３０を記憶して、次のステップにおいてそれらをとじ合わせてもよい。
【００３２】
画像ストリップ３０が１秒の３０分の１でそれぞれ取得されるとすると、隣接するストリップ間の相対的な動きは、比較的少ない可能性がある。結果として、隣接する画像ストリップを合成すると、並進動きモデルは、動きの微調整をせずに用いられる。隣接したストリップを位置合わせするために最小の歪み補正だけが必要である場合がある。なぜなら、隣接したストリップに対する変更は、比較的高いサンプリングレートでは、比較的小さい可能性があるからである。ユーザがデジタルカメラ１０をパンする間に、各新しいストリップの非重複部分を現在のモザイクに追加してもよい。
【００３３】
ユーザがパンしている間に、デジタルカメラ１０を移動させるレートに画像ストリップ２２の寸法を適応させてもよい。たとえば、デジタルカメラ１０のより速い移動に応答して画像ストリップ２２の幅を増加させて、それによって、取得された画像ストリップ３０間で十分な重複を維持することができる。逆に、デジタルカメラ１０のより遅い移動に応答して画像ストリップ２２の幅を減少させることができる。
【００３４】
上記の技法により、従来技術のように取り込まれた画像をパノラマ画像にとじ合せるためにコンピュータシステムを用いる必要はない。さらに、従来の技法では、ユーザは、取り込まれた画像に十分な重複が存在することを確実にするためのステップをとる必要がある場合がある。これに対して、本発明の技法によると、ユーザは、比較的速いフレームレートによって対応されるより自然なパンニング移動（panning movement）を用いることができ、上記のようなフル解像度の画像の適切な使用が可能である。本発明の技法により、ユーザは、カメラボタンを１回押すだけで、スムーズなパンを行うことができる。
【００３５】
図５は、パノラマ画像の収集中にフィードバックをユーザに提供するための方法を示す。ステップ２００では、ユーザは、デジタルカメラ１０をパノラマ画像モードに設定し、所望のパノラマ画像シーンにわたってパンする。ステップ２０２では、カメラプロセッサ１２は、パノラマ画像モードにおいて、画像センサ１６を用いて一連の画像フレームを取り込み、収集された画像フレームをモザイクに合成する。前に収集された所与の画像フレームのすべて、または前のＮ個の所与の画像フレームの中で最良のとじ合わせを見出すことによって、各収集された画像フレームをとじ合わることができる。
【００３６】
ステップ２０４では、カメラプロセッサ１２は、現在のモザイクをディスプレイに描写して、フィードバックをユーザに提供する。現在のモザイクは、現在のパノラマ画像の進行をユーザに示す。たとえば、現在のビューと重ねることによってビューファインダ１９に現在のモザイクを描写させるか、またはデジタルカメラ１０の別個のディスプレイ（図示せず）に現在のモザイクを描写させてもよい。ビューファインダ１９または別個のディスプレイが完全なパノラマ画像を表示することができない場合には、現在のモザイクを通してユーザにスクロールさせることができるスクローリングメカニズムを用いてもよい。
【００３７】
一実施形態におけるカメラプロセッサ１２は、現在のモザイクにおける各推定された画素のあいまいさを求め、あいまいさが所定の閾値を越える画素を強調表示する。強調表示された画素は、カメラプロセッサ１２がさらなるデータを取り込み、モザイクのエリアを完成できるように、ユーザを示されたエリアに戻らせる。カメラプロセッサ１２は、カメラメモリ１４内に記憶された画像フレームを用いることができ、さらなるデータを必要とするエリアへ戻るデジタルカメラ１０の移動を検出し、それに従ってそれらのエリアをサンプリングする。
【００３８】
一実施形態では、デジタルカメラ１０のユーザは、各制限にビューファインダ１９を位置合せし、境界画像をキャプチャすることによって、所望のパノラマ画像の水平および／または垂直制限を設定する。そして、ユーザは、デジタルカメラ１０をパノラマ画像モードに設定し、カメラプロセッサ１２が画像フレームを収集してそれらをともにとじ合せると、所望のパノラマ画像シーンにわたってパンする。カメラプロセッサ１２は、境界画像を用いて、画像フレームの取り込みをいつ停止するかを決定する。たとえば、カメラプロセッサ１２は、取り込まれた画像フレームが、ユーザによって最初に取り込まれた右境界画像とほぼ一致する場合には、右側パンにおける画像フレームの取り込みを停止する。カメラプロセッサ１２は、現在のモザイクの取り込まれていないエリアをユーザに対してディスプレイ上で強調表示し、ユーザがそのエリアを移動させて（sweep）撮影すると、そのエリアの強調表示を取り込み後に解除することができる。
【００３９】
デジタルカメラ１０の露出設定は、そのパノラマ画像モードに固定されている場合がある。固定された露出によって、取り込まれた画像にぼけが生じることがある。カメラプロセッサ１２は、動き推定またはぼけ検出フィルタを用いてユーザがパノラマ画像モード中にデジタルカメラ１０をあまりに速く移動させていることを検出し、ユーザに、たとえば、視覚ディスプレイまたは他の機構を通じて合図する。いくつかの実施形態では、デジタルカメラ１０は、ユーザがビューファインダをあまりに速く移動させていることを検出するために用いることができる（たとえば、ジャイロスコープ等の）動きセンサを含みうる。
【００４０】
あるいは、カメラ１０の露出は、パノラマモードにおいて自動的に設定されている場合がある。露出は、陰から明るく照らされたエリアに大幅に変化する可能性のある照明条件に適応する。画像ストリップ間の相対的な照明変化は、カメラプロセッサ１０において比較的小さく、補正可能である場合がある。本明細書において教示されている画像ストリップの収集によって、従来のカメラに課せられる可能性のある露出制約が緩和できる。
【００４１】
図６は、関心のある対象物の解像度が向上したパノラマ画像を生成するための方法を示す。ステップ３００において、ユーザは、デジタルカメラ１０をパノラマ画像モードに設定し、所望のパノラマ画像シーンにわたってパンする。ステップ３０２では、カメラプロセッサ１２は、パノラマ画像モードでは、画像センサ１６を用いて一連のビデオ画像フレームをキャプチャする。ステップ３０４では、ユーザは、関心のある対象物におけるパンニングおよびズームを停止する。たとえば、ユーザは、デジタルカメラ１０におけるズームボタンを用いて、たとえば、人の顔にズームインすることができる。いくつかの実施形態では、カメラプロセッサ１２は、固定されたズームシーケンスにズームを制限することができる。ステップ３０６では、カメラプロセッサ１２は、画像センサ１６を用いて関心のある対象物の高解像度の画像をキャプチャする。ステップ３０８では、ユーザは、関心のある対象物からズームバックし、カメラプロセッサ１２が画像センサ１６を用いてビデオ画像フレームを取得している間パンし続ける。
【００４２】
カメラプロセッサ１２は、関心のある対象物のズームシーケンスに関連するメタデータのセットを記録する。メタデータは、ズームインの開始に対するフレーム数／時間スタンプと、関心のある対象物における安定した高解像度の取り込みのためのフレーム数／時間スタンプと、ズームアウトのためのフレーム数／時間スタンプとを含みうる。メタデータは、ステップ３１０では、ステップ３０６からの高解像度の画像と、パノラマ画像の残りのビデオフレームサンプルとを合成するために用いられる。ステップ３１０でのモザイクのとじ合わせは、ステップ３０６で取得される高解像度の画像のダウンサンプリングを含みうる。
【００４３】
ズームされたエリアは、関心の高い細部を含むエリアでありうる。このような場合には、画像が収集されると、収集された画像は、アップサンプリングされ、関心のある細部を保存することができる。（たとえば、双線形スケーリングまたは画像内容に基づいた方法等の）様々な方法を用いてアップサンプリングを実施することができる。
【００４４】
本発明の上記の詳細な説明は、例示を目的として提供され、網羅的ではなく、開示される通りの実施形態に本発明を限定することを意図するものではない。したがって、本発明の範囲は、添付の特許請求の範囲によって規定される。
【図面の簡単な説明】
【００４５】
【図１】本発明の技法によるデジタルカメラを用いてパノラマ画像を取得する方法を示すフロー図である。
【図２】本発明の教示を取り入れたデジタルカメラを示すブロック図である。
【図３】画像センサの高解像度およびビデオ機能を用いてパノラマ画像を生成する方法を示すフロー図である。
【図４】Ａは、画像センサによって提供される柔軟なアドレッシングを利用するパノラマ画像を取得するための方法を示す概略図である。Ｂは、画像センサによって提供される柔軟なアドレッシングを利用するパノラマ画像を取得するための方法を示す概略図である。
【図５】パノラマ画像の取得中にユーザにフィードバックを提供するための方法を示すフロー図である。
【図６】関心のある対象物の解像度が向上したパノラマ画像を生成するための方法を示すフロー図である。
【図１】
2005151563.tif 000003
【図２】
2005151563.tif 000004
【図３】
2005151563.tif 000005
【図４】
2005151563.tif 000006
【図５】
2005151563.tif 000007
【図６】
2005151563.tif 000008