(57)【要約】【課題】動的焦点のための適応カメラ制御および較正を提供する。【解決手段】被写体の3D再構築を作成するためのカメラビジョンシステムは、カメラと、カメラとの固定空間関係を有する距離センサと、システムコントローラとを含み得る。システムコントローラは、距離センサからセンサ−被写体間距離を示す距離センサ信号を受信し、センサ−被写体間距離に基づいてカメラ−被写体間距離および対応するカメラ焦点状態を判断し、カメラをカメラ焦点状態に調整させるためにカメラ焦点状態制御信号を送信する。システムコントローラは、カメラ焦点状態のカメラ内部パラメータ値を取得し、カメラに被写体の被写体画像を撮影させるために画像撮影制御信号を送信し、撮影された被写体画像の被写体画像データをカメラから受信し、3D再構築で使用するために被写体画像データおよびカメラ内部パラメータ値を画像データベースに格納する。【選択図】図４
2020061736.tif 000002
【特許請求の範囲】
【請求項１】
被写体（12）の三次元（3D）再構築を作成するためのカメラビジョンシステム（10）であって、
カメラコントローラ（40）を有するカメラ（14）と、
前記カメラ（14）との固定空間関係を有する距離センサ（16）と、
前記カメラコントローラ（40）および前記距離センサ（16）に動作可能に接続されたシステムコントローラ（18）と、を備え、前記システムコントローラ（18）は、
前記距離センサ（16）から距離センサ信号を受信するようにプログラムされ、前記距離センサ信号は前記距離センサ（16）から前記被写体（12）までのセンサ−被写体間距離（Dso）を示し、
前記システムコントローラ（18）は、前記センサ−被写体間距離（Dso）に基づいて前記カメラ（14）から前記被写体（12）までのカメラ−被写体間距離（Dco）および前記カメラ−被写体間距離（Dco）についての対応するカメラ焦点状態を判断し、
前記カメラコントローラ（40）に、前記カメラ（14）を前記カメラ焦点状態に調整させるために、カメラ焦点状態制御信号を前記カメラコントローラ（40）に送信し、
前記カメラ焦点状態に対応する前記カメラ（14）のカメラ内部パラメータ値を取得し、
前記カメラ（14）に前記被写体（12）の被写体画像を撮影させるために画像撮影制御信号を前記カメラコントローラ（40）に送信し、
前記カメラ（14）によって撮影された前記被写体画像に対応する被写体画像データを前記カメラコントローラ（40）から受信し、
前記被写体画像データおよび前記カメラ内部パラメータ値を画像データベース（52）内に格納する
ようにプログラムされている、カメラビジョンシステム（10）。
【請求項２】
前記カメラ（14）は、前記カメラコントローラ（40）に動作可能に接続されたカメラレンズアクチュエータ（42）を備え、前記システムコントローラ（18）は、前記カメラ−被写体間距離（Dco）を前記カメラ焦点状態に対応するカメラレンズアクチュエータ位置に変換するようにプログラムされ、前記カメラ焦点状態制御信号は前記カメラレンズアクチュエータ位置を含む、請求項1に記載のカメラビジョンシステム（10）。
【請求項３】
前記システムコントローラ（18）は、
前記距離センサ信号に基づいて、前記距離センサ（16）から前記被写体（12）までの第2センサ−被写体間距離（Dso2）への前記センサ−被写体間距離（Dso）の変化を検出し、
前記第2センサ−被写体間距離（Dso2）に基づいて、前記カメラ（14）から前記被写体（12）までの第2カメラ−被写体間距離（Dco2）および前記第2カメラ−被写体間距離（Dco2）についての対応する第2カメラ−被写体間焦点状態を判断する
ようにプログラムされている、請求項1または2に記載のカメラビジョンシステム（10）。
【請求項４】
複数のカメラ焦点状態、および前記複数のカメラ焦点状態の各々について対応するカメラ内部パラメータ値を格納する、内部パラメータデータベース（50）を備え、前記システムコントローラ（18）は、前記内部パラメータデータベース（50）に動作可能に接続され、前記内部パラメータデータベース（50）から前記カメラ（14）の前記カメラ内部パラメータ値を取得するようにプログラムされている、請求項1から3のいずれか一項に記載のカメラビジョンシステム（10）。
【請求項５】
前記システムコントローラ（18）は、格納された被写体画像データおよび対応するカメラ内部パラメータ値から前記被写体（12）の3D再構築を実行するようにプログラムされている、請求項1から4のいずれか一項に記載のカメラビジョンシステム（10）。
【請求項６】
第2カメラコントローラ（40）を有する第2カメラ（22）を備え、前記第2カメラ（22）は前記距離センサ（16）との第2の固定空間関係を有し、前記システムコントローラ（18）は前記第2カメラコントローラ（40）に動作可能に接続され、前記システムコントローラ（18）は、
前記センサ−被写体間距離（Dso）に基づいて、前記第2カメラ（22）から前記被写体（12）までの第2カメラ−被写体間距離（Dco2）および前記第2カメラ−被写体間距離（Dco2）についての対応する第2カメラ焦点状態を判断し、
前記第2カメラコントローラ（40）に、前記第2カメラ（22）を前記第2カメラ焦点状態に調整させるために、第2カメラ焦点状態制御信号を前記第2カメラコントローラ（40）に送信し、
前記第2カメラ焦点状態に対応する前記第2カメラ（22）の第2カメラ内部パラメータ値を取得し、
前記第2カメラ（22）に前記被写体（12）の第2被写体画像を撮影させるために画像撮影制御信号を前記第2カメラコントローラ（40）に送信し、
前記第2カメラ（22）によって撮影された前記第2被写体画像に対応する第2被写体画像データを前記第2カメラコントローラ（40）から受信し、
前記第2被写体画像データおよび前記第2カメラ内部パラメータ値を前記画像データベース（52）内に格納する
ようにプログラムされている、請求項1から5のいずれか一項に記載のカメラビジョンシステム（10）。
【請求項７】
前記システムコントローラ（18）は、格納された被写体画像データおよび対応する第1カメラ内部パラメータ値、ならびに格納された第2被写体画像データおよび対応する第2カメラ内部パラメータ値から、前記被写体（12）の3D再構築を実行するようにプログラムされている、請求項6に記載のカメラビジョンシステム（10）。
【請求項８】
カメラ（14）を動的に合焦させ、画像を撮影して被写体（12）の三次元（3D）再構築を生成する方法であって、
前記カメラ（14）から被写体（12）までの第1カメラ−被写体間距離（Dco1）を判断するステップと、
前記カメラのカメラコントローラ（40）に、前記カメラ（14）のカメラ（14）焦点状態を前記第1カメラ−被写体間距離（Dco1）に対応する第1カメラ焦点状態に調整させるステップと、
前記第1カメラ焦点状態に対応する前記カメラ（14）の第1カメラ内部パラメータ値を取得するステップと、
前記カメラ（14）に前記被写体（12）の第1画像を撮影させるように、前記カメラコントローラ（40）に命令するステップと、
前記第1画像の第1画像データおよび前記第1カメラ内部パラメータ値を格納するステップと、
を備える、方法。
【請求項９】
前記第1カメラ−被写体間距離（Dco1）を判断するステップは、
距離センサ（16）から前記被写体（12）までの第1センサ−被写体間距離（Dso1）を判断するステップであって、前記距離センサ（16）は前記カメラ（14）との固定空間関係を有する、ステップと、
前記第1センサ−被写体間距離（Dso1）に基づいて前記カメラ（14）から前記被写体（12）までの前記第1カメラ−被写体間距離（Dco1）を判断するステップと、
を備える、請求項8に記載の方法。
【請求項１０】
前記被写体（12）に対する複数のカメラ位置の各々で、判断する前記ステップ、調整させる前記ステップ、取得する前記ステップ、命令する前記ステップ、および格納する前記ステップを実行するステップを備え、格納された画像データおよび対応するカメラ内部パラメータ値から前記被写体（12）の3D再構築を実行するステップを備える、請求項8または9に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般にカメラビジョンシステムに関し、より具体的には、カメラから被写体までの感知距離に基づく動的なカメラ合焦および内部カメラ較正パラメータの取得に関する。
【背景技術】
【０００２】
ステレオビジョンシステムおよび構造化ライトなどのカメラビジョンシステムは、様々な目的で被写体の三次元（3D）スキャンを再構築するために、様々な産業にわたって使用されている。高解像度3D再構築では、被写体の正確で詳細な再構築画像を生成するために、カメラの任意の焦点状態の画素レベル精度で、焦点距離および歪み係数を含む内部カメラ較正パラメータがわかっていなければならない。カメラから被写体までの距離が変動する状況で高品質の高解像度画像を撮影するためには、カメラの焦点状態の変更（手動焦点変更または動的合焦）がしばしば必要となる。被写体の撮影画像を3D画像に再構築するために使用される内部パラメータはカメラの焦点状態に依存するので、焦点状態が変化するときには正しい内部パラメータが選択されなければならない。
【発明の概要】
【課題を解決するための手段】
【０００３】
本開示の一態様では、被写体の3D再構築を作成するためのカメラビジョンシステムである。カメラビジョンシステムは、カメラコントローラを有するカメラと、カメラとの固定空間関係を有する距離センサと、カメラコントローラおよび距離センサに動作可能に接続されたシステムコントローラと、を含み得る。システムコントローラは、距離センサから距離センサ信号を受信し、距離センサ信号は距離センサから被写体までのセンサ−被写体間距離を示し、センサ−被写体間距離に基づいてカメラから被写体までのカメラ−被写体間距離およびカメラ−被写体間距離についての対応するカメラ焦点状態を判断し、カメラコントローラに、カメラをカメラ焦点状態に調整させるために、カメラ焦点状態制御信号をカメラコントローラに送信するように、プログラムされ得る。システムコントローラは、カメラ焦点状態に対応するカメラのカメラ内部パラメータ値を取得し、カメラに被写体の被写体画像を撮影させるために画像撮影制御信号をカメラコントローラに送信し、カメラによって撮影された被写体画像に対応する被写体画像データをカメラコントローラから受信し、被写体画像データおよびカメラ内部パラメータ値を画像データベース内に格納するように、さらにプログラムされ得る。
【０００４】
本開示の別の態様では、カメラを動的に合焦させ、画像を撮影して被写体の3D再構築を生成する方法である。方法は、カメラから被写体までの第1カメラ−被写体間距離を判断するステップと、カメラのカメラコントローラに、カメラのカメラ焦点状態を第1カメラ−被写体間距離に対応する第1カメラ焦点状態に調整させるステップと、第1カメラ焦点状態に対応するカメラの第1カメラ内部パラメータ値を取得するステップと、カメラに被写体の第1画像を撮影させるように、カメラコントローラに命令するステップと、第1画像の第1画像データおよび第1カメラ内部パラメータ値を格納するステップと、を含み得る。
【０００５】
本開示のさらなる態様では、カメラビジョンシステム内で内部較正を実行する方法である。方法は、カメラビジョンシステムのカメラをカメラ焦点状態に調整するステップと、目標被写体の画像を撮影するステップと、目標被写体の画像について撮影された目標画像データからカメラ焦点状態でのカメラの内部パラメータ値を判断するステップと、内部パラメータデータベース内にカメラ焦点状態およびカメラ焦点状態でのカメラの内部パラメータ値を格納するステップと、を含み得る。
【０００６】
追加の態様は、この特許の請求項によって定義される。
【図面の簡単な説明】
【０００７】
【図１】本開示によるカメラビジョンシステムの構成要素の概略図である。
【図２】カメラおよび距離センサが被写体に対して第2の位置に移動した図1のカメラビジョンシステムの概略図である。
【図３】第2カメラを有する図1のカメラビジョンシステムの概略図である。
【図４】図1のカメラビジョンシステム内で本開示による画像撮影および3D再構築を実施し得る制御構成要素のブロック図である。
【図５】本開示による例示的なカメラビジョンシステム内部較正ルーチンのフロー図である。
【図６】本開示による例示的な画像撮影および3D再構築ルーチンのフロー図である。
【発明を実施するための形態】
【０００８】
本開示によるカメラビジョンシステムは、撮像された被写体の3D再構築で使用される画像データの取得用のカメラシステムの動的焦点をサポートするための適応内部較正方法を提供する。例示的な実施形態では、カメラビジョンシステムは、1つ以上のカメラと、パンチルトユニットなどの可動構造に実装された対応する奥行きまたは距離センサとを含む。カメラがパンおよび／またはチルトすると、カメラから目標被写体までの距離は、カメラの焦点を後進することなく視野の奥行きがもはや目標被写体を中心としなくなるように、変化する。距離センサは被写体までの距離を感知し、システムは、感知距離に対応するカメラの新しい焦点状態を判断し、カメラの焦点を相応に調整する。焦点が変化すると、撮影画像データを被写体の3D表示に変換するのに使用するため、新しい焦点状態でのカメラの内部パラメータが取得される。この配置は、以前のシステムよりも被写体の3D再構築の速度および品質を向上させることができる。
【０００９】
図1を参照すると、被写体12の画像を撮影し、撮影画像から被写体12の3D再構築を作成することが可能な、例示的なカメラビジョンシステム10が示されている。カメラビジョンシステム10は、カメラ14と、距離センサ16と、被写体12の画像を撮影するためにカメラ14の動作を制御する情報を交換するためにカメラ14および距離センサ16に動作可能に接続されたシステムコントローラ18とを含み得る。カメラビジョンシステム10において、カメラ14および距離センサ16は、センサ−カメラ間距離Dscが一定のままとなるように三次元座標系20内の固定空間関係を有する。加えて、異なる角度から被写体12の複数の画像を撮影するためにカメラ14および距離センサ16が被写体12の周りを移動する際に、カメラ14と距離センサ16との間の相対配向は、座標系20内で一定のままである。固定空間関係を維持するために、カメラ14および距離センサ16は、パンチルトユニット、関節アーム、三脚、または二次元または三次元で被写体12の周りを移動することまたは移動させられることが可能なその他の支持構造などの共通構造（図示せず）に実装されてもよい。
【００１０】
図1に示されるカメラビジョンシステム10の位置で、カメラ14は被写体12から第1カメラ−被写体間距離Dcoの位置に配置される。同時に、距離センサ16はセンサ−被写体間距離Dsoの位置に配置される。座標系20内に固定空間関係を有するカメラ14および距離センサ16では、カメラ−被写体間距離Dcoは、標準的な幾何計算を使用して、既知のセンサ−被写体間距離Dsoに基づいて計算され得る。いくつかの実施形態では、センサ−被写体間距離Dsoから対応するカメラ−被写体間距離Dcoおよびカメラ焦点状態への変換は、予め計算されてシステムコントローラ18のルックアップテーブルに格納されていてもよく、センサ−被写体間距離Dsoが検出されたときに取得される。一旦判断されると、システムコントローラ18は、その焦点を新しい焦点状態にシフトするために制御信号をカメラ14に送信する。カメラ14および距離センサ16が被写体12からそれぞれ同じ距離Dco、Dsoに留まっている限り、カメラ14はその焦点状態を維持する。図2では、カメラ14および距離センサ16は、被写体12に対して新しい位置に関節接続されている。カメラ14および距離センサ16は座標系20内で平行移動および回転しているが、センサ−カメラ間距離Dscはそれらの固定空間関係のため一定のままである。距離センサ16からの距離センサ信号は、距離センサ16が被写体12から第2センサ−被写体間距離Dso2にあることをシステムコントローラ18に示す。変化を検出すると、システムコントローラ18は、対応する第2カメラ−被写体間距離Dco2およびカメラ14の第2焦点状態を判断する。次いでシステムコントローラ18は、その焦点を第2焦点状態にシフトするために、カメラ焦点制御信号をカメラ14に送信する。
【００１１】
いくつかの実施形態では、カメラビジョンシステム10は、被写体12の3D再構築で使用するための被写体12の複数の画像を撮影するために一緒に移動する複数のカメラを含み得る。図3を参照すると、カメラビジョンシステム10は、第1カメラ14および距離センサ16との固定空間関係を有する第2カメラ22を含む。第2カメラ22は、距離センサ16から第2センサ−カメラ間距離Dsc2にあり、システムコントローラ18は、第1カメラ14の第1カメラ−被写体間距離Dco1と共に第2カメラ22からの第2カメラ−被写体間距離Dco2を判断するように構成されている。システムコントローラ18はまた、被写体12の画像を撮影するために第2カメラ22に焦点状態を調整させるため、第2カメラ22の焦点状態を判断してカメラ焦点制御信号を第2カメラ22に送信する。
【００１２】
被写体12の画像を再構築された3D画像に変換するためには、正確な変換のためにカメラ14、22の特定の内部パラメータが必要とされる。このような内部特性は、カメラの焦点距離、カメラの焦平面上の主要点の箇所、接線および径方向の歪み係数などを含むことができる。内部パラメータの値は、内部較正の既知の技術を用いて各カメラまたはカメラのモデルについて計算され得る。内部較正および3D再構築技術の例は、https://docs.opencv.org/2.4/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.htmlに見出すことができる。このような技術は、チェス盤など既知の幾何学的形状を有する被写体に合焦させてその画像を撮影するステップと、撮影画像が基準被写体の幾何学的形状に対して歪んでいるか否かおよびどの程度歪んでいるかを判断するステップと、を含み得る。
【００１３】
所与のカメラで、カメラの各焦点または焦点状態は、固有の内部パラメータの対のセットを有する。したがって、被写体の正確で明確な3D再構築を実現するために、焦点状態の範囲の内部パラメータが判断されて後の使用のために格納され得る。焦点状態の範囲は、最大焦点状態から最小焦点状態まで延伸し、最小焦点状態と最大焦点状態との間に一定間隔の焦点状態を含み得る。範囲内の各焦点状態で、カメラは対応する焦点に設定されてもよく、内部パラメータ値は上述のような従来の内部較正技術を用いて計算されてもよい。焦点状態および対応する内部パラメータ値は、カメラの内部パラメータデータベースを作成するために使用され得る。内部パラメータデータベースが作成されると、連続する焦点状態の内部パラメータ値の間の偏差が評価され得る。差が大きすぎて十分に明確な3D画像を構築できない場合、焦点状態間隔は短縮されてもよく、内部パラメータ値は、内部パラメータ値偏差が明確な3D画像を構築するための公差内になるまでの追加焦点状態について決定され得る。
【００１４】
本開示によるカメラビジョンシステム10では、被写体12の明確な3D再構築を作成するための動的内部プロセスにおいて、距離センサ16からの距離および焦点状態の決定された内部パラメータ値が使用され得る。距離センサ16は、同様に適切な焦点状態を判断するシステムコントローラ18に、センサ−被写体間距離Dsoを提供する。システムコントローラ18は、カメラ14に焦点状態を調整させるために制御信号をカメラ14に送信する。システムコントローラ18はまた、内部パラメータデータベースから焦点状態について対応する内部パラメータ値を取得する。計算された焦点状態が内部パラメータデータベースに格納された焦点状態の間にある場合、システムコントローラ18は、計算された焦点状態の内部パラメータ値を生成するために、格納された内部パラメータ値を補間してもよい。カメラ14からの撮影画像データは、被写体12の3D再構築で使用するための取得および／または補間内部パラメータ値と組み合わせられてもよい。動的内部プロセスの実施形態は、以下により詳細に図示および説明される。
【００１５】
図4は、カメラビジョンシステム10の電気的および電気機械的制御要素の実施形態を示す。システムコントローラ18は、システムコントローラ18に格納されたソフトウェアを使用して、カメラ14、22、距離センサ16、およびその他の監視および制御装置から受信した情報を処理し、カメラビジョンシステム10のカメラ14、22およびその他の装置にコマンドおよび制御信号を出力することが可能であってもよい。システムコントローラ18は、カメラビジョンシステム10に関連付けられた様々な機能を制御および実行する、指定されたプログラムを実行するためのプロセッサ30を含み得る。プロセッサ30は、プログラムを格納するための読み取り専用メモリ（ROM）34と、ROM34内に格納されたプログラムの実行で使用するための作業メモリ領域として機能するランダムアクセスメモリ（RAM）36とを有し得る、メモリ32に動作可能に接続されてもよい。プロセッサ30が示されているが、マイクロコントローラ、特定用途向け集積回路（ASIC）チップ、またはその他いずれかの集積回路装置など、その他の電子構成要素を使用することもまた可能であり想定される。
【００１６】
カメラ14、22は、システムコントローラ18に動作可能に接続されている。カメラ14、22は、高解像度画像を撮影するように構成され、本開示にしたがってカメラビジョンシステム10に組み込まれることが可能なレンズおよび焦点制御を有する、いずれの適切なカメラであってもよい。図示されるように、各カメラ14、22は、システムコントローラ18について上記で論じられたようなタイプであってもよいカメラコントローラ40によって提供された知能を有する。カメラコントローラ40は、システムコントローラ18と制御信号およびデータを交換するように構成されている。たとえば、システムコントローラ18は焦点および画像撮影制御信号を送信してもよく、カメラコントローラ40は被写体12の撮影画像の画像データを送信してもよい。カメラコントローラ40は、当該技術分野で知られる自動焦点技術を使用して、システムコントローラ18からの焦点制御信号がない場合にカメラ14、22を自動的に合焦させるようにプログラムされてもよい。このような技術のためのソフトウェアは、カメラメモリ（図示せず）に格納され、カメラコントローラ40によってアクセスされてもよい。
【００１７】
図示されるカメラ14、22は、カメラコントローラ40に動作可能に結合されたカメラレンズアクチュエータ42をさらに含む。カメラレンズアクチュエータ42は、カメラ14、22のレンズ（図示せず）に動作可能に接続され、レンズを移動させてカメラ14、22の焦点状態を調整するために作動可能であってもよい。カメラレンズアクチュエータ42およびレンズへの接続は、カメラレンズアクチュエータ42の運動をカメラレンズの運動に変換するように構成されたいずれの適切な電気機械的機構であってもよい。一実施形態では、カメラレンズアクチュエータ42は、各個別のエンコーダ位置がカメラ14、22の焦点状態に対応するロータリエンコーダを備える。焦点状態がシステムコントローラ18によって判断されると、焦点状態は対応するエンコーダ位置値に変換されてもよく、カメラレンズアクチュエータ42は、エンコーダ位置まで作動および回転するように制御される。カメラビジョンシステム10内におけるその他のタイプのカメラレンズアクチュエータ42を有するカメラ14、22の使用は、本発明者らによって想定される。
【００１８】
カメラビジョンシステム10の距離センサ16は、感知された被写体12までのセンサ−被写体間距離Dsoを示す距離センサ信号を提供するために、システムコントローラ18に動作可能に接続されている。距離センサ16は、被写体を検出して被写体までの距離を感知することが可能な、いずれの適切なセンサであってもよい。例示的な距離センサ16は、点源レーザー、光センサ、レーダーセンサ、音波センサ、超音波センサなどを含み得る。カメラビジョンシステム10内に実装される特定の距離センサ16は、カメラ14、22の焦点状態を正確に判断し、対応する内部パラメータ値を取得／補間するために必要な解像度を有し得る。
【００１９】
システムコントローラ18のメモリ32の一部または追加として、カメラビジョンシステム10内に画像撮影および3D再構築に必要な情報を格納するために、データベースが使用されてもよい。内部パラメータデータベース50は、カメラ14、22の内部較正の間に判断された、焦点状態および対応する内部パラメータ値を格納するために提供されてもよい。内部パラメータデータベース50は、内部較正中に作成されて、後に画像撮影および／または3D再構築中にアクセスされてもよい。カメラビジョンシステム10は、被写体12の画像としてカメラ14、22によって撮影された二次元（2D）画像データを格納する画像データベース52を、さらに含んでもよい。画像データと共に、画像データベース52は、各撮影画像が撮られた対応する焦点状態を格納することができる。次いで焦点状態は、内部パラメータデータベース50から対応する内部パラメータ値を取得／保管するために使用され得る。代替実施形態では、内部パラメータ値はまた、そうすることによって被写体12の3D再構築を容易にして重複する処理ステップを削減する場合、画像データと共に格納されてもよい。
【００２０】
図4は、カメラビジョンシステム10の構成要素の一実施形態を示すが、本発明者らによって代替実施形態が想定される。たとえば、コントローラ18、40の処理は、システムコントローラ18が直接カメラレンズアクチュエータ42を制御している状態で、システムコントローラ18において組み合わされることが可能である。別の実施形態では、距離センサ16は各カメラコントローラ40に動作可能に接続されてもよく、カメラコントローラ40はセンサ−被写体間距離Dsoを対応するカメラ−被写体間距離Dcoに変換するようにプログラムされている。別の実施形態では、カメラビジョンシステム10の各個別のカメラ14、22について内部パラメータ値が格納されてもよい。あるいは、カメラビジョンシステム10は、同じモデルのカメラの内部較正に著しい変動がない限り、カメラビジョンシステム10内で使用されるカメラの各モデルについて単一のセットの内部パラメータ値を格納してもよい。内部パラメータデータベース50および画像データベース52は、システムコントローラ18のメモリ32など、同じメモリ構造で格納されてもよく、またはカメラ14、22の内部較正および被写体12の画像撮影および3D再構築の間にシステムコントローラ18によって各々接続およびアクセスされる、異なるメモリ構造内に格納されてもよい。カメラビジョンシステム10の構成要素のさらなる代替構成は、当業者にとって明らかであり、本開示によるカメラビジョンシステム10ならびに画像撮影および3D再構築ルーチンでの使用を有するとして本発明者らによって想定される。
【００２１】
図5は、本開示による例示的なカメラビジョンシステム内部較正ルーチン100のフロー図である。内部較正ルーチン100は、較正されるカメラ14、22が値の焦点状態範囲の初期焦点状態に調整される、ブロック102で開始してもよい。値の焦点状態範囲は、カメラ14、22が被写体12に対して位置決めされ得る距離の範囲を反映し得る。たとえば、カメラ14、22は、被写体12から最小2フィートから最大30フィートまでの範囲の、被写体12までの潜在的な距離を有してもよい。内部較正ルーチン100を開始するために、カメラは、カメラ14、22から2フィートの位置に合焦するように調整され得る。以下でさらに論じられるような後続の反復では、焦点状態は、最大焦点状態までの指定された焦点状態増分によって調整され得る。
【００２２】
ブロック102でカメラ14、22が初期焦点状態に設定された後、制御はブロック104に進み、そこでカメラ14、22は目標被写体の画像を撮影する。目標被写体は、目標被写体の既知の幾何学的形状からの撮影画像における歪みが識別および定量化され得るように、チェス盤などの既知の幾何学的形状を有してもよい。カメラ14、22による画像撮影は、システムコントローラ18、対応するカメラコントローラ40、または内部較正ルーチン100のプロセスを管理するその他のコントローラによって制御され得る。ブロック104で画像が撮影された後、制御はブロック106に進み、そこでシステムコントローラ18、カメラコントローラ40、またはその他のコントローラは、カメラ14、22の現在の焦点状態について内部パラメータの値を判断する。内部パラメータ値は、上述されたような、カメラの内部較正のためのいずれか既知の技術を用いて判断され得る。ブロック106で内部パラメータ値を判断した後、制御はブロック108に進み、そこで現在の焦点状態および現在の焦点状態の内部パラメータ値は、内部パラメータデータベース50などの記憶構造に格納される。
【００２３】
内部較正ルーチン100は、最小焦点状態と最大焦点状態との間の複数の中間焦点状態で内部パラメータ値を取得することによって、継続する。中間焦点状態は、最終または最大焦点状態が較正されるまで、所定の焦点状態増分において発生し得る。本例では、カメラ14、22の焦点状態は、2フィートの最小焦点状態から30フィートの最大焦点状態まで6インチ増分で増加し得る。その結果、2インチの焦点状態について内部パラメータ値がブロック108で格納された後、制御はブロック110に進み、そこで内部較正ルーチン100を実行するコントローラは、焦点状態範囲の最終焦点状態が較正されたか否かを判断し得る。最小焦点状態が較正された後など、最終焦点状態が較正されていない場合、制御はブロック112に進み、そこでカメラ14、22の焦点状態は焦点状態増分によって調整される。この例では、カメラ14、22は、2フィートの焦点状態から2.5フィートの状態に調整される。カメラ14、22が新しい焦点状態に調整された後、目標被写体を撮影し、新しい焦点状態での内部パラメータ値を判断して格納するために、制御はブロック104乃至108に戻ってもよい。
【００２４】
30フィートの焦点状態較正されたときなど、ブロック110で最終焦点状態が較正されたと判断された場合、隣接する焦点状態の内部パラメータ値の間の偏差を判断するために、制御はブロック114に進み得る。単純な実施では、焦点状態の内部パラメータ値の間の偏差は、内部パラメータ値の間の差を見出すための減算によって判断され得る。別の実施では、内部パラメータ値の間の偏差を判断するために、より複雑な数学的および統計的方法が実施され得る。大きすぎるかまたは指定された公差よりも大きい内部パラメータ値の偏差は、低品質および低鮮明度の3D再構築をもたらす可能性があり、被写体12の3D再構築の品質を改善するために追加の中間焦点状態の較正を必要とする可能性がある。
【００２５】
内部パラメータ値の偏差がブロック114で判断された後、制御はブロック116に進み、そこでコントローラは、高品質画像を生成するには偏差が大きすぎるか否かを判断する。偏差が大きすぎない場合、カメラ14、22の内部較正は、被写体12の高品質3D再構築を生成するのに十分であり得る。この場合、内部パラメータデータベース50は十分に作成され、内部較正ルーチン100は終了し得る。
【００２６】
偏差が大きすぎる場合、隣接する焦点状態の内部パラメータ値の間の偏差を低減するために、焦点状態範囲の両端間のより小さい増分で追加の焦点状態が取られてもよい。偏差が大きすぎる場合、制御はブロック118に進み、そこで焦点状態増分は、以前に較正された焦点状態間の焦点状態が較正されて内部パラメータデータベース50に格納されるように、適切な量だけ減少させられてもよい。たとえば、本例における6インチの焦点状態増分は、内部較正ルーチン100によって較正される焦点状態の密度を倍増させるために、3インチの増分に縮小されてもよい。焦点状態増分がブロック118で調整された後、カメラ14、22を初期焦点状態に再調整し、追加の焦点状態を較正するため焦点状態範囲を通じてサイクルするために、制御はブロック102に戻ってもよい。いくつかの実施形態では、内部較正ルーチン100は、カメラ14、22を完全に較正するために必要とされる時間および処理リソースを削減するために、内部較正ルーチン100の前回の反復で既に較正された焦点状態をスキップするように構成されてもよい。内部較正ルーチン100の反復プロセスは、ブロック116で内部パラメータ値の偏差が許容可能な公差内になるまで継続する。内部較正ルーチン100は、カメラビジョンシステム10内で使用されるカメラの各々について繰り返されてもよい。特定のカメラモデルのカメラ14、22を製造する精度が高く、内部パラメータ値が実質的にカメラ14、22毎に変動しない場合、そのモデルの1つの例示的なカメラ14、22を較正し、3D再構築プロセスにおいてそのモデルのカメラ14、22によって撮影された画像データと共に使用するための較正済み内部パラメータ値を格納すれば十分であろう。
【００２７】
カメラビジョンシステム10のカメラ14、22が較正されてしまうと、カメラビジョンシステム10は、その後被写体12の3D再構築に変換され得る被写体12の画像を撮影するために使用され得る。図6は、本開示による例示的な画像撮影および3D再構築ルーチン150のフロー図の実施形態を示す。ルーチン150は、カメラビジョンシステム10の1つまたは複数のカメラ14、22が撮像される被写体12に向けられる、ブロック152で開始してもよい。上記で論じられたように、カメラ14、22は、二次元または三次元で被写体12の周りを移動することまたは移動させられることが可能なパンチルトユニットなどの共通構造に実装されてもよい。構造は、被写体12の正確な3D表示のために画像を撮影するのに必要な様々な箇所にカメラ14、22を位置決めするために、作業者または技術者によって手動で移動可能であってもよい。あるいは、構造およびそこに実装されたカメラ14、22の動きは、被写体12の周りの様々な画像撮影箇所にカメラ14、22を移動させるように、システムコントローラ18などの制御構造によって自動化および制御されてもよい。
【００２８】
カメラ14、22が位置決めされて被写体12に向けられると、制御はブロック154に進み、そこで距離センサ16は、現在の位置でのセンサ−被写体間距離Dsoを感知する。距離センサ16は、センサ−被写体間距離Dsoを感知し、センサ−被写体間距離Dsoに対応する値を有する距離センサ信号をシステムコントローラ18に送信する。システムコントローラ18における距離センサ16からの距離センサ信号の受信に応答して、制御はブロック156に進み、そこでシステムコントローラ18は、距離センサ信号中のセンサ−被写体間距離Dsoに基づいてカメラ−被写体間距離Dcoを判断する。カメラ−被写体間距離Dcoは、上述のようにいずれか適切な方法で計算され得る。
【００２９】
カメラ−被写体間距離Dcoがブロック156で判断されてから変化していない場合、カメラ14、22の焦点状態は変化しておらず、カメラ14、22を再合焦させて焦点状態の内部パラメータ値を取得する必要はないだろう。その結果、ブロック158でカメラ−被写体間距離Dcoが変化していない場合、ルーチン150の制御はカメラ合焦ステップおよび内部パラメータ値取得ステップを迂回し、代わりに被写体12の画像の撮影に進むことができる。しかしながら、ブロック158でカメラ−被写体間距離Dcoが変化している場合、制御はブロック160に進み、そこでシステムコントローラ18は、センサ−被写体間距離Dsoおよびカメラ−被写体間距離Dcoに対応するカメラ14、22の焦点状態を判断し、カメラ14、22を新しい焦点状態に調整させるためにブロック162に進んでもよい。一実施形態では、システムコントローラ18は、焦点状態に対応する値を含むカメラ制御信号をカメラコントローラ40に送信してもよい。カメラコントローラ40は、カメラ制御信号を受信し、焦点状態情報をカメラレンズアクチュエータ42に送信されるカメラレンズアクチュエータ制御信号に変換してもよい。カメラレンズアクチュエータ制御信号は、カメラレンズアクチュエータ42を作動させ、新しい焦点状態に対応する位置にカメラ14、22のレンズを移動させる。代替実施形態では、システムコントローラ18は、カメラレンズアクチュエータ制御信号をフォーマットして直接カメラレンズアクチュエータ42に送信してもよい。
【００３０】
ブロック162でカメラ焦点状態が調整された後、制御はブロック164に進み、そこでシステムコントローラ18は、内部パラメータデータベース50からカメラ焦点状態に対応する内部パラメータ値を受信してもよい。内部パラメータ値は、現在のカメラ焦点状態でカメラ14、22によって撮られた被写体12の画像を正確に変換するために、3D再構築プロセス中に必要とされる。カメラ焦点状態が格納されたカメラ焦点状態と一致する場合、ルーチン150の後続ステップにおいて対応する内部パラメータ値が使用されてもよい。他の事例では、距離Dso、Dcoから判断されたカメラ焦点状態は、内部パラメータデータベース50内に格納されたカメラ焦点状態の間に収まるかも知れない。このような場合、システムコントローラ18は、カメラ14、22の現在のカメラ焦点状態により密接に対応する内部パラメータ値を生成するために、格納された関連するカメラ焦点状態の内部パラメータ値を取得および補間するようにプログラムされてもよい。
【００３１】
カメラ14、22がカメラ焦点状態に調整され、対応する内部パラメータ値が内部パラメータデータベース50から取得および／または保管されると、ルーチン150の現在の反復中または前の反復中に、制御はブロック166に進み、そこで被写体12の画像が、現在のカメラ焦点状態でカメラ14、22によって撮影されてもよい。カメラビジョンシステム10の構成に応じて、システムコントローラ18は、カメラ14、22に被写体12の画像を撮らせるために、画像撮影制御信号をカメラコントローラ40に送信してもよい。被写体12の画像がカメラ14、22によって撮影された後、カメラコントローラ40は、撮影画像の被写体画像データをシステムコントローラ18に返送してもよい。被写体画像データがシステムコントローラ18で受信されると、制御はブロック168に進み、そこで被写体画像データおよびカメラ焦点状態の内部パラメータ値は、被写体12の3D再構築中の後の使用のために画像データベース52に格納される。
【００３２】
被写体画像データおよび内部パラメータ値が画像データベース52内に格納された後、システムコントローラ18は、ルーチン150が被写体12の画像の撮影を継続すべきか否かを判断してもよい。自動化された画像撮影プロセスでは、システムコントローラ18は、被写体12の高品質3D再構築を生成するのに十分な数の被写体12の画像を撮影するためにカメラ14、22を位置決めするように、一連の箇所がプログラムされてもよい。ブロック170において被写体12の画像が一連の箇所の各々で撮影されていないとシステムコントローラ18が判断した場合、カメラ14、22を次の箇所に再位置決めし、被写体12にカメラを向けるために、制御はブロック152に戻ってもよい。画像撮影プロセスの手動または部分手動実施では、カメラ14、22が被写体12の画像を撮影する次の箇所に対応する座標を作業者または技術者が入力してもよく、これによって制御をブロック152に戻す。カメラ14、22が3D再構築プロセスのために必要な全ての箇所で位置決めされ、これらの箇所で被写体12の画像を撮影するまでルーチン150が継続するように、ブロック170における判断ステップが自動的に、半自動的に、または手動で行われ得る、ルーチン150の他の実施も想定される。ブロック170で撮影される被写体12の画像がもうないと判断されると、制御はブロック172に進み、そこで、被写体画像データおよび画像データベース52内に格納された対応する内部パラメータ値を利用する、上記で論じられたいずれか適切な再構築技術を利用して、被写体12の3D再構築が実行される。
【００３３】
従来のカメラ内部較正方法および画像撮影は、カメラと目標被写体との間の距離が変化する際のカメラレンズの動的合焦を組み込んでいない。本開示によるカメラビジョンシステム10は、目標被写体12の画像を撮影するための適切な焦点状態へのカメラ14、22の調整を制御するため、ならびに目標被写体12の正確な高品質3D再構築が生成され得るようにカメラ14、22の焦点状態の適用可能な内部パラメータ値を取得するために使用される被写体距離情報を提供する外部距離センサ16を提供する。距離センサ16によって提供されたセンサ−被写体間距離Dsoに基づいてカメラ焦点状態を調整することにより、カメラ14、22において高速で効率的で正確な自動焦点応答を生み出すことができる。また、センサ−被写体間距離Dsoから対応するカメラ焦点状態に変換すること、およびカメラ焦点状態について対応する格納された内部パラメータ値を取得することにより、目標被写体12の3D画像を再構築するためのプロセスの速度および精度を改善し、画像の品質を改善することが可能である。被写体12の3D表示が検査プロセスの一部であるなど、3D再構築の品質が非常に重要になる実施では、検査担当者によって確認された3D再構築画像の精度および品質を向上させることによって、検査時間を短縮することができる。
【００３４】
前述の文は多くの異なる実施形態の詳細な説明であるが、法的な保護範囲は本特許の最後に明記された請求項の文言によって定義されることを理解すべきである。詳細な説明は、例示としてのみ解釈されるべきであり、全ての可能な実施形態を説明することは、不可能ではないとしても非現実的であるため、全ての可能な実施形態を説明するものではない。現在の技術または本特許の出願日以降に開発された技術を用いて多くの代替実施形態が実施可能であるかも知れないが、これらは依然として保護範囲を定義する請求項の範囲に含まれる。
【００３５】
さらに、本開示は、以下の条項による実施形態を備える。
【００３６】
第1項．被写体の三次元（3D）再構築を作成するためのカメラビジョンシステムであって、カメラコントローラを有するカメラと、カメラとの固定空間関係を有する距離センサと、カメラコントローラおよび距離センサに動作可能に接続されたシステムコントローラと、を備え、システムコントローラは、距離センサから距離センサ信号を受信し、距離センサ信号は距離センサから被写体までのセンサ−被写体間距離を示し、センサ−被写体間距離に基づいてカメラから被写体までのカメラ−被写体間距離およびカメラ−被写体間距離についての対応するカメラ焦点状態を判断し、カメラコントローラに、カメラをカメラ焦点状態に調整させるために、カメラ焦点状態制御信号をカメラコントローラに送信し、カメラ焦点状態に対応するカメラのカメラ内部パラメータ値を取得し、カメラに被写体の被写体画像を撮影させるために画像撮影制御信号をカメラコントローラに送信し、カメラによって撮影された被写体画像に対応する被写体画像データをカメラコントローラから受信し、被写体画像データおよびカメラ内部パラメータ値を画像データベース内に格納するようにプログラムされている、カメラビジョンシステム。
【００３７】
第2項．カメラは、カメラコントローラに動作可能に接続されたカメラレンズアクチュエータを備え、システムコントローラは、カメラ−被写体間距離をカメラ焦点状態に対応するカメラレンズアクチュエータ位置に変換するようにプログラムされ、カメラ焦点状態制御信号はカメラレンズアクチュエータ位置を含む、第1項に記載のカメラビジョンシステム。
【００３８】
第3項．システムコントローラは、距離センサ信号に基づいて、距離センサから被写体までの第2センサ−被写体間距離へのセンサ−被写体間距離の変化を検出し、第2センサ−被写体間距離に基づいて、カメラから被写体までの第2カメラ−被写体間距離および第2カメラ−被写体間距離についての対応する第2カメラ−被写体間焦点状態を判断するようにプログラムされている、第1項または第2項に記載のカメラビジョンシステム。
【００３９】
第4項．複数のカメラ焦点状態、および複数のカメラ焦点状態の各々について対応するカメラ内部パラメータ値を格納する、内部パラメータデータベースを備え、システムコントローラは、内部パラメータデータベースに動作可能に接続され、内部パラメータデータベースからカメラの内部パラメータ値を取得するように較正されている、第1項から第3項のいずれか一項に記載のカメラビジョンシステム。
【００４０】
第5項．システムコントローラは、格納された被写体画像データおよび対応するカメラ内部パラメータ値から被写体の3D再構築を実行するようにプログラムされている、第1項から第4項のいずれか一項に記載のカメラビジョンシステム。
【００４１】
第6項．第2カメラコントローラを有する第2カメラを備え、第2カメラは距離センサとの第2の固定空間関係を有し、システムコントローラは第2カメラコントローラに動作可能に接続され、システムコントローラは、センサ−被写体間距離に基づいて、第2カメラから被写体までの第2カメラ−被写体間距離および第2カメラ−被写体間距離についての対応する第2カメラ焦点状態を判断し、第2カメラコントローラに、第2カメラを第2カメラ焦点状態に調整させるために、第2カメラ焦点状態制御信号を第2カメラコントローラに送信し、第2カメラ焦点状態に対応する第2カメラの第2カメラ内部パラメータ値を取得し、第2カメラに被写体の第2被写体画像を撮影させるために画像撮影制御信号を第2カメラコントローラに送信し、第2カメラによって撮影された第2被写体画像に対応する第2被写体画像データを第2カメラコントローラから受信し、第2被写体画像データおよび第2カメラ内部パラメータ値を画像データベース内に格納するように、プログラムされている、第1項から第5項のいずれか一項に記載のカメラビジョンシステム。
【００４２】
第7項．システムコントローラは、格納された被写体画像データおよび対応する第1カメラ内部パラメータ値、ならびに格納された第2被写体画像データおよび対応する第2カメラ内部パラメータ値から、被写体の3D再構築を実行するようにプログラムされている、第6項に記載のカメラビジョンシステム。
【００４３】
第8項．カメラを動的に合焦させ、画像を撮影して被写体の三次元（3D）再構築を生成する方法であって、カメラから被写体までの第1カメラ−被写体間距離を判断するステップと、カメラのカメラコントローラに、カメラのカメラ焦点状態を第1カメラ−被写体間距離に対応する第1カメラ焦点状態に調整させるステップと、第1カメラ焦点状態に対応するカメラの第1カメラ内部パラメータ値を取得するステップと、カメラに被写体の第1画像を撮影させるように、カメラコントローラに命令するステップと、第1画像の第1画像データおよび第1カメラ内部パラメータ値を格納するステップと、を備える方法。
【００４４】
第9項．第1カメラ−被写体間距離を判断するステップは、距離センサから被写体までの第1センサ−被写体間距離を判断するステップであって、距離センサはカメラとの固定空間関係を有する、ステップと、第1センサ−被写体間距離に基づいてカメラから被写体までの第1カメラ−被写体間距離を判断するステップと、を備える、第8項に記載の方法。
【００４５】
第10項．カメラコントローラにカメラ焦点状態を調整させるステップは、カメラのカメラレンズアクチュエータの第1カメラレンズアクチュエータ設定を取得するステップであって、第1カメラレンズアクチュエータ設定は第1カメラ焦点状態に対応する、ステップと、カメラを第1カメラ焦点状態に調整するために、カメラレンズアクチュエータを第1カメラレンズアクチュエータ設定に変位させるステップと、を備える、第8項または第9項に記載の方法。
【００４６】
第11項．第1カメラ内部パラメータ値を取得するステップは、複数のカメラ焦点状態と、複数のカメラ焦点状態の各々についてのカメラの対応するカメラ内部パラメータ値とを格納する内部パラメータデータベースから、第1カメラ内部パラメータ値を取得するステップを備える、第8項から第10項のいずれか一項に記載の方法。
【００４７】
第12項．第1画像データを格納するステップは、被写体の追加画像および被写体に対する複数のカメラ位置から得られた対応するカメラ内部パラメータ値と共に、第1画像データおよび第1カメラ内部パラメータ値を画像データベース内に格納するステップを備える、第8項から第11項のいずれか一項に記載の方法。
【００４８】
第13項．被写体に対する複数のカメラ位置の各々で、判断するステップ、調整させるステップ、取得するステップ、命令するステップ、および格納するステップを実行するステップを備える、第8項から第12項のいずれか一項に記載の方法。
【００４９】
第14項．格納された画像データおよび対応するカメラ内部パラメータ値から被写体の3D再構築を実行するステップを備える、第13項に記載の方法。
【００５０】
第15項．カメラビジョンシステム内で内部較正を実行する方法であって、方法は、カメラビジョンシステムのカメラをカメラ焦点状態に調整するステップと、目標被写体の画像を撮影するステップと、目標被写体の画像について撮影された目標画像データからカメラ焦点状態でのカメラの内部パラメータ値を判断するステップと、内部パラメータデータベース内にカメラ焦点状態およびカメラ焦点状態でのカメラの内部パラメータ値を格納するステップと、を備える方法。
【００５１】
第16項．最小カメラ焦点状態から最大カメラ焦点状態までのカメラ焦点状態の範囲におけるカメラの内部パラメータデータを判断するステップと、カメラ焦点状態の範囲およびカメラ焦点状態の範囲におけるカメラについての対応する内部パラメータ値を内部パラメータデータベースに格納するステップとを備える、第15項に記載の方法。
【００５２】
第17項．カメラ焦点状態の範囲内のカメラ焦点状態は、最小カメラ焦点状態から最大カメラ焦点状まで所定の焦点状態増分で増加する第16項に記載の方法。
【００５３】
第18項．カメラ焦点状態の範囲内のカメラ焦点状態の内部パラメータ値の間の内部パラメータ偏差を判断するステップと、内部パラメータ偏差が所定の内部パラメータ偏差公差よりも大きいという判断に応答して、最小カメラ焦点状態と最大カメラ焦点状態との間の追加カメラ焦点状態についてカメラの内部パラメータ値を判断するステップとを備える、第17項に記載の方法。
【００５４】
第19項．目標被写体は既知の幾何学的形状を有する、第15項から第18項に記載の方法。
【００５５】
第20項．カメラビジョンシステムの複数のカメラのカメラ焦点状態での内部パラメータ値を判断および格納するステップを備える、第15項から第19項のいずれか一項に記載の方法。
【００５６】
本明細書で用語が明確に定義されていない限り、明示的であれ暗示的であれ、その明らかなまたは通常の意味を超えてその用語の意味を限定する意図はなく、このような用語は（請求項の言語ではなく）この特許のいずれかの部分でなされたいずれかの記述に基づく範囲に限定されるよう解釈されるべきではないことも、理解されるべきである。この特許の末尾の請求項で列挙される任意の用語が単一の意味と一致する方法で本明細書において言及される程度に、これは読者を混乱させないように明確さのみのために行われ、このような請求項用語は、暗示またはその他の方法によって単一の意味に限定されるように意図されるものではない。
【符号の説明】
【００５７】
10  カメラビジョンシステム
12  目標被写体
14  第1カメラ
16  外部距離センサ
18  システムコントローラ
20  三次元座標系
22  第2カメラ
30  プロセッサ
32  メモリ
34  ROM
36  RAM
40  カメラコントローラ
42  カメラレンズアクチュエータ
50  内部パラメータデータベース
52  画像データベース
100  カメラビジョンシステム内部較正ルーチン
150  画像撮影および3D再構築ルーチン
【図１】
2020061736.tif 000003
【図２】
2020061736.tif 000004
【図３】
2020061736.tif 000005
【図４】
2020061736.tif 000006
【図５】
2020061736.tif 000007
【図６】
2020061736.tif 000008
【外国語明細書】
2020061736000001.pdf