grabcut代碼

grabcut代碼(python代碼)

import numpy as np
import cv2
from matplotlib import pyplot as plt

img=cv2.imread(‘C:\Users\86198\Desktop\1.jpeg’)
mask=np.zeros(img.shape[:2],np.uint8)

bgdModel=np.zeros((1,65),np.float64)
fgdModel=np.zeros((1,65),np.float64)

roi=cv2.selectROI(windowName=「roi」,img=img,showCrosshair=True,fromCenter=False)

rect=roi
cv2.grabCut(img,mask,rect,bgdModel,fgdModel,5,cv2.GC_INIT_WITH_RECT)

mask2=np.where((mask2)|(mask0),0,1).astype(‘uint8’)
img=img*mask2[:,:,np.newaxis]

plt.imshow(img),plt.colorbar(),plt.show()

在這裏插入圖片描述

結果:
在這裏插入圖片描述