Python cv2.fitLine()方法引发的奇怪错误

Python cv2.fitLine()方法引发的奇怪错误,python,python-3.x,opencv,numpy,computer-vision,Python,Python 3.x,Opencv,Numpy,Computer Vision,我使用cv2.fitLine方法在多个点之间找到一条线段 我有以下错误: 错误:/Users/jenkins/miniconda/1/x64/conda bld/work/opencv-3.1.0/modules/imgproc/src/linefit.cpp:603:error:(-215)npoints2>=0 | | npoints3>=0 下面是我的代码中产生问题的部分: left_points = [...] [vxl, vyl, xl, yl] = cv2.fitLine(np.ar

我使用cv2.fitLine方法在多个点之间找到一条线段

我有以下错误:

错误:/Users/jenkins/miniconda/1/x64/conda bld/work/opencv-3.1.0/modules/imgproc/src/linefit.cpp:603:error:(-215)npoints2>=0 | | npoints3>=0

下面是我的代码中产生问题的部分:

left_points = [...]
[vxl, vyl, xl, yl] = cv2.fitLine(np.array(left_points, dtype=np.int32), cv2.DIST_L2, 0, 0.01, 0.01)
left_points
数组是一个二维坐标数组,如下所示:

[(365635),(377623),(459571),(471560),(394627),(400621),(469563),(47557)]

顺便说一下,我找到了opencv的原始代码文件,它产生了错误:


但它仍然不能解释我应该做什么。请帮助我理解此错误的含义以及如何修复它?

打印您的点阵列,并确保它是Nx2。您在邮件中发布的是元组列表,而不是numpy数组。

对于left_points=您发布的数组,我没有收到错误(虽然没有检查它是否给出了良好的结果,但运行时没有错误)。左_点正是你发布的数组吗?@Soltius不,不完全是那样,但应该是那样的格式。我后来检查,在那个特定的图像帧中,这个数组是空的。我想这是造成问题的原因,但我现在已经修好了,谢谢!