Как работает openvv fillpoly - PullRequest
0 голосов
/ 16 мая 2018

Может кто-нибудь объяснить, как работает fill poly в python opencv2? Я не могу найти много запущенных примеров, чтобы попробовать.

То, что я пробую, дает мне исключение как OpenCV Error: Assertion failed (p.checkVector(2, CV_32S) >= 0) in fillPoly, file /builddir/build/BUILD/opencv-2.4.5/modules/core/src/drawing.cpp, line 2037 Traceback (most recent call last): File "<stdin>", line 1, in <module> cv2.error: /builddir/build/BUILD/opencv-2.4.5/modules/core/src/drawing.cpp:2037: error: (-215) p.checkVector(2, CV_32S) >= 0 in function fillPoly . Вот мой простой код.

mask=np.zeros((4, 3))
cv2.fillPoly(mask, [(1,1),(1,2), (2,1), (2,2)], 255)

1 Ответ

0 голосов
/ 16 мая 2018

Ошибка означает, что ей нужно 32-разрядное целое число.

Измените код следующим образом:

mask = np.zeros((4, 3))
cv2.fillConvexPoly(mask, np.array([(1,1),(1,2), (2,1), (2,2)], 'int32'), 255)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...