close
標題:

想問關於電腦RGB的混色

發問:

我想知道RGB的混色原理: i.e. 如果 RGB(r1,g1,b1) 和 RGB(r2,g2,b2) 的加法混色(additive color mixing) 是 (r3,g3,b3) 和 減法混色(subtractive color mixing) 是 (r4,g4,b4) 那麼 r1,r2,r3,g1,g2,g3,b1,b2,b3 的關係是什麼? (同樣, r1,r2,r4,g1,g2,g4,b1,b2,b4 ) 我想要formal之類的, 有用的資料也好, thank you 更新: 先多謝各位回答我的朋友。 看來我是我的問題不好。 好了好了, 這樣問把: 我現在想做一個 加法混色 和 減法混色 的模擬器。 input 是兩set RGB 的數據: (x1,y1,z1) 和 (x2,y2,z2) output 是 加法混色/減法混色後的數據: (x3,y3,z3) / (x4,y4,z4) 那麼, 我該什樣運用(x1,y1,z1) 和 (x2,y2,z2)兩set data 才可有 (x3,y3,z3) / (x4,y4,z4)呢? P.S. 我絕對絕對絕對知道什麼是加法混色 和 減法混色。 更新 2: 很多你謝關注並跟進我的問題 ^^ 首先, 做模擬器的目的不是賺錢, 也不可能賺錢(正如你所說一樣)。 做模擬器只是做flash game 的一部份。 我想做混合顏色, 不是查色板or rgb/cymk轉換器。但我找不到類似的混色模擬器freeware/source code(如果你有, 請post出來, thx)。 雖然在programming上很簡單, 但我不知道色學原理。 更新 3: 返回問題: 以下是input output example: example 1: red(255,0,0) + green(0,255,0) = additive mixing = yellow(255,255,0) = subtractive mixing = black(0,0,0) ? (我朋友說是黑啡, 我不知道) 更新 4: example 2: yellow(255,255,0) + cyan(0,255,255) = additive mixing = white(255,255,255) 是吧? = subtractive mixing = red(255,0,0) 更新 5: 那麼: (100,100,100) + (50,50,50) = additive color mixing = RGB(?,?,?) = subtractive color mixing = RGB(?,?,?) (cymk - rgb, 以rgb表示) 我想知道的不知是這個個別例子, 而是齊個原理 or formal 這就是我的問題, thanks 更新 6: 請不要執著 減法混色不能出 RGB 的問題。 首先, 我會把兩set rgb input 轉換成 cymk, 做完減法混色之後, 我會把 cymk 轉回 rgb。 問題是做減法混色的方法! (同樣, 加法混色的方法又是什麼?) 更新 7: 雖然是未滿足, 但只有你reply我。 打字的功勞也不可抹殺吧, 而且我對色學也增加不少認識, thank you。

最佳解答:

怎樣說好,因為一般的電腦或電視以是用RGB的混色處理,我們所稱的RGB以數據方式顯示出來,不同手繪混色,記下顏色的份量,電腦處理的顏色,每一種顏色都有一個編號,只要有這個編號,是不會找不到想要的顏色。 電腦螢光幕或電視常用的RGB模式 較常用於視訊或多媒體表現方式,RGB模式是便用紅(Red),綠(Green),藍(Blue)三種基本色紀錄圖檔的色彩資訊。這三種色又被稱為色光三原色或加法混色的三原色。利用不同強度的基本色互相混合,創造出基本色以外的色顏色(幾乎可以表示出所有的顏色),隨著混入的色愈來愈強,明亮程度反而呈現遞增,最後產生明亮度最高的白光,這就是能使明亮程度遞增的色光三原色。所以r0,g0,b0是黑色,最強的r255,g255,b255是白色! 電腦裡用RGB三個數值的大小來標示顏色,每個顏色用8bit來記錄,可以有0~255,共256種亮度的變化,三種乘起來就有一千六百多萬種變化(256 X 256 X 256 = 16,777,216),這也是我們常聽到的24 bit全彩。 所以就算你怎樣用RGB混色,都只是改變這三原色的0~255的數字,最終只有16,777,216種顏色,其實你不用執著(r1,g1,b1) 是甚麼顏色,也沒有人刻意做16,777,216種顏色的色表,因為電腦找顏色十分容易,只你找到想的顏色,記下有關RGB的數字,就不會找不到顏色。 一般的做圖軟件,不論是點陣還是向量,一定會在色調表,一定能找到有關的顏色編號。 你可以到我的網站看有關其他電腦處理顏色的方法: http://hk.geocities.com/ice_icesea/ 到教學那一頁 > 看認知色彩,以及電腦色彩處理! 其實數據處理顏色多數只是四種的呢! 希望幫到你! 2007-01-18 22:18:24 補充: 打錯字,一般的做圖軟件,一定會有色調表或稱撿色器。你看撿色器,也許比我說出來還清楚明白?減法混色(subtractive color mixing) 不在RGB模式的範圍內!因為RGB模式是屬於加法混色(additive color mixing)手繪用的顏料和油墨才是減法混色,所以印刷業在電腦處理顏色所用的CMYK才是減法混色!你到我的網頁看,也許你就明白,這裡字數有限! 2007-01-18 22:35:16 補充: 我把網頁抽出來給你看,希望你看得明白:http://hk.geocities.com/ice_icesea/cgt07.html平日網頁我加了語法,不能直接連結,一定要由首頁入去看的!?=_= 2007-01-19 20:23:08 補充: 對不起!誤解了你的問題,不過我太明白你的模擬器的用途和運作,所以也好難解答到你的問題。我嚐試理解:你是想輸入兩組RGB的數據,得出加法混色/減法混色綿編碼兩個答案?那麼你做的模擬器如同繪圖軟件的撿色器嘛?我只能說,加/減法混色是兩種不同的東西,如果(r1,g1,b1) (r2,g2,b2)是深灰色,加在一起加法混色是=(r3,g3,b3)沒錯,但減法混色就是=(c75,m68,y67,k89)在電子數據裡減法混色不會出現在RGB模式,所以數據答案是出現cmyk。你沒可能取代原用至今代碼,如果你想改變編碼?那麼你就創立新的編號,只有你才懂得用新的編號? 2007-01-19 20:26:28 補充: 如果我又誤解了你的問題,那麼很對不起!如果你做到這種轉換顏色代碼的程式,那麼你就可以賣給大型軟件開發公司了?只是現在不少軟件的內置轉換顏色撿色器已十分完善,想知道加法混色是(r5,5g,5b)的時候就等於減法混色的編就是(c75,m68,y67,k88)十分容易啊! 2007-01-24 21:07:56 補充: 首先, 對不起!我也知道你做模擬器的目的不是賺錢的。 black(0,0,0) ? (我朋友說是黑啡, 我不知道) 可能是因為減法混色的話,所謂的黑色,其實是黑啡,但這是同油墨有關的!cymk 轉回 rgb,其實會有一些顏色會流失,電腦會自動用接近顏色取代,所以我才這樣說,也許這是對於顏色的執著吧,我們做設計,都只有小數人知道cymk 轉回 rgb 或由 rgb 轉回 cymk時,用 lab 模式來減低顏色流失或被取代! 2007-01-24 21:09:35 補充: 你要formal,我念不是很多人懂得或知道,所以我的確沒可能給你.我只能告訴你大約混色的方法.rgb,r0,g0,b0.....r255,g255,b255,如果數字三個相同,是黑色...灰色....至白色的沒顏色灰階.cym,不要看k,k是油墨用的,0c,0y,0m.....100c,100m,100y,如果數字三個相同,是白色...灰色....至黑啡色(電腦看是沒有黑啡的)的沒顏色灰階.只是印出來時用k只有用,才是黑色,但電腦看是沒有黑啡. 2007-01-24 21:13:52 補充: rgb:cmy這樣看,混法其實是相反,rgb用cmy的間色做原色,同時cmy用rgb的間色做原色!即是rgb用的r,其實是用m+y,同樣cmy用的m是r+b.它們的關係是!r=m+y, g=c+y, b=m+c, c=g+b, m=r+b, y=r+g,在電腦看的色澤可能有少少不同,因為電腦預計你的pinted出來,但原理相同!其實你可以刪除問題,因為我不算答到你要答案! 2007-01-24 21:39:22 補充: 混法其實是相反,相反的意義是,結果相反,rgb數值越大,最後得到白色,cmy數值越大,最後得到黑色.

其他解答:

免費註冊體驗

 

此文章來自奇摩知識+如有不便請留言告知

arrow
arrow

    omckyyo 發表在 痞客邦 留言(0) 人氣()