calib3d_computeCorrespondEpilines_array2d

[32/64bit] ステレオペアの画像中の点に対して,もう片方の画像中の対応するエピラインを計算します.

calib3d_computeCorrespondEpilines_array2d p1,p2,p3,p4,p5

p1 = var : [In] Point2d[] points
p2 = int : int pointsSize
p3 = int : int whichImage
p4 = var : double* F
p5 = var : [In, Out] Point3f[] lines

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

解説

この関数は,ステレオペアの2つの画像のうち,片方の画像内の各点に対して,もう片方の画像内の対応するエピポーラ線の方程式を求めます.基本行列の定義( findFundamentalMat 参照)から,1枚目の画像中の点\(p^{(1)}_i\)に対する2枚目の画像中の線\(l^{(2)}_i\)は,次のように計算されます(whichImage=1 の場合).\また、whichImage=2の場合、\(p^{(2)}_i\)から、\(l^{(1)}_i\)が計算されます:\[l^{(1)}_i = F^T p^{(2)}_i\]線の係数は、ある尺度まで定義されます。a_i^2+b_i^2=1\)となるように規格化されています。

元関数名(C#): calib3d_computeCorrespondEpilines_array2d
元DLLエクスポート名: calib3d_computeCorrespondEpilines_array2d
参照元CSファイル: Internal\PInvoke\NativeMethods\calib3d\NativeMethods_calib3d.cs
▼ C言語側関数定義
CVAPI(ExceptionStatus) calib3d_computeCorrespondEpilines_array2d(
    cv::Point2d *points, int pointsSize,
    int whichImage, double *F,
    cv::Point3f *lines)
{
    BEGIN_WRAP
    const cv::Mat_<cv::Point2d> pointsM(pointsSize, 1, points);
    const cv::Mat_<double> FM(3, 3, F);
    cv::Mat_<cv::Point3f> linesM(pointsSize, 1, lines);
    cv::computeCorrespondEpilines(pointsM, whichImage, FM, linesM);
    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