回覆列表
-
1 # 證73
-
2 # 證73
首先看兩者的模型
1. RGB的模型理論基礎是紅、藍、綠三種光波疊加產生不同的視覺效果, 因此以這3者為基準軸, 定義向量空間, 色彩值對應其中的座標值. 在實際應用中, 例如顯示器上的畫素點也容易處理這種情況, 但這種演算法對自然的理解不夠全面高效, 是條件限制下的初級應用, 如果你的眼睛解析度足夠高, 會看到滿屏類似圖一的畫素點, 變化的只是三原色的還原程度(包含明度、飽和度), 這相當於模擬訊號.
(圖1)
(RGB模型)
2. HSV模型的理論基礎更高深, 適用性更強, 以黑-白基礎軸、 光譜、 能量強弱轉為向量關係構建了一個模型, 包含了宇宙從無到有, 演化萬物的哲學含義, 但為了適應人而被砍了一刀.
(HSV模型)
兩者之間的轉換原理
實際就是光波疊加、能量疊加的原理, 只不過RGB已經定義了初始條件, 以紅光為例, 當R>0, G=0, B=0時, 投射在HSV模型上的結果如圖, 沿著HSV紅光的邊軸移動, 當其它值也大於0時, 則需要將3個值都轉換到同一個平面(V)做向量計算, 這個平面(V)由能量最強的主光源決定.
飽和度與白光相關, 因為R、G、B三原色疊加的特性, 由主光源與差異最大的光源計算可得出飽和度(S)
確定平面後有一個類似下圖的向量投射圖, 建立座標軸系統, 然後向量運算得出最終向量值, 透過座標軸系統運算出角度(H)
首先看兩者的模型
1. RGB的模型理論基礎是紅、藍、綠三種光波疊加產生不同的視覺效果, 因此以這3者為基準軸, 定義向量空間, 色彩值對應其中的座標值. 在實際應用中, 例如顯示器上的畫素點也容易處理這種情況, 但這種演算法對自然的理解不夠全面高效, 是條件限制下的初級應用, 如果你的眼睛解析度足夠高, 會看到滿屏類似圖一的畫素點, 變化的只是三原色的還原程度(包含明度、飽和度), 這相當於模擬訊號.
(圖1)
(RGB模型)
2. HSV模型的理論基礎更高深, 適用性更強, 以黑-白基礎軸、 光譜、 能量強弱轉為向量關係構建了一個模型, 包含了宇宙從無到有, 演化萬物的哲學含義, 但為了適應人而被砍了一刀.
(HSV模型)
兩者之間的轉換原理
實際就是光波疊加、能量疊加的原理, 只不過RGB已經定義了初始條件, 以紅光為例, 當R>0, G=0, B=0時, 投射在HSV模型上的結果如圖, 沿著HSV紅光的邊軸移動, 當其它值也大於0時, 則需要將3個值都轉換到同一個平面(V)做向量計算, 這個平面(V)由能量最強的主光源決定.
飽和度與白光相關, 因為R、G、B三原色疊加的特性, 由主光源與差異最大的光源計算可得出飽和度(S)
確定平面後有一個類似下圖的向量投射圖, 建立座標軸系統, 然後向量運算得出最終向量值, 透過座標軸系統運算出角度(H)