Maison > développement back-end > Tutoriel Python > Comment utiliser la technologie de reconnaissance d'images en Python ?

Comment utiliser la technologie de reconnaissance d'images en Python ?

王林
Libérer: 2023-06-06 08:03:09
original
7478 Les gens l'ont consulté

Dans le domaine de la science et de la technologie contemporaines, la technologie de reconnaissance d'images devient de plus en plus importante. La technologie de reconnaissance d'images nous aide à identifier et à classer les entités extraites d'images numériques, qui sont ensuite utilisées dans l'analyse et la prédiction des données. Python est un langage de programmation très populaire qui convient également parfaitement à la technologie de reconnaissance d'images. Dans cet article, nous apprendrons comment utiliser la technologie de reconnaissance d'image en Python et ce que nous pouvons en faire.

1. Bibliothèque de traitement d'image

Avant de commencer à utiliser la technologie de reconnaissance d'image, il est préférable de comprendre quelques connaissances de base sur les bibliothèques de traitement d'image. Les bibliothèques de traitement d'images les plus couramment utilisées en Python incluent OpenCV, Pillow et Scikit-image. Dans cet article, nous nous concentrerons sur l'utilisation de deux bibliothèques, OpenCV et Scikit-image.

2. OpenCV

OpenCV est une bibliothèque de vision par ordinateur open source qui peut être utilisée sur différentes plateformes. OpenCV fournit un grand nombre d'algorithmes et de fonctions qui peuvent être utilisés pour mettre en œuvre le traitement, l'analyse et la vision par ordinateur d'images numériques. Voici les étapes de base pour utiliser OpenCV pour la reconnaissance d'images :

1 Installer OpenCV

Avant de commencer à utiliser OpenCV, vous devez l'installer sur votre ordinateur. La bibliothèque OpenCV peut être installée via les commandes pip et conda. Sous Windows, vous pouvez l'installer avec la commande suivante :

pip install opencv-python
Copier après la connexion

Alternativement, vous pouvez utiliser conda pour installer OpenCV :

conda install -c conda-forge opencv
Copier après la connexion

2 Chargez l'image

#. 🎜🎜#Continuer Ensuite, les images à analyser doivent être chargées. En Python, vous pouvez charger une seule image ou plusieurs images à l'aide de la fonction OpenCV cv2.imread().

import cv2

# load an image
image = cv2.imread("path/to/image")
Copier après la connexion

3. Prétraitez l'image

Avant d'utiliser OpenCV, l'image doit être prétraitée. Les traitements suivants peuvent être effectués sur l'image :

# convert the image to grayscale
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# apply a Gaussian blur to remove noise
blurred = cv2.GaussianBlur(gray, (5, 5), 0)

# apply edge detection to extract edges
edges = cv2.Canny(blurred, 50, 200)
Copier après la connexion

4. Identifier les objets

Une fois l'image prétraitée, les algorithmes et fonctions d'OpenCV peuvent être utilisés pour identifier les objets. Les objets peuvent être marqués sous forme de rectangles ou de cercles, etc.

# perform an object detection
(contours, _) = cv2.findContours(edges.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for c in contours:
    # compute the bounding box of the object
    (x, y, w, h) = cv2.boundingRect(c)

    # draw the bounding box around the object
    cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)
Copier après la connexion

5. Afficher les résultats

Utilisez OpenCV pour afficher l'image traitée.

# display the result
cv2.imshow("Object Detection", image)
cv2.waitKey(0)
Copier après la connexion

3. Scikit-image

Scikit-image est une bibliothèque de traitement d'image basée sur le langage Python. Elle fournit également de nombreux algorithmes et fonctions de traitement d'image. Voici les étapes de base pour utiliser Scikit-image pour la reconnaissance d'images :

1 Installer Scikit-image

Vous pouvez utiliser la commande suivante pour installer la bibliothèque Scikit-image. :

pip install scikit-image
Copier après la connexion

2. Chargez l'image

De même, avant d'utiliser Scikit-image, vous devez charger l'image à analyser.

from skimage import io

# load the image
image = io.imread("path/to/image")
Copier après la connexion

3. Prétraitez l'image

Avant d'utiliser Scikit-image, vous devez également prétraiter l'image. Les traitements suivants peuvent être effectués sur l'image :

from skimage.filters import threshold_local
from skimage.color import rgb2gray

# convert the image to grayscale
gray = rgb2gray(image)

# apply a threshold to the image
thresh = threshold_local(gray, 51, offset=10)
Copier après la connexion

4. Identifier les objets

Utilisez les algorithmes et les fonctions de Scikit-image pour identifier les objets et marquer les objets sous forme de rectangles ou de cercles, etc.

from skimage import measure
from skimage.color import label2rgb
from skimage.draw import rectangle

# find contours in the image
contours = measure.find_contours(thresh, 0.8)

# draw a rectangle around each object
for n, contour in enumerate(contours):
    row_min, col_min = contour.min(axis=0)
    row_max, col_max = contour.max(axis=0)
    rect = rectangle((row_min, col_min), (row_max, col_max), shape=image.shape)
    image[rect] = 0
Copier après la connexion

5. Afficher les résultats

Utilisez Scikit-image pour afficher l'image traitée.

io.imshow(image)
io.show()
Copier après la connexion
Conclusion

Grâce à cet article, nous avons appris à utiliser OpenCV et Scikit-image en Python pour la reconnaissance d'images. Ces deux bibliothèques sont l'une des bibliothèques de traitement d'images les plus populaires en Python et peuvent nous aider dans les travaux de traitement, d'analyse et de vision par ordinateur d'images. Grâce à la technologie de reconnaissance d'images, les entités invisibles peuvent être facilement extraites des images numériques et utilisées dans l'analyse et la prédiction des données. Elles peuvent par exemple être appliquées à la médecine, à la sécurité et à la finance. Bien que cet article fournisse quelques méthodes d'utilisation de base, la technologie de reconnaissance d'images est un domaine très complexe et varié, et de nombreux autres algorithmes et techniques peuvent être utilisés. Par conséquent, apprendre et explorer ce domaine est un processus très intéressant et utile.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal