一種圖片主色系獲取方法及裝置制造方法
【專(zhuān)利摘要】本發(fā)明涉及一種圖片主色系獲取方法及裝置,包括以下步驟:逐像素點(diǎn)的掃描待處理圖片,獲取待處理圖片的RGB顏色值;按照RGB顏色值重復(fù)的次數(shù)將RGB顏色值進(jìn)行排序,得到RGB顏色值數(shù)組;在RGB顏色數(shù)組中提取若干個(gè)重復(fù)次數(shù)最多的RGB顏色值作為主顏色值數(shù)組;將RGB顏色劃分為若干個(gè)色系,并在每個(gè)色系中劃分若干個(gè)節(jié)點(diǎn),得到多個(gè)劃分閾值;將主顏色值數(shù)組中的每個(gè)RGB顏色值分別進(jìn)行轉(zhuǎn)化運(yùn)算,得到若干個(gè)轉(zhuǎn)化結(jié)果,將每個(gè)轉(zhuǎn)化結(jié)果分別與所有劃分閾值逐一匹配,得到多個(gè)與轉(zhuǎn)化結(jié)果相同的劃分閾值,該多個(gè)劃分閾值為該RGB顏色值的主色系。本發(fā)明能夠準(zhǔn)確靈活的獲取圖片的主色系顏色值。
【專(zhuān)利說(shuō)明】一種圖片主色系獲取方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及圖片主色系獲取方法及裝置。
【背景技術(shù)】
[0002] 在圖庫(kù)、素材類(lèi)網(wǎng)站、攝影網(wǎng)站等類(lèi)似網(wǎng)站或應(yīng)用中,圖片的數(shù)量成千上萬(wàn),通過(guò) 主色調(diào)篩選圖片是一種非常有效的篩選方法。而要實(shí)現(xiàn)按顏色篩選圖片,則需要提取每張 圖片的主色系,以供篩選圖片時(shí)進(jìn)行索引。本技術(shù)提供了一種準(zhǔn)確靈活的提取圖片主色系 的方法。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種能夠準(zhǔn)確靈活的獲取圖片的主色系顏色 值的圖片主色系獲取方法及裝置。
[0004] 本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下:一種圖片主色系獲取方法,包括以下 步驟:
[0005] 步驟1 :逐像素點(diǎn)的掃描待處理圖片,獲取待處理圖片的RGB顏色值;
[0006] 步驟2 :按照RGB顏色值重復(fù)的次數(shù)將RGB顏色值進(jìn)行排序,得到RGB顏色值數(shù) 組;
[0007] 步驟3 :在RGB顏色數(shù)組中提取若干個(gè)重復(fù)次數(shù)最多的RGB顏色值作為主顏色值 數(shù)組;
[0008] 步驟4 :將RGB顏色劃分為若干個(gè)色系,并在每個(gè)色系中劃分若干個(gè)節(jié)點(diǎn),得到多 個(gè)劃分閾值;
[0009] 步驟5 :將主顏色值數(shù)組中的每個(gè)RGB顏色值分別進(jìn)行轉(zhuǎn)化運(yùn)算,得到若干個(gè)轉(zhuǎn)化 結(jié)果,將每個(gè)轉(zhuǎn)化結(jié)果分別與所有劃分閾值逐一匹配,得到多個(gè)與轉(zhuǎn)化結(jié)果相同的劃分閾 值,該多個(gè)劃分閾值為該RGB顏色值的主色系。
[0010] 本發(fā)明的有益效果是:本發(fā)明能夠準(zhǔn)確靈活的獲取圖片的主色系顏色值。
[0011] 在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
[0012] 進(jìn)一步,所述步驟4中具體為:將RGB顏色劃分為灰色系和彩色系,在灰色系中劃 分3個(gè)節(jié)點(diǎn),在彩色系中劃分6個(gè)節(jié)點(diǎn)。
[0013] 進(jìn)一步,所述步驟4中具體為:將RGB顏色劃分為灰色系和彩色系,在灰色系中劃 分6個(gè)節(jié)點(diǎn),在彩色系中劃分12個(gè)節(jié)點(diǎn)。
[0014] 進(jìn)一步,所述步驟5中轉(zhuǎn)化運(yùn)算具體為:
[0015] 轉(zhuǎn)化結(jié)果中對(duì)應(yīng)通道顏色值=Round (通道顏色值八256八節(jié)點(diǎn)數(shù)-1))) * (256/ (節(jié)點(diǎn)數(shù)-1))。
[0016] 進(jìn)一步,所述圖片為點(diǎn)陣圖。
[0017] 進(jìn)一步,一種圖片主色系獲取裝置,包括掃描獲取模塊,排序模塊,提取模塊,劃分 模塊和運(yùn)算匹配模塊;
[0018] 所述掃描獲取模塊,用于逐像素點(diǎn)的掃描待處理圖片,獲取待處理圖片的RGB顏 色值;
[0019] 所述排序模塊,用于按照RGB顏色值重復(fù)的次數(shù)將RGB顏色值進(jìn)行排序,得到RGB 顏色值數(shù)組;
[0020] 所述提取模塊,用于在RGB顏色數(shù)組中提取若干個(gè)重復(fù)次數(shù)最多的RGB顏色值作 為主顏色值數(shù)組;
[0021] 所述劃分模塊,用于將RGB顏色劃分為若干個(gè)色系,并在每個(gè)色系中劃分若干個(gè) 節(jié)點(diǎn),得到多個(gè)劃分閾值;
[0022] 所述運(yùn)算匹配模塊,用于將主顏色值數(shù)組中的每個(gè)RGB顏色值分別進(jìn)行轉(zhuǎn)化運(yùn) 算,得到若干個(gè)轉(zhuǎn)化結(jié)果,將每個(gè)轉(zhuǎn)化結(jié)果分別與所有劃分閾值逐一匹配,得到多個(gè)與轉(zhuǎn)化 結(jié)果相同的劃分閾值,該多個(gè)劃分閾值為該RGB顏色值的主色系。
[0023] 進(jìn)一步,所述劃分模塊中具體用于:將RGB顏色劃分為灰色系和彩色系,在灰色系 中劃分3個(gè)節(jié)點(diǎn),在彩色系中劃分6個(gè)節(jié)點(diǎn)。
[0024] 進(jìn)一步,所述劃分模塊中具體用于:將RGB顏色劃分為灰色系和彩色系,在灰色系 中劃分6個(gè)節(jié)點(diǎn),在彩色系中劃分12個(gè)節(jié)點(diǎn)。
[0025] 進(jìn)一步,所述運(yùn)算匹配模塊中轉(zhuǎn)化運(yùn)算具體為:
[0026] 轉(zhuǎn)化結(jié)果中對(duì)應(yīng)通道顏色值=Round (通道顏色值八256八節(jié)點(diǎn)數(shù)-1))) * (256/ (節(jié)點(diǎn)數(shù)-1))。
[0027] 進(jìn)一步,所述圖片為點(diǎn)陣圖。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0028] 圖1為本發(fā)明方法步驟流程圖;
[0029] 圖2為本發(fā)明裝置結(jié)構(gòu)圖。
[0030] 附圖中,各標(biāo)號(hào)所代表的部件列表如下:
[0031] 1、掃描獲取模塊,2、排序模塊,3、提取模塊,4、劃分模塊,5、運(yùn)算匹配模塊。
【具體實(shí)施方式】
[0032] 以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并 非用于限定本發(fā)明的范圍。
[0033] 如圖1所示,為本發(fā)明方法步驟流程圖;圖2為本發(fā)明裝置結(jié)構(gòu)圖。
[0034] 實(shí)施例1
[0035] -種圖片主色系獲取方法,包括以下步驟:
[0036] 步驟1 :逐像素點(diǎn)的掃描待處理圖片,獲取待處理圖片的RGB顏色值;
[0037] 步驟2 :按照RGB顏色值重復(fù)的次數(shù)將RGB顏色值進(jìn)行排序,得到RGB顏色值數(shù) 組;
[0038] 步驟3 :在RGB顏色數(shù)組中提取若干個(gè)重復(fù)次數(shù)最多的RGB顏色值作為主顏色值 數(shù)組;
[0039] 步驟4 :將RGB顏色劃分為若干個(gè)色系,并在每個(gè)色系中劃分若干個(gè)節(jié)點(diǎn),得到多 個(gè)劃分閾值;
[0040] 步驟5 :將主顏色值數(shù)組中的每個(gè)RGB顏色值分別進(jìn)行轉(zhuǎn)化運(yùn)算,得到若干個(gè)轉(zhuǎn)化 結(jié)果,將每個(gè)轉(zhuǎn)化結(jié)果分別與所有劃分閾值逐一匹配,得到多個(gè)與轉(zhuǎn)化結(jié)果相同的劃分閾 值,該多個(gè)劃分閾值為該RGB顏色值的主色系。
[0041] 所述步驟4中具體為:將RGB顏色劃分為灰色系和彩色系,在灰色系中劃分3個(gè)節(jié) 點(diǎn),在彩色系中劃分6個(gè)節(jié)點(diǎn)。所述步驟4或者為:將RGB顏色劃分為灰色系和彩色系,在 灰色系中劃分6個(gè)節(jié)點(diǎn),在彩色系中劃分12個(gè)節(jié)點(diǎn)。
[0042] 所述步驟5中轉(zhuǎn)化運(yùn)算具體為:
[0043] 轉(zhuǎn)化結(jié)果中對(duì)應(yīng)通道顏色值=Round (通道顏色值八256八節(jié)點(diǎn)數(shù)-1))) * (256/ (節(jié)點(diǎn)數(shù)-1))。所述圖片為點(diǎn)陣圖。
[0044] -種圖片主色系獲取裝置,包括掃描獲取模塊1,排序模塊2,提取模塊3,劃分模 塊4和運(yùn)算匹配模塊5 ;
[0045] 所述掃描獲取模塊1,用于逐像素點(diǎn)的掃描待處理圖片,獲取待處理圖片的RGB顏 色值;
[0046] 所述排序模塊2,用于按照RGB顏色值重復(fù)的次數(shù)將RGB顏色值進(jìn)行排序,得到 RGB顏色值數(shù)組;
[0047] 所述提取模塊3,用于在RGB顏色數(shù)組中提取若干個(gè)重復(fù)次數(shù)最多的RGB顏色值作 為主顏色值數(shù)組;
[0048] 所述劃分模塊4,用于將RGB顏色劃分為若干個(gè)色系,并在每個(gè)色系中劃分若干個(gè) 節(jié)點(diǎn),得到多個(gè)劃分閾值;
[0049] 所述運(yùn)算匹配模塊5,用于將主顏色值數(shù)組中的每個(gè)RGB顏色值分別進(jìn)行轉(zhuǎn)化運(yùn) 算,得到若干個(gè)轉(zhuǎn)化結(jié)果,將每個(gè)轉(zhuǎn)化結(jié)果分別與所有劃分閾值逐一匹配,得到多個(gè)與轉(zhuǎn)化 結(jié)果相同的劃分閾值,該多個(gè)劃分閾值為該RGB顏色值的主色系。
[0050] 所述劃分模塊4中具體用于:將RGB顏色劃分為灰色系和彩色系,在灰色系中劃分 3個(gè)節(jié)點(diǎn),在彩色系中劃分6個(gè)節(jié)點(diǎn)。
[0051] 所述劃分模塊4中具體用于:將RGB顏色劃分為灰色系和彩色系,在灰色系中劃分 6個(gè)節(jié)點(diǎn),在彩色系中劃分12個(gè)節(jié)點(diǎn)。
[0052] 所述運(yùn)算匹配模塊5中轉(zhuǎn)化運(yùn)算具體為:
[0053] 轉(zhuǎn)化結(jié)果中對(duì)應(yīng)通道顏色值=Round (通道顏色值八256八節(jié)點(diǎn)數(shù)-1))) * (256/ (節(jié)點(diǎn)數(shù)-1))。所述圖片為點(diǎn)陣圖。
[0054] 在具體實(shí)施中,使用php的⑶圖像處理庫(kù)逐點(diǎn)掃描圖片像素點(diǎn)顏色;按照顏色重 復(fù)數(shù)量多少排序;提取N個(gè)主要顏色值,假設(shè)N為3 ;4.確定色系劃分規(guī)則,灰色系分為3個(gè) 節(jié)點(diǎn),其色系值為 RGB (0, 0, 0)、RGB (128, 128, 128)、RGB (256, 256, 256),彩色系單通道值分 為 2 個(gè)節(jié)點(diǎn),其色系值為 RGB (256, 0, 0)、RGB (0, 256, 0)、RGB (0, 0, 256)、RGB (256, 256, 0)、 RGB (256, 0, 256)、RGB (0, 256, 256) ;5、將主要顏色值轉(zhuǎn)為色系顏色值,假設(shè)主要顏色值為 RGB (12, 209, 173),改顏色為彩色系;轉(zhuǎn)換過(guò)程如下:
[0055] $R = Round(12/(256/(2-1)))*(256/(2-1)) = 0 ;
[0056] $G = Round(209/(256/(2-1)))^(256/(2-1)) = 256 ;
[0057] $B = Round(173/(256/(2-1)))^(256/(2-1)) = 256 ;
[0058] 組合為新的色系顏色值為RGB (0, 256, 256)。
[0059] 以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和 原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1. 一種圖片主色系獲取方法,其特征在于,包括以下步驟: 步驟1 :逐像素點(diǎn)的掃描待處理圖片,獲取待處理圖片的RGB顏色值; 步驟2 :按照RGB顏色值重復(fù)的次數(shù)將RGB顏色值進(jìn)行排序,得到RGB顏色值數(shù)組; 步驟3 :在RGB顏色數(shù)組中提取若干個(gè)重復(fù)次數(shù)最多的RGB顏色值作為主顏色值數(shù)組; 步驟4 :將RGB顏色劃分為若干個(gè)色系,并在每個(gè)色系中劃分若干個(gè)節(jié)點(diǎn),得到多個(gè)劃 分閾值; 步驟5 :將主顏色值數(shù)組中的每個(gè)RGB顏色值分別進(jìn)行轉(zhuǎn)化運(yùn)算,得到若干個(gè)轉(zhuǎn)化結(jié) 果,將每個(gè)轉(zhuǎn)化結(jié)果分別與所有劃分閾值逐一匹配,得到多個(gè)與轉(zhuǎn)化結(jié)果相同的劃分閾值, 該多個(gè)劃分閾值為該RGB顏色值的主色系。
2. 根據(jù)權(quán)利要求1所述的圖片主色系獲取方法,其特征在于:所述步驟4中具體為:將 RGB顏色劃分為灰色系和彩色系,在灰色系中劃分3個(gè)節(jié)點(diǎn),在彩色系中劃分6個(gè)節(jié)點(diǎn)。
3. 根據(jù)權(quán)利要求1所述的圖片主色系獲取方法,其特征在于:所述步驟4中具體為:將 RGB顏色劃分為灰色系和彩色系,在灰色系中劃分6個(gè)節(jié)點(diǎn),在彩色系中劃分12個(gè)節(jié)點(diǎn)。
4. 根據(jù)權(quán)利要求1所述的圖片主色系獲取方法,其特征在于:所述步驟5中轉(zhuǎn)化運(yùn)算 具體為: 轉(zhuǎn)化結(jié)果中對(duì)應(yīng)通道顏色值=Round (通道顏色值八256八節(jié)點(diǎn)數(shù)-1))) * (256八節(jié)點(diǎn) 數(shù)-1))。
5. 根據(jù)權(quán)利要求1所述的圖片主色系獲取方法,其特征在于:所述圖片為點(diǎn)陣圖。
6. -種圖片主色系獲取裝置,其特征在于:包括掃描獲取模塊(1),排序模塊(2),提取 模塊(3),劃分模塊(4)和運(yùn)算匹配模塊(5); 所述掃描獲取模塊(1),用于逐像素點(diǎn)的掃描待處理圖片,獲取待處理圖片的RGB顏色 值; 所述排序模塊(2),用于按照RGB顏色值重復(fù)的次數(shù)將RGB顏色值進(jìn)行排序,得到RGB 顏色值數(shù)組; 所述提取模塊(3),用于在RGB顏色數(shù)組中提取若干個(gè)重復(fù)次數(shù)最多的RGB顏色值作為 主顏色值數(shù)組; 所述劃分模塊(4),用于將RGB顏色劃分為若干個(gè)色系,并在每個(gè)色系中劃分若干個(gè)節(jié) 點(diǎn),得到多個(gè)劃分閾值; 所述運(yùn)算匹配模塊(5),用于將主顏色值數(shù)組中的每個(gè)RGB顏色值分別進(jìn)行轉(zhuǎn)化運(yùn)算, 得到若干個(gè)轉(zhuǎn)化結(jié)果,將每個(gè)轉(zhuǎn)化結(jié)果分別與所有劃分閾值逐一匹配,得到多個(gè)與轉(zhuǎn)化結(jié) 果相同的劃分閾值,該多個(gè)劃分閾值為該RGB顏色值的主色系。
7. 根據(jù)權(quán)利要求6所述的圖片主色系獲取方法,其特征在于:所述劃分模塊(4)中具 體用于:將RGB顏色劃分為灰色系和彩色系,在灰色系中劃分3個(gè)節(jié)點(diǎn),在彩色系中劃分6 個(gè)節(jié)點(diǎn)。
8. 根據(jù)權(quán)利要求6所述的圖片主色系獲取方法,其特征在于:所述劃分模塊(4)中具 體用于:將RGB顏色劃分為灰色系和彩色系,在灰色系中劃分6個(gè)節(jié)點(diǎn),在彩色系中劃分12 個(gè)節(jié)點(diǎn)。
9. 根據(jù)權(quán)利要求6所述的圖片主色系獲取方法,其特征在于:所述運(yùn)算匹配模塊(5) 中轉(zhuǎn)化運(yùn)算具體為: 轉(zhuǎn)化結(jié)果中對(duì)應(yīng)通道顏色值=Round (通道顏色值八256八節(jié)點(diǎn)數(shù)-1))) * (256八節(jié)點(diǎn) 數(shù)-1))。
10.根據(jù)權(quán)利要求6所述的圖片主色系獲取方法,其特征在于:所述圖片為點(diǎn)陣圖。
【文檔編號(hào)】G06T7/40GK104123736SQ201410319172
【公開(kāi)日】2014年10月29日 申請(qǐng)日期:2014年7月4日 優(yōu)先權(quán)日:2014年7月4日
【發(fā)明者】王永強(qiáng) 申請(qǐng)人:北京思特奇信息技術(shù)股份有限公司