一種根據(jù)主色調(diào)智能脫色的圖像處理方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其在接收的原始圖像中選擇特定區(qū)域作為主色調(diào),然后將原始圖像及主色調(diào)區(qū)域進(jìn)行色彩空間的轉(zhuǎn)換得到轉(zhuǎn)換圖像,并對(duì)所述轉(zhuǎn)換圖像的對(duì)應(yīng)像素點(diǎn)的色調(diào)與主色調(diào)的色調(diào)進(jìn)行閥值計(jì)算得到對(duì)應(yīng)像素點(diǎn)的透明度值,最后根據(jù)所述對(duì)應(yīng)像素點(diǎn)的透明度值對(duì)原始圖像對(duì)應(yīng)像素點(diǎn)的顏色值與原始圖像灰度化后的灰度圖像的顏色值進(jìn)行混合計(jì)算得到結(jié)果圖像,從而實(shí)現(xiàn)圖像的智能脫色,無(wú)需通過(guò)人工方式對(duì)圖像的局部色彩進(jìn)行脫色處理,為用戶(hù)節(jié)省大量時(shí)間并且操作方便。
【專(zhuān)利說(shuō)明】一種根據(jù)主色調(diào)智能脫色的圖像處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種圖像處理方法,特別是根據(jù)主色調(diào)智能脫色的圖像處理方法。
【背景技術(shù)】
[0002]圖像脫色即將圖像的顏色進(jìn)行灰度化處理得到的圖像;而使圖像脫色,目前的做法是:我們將圖像導(dǎo)入圖像處理軟件后對(duì)圖像進(jìn)行局部彩色的處理才能達(dá)到我們想要的效果,這個(gè)需要我們花時(shí)間與精力去涂抹想要保留的顏色效果。
【發(fā)明內(nèi)容】
[0003]本發(fā)明為解決上述問(wèn)題,提供了一種根據(jù)主色調(diào)智能脫色的新的圖像處理方法,其特征在于,包括以下步驟:
[0004]10.接收原始圖像;
[0005]20.選擇原始圖像中的特定區(qū)域作為主色調(diào);
[0006]30.將原始圖像及主色調(diào)區(qū)域進(jìn)行色彩空間的轉(zhuǎn)換得到轉(zhuǎn)換圖像;
[0007]40.對(duì)所述轉(zhuǎn)換圖像的對(duì)應(yīng)像素點(diǎn)的色調(diào)與主色調(diào)的色調(diào)進(jìn)行閥值計(jì)算得到對(duì)應(yīng)像素點(diǎn)的透明度值;
[0008]50.根據(jù)所述對(duì)應(yīng)像素點(diǎn)的透明度值對(duì)原始圖像對(duì)應(yīng)像素點(diǎn)的顏色值與原始圖像灰度化后的灰度圖像的顏色值進(jìn)行混合計(jì)算得到結(jié)果圖像。
[0009]作為一種較佳實(shí)施例,所述步驟20中選擇原始圖像中的特定區(qū)域作為主色調(diào),主要是以選擇的點(diǎn)為中心,設(shè)定N*N大小的矩形為色調(diào)區(qū)域,獲取色調(diào)區(qū)域的所有顏色的值,并將其進(jìn)行均值計(jì)算得到主色調(diào)的顏色值。
[0010]作為一種較佳實(shí)施例,所述的均值計(jì)算方法為:統(tǒng)計(jì)色調(diào)區(qū)域里紅色通道、綠色通道、藍(lán)色通道的顏色和,將該顏色和除以顏色總數(shù)N*N,得到紅色通道、綠色通道、藍(lán)色通道的平均顏色,該平均顏色即為主色調(diào);其中N的范圍為2至40。
[0011]作為一種較佳實(shí)施例,所述步驟30中進(jìn)行色彩空間的轉(zhuǎn)換,主要是將RGB色彩空間轉(zhuǎn)換為HSL色彩空間。
[0012]作為一種較佳實(shí)施例,所述將RGB色彩空間轉(zhuǎn)換為HSL色彩空間的步驟包括:
[0013]31:把RGB值歸一化,轉(zhuǎn)換為[0.0,1.0]中數(shù)值;
[0014]32:找出R, G和B中的最大值maxcolor與最小值mincolor ;
[0015]33:計(jì)算亮度 L:L = (maxcolor+mincolor) /2
[0016]34:如果最大值和最小值的顏色值相同,即表示灰色,那么S定義為0,而Η未定義并在程序中通常寫(xiě)成0 ;
[0017]35:否則,根據(jù)亮度L計(jì)算飽和度S:
[0018]如果 L < 0.5 ;則 S = (maxcolor-mincolor) / (maxcolor+mincolor);
[0019]如果L > = 0.5 ;則 S = (maxcolor-mincolor) / (2.0-maxcolor-mincolor);
[0020]36:計(jì)算色調(diào)Η:[0021]如果R = maxcolor, Η = (G_B)/ (maxcolor-mincolor);
[0022]如果G = maxcolor, H = 2.0+ (B-R) / (maxcolor-mincolor);
[0023]如果B = maxcolor, H = 4.0+ (R-G) / (maxcolor-mincolor);
[0024]H = H*60.0,如果H為負(fù)值,則加360。
[0025]作為一種較佳實(shí)施例,所述步驟40中計(jì)算透明度值的方法如下:
[0026]41:計(jì)算轉(zhuǎn)換圖像中對(duì)應(yīng)像素點(diǎn)的色調(diào)與主色調(diào)的色調(diào)的差值,公式為:
[0027]Vh = Hue-standHue ;
[0028]其中,Vh為色調(diào)差值;Hue為對(duì)應(yīng)像素點(diǎn)的色調(diào)值;standHue為主色調(diào)的色調(diào)值。
[0029]42:判斷Vh是否大于0.5 ;如果大于0.5的話,則Vh = Vh_l.0 ;如果Vh小于-0.5的話,則 Vh = Vh+1.0。
[0030]43:對(duì)Vh進(jìn)行取絕對(duì)值,得到Vh2 ;
[0031]44:對(duì)Vh2進(jìn)行閾值VThreshold計(jì)算,其計(jì)算方法為:
[0032]如果Vh2大于閾值VThreshold的話,則透明度alpha為1.0 ;
[0033]否則透明度alpha = Vh2/VThreshold ;
[0034]其中,閾值的范圍從0.1到0.5之間。
[0035]作為一種較佳實(shí)施例,所述步驟50中根據(jù)所述透明度值對(duì)原始圖像對(duì)應(yīng)像素點(diǎn)的顏色值與原始圖像灰度化后的灰度圖像的顏色值進(jìn)行混合計(jì)算得到結(jié)果圖像,其中:
[0036]灰度化的公式為:
[0037]GRAY = (RED*306+GREEN*601+BLUE* 117+512)/1024;
[0038]或
[0039]GRAY = 0.299*RED+0.587*GREEN+0.114*BLUE ;
[0040]其中,GRAY為灰度圖像的當(dāng)前像素點(diǎn)的灰度值;RED、GREEN、BLUE分別為原始圖像的當(dāng)前像素點(diǎn)的紅、綠、藍(lán)通道的顏色值。
[0041]混合計(jì)算的公式為:
[0042]mixColor = grayColor*(1.0-alpha)+alpha*oralColor
[0043]其中,mixColor為結(jié)果圖像的像素點(diǎn)上的顏色值;grayColor為灰度圖像的像素點(diǎn)上的顏色值;oralColor為原始圖像的像素點(diǎn)上的顏色值,alpha為透明度值。
[0044]本發(fā)明的有益效果是:
[0045]本發(fā)明所述的一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其在接收的原始圖像中選擇特定區(qū)域作為主色調(diào),然后將原始圖像及主色調(diào)區(qū)域進(jìn)行色彩空間的轉(zhuǎn)換得到轉(zhuǎn)換圖像,并對(duì)所述轉(zhuǎn)換圖像的對(duì)應(yīng)像素點(diǎn)的色調(diào)與主色調(diào)的色調(diào)進(jìn)行閥值計(jì)算得到對(duì)應(yīng)像素點(diǎn)透明度值,最后根據(jù)所述對(duì)應(yīng)像素點(diǎn)的透明度值對(duì)原始圖像對(duì)應(yīng)像素點(diǎn)的顏色值與原始圖像灰度化后的灰度圖像的顏色值進(jìn)行混合計(jì)算得到結(jié)果圖像,從而實(shí)現(xiàn)圖像的智能脫色,無(wú)需通過(guò)人工方式對(duì)圖像的局部色彩進(jìn)行脫色處理,為用戶(hù)節(jié)省大量時(shí)間并且操作方便。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0046]此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本發(fā)明的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
[0047]圖1為本發(fā)明一種根據(jù)主色調(diào)智能脫色的圖像處理方法的流程簡(jiǎn)圖;【具體實(shí)施方式】
[0048]為了使本發(fā)明所要解決的技術(shù)問(wèn)題、技術(shù)方案及有益效果更加清楚、明白,以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0049]如圖1所示,本發(fā)明的一種根據(jù)主色調(diào)智能脫色的圖像處理方法,包括以下步驟:
[0050]10.接收原始圖像;
[0051]20.選擇原始圖像中的特定區(qū)域作為主色調(diào);
[0052]30.將原始圖像及主色調(diào)區(qū)域進(jìn)行色彩空間的轉(zhuǎn)換得到轉(zhuǎn)換圖像;
[0053]40.對(duì)所述轉(zhuǎn)換圖像的對(duì)應(yīng)像素點(diǎn)的色調(diào)與主色調(diào)的色調(diào)進(jìn)行閥值計(jì)算得到對(duì)應(yīng)像素點(diǎn)的透明度值;
[0054]50.根據(jù)所述對(duì)應(yīng)像素點(diǎn)的透明度值對(duì)原始圖像對(duì)應(yīng)像素點(diǎn)的顏色值與原始圖像灰度化后的灰度圖像的顏色值進(jìn)行混合計(jì)算得到結(jié)果圖像。
[0055]其中,所述原始圖像的格式可以是jpeg格式、png格式、jpg格式、bmp格式或wbmp格式等;或者所述原始圖像為視頻文件中截取的單幀圖像,該視頻文件的格式為avi格式、mov格式、rvmb格式或rm格式等。
[0056]所述步驟20中選擇原始圖像中的特定區(qū)域作為主色調(diào),主要是以選擇的點(diǎn)為中心,設(shè)定N*N大小的矩形為色調(diào)區(qū)域,獲取色調(diào)區(qū)域的所有顏色的值,并將其進(jìn)行均值計(jì)算得到主色調(diào)的顏色值;所述的均值計(jì)算方法為:統(tǒng)計(jì)色調(diào)區(qū)域里紅色通道、綠色通道、藍(lán)色通道的顏色和,將該顏色和除以顏色總數(shù)N*N,得到紅色通道、綠色通道、藍(lán)色通道的平均顏色,該平均顏色即為主色調(diào);其中N的范圍為2至40,優(yōu)選為20。
[0057]所述步驟30中進(jìn)行色彩空間的轉(zhuǎn)換,主要是將RGB色彩空間轉(zhuǎn)換為HSL色彩空間;HSL色彩空間是工業(yè)界的一種顏色標(biāo)準(zhǔn),是通過(guò)對(duì)色調(diào)(H)、飽和度(S)、亮度(L)三個(gè)顏色通道的變化以及它們相互之間的疊加來(lái)得到各式各樣的顏色的,HSL即是代表色調(diào),飽和度,亮度三個(gè)通道的顏色,這個(gè)標(biāo)準(zhǔn)幾乎包括了人類(lèi)視力所能感知的所有顏色,是目前運(yùn)用最廣的顏色系統(tǒng)之一。
[0058]所述將RGB色彩空間轉(zhuǎn)換為HSL色彩空間的步驟包括:
[0059]31:把RGB值歸一化,轉(zhuǎn)換為[0.0,1.0]中數(shù)值;
[0060]32:找出R, G和B中的最大值maxcolor與最小值mincolor ;
[0061]33:計(jì)算亮度 L:L = (maxcolor+mincolor) /2
[0062]34:如果最大值和最小值的顏色值相同,即表示灰色,那么S定義為0,而Η未定義并在程序中通常寫(xiě)成0 ;
[0063]35:否則,根據(jù)亮度L計(jì)算飽和度S:
[0064]如果 L < 0.5 ;則 S = (maxcolor-mincolor) / (maxcolor+mincolor);
[0065]如果L > = 0.5 ;則 S = (maxcolor-mincolor) / (2.0-maxcolor-mincolor);
[0066]36:計(jì)算色調(diào)Η:
[0067]如果 R = maxcolor, H = (G_B)/ (maxcolor-mincolor);
[0068]如果 G = maxcolor, H = 2.0+ (B-R) / (maxcolor-mincolor);
[0069]如果 B = maxcolor, H = 4.0+ (R-G) / (maxcolor-mincolor);[0070]Η = Η*60.0,如果Η為負(fù)值,則加360。
[0071]上述步驟33中可以看出,亮度僅與圖像的最多顏色成分和最少的顏色成分的總量有關(guān)。売度越小,圖像越趨于黑色。売度越聞圖像越趨于明売的白色;
[0072]上述步驟35中可以看出,飽和度與圖像的最多顏色成分和最少的顏色成分的差量有關(guān)。飽和度越小,圖像越趨于灰度圖像;飽和度越大,圖像越鮮艷,給人的感覺(jué)是彩色的,而不是黑白灰的圖像;
[0073]上述步驟36中的色調(diào)決定了人對(duì)圖像的不同的顏色感受,從上述步驟36的計(jì)算看,Η分成0?6區(qū)域;RGB顏色空間是一個(gè)立方體,而HSL顏色空間是兩個(gè)六角形錐體,其中的L是RGB立方體的主對(duì)角線;因此,RGB立方體的頂點(diǎn):紅、黃、綠、青、藍(lán)和品紅就成為HSL六角形的頂點(diǎn),而數(shù)值0?6就告訴我們?chǔ)г谀膫€(gè)部分。
[0074]本實(shí)施例中,所述步驟40中計(jì)算透明度值的方法如下:
[0075]41:計(jì)算轉(zhuǎn)換圖像中對(duì)應(yīng)像素點(diǎn)的色調(diào)與主色調(diào)的色調(diào)的差值,公式為:
[0076]Vh = Hue-standHue ;
[0077]其中,Vh為色調(diào)差值;Hue為對(duì)應(yīng)像素點(diǎn)的色調(diào)值;standHue為主色調(diào)的色調(diào)值。
[0078]42:判斷Vh是否大于0.5 ;如果大于0.5的話,則Vh = Vh_l.0 ;如果Vh小于-0.5的話,則 Vh = Vh+1.0。
[0079]43:對(duì)Vh進(jìn)行取絕對(duì)值,得到Vh2 ;
[0080]44:對(duì)Vh2進(jìn)行閾值VThreshold計(jì)算,其計(jì)算方法為:
[0081]如果Vh2大于閾值VThreshold的話,則透明度alpha為1.0 ;
[0082]否則透明度alpha = Vh2/VThreshold ;
[0083]其中,閾值的范圍從0.1到0.5之間,優(yōu)選為0.12。
[0084]所述步驟50中根據(jù)所述透明度值對(duì)原始圖像對(duì)應(yīng)像素點(diǎn)的顏色值與原始圖像灰度化后的灰度圖像的顏色值進(jìn)行混合計(jì)算得到結(jié)果圖像,其中:
[0085]灰度化的公式為:
[0086]GRAY = (RED*306+GREEN*601+BLUE* 117+512)/1024;
[0087]或
[0088]GRAY = 0.299*RED+0.587*GREEN+0.114*BLUE ;
[0089]其中,GRAY為灰度圖像的當(dāng)前像素點(diǎn)的灰度值;RED、GREEN、BLUE分別為原始圖像的當(dāng)前像素點(diǎn)的紅、綠、藍(lán)通道的顏色值。
[0090]混合計(jì)算的公式為:
[0091]mixColor = grayColor*(1.0-alpha)+alpha*oralColor
[0092]其中,mixColor為結(jié)果圖像的像素點(diǎn)上的顏色值;grayColor為灰度圖像的像素點(diǎn)上的顏色值;oralColor為原始圖像的像素點(diǎn)上的顏色值,alpha為透明度值。
[0093]上述說(shuō)明示出并描述了本發(fā)明的優(yōu)選實(shí)施例,如前,應(yīng)當(dāng)理解本發(fā)明并非局限于本文所披露的形式,不應(yīng)看作是對(duì)其他實(shí)施例的排除,而可用于各種其他組合、修改和環(huán)境,并能夠在本文發(fā)明構(gòu)想范圍內(nèi),通過(guò)上述教導(dǎo)或相關(guān)領(lǐng)域的技術(shù)或知識(shí)進(jìn)行改動(dòng)。而本領(lǐng)域人員所進(jìn)行的改動(dòng)和變化不脫離本發(fā)明的精神和范圍,則都應(yīng)在本發(fā)明所附權(quán)利要求的保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其特征在于,包括以下步驟:10.接收原始圖像;20.選擇原始圖像中的特定區(qū)域作為主色調(diào);30.將原始圖像及主色調(diào)區(qū)域進(jìn)行色彩空間的轉(zhuǎn)換得到轉(zhuǎn)換圖像;40.對(duì)所述轉(zhuǎn)換圖像的對(duì)應(yīng)像素點(diǎn)的色調(diào)與主色調(diào)的色調(diào)進(jìn)行閥值計(jì)算得到對(duì)應(yīng)像素點(diǎn)的透明度值;50.根據(jù)所述對(duì)應(yīng)像素點(diǎn)的透明度值對(duì)原始圖像對(duì)應(yīng)像素點(diǎn)的顏色值與原始圖像灰度化后的灰度圖像的對(duì)應(yīng)像素點(diǎn)的顏色值進(jìn)行混合計(jì)算得到結(jié)果圖像。
2.根據(jù)權(quán)利要求1所述的一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其特征在于:所述步驟20中選擇原始圖像中的特定區(qū)域作為主色調(diào),主要是以選擇的點(diǎn)為中心,設(shè)定N*N大小的矩形為主色調(diào)區(qū)域,獲取主色調(diào)區(qū)域的所有像素點(diǎn)的顏色值,并將其進(jìn)行均值計(jì)算得到主色調(diào)的平均顏色值。
3.根據(jù)權(quán)利要求2所述的一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其特征在于:所述的均值計(jì)算方法為:統(tǒng)計(jì)色調(diào)區(qū)域里紅色通道、綠色通道、藍(lán)色通道各自的顏色和,將該各自的顏色和除以顏色總數(shù)N*N,得到紅色通道、綠色通道、藍(lán)色通道的平均顏色,該平均顏色即為主色調(diào); 其中N的范圍為2至40。
4.根據(jù)權(quán)利要求1所述的一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其特征在于:所述步驟30中進(jìn)行色彩空間的轉(zhuǎn)換,主要是將RGB色彩空間轉(zhuǎn)換為HSL色彩空間。
5.根據(jù)權(quán)利要求4所述的一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其特征在于:所述將RGB色彩空間轉(zhuǎn)換為HSL色彩空間的步驟包括:31:把RGB值歸一化,轉(zhuǎn)換為[0.0,1.0]中數(shù)值;32:找出R, G和B中的最大值maxcolor與最小值mincolor ;33:計(jì)算亮度 L:L = (maxcolor+mincolor) /234:如果最大值和最小值的顏色值相同,即表示灰色,那么S定義為0,而Η未定義并在程序中通常寫(xiě)成0 ;35:否則,根據(jù)亮度L計(jì)算飽和度S:如果 L < 0.5 ;則 S = (maxcolor-mincolor) / (maxcolor+mincolor);如果 L > = 0.5 ;則 S = (maxcolor-mincolor) / (2.0-maxcolor-mincolor);36:計(jì)算色調(diào)Η:如果 R = maxcolor, H = (G-B) / (maxcolor-mincolor);如果 G = maxcolor, H = 2.0+ (B-R) / (maxcolor-mincolor);如果 B = maxcolor, H = 4.0+ (R-G) / (maxcolor-mincolor);H = H*60.0,如果H為負(fù)值,則加360。
6.根據(jù)權(quán)利要求1所述的一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其特征在于:所述步驟40中計(jì)算對(duì)應(yīng)像素點(diǎn)的透明度值的方法如下:41:計(jì)算轉(zhuǎn)換圖像中對(duì)應(yīng)像素點(diǎn)的色調(diào)與主色調(diào)的色調(diào)的差值,公式為:Vh = Hue-standHue ;其中,Vh為色調(diào)差值;Hue為對(duì)應(yīng)像素點(diǎn)的色調(diào)值;standHue為主色調(diào)的色調(diào)值。42:判斷Vh是否大于0.5 ;如果大于0.5的話,則Vh = Vh-1.0 ;如果Vh小于-0.5的話,則 Vh = Vh+1.0。43:對(duì)Vh進(jìn)行取絕對(duì)值,得到Vh2 ;44:對(duì)Vh2進(jìn)行閾值VThreshold計(jì)算,其計(jì)算方法為:如果Vh2大于閾值VThreshold的話,則透明度alpha為1.0 ;否則透明度 alpha = Vh2/VThreshold ;其中,閾值VThreshold的范圍從0.1到0.5之間。
7.根據(jù)權(quán)利要求1所述的一種根據(jù)主色調(diào)智能脫色的圖像處理方法,其特征在于:所述步驟50中根據(jù)所述對(duì)應(yīng)像素點(diǎn)透明度值對(duì)原始圖像對(duì)應(yīng)像素點(diǎn)的顏色值與原始圖像灰度化后的灰度圖像的顏色值進(jìn)行混合計(jì)算得到結(jié)果圖像,其中:灰度化的公式為:GRAY = (RED*306+GREEN*601+BLUE*117+512)/1024 ;或GRAY = 0.299*RED+0.587*GREEN+0.114*BLUE:其中,GRAY為灰度圖像的當(dāng)前像素點(diǎn)的灰度值;RED、GREEN、BLUE分別為原始圖像的當(dāng)前像素點(diǎn)的紅、綠、藍(lán)通道的顏色值?;旌嫌?jì)算的公式為:mixColor = grayColor* (1.0-alpha)+alpha*oralColor其中,mixColor為結(jié)果圖像的像素點(diǎn)上的顏色值;grayColor為灰度圖像的像素點(diǎn)上的顏色值;oralColor為原始圖像的像素點(diǎn)上的顏色值,alpha為透明度值。
【文檔編號(hào)】G06T5/00GK103679658SQ201310681665
【公開(kāi)日】2014年3月26日 申請(qǐng)日期:2013年12月13日 優(yōu)先權(quán)日:2013年12月13日
【發(fā)明者】張偉, 傅松林, 葉志鴻, 胡瑞鑫 申請(qǐng)人:廈門(mén)美圖網(wǎng)科技有限公司