如何在 Python 中將 RGB 顏色元組轉換為英文顏色名稱?
在Python 中將RGB 顏色轉換為英文顏色名稱
您想要將RGB 顏色元組轉換為顏色名稱,例如' yellow ' 或'blue'。
考慮以下程式碼:
<code class="python">import Image im = Image.open("test.jpg") n, color = max(im.getcolors(im.size[0]*im.size[1])) print color # (119, 172, 152)</code>
登入後複製
此程式碼從影像中擷取主色並將其儲存為元組。如何在 Python 中將此元組轉換為顏色名稱?
解決方案:
webcolors 套件提供了一個名為rgb_to_name() 的有用函數:
rgb_to_name(rgb_triplet, spec='css3')
登入後複製
此函數將整數RGB 值的三元組轉換為指定顏色規格(例如“css3”)內對應的顏色名稱。例如:
<code class="python">import webcolors rgb_to_name((0, 0, 0)) # 'black'</code>
登入後複製
要尋找與給定RGB 元組最接近的顏色名稱,您可以使用如下所示的自訂函數:
<code class="python">import math import webcolors def closest_colour(requested_colour): min_colours = {} for key, name in webcolors.CSS3_HEX_TO_NAMES.items(): r_c, g_c, b_c = webcolors.hex_to_rgb(key) rd = (r_c - requested_colour[0]) ** 2 gd = (g_c - requested_colour[1]) ** 2 bd = (b_c - requested_colour[2]) ** 2 min_colours[(rd + gd + bd)] = name return min_colours[min(min_colours.keys())]</code>
登入後複製
然後您可以使用以下函數會擷取實際顏色名稱(如果存在)和最接近的符合名稱:
<code class="python">def get_colour_name(requested_colour): try: closest_name = actual_name = webcolors.rgb_to_name(requested_colour) except ValueError: closest_name = closest_colour(requested_colour) actual_name = None return actual_name, closest_name</code>
登入後複製
使用此函數,您可以獲得給定RGB 元組的精確顏色名稱或最接近的近似值。
以上是如何在 Python 中將 RGB 顏色元組轉換為英文顏色名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
如何修復KB5055523無法在Windows 11中安裝?
3 週前
By DDD
如何修復KB5055518無法在Windows 10中安裝?
3 週前
By DDD
<🎜>:死鐵路 - 如何馴服狼
4 週前
By DDD
R.E.P.O.的每個敵人和怪物的力量水平
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
<🎜>:種植花園 - 完整的突變指南
2 週前
By DDD

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

您是否曾經在項目上需要一個倒計時計時器?對於這樣的東西,可以自然訪問插件,但實際上更多

格子呢是一塊圖案布,通常與蘇格蘭有關,尤其是他們時尚的蘇格蘭語。在Tartanify.com上,我們收集了5,000多個格子呢
