Pourquoi OpenCV rend-il les images couleur de manière incorrecte lors du chargement ?
Lors du chargement d'une image couleur à l'aide de Python OpenCV, les utilisateurs peuvent rencontrer des cas où le résultat l'image s'affiche avec des couleurs incorrectes. Ce problème survient en raison des différentes conventions d'ordre des couleurs utilisées par OpenCV et matplotlib.
Comprendre les différences d'ordre des couleurs
OpenCV utilise BGR (Bleu-Vert-Rouge) par défaut ordre des couleurs pour les images, tandis que matplotlib fonctionne avec RVB (Rouge-Vert-Bleu). Cet écart entraîne des distorsions de couleurs lors de l'affichage des images chargées par OpenCV dans matplotlib.
Solution : convertir BGR en RVB
Pour résoudre ce problème, convertissez explicitement l'image de BGR en RVB en utilisant la ligne de code suivante :
RGB_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
Utilisation de l'image convertie pour l'affichage
Une fois l'image convertie en RVB, vous pouvez l'utiliser pour le traçage à la place de l'image BGR originale :
plt.subplot(1,2,i+1),plt.imshow(RGB_img,'gray')
En suivant cette approche, l'image sera affichée avec des couleurs précises, s'alignant sur l'ordre RVB conventionnel utilisé par matplotlib.
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!