色階與曲線調整的操作介面 |
曲線調整則是點擊白色畫布的任一處
色階調整
圖片的原色彩值(Input)和修改後的色彩值(Output)之間有著這樣的等式:
(Output - Output Min) / (Output Max - Output Min) = (Input - Input Min) / (Input Max - Input Min)
將等式左邊留下Output之後得到此公式:
色階調整的參考公式 |
接下來的實驗會用:
(Input Min, Input Max, Output Min, Output Max)來表示測試時輸入的數值
從式子來看,Input Max - Input Min會使Output產生無限大的數值,
實際測試 (0, 0, 0, 255) 之後程式也跑出警告視窗告訴我除數不得為零
(50, 200, 0, 255)的組合:
因為(200 - 50) < (255 - 0),
除數變小的關係,使得圖片整體變亮
(0, 255, 50, 200)的組合:
因為(200 - 50) < (255 - 0),
乘數變小,使得圖片較為黯淡
(0, 255, 255, 0)的組合:
試著讓(Output Max - Output Min) < 0、(Input Max - Input Min) > 0,結果一整個負片的感覺
曲線調整
由一條經過(0, 0)、(255, 255)和自定義的(x, y)的二次曲線,X軸=Input、Y軸=Output,來調整色彩值。
這部分在撰寫程式時卡了很久,點擊畫布時畫布和圖片都沒反應,最後發現我定義的(x, y)是整數型態,而計算過程多使用浮點數,所以將(x, y)強制轉型成浮點數之後終於能對圖片做色彩調整。
試驗:
視覺效果來說我覺得曲線調整比色階調整來得舒適。
(Input Min, Input Max, Output Min, Output Max)來表示測試時輸入的數值
從式子來看,Input Max - Input Min會使Output產生無限大的數值,
實際測試 (0, 0, 0, 255) 之後程式也跑出警告視窗告訴我除數不得為零
(50, 200, 0, 255)的組合:
(50, 200, 0, 255)對照(0, 255, 0, 255)
因為(200 - 50) < (255 - 0),
除數變小的關係,使得圖片整體變亮
(0, 255, 50, 200)的組合:
(0, 255, 50, 200)對照(0, 255, 0, 255)
因為(200 - 50) < (255 - 0),
乘數變小,使得圖片較為黯淡
(0, 255, 255, 0)的組合:
(0, 255, 255, 0)對照(0, 255, 0, 255)
試著讓(Output Max - Output Min) < 0、(Input Max - Input Min) > 0,結果一整個負片的感覺
曲線調整
由一條經過(0, 0)、(255, 255)和自定義的(x, y)的二次曲線,X軸=Input、Y軸=Output,來調整色彩值。
這部分在撰寫程式時卡了很久,點擊畫布時畫布和圖片都沒反應,最後發現我定義的(x, y)是整數型態,而計算過程多使用浮點數,所以將(x, y)強制轉型成浮點數之後終於能對圖片做色彩調整。
試驗:
(y遠大於x)、(y大於x)、(x=y)
(x大於y)、(x遠大於y)
視覺效果來說我覺得曲線調整比色階調整來得舒適。
沒有留言:
張貼留言