calib3d_triangulatePoints_array

[32/64bit] この関数は,ステレオカメラによる観測結果を用いて,3次元の点(同次座標)を再構成します.

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

p1 = var : double* projMatr1
p2 = var : double* projMatr2
p3 = var : [In] Point2d[] projPoints1
p4 = int : int projPoints1Size
p5 = var : [In] Point2d[] projPoints2
p6 = int : int projPoints2Size
p7 = var : [In, Out] Vec4d[] points4D

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

解説

注意この関数が動作するためには,すべての入力データが float 型でなければならないことに注意してください.





stereoRectifyからの投影行列が使われた場合,返される点は,最初のカメラの平行化された座標系で表されます. 参照:soreprojectImageTo3D

元関数名(C#): calib3d_triangulatePoints_array
元DLLエクスポート名: calib3d_triangulatePoints_array
参照元CSファイル: Internal\PInvoke\NativeMethods\calib3d\NativeMethods_calib3d.cs
▼ C言語側関数定義
CVAPI(ExceptionStatus) calib3d_triangulatePoints_array(
    double *projMatr1, double *projMatr2,
    cv::Point2d *projPoints1, int projPoints1Size,
    cv::Point2d *projPoints2, int projPoints2Size,
    cv::Vec4d *points4D)
{
    BEGIN_WRAP
    const cv::Mat_<double> projMatr1M(3, 4, projMatr1);
    const cv::Mat_<double> projMatr2M(3, 4, projMatr2);
    const cv::Mat_<cv::Point2d> projPoints1M(projPoints1Size, 1, projPoints1);
    const cv::Mat_<cv::Point2d> projPoints2M(projPoints2Size, 1, projPoints2);
    cv::Mat_<cv::Vec4d> points4DM(1, projPoints1Size, points4D);
    cv::triangulatePoints(projMatr1M, projMatr2M,
        projPoints1M, projPoints2M, points4DM);
    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