Maison > Article > interface Web > Comment convertir les valeurs de couleur RVB en noms de couleurs anglais en Python ?
Comment convertir la couleur RVB en nom de couleur anglais en Python
Lorsque vous traitez des images ou des manipulations de couleurs en Python, vous pouvez rencontrer des situations où vous devez convertir un tuple de couleur RVB en son nom de couleur anglais correspondant. Malheureusement, Python ne fournit pas nativement un moyen simple de le faire.
Cependant, grâce à la bibliothèque webcolors, vous pouvez facilement accomplir cette tâche. webcolors propose la fonction rgb_to_name(), qui prend un triplet de valeurs RVB en entrée et renvoie le nom de couleur CSS3 le plus proche. Par exemple :
<code class="python">import webcolors rgb_color = (119, 172, 152) color_name = webcolors.rgb_to_name(rgb_color) print(color_name) # Outputs: 'cadetblue'</code>
Si vous souhaitez trouver le nom de couleur anglais le plus similaire pour une valeur RVB donnée, vous pouvez utiliser le code suivant :
<code class="python">def closest_color(rgb_color): min_distance = float('inf') closest_name = None for hex_code, color_name in webcolors.CSS3_HEX_TO_NAMES.items(): r, g, b = webcolors.hex_to_rgb(hex_code) r_diff = (r - rgb_color[0]) ** 2 g_diff = (g - rgb_color[1]) ** 2 b_diff = (b - rgb_color[2]) ** 2 distance = r_diff + g_diff + b_diff if distance < min_distance: min_distance = distance closest_name = color_name return closest_name</code>
Cette fonction mesure l'Euclide distance entre la couleur RVB donnée et toutes les couleurs CSS3, renvoyant le nom de la couleur avec la plus petite distance.
Pour récupérer réellement le nom de la couleur, vous pouvez l'utiliser comme suit :
<code class="python">color_name = closest_color((119, 172, 152)) print(color_name) # Outputs: 'cadetblue'</code>
Dans Dans cet exemple, le résultat est « cadetblue », qui est le nom de la couleur la plus proche de (119, 172, 152) dans l'espace colorimétrique CSS3.
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!