劉正岐+郭濤
摘 要:以RGB顏色模式為例,以九宮格為生成對(duì)比色目標(biāo),利用全組合算法建立數(shù)字化配色方案模型,根據(jù)不同基值對(duì)結(jié)果進(jìn)行設(shè)置,完成了無限組合配色方案的有限生成方案。為配色方案圖譜提供了一種便捷的生成算法,適合網(wǎng)頁(yè)設(shè)計(jì)、平面設(shè)計(jì)、服裝設(shè)計(jì),甚至在服裝搭配、家居設(shè)計(jì)和家具搭配等方面都具有應(yīng)用價(jià)值。
關(guān)鍵詞:數(shù)字化配色方案;圖像處理;全組合算法;對(duì)比色
中圖分類號(hào):TP311 ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A ? ? ? ? ? 文章編號(hào):2095-1302(2014)12-00-02
0 ?引 ?言
所謂配色,就是色彩按照形式美的法則搭配,達(dá)到一種和諧一體的效果。在實(shí)際應(yīng)用中,色彩是通過人的印象或者聯(lián)想來產(chǎn)生心理上的影響,通過簡(jiǎn)單的色譜很難實(shí)現(xiàn)這一點(diǎn),這些藝術(shù)通感形成的多種多樣的法則如對(duì)稱、均衡、節(jié)奏、韻律、對(duì)比、比例、主從、尺度、明暗、虛實(shí)、多樣統(tǒng)一等。而配色的作用就這在這些法則的指導(dǎo)下,通過特定環(huán)境和方式的展示來滿足人們各方面的要求[1]。
配色主要有兩種方式,一是直接通過固定色彩的對(duì)比達(dá)到配色的效果;另一種是通過色彩的變換給人以心理層面感觀傳達(dá),從而達(dá)到配色的效果。各種配色方案的組合是無窮的,不可能全部羅列[2]。
本文通過計(jì)算機(jī)光學(xué)原理進(jìn)行分析,針對(duì)對(duì)比色的配色方案的生成技術(shù)進(jìn)行研究,利用RGB色彩的數(shù)字化變換、全組合編碼算法等技術(shù)在九宮格中實(shí)現(xiàn)對(duì)比色無限組合的有限自動(dòng)生成方案。
1 ?數(shù)字化配色方案原理
光學(xué)三原色是由紅、綠、藍(lán)組成,顏料三原色由紅、黃、藍(lán)組成,由于計(jì)算機(jī)對(duì)于色彩是基于色光處理,而其色彩模式有RGB、CMYK、LAB、HSB等。本文以RGB顏色模式為例,利用全組合編碼算法建立數(shù)字化配色方案模型,實(shí)現(xiàn)對(duì)比色配色方案的自動(dòng)生成[3]。
2 ?色彩模型分析
2.1 ?對(duì)比色基本圖譜
對(duì)比色配色方案基本圖譜一般是“回”字形,用數(shù)字化定義可采用九宮格來實(shí)現(xiàn)。主色在九宮格中央,背景色分布在周圍,在視覺上形成“回”字形圖譜[4]。為研究方便,在圖譜的下面6個(gè)單元格分別標(biāo)注主色和背景色的數(shù)值,如圖1所示:
圖1 ?對(duì)比色基本圖譜數(shù)字化模型
2.2 ?配色方案基值
如果按照等差數(shù)列的方式生成配色方案,則需要分析RGB的數(shù)值范圍:
R:[0,255] ? G:[0,255] ? ?B:[0,255]
24位RGB顏色發(fā)色數(shù)是1 677萬多色,其中R、G、B的數(shù)值都在0~255之間,通過R、G、B的等差增長(zhǎng)來實(shí)現(xiàn)全組合配色方案。若選用128做為公差,那么R、G、B分別可以選擇0、128、255三種數(shù)值,其單色全組合需要27種。因?yàn)閷?duì)比色是由主色和原色構(gòu)成,那么配色方案需要27*27=729種??梢赃@樣定義:
設(shè)公差為c,分段數(shù)為int(255/c),必須包括首尾0和255,則增量n為int(255/c+2);
主色(或原色)總數(shù)S為:S=3^int(255/c+2);
對(duì)比色配色方案數(shù)N= S* S=3^(int(255/c+2)+int(255/c+2));
根據(jù)全組合編碼算法,R/G/B的計(jì)算為:(ΔR/G/B Mod 3)*c
主色(或原色)的數(shù)值為:RGB((ΔR Mod 3)*c,(ΔG Mod 3)*c,(ΔB Mod 3)*c)
但是公差不一定是255的約數(shù),尤其是以二進(jìn)制為基礎(chǔ)的計(jì)算機(jī)中,如32、64、128都是以2為底的n次方的數(shù)值,這些數(shù)值一般很容易做為公差,這樣增量的計(jì)算以及ΔR/G/B要均勻的分布時(shí),存在誤差修正的問題。
2.3 ?公差為128時(shí)的誤差修正
當(dāng)128做為公差時(shí),按照上述要求在等差數(shù)列中必須包括0和255,根據(jù)公式計(jì)算ΔR/G/B =n*128。0為初值, n為0~2,ΔR/G/B 計(jì)算結(jié)果如下:
0*128=0;1*128=128;2*128=256。
計(jì)算結(jié)果0,128,256為等差數(shù)列,但是顯然256溢出。
如果對(duì)公式進(jìn)行修正ΔR/G/B =n*128-1,ΔR/G/B 計(jì)算結(jié)果如下:
0*128-1=-1;1*128-1=127;2*128-1=255。
計(jì)算結(jié)果-1,127,255為等差數(shù)列,雖然255在數(shù)值范圍內(nèi),但是顯然-1溢出了。
所以需要引入誤差修正及特殊處理方能達(dá)到效果:公差c增加-0.5的誤差修正,利用Round函數(shù)進(jìn)行四舍五入,則ΔR/G/B =Round(n*(128-0.5)+0),計(jì)算結(jié)果如下:
Round(0*(128-0.5)+0)=0;
Round(1*(128-0.5)+0)=128;
Round(2*(128-0.5)+0)=255
計(jì)算結(jié)果為0,128,255均在RGB數(shù)值范圍內(nèi)。
2.4 ?公差為64時(shí)的誤差修正
同理,公差為64時(shí),公差c增加-0.16的誤差修正,整體增加0.13,利用Round函數(shù)進(jìn)行四舍五入,則ΔR/G/B =Round(n*(64-0.16)+0.13),計(jì)算結(jié)果如下:
Round(0*(64-0.16)+0.13)=0;
Round(1*(64-0.16)+0.13)=64;
Round(2*(64-0.16)+0.13)=128;
Round(3*(64-0.16)+0.13)=192;
Round(4*(64-0.16)+0.13)=255;
計(jì)算結(jié)果0,64,128,192,255均在RGB數(shù)值范圍內(nèi)。
3 ?全組合編碼公式在配色方案中的應(yīng)用
為研究方便,在圖譜的下面單元格中分別標(biāo)注主色和背景色的RGB數(shù)值。主色和背景色都對(duì)應(yīng)了RGB三個(gè)顏色,每個(gè)顏色都要按照公差進(jìn)行擴(kuò)展,當(dāng)分段數(shù)增量為n時(shí),6個(gè)數(shù)值都要擴(kuò)展n次,也就是6個(gè)數(shù)值都有n個(gè)選擇,按照排列組合來說,配色方案共有n^6種情況[5]。配色方案的擴(kuò)展算法如下:
ΔR=R增+Round(n*(c+誤差修正)+總修正)
ΔG=G增+Round(n* (c+誤差修正)+總修正)+Round (n*(c+誤差修正)+總修正)*255
ΔB=B增+Round(n* (c+誤差修正)+總修正)+Round (n*(c+誤差修正)+總修正)*255+Round(n*(c+誤差修正)+總修正)*255*255
計(jì)算色彩總偏移量按照上面的算法可以得到當(dāng)前顏色YRGB:
YRGB=ΔR/G/B+ΔR*Rd+ΔG*Rd*Rr+ΔB*Rd*Rr*Rb
4 ?配色方案自動(dòng)生成算法
4.1 ?數(shù)據(jù)定義
Dim A_T As Double
Dim S_Code1 As Double
Dim S_Code2 As Double
Dim A1_T As Double
Dim A2_T As Double
按照對(duì)比色基本圖譜數(shù)字化模型進(jìn)行定義,根據(jù)公差64對(duì)RGB進(jìn)行擴(kuò)展,如圖2所示。
圖2 ?公差64的對(duì)比色配色方案
4.2 ?配色方案生成算法
A_T = (2 ^ (Int(Text6.Text) - 1)) * (8 ^ (Int(Text5.Text) - 1)) * (4096 ^ (Int(Text7.Text) - 1))
S_Code1 = S_Code - Int(S_Code / (2 ^ 27)) * (2 ^ 27)
S_Code2 = Int(S_Code / (2 ^ 27))
A1_T = A_T - Int(A_T / (2 ^ 27)) * (2 ^ 27)
A2_T = Int(A_T / (2 ^ 27))
c = (A1_T And S_Code1)
If (A1_T And S_Code1) = A1_T Then
Text8.Text = 1
Else
Text8.Text = 0
End If
If (A2_T And S_Code2) = A2_T Then
Text9.Text = 1
Else
Text9.Text = 0
End If
If (Int(Text8.Text) And Int(Text9.Text)) Then
Text4.Text = A_T & "0"
Else
Text4.Text = A_T & "255"
End If
5 ?計(jì)算結(jié)果
按照生成算法執(zhí)行后,可自動(dòng)得到對(duì)比色配色方案結(jié)果(共3 375個(gè)結(jié)果,中間結(jié)果省略)。
6 ?結(jié) ?語
通過分析數(shù)字色光的特性,利用數(shù)字化技術(shù)和全組合編碼算法完成了以RGB顏色模式為基礎(chǔ)的對(duì)比色配色方案,配色方案以“回”字形為基本圖譜,按照九宮格形式完成了無限組合配色方案的有限生成方案。算法優(yōu)化、高效,同時(shí)數(shù)值清晰,適合網(wǎng)頁(yè)設(shè)計(jì)、平面設(shè)計(jì)、服裝設(shè)計(jì),甚至在服裝搭配、家居設(shè)計(jì)和家具搭配等方面都具有應(yīng)用價(jià)值。
參考文獻(xiàn)
[1]郭濤,李芳芳.關(guān)于多媒體演示文稿色彩應(yīng)用的研究[J].甘肅科技,2012,28(6):16-19.
[2]張紅.多媒體教學(xué)中存在的問題及對(duì)策[J].安徽農(nóng)業(yè)科學(xué),2009,37(22):10801,10811.
[3]劉正岐,郭濤.基于邏輯運(yùn)算的多維數(shù)據(jù)全組合編碼算法研究[J]. 物聯(lián)網(wǎng)技術(shù),2011,1(9):41-44.
[4]藺世軍.多媒體課件制作的探索[J].中國(guó)科教創(chuàng)新導(dǎo)刊,2011(16):159
[5]劉甘娜,朱文勝,付先平.多媒體應(yīng)用基礎(chǔ)[M].2版.北京:高等教育出版社,2000.
Round(3*(64-0.16)+0.13)=192;
Round(4*(64-0.16)+0.13)=255;
計(jì)算結(jié)果0,64,128,192,255均在RGB數(shù)值范圍內(nèi)。
3 ?全組合編碼公式在配色方案中的應(yīng)用
為研究方便,在圖譜的下面單元格中分別標(biāo)注主色和背景色的RGB數(shù)值。主色和背景色都對(duì)應(yīng)了RGB三個(gè)顏色,每個(gè)顏色都要按照公差進(jìn)行擴(kuò)展,當(dāng)分段數(shù)增量為n時(shí),6個(gè)數(shù)值都要擴(kuò)展n次,也就是6個(gè)數(shù)值都有n個(gè)選擇,按照排列組合來說,配色方案共有n^6種情況[5]。配色方案的擴(kuò)展算法如下:
ΔR=R增+Round(n*(c+誤差修正)+總修正)
ΔG=G增+Round(n* (c+誤差修正)+總修正)+Round (n*(c+誤差修正)+總修正)*255
ΔB=B增+Round(n* (c+誤差修正)+總修正)+Round (n*(c+誤差修正)+總修正)*255+Round(n*(c+誤差修正)+總修正)*255*255
計(jì)算色彩總偏移量按照上面的算法可以得到當(dāng)前顏色YRGB:
YRGB=ΔR/G/B+ΔR*Rd+ΔG*Rd*Rr+ΔB*Rd*Rr*Rb
4 ?配色方案自動(dòng)生成算法
4.1 ?數(shù)據(jù)定義
Dim A_T As Double
Dim S_Code1 As Double
Dim S_Code2 As Double
Dim A1_T As Double
Dim A2_T As Double
按照對(duì)比色基本圖譜數(shù)字化模型進(jìn)行定義,根據(jù)公差64對(duì)RGB進(jìn)行擴(kuò)展,如圖2所示。
圖2 ?公差64的對(duì)比色配色方案
4.2 ?配色方案生成算法
A_T = (2 ^ (Int(Text6.Text) - 1)) * (8 ^ (Int(Text5.Text) - 1)) * (4096 ^ (Int(Text7.Text) - 1))
S_Code1 = S_Code - Int(S_Code / (2 ^ 27)) * (2 ^ 27)
S_Code2 = Int(S_Code / (2 ^ 27))
A1_T = A_T - Int(A_T / (2 ^ 27)) * (2 ^ 27)
A2_T = Int(A_T / (2 ^ 27))
c = (A1_T And S_Code1)
If (A1_T And S_Code1) = A1_T Then
Text8.Text = 1
Else
Text8.Text = 0
End If
If (A2_T And S_Code2) = A2_T Then
Text9.Text = 1
Else
Text9.Text = 0
End If
If (Int(Text8.Text) And Int(Text9.Text)) Then
Text4.Text = A_T & "0"
Else
Text4.Text = A_T & "255"
End If
5 ?計(jì)算結(jié)果
按照生成算法執(zhí)行后,可自動(dòng)得到對(duì)比色配色方案結(jié)果(共3 375個(gè)結(jié)果,中間結(jié)果省略)。
6 ?結(jié) ?語
通過分析數(shù)字色光的特性,利用數(shù)字化技術(shù)和全組合編碼算法完成了以RGB顏色模式為基礎(chǔ)的對(duì)比色配色方案,配色方案以“回”字形為基本圖譜,按照九宮格形式完成了無限組合配色方案的有限生成方案。算法優(yōu)化、高效,同時(shí)數(shù)值清晰,適合網(wǎng)頁(yè)設(shè)計(jì)、平面設(shè)計(jì)、服裝設(shè)計(jì),甚至在服裝搭配、家居設(shè)計(jì)和家具搭配等方面都具有應(yīng)用價(jià)值。
參考文獻(xiàn)
[1]郭濤,李芳芳.關(guān)于多媒體演示文稿色彩應(yīng)用的研究[J].甘肅科技,2012,28(6):16-19.
[2]張紅.多媒體教學(xué)中存在的問題及對(duì)策[J].安徽農(nóng)業(yè)科學(xué),2009,37(22):10801,10811.
[3]劉正岐,郭濤.基于邏輯運(yùn)算的多維數(shù)據(jù)全組合編碼算法研究[J]. 物聯(lián)網(wǎng)技術(shù),2011,1(9):41-44.
[4]藺世軍.多媒體課件制作的探索[J].中國(guó)科教創(chuàng)新導(dǎo)刊,2011(16):159
[5]劉甘娜,朱文勝,付先平.多媒體應(yīng)用基礎(chǔ)[M].2版.北京:高等教育出版社,2000.
Round(3*(64-0.16)+0.13)=192;
Round(4*(64-0.16)+0.13)=255;
計(jì)算結(jié)果0,64,128,192,255均在RGB數(shù)值范圍內(nèi)。
3 ?全組合編碼公式在配色方案中的應(yīng)用
為研究方便,在圖譜的下面單元格中分別標(biāo)注主色和背景色的RGB數(shù)值。主色和背景色都對(duì)應(yīng)了RGB三個(gè)顏色,每個(gè)顏色都要按照公差進(jìn)行擴(kuò)展,當(dāng)分段數(shù)增量為n時(shí),6個(gè)數(shù)值都要擴(kuò)展n次,也就是6個(gè)數(shù)值都有n個(gè)選擇,按照排列組合來說,配色方案共有n^6種情況[5]。配色方案的擴(kuò)展算法如下:
ΔR=R增+Round(n*(c+誤差修正)+總修正)
ΔG=G增+Round(n* (c+誤差修正)+總修正)+Round (n*(c+誤差修正)+總修正)*255
ΔB=B增+Round(n* (c+誤差修正)+總修正)+Round (n*(c+誤差修正)+總修正)*255+Round(n*(c+誤差修正)+總修正)*255*255
計(jì)算色彩總偏移量按照上面的算法可以得到當(dāng)前顏色YRGB:
YRGB=ΔR/G/B+ΔR*Rd+ΔG*Rd*Rr+ΔB*Rd*Rr*Rb
4 ?配色方案自動(dòng)生成算法
4.1 ?數(shù)據(jù)定義
Dim A_T As Double
Dim S_Code1 As Double
Dim S_Code2 As Double
Dim A1_T As Double
Dim A2_T As Double
按照對(duì)比色基本圖譜數(shù)字化模型進(jìn)行定義,根據(jù)公差64對(duì)RGB進(jìn)行擴(kuò)展,如圖2所示。
圖2 ?公差64的對(duì)比色配色方案
4.2 ?配色方案生成算法
A_T = (2 ^ (Int(Text6.Text) - 1)) * (8 ^ (Int(Text5.Text) - 1)) * (4096 ^ (Int(Text7.Text) - 1))
S_Code1 = S_Code - Int(S_Code / (2 ^ 27)) * (2 ^ 27)
S_Code2 = Int(S_Code / (2 ^ 27))
A1_T = A_T - Int(A_T / (2 ^ 27)) * (2 ^ 27)
A2_T = Int(A_T / (2 ^ 27))
c = (A1_T And S_Code1)
If (A1_T And S_Code1) = A1_T Then
Text8.Text = 1
Else
Text8.Text = 0
End If
If (A2_T And S_Code2) = A2_T Then
Text9.Text = 1
Else
Text9.Text = 0
End If
If (Int(Text8.Text) And Int(Text9.Text)) Then
Text4.Text = A_T & "0"
Else
Text4.Text = A_T & "255"
End If
5 ?計(jì)算結(jié)果
按照生成算法執(zhí)行后,可自動(dòng)得到對(duì)比色配色方案結(jié)果(共3 375個(gè)結(jié)果,中間結(jié)果省略)。
6 ?結(jié) ?語
通過分析數(shù)字色光的特性,利用數(shù)字化技術(shù)和全組合編碼算法完成了以RGB顏色模式為基礎(chǔ)的對(duì)比色配色方案,配色方案以“回”字形為基本圖譜,按照九宮格形式完成了無限組合配色方案的有限生成方案。算法優(yōu)化、高效,同時(shí)數(shù)值清晰,適合網(wǎng)頁(yè)設(shè)計(jì)、平面設(shè)計(jì)、服裝設(shè)計(jì),甚至在服裝搭配、家居設(shè)計(jì)和家具搭配等方面都具有應(yīng)用價(jià)值。
參考文獻(xiàn)
[1]郭濤,李芳芳.關(guān)于多媒體演示文稿色彩應(yīng)用的研究[J].甘肅科技,2012,28(6):16-19.
[2]張紅.多媒體教學(xué)中存在的問題及對(duì)策[J].安徽農(nóng)業(yè)科學(xué),2009,37(22):10801,10811.
[3]劉正岐,郭濤.基于邏輯運(yùn)算的多維數(shù)據(jù)全組合編碼算法研究[J]. 物聯(lián)網(wǎng)技術(shù),2011,1(9):41-44.
[4]藺世軍.多媒體課件制作的探索[J].中國(guó)科教創(chuàng)新導(dǎo)刊,2011(16):159
[5]劉甘娜,朱文勝,付先平.多媒體應(yīng)用基礎(chǔ)[M].2版.北京:高等教育出版社,2000.