Caliper を実行するサンプルです。CVL に標準で付属する cvlproj のプロジェクトで、コンパイル・実行します。
Caliper ツールはエッジ(黒→白、白→黒)の位置を検出します。ノギスの役割をし、対象物の辺の位置や幅を測定します。ノギスと同じで、正確な幅や辺を測定するには、対象物の横幅や辺に対して水平(または垂直)に Caliper 領域を指定しなければなりません。よって、最初に PatMax ツールで位置決めを行ってフィクスチャするか、直線フィッティングや円フィッティングと組み合わせて使います。しかし、Caliper は様々な測定の基本のツールと言えます。
caliper.cpp:
ピクセル座標で動作するサンプルです。画像はカメラから取り込みます。
caliper_file.cpp:
ピクセル座標で動作するサンプルです。画像はビットマップファイルを開きます。
caliper_linear.cpp:
グリッドドットのキャリブレーションを行って、線形変換の座標で動作するサンプルです。原点移動、座標軸の回転やスキュー、縦横のスケール変化、に対応します。レンズの湾曲歪みは対応しません。
caliper_3rd.cpp:
グリッドドットのキャリブレーションを行って、多項式変換(3次)の座標で動作するサンプルです。線形に加えて、レンズの湾曲歪みも対応します。遠近歪みは、計算式上は、対応しません。画像変換は行わず、計算だけなので、処理は高速です。
caliper_calib2.cpp:
チェッカーボードのキャリブレーションを行って、多項式変換(カメラモデル)の座標で動作するサンプルです。線形とレンズ歪みに加えて、遠近歪みも対応します。画像変換を伴うので、その処理時間がかかります。
製品:CVL
動作確認バージョン:7.0
言語:VC++、VS2005