Я пытаюсь выполнить триангуляцию Delaunay с использованием Python 3.5.2 и OpenCV 3.1. Я пытаюсь использовать функцию cv2.cv2.Subdiv2D(rect)
, но я не могу добавить точку в объект Subdiv. Что я делаю не так?Триангуляция Delaunay с использованием Python и OpenCV
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 Ошибка: не удалось Assertion (каналы() == CV_MAT_CN (DTYPE)) в CopyTo, файл/Users/Jenkins/miniconda/1/64/conda- bld/work/opencv-3.1.0/modules/core/src/copy.cpp, строка 257
libC++ abi.dylib: завершение с неперехваченным исключением типа cv :: Исключение:/Пользователи/jenkins/miniconda /1/x64/conda-bld/work/opencv-3.1.0/modules/core/src/copy.cpp:257: ошибка: (-215) channels() == CV_MAT_CN (dtype) в функции copyTo
Процесс завершен с кодом выхода 134 (прерывается сигналом 6: SIGABRT)
нет никакой разницы, если у меня есть только один пункт в массиве, но ваш подход лучше поэтому я редактировал свой вопрос. Но это не решает мою проблему. – hory
Отредактировано решение – NAmorim
Спасибо! Наконец он работает. Как вы поняли эту идею? Я всегда думал, что только разница между кортежами и списками состоит в том, что списки являются динамическими. – hory