Re: [問題]計算10bits色溫
※ 引述《YoursEver (銀英傳出webgame!?)》之銘言:
: ※ 引述《immortal1314 (Eden)》之銘言:
: : 標題: [問題]計算10bits色溫
: : 時間: Thu Aug 4 01:25:38 2016
: 先說重點:
: 你的描述方式,我看不懂你的input signal的格式.
: 先釐清你的輸入信號吧.
: *****
: 請問你的input資料有哪些資訊?
: 有 R G B 嗎?
: 我不懂你所說的"我所擁有的資料是, 紅光R的x y, 綠光G的x y, 藍光B的x y"
: 你是否是指以下兩者之一的狀況?
: (1) 先打紅光,拍紅光照射下的反射信號,此時會得到一組 x_r, y_r
: 再打綠光, 綠 x_g, y_g
: 最後藍光, 藍 x_b, y_b
: 最後這三張圖,當成input signal.
: 或
: (2) 所謂的紅光R的x y是依據以下的X_r, Y_r, Z_r所計算出的值:
: [ X_r ] [ ] [ R ]
: [ Y_r ] = [ A ] [ 0 ]
: [ Z_r ] [ ]3-by-3 [ 0 ],
: 而所用的輸入信號,則是這個方式下所得到的x_r, y_r, x_b, y_b, x_g, y_g.
: ****
恩 好的
首先是這樣 我對一個顯示面板進行量測
得到0~255gray level的
白光 W_Y W_x W_y Ex:某一階的 W_Y=400 W_x=0.3342 W_y=0.3153
紅光 R_x R_y Ex: R_x=0.6341 R_y=0.3412
綠光 G_x G_y Ex: G_x=0.3310 G_y=...
藍光 B_x B_y Ex: .....
此為input
(x X y Y 大寫小寫代表的不同)
然後 從結果往回看
為了計算CCT 需要CIE色座標的x,y
為了算CIE色座標的x,y 需要XYZ
為了得到XYZ 需要算出R_Y G_Y B_Y
於是乎目前流程是這樣的
輸入W的xyY 與 RGB的xy ,先算出RGB各自的Y ,
將RGB的xyY 轉換成各自對應的XYZ(XYZ才能做混色)
混色後的 x=RX/(RX+GX+BX)
y=RY/(RY+GY+BY)
(x,y各有1021*1021*1021個組和)(省略了將0~255內插成0~1020的說明)
再將x,y帶入CCT的公式得到色溫(K)
*******************************
簡單流程如下:
WxyY RGBxy----------------->
R_Y G_Y B_Y---------------->
XYZ------------------------>
CIE座標上的xy-------------->
----->CCT(color temperature)
*******************************
我要找出所有答案皆為某色溫(ex:5000K)的RGB各自的xyY
也就是最一開始輸入的RGB_xyY 是哪些組合得到目標色溫的
(目標色溫每一階0~255階 找最接近那個 這部分我還沒寫到code裡)
遇到的問題:
1.for 迴圈 寫了3層 雖然寫出了所有結果 but執行起來太慢
2.計算結果太大 必須用實驗室的電腦才跑得起來 光是xy就會吃掉14G的記憶體
急--> 3.即使計算完 我也想不出 怎麼往回找出是哪組R_x R_y R_Y得到我要的色溫
G_x G_y G_Y
B_x B_y B_Y
解決辦法:
1.不用for 迴圈寫 但又要能計算出所有結果
2.增加限制條件 使它不用 跑完所有的計算結果
(1) 利用gamma2.2限制亮度 (R_Y+B_Y+G_Y,就是限制每一階的總亮度)
(2) 利用下一階不會超過上一階亮度的限制 (例如: G_Y 180階<G181階)
(3) 利用各階亮度的差不會太大 限制搜索範圍
例如:不可能出現 R_Y的200階 + G_Y的10階 +B_Y
相差太大的結果是不可能的
因為會導致下一階出現沒有值可用的情況
..................以上方法 我都不會寫
所以目前是用 最簡單的暴力解 全部展開 再取出所有目標與對應的RGBxyY
卻發現不知道如何找出目標色溫 對應的所有RGB_xyY
非常感謝回復我的大神 QQ...我想很久還是百思不得解
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.146.82.231
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1470330296.A.EBD.html
※ 編輯: immortal1314 (122.146.82.231), 08/05/2016 01:39:30
※ 編輯: immortal1314 (122.146.82.231), 08/05/2016 01:44:58
※ 編輯: immortal1314 (122.146.82.231), 08/05/2016 01:46:53
※ 編輯: immortal1314 (122.146.82.231), 08/05/2016 01:47:28
→
08/05 10:51, , 1F
08/05 10:51, 1F
→
08/05 10:51, , 2F
08/05 10:51, 2F
→
08/05 10:53, , 3F
08/05 10:53, 3F
→
08/05 10:53, , 4F
08/05 10:53, 4F
→
08/05 10:54, , 5F
08/05 10:54, 5F
→
08/05 10:55, , 6F
08/05 10:55, 6F
→
08/05 10:56, , 7F
08/05 10:56, 7F
→
08/05 10:57, , 8F
08/05 10:57, 8F
→
08/05 10:57, , 9F
08/05 10:57, 9F
→
08/05 11:13, , 10F
08/05 11:13, 10F
→
08/05 11:13, , 11F
08/05 11:13, 11F
→
08/05 11:13, , 12F
08/05 11:13, 12F
→
08/05 11:13, , 13F
08/05 11:13, 13F
→
08/05 11:13, , 14F
08/05 11:13, 14F
→
08/05 11:15, , 15F
08/05 11:15, 15F
→
08/05 15:42, , 16F
08/05 15:42, 16F
→
08/05 15:43, , 17F
08/05 15:43, 17F
→
08/05 18:12, , 18F
08/05 18:12, 18F
→
08/06 00:15, , 19F
08/06 00:15, 19F
→
08/07 01:50, , 20F
08/07 01:50, 20F
→
08/07 01:50, , 21F
08/07 01:50, 21F
→
08/07 02:00, , 22F
08/07 02:00, 22F
→
08/07 02:00, , 23F
08/07 02:00, 23F
→
08/07 02:00, , 24F
08/07 02:00, 24F
→
08/07 02:00, , 25F
08/07 02:00, 25F
→
08/07 02:00, , 26F
08/07 02:00, 26F
→
08/07 02:00, , 27F
08/07 02:00, 27F
→
08/07 02:00, , 28F
08/07 02:00, 28F
→
08/07 02:00, , 29F
08/07 02:00, 29F
討論串 (同標題文章)
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章