public static Point3f[] ComputeCorrespondEpilines(IEnumerable<Point2d> points,
int whichImage, double[,] F)
{
if (points == null)
throw new ArgumentNullException(nameof(points));
if (F == null)
throw new ArgumentNullException(nameof(F));
if (F.GetLength(0) != 3 && F.GetLength(1) != 3)
throw new ArgumentException("F != double[3,3]");
Point2d[] pointsArray = EnumerableEx.ToArray(points);
Point3f[] lines = new Point3f[pointsArray.Length];
NativeMethods.calib3d_computeCorrespondEpilines_array2d(
pointsArray, pointsArray.Length,
whichImage, F, lines);
return lines;
}
/// <summary>