如何在cv2.polylines的确切形状之外制作黑色?

时间:2019-04-01 11:20:14

标签: python opencv

我正在使用cv2.MSER_create查找图像的稳定区域。在获得船体并将cv2.polylines放在图像上之后。问题:如何在折线之外将黑色变为如下所示?

Example of before and after filtering

fig, axes = plt.subplots(1, numb, figsize=(12,2.5))
for i in range(numb):
    vis_copy = vis.copy()
    mser = cv2.MSER_create(_min_area = min_a, _max_area=max_a)
    gray = cv2.cvtColor(vis_copy, cv2.COLOR_BGR2GRAY)
    gray_blur = gray#cv2.GaussianBlur(gray, (5,5), 0)

    regions, _ = mser.detectRegions(gray_blur)
    c = sorted(regions, key=cv2.contourArea, reverse=True) 
    hulls = [cv2.convexHull(p.reshape(-1,1,2)) for p in c]
    cv2.polylines(vis_copy, hulls, 1, (0, 255, 0))
    axes[i].imshow(vis_copy)
    axes[i].set_title('Min_a =' +  str(min_a) )
    axes[i].set_xticks([])
    axes[i].set_yticks([])    
    min_a = min_a + step_a

0 个答案:

没有答案