Re: [討論] 顏色混合

看板MATLAB作者 (beyond the time!)時間6年前 (2017/09/26 13:15), 編輯推噓2(200)
留言2則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《jacklions (史東)》之銘言: : 一般來說,混合純RGB顏色是把RGB三項分開,個別相加。 : 那如果要混合三個不是純RGB的顏色, : 例如 : R G B : A : 162 114 0 : B : 235 0 156 : AB 244 0 0 : 以上是在一篇paper看到的結果,混出來的AB是接近紅色的,不知道有沒有人有想法是如何完成的,希望有人可以幫我解惑,感謝大家^__^ : ----- : → jacklions: https://imgur.com/a/AIvh1 09/25 15:47 : → jacklions: 感覺是要求弧度的中點 : → jacklions: https://imgur.com/a/PxGdP 09/25 15:49 : → jacklions: 麻煩了~~~ 09/25 15:51 : ※ 編輯: jacklions (140.117.176.197), 09/25/2017 15:54:42 : → YoursEver: 我現在才看到,明天中午幫你翻. orz 09/26 01:04 你給的段落裡面沒有看見求弧中點的部分. 不過,那段文字的確只是告訴讀者該怎麼定義pseudocolor的color map. 首先,基於HSV的特性,文章作者認為要在CIELAB color space上面定義顏色. 主要定義了8個錨點(anchor point) (1) 三個channel全為0或全為FF: 黑/白. (2) 三個channel中,僅單一channel不為0且為最大值. (3) 三個channel中,單一channel為0,另兩個為最大值. (4) 上述第2,3項的顏色,定義在CIELAB space中 L = 50 的hyperplane上. (註1) 這個部分就只有提到這麼多事情, 其餘的顏色是從這8個錨點內插出來的. 至於怎麼內插,這個段落內沒說. 接下來解釋(註1), 基本上,關於第4項的原文敘述顯然和第2,3項衝突. 除非,作者所指的 "三個channel" 是指RGB,而非LAB. 也就是說, 那8個anchor point是定義在RGB space上, 只是color interpolation的計算是在LAB space上完成. 不過,這樣的解釋又和程式碼內所定義的anchor point不合, 所以說,別理會作者說的, 你只要自己訂好三對互補色,加上黑白,總共8個錨點, 接下來在LAB space上進行color interpolation就好. 例如: 黑, (L,A,B) = (0, 0, 0) 白, (L,A,B) = (100, 0, 0); 其他, (L,A,B) = (50, aa, bb); (aa, bb)是六個等分點的位置. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.96.100.130 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1506402904.A.679.html

09/26 22:47, , 1F
非常感謝Y大,我會再研究看看!
09/26 22:47, 1F

09/27 18:02, , 2F
所以是用LAB去內插出等分點,大概了解了,非常感謝
09/27 18:02, 2F
文章代碼(AID): #1PoU9OPv (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #1PoU9OPv (MATLAB)