Opencv FillconvexPoly函数给定一个多边形的角点(按顺序),就可以把角点内的多边形填充成想要的颜色,但是一个问题是角点之间的连线填充不填充,为了验证这个问题,写了几行脚本加以验证,又到了大家最喜欢的上代码时间了:
import cv2
import numpy as np
import matplotlib.pyplot as plt
img = np.zeros((100, 100), dtype = np.int8)
print img
print '\n.......\n'
#four points of a monotonic polygon
points = np.array([[1, 1], [1, 98], [98, 98], [98, 1]])
cv2.fillConvexPoly(img, points, 1)
print img
plt.imshow(img, cmap = 'gray')
plt.show()
结果如图:
结论:很明显四个角点之间的连线也被填充成想要的颜色了。