[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 |
| URL | https://hsp.moe/ |
| 備考 | #include "OpenCvSharpExtern32.as"
#include "OpenCvSharpExtern64.as" 使用するHSPランタイムのビット数に合わせたインクルードファイルを使用すること |
| タイプ | OpenCVSharpラッパーDLL |
| グループ | NativeMethods_calib3d |
| 対応環境 |
|
| hs ファイル | hsphelp\OpenCvSharpExtern.hs |