C# 如何应用OpenCvSharp FitLine
我正在使用C语言,无法找到如何应用FitLine方法C# 如何应用OpenCvSharp FitLine,c#,opencvsharp,C#,Opencvsharp,我正在使用C语言,无法找到如何应用FitLine方法 public static void Apply(Bitmap bitmap) { using (Mat source = bitmap.ToMat()) { var output = new List<OpenCvSharp.CPlusPlus.Vec4f>(); // I don't know which variable is accepted. Cv2.FitLine(sou
public static void Apply(Bitmap bitmap)
{
using (Mat source = bitmap.ToMat())
{
var output = new List<OpenCvSharp.CPlusPlus.Vec4f>(); // I don't know which variable is accepted.
Cv2.FitLine(source, OutputArray.Create(output), DistanceType.L2, 0, 0.01, 0.01);
Debug.WriteLine(output);
}
}
如何正确应用FitLine?我刚刚基于此url模拟了下面的测试,它似乎可以工作。此示例使用OpenCvSharp 3.1 列表点=新列表; 点。添加新点2F3、3; 点。添加新点2F4,4; 点。添加新点2F5、5; Line2D line=Cv2.FitLinepoints,DistanceTypes.L2,0,0.01,0.01;
using (Mat source = bitmap.ToMat())
{
var input = new List<OpenCvSharp.CPlusPlus.Point2f>();
for (int i = 0; i < source.Width; i++)
{
for (int j = 0; j < source.Height; j++)
{
if (source.At<byte>(i, j) > 0)
input.Add(new Point2f(i, j));
}
}
var output = new List<OpenCvSharp.CPlusPlus.Vec4f>();
Cv2.FitLine(InputArray.Create(input), OutputArray.Create(output), DistanceType.L2, 0, 0.01, 0.01);
Debug.WriteLine(output);
return source.ToBitmap();
}