[PYTHON] Détection des bords (Laplacien, Sobel, Canny)

Environnement d'exécution

Google Colaboratory

Préparation du chargement d'images avec Google Colaboratory

python


from google.colab import files
from google.colab import drive
drive.mount('/content/drive')

Chargement des bibliothèques requises

python


import cv2 #opencv
import matplotlib.pyplot as plt 
%matplotlib inline

Préparation d'image

python


img = plt.imread("/content/drive/My Drive/Colab Notebooks/img/Lenna.bmp")
gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)

code

python


#Image originale
plt.subplot(2,3,1)
plt.axis('off') 
plt.title("Original", fontsize=10)
plt.imshow(gray)

#Laplacien
plt.subplot(2,3,4)
plt.axis('off') 
plt.title("Laplacian", fontsize=10)
dst = cv2.Laplacian(gray,ddepth = -1)
plt.imshow(dst)

#Sobel
plt.subplot(2,3,5)
plt.axis('off') 
plt.title("Sobel", fontsize=10)
dst = cv2.Sobel(gray,ddepth = -1,dx = 0,dy = 1) #dx,Déterminez le nombre de caractères différentiels avec dy.
plt.imshow(dst)

#Sobel
plt.subplot(2,3,6)
plt.axis('off') 
plt.title("Canny", fontsize=10)
dst = cv2.Canny(gray,threshold1 = 64,threshold2 = 128)
#Les plus petits seuils 1 et 2 sont utilisés pour joindre les bords.
#Les plus grands sont utilisés pour la détection initiale des bords plus forts.

plt.imshow(dst)
plt.show()

résultat

image.png

Recommended Posts

Détection des bords (Laplacien, Sobel, Canny)
Extraire des arêtes avec OpenCV (Laplacian, Sobel, Canny)
Extraction de bords avec python + OpenCV (filtre Sobel, filtre laplacien)
Essayez la détection des bords avec OpenCV
Détection des bords en temps réel avec OpenCV
cv2.Canny (): Rend le réglage de la détection de bord par la méthode Canny agréable
[Python] Utilisation d'OpenCV avec Python (détection des bords)