Main Content

ステレオ カメラ キャリブレーター アプリの使用

ステレオ カメラ キャリブレーターの概要

ステレオ カメラ キャリブレーター アプリを使用してステレオ カメラをキャリブレーションし、イメージから深度を復元するために使用できるようにします。ステレオ システムは、カメラ 1 とカメラ 2 の 2 つのカメラで構成されます。アプリは、個々のカメラのパラメーターを推定することもインポートすることもできます。このアプリは、カメラ 1 に対するカメラ 2 の位置と向きも計算します。

ステレオ カメラ キャリブレーター アプリは、最大 95 度の視野 (FOV) をもつカメラ レンズをキャリブレーションできます。また、アプリはステレオ カメラ パラメーターを含むオブジェクトを生成します。このオブジェクトを使用して、次のことができます。

  • 関数 rectifyStereoImages を使用してステレオ イメージを平行化する。

  • 関数 reconstructScene を使用して 3 次元シーンを再構成する。

  • 関数 triangulate を使用して、一致するイメージ ポイントのペアに対応する 3 次元位置を計算する。

ステレオ カメラ キャリブレーター アプリで使用される一連のキャリブレーション関数は、ステレオ カメラ キャリブレーションのワークフローを提供します。これらの関数は、MATLAB® ワークスペースで直接使用できます。キャリブレーション関数のリストについては、カメラのキャリブレーションを参照してください。

Flow chart of process, prepare, add, calibrate, evaluate, adjust parameters, and export.

次のワークフローに従い、アプリを使用してステレオ カメラをキャリブレーションします。

場合によっては、既定値が適切に機能するため、パラメーターをエクスポートする前に改善を行う必要はありません。また、MATLAB ワークスペースでカメラ キャリブレーション関数を直接使用して改善を行うこともできます。関数の一覧については、カメラのキャリブレーションを参照してください。

キャリブレーション パターンの選択

ステレオ カメラ キャリブレーター アプリは、チェッカーボード、円グリッド、およびカスタム検出器のパターンをサポートしています。これらの各パターンの詳細については、Calibration Patternsを参照してください。

キャリブレーション イメージのキャプチャ

最良のキャリブレーション結果を得るには、10 ~ 20 個のキャリブレーション パターンのイメージを使用します。キャリブレーターには少なくとも 3 個のイメージが必要です。非圧縮のイメージまたは PNG などの可逆圧縮形式を使用します。キャリブレーターが機能するには、キャリブレーション パターンとカメラの設定が一連の要件を満たしていなければなりません。カメラの設定およびイメージのキャプチャの詳細については、Prepare Camera and Capture Images For Camera Calibrationを参照してください。

ステレオ カメラ キャリブレーター アプリの使用

アプリを開く

  • MATLAB ツールストリップ: [アプリ] タブの [イメージ処理とコンピューター ビジョン] セクションで、[ステレオ カメラ キャリブレーター] アイコンをクリックします。

  • MATLAB コマンド プロンプト: stereoCameraCalibrator と入力します。

イメージ ペアの追加およびカメラ モデルの選択

キャリブレーションを開始するには、イメージを追加しなければなりません。フォルダーから保存済みのイメージを追加したり、カメラから直接イメージを追加したりできます。キャリブレーターはイメージを解析し、イメージがキャリブレーターの要件を満たしていることを確認します。次に、キャリブレーターはパターン上の点を検出します。カメラの設定およびイメージのキャプチャの詳細については、Prepare Camera and Capture Images For Camera Calibrationを参照してください。

 ファイルからのイメージの追加

イメージが読み込まれると、[イメージとパターンのプロパティ] ダイアログが表示されます。キャリブレーターがキャリブレーション パターンを解析する前に、パターン構造を検出しイメージ プロパティを設定できるようにキャリブレーション パターンを選択しなければなりません。このダイアログの詳細については、キャリブレーション パターンの選択とプロパティの設定を参照してください。

 イメージの解析

 イメージと検出点の表示

 内部パラメーター

キャリブレーション

承認されたイメージ ペアが満足のいく状態であれば、[キャリブレーション] タブの [キャリブレーション] ボタンをクリックします。既定のキャリブレーション設定では、カメラ パラメーターの最小セットを想定します。まず、既定の設定でキャリブレーションを実行します。結果を評価した後、設定を調整し、イメージを追加または削除してから、再度キャリブレーションを行うことで、キャリブレーションの精度を改善できます。

 最適化

キャリブレーション結果の評価

再投影誤差を調べたり、カメラの外部パラメーターを調べたり、歪み補正後のイメージを表示したりすることで、キャリブレーションの精度を評価できます。最良のキャリブレーション結果を得るには、3 つの評価方法すべてを使用します。

Camera calibration results, displaying undistorted image, reprojection errors chart, and camera extrinsics diagram

 再投影誤差の評価

 外部パラメーターの可視化の検証

 平行化されたイメージの表示

キャリブレーションの改善

キャリブレーションを改善するために、誤差の大きいイメージを削除したり、イメージを追加したり、キャリブレーター設定を変更したりできます。

次の場合は、さらにイメージ ペアを追加することを検討します。

  • イメージ ペアが 10 個未満。

  • キャリブレーション パターンが、イメージ フレームを十分にカバーしていない。

  • カメラに対するキャリブレーション パターンの向きの変化が十分でない。

次のようなイメージの場合は、イメージ ペアを削除することを検討します。

  • 平均再投影誤差が大きい。

  • ぼやけている。

  • カメラ面に対して 45 度を超える角度のキャリブレーション パターンが含まれている。

    Calibration pattern at angle greater than 45 degrees to the camera plane.

  • キャリブレーション パターンの点が誤って検出されている。

 半径方向歪み係数の数の変更

 せん断の計算

 円周方向歪みの計算

カメラ パラメーターのエクスポート

キャリブレーションの精度に問題がなければ、[カメラ パラメーターのエクスポート] を選択します。カメラ パラメーターを MATLAB ワークスペース内のオブジェクトに保存してエクスポートするか、カメラ パラメーターを MATLAB スクリプトとして生成することができます。

 カメラ パラメーターのエクスポート

 MATLAB スクリプトの生成

参照

[1] Zhang, Z. “A Flexible New Technique for Camera Calibration”. IEEE Transactions on Pattern Analysis and Machine Intelligence. 22, no. 11 (November 2000): 1330–34. https://doi.org/10.1109/34.888718.

[2] Heikkila, J., and O. Silven. “A Four-step Camera Calibration Procedure with Implicit Image Correction.” In Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 1106–12. San Juan, Puerto Rico: IEEE Comput. Soc, 1997. https://doi.org/10.1109/CVPR.1997.609468.

参考

アプリ

関数

オブジェクト

関連する例

詳細