(57)【特許請求の範囲】
【請求項１】
立体視画像ペアを表示する方法であって、
第１の画像センサから第１の画像を受信することと、
第２の画像センサから第２の画像を受信することと、
前記第１の画像と前記第２の画像との間の垂直方向視差を決定することと、
少なくとも１つの補正された画像を生成することによって前記第１の画像と前記第２の画像との間の前記垂直方向視差を補正することと、
補正された前記垂直方向視差が閾値未満であれば前記補正された画像に基づいて立体視画像ペアを表示することと、
前記補正された垂直方向視差が前記閾値以上であれば前記立体視画像ペアの２次元バージョンを表示することと、
を備える、方法。
【請求項２】
前記垂直方向視差が、入力装置からメタ情報を受信することによって決定される、請求項１に記載の方法。
【請求項３】
前記垂直方向視差が閾値を上回るとき、例外情報を表示することを更に備える、請求項１に記載の方法。
【請求項４】
前記例外情報が低品質インジケータを含む、請求項３に記載の方法。
【請求項５】
前記例外情報が、立体視撮像を続けるべきかどうかを尋ねるプロンプトを含む、請求項３に記載の方法。
【請求項６】
前記立体視画像ペアの視野が第２の閾値を下回るとき、視野例外情報を表示することを更に備える、請求項１に記載の方法。
【請求項７】
前記視野例外情報が低減視野インジケータである、請求項６に記載の方法。
【請求項８】
前記垂直方向視差を決定することが、
前記第１の画像についての第１の行和ベクトルを生成することと、
前記第２の画像についての第２の行和ベクトルを生成することと、
前記第１の行和ベクトルと前記第２の行和ベクトルとについての最良適合を決定することと、
を備える、請求項１に記載の方法。
【請求項９】
前記垂直方向視差を決定することが、
前記第１の画像についての第１の行エッジ和ベクトルを生成することと、
前記第２の画像についての第２の行エッジ和ベクトルを生成することと、
前記第１の行エッジ和ベクトルと前記第２の行エッジ和ベクトルとについての最良適合を決定することと、
を備える、請求項１に記載の方法。
【請求項１０】
前記立体視画像ペアをデータ記憶装置に記憶することを更に備える、請求項１に記載の方法。
【請求項１１】
前記最良適合が最小差分値和によって決定される、請求項９に記載の方法。
【請求項１２】
前記垂直方向視差を補正することが、前記第１の画像又は前記第２の画像をシフト又はトリミングすることを含む、請求項１に記載の方法。
【請求項１３】
プロセッサと、
第１の画像センサと、
第２の画像センサと、
前記第１の画像センサから第１の画像を受信し、前記第２の画像センサから第２の画像を受信するように構成されたマスタ制御モジュールと、
前記第１の画像と前記第２の画像との間の垂直方向視差を決定するように構成された視差決定モジュールと、
少なくとも１つの補正された画像を生成することによって前記第１の画像と前記第２の画像との間の前記垂直方向視差を補正するように構成されたシフト及びトリミングモジュールと、
補正された前記垂直方向視差が閾値未満であるとき、電子表示器上に前記補正された画像に基づいた立体視画像ペアを表示するように構成され、補正された前記垂直方向視差が前記閾値以上であるとき前記電子表示器に前記立体視画像ペアの２次元バージョンを表示するように構成された表示制御モジュールと
を備える、立体視画像ペアを表示するための画像処理装置。
【請求項１４】
前記表示制御モジュールは、前記垂直方向視差が前記閾値を上回るとき、例外情報を表示するように更に構成された、請求項１３に記載の装置。
【請求項１５】
前記例外情報は、前記垂直方向視差が前記閾値を上回るとき、立体視撮像を続けるべきかどうかを尋ねるプロンプトである、請求項１４に記載の装置。
【請求項１６】
前記垂直方向視差が前記閾値を上回るとき、前記例外情報が２次元画像である、請求項１４に記載の装置。
【請求項１７】
前記表示制御モジュールは、前記立体視画像ペアの視野が第３の閾値を下回るとき、視野例外情報を表示するように更に構成された、請求項１４に記載の装置。
【請求項１８】
前記視野例外情報が低減視野インジケータである、請求項１７記載の装置。
【請求項１９】
データ記憶装置を更に備え、前記マスタ制御モジュールが、前記立体視画像ペアを前記データ記憶装置に記憶するように更に構成された、請求項１３に記載の装置。
【請求項２０】
電子表示器を更に備え、前記表示制御モジュールが、前記電子表示器上に前記立体視画像ペアを表示するように構成された、請求項１３に記載の装置。
【請求項２１】
前記視差決定モジュールが、
前記第１の画像についての第１の行和ベクトルを生成することと、
前記第２の画像についての第２の行和ベクトルを生成することと、
前記第１の行和ベクトルと前記第２の行和ベクトルとについての最良適合を決定することと、
によって前記垂直方向視差を決定する、請求項１３に記載の装置。
【請求項２２】
前記視差決定モジュールが、
前記第１の画像についての第１の行エッジ和ベクトルを生成することと、
前記第２の画像についての第２の行エッジ和ベクトルを生成することと、
前記第１の行エッジ和ベクトルと前記第２の行エッジ和ベクトルとについての最良適合を決定することと、
によって前記垂直方向視差を決定する、請求項１３に記載の装置。
【請求項２３】
前記最良適合が、２つのベクトル間の絶対差分値和を最小限に抑えることによって決定される、請求項２２に記載の装置。
【請求項２４】
前記画像処理装置がワイヤレス電話ハンドセットである、請求項１３に記載の装置。
【請求項２５】
実行されたとき、立体視画像ペアを表示する方法を実行するプロセッサ実行可能命令を含むコンピュータ可読記憶媒体であって、前記方法は、
第１の画僧センサから第１の画像を受信することと、
第２の画像センサから第２の画像を受信することと、
前記第１の画像と前記第２の画像との間の垂直方向視差を決定することと、
少なくとも１つの補正された画像を生成することによって前記第１の画像と前記第２の画像との間の前記垂直方向視差を補正することと、
補正された前記垂直方向視差が閾値を下回るとき、電子表示器上に前記補正された画像に基づく立体視画像ペアを表示することと、
補正された前記垂直方向視差が第２の閾値を上回るとき、２次元画像を表示することと、
を備える、コンピュータ可読記憶媒体。
【請求項２６】
実行されたとき、前記垂直方向視差が前記第２の閾値を上回るとき、例外情報を表示する方法を実行するプロセッサ実行可能命令を更に含む、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２７】
前記例外情報は、前記垂直方向視差が前記第２の閾値を上回るとき、立体視撮像を続けるべきかどうかを尋ねるプロンプトである、請求項２６に記載のコンピュータ可読記憶媒体。
【請求項２８】
第１の画像センサから第１の画像を受信するための手段と、
第２の画像センサから第２の画像を受信するための手段と、
前記第１の画像と前記第２の画像との間の垂直方向視差を決定するための手段と、
少なくとも１つの補正された画像を生成することによって前記垂直方向視差を補正するための手段と、
補正された前記垂直方向視差が閾値未満であるとき電子表示器に前記補正された画像に基づく立体視画像ペアを表示するための手段と、
補正された前記垂直方向視差が前記閾値以上であるとき前記電子表示器に前記立体視画像ペアの２次元バージョンを表示する手段と、
を備える、立体視画像ペアを表示するための撮像装置。
【請求項２９】
ワイヤレス電話ハンドセットを更に備える、請求項２８に記載の装置。
【請求項３０】
垂直方向視差を決定するための前記手段が、行和ベクトルの最良適合を実行するようにプロセッサを設定する命令を含む、請求項２８に記載の装置。
【請求項３１】
垂直方向視差を決定するための前記手段が、行エッジ和ベクトルの最良適合を実行するようにプロセッサを設定する命令を含む、請求項２８に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、撮像装置に関し、詳細には、立体視画像（stereoscopic image）の撮影のための方法、装置、及びシステムに関する。
【背景技術】
【０００２】
過去１０年間で、デジタルカメラ及びモバイルフォンを含む、広範囲の機器にデジタル撮像機能が内蔵された。最近、これらの機器を用いて立体視画像を撮影する機能が技術的に可能になった。機器製造業者は、複数のデジタル撮像センサーを内蔵する機器を導入することによって対応した。モバイルワイヤレス通信機器、携帯情報端末（ＰＤＡ）、個人用音楽システム、デジタルカメラ、デジタル記録機器、ビデオ会議システムなどを含む、広範囲の電子機器は、それらのユーザに様々な機能及び特徴を提供するために複数の撮像センサーを利用する。これらは、立体視（３Ｄ）写真及びビデオ又はムービーなどの３Ｄ撮像用途だけでなく、より大きいダイナミックレンジの撮像及びパノラマ撮像をも含む。
【０００３】
正確に位置合わせされた立体視画像ペアを達成するために、複数の撮像センサーをもつ機器は、しばしば、製造プロセス中に較正される。機器は、製造ライン上で特殊な「較正モード」に入れられ得、撮像センサーは、各カメラの相対位置を明確に識別するのを支援するように設計されたターゲット画像に向けられる。機器の各カメラは、次いでターゲット画像に合焦され、画像が撮影され得る。各撮影された画像は、次いで、カメラの相対方向を抽出するために分析され得る。
【０００４】
幾つかのカメラは、２つのカメラの位置をより良く位置合わせするために、各カメラの相対位置に対する細かい調整が工場で行われ得るように設計され得る。例えば、各カメラは、それの位置への細かい調整を行う機能を与える調整可能なプラットフォーム内に取り付けられ得る。代替的に、各カメラによって撮影された画像は、他のカメラに対する各カメラの相対位置を決定するために画像処理ソフトウェアによって分析され得る。この相対位置データは、次いで、カメラ上の不揮発性メモリに記憶される。製品が後に購入され使用されるとき、オンボード画像処理は、高品質の立体視画像を生成するために、各カメラによって撮影された画像を電子的に調整するために相対位置情報を利用する。
【０００５】
これらの較正プロセスは幾つかの欠点を有する。第１に、正確な製造較正は、製造プロセス中に時間を消費し、機器のコストを増加させる。第２に、製造中に生成される較正データは本質的に静的である。従って、較正データは、機器がそれの寿命中に使用されるとき、カメラ位置の変化を考慮することができない。例えば、複数のレンズの較正は、カメラが販売されるときには極めて正確であり得るが、カメラは、購入後すぐに落とされる可能性がある。落下の衝撃により、カメラは較正範囲外になり得る。これにもかかわらず、ユーザは、カメラが落下に耐え、高品質の立体視画像を生成し続けることを期待する可能性がある。
【０００６】
更に、温度変化によるカメラ部品の伸縮が各カメラの相対位置のわずかな変化をもたらし得る。工場較正は、一般に、室温で行われ、温度によるレンズ位置の変化の補償はない。従って、特に寒い又は暑い日に立体視撮像機能が利用される場合、カメラによって生成される立体視画像ペアの品質は影響を及ぼされ得る。
【０００７】
従って、マルチカメラ機器の静的な工場較正にはそれの限界がある。定期的な較正がこれらの問題のうちの幾つかを緩和するであろうが、カメラの寿命中にユーザのカメラの定期的な立体視カメラ較正を行うことをユーザに期待するのは現実的でないことがある。多くのユーザは、較正手順をうまく完了することを望みもせず、そのための技能を有することもあまりない。
【発明の概要】
【０００８】
本実施形態のうちの幾つかは、立体視画像ペアを表示する方法を備え得る。本方法は、入力機器から第１の画像を受信し、入力機器から第２の画像を受信することを備え得る。本方法は、第１の画像と第２の画像との間の垂直方向視差（vertical disparity）を決定することと、垂直方向視差が閾値を下回る場合、立体視画像ペアを表示することとを更に備え得る。本方法は、少なくとも１つの補正画像を生成することによって第１の画像と第２の画像との間の垂直方向視差を補正することと、補正画像に基づいて立体視画像ペアを生成することとを更に備え得る。幾つかの態様では、垂直方向視差は、入力機器からメタ情報（meta information）を受信することによって決定される。幾つか他の態様では、本方法は、垂直方向視差が閾値を上回るとき、例外情報（exception information）を表示することを更に備える。幾つかの態様では、例外情報は低品質インジケータを含む。幾つか他の態様では、例外情報は、立体視撮像を続けるべきかどうかを尋ねるプロンプトを含む。幾つかの他の態様では、例外情報は２次元画像である。幾つかの態様では、本方法は、立体視画像の視野が第２の閾値を下回るとき、視野例外情報を表示することを更に備える。幾つかの態様では、視野例外情報は低減視野インジケータである。
【０００９】
幾つかの態様では、垂直方向視差を決定することは、第１の画像についての第１の行和ベクトルを生成することと、第２の画像についての第２の行和ベクトルを生成することと、第１の行和ベクトルと第２の行和ベクトルとについての最良適合（best fit）を決定することとを備える。幾つかの他の態様では、垂直方向視差を決定することは、第１の画像についての第１の行エッジ和（row edge sum）ベクトルを生成することと、第２の画像についての第２の行エッジ和ベクトルを生成することと、第１の行エッジ和ベクトルと第２の行エッジ和ベクトルとについての最良適合を決定することとを備える。幾つかの態様では、最良適合は最小差分値和によって決定される。
【００１０】
幾つかの態様では、本方法は、立体視画像ペアをデータ記憶装置に記憶することを更に備える。幾つかの態様では、垂直方向視差を補正することは、第１の画像又は第２の画像をシフト又はトリミングすることを含む。
【００１１】
他の態様は、プロセッサと、入力機器と、入力機器から第１の画像を受信し、入力機器から第２の画像を受信するように構成されたマスタ制御モジュールと、第１の画像と第２の画像との間の垂直方向視差を決定するように構成された視差決定モジュールと、垂直方向視差が閾値を下回るとき、電子表示器上に立体視画像ペアを表示するように構成された表示制御モジュールとを備える画像処理機器に関する。幾つかの態様では、本機器は、少なくとも１つの補正画像を生成することによって第１の画像と第２の画像との間の垂直方向視差を補正するように構成されたシフト及びトリミングモジュールと、補正画像に基づいて立体視画像ペアを生成するように構成された符号化モジュールとを更に備える。幾つかの態様では、表示制御モジュールは、垂直方向視差が閾値を上回るとき、例外情報を表示するように更に構成される。幾つかの他の態様では、垂直方向視差は、入力機器からメタ情報を受信することによって決定される。幾つかの態様では、例外情報は、垂直方向視差が閾値を上回るとき、立体視撮像を続けるべきかどうかを尋ねるプロンプトである。幾つかの態様では、垂直方向視差が閾値を上回るとき、例外情報は２次元画像である。幾つかの態様では、表示制御モジュールは、立体視画像の視野が第２の閾値を下回るとき、視野例外情報を表示するように更に構成される。幾つかの態様では、視野例外情報は低減視野インジケータである。
【００１２】
幾つかの態様では、本機器はデータ記憶装置を更に備え、マスタ制御モジュールは、立体視画像ペアをデータ記憶装置に記憶するように更に構成される。幾つかの態様では、本機器は電子表示器を更に備え、表示制御モジュールは、電子表示器上に立体視画像ペアを表示するように構成される。幾つかの態様では、視差決定モジュールは、第１の画像についての第１の行和ベクトルを生成することと、第２の画像についての第２の行和ベクトルを生成することと、第１の行和ベクトルと第２の行和ベクトルとについての最良適合を決定することとによって垂直方向視差を決定する。幾つかの態様では、視差決定モジュールは、第１の画像についての第１の行エッジ和ベクトルを生成することと、第２の画像についての第２の行エッジ和ベクトルを生成することと、第１の行エッジ和ベクトルと第２の行エッジ和ベクトルとについての最良適合を決定することとによって垂直方向視差を決定する。幾つかの態様では、最良適合は、２つのベクトル間の絶対差分値和（sum of absolute difference values）を最小限に抑えることによって決定される。幾つかの他の態様では、視差決定モジュールは、入力機器からメタ情報を受信することによって垂直方向視差を決定する。幾つかの態様では、画像処理機器はワイヤレス電話である。
【００１３】
幾つかの態様は、実行されたとき、入力機器から第１の画像を受信することと、入力機器から第２の画像を受信することと、第１の画像と第２の画像との間の垂直方向視差を決定することと、垂直方向視差が閾値を下回るとき、電子表示器上に立体視画像ペアを表示することとを行う方法を実行するプロセッサ実行可能命令を含んでいる非一時的コンピュータ可読媒体を含む。幾つかの態様では、本コンピュータ可読媒体は、実行されたとき、垂直方向視差が閾値を上回るとき、例外情報を表示する方法を実行する命令を更に含む。幾つかの態様では、垂直方向視差は、入力機器からメタ情報を受信することによって決定される。幾つかの態様では、例外情報は、垂直方向視差が閾値を上回るとき、立体視撮像を続けるべきかどうかを尋ねるプロンプトである。
【００１４】
幾つかの態様は、入力機器から第１の画像を受信するための手段と、入力機器から第２の画像を受信するための手段と、第１の画像と第２の画像との間の垂直方向視差を決定するための手段と、垂直方向視差が閾値を下回るとき、電子表示器上に立体視画像ペアを表示するための手段とを備える撮像装置に関する。幾つかの態様では、本撮像装置は、少なくとも１つの補正画像を生成することによって第１の画像と第２の画像との間の垂直方向視差を補正するための手段と、補正画像に基づいて立体視画像ペアを生成するための手段とを更に備える。幾つかの態様では、本機器はワイヤレス電話ハンドセットを備える。幾つかの態様では、垂直方向視差を決定するための手段は、行和ベクトルの最良適合を実行するようにプロセッサを構成する命令を含む。幾つかの態様では、垂直方向視差を決定するための手段は、行エッジ和ベクトルの最良適合を実行するようにプロセッサを構成する命令を含む。
【００１５】
他の本実施形態は、第１の撮像センサーと第２の撮像センサーとを含む撮像装置と、撮像センサーを制御するように構成された電子プロセッサとを含み得る。これらの実施形態はまた、第１の撮像センサーを使用して第１の画像を撮影することと、第２の撮像センサーを使用して第２の画像を撮影することと、第１の画像と第２の画像との間の垂直方向視差を決定することと、少なくとも１つの補正画像を作成するために補正を適用することとを行うように構成された制御モジュールを含み得る。
【００１６】
幾つかの実施形態では、垂直方向視差を決定することは、第１の画像についての第１の行和ベクトルを生成することと、第２の画像についての第２の行和ベクトルを生成することと、第１の行和ベクトルと第２の行和ベクトルとについての最良適合を決定することとを備え得る。他の実施形態では、垂直方向視差を決定することは、第１の画像についての第１の行エッジ和ベクトルを生成することと、第２の画像についての第２の行エッジ和ベクトルを生成することと、第１の行エッジ和ベクトルと第２の行エッジ和ベクトルとについての最良適合を決定することとを備え得る。幾つかの実施形態では、最良適合は、２つのベクトル間の絶対差分値和を最小限に抑えることによって決定され得る。
【００１７】
幾つかの実施形態では、本方法は、補正画像に基づく立体視画像ペアの作成を更に備え得る。幾つかの実施形態では、要素は繰り返して実行され得、例えば、各立体視画像ペアは立体視ビデオ又はムービーの一部であり得る。代替的に、立体視画像ペアはスナップショットを備え得る。他の実施形態では、撮像装置はワイヤレス電話ハンドセットを更に備え得る。本機器の幾つかの実施形態はユーザ作動型制御装置を更に備え、制御モジュールは、ユーザ作動型制御装置の第１の作動に応答して第１の画像を撮影するように更に構成される。
【００１８】
他の本実施形態は、プロセッサに、第１の画像と第２の画像との間の垂直方向視差を決定することと、少なくとも１つの補正画像を生成することによって垂直方向視差を補正することと、補正画像に基づいて立体視画像ペアを生成することとを行わせるように動作可能であるプロセッサ実行可能命令を含んでいる非一時的コンピュータ可読媒体を含み得る。幾つかの実施形態では、命令は、プロセッサに、第１の画像についての第１の行エッジ和ベクトルを生成することと、第２の画像についての第２の行エッジ和ベクトルを生成することと、第１の行エッジ和ベクトルと第２の行エッジ和ベクトルとについての最良適合を決定することとによって垂直方向視差を決定させ得る。他の実施形態では、命令は、プロセッサに、第１の画像についての行和ベクトルを生成することと、第２の画像についての第２の行和ベクトルを生成することと、第１の行エッジ和ベクトルと第２の行エッジ和ベクトルとの間の最良適合を決定することとによって垂直方向視差を決定させ得る。幾つかの実施形態では、最良適合を決定することは、２つのベクトル間の絶対差分和を最小限に抑えることを含む。
【００１９】
添付の図面とともに以下に説明する開示する態様は、開示する態様を限定するためではなく、開示する態様を例示するために与えられ、同様の表示は同様の要素を示す。
【図面の簡単な説明】
【００２０】
【図１Ａ】幾つかの動作可能な実施形態を実施する機器を示すブロック図。モバイル機器の主要構成要素が示されている。
【図１Ｂ】立体視画像を生成する機器の一実施形態を示すブロック図。
【図２Ａ】電子表示器上に立体視画像ペアを表示するためのプロセスの一実施形態のフローチャート。
【図２Ｂ】電子表示器上に立体視画像データを表示するためのプロセスの一実施形態のフローチャート。
【図２Ｃ】電子表示器上に立体視画像ペアデータを表示するためのプロセスの一実施形態のフローチャート。
【図３Ａ】少なくとも１つの動作可能な実施形態における画像行合計と行和ベクトルの作成とのプロセスを示す図。
【図３Ｂ】少なくとも１つの動作可能な実施形態において２つの行和ベクトル間で実行される最良適合動作のプロセスを示す図。
【図４】２つの画像間の垂直方向視差と、１つの動作可能な実施形態が、垂直方向視差を低減するか又はなくすために画像をどのようにトリミングし得るかを示す図。
【図５】電子表示器上にデータを表示するためのプロセスの一実施形態を示すフローチャート。
【図６】立体視画像ペアを表示するためにマスタ制御モジュールによって使用されるプロセスの一実施形態を示すデータフロー図。
【図７】立体視画像ペアを表示するためにマスタ制御モジュールによって使用されるプロセスの一実施形態を示すデータフロー図。
【発明を実施するための形態】
【００２１】
本明細書で開示する実施形態は、複数の撮像センサーを含む機器を用いて立体視画像を生成するためのシステム、方法及び装置を提供する。詳細には、本実施形態は、２つの画像間の垂直方向視差を決定することと、少なくとも１つの補正画像を生成することによって垂直方向視差を補正することと、補正画像に基づいて立体視画像ペアを生成し、表示することとを企図する。これらの実施形態が、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実施され得ることを当業者は認識されよう。
【００２２】
以下の説明では、例の十分な理解が得られるように具体的な詳細を与える。但し、例はこれらの具体的な詳細なしに実施され得ることを当業者は理解されよう。例えば、例を不必要な詳細において不明瞭にしないために、電気的構成要素／機器をブロック図で示すことがある。他の事例では、例を更に説明するために、そのような構成要素、他の構造及び技法を詳細に図示することがある。
【００２３】
また、例は、フローチャート、流れ図、有限状態図、構造図、又はブロック図として示されるプロセスとして説明されることがあることに留意されたい。フローチャートは動作を逐次プロセスとして説明することがあるが、動作の多くは並行して又は同時に実行され得、プロセスは繰り返され得る。更に、動作の順序は並べ替えられ得る。プロセスは、それの動作が完了したときに終了する。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラムなどに対応し得る。プロセスがソフトウェア関数に対応するとき、それの終了は呼出し関数又はメイン関数への関数の復帰に対応する。
【００２４】
情報及び信号は、多種多様な技術及び技法のいずれかを使用して表され得ることを当業者は理解されよう。例えば、上記の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、及びチップは、電圧、電流、電磁波、磁界又は磁性粒子、光場又は光学粒子、又はそれらの任意の組合せによって表され得る。
【００２５】
立体視撮像装置の複数のカメラの相対位置は、角運動の３つの軸とシフトの３つの軸とによって記述され得る。この説明では、ｘ、ｙ、及びｚ軸上の位置は相対シフトを記述する。角回転は、「ピッチ(pitch)」とも呼ばれる水平（ｘ）軸に関する回転と、「ヨー(yaw)」として知られる垂直ｙ軸に関する回転と、「ｚ」軸に関する回転又は「ロール(roll)」とによって記述され得る。
【００２６】
幾つかの軸にわたる複数のセンサーの相対位置の変化は、他のものよりも著しく立体視画像品質に影響を及ぼす。例えば、心理物理学試験は、ｙ軸に沿ったシフト又はピッチ角の変化が知覚画質に最も大きい影響を及ぼすことを確認する。ｙ軸又はピッチ角に沿ったこれらのシフトは垂直方向視差として知られている。垂直方向視差は、例えば、立体視ビデオ又はムービーアプリケーションの場合のように、長期間にわたって閲覧されたとき、吐き気及び頭痛を引き起こし得る。
【００２７】
垂直方向視差に対する立体視画像ペア品質の感度と、マルチ撮像センサー機器を正確に較正された状態に維持することの相対的困難とを仮定すれば、垂直方向視差をもつ撮影された画像ペアに対するある程度の許容差を撮像装置に与えることが有利になる。一実施形態は、画像間の垂直方向視差を低減するか又はなくすように立体視画像ペアを動的に調整する画像処理方法である。垂直方向視差を除去又は低減するように画像を動的に調整することによって、立体視画像ペアの品質は正確な機器較正にあまり依存しなくなる。機器の実世界適用においてそのような較正を達成することはしばしば困難であるので、これは特に有利である。
【００２８】
図１Ａに、撮像センサー１１５及び１１６にリンクされたプロセッサ１２０を含む構成要素のセットを有する機器１００のハイレベルブロック図を示す。作業メモリ１０５、記憶装置１１０、電子表示器１２５、及びメモリ１３０もプロセッサ１２０と通信している。
【００２９】
機器１００は、セルフォン、デジタルカメラ、携帯情報端末、タブレットコンピュータなどであり得る。機器１００はまた、デスクトップパーソナルコンピュータ、ビデオ会議局など、より固定の機器であり得る。機器１００上で、複数のアプリケーションがユーザにとって利用可能であり得る。これらのアプリケーションは、従来の写真アプリケーション、ハイダイナミックレンジ撮像、パノラマビデオ、あるいは３Ｄ画像又は３Ｄビデオを生成する立体視撮像を含み得る。
【００３０】
プロセッサ１２０は、汎用処理ユニット、又は撮像アプリケーションのために特別に設計されたプロセッサであり得る。図示のように、プロセッサ１２０は、メモリ１３０と作業メモリ１０５とに接続される。図示の実施形態では、メモリ１３０は、撮像センサー制御モジュール１３５と、視差決定モジュール１４０と、シフト及びトリミングモジュール１５５と、符号化モジュール１６０と、撮影制御モジュール１７０と、オペレーティングシステム１７５とを記憶する。これらのモジュールは、様々な画像処理タスクと機器管理タスクとを実行するようにプロセッサを構成する命令を含む。作業メモリ１０５は、メモリ１３０のモジュール中に含まれているプロセッサ命令の作業セットを記憶するためにプロセッサ１２０によって使用され得る。代替的に、作業メモリ１０５はまた、機器１００の動作中に作成された動的データを記憶するためにプロセッサ１２０によって使用され得る。
【００３１】
上述のように、プロセッサは、メモリに記憶された幾つかのモジュールによって構成される。撮像センサー制御モジュール１３５は、撮像センサー１１５及び１１６の焦点位置を調整するようにプロセッサ１２０を構成する命令を含む。撮像センサー制御モジュール１３５はまた、撮像センサー１１５及び１１６を用いて画像を撮影するようにプロセッサ１２０を構成する命令を含む。従って、画像撮影制御モジュール１３５、撮像センサー１１５又は１１６、及び作業メモリ１０５とともに、プロセッサ１２０は、撮像センサーを使用して画像を撮影するための１つの手段を表す。撮像センサーは入力機器と見なされ得るので、画像撮影制御モジュール１３５、撮像センサー１１５又は１１６、及び作業メモリ１０５とともに、プロセッサ１２０はまた、入力機器を用いて画像を撮影するための１つの手段を表す。
【００３２】
視差決定モジュール１４０は、撮像センサー１１５及び１１６によって撮影された２つの画像間の垂直方向視差を決定し、場合によってはなくすようにプロセッサ１２０を構成する命令を与える。従って、プロセッサ１２０及び作業メモリ１０５とともに、視差決定モジュール内の命令は、第１の画像と第２の画像との間の垂直方向視差を決定するための１つの手段を表す。
【００３３】
シフト及びトリミングモジュール１５５は、２つの画像間の垂直方向視差を補正するために第１の画像と第２の画像とを互いに関してシフトするようにプロセッサ１２０を構成し得る命令を含む。シフト及びトリミングモジュール１５５はまた、２つの画像間の一貫した位置合わせを達成するために画像１及び／又は画像２をトリミングするための命令を含み得る。従って、プロセッサ１２０及びメモリ１０５とともに、シフト及びトリミングモジュール１５５中に含まれる命令は、２つの画像間の垂直方向視差を補正するための１つの手段を表す。
【００３４】
符号化モジュール１６０は、撮像センサー１１５及び１１６によって撮影された画像を立体視画像に符号化するようにプロセッサを構成する命令を含む。従って、符号化モジュール１６０内に含まれている命令は、第１の画像と第２の画像とに基づいて立体視画像を生成するための１つの手段を表す。
【００３５】
撮影制御モジュール１７０は、機器１００の全体的な画像処理機能を制御する命令を含み得る。例えば、撮影制御モジュール１７０は、撮像センサー１１５又は１１６を使用して第１及び第２の画像を撮影するようにプロセッサ１２０を構成するために撮像制御モジュール１３５中のサブルーチンを呼び出す命令を含み得る。撮影制御モジュール１７０は、次いで、２つの画像間の垂直方向視差を決定するために視差決定モジュール１４０を呼び出し得る。撮影制御モジュールは、次いで、撮像センサー１１５又は撮像センサー１１６によって撮影された画像を垂直方向に位置合わせするために、それらの画像をシフト及びトリミングするためにシフト及びトリミングモジュール１５５を呼び出し得る。撮影制御モジュール１７０は、次いで、撮像センサー１１５及び撮像センサー１１６によって撮影され、シフト及びトリミングモジュール１６０によって調整された２つの画像を立体視画像ペアに符号化するために符号化モジュール１６０を呼び出し得る。幾つかの実施形態では、符号化モジュール１６０又は撮影制御モジュール１７０は、立体視画像ペアをデータ記憶装置１１０に記憶するようにプロセッサ１２０を構成する命令を含み得る。
【００３６】
幾つかの他の実施形態では、撮影制御モジュール１７０は、表示器１２５上にデータを表示するようにプロセッサを構成する命令を含み得る。従って、撮影制御モジュール内の命令、プロセッサ１２０などのプロセッサ、及び作業メモリ１０５などのメモリは、電子表示器上にデータを表示するための１つの手段を表す。
【００３７】
オペレーティングシステムモジュール１７５は、機器１００のメモリと処理リ発信源とを管理するようにプロセッサを構成する。例えば、オペレーティングシステムモジュール１７５は、電子表示器１２５、記憶装置１１０、又は撮像センサー１１５などのハードウェアリ発信源を管理するための機器ドライバを含み得る。従って、幾つかの実施形態では、上記で説明した画像処理モジュール中に含まれている命令は、これらのハードウェアリ発信源と直接対話せず、代わりに、オペレーティングシステム構成要素１７５中にある標準サブルーチン又はＡＰＩを通して対話し得る。オペレーティングシステム１７５内の命令は、次いで、これらのハードウェア構成要素と直接対話し得る。
【００３８】
例えば、オペレーティングシステム１７５は、表示装置ドライバを形成する命令のセットを含み得る。これらの命令は、表示器１２５上にデータを表示させるようにプロセッサ１２０を構成し得る。オペレーティングシステム表示装置ドライバ中に含まれている命令は、メモリ１３０などのメモリに記憶された他のモジュールが電子表示器上にデータをより容易に表示することを可能にするように電子表示器を制御し得る。従って、電子表示器１２５及びプロセッサ１２０とともに、電子表示器上にデータを表示するようにプロセッサを構成するオペレーティングシステム１７５中に含まれている命令は、電子表示器上にデータを表示するための１つの手段を表す。
【００３９】
プロセッサ１２０は記憶装置モジュール１１０にデータを書き込み得る。記憶装置モジュール１１０は従来のディスク機器として図式的に表されているが、複数の実施形態は、メモリディスク、ＵＳＢドライブ、フラッシュドライブ、リモート接続された記憶媒体、仮想ディスクドライバなどを含むように、ディスクベースの記憶装置、又は幾つかの他のタイプ記憶媒体のうちの１つのいずれかを含むことができることを当業者は理解されよう。
【００４０】
図１Ａは、プロセッサと撮像センサーとメモリとを含む別々の構成要素を有する機器を示しているが、これらの別々の構成要素は、特定の設計目標を達成するために様々な方法で組み合わせられ得ることを当業者は認識されよう。例えば、代替実施形態では、メモリ構成要素は、コストを節約するために及び性能を改善するためにプロセッサ構成要素と組み合わせられ得る。
【００４１】
更に、図１Ａは、幾つかのモジュールを有するメモリ構成要素１３０と、作業メモリを有する別個のメモリ１０５とを含むように２つのメモリ構成要素を示しているが、当業者は、異なるメモリアーキテクチャを利用する幾つかの実施形態を認識されよう。例えば、メモリ１３０中に含まれているモジュールを実施するプロセッサ命令の記憶装置のための設計はＲＯＭ又はスタティックＲＡＭメモリを利用し得る。代替的に、プロセッサ命令は、機器１００に組み込まれるか又は外部機器ポートを介して接続されたディスク記憶装置からシステム開始時に読み取られ得る。プロセッサ命令は、次いで、プロセッサによる実行を可能にするためにＲＡＭにロードされ得る。例えば、作業メモリ１０５はＲＡＭメモリであり得、命令は、プロセッサ１２０による実行の前に作業メモリ１０５にロードされる。
【００４２】
図１Ｂに、プロセッサ１９２と、プロセッサ１９２と通信している作業メモリ１９６、記憶装置１９８、電子表示器１９４、及びメモリ１８２とを含む構成要素のセットを有する機器１８０のブロック図を示す。
【００４３】
機器１８０は、セルフォン、デジタルカメラ、携帯情報端末、タブレットコンピュータなどであり得る。機器１８０はまた、デスクトップパーソナルコンピュータ、ビデオ会議局など、より固定の機器であり得る。機器１８０上で、複数のアプリケーションがユーザにとって利用可能であり得る。これらのアプリケーションは、従来の写真アプリケーション、ハイダイナミックレンジ撮像、パノラマビデオ、又は３Ｄ画像又は３Ｄビデオを生成する立体視撮像を含み得る。
【００４４】
プロセッサ１９２は、汎用処理ユニット、又は撮像アプリケーションのために特別に設計されたプロセッサであり得る。図示のように、プロセッサ１９２は、入力１９１とメモリ１８２と作業メモリ１９６とに接続される。入力１９１はプロセッサ１９２にデータを与える。特定の実施形態に応じて、入力１９１から与えられるデータは様々な発信源から来ることがある。例えば、一実施形態では、入力１９１はネットワークアダプタを表し得る。入力１９１は、ネットワークを介してデータ発信源とのネットワーク接続性を確立し、それらのデータ発信源から受信したデータをプロセッサ１９２に与え得る。代替的に、他の実施形態では、入力１９１は、ＵＳＢフラッシュドライブ、ＣＤ−ＲＯＭドライブ、フロッピー（登録商標）ディスクドライブなどのポータブルメディア読取り装置を表し得る。入力１９１は、ポータブルメディアからデータを読み取り、それをプロセッサ１９２に与え得る。入力１９１はまた、テープドライブ、ハードディスク、ＲＡＭドライブなどの従来の固定記憶装置を表し得る。
【００４５】
マスタ制御モジュール１８８内の命令は、入力１９１からデータを受信するようにプロセッサ９１２を構成する命令を含み得る。例えば、幾つかの実施形態は、入力１９１から第１又は第２の画像を受信するようにプロセッサ１９２を構成する命令を含み得る。幾つかの実施形態は、入力１９０から垂直方向視差メタ情報をも受信するようにプロセッサを構成する命令を含むマスタ制御モジュールを含み得る。従って、プロセッサ１９２、入力１９１、及び作業メモリ１９６とともに、入力１９１からデータを読み取るようにプロセッサを構成するマスタ制御モジュール内の命令は、第１の画像と第２の画像との間の垂直方向視差を決定するための１つの手段を表し得る。プロセッサ１９２、入力１９１、及び作業メモリ１９６とともに、入力１９１から画像データを読み取るようにプロセッサを構成するマスタ制御モジュールの一実施形態内の命令は、入力機器から画像を受信するための１つの手段を表し得る。
【００４６】
図示の実施形態では、メモリ１８２は、シフト及びトリミングモジュール１８４と、符号化モジュール１８６と、表示制御モジュール１８７と、マスタ制御モジュール１８８と、オペレーティングシステム１９０とを含む。これらのモジュールは、様々な画像処理タスクと機器管理タスクとを実行するようにプロセッサを構成する命令を含む。作業メモリ１９６は、メモリ１８２のモジュール中に含まれているプロセッサ命令の作業セットを記憶するためにプロセッサ１９２によって使用され得る。代替的に、作業メモリ１９６はまた、機器１８０の動作中に作成された動的データを記憶するためにプロセッサ１９２によって使用され得る。
【００４７】
上述のように、プロセッサは、メモリに記憶された幾つかのモジュールによって構成される。シフト及びトリミングモジュール１８４は、２つの画像間の垂直方向視差を補正するために第１の画像と第２の画像とを互いに関してシフトするようにプロセッサ１９２を構成し得る命令を含む。シフト及びトリミングモジュール１８４はまた、２つの画像間の一貫した位置合わせを達成するために第１の画像及び／又は第２の画像をトリミングするための命令を含み得る。従って、プロセッサ１９２及び作業メモリ１９６とともに、シフト及びトリミングモジュール１８４内の命令は、少なくとも１つの補正画像を生成することによって２つの画像間の垂直方向視差を補正するための１つの手段を表し得る。
【００４８】
符号化モジュール１８６は、第１及び第２の画像を立体視画像に符号化するようにプロセッサを構成する命令を含み得る。マスタ制御モジュール１８８は、シフト及びトリミングモジュール１８４から符号化モジュール１８６に補正画像を与え得る。符号化モジュール１８６は、次いで、補正画像に基づいて立体視画像ペアを作成し得る。従って、符号化モジュール１８６内に含まれている命令は、補正画像を含む画像に基づいて立体視画像を生成するための１つの手段を表す。
【００４９】
表示制御モジュール１８７は、電子表示器上にデータを表示するようにプロセッサを構成する命令を含み得る。従って、プロセッサ１９２及びメモリ１８２とともに、表示制御モジュール１８７内に含まれている命令は、電子表示器上にデータを表示するための１つの手段を表す。符号化モジュール１８６は立体視画像ペアを符号化し得、マスタ制御モジュール１８８は、符号化された立体視画像ペアを表示制御モジュール１８７に受け渡し得、その後、表示制御モジュール１８７中の命令は、表示器１９４などの表示器上に立体視画像を表示させ得るので、プロセッサ１９２及びメモリ１８２とともに、表示制御モジュール１８７内の命令は、電子表示器上に立体視画像ペアを表示するための１つの手段を表す。
【００５０】
マスタ制御モジュール１８８は、機器１８０の全体的な画像処理機能を制御する命令を含み得る。例えば、マスタ制御モジュール１８８は、入力１９１から２つの画像フレームを受信するようにプロセッサ１９２を構成する命令を含み得る。マスタ制御モジュールはまた、入力１９１から、２つの画像フレーム間の垂直方向視差を示すメタデータを受信するようにプロセッサ１９２を構成する命令を含み得る。マスタ制御モジュール１８８は、次いで、入力１９１から受信した画像を垂直方向に位置合わせするために、それらの画像をシフト及びトリミングするためにシフト及びトリミングモジュール１８４を呼び出し得る。マスタ制御モジュール１８８は、次いで、２つの画像がシフト及びトリミングモジュール１８４によって処理された後、それらの画像を立体視画像ペアに符号化するために符号化モジュール１８６を呼び出し得る。幾つかの実施形態では、符号化モジュール１８６又はマスタ制御モジュール１８８は、立体視画像ペアをデータ記憶装置１９８に記憶するようにプロセッサ１９２を構成する命令を含み得る。マスタ制御モジュール１８８はまた、表示器１９４などの電子表示器上にデータを表示するために表示制御モジュール１８７を呼び出し得る。
【００５１】
オペレーティングシステムモジュール１９０は、機器１８０のメモリと処理リ発信源とを管理するようにプロセッサ１９２を構成する。例えば、オペレーティングシステムモジュール１９０は、入力１９１、電子表示器１９４、又は記憶装置１９８などのハードウェアリ発信源を管理するための機器ドライバを含み得る。従って、幾つかの実施形態では、上記で説明した画像処理モジュール中に含まれている命令は、これらのハードウェアリ発信源と直接対話せず、代わりに、オペレーティングシステム構成要素１９０中にある標準サブルーチン又はＡＰＩを通して対話し得る。オペレーティングシステム１９０内の命令は、次いで、これらのハードウェア構成要素と直接対話し得る。
【００５２】
プロセッサ１９２は記憶装置モジュール１９８にデータを書き込み得る。記憶装置モジュール１９８は従来のディスク機器として図式的に表されているが、複数の実施形態は、メモリディスク、ＵＳＢドライブ、フラッシュドライブ、リモート接続された記憶媒体、仮想ディスクドライバなどを含むように、ディスクベースの記憶装置、又は幾つかの他のタイプ記憶媒体のうちの１つのいずれかを含むことができることを当業者は理解されよう。
【００５３】
図１Ｂは、プロセッサとメモリとを含む別々の構成要素を有する機器を示しているが、これらの別々の構成要素は、特定の設計目標を達成するために様々な方法で組み合わせられ得ることを当業者は認識されよう。例えば、代替実施形態では、メモリ構成要素は、コストを節約するために及び性能を改善するためにプロセッサ構成要素と組み合わせられ得る。
【００５４】
更に、図１Ｂは、幾つかのモジュールを有するメモリ構成要素１８２と、作業メモリを有する別個のメモリ１９６とを含むように２つのメモリ構成要素を示しているが、当業者は、異なるメモリアーキテクチャを利用する幾つかの実施形態を認識されよう。例えば、メモリ１８２中に含まれているモジュールを実施するプロセッサ命令の記憶装置のための設計はＲＯＭ又はスタティックＲＡＭメモリを利用し得る。代替的に、プロセッサ命令は、機器１８０に組み込まれるか又は外部機器ポートを介して接続されたディスク記憶装置からシステム開始時に読み取られ得る。プロセッサ命令は、次いで、プロセッサによる実行を可能にするためにＲＡＭにロードされ得る。例えば、作業メモリ１９６はＲＡＭメモリであり得、命令は、プロセッサ１９２による実行の前に作業メモリ１０５にロードされる。
【００５５】
図１Ｂは、入力機器１９０を含むように示されており、図１の機器１００は入力機器を含まないが、撮像装置の他の実施形態は、図１Ａと図１Ｂの両方に示された様々な構成要素を含み得ることを理解されたい。例えば、一実施形態は、撮像センサー１１５及び１１６と入力機器１９０の両方を含み得る。この実施形態では、画像は画像センサーから受信され得、画像間の視差を示すメタ情報は入力１９１を介して受信され得る。代替的に、幾つかの画像ペアは画像センサーを介して受信され得、他の画像ペアは入力機器を介して受信される。機器の一実施形態は、画像の発信源に応じて異なる方法を使用して２つの画像間の視差を決定し得る。例えば、一実施形態は、行合計又は行エッジ合計方法(row summing or row edge summing methods)を使用して、埋込み型画像センサーを用いて撮影された画像の垂直方向視差を決定し得るが、入力機器１９１など、別個の入力機器を介して受信された画像の垂直方向視差は、入力機器１９１を介して受信されたメタ情報によって決定され得る。
【００５６】
図２Ａは、電子表示器上にデータを表示するためのプロセスのフローチャートである。図２Ａのプロセス２００の一部又は全部は、一実施形態では、図１Ａの撮影制御モジュール１７０中に含まれる命令によって実施され得る。プロセス２００は、開始ブロック２０５において開始し、次いでブロック２１０に遷移し、第１の画像を撮影する。第１の画像は、撮影制御モジュール１７０中の命令が撮像センサー制御モジュール１３５内のサブルーチンを呼び出すことによって撮影され得る。撮像センサー制御モジュール１３５は、次いで、画像を撮影するために、場合によってはオペレーティングシステムモジュール１７５を介して、撮像センサー１１５又は１１６を制御するようにプロセッサを構成し得る。プロセス２００は、次いでブロック２１５に移動し、第２の画像を撮影する。プロセス２００は、次いでブロック２２０に移動し、命令が、撮影された第１の画像と第２の画像との間の垂直方向視差を決定する。これらの命令は、図１Ａの視差決定モジュール１４０中にあり得る。代替的に、ブロック２２０は、図１Ｂの入力機器１９１などの入力機器からデータを読み取るように、プロセッサ１９２などのプロセッサを構成するための命令を含むマスタ制御モジュール１８８中の命令によって実施され得る。
【００５７】
図示の実施形態では、プロセス２００のブロック２２０は、最初に各画像の行を合計することによって第１の画像と第２の画像との間の垂直方向視差を決定する命令を含み得る。この合計プロセスは、２つのベクトル、即ち、画像ごとに１つのベクトルを作成する。ベクトルの各要素は画像についての１つの行和を表す。例示的なベクトルを図３Ａ、項目３１０に示す。図３Ａ中の画像３０５の行が集計され、グラフ３１０によって表されるベクトルが生成された。各行の和は不連続グラフを作成するが、グラフは説明のために実線として示されていることに留意されたい。２つの画像についての行和を図３Ａに示す。画像３２０はあるセンサーから取られ、画像３３０は別のセンサーから取られる。２つのグラフの差は２つの画像間の変化を表す。
【００５８】
これらのベクトルはかなりの類似性を有する。例えば、２つのグラフの山と谷との間に全般的な対応がある。これらの類似性により、２つのベクトルに対して最良適合動作を実行することが可能になる。幾つかの実施形態では、最良適合は、２つのベクトルの位置間の絶対差分和を最小限に抑える２つのベクトル間のオフセットを識別することによって決定され得る。
【００５９】
従って、プロセッサ及びメモリとともに、行和ベクトルの最良適合を実行する垂直方向視差決定モジュール１４０内の命令は、２つの画像間の垂直方向視差を決定するための１つの手段を表す。
【００６０】
行合計は視差認識及び調整に１つの解決策を与えるが、それは幾つかの欠点を有する。例えば、それの有効性はシーン依存であり、それは、場合によってはまったく機能しないことがある。更に、２つの画像間に位置合わせ不良（misalignment）があるとき、それの精度は影響を及ぼされ得、例えば、ピッチの位置合わせ不良は行合計に基づく解決策の精度に影響を及ぼし得る。スケーリングによる画像位置合わせ不良（あるセンサーが別のセンサーよりもシーンに近いこと）も、行合計に基づく垂直方向視差決定の精度に影響を及ぼし得る。
【００６１】
行合計技法に伴うこれらの欠点のために、他の実施形態は、水平方向エッジ検出プロセスの結果に基づいてベクトルを形成し得る。画像の各画素は、エッジ検出プロセスに基づいてエッジ値を割り当てられ得る。画像の行中の各画素のエッジ値が合計され、結果は、水平方向エッジベクトルの対応するエントリに記憶され得る。このプロセスは、画像のあらゆる行について繰り返され、各行合計の結果は、水平方向エッジベクトル中の対応するエントリに記憶される。２つの画像の場合、２つの水平方向エッジベクトルが使用される。
【００６２】
次いで、上記で説明したのと同様の方法で水平方向エッジベクトルに対して最良適合が実行され得る。例えば、２つのベクトルの最良適合は、２つのベクトル中の対応するエントリ間の絶対差分和を最小限に抑える２つのベクトル間のオフセットを識別することによって決定され得る。１つの画像を、オフセットによって示されるサイズ及び方向だけシフトすることによって、画像は垂直方向に位置合わせされ得る。代替的に、オフセットは、画像を位置合わせするために必要とされる垂直方向シフトの総量を示すので、両方の画像が、オフセットによって示される量の半分だけシフトされ得る。従って、プロセッサ及びメモリとともに、水平方向エッジベクトルの最良適合を実行する垂直方向視差決定モジュール１４０内の命令は、２つの画像間の垂直方向視差を決定するための別の手段を表す。
【００６３】
図２Ａに戻ると、ブロック２２０の他の実施形態は、代替方法を使用して垂直方向視差を決定し得る。例えば、幾つかの実施形態は、２つの画像の局所近傍内の最良マッチ（best match）を識別し得る。例えば、一実施形態は、一方の画像内の主要な特徴点の位置を特定し、他方の画像において最良マッチを探索し得る。従って、プロセッサ及びメモリとともに、主要な特徴点についての局所近傍内の最良マッチを実行する垂直方向視差決定モジュール１４０内の命令は、２つの画像間の垂直方向視差を決定するための別の手段を表す。
【００６４】
他の実施形態は、入力機器、例えば、図１Ｂに示した入力機器１９０から受信したメタ情報に基づいて垂直方向視差を決定し得る。例えば、図１Ｂに示した機器１８０などの機器は、入力機器１９０を介して立体視画像ペアを形成する２つの画像を受信し得る。これらの画像は外部発信源によって与えられ得る。例えば、外部発信源は、画像処理コンピュータなど、別の機器であり得る。この画像処理コンピュータはまた、２つの画像間の垂直方向視差を決定し得る。垂直方向視差情報は、次いで、入力機器１９１を介して受信されるメタ情報として機器１８０に送られ得る。従って、入力機器からメタ情報を受信するようにプロセッサを構成するマスタ制御モジュール中の命令は、２つの画像間の垂直方向視差を決定するための別の手段を表す。
【００６５】
垂直方向視差が決定された後、プロセス２００はブロック２４０に移動し、画像の一方又は両方に補正を適用する。ブロック２４０は、図１Ａに示した機器１００の視差決定モジュール１４０、シフト及びトリミングモジュール１５５、又は撮影制御モジュール１７０のいずれか１つ又は組合せ中に含まれている命令によって実行され得る。プロセッサ及びメモリとともに、これらのモジュール中の命令は、補正画像を作成するために補正を適用するための１つの手段を表す。
【００６６】
垂直方向視差を補正するために、ブロック２４０は、一方又は両方の画像をシフト及び／又は切り取り（crop）得る。例えば、第１の画像が、第２の画像に関する視差を除去するために切り取られ（トリミングされ）得る。しかしながら、現在、第１の画像は、岐路とられた寸法がより小さいので、第２の画像も、第１の画像に等しい寸法を維持するために切り取られる必要があり得る。この切り取り（トリミング）により、立体視画像ペアの垂直方向視野は元の画像の垂直方向視野よりも小さくなる。しかしながら、垂直方向視差をなくすことは、垂直方向に位置合わせされた立体視画像ペアを生成するために、画像の下部及び上部に関して画像高さのわずか５パーセントの削除を必要とし得る。これは、垂直方向視野を合計１０パーセントだけ低減し得る。上記で説明したように一方又は両方の画像のクロッピングを実行するシフト及びトリミングモジュール１５５中に含まれている命令は、補正画像を作成するために補正を適用するための別の手段を表す。
【００６７】
適切な補正が適用された後、プロセス２００はブロック２４５に移動し、補正画像に基づいて立体視画像ペアを生成する。一実施形態では、ブロック２４５は符号化モジュール１６０中の命令によって実行され得る。従って、符号化モジュール１６０中の命令は、立体視画像ペアを生成するための１つの手段を表す。元の第１及び第２の画像も使用され得る。
【００６８】
プロセス２００は、次いで決定ブロック２４６に遷移し、決定ブロック２４６は、ブロック２４５において作成された立体視画像ペアが、許容できる品質レベルであるかどうかを決定する。ブロック２４６は、図１Ａの撮影制御モジュール１７０又は図１Ｂのマスタ制御モジュール１８８中の命令によって実施され得る。立体視画像ペアの品質レベルは、幾つかの実施形態では、立体視画像ペア中に含まれる２つの画像間に残っている垂直方向視差の量によって決定され得る。立体視画像ペアの品質が許容できる場合、プロセス２００はブロック２４８に遷移し、立体視画像ペアを表示する。立体視画像ペアの品質レベルが許容できない場合、プロセス２００は決定ブロック２４６から処理ブロック２４７に移動し、立体視画像ペアの２次元バージョンを表示する。例えば、ブロック２４７は、立体視画像ペア中に含まれる２つの画像のうちの１つのみを表示し得る。プロセス２００は、次いで終了状態２５０に遷移する。
【００６９】
図２Ｂは、電子表示器上にデータを表示するためのプロセスのフローチャートである。図２Ｂのプロセス２５２の一部又は全部は、一実施形態では、図１Ａの撮影制御モジュール１７０又は図１Ｂのマスタ制御モジュール１８８中に含まれる命令によって実施され得る。プロセス２５２は、開始ブロック２５５において開始し、次いでブロック２６０に移動し、第１の画像を受信する。第１の画像は、幾つかの実施形態では、図１Ａの画像センサー１１５又は１１６から受信され得る。代替的に、画像は図１Ｂの入力１９１から受信され得る。ブロック２６０において第１の画像が受信された後、プロセス２５２はブロック２６５に移動し、第２の画像を受信する。第１の画像と同様に、第２の画像は、図１Ａの画像センサー１１５又は１１６あるいは図１Ｂの入力１９１から受信され得る。プロセス２５２は、次いでブロック２７０に移動し、ブロック２６０及びブロック２６５において受信された２つの画像間の垂直方向視差を決定する。ブロック２７０は、図２Ａに関して上記で説明したブロック２２０と同様に機能し得る。プロセス２５２は、次いでブロック２７２に移動し、ブロック２７０において決定された垂直方向視差を使用して、少なくとも１つの補正画像を作成するために補正を適用する。第１又は第２の画像を補正することは、画像の一方又は両方をシフト又はトリミングすることを含み得る。ブロック２７２は、図１Ａに示した機器１００のシフト及びトリミングモジュール１６０、又は図１Ｂに示した機器１８０のシフト及びトリミングモジュール１８４において実行され得る。プロセス２５２は、次いでブロック２７４に移動し、立体視画像ペアを作成する。ブロック２７４において作成される立体視画像ペアは、ブロック２７２からの１つ又は複数の補正画像に基づき得る。
【００７０】
立体視画像ペアが作成された後、プロセス２５２は、次いで決定ブロック２７６に移動し、ブロック２７４において作成された立体視画像ペアの品質を品質閾値と比較する。立体視画像ペアの品質が品質閾値を上回る場合、ブロック２７６は、立体視画像ペアの品質は許容できると決定する。
【００７１】
ブロック２７６は、立体視画像ペアの品質が品質閾値を上回るかどうかを決定する前に立体視画像ペアの１つ又は複数の属性を評価し得る。例えば、ブロック２７６は、立体視画像ペアの画像間に残っている垂直方向視差を評価し得る。垂直方向視差が閾値を上回る場合、ブロック２７６は、立体視画像ペアの品質は品質閾値よりも低いと決定し得る。ブロック２７６はまた、立体視画像ペアの視野を評価し得る。視野が視野閾値以下に低減された場合、ブロック２７６は、立体視画像ペアの品質レベルは品質閾値を下回ると決定し得る。ブロック２７６はまた、立体視画像ペアの品質レベルを決定するために、垂直方向視差決定と視野決定の両方の結果を評価し得る。
【００７２】
ブロック２７６が、立体視画像ペアの品質は許容できると決定した場合、プロセス２５２はブロック２７７に遷移し、立体視画像ペアを表示する。例えば、画像ペアは、図１Ａに示した機器１００の表示器１２５、又は図１Ｂに示した機器１８０の表示器１９４上に表示され得る。しかしながら、立体視画像ペアの品質レベルが、許容できる品質と見なされる閾値レベルを下回る場合、プロセス２５２はブロック２７８に移動し、２次元画像を表示する。ブロック２７８において表示される２次元画像も、幾つかの実施形態では、機器１００の表示器１２５又は機器１８０の表示器１９４上に表示され得る。ブロック２７７又はブロック２７８のいずれかにおいて画像が表示された後、プロセス２５２は終了ブロック２８０に移動する。
【００７３】
図２Ｃは、電子表示器上にデータを表示するためのプロセス２８６のフローチャートである。図２Ｃのプロセス２８６の一部又は全部は、一実施形態では、図１Ａの撮影制御モジュール１７０又は図１Ｂのマスタ制御モジュール１８８中に含まれる命令によって実施され得る。プロセス２８６は、開始ブロック２８７において開始し、次いでブロック２８８に移動し、第１の画像を受信する。画像は、例えば、図１Ａに示した機器１００の画像センサー１１５又は１１６から、又は図１Ｂに示した機器１８０の入力１９１から受信され得る。プロセス２８６は、次いでブロック２８９に移動し、第２の画像を受信する。同様に、第２の画像も画像センサー又は入力機器から受信され得る。プロセス２８６は、次いでブロック２９０に移動し、垂直方向視差情報を決定する。第１の画像と第２の画像との間の垂直方向視差は幾つかの方法で決定され得る。例えば、図２Ａに示したプロセス２００に関して説明した方法のいずれかが使用され得る。代替的に、２つの画像間の視差は、メタ情報としても知られるデータを受信することによって決定され得る。メタ情報は、図１Ｂに示した機器１８０の入力１９１などの入力機器を介して受信され得る。
【００７４】
プロセス２８６は、次いで決定ブロック２９１に移動し、垂直方向視差を閾値と比較する。２つの画像間の垂直方向視差が閾値を下回る場合、プロセス２８６はブロック２９２に遷移し、受信した第１又は第２の画像に補正を適用する。補正は、ブロック２９０において視差メタ情報が受信された場合、それに基づき得る。代替的に、補正は、行和ベクトル又は行エッジ和ベクトルの最良適合など、前に説明した視差決定方法の結果に基づき得る。プロセス２８６は、次いでブロック２９４に移動し、ブロック２９２からの補正された第１の画像と第２の画像とに基づいて立体視画像ペアを作成する。プロセス２８６は、次いでブロック２９５に遷移し、立体視画像ペアを表示する。
【００７５】
しかしながら、第１の画像と第２の画像との間の垂直方向視差が閾値を上回る場合、プロセス２８６は決定ブロック２９１から処理ブロック２９６に移動し、２次元画像を表示する。例えば、立体視画像ペア中に含まれる２つの画像のうちの１つのみが表示され得る。ブロック２９６又はブロック２９５において表示される画像は、図１Ａに示した機器１００の表示器１２５、又は図１Ｂに示した機器１８０の表示器１９４上に表示され得る。ブロック２９５において立体視画像ペアが表示されるか、又はブロック２９６において２次元画像が表示された後、プロセス２８６は終了ブロック２９８に移動する。
【００７６】
図２Ａのブロック２４０、図２Ｂのブロック２７５、又は図２Ｃのブロック２９２に示したプロセスの一実施形態に従ってトリミングされ得る画像ペアの一例を図４によって示す。湖４５０上の建築物４７０の２つの画像が示されている。画像４１０は、画像４２０よりもわずかに低い視点(perspective)から撮影された。従って、画像４１０は、それの視野中に湖のより大きい部分を含むが、画像４２０は、それの視野中に空４６０のより大きい部分を含む。他方の画像中に含まれない各画像の部分は、４１５及び４２５として識別された各画像の影つき部分によって表される。図示のように、２つの画像は、立体視画像ペアを形成する前になくされ得る有意な垂直方向視差を含む。垂直方向視差をなくすために、各画像４１５及び４２５の影つき部分はトリミングされ、括弧内のエリア４４０によって識別される２つの画像の共通部分によって表される最終視野が生じる。
【００７７】
幾つかの撮像環境は、上記の技法が、垂直方向視差を低減するか又はなくし、高品質の立体視画像ペアを生成するために、撮像センサー１１５と撮像センサー１１６とから撮影された画像を正常に処理することを可能にするが、幾つかの撮像環境は、適切に補償されるには大きすぎる視差を提示し得る。そのような撮像状態の下では、撮像装置は、十分な画質を保証することが可能でないことがあるので、撮像装置は、立体視画像を生成することを回避することが適切であり得る。一実施形態は、例えば、撮像装置を２次元撮像モードに遷移させ得る。そのようなモードでは、ただ１つの撮像センサーの画像が、従来の２次元画像を生成するために使用され得る。例えば、機器が立体視ビデオ又はムービーを前に生成していた場合、垂直方向視差が特定の閾値を超えると、機器は従来の２次元フォーマットを生成し始め得、画像フレームは単一の撮像センサーのみから生成される。代替的に、機器は、立体視ビデオ又はムービーをより低い品質で生成し続けるとともに、また、ムービーの品質レベルが閾値を下回るというインジケータを与え得る。更に他の実施形態では、機器は立体視ビデオを生成し続け得るが、ユーザが低減品質レベルでの表示を続けることを望むかどうかを決定するために、ユーザプロンプト又は他の入力受信技法が使用され得る。更に他の実施形態は、垂直方向視差の量にかかわらず立体視画像を生成し続け得る。
【００７８】
幾つかの撮像環境では、比較的大きい垂直方向視差にもかかわらず、撮像装置は、十分な品質の立体視画像を生成することが可能であり得るが、得られた立体視画像ペアの視野は閾値以下に低減され得る。幾つかの実施形態では、撮像装置は、ユーザが、低減された視野をもつ立体視撮像アプリケーションの表示を続けることを望むかどうかに関して、ユーザからの入力をプロンプトするか又は場合によっては要請し得る。
【００７９】
図５は、立体視画像ペアを表示するために撮影制御モジュール又はマスタ制御モジュールによって使用されるプロセスの一実施形態を示すフローチャートである。プロセス５００は、開始ブロック５０５において開始し、次いでブロック５１０に移動し、第１の画像を受信する。幾つかの実施形態では、画像は、図１の画像センサー１１５又は１１６若しくは図１Ｂの入力機器１９０から受信され得る。プロセス５００は、次いでブロック５１５に移動し、第２の画像を受信する。第１の画像と同様に、幾つかの実施形態では、第２の画像も画像センサー又は入力機器から受信され得る。プロセス５００は、次いでブロック５２０に移動し、第１の画像と第２の画像との間の垂直方向視差を決定する。ブロック５２０は、２つの画像間の垂直方向視差を決定するために、行合計、行エッジ合計、又は当該ポイントマッチングを含むように、上記で説明した視差決定実施形態のいずれかを実施し得る。画像を位置合わせするための他の技法が当技術分野で知られており、同じく実施され得る。例えば、デジタル写真において知られている画像登録技法も利用され得る。
【００８０】
プロセス５００の代替実施形態は、他の方法を使用してブロック５２０において垂直方向視差を決定することに留意されたい。例えば、幾つかの実施形態は、第１の画像と第２の画像との間に存在する垂直方向視差を示すメタ情報を受信することによって垂直方向視差を決定し得る。メタ情報は、例えば、図１Ｂに示した入力機器１９０を介して受信され得る。情報は、ネットワーク、記憶装置、更には、表示装置自体内で実行している別のプロセッサから受信され得る。
【００８１】
プロセス５００は、次いで決定ブロック５２５に移動し、視差に対する補正が機器１００の撮像処理命令によって実行されるべきかどうかを決定するために、垂直方向視差を閾値と比較する。例えば、幾つかの実施形態では、機器１００のシフト及びトリミングモジュール１６５は、画像を補正するための手段を与え得るが、幾つかの垂直方向視差は、シフト及びトリミングモジュールの補償機能の能力を超えることがある。更に、極めて大きい垂直方向視差がある場合、得られた立体視画像の視野は非実際的に小さくなり得る。
【００８２】
決定ブロック５２５において、２つの画像間の垂直方向視差が閾値を下回るという決定が行われた場合、プロセス５００はブロック５７０に移動し、表示され得た低品質インジケータをクリアする。プロセス５００は、次いでブロック５７５に移動し、垂直方向視差に対する補正を第１の画像、第２の画像、又は両方の画像に適用する。この補正は、図１Ａのシフト及びトリミングモジュール１５５又は図１Ｂのシフト及びトリミングモジュール１８４中に含まれる命令によって適用され得る。プロセス５００は、次いでブロック５８０に移動し、２つの画像を立体視画像ペアに符号化する。この符号化は、図１Ａの符号化モジュール１６０、又は図１Ｂに示した機器１８０の符号化モジュール１８６中にある命令によって実行され得る。プロセス５００は、次いでブロック５８５に移動し、立体視画像ペアを表示する。立体視画像は、図１Ａの表示器１２５又は図１Ｂの表示器１９４上に表示され得る。プロセス５００は、次いでブロック５１０に戻り、プロセス５００は繰り返す。
【００８３】
決定ブロック５２５において、２つの画像間の垂直方向視差が閾値を上回るという決定が行われた場合、例外情報が表示され得る。例外情報は、品質インジケータ又は視野インジケータなど、インジケータを含み得る。例外情報はまた、立体視画像ペアの表示など、幾つかの表示機能を続けるべきかどうかをユーザに尋ねるユーザプロンプトを含み得る。図示の実施形態では、プロセス５００はブロック５３０に移動して、低品質インジケータを生成する。幾つかの実施形態では、インジケータは立体視画像ペア自体に埋め込まれ得、従って、表示されたとき、インジケータはユーザに明らかに可視である。
【００８４】
代替的に、プロセス５００を実行する機器は、他のインジケータ、例えば、ランプ、又は品質インジケータを表示するように構成された補助表示器スクリーンを含み得る。インジケータは、そのような機器の埋込み型表示器上に表示され得る。また、可聴インジケータも与えられ得る。例えば、垂直方向視差が閾値を超えるとき、トーン(tone)、ビープ(beep)、又は音声アラート(spoken alert)がユーザに提示され得る。
【００８５】
プロセス５００は、次いで決定ブロック５３５に移動し、命令が、立体視撮像が続けられるべきかどうかに関して機器がユーザに指示すべきかどうかを決定する。図示の実施形態では、設定可能な指示(configurable prompting)が機器挙動にフレキシビリティを与える。例えば、初心者のユーザは、指示されることを回避することを選好し、代わりに、ユーザのために決定を行うビルトイン機器論理を利用し得る。より高度なユーザは、ユーザの機器内の立体視撮像プロセスに対して追加の制御権を有することを選好し得る。指示（prompting）が可能である場合、プロセス５００はブロック５５５に移動し、ユーザが指示される。ユーザの指示は、幾つかの実施形態では、図１Ｂのマスタ制御モジュール１８８又は表示制御モジュール１８７中に含まれる命令によって達成され得る。
【００８６】
次に、プロセス５００はブロック５６０に移動し、ユーザからの入力を受信するための命令を実行する。プロセス５００は、次いで決定ブロック５６５に移動し、命令が、ユーザが立体視撮像を続けることを望むことをユーザの応答が示したかどうかを決定する。ユーザが続けることを選択した場合、プロセス５００は、ページ上参照「Ａ」を通ってブロック５４５に移動し、命令が２次元画像を生成させる。２次元撮像モードは、ブロック５１０及びブロック５１５において前に受信された２つの画像のうちの１つのみを利用し得る。幾つかの実施形態では、ブロック５４５によって生成される画像は、画像センサー１からの画像又は画像センサー２からの画像のいずれかであり得る。代替的に、その画像は、入力、例えば、図１Ｂに示した入力機器１９０から受信した画像であり得る。プロセス５００は、次いでブロック５９０に移動し、２次元画像を表示する。幾つかの実施形態では、２次元画像は、図１の表示器１２５又は図１Ｂの表示器１９４上に表示され得る。プロセス５００は次いで繰り返す。
【００８７】
図５は、閾値を上回る垂直方向視差とともに撮影されたあらゆる立体視画像ペアについてユーザ指示(user prompt)を作成する論理フローを示しているが、ユーザを過剰に指示することを回避するために追加の論理が実施され得ることを当業者は認識するであろうことに留意されたい。例えば、分／時／日当たりの指示の最大数が実施され得る。代替的に、プロンプトは、撮像環境において大幅な垂直方向視差変化がある場合にのみ生成され得る。例えば、垂直方向視差の量の「小」、「中」、及び「大」を定義する閾値が確立され得る。垂直方向視差の量がある閾値を超えて別の閾値に入ったとき、幾つかの実施形態では、これはプロンプトを生成し得る。例えば、第１の指示は、何らかの比較的小さい閾値が到達された後に表示され得る。ユーザが続けることを選択した場合、視差がはるかに深刻なレベルに到達すると、追加の指示が生成され得る。これらの変形形態は当技術分野で知られているが、簡潔のためにここでは図示しない。
【００８８】
また、図５に示した実施形態は、「ユーザ」と対話するように設計されているが、他の実施形態が制御の代替手段を提供し得ることに留意されたい。例えば、幾つかの実施形態は、プロンプティングの代わりに、立体視撮像のステータスを通信するために電子メッセージの形態の制御信号を生成し得る。例えば、立体視撮像装置は、入力ポート及び出力ポートとともに構成され得、立体視撮像環境における幾つかの閾値が超えられたとき、信号が出力ポートに送られる。これらの出力ポートは、例えば、ワイヤレス接続又はＵＳＢを介したハードワイヤード接続を含み得る。更に、立体視撮像装置は入力ポートから入力を受け取り得る。例えば、垂直方向視差が特定の閾値を超えることを示す出力信号を生成した後、幾つかの実施形態は、立体視撮像が続けられるべきかどうか、機器が２次元撮像モードにシフトすべきかどうか、又は場合によっては、撮像が完全に停止されるべきかどうかを示す入力を入力ポート上で受け取り得る。
【００８９】
決定ブロック５３５が、ユーザプロンプティングは使用可能でないと決定した場合、プロセス５００は決定ブロック５４０に移動し、視野が低減された場合、垂直方向視差を補償することが可能であるかどうかの決定を行う。垂直方向視差が補償され得る場合、プロセス５００はブロック５５０に移動し、視野例外情報を表示する。例えば、図示の実施形態では、低減視野インジケータを生成する。プロセス５００は、次いでブロック５７５に移動し、画像に補正を適用し、プロセス５００は、次いで、前に説明したように続く。
【００９０】
決定状態５４０において、視野が低減された場合でも十分な画像が生成され得ないほど垂直方向視差が大きいという決定が行われた場合、プロセス５００はブロック５４５に移動し、２次元画像を生成する。プロセス５００は、次いで、ブロック５９０において２次元画像を表示し、プロセス５００を繰り返すためにブロック５１０に戻る。
【００９１】
図５の図示の実施形態について幾つかの変形形態が利用可能であることを了解されたい。例えば、ユーザの指示(prompting)は、幾つかの実施形態では構成可能でないことがあり、無条件に使用可能であるか又は実行されないことがある。他の実施形態は、著しく低減された視野をもつ立体視画像ペアを生成する前にユーザを指示し得る。他の実施形態は、ユーザ指示、視野決定、又は様々なインジケータの生成の複雑さを実施することなしに、垂直方向視差が閾値に到達したとき、２次元撮像に無条件に遷移し得る。図５は、立体視画像ペアを生成するこれらの様々な方法のうちの１つの組合せを表すものにすぎない。
【００９２】
また、図５に示した実施形態は、説明を容易にするために若干の簡略化を含むことを諒解されよう。例えば、幾つかの実施形態は、例えば、垂直方向視差を、容易に補正され得る値からユーザによる指示を必要とする値に頻繁に遷移させるエッジケース撮像環境(edge case imaging environments)において、ユーザの過剰な指示を回避するための処理論理を含む必要がある。更に、図５は、プロセス５００が終了するための方法を示していない。しかしながら、幾つかの実施形態は、終了状態への遷移を可能にする追加の条件付き論理を採用する。例えば、機器１００の幾つかの実施形態は、撮像装置が立体視撮像モードにあるのか従来の２次元モードにあるのかを決定するユーザ作動型制御装置を含み得る。この制御装置の作動はプロセス５００を終了させ得る。代替的に、他の実施形態は、撮影制御ボタンとして働くユーザ作動型制御装置を有し得る。作動されたとき、幾つかの実施形態は、撮像が現在進行中でない場合には撮像を開始し、制御装置が作動されたとき、撮像が進行中の場合には撮像を終了する。幾つかの実施形態では、そのような制御装置の作動はプロセス５００を終了し得る。
【００９３】
図６は、立体視画像ペアを表示する方法のデータフロー図である。データフローは図の左側から開始し、入力６０５から右フレーム６１０及び左フレーム６１５が受信される。次に、行投影６２０及び６２５が作成され、ブロック６３０に送られ、２つのフレーム６１０とフレーム６１５との間の垂直方向視差が計算される。この計算の結果は、フレーム６１０及び６１５を変更して、左フレーム６４０と右フレーム６３５とを作成するために使用される。フレーム６１０及び６１５の垂直方向視差を調整するために、各画像はトリミング又はシフトされ得る。シフト又はトリミング動作の後、画像６３５及び６４０は、画像６１０及び６１５と比較して、より少ない垂直方向視差をもつ改善された品質を有し得る。２つのフレームは、次いで、ブロック６４５において立体視画像ペアに符号化される。画像６３５及び６４０を含む立体視画像ペアは、決定ブロック６５０に送られ、立体視画像品質が許容できるかどうかが決定される。立体視画像品質が許容できる場合、プロセス６００はブロック６５５に移動し、２つの画像は立体視画像として表示される。立体視画像ペアの品質が許容できない場合、２次元画像がブロック６６０において表示のために与えられる。
【００９４】
図７は、立体視画像ペアを表示するための代替方法のデータフロー図である。図６と同様に、入力７０５から右フレーム７１０及び左フレーム７１５が受信される。但し、図６のデータフロー６００とは異なり、入力７０５はまた、２つのフレーム７１０とフレーム７１５との間の垂直方向視差を示すメタデータを与える。このメタデータはクロッピング制御パラメータ７３０に変換され、新しいフレーム７３５及び７４０が、元のフレーム７１０及び７１５とトリミングデータ７３０とに基づいて作成される。これらの補正されたフレームの垂直方向視差が、次いでブロック７５０において評価され得、許容できる場合、立体視画像７５５が表示される。そうでない場合、２次元画像７６０が表示される。
【００９５】
更に、本明細書で開示する実施形態に関連して説明した様々な例示的な論理ブロック、モジュール、回路、及びプロセスステップは、電子ハードウェア、コンピュータソフトウェア、又はその両方の組合せとして実施され得ることを当業者は諒解されよう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、及びステップについて、上記では概してそれらの機能に関して説明した。そのような機能をハードウェアとして実施するか、ソフトウェアとして実施するかは、特定の適用例及び全体的なシステムに課された設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実施し得るが、そのような実施の決定は、本発明の範囲からの逸脱を生じるものと解釈すべきではない。当業者は、ある部分又は一部が、全体よりも少ないか又はそれに等しいものを備え得ることを認識されよう。例えば、画素の集合の一部分は、それらの画素の部分集合を指すことがある。
【００９６】
本明細書で開示した実施形態に関して説明した様々な例示的な論理ブロック、モジュール、及び回路は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）又は他のプログラマブル論理機器、個別ゲート又はトランジスタ論理、個別ハードウェア構成要素、あるいは本明細書で説明した機能を実行するように設計されたそれらの任意の組合せを用いて実施又は実行され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、又は状態機械であり得る。プロセッサはまた、コンピュータ機器の組合せ、例えば、ＤＳＰとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つ又は複数のマイクロプロセッサ、又は任意の他のそのような構成として実施され得る。
【００９７】
本明細書で開示した実施形態に関して説明した方法又はプロセスのステップは、直接ハードウェアで実施されるか、プロセッサによって実行されるソフトウェアモジュールで実施されるか、又はその２つの組合せで実施され得る。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭ（登録商標）メモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、又は当技術分野で知られている任意の他の形態の非一時的記憶媒体中に常駐し得る。例示的なコンピュータ可読記憶媒体は、プロセッサがコンピュータ可読記憶媒体から情報を読み取り、コンピュータ可読記憶媒体に情報を書き込むことができるようにプロセッサに結合される。代替として、記憶媒体はプロセッサに一体化され得る。プロセッサ及び記憶媒体はＡＳＩＣ中に常駐し得る。ＡＳＩＣは、ユーザ端末、カメラ、又は他の機器中に常駐し得る。代替として、プロセッサ及び記憶媒体は、ユーザ端末、カメラ、又は他の機器中に個別構成要素として常駐し得る。
【００９８】
本明細書には、参照のための、及び様々なセクションを見つけるのを助けるための見出しが含まれる。これらの見出しは、見出しに関連して説明した概念の範囲を限定するものではない。そのような概念は、本明細書全体にわたって適用性を有し得る。
【００９９】
開示した実施形態の以上の説明は、当業者が本発明を製作又は使用することができるように与えたものである。これらの実施形態への様々な修正は当業者には容易に明らかであり、本明細書で定義した一般原理は、本発明の趣旨又は範囲から逸脱することなく他の実施形態に適用され得る。従って、本発明は、本明細書で示した実施形態に限定されるものではなく、本明細書で開示した原理及び新規の特徴に一致する最も広い範囲を与られるべきである。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
［１］  電子表示器上にデータを表示する方法であって、入力装置から第１の画像を受信することと、入力装置から第２の画像を受信することと、前記第１の画像と前記第２の画像との間の垂直方向視差を決定することと、垂直方向視差が閾値を下回る場合、立体視画像ペアを表示することと、を備える、方法。
［２］  少なくとも１つの補正画像を生成することによって前記第１の画像と前記第２の画像との間の前記垂直方向視差を補正することと、前記補正画像に基づいて前記立体視画像ペアを生成することと、を更に備える、［１］に記載の方法。
［３］  前記垂直方向視差が、入力装置からメタ情報を受信することによって決定される、［１］に記載の方法。
［４］  前記垂直方向視差が閾値を上回るとき、例外情報を表示することを更に備える、［１］に記載の方法。
［５］  前記例外情報が低品質インジケータを含む、［４］に記載の方法。
［６］  前記例外情報が、立体視撮像を続けるべきかどうかを尋ねる指示を含む、［４］に記載の方法。
［７］  前記例外情報が２次元画像である、［４］に記載の方法。
［８］  前記立体視画像の視野が第２の閾値を下回るとき、視野例外情報を表示することを更に備える、［１］に記載の方法。
［９］  前記視野例外情報が低減視野インジケータである、［８］に記載の方法。
［１０］  前記垂直方向視差を決定することが、前記第１の画像についての第１の行和ベクトルを生成することと、前記第２の画像についての第２の行和ベクトルを生成することと、前記第１の行和ベクトルと前記第２の行和ベクトルとについての最良適合を決定することと、を備える、［１］に記載の方法。
［１１］  前記垂直方向視差を決定することが、前記第１の画像についての第１の行エッジ和ベクトルを生成することと、前記第２の画像についての第２の行エッジ和ベクトルを生成することと、前記第１の行エッジ和ベクトルと前記第２の行エッジ和ベクトルとについての最良適合を決定することと、を備える、［１］に記載の方法。
［１２］  前記立体視画像ペアをデータ記憶装置に記憶することを更に備える、［１］に記載の方法。
［１３］  前記最良適合が最小差分値和によって決定される、［１１］に記載の方法。
［１４］  前記垂直方向視差を補正することが、前記第１の画像又は前記第２の画像をシフト又はトリミングすることを含む、［２］に記載の方法。
［１５］  プロセッサと、入力装置と、前記入力装置から第１の画像を受信し、前記入力装置から第２の画像を受信するように構成されたマスタ制御モジュールと、前記第１の画像と前記第２の画像との間の垂直方向視差を決定するように構成された視差決定モジュールと、垂直方向視差が閾値を下回るとき、電子表示器上に立体視画像ペアを表示するように構成された表示制御モジュールと
を備える、画像処理装置。
［１６］  少なくとも１つの補正画像を生成することによって前記第１の画像と前記第２の画像との間の前記垂直方向視差を補正するように構成されたシフト及びトリミングモジュールと、前記補正画像に基づいて前記立体視画像ペアを生成するように構成された符号化モジュールと、を更に備える、［１５］に記載の装置。
［１７］  前記表示制御モジュールは、前記垂直方向視差が前記閾値を上回るとき、例外情報を表示するように更に構成された、［１５］に記載の装置。
［１８］  前記垂直方向視差が、入力装置からメタ情報を受信することによって決定される、［１５］に記載の装置。
［１９］  前記例外情報は、前記垂直方向視差が閾値を上回るとき、立体視撮像を続けるべきかどうかを尋ねる指示である、［１７］に記載の装置。
［２０］  前記垂直方向視差が閾値を上回るとき、前記例外情報が２次元画像である、［１７］に記載の装置。
［２１］  前記表示制御モジュールは、前記立体視画像の視野が前記第２の閾値を下回るとき、視野例外情報を表示するように更に構成された、［１５］に記載の装置。
［２２］  前記視野例外情報が低減視野インジケータである、［２１］に記載の装置。
［２３］  データ記憶装置を更に備え、前記マスタ制御モジュールが、前記立体視画像ペアを前記データ記憶装置に記憶するように更に構成された、［１５］に記載の装置。
［２４］  電子表示器を更に備え、前記表示制御モジュールが、前記電子表示器上に前記立体視画像ペアを表示するように構成された、［１５］に記載の装置。
［２５］  前記視差決定モジュールが、前記第１の画像についての第１の行和ベクトルを生成することと、前記第２の画像についての第２の行和ベクトルを生成することと、前記第１の行和ベクトルと前記第２の行和ベクトルとについての最良適合を決定することと、によって前記垂直方向視差を決定する、［１５］に記載の装置。
［２６］  前記視差決定モジュールが、前記第１の画像についての第１の行エッジ和ベクトルを生成することと、前記第２の画像についての第２の行エッジ和ベクトルを生成することと、前記第１の行エッジ和ベクトルと前記第２の行エッジ和ベクトルとについての最良適合を決定することと、によって前記垂直方向視差を決定する、［１５］に記載の装置。
［２７］  前記最良適合が、２つのベクトル間の絶対差分値和を最小限に抑えることによって決定される、［２６］に記載の装置。
［２８］  前記視差決定モジュールが、前記入力装置からメタ情報を受信することによって前記垂直方向視差を決定する、［１５］に記載の装置。
［２９］  前記画像処理装置がワイヤレス電話ハンドセットである、［１５］に記載の装置。
［３０］  実行されたとき、入力装置から第１の画像を受信することと、入力装置から第２の画像を受信することと、前記第１の画像と前記第２の画像との間の垂直方向視差を決定することと、前記垂直方向視差が閾値を下回るとき、電子表示器上に立体視画像ペアを表示することと、を行う方法を実行するプロセッサ実行可能命令を含む非一時的コンピュータ可読媒体。
［３１］  実行されたとき、前記垂直方向視差が前記閾値を上回るとき、例外情報を表示する方法を実行するプロセッサ実行可能命令を更に含む、［３０］に記載のコンピュータ可読媒体。
［３２］  前記垂直方向視差が、入力装置からメタ情報を受信することによって決定される、［３０］に記載のコンピュータ可読媒体。
［３３］  前記例外情報は、前記垂直方向視差が閾値を上回るとき、立体視撮像を続けるべきかどうかを尋ねるプロンプトである、［３１］に記載のコンピュータ可読媒体。
［３４］  前記例外情報が２次元画像である、［３１］に記載のコンピュータ可読媒体。
［３５］  入力装置から第１の画像を受信するための手段と、入力装置から第２の画像を受信するための手段と、前記第１の画像と前記第２の画像との間の垂直方向視差を決定するための手段と、前記垂直方向視差が閾値を下回るとき、電子表示器上に立体視画像ペアを表示するための手段と、を備える撮像装置。
［３６］  少なくとも１つの補正画像を生成することによって前記第１の画像と前記第２の画像との間の前記垂直方向視差を補正するための手段と、前記補正画像に基づいて前記立体視画像ペアを生成するための手段と、を更に備える、［３５］に記載の撮像装置。
［３７］  ワイヤレス電話ハンドセットを更に備える、［３５］に記載の装置。
［３８］  垂直方向視差を決定するための前記手段が、行和ベクトルの最良適合を実行するようにプロセッサを構成する命令を含む、［３５］に記載の装置。
［３９］  垂直方向視差を決定するための前記手段が、行エッジ和ベクトルの最良適合を実行するようにプロセッサを構成する命令を含む、［３５］に記載の装置。
【図１Ａ】
0005932045.tif 000002
【図１Ｂ】
0005932045.tif 000003
【図２Ａ】
0005932045.tif 000004
【図２Ｂ】
0005932045.tif 000005
【図２Ｃ】
0005932045.tif 000006
【図３Ａ】
0005932045.tif 000007
【図３Ｂ】
0005932045.tif 000008
【図４】
0005932045.tif 000009
【図５】
0005932045.tif 000010
【図６】
0005932045.tif 000011
【図７】
0005932045.tif 000012