[PYTHON] Kanten mit OpenCV extrahieren (Laplace, Sobel, Canny)

Vorverarbeitung von Bildern für maschinelles Lernen

Damit der Computer versteht, "was sich im Bild befindet", wird häufig der Prozess des Zeichnens des Umrisses des Erkennungsziels und des Findens des Merkmals daraus ausgeführt.

In diesem Artikel werde ich das Ergebnis der Gliederung mit Python + OpenCV auf drei Arten veröffentlichen.

Das Originalbild

Wir haben zwei Bilder für die Verarbeitung vorbereitet.

Natur und Mensch. nature.jpg

lady.jpg

Code

Hier geht es darum.

edge.py


import cv2

img = cv2.imread('xxxxxxx.jpg')

#Kantenerkennung
edge_laplacian = cv2.Laplacian(img, -1)#Laplace
edge_sobel = cv2.Sobel(img, -1, 0, 1)#Sobel
edge_canny = cv2.Canny(img, 10.0, 200.0)#Canny

#Exportdatei
cv2.imwrite('laplacian.jpg', edge_laplacian)
cv2.imwrite('sobel.jpg', edge_sobel)
cv2.imwrite('canny.jpg', edge_canny)

Ausgabeergebnis

Natur

Laplace ↓ laplacian.jpg Sobel ↓ sobel.jpg Canny ↓ canny.jpg

Mensch

Laplace ↓ laplacian.jpg Sobel ↓ sobel.jpg Canny ↓ canny.jpg

Recommended Posts

Kanten mit OpenCV extrahieren (Laplace, Sobel, Canny)
Kantenextraktion mit Python + OpenCV (Sobel-Filter, Laplace-Filter)
Kantenerkennung (Laplace, Sobel, Canny)
Führen Sie verschiedene Filterungen mit OpenCV durch (Gradient, Highpass, Laplace, Gauß).
Katze zurück mit OpenCV erkennen
Sprites mit OpenCV drehen
Datenerweiterung mit openCV
EXIF mit Schlucken extrahieren
Einfache TopView mit OpenCV
Stolpern Sie mit opencv3 von Homebrew