#python #image #opencv #image-segmentation
#python #изображение #opencv #изображение-сегментация
Вопрос:
Я уже сегментировал изображение на суперпиксели, используя slic от skimage. Теперь я хочу использовать grabcut для суперпикселей. Как мне это сделать?
from skimage.segmentation import slic
from skimage.util import img_as_float
from skimage import io
import matplotlib.pyplot as plt
import argparse
import cv2
import numpy as np
ap = argparse.ArgumentParser()
ap.add_argument("-i", "--image", required = True, help = "Path to the image")
args = vars(ap.parse_args())
image = img_as_float(io.imread(args["image"]))
for numSegments in (100, 500):
segments = slic(image, n_segments = numSegments, sigma = 5)
bgdModel = np.zeros((1,65),np.float64)
fgdModel = np.zeros((1,65),np.float64)
cv2.grabCut(segments, bgdModel, fgdModel, 5)
plt.imshow(segments)