Conversion de tuples de couleurs RVB en noms de couleurs anglais en Python
Cette question vise à convertir un tuple de couleurs RVB en son nom de couleur anglais correspondant, comme « vert » ou « bleu ». Un exemple spécifique est fourni dans lequel une image est ouverte, sa couleur la plus dominante est déterminée et le tuple de couleurs (119, 172, 152) est obtenu. Le défi est de trouver une méthode python capable de convertir ce tuple en nom de couleur.
La solution réside dans l'exploitation de la bibliothèque webcolors. Grâce à sa fonction rgb_to_name, il est possible de traduire le tuple RVB directement en son nom de couleur normalisé. Par exemple, rgb_to_name((0, 0, 0)) renvoie « noir ».
Pour le tuple de couleurs fourni (119, 172, 152), cependant, la bibliothèque ne peut pas trouver de correspondance exacte. Pour surmonter cette limitation, une fonction modifiée appelée plus proche_color a été créée. Cette fonction calcule la distance euclidienne entre la couleur RVB donnée et tous les noms de couleurs connus dans la norme CSS3. En minimisant cette distance, il identifie le nom de couleur correspondant le plus proche, dans ce cas, « cadetblue ».
En utilisant la fonction get_colour_name, les noms de couleurs réels et les plus proches peuvent être facilement récupérés. Dans le cas de (119, 172, 152), le nom de couleur réel est Aucun (indiquant aucune correspondance exacte), tandis que le nom de couleur le plus proche est « bleu cadet ».
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!