Manipulation des Images Avec OpenCV
Introduction
Dans le monde du traitement d’images, il est essentiel de comprendre les bases. Cet article explore les opérations clés dans OpenCV, vous guidant à travers la création d’images numériques, la manipulation de la lecture et de l’affichage d’images, et la compréhension des conversions d’espace colorimétrique. Equipons-nous des connaissances nécessaires pour naviguer dans les subtilités de la manipulation d’images.
Compréhension des Images Numériques
Une image numérique est comme une mosaïque composée de pixels, chacun ayant des coordonnées spatiales spécifiques (x, y) et des valeurs d’intensité.
Les images en niveaux de gris, utilisant des valeurs de 0 à 255, diffèrent des images RVB, qui mélangent les canaux Rouge, Vert et Bleu pour créer une gamme de couleurs. La connaissance de ces bases prépare le terrain pour une exploration plus approfondie.
Comment Lire et Afficher des Images dans OpenCV
Time Needed : 00 hours 30 minutes
Suivez attentivement la série d’instructions suivante pour obtenir les meilleurs résultats de ce didacticiel. Cela va être intéressant, alors prenez une tasse de café et commençons.
Étape 1 : Importation d’OpenCV et lecture d’images
Pour commencer, nous importons le
imread
méthode de la bibliothèque OpenCV en Python. Nous procédons ensuite à l’importation de l’image “voiture” depuis le dossier image du projet.Pour ce tutoriel, j’ai utilisé une image de voiture, que vous pouvez réunir avec mon fichier source en cliquant sur ici ou, utilisez le bouton de téléchargement au bas de cette page. Néanmoins, vous pouvez utiliser n’importe quelle image de votre choix.Les opérations ci-dessus peuvent être effectuées comme indiqué dans l’image suivante:Le résultat fournit un aperçu de la structure de l’image : un tableau d’entiers non signés de 8 bits avec des dimensions (1024, 1024, 3). Ce tableau permet une manipulation flexible.Étape 2 : Accéder aux valeurs de pixels
En explorant le tableau, nous examinons les valeurs du premier pixel aux coordonnées (0, 0). Les pixels, représentés par trois valeurs, dévoilent des informations d’intensité propres à chaque canal.
Étape 3 : Affichage des images
Matplotlib et OpenCV proposent des méthodes d’affichage d’images. OpenCV
imshow
La méthode fonctionne dans l’ordre BGR, nécessitant une attention particulière lors de la transition vers Matplotlib. Une conversion de BGR en RVB garantit une représentation précise.La comparaison ci-dessus est démontrée avec les images suivantes :Comprendre les différences entre les représentations BGR et RVB facilite une intégration transparente.Étape 4 : Conversion entre les espaces colorimétriques
La conversion de l’espace colorimétrique, une compétence cruciale, utilise OpenCV
cvtColor
méthode. La transition entre BGR et RVB est démontrée, soulignant l’importance de l’ordre des canaux.Ceci est illustré dans l’image suivante :Étape 5 : Conversion des niveaux de gris
En allant encore plus loin, la conversion de RVB en niveaux de gris produit une image monocanal.Cela peut être vu dans l’image suivante :Une approche nuancée de la conversion des niveaux de gris est présentée, garantissant une compréhension claire des transformations d’image.
Si vous préférez copier des parties du code ou lire l’intégralité du contenu du fichier source téléchargé avant de l’extraire et de l’exécuter, consultez le code source brut ci-dessous.
Si vous préférez copier des parties du code ou lire l’intégralité du contenu du fichier source téléchargé avant de l’extraire et de l’exécuter, consultez le code source brut ci-dessous.
De plus, le code a été écrit dans un Jupyter Notebook, et non avec le fichier Python par défaut, vous devrez peut-être en prendre note, car il détermine comment le code doit être compilé pour éviter tout souci (dans Jupyter Notebook ou Jupyter Lab) et ne pas utiliser le compilateur de Python par défaut.
from cv2 import imread
img = imread('Images/car.jpg') # Lire une image RGB
print('Datatype:', img.dtype, '\nDimensions:', img.shape) # Vérifier le type de donnée et ses dimensions
Visitez Mon GitHub A https://github.com/N-Elmer/import matplotlib.pyplot as plt # Utilisez Matplotlib
plt.imshow(img)
plt.title('Displaying image using Matplotlib')
plt.show()
Visitez Mon GitHub A https://github.com/N-Elmer/from cv2 import imshow, waitKey # Utilisez OpenCV
imshow('Displaying image using OpenCV', img)
waitKey(0)
Visitez Mon GitHub A https://github.com/N-Elmer/from cv2 import cvtColor, COLOR_BGR2RGB # Convertir BGR en RGB
img_rgb = cvtColor(img, COLOR_BGR2RGB) # Afficher l'image converti
plt.imshow(img_rgb)
plt.show()
Visitez Mon GitHub A https://github.com/N-Elmer/from cv2 import COLOR_RGB2GRAY # Convertir RGB en niveaux de gris
img_gray = cvtColor(img_rgb, COLOR_RGB2GRAY) # Affichez l'image en niveaux de gris
imshow('Grayscale Image', img_gray)
waitKey(0)
Visitez Mon GitHub A https://github.com/N-Elmer/Conclusion sur la Manipulation des Images Avec OpenCV
Ce didacticiel explore les opérations fondamentales d’OpenCV, vous permettant de comprendre la formulation d’images, d’accéder aux valeurs de pixels, d’afficher des images et de naviguer dans les conversions d’espace colorimétrique.
Grâce à ces connaissances, vous êtes prêt à vous attaquer à des tâches complexes de traitement d’image. Si vous avez des questions, n’hésitez pas à les poser dans les commentaires ci-dessous. Plongez dans le monde du traitement d’images en toute confiance !
Quelques Questions Fréquemment Posées et Leurs Réponses
Qu’est-ce qu’OpenCV et quel est son rapport avec la manipulation d’images ?
OpenCV est une puissante bibliothèque de vision par ordinateur largement utilisée pour le traitement d’images.
Pouvez-vous fournir des exemples pratiques de traitement d’images à l’aide d’OpenCV ?
Oui, il existe des exemples pratiques illustrant le prétraitement d’images avec OpenCV.
Comment OpenCV peut-il être utilisé pour la manipulation d’images en temps réel en Python ?
OpenCV permet la manipulation d’images en temps réel en capturant des images et en appliquant des modifications en Python.
Quelles sont les notions essentielles en vision par ordinateur et en traitement d’images pour les débutants ?
Un guide du débutant sur la vision par ordinateur et le traitement d’images avec OpenCV simplifie les concepts essentiels dans ces domaines de pointe.
Références OpenCV
- medium.com : Manipulation d’images en temps réel en Python…
- organisation opencv : Vision par ordinateur et traitement d’images : Guide du débutant…
- analyticsvidhya.com : Traitement d’images – Avec des exemples pratiques…
- analyticsvidhya.com : Guide du débutant pour le traitement d’images avec OpenCV et Python…
Autres articles intéressants
- Guide OpenCV Pour débutant : Explorez les tutoriels officiels OpenCV pour un apprentissage approfondi de l’installation, des fonctionnalités de base et du traitement d’images. Plongez dans…
- Comment utiliser la fonction Magic Edit de Canva pour des améliorations photo impressionnantes : Libérez votre créativité avec la fonction Magic Edit de Canva pour une amélioration photo sans…