我正在編寫一個程序,允許用戶在RGB中選擇各種前景和背景顏色。我不希望他們選擇過於類似的前景和背景,並決定轉換爲HSL,並使用HSL歐幾里得距離作爲檢查相似度的方法。HSL顏色之間的距離測量
對於HSL空間有沒有很好的權重(而不是對H,S和L的權重相等)?我查看過各種網站,但沒有找到所需的確切內容;只是說HSL或HSB比RGB好。
我正在編寫一個程序,允許用戶在RGB中選擇各種前景和背景顏色。我不希望他們選擇過於類似的前景和背景,並決定轉換爲HSL,並使用HSL歐幾里得距離作爲檢查相似度的方法。HSL顏色之間的距離測量
對於HSL空間有沒有很好的權重(而不是對H,S和L的權重相等)?我查看過各種網站,但沒有找到所需的確切內容;只是說HSL或HSB比RGB好。
我沒有確切的數字給你,但是我會用比H或S高得多的權重。眼睛在區分不同飽和度的相同顏色方面很差,差別很大色調 - 特別是如果它是你想看到的細節,比如文字。
首先將顏色轉換爲Lab。這種顏色空間的設計使得任何兩種顏色之間的矢量差異非常接近「主觀距離」。
在色彩管理中,'delta E'值是衡量給定顏色轉換是如何感知忠實的量度。它只是Lab空間中表達的原始顏色和最終顏色之間的矢量差的大小。
我的建議是完全跳過HSL/HSB,直接從RGB to LAB開始。一旦你這樣做了,你可以做一個標準的delta E計算。