4.3 Vision par Ordinateur Classique
Pourquoi C'est Important
Avant d'étudier les algorithmes modernes de vision par ordinateur, il est utile de comprendre d'abord ce que faisaient les méthodes traditionnelles de vision par ordinateur. Cela nous donne de solides fondations et facilite la compréhension ultérieure des algorithmes plus avancés.

La vision par ordinateur traditionnelle se concentrait sur l'enseignement aux ordinateurs de la manière de trouver des informations utiles dans les images, telles que les contours, les formes, les coins et les mouvements. Ces méthodes reposaient sur des règles conçues par des humains, plutôt que sur un apprentissage automatique à partir de grandes quantités de données comme le font les modèles modernes de deep learning. Bien qu'elles aient été plus simples, elles ont aidé à résoudre de nombreuses tâches de vision de base et ont posé les fondations des techniques plus puissantes de vision par ordinateur d'aujourd'hui.
Méthodes classiques
Filtrage

Le filtrage modifie la structure locale de l'image. Certains filtres réduisent le bruit, tandis que d'autres rehaussent les détails.
Le filtrage fonctionne en laissant chaque pixel être mis à jour à l'aide de ses pixels voisins. Autrement dit, l'algorithme fait glisser une petite fenêtre, appelée noyau (ou kernel), sur l'image et calcule une nouvelle valeur pour chaque position.
Exemples :
- Flou par moyenne : remplace un pixel par la moyenne de ses voisins, ce qui rend l'image plus lisse
- Flou gaussien : donne plus de poids aux pixels proches, ce qui rend généralement le flou plus naturel
- Flou médian : remplace un pixel par la valeur médiane de son voisinage
- Accentuation : augmente les différences locales pour que les contours et les détails fins se démarquent plus clairement
Ces filtres sont utiles parce que les images réelles de caméra contiennent souvent du bruit, de petites fluctuations de luminosité ou des détails instables qui doivent être lissés ou rehaussés avant les étapes ultérieures de vision.
Essayez :
cd 4.3-Classical-Computer-Vision/code
python filtering.py🚀 Vous pouvez essayer de glisser le curseur pour voir différents modes de filtrage et modifier différents paramètres du noyau pour observer les changements dans l'image.

Seuillage
Le seuillage est un moyen simple de transformer une image en niveaux de gris en un résultat noir et blanc. L'idée de base est : choisir une valeur de seuil, puis comparer chaque pixel à celle-ci. Si un pixel est plus clair que le seuil, il devient blanc ; sinon, il devient noir. Cela transforme les valeurs continues de pixels en une décision oui/non beaucoup plus simple, ce qui rend les objets plus faciles à séparer du fond.

C'est utile dans :
- le traitement de documents
- l'inspection industrielle simple
- l'extraction de premier plan dans des scènes contrôlées
Essayez :
cd 4.3-Classical-Computer-Vision/code
python thresholding.py🚀 Essayez de glisser le curseur pour modifier différents seuils et observer les changements dans l'image.

Détection de Contours
Les contours correspondent souvent à des frontières où l'intensité change brusquement.

La détection de contours est un moyen de trouver les frontières importantes dans une image. L'idée de base est simple : l'algorithme regarde de combien la luminosité du pixel change d'un endroit à l'autre. Si le changement est très petit, c'est probablement la même région. Si le changement est soudain et grand, cet endroit est probablement un contour. En pratique, de nombreuses méthodes lissent d'abord un peu l'image pour réduire le bruit, calculent ensuite les changements d'intensité dans les directions horizontale et verticale, et conservent enfin les changements les plus forts comme contours. Cela aide un ordinateur à mettre en évidence plus clairement les contours d'objets, la structure des formes et la disposition de la scène.
La détection de contours aide à révéler :
- la structure de la forme
- les frontières d'objets
- la géométrie de la scène
Essayez :
cd 4.3-Classical-Computer-Vision/code
python edge_detection.py🚀 Glissez le curseur pour voir différents modes et modifier différents paramètres afin d'observer les changements dans l'image.

Contours d'objets
Les contours décrivent les silhouettes d'objets dans une image binaire.

Les contours sont un moyen pour un ordinateur de tracer la silhouette des objets dans une image binaire. Le processus habituel est : convertir d'abord l'image en noir et blanc, puis traiter une partie comme l'objet et l'autre comme le fond. Ensuite, l'algorithme suit la frontière où ils se rencontrent et enregistre la silhouette comme un ensemble de points connectés. Ainsi, un contour est essentiellement le bord de la forme d'un objet. Une fois la silhouette trouvée, l'ordinateur peut l'utiliser pour mesurer la taille, compter les objets ou analyser la forme plus facilement.
Ils sont utiles pour :
- l'analyse de formes
- le comptage d'objets
- la mesure de l'aire et du périmètre
Essayez :
cd 4.3-Classical-Computer-Vision/code
python contours.py🚀 Essayez de glisser le curseur pour modifier différents seuils et observer les changements dans l'image.

Opérations Morphologiques
Les opérations morphologiques sont des méthodes simples de traitement d'image qui modifient la forme des régions blanches dans une image binaire. Elles fonctionnent en déplaçant un petit motif, appelé noyau ou élément structurant, sur l'image et en vérifiant comment il s'adapte au premier plan. L'érosion rétrécit les objets en supprimant les pixels de bordure, ce qui fait disparaître le petit bruit. La dilatation agrandit les objets en ajoutant des pixels autour des frontières, ce qui peut combler de petits écarts. L'ouverture est une érosion suivie d'une dilatation, donc elle élimine les petites taches bruyantes tout en conservant la forme principale. La fermeture est une dilatation suivie d'une érosion, donc elle remplit les petits trous et reconnecte les parties rompues. En bref, la morphologie est utile pour nettoyer les masques bruyants et faciliter l'analyse des formes d'objets.

Opérations courantes :
- érosion
- dilatation
- ouverture
- fermeture
Elles sont particulièrement utiles lorsque les masques sont bruyants ou fragmentés.
Essayez :
cd 4.3-Classical-Computer-Vision/code
python morphological_operate.py🚀 Essayez de glisser le curseur pour modifier différents seuils et observer les changements dans l'image.

Détection et Mise en Correspondance de Caractéristiques
Une caractéristique est un point ou un motif visuellement distinctif. La mise en correspondance de caractéristiques est utilisée pour comparer des images, aligner des vues ou estimer des relations géométriques.

La détection de caractéristiques signifie trouver des points ou motifs spéciaux dans une image qui sont faciles à reconnaître à nouveau, tels que des coins, des taches ou des zones texturées. La mise en correspondance de caractéristiques signifie comparer ces points entre deux images pour trouver lesquels correspondent au même endroit du monde réel. Un flux de travail courant est : détecter d'abord les points clés, puis calculer un descripteur pour chacun, qui est un résumé numérique compact de l'apparence locale, et enfin comparer les descripteurs pour trouver les meilleures correspondances. OpenCV décrit des matchers tels que Brute-Force, qui compare un descripteur à tous les autres, et FLANN, qui accélère la recherche dans de grands ensembles. C'est utile parce qu'une fois de bonnes correspondances trouvées, l'ordinateur peut aligner des images, assembler des panoramas, estimer des mouvements ou localiser un objet depuis une autre vue.
Cette idée est importante pour :
- l'assemblage de panoramas
- l'alignement d'images
- la localisation
- l'odométrie visuelle
Essayez :
cd 4.3-Classical-Computer-Vision/code
python feature_detection_matching.py🚀 Essayez de glisser le curseur pour modifier différents modes de mise en correspondance et observer les changements dans l'image.
Malentendus Courants
- « La vision classique est obsolète. »
- Elle est plus ancienne, mais pas obsolète. Elle reste utile pour le prétraitement, la mesure et la logique basée sur des règles.
- « Le deep learning a remplacé tout le traitement d'images traditionnel. »
- En pratique, de nombreux systèmes modernes incluent encore des opérations classiques.
- « Si le seuillage fonctionne sur une image, il fonctionnera partout. »
- Les méthodes classiques peuvent être sensibles à l'éclairage et au contexte.
Exercices / Réflexion
- Appliquez le seuillage à une image avec un premier plan simple et comptez les objets connectés.
- Comparez les cartes de contours avant et après un flou gaussien. Qu'est-ce qui change ?
- Essayez l'érosion et la dilatation sur le même masque binaire. Qu'arrive-t-il aux petites régions ?
- Réfléchissez à une situation où une simple méthode classique peut être meilleure qu'un modèle profond.
Résumé
La vision par ordinateur classique offre aux apprenants un moyen transparent de comprendre les transformations d'images. Elle reste également utile dans les systèmes réels pour le prétraitement, le filtrage, le raisonnement sur les formes et la logique visuelle légère.
Étape Suivante Suggérée
Continuez vers 4.4 Réseaux de Neurones et CNN.