OpenCV 4.5.3(日本語機械翻訳)
クラス | 公開型 | 公開メンバ関数 | 全メンバ一覧
cv::multicalib::MultiCameraCalibration クラス

Class for multiple camera calibration that supports pinhole camera and omnidirection camera. For omnidirectional camera model, please refer to omnidir.hpp in ccalib module. It first calibrate each camera individually, then a bundle adjustment like optimization is applied to refine extrinsic parameters. So far, it only support "random" pattern for calibration, see randomPattern.hpp in ccalib module for details. Images that are used should be named by "cameraIdx-timestamp.*", several images with the same timestamp means that they are the same pattern that are photographed. cameraIdx should start from 0. [詳解]

#include <multicalib.hpp>

クラス

struct edge
struct vertex

公開型

enum { PINHOLE , OMNIDIRECTIONAL }

公開メンバ関数

MultiCameraCalibration (int cameraType, int nCameras, const std::string &fileName, float patternWidth, float patternHeight, int verbose=0, int showExtration=0, int nMiniMatches=20, int flags=0, TermCriteria criteria=TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 200, 1e-7), Ptr< FeatureDetector > detector=AKAZE::create(AKAZE::DESCRIPTOR_MLDB, 0, 3, 0.006f), Ptr< DescriptorExtractor > descriptor=AKAZE::create(AKAZE::DESCRIPTOR_MLDB, 0, 3, 0.006f), Ptr< DescriptorMatcher > matcher=DescriptorMatcher::create("BruteForce-L1"))
void loadImages ()
void initialize ()
double optimizeExtrinsics ()
double run ()
void writeParameters (const std::string &filename)

詳解

ピンホールカメラと全方位カメラに対応したマルチカメラキャリブレーション用のクラスです。全方位カメラのモデルについては、ccalibモジュール内のomnidir.hppを参照してください.最初に各カメラを個別にキャリブレーションした後、最適化のようなバンドル調整を行って外部パラメータを調整します。今のところ,キャリブレーションには "ランダム "パターンしかサポートしていませんが,詳細はccalibモジュールのrandomPattern.hppを参照してください.使用する画像は "cameraIdx-timestamp.*"という名前でなければなりません。同じタイムスタンプを持つ複数の画像は同じパターンで撮影されたことを意味します。

For more details, please refer to paper B. Li, L. Heng, K. Kevin and M. Pollefeys, "A Multiple-Camera System Calibration Toolbox Using A Feature Descriptor-Based Calibration Pattern", in IROS 2013.


このクラス詳解は次のファイルから抽出されました: