Ich möchte die Silhouette eines Bildes extrahieren, und ich versuche, es zu tun mit der Konturfunktion von matplotlib. Dies ist mein Code:in Python
from PIL import Image
from pylab import *
# read image to array
im = array(Image.open('HOJA.jpg').convert('L'))
# create a new figure
figure()
# show contours with origin upper left corner
contour(im, origin='image')
axis('equal')
show()
Dieses ist mein ursprüngliches Bild:
Und das ist mein Ergebnis:
Aber ich will nur die äußere zeigen Kontur, die Silhouette. Nur die Leselinien in diesem Beispiel.
Wie kann ich es tun? Ich lese die Dokumentation der contour Funktion, aber ich kann nicht bekommen, was ich will.
Wenn Sie eine bessere Art und Weise wissen, dass dies in Python zu tun, erklären Sie mir bitte! (MatplotLib, OpenCV, etc.)
Große Antwort! Und danke für deinen Rat zu Scikit-Image, ich werde es dir anschauen! – Xithias