calib3d_initCameraMatrix2D_Mat

[32/64bit] 3D-2D の点の対応関係から,初期のカメラ固有マトリックスを求めます.

calib3d_initCameraMatrix2D_Mat p1,p2,p3,p4,p5,p6,p7

p1 = sptr : IntPtr[] objectPoints
p2 = int : int objectPointsLength
p3 = sptr : IntPtr[] imagePoints
p4 = int : int imagePointsLength
p5 = ARGS_SIZE : Size imageSize
p6 = double : double aspectRatio
p7 = var : out IntPtr returnValue

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

解説

この関数は,カメラキャリブレーション処理のための,初期のカメラ固有マトリクスを推定して返します.現在のところ,この関数は平面的なキャリブレーションパターン(各オブジェクトポイントのz座標が0であるパターン)のみをサポートしています.

元関数名(C#): calib3d_initCameraMatrix2D_Mat
元DLLエクスポート名: calib3d_initCameraMatrix2D_Mat
参照元CSファイル: Internal\PInvoke\NativeMethods\calib3d\NativeMethods_calib3d.cs
▼ C言語側関数定義
CVAPI(ExceptionStatus) calib3d_initCameraMatrix2D_Mat(
    cv::Mat **objectPoints, int objectPointsLength,
    cv::Mat **imagePoints, int imagePointsLength, 
    MyCvSize imageSize, double aspectRatio,
    cv::Mat **returnValue)
{
    BEGIN_WRAP
    std::vector<cv::Mat> objectPointsVec(objectPointsLength);
    for (auto i = 0; i < objectPointsLength; i++)
        objectPointsVec[i] = *objectPoints[i];
    std::vector<cv::Mat> imagePointsVec(imagePointsLength);
    for (auto i = 0; i < objectPointsLength; i++)
        imagePointsVec[i] = *imagePoints[i];

    const auto ret = cv::initCameraMatrix2D(objectPointsVec, imagePointsVec, cpp(imageSize), aspectRatio);
    *returnValue = new cv::Mat(ret);
    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