カメラのキャリブレーションとは

1. カメラキャリブレーションの定義と機能

カメラのキャリブレーションとは、キャリブレーション ボードを使用して、単一または複数のカメラの内部パラメータ、外部パラメータ、およびレンズ歪みパラメータを計算することを指します。

効果:

歪んだ画像を通常の画像に復元し、その後のステッチや SLAM などの基礎を築きます。

マルチカメラ キャリブレーションでは、すべてのカメラ出力を同じ座標系に変換できます。

カメラのキャリブレーションは 3D ビジョン アプリケーションにおいて不可欠なステップであり、ロボット アーム、ロボットの位置決めとマッピング、自動運転車やスマートフォンのキャリブレーション、画像のスティッチング、および 3D 再構成で広く使用されています。

2. カメラのキャリブレーションが必要な理由

現実世界は 3 次元ですが、カメラで捉えた画像は 2 次元であり、距離や奥行きの情報は必ず失われます。数学的問題を抽象化すると、カメラは、入力された 3 次元シーンを 2 次元画像 (グレースケール画像またはカラー画像) にマッピングするマッピング関数に似ているということになります。

カメラのキャリブレーションは、数学的モデルと数学的手法を使用して、この複雑なマッピング関数を近似するプロセスです。キャリブレーション済みのカメラはこのプロセスを記述する機能を備えているため、本質的に失われた距離情報の復元である深度復元、3 次元再構築などのさまざまなコンピューター ビジョン タスクに使用できます。

3. カメラのキャリブレーションとは何ですか?

実際のアプリケーションでは、カメラのキャリブレーションは単眼カメラのキャリブレーションと多眼(双眼)カメラのキャリブレーションに分けることができます。

3.1単眼カメラのキャリブレーション

このようなアプリケーションでは通常、カメラ自体のイメージング モデル パラメータと、特定の座標系に対するカメラの相対姿勢が必要です。

(1) 例えば、下図のような単純なシーンでは、カメラの向きと地面からの高さがわかれば、カメラの特定のピクセルに対応する物体までの距離を大まかに推定できます(実際には、 、オブジェクトの高さを測定することも、オブジェクトが地面に近い場合も測定できます)。このモデルは、前車までの距離の推定など、いくつかの単純な車両タスクでより一般的です。

 

(2) もう一つの例は、業界で比較的一般的なロボット制御であり、ロボットの座標系とその視覚座標系の間の相対的な位置関係を確立する必要があります (つまり、ハンドアイキャリブレーション)。

(3) もう 1 つの例は、単眼深度回復です従来の単眼深度回復では、通常、固定サイズのオブジェクトをマーカーとして使用し、オブジェクトを移動して、カメラ内のオブジェクトのサイズによって実際の撮影距離を判断します。 

 (4) もう一つの例は、いくつかの SLAM 手法です。現在、一部の自己教師あり深層学習手法では、相対姿勢情報も教師として使用します (ManyDepth など)。

 3.2 多眼(双眼)カメラのキャリブレーション

このタイプのアプリケーションはより一般的であり、通常はカメラ自体の情報、各カメラ間の相対姿勢情報、および場合によってはカメラと固定座標系の間の関係を取得する必要があります。

(1) たとえば、車載パノラマ ビューでは、最終的なパノラマ ステッチ結果を得るために、4 台のカメラの相対的な姿勢と地面座標系との関係を取得する必要があります。

(2) 別の例は、AR アプリケーション、またはより複雑なカメラ アレイです。

 

おすすめ

転載: blog.csdn.net/panpan_jiang1/article/details/128995620