三角形填充opencv

时间:2018-08-16 10:41:59

标签: python opencv geometry ellipse

opencv中有Rectangle填充,圆形和椭圆形填充,但是谁能说出如何使用opencv,python填充图像中的三角形。

2 个答案:

答案 0 :(得分:5)

填充三角形形状的最简单解决方案是在OpenCV中使用绘制轮廓函数。假设我们知道三角形的三个点为“ pt1”,“ pt2”和“ pt3”:

import cv2
import numpy as np

image = np.ones((300, 300, 3), np.uint8) * 255

pt1 = (150, 100)
pt2 = (100, 200)
pt3 = (200, 200)

cv2.circle(image, pt1, 2, (0,0,255), -1)
cv2.circle(image, pt2, 2, (0,0,255), -1)
cv2.circle(image, pt3, 2, (0,0,255), -1)

我们可以将三个点放入一个数组中并绘制轮廓:

triangle_cnt = np.array( [pt1, pt2, pt3] )

cv2.drawContours(image, [triangle_cnt], 0, (0,255,0), -1)

cv2.imshow("image", image)
cv2.waitKey()

这是输出图像。干杯。 Triangle Filling

答案 1 :(得分:1)

您可以绘制一个多边形然后填充它,就像@ZdaR所说。

LatLng