opencv入门6:蒙版-masking

作者: HaveyYeung | 来源:发表于2018-01-31 11:56 被阅读108次

    使用蒙板可以让我们只关注感兴趣的图像部分。
    掩码的关键点是它们允许我们将计算的重点仅限于感兴趣的图像区域.


    图·1 "图·2"
    import numpy as np 
    import argparse
    import cv2
    
    ap = argparse.ArgumentParser()
    ap.add_argument("-i","--image",required =True, help="Path to the image")
    args = vars(ap.parse_args())
    
    image = cv2.imread(args["image"])
    cv2.imshow("Original",image)
    
    mask = np.zeros(image.shape[:2],dtype ="uint8")
    (cx,cy) = (image.shape[1]//2,image.shape[0]//2)
    cv2.rectangle(mask,(cx-250,cy-150),(cx+200 ,cy+150),255,-1)
    cv2.imshow("Mask",mask)
    
    masked = cv2.bitwise_and(image,image,mask=mask)
    #bitwise_and方法前两个参数是图像本身
    掩码只考虑掩码大于零的原始图像中的像素
    cv2.imshow("Mask applied to image",masked)
    cv2.waitKey(0)
    
    mask = np.zeros(image.shape[:2], dtype = "uint8")
    cv2.circle(mask, (cx, cy), 100, 255, -1)
    masked = cv2.bitwise_and(image, image, mask = mask)
    cv2.imshow("Mask", mask)
    cv2.imshow("Mask Applied to Image", masked)
    cv2.waitKey(0)
    

    现实不似你所见。
    更多文章请关注我的博客:https://harveyyeung.github.io

    相关文章

      网友评论

        本文标题:opencv入门6:蒙版-masking

        本文链接:https://www.haomeiwen.com/subject/wbukzxtx.html