如何自動產生 N 個「不同」顏色?
這個問題提出了創建 N 個視覺上不同的顏色的挑戰。雖然 RGB 立方體上的分段線性函數可以產生顏色,但它們可能並不總是明顯不同。其他方法包括將 RGB 立方體劃分為格子和採樣點。
但是,提供的解決方案仍然達不到最優性。
任意 N
- 「分類影像的顏色顯示」提供了免費下載的解決方案。
- 「個人化地圖著色的網路服務」提供了即將推出的網路服務解決方案。
- 「An 「高對比顏色集選擇演算法」提供了免費的C 實作。
- 「高對比顏色集」提出了解決此問題的第一個演算法。
N 是有限且相對較小的
給定一個小N,請考慮使用預定義顏色列表:
- Boynton 的11 種幾乎從不混淆的顏色清單
- Kelly 的22 種最大對比度顏色
- 麻省理工學院學生創建的清單
提到的文章還提供了在顏色系統之間進行轉換的有用工具:
- 顏色理論:如何將Munsell HVC 轉換為RGB/HSB/HSL
- http://chem8.org/ uch/space-55036-do-blog-id-5333.html
- https://metacpan.org/pod/Color::Library::Dictionary::NBS_ISCC
C# 中預先定義顏色清單的程式碼實作:
- Kelly 的最大對比度設定
- Boynton 的最佳化
十六進位與每通道8 位元的預設顏色:
- Kelly 顏色的Python 實作
- Kelly 顏色的JavaFX 實作
Kelly 顏色的JavaFX 實作
其他提示:-
- 記得對顏色進行排序基於色調,以確保最大程度的區分。缺陷的人所列的顏色。
以上是我們如何自動產生 N 種視覺上不同的顏色?的詳細內容。更多資訊請關注PHP中文網其他相關文章!