Heim  >  Artikel  >  Web-Frontend  >  Wie konvertiert man RGB-Farbtupel in Python in englische Farbnamen?

Wie konvertiert man RGB-Farbtupel in Python in englische Farbnamen?

Linda Hamilton
Linda HamiltonOriginal
2024-10-29 06:41:02724Durchsuche

How to Convert RGB Color Tuples to English Color Names in Python?

Konvertieren von RGB-Farbtupeln in englische Farbnamen in Python

Diese Frage zielt darauf ab, ein RGB-Farbtupel in seinen entsprechenden englischen Farbnamen zu konvertieren. wie „grün“ oder „blau“. Ein konkretes Beispiel wird bereitgestellt, bei dem ein Bild geöffnet wird, seine dominanteste Farbe bestimmt wird und das Farbtupel (119, 172, 152) erhalten wird. Die Herausforderung besteht darin, eine Python-Methode zu finden, die dieses Tupel in einen Farbnamen umwandeln kann.

Die Lösung liegt in der Nutzung der Webcolors-Bibliothek. Durch die Funktion rgb_to_name ist es möglich, das RGB-Tupel direkt in seinen normalisierten Farbnamen zu übersetzen. Beispielsweise gibt rgb_to_name((0, 0, 0)) „schwarz“ zurück.

Für das bereitgestellte Farbtupel (119, 172, 152) kann die Bibliothek jedoch keine genaue Übereinstimmung finden. Um diese Einschränkung zu überwinden, wurde eine modifizierte Funktion namens „nest_colour“ erstellt. Diese Funktion berechnet den euklidischen Abstand zwischen der angegebenen RGB-Farbe und allen bekannten Farbnamen im CSS3-Standard. Durch die Minimierung dieses Abstands wird der am besten passende Farbname identifiziert, in diesem Fall „cadetblue“.

Mit der Funktion „get_colour_name“ können die tatsächlichen und am nächsten kommenden Farbnamen einfach abgerufen werden. Im Fall von (119, 172, 152) ist der tatsächliche Farbname None (was darauf hindeutet, dass keine exakte Übereinstimmung vorliegt), während der nächstgelegene Farbname „cadetblue“ ist.

Das obige ist der detaillierte Inhalt vonWie konvertiert man RGB-Farbtupel in Python in englische Farbnamen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn