本發(fā)明涉及圖像搜索領(lǐng)域,尤其涉及一種基于grouplasso的半監(jiān)督哈希圖像搜索方法。
背景技術(shù):
大數(shù)據(jù)時(shí)代的到來(lái)、互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展和智能手機(jī)與照相機(jī)等成像設(shè)備的日漸普及,使圖像等媒體資源的數(shù)據(jù)采集越來(lái)越便捷。在wcb2.0時(shí)代,人們?cè)缫巡粷M足于僅僅使用文字來(lái)傳達(dá)信息,尤其是隨著faccbook、推特、微信、微博等社交軟件的流行,人們?cè)谌粘I钪幸呀?jīng)非常熟練的使用聊天“表情包”、朋友圈小視頻、語(yǔ)音信息等。這些圖像、視頻、音頻等海量的非結(jié)構(gòu)化數(shù)據(jù)每天都在以驚人的速度增長(zhǎng)。據(jù)市場(chǎng)調(diào)查研究公司idc的一項(xiàng)調(diào)查報(bào)告指出:世界上80%的數(shù)據(jù)都是非結(jié)構(gòu)化數(shù)據(jù),以文檔、圖像、視頻、音頻等形式存儲(chǔ)信息,這些數(shù)據(jù)每年都按指數(shù)增長(zhǎng)60%。這其中,圖像數(shù)據(jù)占據(jù)了極大的比例,也蘊(yùn)含了大量的信息。
面對(duì)以幾何速度增長(zhǎng)的網(wǎng)絡(luò)圖像數(shù)量,傳統(tǒng)的圖像數(shù)據(jù)的分析和處理面臨資源基數(shù)龐大、特征維度高、需要的存儲(chǔ)空間大、查詢速度慢等方面的挑戰(zhàn);因此誕生了多種擁有亞線性、對(duì)數(shù)甚至常數(shù)的時(shí)間復(fù)雜度的近似最近鄰算法(approximatcnearcstncighbor,ann),其中基于哈希的近似最近鄰算法以常數(shù)的查詢時(shí)間和只需存儲(chǔ)少量壓縮的二進(jìn)制碼等優(yōu)點(diǎn)獲得大量關(guān)注。
然而,從現(xiàn)實(shí)生活中的圖像數(shù)據(jù)標(biāo)記現(xiàn)狀考慮,尤其是在圖像搜索與識(shí)別等領(lǐng)域,最大量的、獲取最便捷的圖像數(shù)據(jù)都是沒有標(biāo)簽的,只有少部分是耗費(fèi)人力和物力獲得的帶有標(biāo)簽的圖像數(shù)據(jù)。因此,只需少量帶標(biāo)簽的圖像數(shù)據(jù)和大量沒有標(biāo)簽的圖像數(shù)據(jù)的圖像搜索方法是具有重大現(xiàn)實(shí)意義和實(shí)際需求的。
再者,從圖像數(shù)據(jù)的結(jié)構(gòu)考慮,由于圖像本身具有顏色、性質(zhì)、紋理等全局特征和局部子特征,圖像數(shù)據(jù)的不同維度之間可能具有某些結(jié)構(gòu)或語(yǔ)義聯(lián)系,因此,有效的建模圖像數(shù)據(jù)的結(jié)構(gòu)同樣成為圖像搜索方法的關(guān)鍵點(diǎn)之一。
最后,從圖像數(shù)據(jù)的規(guī)??紤],圖像數(shù)據(jù)在與日俱增,設(shè)計(jì)有效的求解算法對(duì)大規(guī)模數(shù)據(jù)集上的圖像搜索亦是重中之重。
技術(shù)實(shí)現(xiàn)要素:
為解決現(xiàn)有技術(shù)的缺陷,本發(fā)明提供一種基于grouplasso的半監(jiān)督哈希圖像搜索方法,包括:
步驟s1:識(shí)別圖像數(shù)據(jù)庫(kù)中的標(biāo)簽圖像和非標(biāo)簽圖像,對(duì)輸入圖像、所述標(biāo)簽圖像和所述非標(biāo)簽圖像進(jìn)行預(yù)處理;
步驟s2:根據(jù)預(yù)處理之后的所述輸入圖像、所述標(biāo)簽圖像和所述非標(biāo)簽圖像進(jìn)行基于grouplasso的半監(jiān)督哈希學(xué)習(xí)得到各圖像對(duì)應(yīng)的二進(jìn)制哈希碼;
步驟s3:根據(jù)所述二進(jìn)制哈希碼計(jì)算所述輸入圖像與所述圖像數(shù)據(jù)庫(kù)中各圖像之間的海明距離,并返回最小海明距離對(duì)應(yīng)的圖像作為圖像搜索結(jié)果。
可選地,所述步驟s1中,所述預(yù)處理包括:灰度化、歸一化、幾何變換和降噪操作。
可選地,所述步驟s2還包括:使用鄰近算法優(yōu)化求解模型。
可選地,所述使用鄰近算法優(yōu)化求解模型,具體包括:在鄰近算法每次迭代時(shí),從當(dāng)前迭代點(diǎn)沿著梯度方向找到另一個(gè)點(diǎn)使得目標(biāo)函數(shù)的二次近似函數(shù)的函數(shù)值最小,并將所述當(dāng)前迭代點(diǎn)更新為得到的最小函數(shù)值;將所述目標(biāo)函數(shù)的二次近似函數(shù)寫成鄰近算子的形式,具體包括:
步驟1:梯度步,在第t次迭代時(shí),沿著f(wt)梯度方向移動(dòng),另:
其中,t=1、2、···n,為迭代次數(shù);ut是第t次迭代的值;wt為第t次迭代的模型系數(shù);
步驟2:鄰近算子步,用每次迭代的解,即grouplasso的鄰近算子,更新wt+1,直到收斂或達(dá)到最大迭代次數(shù)n:
wt+1=[proxμθ(ut)]g
步驟3:輸出最優(yōu)解。
可選地,所述步驟s2中,在所述基于grouplasso的半監(jiān)督哈希學(xué)習(xí)運(yùn)算中,包括:根據(jù)所述grouplasso算法引入稀疏性,進(jìn)行g(shù)rouplasso的嵌入式圖像特征選擇。
可選地,所述進(jìn)行g(shù)rouplasso的嵌入式圖像特征選擇,具體為:以組為單位將同一組的圖像特征同時(shí)選入或者同時(shí)剔除。
可選地,所述步驟s3中,所述根據(jù)所述二進(jìn)制哈希碼計(jì)算所述輸入圖像與所述圖像數(shù)據(jù)庫(kù)中的各圖像之間的海明距離之后,還包括:將所述海明距離排序得到最小海明距離。
本發(fā)明的優(yōu)點(diǎn)在于:
面對(duì)以幾何速度增長(zhǎng)的圖像數(shù)量,能夠結(jié)合現(xiàn)有圖像數(shù)據(jù)的狀況,有效的建模圖像數(shù)據(jù)結(jié)構(gòu),快速準(zhǔn)確的搜索到所需的圖像,并且無(wú)需存儲(chǔ)圖像本身,大大節(jié)約了存儲(chǔ)空間。
附圖說(shuō)明
通過(guò)閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:
附圖1為本發(fā)明提供的一種基于grouplasso的半監(jiān)督哈希圖像搜索框架圖;
附圖2為本發(fā)明實(shí)施例一提供的一種基于grouplasso的半監(jiān)督哈希圖像搜索方法流程圖;
附圖3為本發(fā)明實(shí)施例二提供的一種基于grouplasso的半監(jiān)督哈希圖像搜索裝置框圖;
附圖4為本發(fā)明實(shí)施例三提供的一種基于grouplasso的半監(jiān)督哈希圖像搜索框架圖。
具體實(shí)施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施方式。雖然附圖中顯示了本公開的示例性實(shí)施方式,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施方式所限制。相反,提供這些實(shí)施方式是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
本發(fā)明在圖像搜索領(lǐng)域現(xiàn)狀的背景下,由圖像數(shù)據(jù)的結(jié)構(gòu)和標(biāo)簽情況驅(qū)動(dòng)有效建模,在已有的半監(jiān)督哈希圖像搜索算法基礎(chǔ)上,提出了一種基于grouplasso的半監(jiān)督哈希圖像搜索方法。如圖1所示,方法包括預(yù)處理步驟(1)、基于grouplasso的半監(jiān)督哈希學(xué)習(xí)步驟(2)和計(jì)算搜索結(jié)果步驟(3);本發(fā)明中引入grouplasso算法和鄰近算法,使有效建模的圖像搜索方法具有更高的準(zhǔn)確性和更快的查詢速度,并且只需存儲(chǔ)圖像的二進(jìn)制哈希碼作為學(xué)習(xí)的結(jié)果,節(jié)省了存儲(chǔ)空間,還可以推廣至超大規(guī)模圖像數(shù)據(jù)集搜索。
其中,鄰近算法常用于解決形如minf(x)=f(x)+μθ(x)的凸優(yōu)化問(wèn)題,其中,f:rp→r是可微分的凸函數(shù),θ:rp→r是不可微分的閉凸函數(shù),x∈x是p維向量;以下將f(x)=f(x)+μθ(x)稱為目標(biāo)函數(shù);
鄰近算法中鄰近算子的定義為使
目標(biāo)函數(shù)的二次近似函數(shù)為:
以下將結(jié)合上述內(nèi)容,對(duì)本發(fā)明中公開的圖像搜索方法進(jìn)行進(jìn)一步的詳細(xì)說(shuō)明。
實(shí)施例一
根據(jù)本發(fā)明的實(shí)施方式,提出一種基于grouplasso的半監(jiān)督哈希圖像搜索方法,如圖2所示,包括:
步驟101:識(shí)別圖像數(shù)據(jù)庫(kù)中的標(biāo)簽圖像和非標(biāo)簽圖像,對(duì)輸入圖像、標(biāo)簽圖像和非標(biāo)簽圖像進(jìn)行預(yù)處理;
步驟102:根據(jù)預(yù)處理之后的輸入圖像、標(biāo)簽圖像和非標(biāo)簽圖像進(jìn)行基于grouplasso的半監(jiān)督哈希學(xué)習(xí)得到各圖像對(duì)應(yīng)的二進(jìn)制哈希碼;
步驟103:根據(jù)二進(jìn)制哈希碼計(jì)算輸入圖像與圖像數(shù)據(jù)庫(kù)中各圖像之間的海明距離,并返回最小海明距離對(duì)應(yīng)的圖像作為圖像搜索結(jié)果。
根據(jù)本發(fā)明的實(shí)施方式,步驟101中,預(yù)處理包括但不限于:灰度化、歸一化、幾何變換和降噪操作。
需要說(shuō)明地,由于海量的原始圖像本身具有不同的顏色、紋理、分辨率、大小等,在使用圖像進(jìn)行分析、學(xué)習(xí)之前,對(duì)原始圖像數(shù)據(jù)進(jìn)行必要的預(yù)處理可以有效的簡(jiǎn)化數(shù)據(jù)、去除噪聲等無(wú)關(guān)信息的干擾。
根據(jù)本發(fā)明的實(shí)施例方式,步驟102還包括:使用臨近算法優(yōu)化求解模型。
其中,使用臨近算法優(yōu)化求解模型,具體包括:在鄰近算法每次迭代時(shí),從當(dāng)前迭代點(diǎn)沿著梯度方向找到另一個(gè)點(diǎn)使得目標(biāo)函數(shù)的二次近似函數(shù)的函數(shù)值最小,并將當(dāng)前迭代點(diǎn)更新為得到的最小函數(shù)值;將目標(biāo)函數(shù)的二次近似函數(shù)寫成鄰近算子的形式,則具體包括:
步驟1:梯度步,在第t次迭代時(shí),沿著f(wt)梯度方向移動(dòng),另:
其中,t=1、2、···n,為迭代次數(shù);ut是第t次迭代的值;wt為第t次迭代的模型系數(shù);
步驟2:鄰近算子步,用每次迭代的解,即grouplasso的鄰近算子,更新wt+1,直到收斂或達(dá)到最大迭代次數(shù)n,即:
wt+1=[proxμθ(ut)]g
步驟3:輸出最優(yōu)解。
根據(jù)本發(fā)明的實(shí)施例方式,步驟102中,在基于grouplasso的半監(jiān)督哈希學(xué)習(xí)運(yùn)算中,還包括:根據(jù)grouplasso算法引入稀疏性,進(jìn)行g(shù)rouplasso的嵌入式圖像特征選擇。
其中,進(jìn)行g(shù)rouplasso的嵌入式圖像特征選擇,具體為:以組為單位將同一組的圖像特征同時(shí)選入或者同時(shí)剔除。
在本實(shí)施例中,嵌入式圖像特征選擇,其將特征選擇過(guò)程和學(xué)習(xí)過(guò)程融合為一體,兩者在同一優(yōu)化過(guò)程中完成,沒有明顯的劃分。
本實(shí)施例步驟102中,得到對(duì)應(yīng)的二進(jìn)制哈希碼之后,還包括:根據(jù)得到的二進(jìn)制哈希碼生成哈希查找表。
根據(jù)本發(fā)明的實(shí)施例方式,步驟103中,根據(jù)二進(jìn)制哈希碼計(jì)算輸入圖像與圖像數(shù)據(jù)庫(kù)中的各圖像之間的海明距離之后,還包括:將海明距離排序得到最小海明距離。
進(jìn)一步地,在本實(shí)施例中,根據(jù)二進(jìn)制哈希碼計(jì)算輸入圖像與圖像數(shù)據(jù)庫(kù)中的各圖像之間的海明距離,具體為:計(jì)算輸入圖像的二進(jìn)制哈希碼與圖像數(shù)據(jù)庫(kù)中的各圖像的二進(jìn)制哈希碼的對(duì)應(yīng)位上編碼不同的位數(shù),得到輸入圖像與圖像數(shù)據(jù)庫(kù)中的各圖像之間的海明距離;
例如,輸入圖像的二進(jìn)制哈希碼為10101,圖像數(shù)據(jù)庫(kù)中的某一圖像的二進(jìn)制哈希碼為00110,兩個(gè)二進(jìn)制哈希碼中第一位、第四位、第五位上的編碼不同,則得到輸入圖像與圖像數(shù)據(jù)庫(kù)中的某一圖像之間的海明距離為3。
更進(jìn)一步地,在本實(shí)施例中,將grouplasso算法引入了基于半監(jiān)督哈希的學(xué)習(xí)模型中,同時(shí)引入了稀疏性,起到以組為單位進(jìn)行特征選擇的作用;對(duì)應(yīng)地,步驟103中返回最小海明距離對(duì)應(yīng)的圖像可能為一組圖像,也可能為一個(gè)圖像。
實(shí)施例二
根據(jù)本發(fā)明的實(shí)施方式,提供一種基于grouplasso的半監(jiān)督哈希圖像搜索裝置,如圖3所示,包括:
預(yù)處理模塊201,用于識(shí)別圖像數(shù)據(jù)庫(kù)中的標(biāo)簽圖像和非標(biāo)簽圖像,對(duì)輸入圖像、標(biāo)簽圖像和非標(biāo)簽圖像進(jìn)行預(yù)處理;
訓(xùn)練學(xué)習(xí)模塊202,用于根據(jù)預(yù)處理模塊201預(yù)處理之后的輸入圖像、標(biāo)簽圖像和非標(biāo)簽圖像進(jìn)行基于grouplasso的半監(jiān)督哈希學(xué)習(xí)得到各圖像對(duì)應(yīng)的二進(jìn)制哈希碼;
計(jì)算模塊203,用于根據(jù)訓(xùn)練學(xué)習(xí)模塊202得到的二進(jìn)制哈希碼計(jì)算輸入圖像與圖像數(shù)據(jù)庫(kù)中各圖像之間的海明距離,并返回最小海明距離對(duì)應(yīng)的圖像作為圖像搜索結(jié)果。
根據(jù)本發(fā)明的實(shí)施方式,預(yù)處理模塊201,具體用于:識(shí)別圖像數(shù)據(jù)庫(kù)中的標(biāo)簽圖像和非標(biāo)簽圖像,對(duì)輸入圖像、標(biāo)簽圖像和非標(biāo)簽圖像進(jìn)行灰度化、歸一化、幾何變換和降噪操作。
根據(jù)本發(fā)明的實(shí)施方式,訓(xùn)練學(xué)習(xí)模塊202包括:優(yōu)化子模塊,用于使用鄰近算法優(yōu)化求解模型。
其中,優(yōu)化子模塊,具體用于:在鄰近算法每次迭代時(shí),從當(dāng)前迭代點(diǎn)沿著梯度方向找到另一個(gè)點(diǎn)使得目標(biāo)函數(shù)的二次近似函數(shù)的函數(shù)值最小,并將當(dāng)前迭代點(diǎn)更新為得到的最小函數(shù)值,將目標(biāo)函數(shù)的二次近似函數(shù)寫成鄰近算子的形式,則具體包括:
步驟1:梯度步,在第t次迭代時(shí),沿著f(wt)梯度方向移動(dòng),另:
其中,t=1、2、···n,為迭代次數(shù);ut是第t次迭代的值;wt為第t次迭代的模型系數(shù);
步驟2:鄰近算子步,用每次迭代的解,即grouplasso的鄰近算子,更新wt+1,直到收斂或達(dá)到最大迭代次數(shù)n:
wt+1=[proxμθ(ut)]g
步驟3:輸出最優(yōu)解。
根據(jù)本發(fā)明的實(shí)施方式,訓(xùn)練學(xué)習(xí)模塊202還包括:選擇子模塊,用于根據(jù)grouplasso算法引入稀疏性,進(jìn)行g(shù)rouplasso的嵌入式圖像特征選擇。
其中,選擇子模塊,具體用于:以組為單位將同一組的圖像特征同時(shí)選入或者同時(shí)剔除。
根據(jù)本發(fā)明的實(shí)施方式,所述裝置還包括:排序模塊,用于在計(jì)算模塊203根據(jù)訓(xùn)練學(xué)習(xí)模塊202得到的二進(jìn)制哈希碼計(jì)算輸入圖像與圖像數(shù)據(jù)庫(kù)中的各圖像之間的海明距離之后,將海明距離排序得到最小海明距離。
實(shí)施例三
根據(jù)本發(fā)明的實(shí)施方式,提出一種基于grouplasso的半監(jiān)督哈希圖像搜索方法,如圖4所示,包括:訓(xùn)練圖像數(shù)據(jù)過(guò)程和搜索圖像數(shù)據(jù)過(guò)程;
其中,訓(xùn)練圖像數(shù)據(jù)過(guò)程,包括:
步驟a1:識(shí)別圖像數(shù)據(jù)庫(kù)中的標(biāo)簽圖像和非標(biāo)簽圖像,并對(duì)圖像數(shù)據(jù)庫(kù)中的各圖像進(jìn)行預(yù)處理;
步驟a2:根據(jù)處理后的標(biāo)簽圖像和非標(biāo)簽圖像進(jìn)行基于grouplasso的半監(jiān)督哈希學(xué)習(xí)得到各圖像對(duì)應(yīng)的二進(jìn)制哈希碼;
其中,基于grouplasso的半監(jiān)督哈希學(xué)習(xí)得到以組為單位的組結(jié)構(gòu)的學(xué)習(xí)結(jié)果,并具有稀疏性。
步驟a3:根據(jù)得到的各二進(jìn)制哈希碼生成哈希查找表。
在圖像搜索過(guò)程中,包括:
步驟b1:對(duì)輸入圖像進(jìn)行預(yù)處理;
步驟b2:根據(jù)預(yù)處理后的輸入圖像進(jìn)行基于grouplasso的半監(jiān)督哈希學(xué)習(xí)得到輸入圖像的二進(jìn)制哈希碼;
步驟b3:根據(jù)輸入圖像的二進(jìn)制哈希碼和哈希查找表中的二進(jìn)制哈希碼依次計(jì)算輸入圖像與訓(xùn)練數(shù)據(jù)庫(kù)中各圖像之間的海明距離并排序得到最小海明距離,返回最小海明距離對(duì)應(yīng)的圖像作為搜索結(jié)果。
需要說(shuō)明地,在本實(shí)施例中,將grouplasso算法引入了基于半監(jiān)督哈希的學(xué)習(xí)模型中,同時(shí)引入了稀疏性,起到以組為單位進(jìn)行特征選擇的作用;對(duì)應(yīng)地,步驟b3中返回最小海明距離對(duì)應(yīng)的圖像可能為一組圖像,也可能為一個(gè)圖像。
本發(fā)明中的技術(shù)方案,面對(duì)以幾何速度增長(zhǎng)的圖像數(shù)量,能夠結(jié)合現(xiàn)有圖像數(shù)據(jù)的狀況,有效的建模圖像數(shù)據(jù)結(jié)構(gòu),快速準(zhǔn)確的搜索到所需的圖像,并且無(wú)需存儲(chǔ)圖像本身,大大節(jié)約了存儲(chǔ)空間。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以所述權(quán)利要求的保護(hù)范圍為準(zhǔn)。