Ich habe versucht, eine binäre Segmentierung für meine Projektarbeit zu implementieren, aber ich bin mit dem binären Segmentierungscode festgefahren. Ich möchte nur eine kontinuierliche Segmentierung eines Players und Hintergrund im Bild wie this Bild (eine ordnungsgemäße Segmentierung einer Hand).Binäre Segmentierung eines komplexen Bildes in Python.
imgort numpy as np
import cv2
from matplotlib import pyplot as plt
img = cv2.imread('main-qimg-f32bfc3d08d8809a8b3bb7d91c5d183d.png')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
ret, thresh =
cv2.threshold(gray,0,255,cv2.THRESH_BINARY_INV+cv2.THRESH_OTSU)
%pylab inline
import matplotlib.image as mpimg
imgplot_0 = plt.imshow(img)
plt.show()
imgplot = plt.imshow(thresh)
plt.show()
aber dieser Code am Ende gibt mir this Bild. Das Originalbild und das Bild, das Sie erhalten, nachdem Sie den obigen Code ausgeführt haben.
Wie Sie sehen können, ist die binäre Segmentierung nicht gut. Ich möchte den Schuss des Spielers (mit Spieler) aus dem Bild extrahieren. Vielleicht liegt es an Rauschen und störenden Kanten im Bild.
Was muss ich in meinem Code ändern, um eine korrekte Segmentierung zu erhalten?
Vielen Dank im Voraus!