(58)【調査した分野】(Int.Cl.,DB名)
前記画像スタビライザが、前記画像の動きの方向に対して垂直な軸を中心とする回転振動である前記画像キャプチャシステムの振動を備える、請求項1に記載のシステム。
前記コントローラが、前記センサの前記第1のエッジを露光しかつ読み出すとき、第1の距離の被写体に関する前記画像の動きを補償し、かつ前記センサの前記第2のエッジを露光しかつ読み出すとき、第2の距離の被写体に関する前記画像の動きを補償する画像の動き補償の量を提供するように前記画像スタビライザを動作させるようにさらに構成され、前記第1の距離が前記第2の距離よりも大きい、請求項1に記載のシステム。
前記コントローラが、前記第1のエッジと前記第2のエッジとの間で前記画像センサの一部を露光しかつ読み出すとき、前記第1の距離と前記第2の距離との間の被写体に関する前記画像の動きを補償する画像の動き補償の量を提供するように前記画像スタビライザを動作させるようにさらに構成される、請求項4に記載のシステム。
1つまたは複数のコントローラを使用して、複数の画像を取り込むために反復サイクルで画像キャプチャシステムを動作させるステップであって、前記画像キャプチャシステムが、レンズと、画像センサと、画像スタビライザとを有し、前記画像センサが、第1のエッジおよび前記第1のエッジの反対側の第2のエッジを有し、前記第1のエッジが、より遠方の被写体に合焦するようにレンズのより近くに配置される、ステップと、
各サイクルの間、前記1つまたは複数のコントローラを使用して、一方のエッジから反対側のエッジへ画像を漸進的に露光しかつ読み出すようにセンサを動作させるステップと、
前記1つまたは複数のコントローラを使用して、前記センサの前記第1のエッジを露光しかつ読み出すときよりも前記センサの前記第2のエッジを露光しかつ読み出すときに時間変動画像動き補償がより大きくなるように、前記動き補償を提供するように前記画像スタビライザを動作させるステップと
を備える、方法。
時間変動画像動き補償を提供するように前記画像スタビライザを動作させるステップが、前記センサの前記第1のエッジを露光しかつ読み出すとき、第1の距離の被写体に関する前記画像の動きを補償し、前記センサの前記第2のエッジを露光しかつ読み出すとき、第2の距離の被写体に関する前記画像の動きを補償し、前記第1の距離が前記第2の距離よりも大きく、前記第1のエッジと前記第2のエッジとの間で前記画像センサの一部を露光しかつ読み出すとき、前記第1の距離と前記第2の距離との間の被写体に関する前記画像の動きを補償するステップをさらに備える、請求項11に記載の方法。
前記1つまたは複数のコントローラによって、前記画像内の被写体からテキスト情報を抽出するために前記複数の画像を処理するステップをさらに備える、請求項11に記載の方法。
命令が記憶された非一時的コンピュータ可読記憶媒体であって、前記命令が、1つまたは複数のコントローラによって実行されると、前記1つまたは複数のコントローラに方法を実行させ、前記方法が、
複数の画像を取り込むために反復サイクルで画像キャプチャシステムを動作させるステップであって、前記画像キャプチャシステムが、レンズと、画像センサと、画像スタビライザとを有し、前記画像センサが、第1のエッジおよび前記第1のエッジの反対側の第2のエッジを有し、前記第1のエッジが、より遠方の被写体に合焦するようにレンズのより近くに配置される、ステップと、
各サイクルの間、一方のエッジから反対側のエッジへ画像を漸進的に露光しかつ読み出すようにセンサを動作させるステップと、
前記センサの前記第1のエッジを露光しかつ読み出すときよりも前記センサの前記第2のエッジを露光しかつ読み出すときに時間変動画像動き補償がより大きくなるように、前記動き補償を提供するように前記画像スタビライザを動作させるステップと
を備える、非一時的コンピュータ可読記憶媒体。
時間変動画像動き補償を提供するように前記画像スタビライザを動作させるステップが、前記センサの前記第1のエッジを露光しかつ読み出すとき、第1の距離の被写体に関する前記画像の動きを補償し、前記センサの前記第2のエッジを露光しかつ読み出すとき、第2の距離の被写体に関する前記画像の動きを補償し、前記第1の距離が前記第2の距離よりも大きく、前記第1のエッジと前記第2のエッジとの間で前記画像センサの一部を露光しかつ読み出すとき、前記第1の距離と前記第2の距離との間の被写体に関する前記画像の動きを補償するステップをさらに備える、請求項18に記載の媒体。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示の態様は、画像キャプチャシステムを提供する。画像キャプチャシステムは、画像を生成するレンズと、第1のエッジおよび第1のエッジと反対側の第2のエッジを有し、レンズがより遠方の被写体に合焦するように第1のエッジがレンズのより近くに配置される画像センサと、画像センサにおける画像の動きの時間変動補償を提供するように構成される画像スタビライザと、コントローラであって、(1)画像キャプチャシステムを反復サイクルで動作させることであって、各サイクルの間、コントローラが、一方のエッジから反対側のエッジへ画像を漸進的に露光しかつ読み出すようにセンサを動作させる、ことと、(2)センサの第1のエッジを露光しかつ読み出すときよりもセンサの第2のエッジを露光しかつ読み出すときに画像の動き補償がより大きくなるように、時間的に変動する画像の動き補償を提供するように画像スタビライザを動作させることと、を行うように構成されるコントローラとを含む。
【0004】
一例では、画像スタビライザは、画像の動きの方向に対して垂直な軸を中心とする回転振動である画像キャプチャシステムの振動を含む。この例では、画像キャプチャシステムの回転振動は、垂直軸を中心とする。また、この例では、レンズに対する画像センサの配置は、画像キャプチャシステムの振動によって影響を受けない。
【0005】
さらなる例では、コントローラはまた、センサの第1のエッジを露光しかつ読み出すとき、第1の距離の被写体に関する画像の動きを補償し、センサの第2のエッジを露光しかつ読み出すとき、第2の距離の被写体に関する画像の動きを補償する画像の動きの補償の量を提供するように画像スタビライザを動作させるように構成され、第1の距離は第2の距離よりも大きい。この例では、コントローラはまた、第1のエッジと第2のエッジとの間で画像センサの一部を露光しかつ読み出すとき、第1の距離と第2の距離との間の被写体に関する画像の動きを補償する画像の動き補償の量を提供するように画像スタビライザを動作させるように構成される。
【0006】
さらに別の例では、コントローラはまた、合成画像内の被写体からテキスト情報を抽出するために合成画像を処理するように構成される。さらなる例では、画像センサは、垂直に配向された行と、後ろから前に進む読出し時間とを有するローリングシャッタ画像センサである。別の例では、画像スタビライザの補償は、画像の動きの方向に対して垂直な軸を中心とする画像センサの回転振動を備える。この例では、1つまたは複数のセンサの振動は、10度以下の回転を含む。
【0007】
本開示の他の態様は、方法を提供する。本方法は、1つまたは複数のコントローラを使用して、複数の画像を取り込むために反復サイクルで画像キャプチャシステムを動作させるステップであって、画像キャプチャシステムが、レンズと、画像センサと、画像スタビライザとを有し、画像センサが、第1のエッジおよび第1のエッジの反対側の第2のエッジを有し、第1のエッジが、より遠方の被写体に合焦するようにレンズのより近くに配置される、ステップと、各サイクルの間、1つまたは複数のコントローラを使用して、一方のエッジから反対側のエッジへ画像を漸進的に露光しかつ読み出すようにセンサを動作させるステップと、1つまたは複数のコントローラを使用して、センサの第1のエッジを露光しかつ読み出すときよりもセンサの第2のエッジを露光しかつ読み出すときに時間変動画像動き補償がより大きくなるように、当該動き補償を提供するように画像スタビライザを動作させるステップとを含む。
【0008】
一例では、画像スタビライザは、画像の動きの方向に対して垂直な軸を中心とした回転振動である画像キャプチャシステムの振動を備える。この例では、画像キャプチャシステムの回転振動は、垂直軸を中心とする。またこの例では、画像センサの角度は、レンズに対して固定される。
【0009】
別の例では、時間変動画像動き補償を提供するように画像スタビライザを動作させるステップはまた、センサの第1のエッジを露光しかつ読み出すとき、第1の距離の被写体に関する画像の動きを補償し、センサの第2のエッジを露光しかつ読み出すとき、第2の距離の被写体に関する画像の動きを補償し、第1の距離は第2の距離よりも大きく、第1のエッジと第2のエッジとの間で画像センサの一部を露光しかつ読み出すとき、第1の距離と第2の距離との間の被写体に関する画像の動きを補償するステップを含む。さらに別の例では、本方法はまた、1つまたは複数のコントローラによって、画像内の被写体からテキスト情報を抽出するために複数の画像を処理するステップを含む。さらなる例では、画像センサは、垂直に配向された行と、後ろから前に進む読出し時間とを有するローリングシャッタ画像センサである。
【0010】
本開示のさらなる態様は、命令が記憶された非一時的コンピュータ可読媒体を提供し、命令は、1つまたは複数のコントローラによって実行されると、1つまたは複数のコントローラに方法を実行させる。本方法は、複数の画像を取り込むために反復サイクルで画像キャプチャシステムを動作させるステップであって、画像キャプチャシステムが、レンズと、画像センサと、画像スタビライザとを有し、画像センサが、第1のエッジおよび第1のエッジの反対側の第2のエッジを有し、第1のエッジが、より遠方の被写体に合焦するようにレンズのより近くに配置される、ステップと、各サイクルの間、一方のエッジから反対側のエッジへ画像を漸進的に露光しかつ読み出すようにセンサを動作させるステップと、センサの第1のエッジを露光しかつ読み出すときよりもセンサの第2のエッジを露光しかつ読み出すときに時間変動画像動き補償がより大きくなるように、当該動き補償を提供するように画像スタビライザを動作させるステップとを含む。
【0011】
一例では、時間変動画像動き補償を提供するように画像スタビライザを動作させるステップはまた、センサの第1のエッジを露光しかつ読み出すとき、第1の距離の被写体に関する画像の動きを補償し、センサの第2のエッジを露光しかつ読み出すとき、第2の距離の被写体に関する画像の動きを補償し、第1の距離は第2の距離よりも大きく、第1のエッジと第2のエッジとの間で画像センサの一部を露光しかつ読み出すとき、第1の距離と第2の距離との間の被写体に関する画像の動きを補償するステップを含む。別の例では、本方法はまた、画像内の被写体からテキスト情報を抽出するために複数の画像を処理するステップを含む。
【発明を実施するための形態】
【0013】
本技術は、車両が動いている間に様々な異なる距離に焦点を有する画像を取り込むことができる画像キャプチャシステムに関する。画像キャプチャシステムは、車両に搭載されてもよく、または車両に搭載可能であってもよい。
【0014】
典型的なカメラシステムは、レンズの平面に平行に配向された画像センサを利用する場合がある。画像センサがレンズと平行であるシステムでは、被写体が合焦している距離は、画像センサにわたって同じである。これらのシステムは、ユーザの手の動きによる小さい動きおよび揺れを補償することを試みるために、カメラスタビライザシステム、液体くさび(liquid wedge)プリズムレンズ、センサシフト、または後処理調整を利用する場合がある。しかしながら、車両の動きに適応することを試みるとき、これらの技法は、デフォーカスボケ、動きボケ、および、低い光レベルでの短い露光によるノイズなどの品質問題に対処することにおいてそれらをより効果的でないものとする、よく理解されている限界を有する。そのような画像がボケているか、またはノイズが多いとき、これは、光学式文字認識(OCR)などの技法を使用するとき、サインに関するテキストなどの、画像内の特定の特徴を認識することを困難にする場合がある。結果として、OCRに必要な様々なショットを取り込むために、典型的なカメラシステムは、複数のパスまたは複数のカメラのいずれかを必要とする場合がある。
【0015】
車両が動いている間に画像キャプチャシステムによって取り込まれた画像の品質を改善するために、画像キャプチャシステムは、レンズと平行ではなく、レンズに対して傾斜して取り付けられた画像センサを利用してもよい。画像キャプチャシステム内の画像センサは、ある角度で傾斜されてもよく、第1のエッジは、遠方の被写体に最もよく合焦するために、近くの被写体に最もよく合焦する、第1のエッジと反対側の第2のエッジよりもわずかにレンズに近い。様々な被写体距離をカバーするために必要な傾斜の量は、被写体距離の逆数に関してほぼ線形であり、i=f+f
2/oであり、ここで、(画像センサからレンズ位置までの)像距離iは、被写体距離oの逆数に比例した量だけ焦点距離fよりもわずかに大きい。結果として、2つ以上の画像において異なる位置に現れる被写体が、ある位置において別の位置よりもより合焦する場合があるように、画像センサの第1のエッジは、画像センサの第2のエッジが合焦する被写体よりもカメラから遠い被写体に合焦する場合がある。
【0016】
画像センサは、垂直に、またはポートレイトモードにおいて配向された行と、後ろから前にまたはその逆に進む読出し時間とを有するローリングシャッタ画像センサであってもよい。ローリングシャッタは、画像の異なる部分がわずかに異なる時間において読み出されるように、画像センサの1つのエッジにおいて開始し、反対側のエッジに進んで画像を読み出す。車両速度に関連する時間変動画像安定化を適用することによって、車両の動きによる動きボケは、画像の異なる部分内の異なる距離における被写体に対して補償される場合がある。画像安定化は、レンズの背後で画像センサを移動させること、カメラ全体を回転させること、または液体くさびプリズムを使用して画像を移動させることを含む、様々な既知の手段によって適用されてもよい。
【0017】
システムは、車両の移動を補償するために、車両が移動している方向に対して垂直で、カメラが指している方向に対して垂直な軸、たとえば、カメラが移動中の車の側を見ている場合、垂直軸を中心に回転してもよい。回転は、ねじり振動であってもよく、また、正弦波または任意の他のタイプの振動であってもよい。言い換えれば、システムは、軸を中心に前後に回転し、移動の方向に、次いで、移動方向と反対にレンズを揺動させてもよい。システムの振動の間、レンズに対する画像センサの配向は、固定されたままであってもよい。移動方向と反対方向に回転するとき、システムは、車両の移動を補償する場合がある。この補償は、そうでなければ車両の移動によりボケているであろう静止した被写体のより鮮明な画像をシステムが取り込むことを可能にする場合がある。したがって、最も多くの高品質の画像を取得するために、システムは、システムが車両の移動方向と反対方向に回転しているときにのみ画像を取り込むように設定されてもよい。
【0018】
傾斜した画像センサと回転システムとの組合せは、システムが複数の焦点面の変化した角速度を補償することを可能にする場合がある。移動する車から近距離にあるという性質によって、車両に近い被写体は、車両から遠い被写体よりも高い角速度を有する。無限遠の被写体は、ゼロ角速度を有する。被写体の角速度は、システムからの被写体の距離の逆数に比例して線形に変化する。傾斜した画像センサが回転されると、画像センサの第1のエッジの角速度は、第2のエッジの角速度よりも速くなる場合がある。この構成は、車両からの異なる距離における角速度の差を補償し、画像の異なる部分内の異なる距離における被写体について、共に良好に合焦され、良好に動き補償された画像の部分をシステムが取り込むことを可能にする場合がある。
【0019】
角速度の差をさらに補償するために、システム回転は、ローリングシャッタの露光および読出しと同期されてもよく、回転速度の量は、画像センサにおける画像の動きが画像センサの各領域内の合焦している被写体に対してほぼ停止されるように、車両速度に比例するように調整されてもよい。
【0020】
システムは、関心のある被写体がいくつかの連続する画像内に現れるが、それらの距離と画像内のそれらの位置とに依存して、何らかの画像において、より明瞭である、またはより合焦している、十分に高いレートで画像を取り込んでもよい。傾斜した画像センサは、単一の画像にわたって焦点距離の勾配を提供してもよいので、隣接する画像は、異なる最良の焦点距離を有する異なる画像位置において同じ被写体または位置を取り込んでもよい。
【0021】
取り込まれた画像は、画像内の被写体からテキスト情報を抽出するために処理されてもよい。様々な焦点距離を有し、上記で説明したように動きを補償された画像から生成されていると、従来の機械読取り方法が適用されてもよい。
【0022】
例示的なシステム
図1は、従来の画像キャプチャシステムの機能図である。画像キャプチャシステム110は、互いに平行に配置されるレンズ120と画像センサ130とを有してもよい。結果として、焦点面140も、レンズに平行である。
【0023】
画像キャプチャシステムは、車両が動いている間に画像キャプチャシステムによって取り込まれる画像の品質を改善するために、レンズと平行ではなく、レンズに対して傾斜して取り付けられた画像センサを利用してもよい。
図2に示すように、画像キャプチャシステム210は、レンズ220と画像センサ230とを有してもよい。画像センサ230は、角度αで傾斜されてもよく、第1のエッジは、遠方の被写体に最もよく合焦するために、近くの被写体に最もよく合焦する、第1のエッジと反対側の第2のエッジよりもわずかにレンズに近い。被写体距離の範囲をカバーするために必要な傾斜の量は、被写体距離の逆数に関してほぼ線形であり、i=f+f2/oであり、ここで、(画像センサからレンズ平面までの)像距離iは、被写体距離oの逆数に比例した量だけ焦点距離fよりもわずかに大きい。
【0024】
たとえば、レンズ220は、焦点距離0.010m(10mm)を有してもよく、無限遠の距離で、画像センサ230の近位エッジは、レンズ平面の後方に0.010mに配置されてもよく、4mの近い被写体距離で、画像センサ230の反対側のエッジは、レンズ平面の0.010025m後方に配置さえてもよい。画像センサのエッジが10mm離れている場合、一方のエッジから他方のエッジへの25ミクロン(0.000025m)のこのわずかな傾斜は、2.5ミリラジアンの角度(約0.14度)に対応する。結果として、2つ以上の画像内の異なる位置に現れる被写体が、あるものが別のものよりも良好に合焦してもよいように、画像センサの第1のエッジは、画像センサ230の第2のエッジが合焦する被写体よりもカメラから遠い被写体に合焦してもよい。
【0025】
特定の傾斜量は、撮像されるべき被写体距離の範囲を最もよくカバーするものであると決定されてもよい。上述したように、傾斜の方向は、垂直軸のような、車両が移動する方向に対して垂直な軸の周りであってもよいが、同様に任意の他の方向であってもよい。
【0026】
画像センサ230は、垂直に、またはポートレイトモードにおいて配向された行と、後から前にまたはその逆に進む読出し時間とを有するローリングシャッタ画像センサであってもよい。ローリングシャッタは、画像の異なる部分がわずかに異なる時間において読み出されるように、画像センサの1つのエッジにおいて開始し、反対側のエッジに進んで画像を読み出す。画像はまた、1つのチップまたは複数のチップ上の単一のアレイ内のピクセル光センサの集合であってもよい。加えて、または代替的に、システムは、レンズの背後にある角度で配置される複数の画像センサを利用してもよい。レンズの第1のエッジにおける画像センサは、レンズの第2のエッジにおける画像センサよりもレンズからの距離が小さくてもよい。複数の画像センサの各々は、上記で説明したように傾斜されてもよい。複数の画像センサは、単一のローリングシャッタ画像センサとして振る舞うように構成されてもよく、言い換えれば、レンズの一方のエッジにおいて開始し、レンズの反対側のエッジに進んで画像を露光しかつ読み出すように構成されてもよい。各画像センサは、ローリングシャッタ画像センサであってもよいが、必ずしもそうである必要はない。
【0027】
図3は、
図2の画像キャプチャシステムの絵図である。レンズ220および1つまたは複数の画像センサ230に加えて、画像キャプチャシステム210は、1つまたは複数のコントローラ310を有してもよい。1つまたは複数のコントローラ310は、画像キャプチャシステムの動作を制御してもよい。たとえば、1つまたは複数のコントローラ310は、画像キャプチャシステム210に画像を移動または取り込ませてもよい。1つまたは複数のコントローラはまた、レンズ220または画像センサ230などの画像キャプチャシステム210の構成要素を個別に制御してもよい。いくつかの例では、画像キャプチャシステムは、システムを動作させるために使用および実行されてもよいデータおよび命令を記憶するメモリを含んでもよい。
【0028】
傾斜した画像センサを有することに加えて、システムは、車両の移動を補償するために、車両が移動している方向に対して垂直で、カメラが指している方向に対して垂直な軸上を回転するように構成されてもよい。回転は、ねじり振動であってもよく、また、正弦波であってもよい。言い換えれば、システムは、軸上を前後に回転し、移動の方向に、次いで、移動方向と反対にレンズを揺動させてもよい。
図4に示すように、画像キャプチャシステム210は、軸420上を前後に回転し、角度距離βをカバーしてもよい。
【0029】
システムの振動の間、レンズに対する画像センサの配向は、固定されたままであってもよい。言い換えれば、画像センサは、レンズと一緒に回転してもよい。たとえば、システムは、10度の角度距離内で前後に回転してもよい。システムは、したがって、システムが移動方向とは反対方向に回転している時間の期間におけるシステムの変位を補償してもよい。別の言い方をすると、システムは、画像の動きの方向において回転することによって、センサにわたる画像の動きを補償してもよい。システムは、システムが変位の方向と反対に(または、画像の動きの方向に)回転しており、変位を最も補償しているときに画像を取り込むように構成されてもよい。
【0030】
図5Aおよび
図5Bは、本発明の例示的な実施形態による、4メートルから無限遠の被写体距離に合焦するように較正された画像キャプチャシステムのための画像キャプチャのサイクルを通じた時間に対する角速度およびカメラ回転角度を示す。
図5Aは、実線510において示す時間にわたる角速度として、画像キャプチャシステムの回転の例をグラフで示す。点線512は、回転量をラジアンで表す。ライン514は、画像のための露光および読出し間隔を表し、ラインセグメント516は、画像センサの傾斜およびシステムの角速度に基づく最良の動き補償を有する距離を表す。+マーク518は、4メートルおよび8メートルの距離における移動速度を補償するための理想的な角速度を表す。
図5Aでは、画像キャプチャレートは、1/48秒における読出しおよび10m/秒における車両速度で、8フレーム/秒(fps)である。したがって、8fpsにおいて、システムは、システムの回転が4メートルから無限遠までの範囲の距離を最もよく補償する太線520によって強調された正弦波運動の1/6の間に撮像する。
【0031】
図5Bは、実線530において示す時間にわたる角速度として、画像キャプチャシステムの回転の別の例をグラフで示す。点線532は、回転量をラジアンで表す。ライン534は、画像のための露光および読出し間隔を表し、ラインセグメント536は、画像センサの傾斜およびシステムの角速度に基づく最良の動き補償を有する距離を表す。+マーク538は、4メートルおよび8メートルの距離における移動速度を補償するための理想的な角速度を表す。
図5Bでは、画像キャプチャレートは、1/48秒における読出しおよび10m/秒における車両速度で、12フレーム/秒である。より高いフレームレートは、のこぎり波形により近い動き(12Hzサイクルの第5高調波までを使用する、1つの方向が他の方向よりもゆっくりとしたランプ)を使用することによって取得される。12fpsのレートにおいて、システムは、太線540によって強調されるように、サイクルの1/4の間に撮像する。
【0032】
回転に加えて、または回転の代替として、システムは、車両が移動している方向に平行な平面内で並進振動子として左右に振動してもよい。さらに別の例では、システム全体を回転または振動させるのではなく、画像の動きを補償するために、画像センサのみがレンズに対して振動されてもよい。
【0033】
傾斜した画像センサと回転システムとの組合せは、システムが複数の焦点面の変化した角速度を補償することを可能にする場合がある。移動する車から近距離にあるという性質によって、車両に近い被写体は、車両から遠い被写体よりも高い角速度を有する。たとえば、10m/秒の車両速度について、4m離れた被写体の角速度は、2.5rad/秒、または2.5mrad/ミリ秒である。無限遠の被写体は、ゼロ角速度を有する。被写体の角速度は、システムからの被写体の距離の逆数に関連して線形に変化する。傾斜した画像センサが回転されると、画像センサの第1のエッジの角速度は、第2のエッジの角速度よりも速くなる場合がある。言い換えれば、近い焦点を有する画像センサのエッジは、より速い角速度を有する場合がある。この構成は、車両からの異なる距離における角速度の差を補償し、画像の異なる部分内の異なる距離における被写体について、良好に合焦され、かつ、良好に動き補償された画像の部分をシステムが取り込むことを可能にする場合がある。
【0034】
角速度の差をさらに補償するために、システム回転は、ローリングシャッタの露光および読出しと同期されてもよく、回転速度の量は、画像センサにおける画像の動きが画像センサの各領域内の合焦している被写体に対してほぼ停止されるように、車両速度に比例するように調整されてもよい。
【0035】
システムは、関心のある被写体がいくつかの連続する画像内に現れるが、それらの距離と画像内のそれらの位置とに依存して、何らかの画像において、より明瞭である、十分に高いレートで画像を取り込んでもよい。言い換えれば、被写体は、2つ以上の画像内に、異なる画像内の異なる点において現れてもよい。たとえば、システムは、振動サイクル毎に1ショット取り込んでもよく、各振動は、10度位内の回転である。この1/6サイクルの露光および読出しは、約6倍の読出し時間に等しいフレーム間隔、または画像センサの最大フレームレートの1/6に対応してもよい。1/48秒において読み出すことが可能な画像センサについて、合計8の画像が1秒毎に取り込まれる場合があり、または、車両が10m/秒において移動している場合、1.25メートル毎に1つの画像が取り込まれる場合があり、これは、(カメラの視野に依存して)車両から数メートル以上にある被写体の複数のビューを取り込む場合がある。
【0036】
傾斜した画像センサは、単一の画像にわたって焦点距離の勾配を提供してもよいので、隣接する画像は、異なる最良の焦点距離を有する異なる画像位置において同じ被写体または位置を取り込んでもよい。たとえば、8mの距離における被写体は、(カメラの視野に依存して)3以上の異なる画像内に現れる場合があり、これらの画像のうちの少なくとも1つにおいて、被写体は、最良の焦点距離が8m(距離の逆数に関して無限遠と4mのエッジとの間の半分)である画像の中心近くに現れる。動き補償が無限遠のエッジにおいて回転しないように調整され、他方のエッジにおいて4mの距離における被写体に対する10m/秒の車両の動きのための補償(1秒あたり2.5ラジアンの回転)に調整され、それらの間でほぼ線形に変化するように調整される場合、画像の中心近くの8mの距離における被写体の動きボケをほぼキャンセルすることになる。同様に、4mと無限遠との間の距離における他の被写体は、それらがいくつかの画像内に現れる場合、それらが少なくとも1つの画像内で鮮明になるように、ほぼ対応する画像位置において良好に合焦し、動き補償される。
【0037】
図6に示すように、画像キャプチャシステム210は、車両600に組み込まれてもよい。本開示の特定の態様は、特定のタイプの車両に関連して特に有用であるが、車両は、限定はしないが、乗用車、トラック、オートバイ、バス、レクリエーション車両などを含む、任意のタイプの車両であってもよい。車両は、1つまたは複数のプロセッサ620と、メモリ630と、汎用コンピューティングデバイス内に典型的に存在する他の構成要素とを含むコンピューティングデバイス610などの、1つまたは複数のコンピューティングデバイスを有してもよい。画像キャプチャシステム210は、コンピューティングデバイス610に接続され、車両600に搭載されてもよい。
【0038】
メモリ630は、プロセッサ620によって実行または他の方法で使用されてもよいデータ632および命令634を含む、1つまたは複数のプロセッサ620によってアクセス可能な情報を記憶する。1つまたは複数のプロセッサ620は、市販のCPUなどの任意の従来のプロセッサであってもよい。代替的には、1つまたは複数のプロセッサは、ASICまたは他のハードウェアベースのプロセッサなどの専用デバイスであってもよい。メモリ630は、コンピューティングデバイス可読媒体、または、ハードドライブ、メモリカード、ROM、RAM、DVD、もしくは他の光ディスク、ならびに他の書込み可能メモリおよび読出し専用メモリなどの電子デバイスの助けを借りて読み出されてもよいデータを記憶する他の媒体を含む、プロセッサによってアクセス可能な情報を記憶することが可能な任意のタイプのものであってもよい。システムおよび方法は、命令およびデータの異なる部分が異なるタイプの媒体に記憶される前述のものの異なる組合せを含んでもよい。
【0039】
データ632は、命令634に従ってプロセッサ620によって取り出され、記憶され、または修正されてもよい。たとえば、特許請求された主題は、任意の特定のデータ構造によって制限されないが、データは、複数の異なるフィールドおよびレコードを有するテーブル、XML文書、またはフラットファイルとして、リレーショナルデータベースにおいてコンピューティングデバイスレジスタ内に記憶されてもよい。データはまた、任意のコンピューティングデバイス可読フォーマットにおいてフォーマットされてもよい。
【0040】
命令634は、プロセッサによって直接(機械コードなど)または間接的に(スクリプトなど)実行されるべき命令の任意のセットであってもよい。たとえば、命令は、コンピューティングデバイス可読媒体上にコンピューティングデバイスコードとして記憶されてもよい。その点について、「命令」および「プログラム」という用語は、本明細書では交換可能に使用される場合がある。命令は、プロセッサによって直接処理するための被写体コードフォーマットにおいて、または、要求に応じて解釈されるか、または前もってコンパイルされる独立したソースコードモジュールのスクリプトまたは集合を含む任意の他のコンピューティングデバイス言語において記憶されてもよい。命令の機能、方法、およびルーチンについて、以下でより詳細に説明する。
【0041】
図6は、コンピューティングデバイス610のプロセッサ、メモリ、および他の要素を同じブロック内にあるものとして機能的に示しているが、プロセッサ、コンピューティングデバイス、またはメモリは、実際には、同じ物理的ハウジング内に格納されていてもいなくてもよい複数のプロセッサ、コンピューティングデバイス、またはメモリを含んでもよいことが、当業者によって理解されるであろう。たとえば、メモリは、コンピューティングデバイス610のハウジングとは異なるハウジング内に配置されるハードドライブまたは他の記憶媒体であってもよい。したがって、プロセッサまたはコンピューティングデバイスへの参照は、並列に動作してもしなくてもよいプロセッサもしくはコンピューティングデバイスまたはメモリの集合への参照を含むことが理解されよう。
【0042】
コンピューティングデバイス610は、上述したプロセッサおよびメモリなどのコンピューティングデバイス、ならびにユーザ入力650(たとえば、マウス、キーボード、タッチスクリーンおよび/またはマイクロフォン)および様々な電子ディスプレイ(たとえば、画面を有するモニタ、または情報を表示するように動作可能な任意の他の電子デバイス)に関連して通常使用される構成要素のすべてを有してもよい。この例では、車両は、情報またはオーディオビジュアル体験を提供するために内部電子ディスプレイ652ならびに1つまたは複数のスピーカ654を含む。これに関して、内部電子ディスプレイ652は、車両600のキャビン内に配置されてもよく、車両600内の乗客に情報を提供するためにコンピューティングデバイス610によって使用されてもよい。
【0043】
コンピューティングデバイス610はまた、以下で詳細に説明するクライアントコンピューティングデバイスおよびサーバコンピューティングデバイスなどの他のコンピューティングデバイスとの通信を容易にするために、1つまたは複数のワイヤレスネットワーク接続654を含んでもよい。ワイヤレスネットワーク接続は、Bluetooth(登録商標)、Bluetooth low energy(LE)、セルラー接続などの短距離通信プロトコル、ならびに、インターネット、ワールドワイドウェブ、イントラネット、仮想プライベートネットワーク、ワイドエリアネットワーク、ローカルネットワーク、1つまたは複数の企業に独自の通信プロトコルを使用するプライベートネットワーク、イーサネット(登録商標)、WiFiおよびHTTP、および上記の様々な組合せを含む様々な構成およびプロトコルを含んでもよい。
【0044】
画像キャプチャシステム210に加えて、コンピューティングデバイス610はまた、車両600の1つまたは複数の車両動作システム660と通信してもよい。車両動作システム660は、減速、加速、操舵、合図、ナビゲーション、位置決め、検出などのうちの1つまたは複数などの、車両の動作に関わるシステムを含んでもよい。1つまたは複数の車両動作システム660がコンピューティングデバイス610の外部として示されているが、実際には、システムはまた、コンピューティングデバイス610に組み込まれてもよい。
【0045】
画像キャプチャシステム210はまた、取り込まれた画像などの情報を他のコンピューティングデバイスとの間で受信または転送してもよい。
図7および
図8は、それぞれ、ネットワーク760を介して接続された複数のコンピューティングデバイス710、720、730、740、および記憶システム750を含む例示的なシステム700の絵図および機能図である。システム700はまた、画像キャプチャシステム210を含む。簡略化のため、いくつかのコンピューティングデバイスのみが示されているが、典型的なシステムは、はるかにより多くを含んでもよい。加えて、または代替的に、車両600などの1つまたは複数の車両がシステム700内に含まれてもよい。
【0046】
図8に示すように、コンピューティングデバイス710、720、730、740の各々は、1つまたは複数のプロセッサと、メモリ、データと、命令とを含んでもよい。そのようなプロセッサ、メモリ、データ、および命令は、コンピューティングデバイス610の1つまたは複数のプロサッサ620、メモリ630、データ632、および命令634と同様に構成されてもよい。
【0047】
ネットワーク760、および介在するノードは、Bluetooth(登録商標)、Bluetooth LEなどの短距離通信プロトコル、インターネット、ワールドワイドウェブ、イントラネット、仮想プライベートネットワーク、ワイドエリアネットワーク、ローカルネットワーク、1つまたは複数の企業に独自の通信プロトコルを使用するプライベートネットワーク、イーサネット(登録商標)、WiFiおよびHTTP、ならびに上記の様々な組合せを含む、様々な構成およびプロトコルを含んでもよい。そのような通信は、モデムおよびワイヤレスインターフェイスなどの他のコンピューティングデバイスとの間でデータを伝送することが可能な任意のデバイスによって容易にされてもよい。
【0048】
加えて、サーバコンピューティングデバイス710は、コンピューティングデバイス720、730、740のディスプレイ724、734、744などのディスプレイにおいてユーザ722、732、742などのユーザに情報を伝送および提示するためにネットワーク760を使用してもよい。これに関して、コンピューティングデバイス720、730、740は、クライアントコンピューティングデバイスとみなされてもよい。
【0049】
図8に示すように、各クライアントコンピューティングデバイス720、730、740は、ユーザ722、732、742による使用を意図したパーソナルコンピューティングデバイスであってもよく、1つまたは複数のプロセッサ(たとえば、中央処理装置(CPU))と、データおよび命令を記憶するメモリ(たとえば、RAMおよび内部ハードドライブ)と、ディスプレイ724、734、744などのディスプレイ(たとえば、画面を有するモニタ、タッチスクリーン、プロジェクタ、テレビ、または、情報を表示するように動作可能な他のデバイス)と、ユーザ入力デバイス726、736、746(たとえば、マウス、キーボード、タッチスクリーン、またはマイクロフォン)とを含む、パーソナルコンピューティングデバイスに関連して通常使用される構成要素のすべてを有してもよい。クライアントコンピューティングデバイスはまた、ビデオストリームを記録するためのカメラと、スピーカと、ネットワークインターフェースと、これらの要素を互いに接続するために使用される構成要素のすべてとを含んでもよい。
【0050】
加えて、クライアントコンピューティングデバイス720および730はまた、クライアントコンピューティングデバイスの位置および配向を決定するための構成要素728および738を含んでもよい。たとえば、これらの構成要素は、デバイスの緯度、経度、および/または高度を決定するGPSレシーバ、ならびに、加速度計、ジャイロスコープ、または別の方向/速度検出デバイスを含んでもよい。
【0051】
クライアントコンピューティングデバイス720、730、および740は、各々、フルサイズのパーソナルコンピューティングデバイスを備えてもよいが、それらは、代替的には、インターネットなどのネットワークを介してサーバとデータをワイヤレスで交換することが可能なモバイルコンピューティングデバイスを備えてもよい。単なる例として、クライアントコンピューティングデバイス720は、ワイヤレス対応PDA、タブレットPC、ウェアラブルコンピューティングデバイスもしくはシステム、または、インターネットもしくは他のネットワークを介して情報を取得することが可能なネットブックなどの、モバイルフォンまたはデバイスであってもよい。別の例では、クライアントコンピューティングデバイス730は、
図7においてヘッドマウントコンピューティングシステムとして示すウェアラブルコンピューティングシステムであってもよい。一例として、ユーザは、小型キーボード、キーパッド、マイクロフォンを使用し、カメラによる視覚信号、またはタッチスクリーンを使用して、情報を入力してもよい。
【0052】
記憶システム750は、本明細書で説明する機能のうちのいくつかまたはすべてを実行するために、1つまたは複数のサーバコンピューティングデバイス710などのサーバコンピューティングデバイスによって取り出されるか、または他の方法でアクセスされてもよい様々なタイプの情報を記憶してもよい。記憶システム750は、画像キャプチャシステム210によって取り込まれた画像を記憶してもよい。位置情報およびポーズ情報などの画像に関連する情報は、画像に関連して記憶されてもよい。
【0053】
メモリ730と同様に、記憶システム750は、ハードドライブ、メモリカード、ROM、RAM、DVD、CD-ROM、書込み可能メモリ、および読出し専用メモリなどの、サーバコンピューティングデバイス710によってアクセス可能な情報を記憶することが可能な任意のタイプのコンピュータ化されたストレージであることが可能である。加えて、記憶システム750は、同じまたは異なる地理的位置に物理的に配置されてもよい複数の異なる記憶デバイスにデータが記憶される分散記憶システムを含んでもよい。記憶システム750は、
図7に示すようにネットワーク760を介してコンピューティングデバイスに接続されてもよく、および/またはコンピューティングデバイス710、720、730、740、画像キャプチャシステム210などのいずれかに直接接続されてもよく、またはそれらに組み込まれてもよい。
【0054】
例示的な方法
図9は、システム内の1つまたは複数のコントローラによって実行されてもよい上記で説明した態様のいくつかによる例示的なフロー
図900である。この例では、ブロック910において、1つまたは複数のセンサが、画像キャプチャシステムのレンズの背後にある角度で構成されてもよい。ブロック920において、画像キャプチャシステムは次いで、画像キャプチャシステムの動きの方向に基づいて振動されてもよい。たとえば、画像キャプチャシステムは、車両に搭載されてもよく、その場合、車両が移動している方向は、画像キャプチャシステムの動きの方向である。ブロック930において、画像キャプチャシステムは、システム内のレンズの第1のエッジにおいて開始し、第1のエッジと反対側のレンズの第2のエッジに進んで画像を露光し、読み出してもよい。そのような方法で画像を露光しかつ読み出すために、画像キャプチャシステムのセンサは、ローリングシャッタ画像センサであってもよい。
【0055】
取り込まれた画像は、画像内の被写体からテキスト情報を抽出するために処理されてもよい。様々な焦点距離を有し、上記で説明したように動きを補償された画像から生成されていると、従来の機械読取り方法が適用されてもよい。たとえば、サインに関する語は、OCRを用いることによって読まれてもよい。取り込まれた画像は、画像キャプチャシステム210において処理されてもよい。他の例では、取り込まれた画像は、ネットワーク760を介して1つまたは複数のコンピューティングデバイス710、720、730、740に送信され、1つまたは複数のコンピューティングデバイスにおいて処理されてもよい。取り込まれた画像および/または抽出された情報は、画像キャプチャシステム210または1つもしくは複数のコンピューティングデバイス710、720、730、740からネットワーク760を介して記憶システム750に送信されてもよい。ユーザ要求に応答して、取り込まれた画像または抽出された情報は、記憶システム750から取り出されてもよい。
【0056】
いくつかの例では、最も合焦している取り込まれた画像の選択部分を一緒にスティッチすることによって合成画像が生成され、画像から情報を抽出するために処理されてもよい。合成画像は、パノラマ画像であってもよい。最も合焦している取り込まれた画像の部分を選択するために、特定の位置を取り込む異なる画像の部分が比較されてもよい。特定の位置を最も明瞭に示す、または焦点距離に最も近い取り込まれた画像の部分は、合成画像内に含まれるように選択されてもよい。システムは、特定の位置と車両との間の距離を検出するためにLIDARを使用してもよい。検出された距離と一致する距離において合焦された画像センサ部分において特定の位置が取り込まれた、取り込まれた画像の部分は、合成画像内に含まれるように選択されてもよい。生成された合成画像は次いで、画像内の被写体からテキスト情報を抽出するために処理されてもよい。
【0057】
上記で説明した特徴は、乗用車を運転しているときのように、高速で移動しているとき、広範囲の距離において合焦している画像のキャプチャを可能にする。傾斜した画像センサ、回転もしくは振動、または重なり合う画像の各々は、上記で説明したように、典型的な画像キャプチャシステムを上回る個々の利点を提供するが、これらの組合せは、上記で説明したように、合成画像を生成するための取り込まれた画像の最良のソースを提供する場合がある。結果として、合成画像は、移動する車両から撮影された画像内に典型的に取り込まれるものよりも多くの情報を含む場合がある。たとえば、合成画像は、典型的な画像キャプチャシステムによって取り込まれた場合、そうでなければ読み取るにはボケすぎているか、または合焦していないサインに関する語のようなテキスト情報を抽出するための後処理において使用されてもよい。加えて、傾斜した画像センサおよび画像センサの動きは、画像が様々な焦点距離および動き補償の程度において取り込まれる1つのカメラによる単一のパスにおける画像の効率的なキャプチャを可能にする。そのように、上記で開示した特徴は、より広い開口およびより遅いシャッタ速度の使用を可能にする場合があり、画像キャプチャシステムが高速においてきれいな画像を作るのに十分な光を得ることを可能にする。
【0058】
本明細書では、本発明を特定の実施形態を参照して説明してきたが、これらの実施形態は、本発明の原理および用途の単なる例示であることが理解されるべきである。したがって、例示的な実施形態に対して多くの修正が行われてもよく、添付の特許請求の範囲によって定義される本発明の要旨および範囲から逸脱することなく、他の構成が考え出されてもよいことが理解されるべきである。
例示的な画像システム(210)は、画像を生成するレンズ(220)と、画像センサ(230)と、画像スタビライザと、コントローラ(310)とを含み得る。この画像センサ(230)は、第1のエッジと、反対側の第2のエッジとを有する。第1のエッジは、より遠方の被写体に合焦するようにレンズ(210)のより近くに配置される。画像スタビライザは、画像センサにおける画像の動きの時間変動補償を提供する。コントローラ(310)は、センサ(230)が一方のエッジから他方のエッジへ画像を漸進的に露光しかつ読み出す反復サイクルで画像キャプチャシステム(210)を動作させる。コントローラ(310)は、センサ(230)の第1のエッジを露光しかつ読み出すときよりもセンサ(230)の第2のエッジを露光しかつ読み出すときに画像の動き補償がより大きくなるように、時間的に変動する画像の動き補償を提供するように画像スタビライザを動作させる。