使用 Python 和 OpenCV 的 Delaunay 三角剖分

Delaunay Triangulation using Python and OpenCV

我正在尝试使用 Python 3.5.2 和 OpenCV 3.1 进行 Delaunay 三角剖分。我正在尝试使用函数 cv2.cv2.Subdiv2D(rect) 但我无法将点添加到 Subdiv 对象。我做错了什么?

import numpy as np
import cv2

point = np.array([[1, 1]])
rect = (0, 0, 10, 10)

# Create an instance of Subdiv2D
subdiv = cv2.Subdiv2D(rect[0])
subdiv.insert(point)

正在抛出此消息:

OpenCV 错误:copyTo 中断言失败(通道()== CV_MAT_CN(dtype)),文件 /Users/jenkins/miniconda/1/x64/conda-bld/work/opencv-3.1.0/modules/core/src/copy.cpp,第 257 行

libc++abi.dylib:终止并出现 cv::Exception 类型的未捕获异常:/Users/jenkins/miniconda/1/x64/conda-bld/work/opencv-3.1.0/modules/core/src/copy.cpp:257:错误:(-215) 通道 ( ) == CV_MAT_CN(dtype) 在函数 copyTo

进程已完成,退出代码为 134(被信号 6 中断:SIGABRT)

我可能错了但不应该是:point = np.array([[1, 1]])?你这样做是在声明一个值为 1 和 1 的数组,而不是一个点数组。

编辑:

尝试将点用作元组:

points_list = []
points_list.append((1,1))

来源:http://www.learnopencv.com/delaunay-triangulation-and-voronoi-diagram-using-opencv-c-python/