今天又是踩坑的一天,代码杀我!!!
要实现的功能:想利用opencv获取多个轮廓上及内部元素的坐标,并按照轮廓进行分组;
主要使用的函数:cv2.drawContours();
首先查阅了其他博主的代码,对我有了很大启发,上链接:https://blog.youkuaiyun.com/Starkiron/article/details/120641718
这篇文章里的代码主要是获取了轮廓内部的点,但是没有分组,然后我自己搞了一下分组,有注释乌拉!!!
代码如下:
def contours_in(contours,imagesize):
# contours是轮廓的角点(拐点),一般通过findcontours函数可以获得;
# imagesize是获取轮廓的灰度图像,我要用的图像大小为2048*3072
length = len(contours)#获取轮廓数量,以便分组
inside = []
for i in range(length):
coordinate = []
p = np.zeros(shape=(len(imagesize),len(imagesize[0])))#len函数获取图像的h,w
cv2.drawContours(p, [contours