calib3d_findChessboardCornersSB_vector

[32/64bit] チェスボードの内側の角の位置を、セクターベースのアプローチで求めます。

calib3d_findChessboardCornersSB_vector p1,p2,p3,p4,p5

p1 = sptr : IntPtr image
p2 = ARGS_SIZE : Size patternSize
p3 = sptr : IntPtr corners
p4 = int : int flags
p5 = var : out int returnValue

(プラグイン / モジュール : OpenCvSharpExtern.dll)

解説

この関数は,findChessboardCorners に類似していますが,ボックスフィルタで近似された局所的なラドン変換を利用しており,あらゆる種類のノイズに対してより頑健で,大きな画像に対してより高速であり,チェスボード内部のコーナーのサブピクセルの位置を直接返すことができます.この手法は、論文[61]「Accurate Detection and Localization of Checkerboard Corners for Calibration」に基づいています。


この方法は,論文 [61] "Accurate Detection and Localization of Checkerboard Corners for Calibration" に基づいており,返されるサブピクセル位置は cornerSubPix で返されるものよりも正確で,要求の厳しいアプリケーションに対して正確なカメラキャリブレーションを可能にすることを示しています.これらのフラグは、カメラの視野を超えるキャリブレーションパターンを使用する際に役立ちます。このような大規模なパターンでは、画像の境界にできるだけ近いコーナーを利用できるため、より正確なキャリブレーションが可能になります。この機能では、さまざまな環境下での検出を向上させるために、ボード全体の周囲にチェッカーボードの1つのフィールドとほぼ同じ幅の白いボーダーを設ける必要があります。また、局部的なラドン変換のため、ボードの外側に位置するフィールドのコーナーには丸い角を使用することが有効です。次の図は、検出に最適なチェッカーボードの例です。ただし、他のチェッカーボードを使用することも可能です。








チェッカーボード

元関数名(C#): calib3d_findChessboardCornersSB_vector
元DLLエクスポート名: calib3d_findChessboardCornersSB_vector
参照元CSファイル: Internal\PInvoke\NativeMethods\calib3d\NativeMethods_calib3d.cs
▼ C言語側関数定義
CVAPI(ExceptionStatus) calib3d_findChessboardCornersSB_vector(
    cv::_InputArray *image, MyCvSize patternSize, std::vector<cv::Point2f> *corners, int flags, 
    int *returnValue)
{
    BEGIN_WRAP
    *returnValue = cv::findChessboardCornersSB(*image, cpp(patternSize), *corners, flags) ? 1 : 0;
    END_WRAP
}

情報

プラグイン / モジュールOpenCvSharpExtern.dll
バージョン1.00
作成日2021/11/30
著作者inovia
URLhttps://hsp.moe/
備考#include "OpenCvSharpExtern32.as"
#include "OpenCvSharpExtern64.as"
使用するHSPランタイムのビット数に合わせたインクルードファイルを使用すること
タイプOpenCVSharpラッパーDLL
グループNativeMethods_calib3d
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\OpenCvSharpExtern.hs