以圖搜圖實(shí)現(xiàn)原理以及相關(guān)算法學(xué)習(xí)

最簡(jiǎn)單的搜索算法:均值hash

其工作流程如下:

  • 縮小尺寸: 去除高頻和細(xì)節(jié)的最快方法是縮小圖片孝治,將圖片縮小到8x8的尺寸审磁,總共64個(gè)像素。不要保持縱橫比杭措,只需將其變成8*8的正方形钾恢。這樣就可以比較任意大小的圖片,摒棄不同尺寸赘那、比例帶來的圖片差異。

  • 簡(jiǎn)化色彩: 將8*8的小圖片轉(zhuǎn)換成灰度圖像。

  • 計(jì)算平均值: 計(jì)算所有64個(gè)像素的灰度平均值拱礁。

  • 比較像素的灰度: 將每個(gè)像素的灰度辕漂,與平均值進(jìn)行比較。大于或等于平均值鸯乃,記為1跋涣;小于平均值鸟悴,記為0奖年。

  • 計(jì)算hash值: 將上一步的比較結(jié)果,組合在一起陋守,就構(gòu)成了一個(gè)64位的整數(shù)水评,這就是這張圖片的指紋。組合的次序并不重要中燥,只要保證所有圖片都采用同樣次序就行了。

一點(diǎn)解釋: 如果圖片放大或縮小幽纷,或改變縱橫比博敬,結(jié)果值也不會(huì)改變。增加或減少亮度或?qū)Ρ榷仁栈郑蚋淖冾伾?strong>對(duì)hash值都不會(huì)太大的影響祭往。
最大優(yōu)點(diǎn):-----計(jì)算速度快!

那么完成了以上步驟,一張圖片就相當(dāng)于有了自己的"指紋"了,然后就是計(jì)算不同位的個(gè)數(shù)---漢明距離
如果漢明距離小于5驮肉,則表示有些不同已骇,但比較相近,如果漢明距離大于10則表明完全不同的圖片卵渴。

缺點(diǎn): 但受均值的影響非常大鲤竹。如對(duì)圖像進(jìn)行伽馬校正或直方圖均衡就會(huì)影響均值,從而影響最終的hash值碘橘。

改良版:pHash
pHash的工作過程如下:

  • (1)縮小尺寸:pHash以小圖片開始,但圖片大于88蛹屿,3232是最好的错负。這樣做的目的是簡(jiǎn)化了DCT的計(jì)算,而不是減小頻率犹撒。

  • (2)簡(jiǎn)化色彩:將圖片轉(zhuǎn)化成灰度圖像识颊,進(jìn)一步簡(jiǎn)化計(jì)算量。

  • (3)計(jì)算DCT:計(jì)算圖片的DCT變換祥款,得到32*32的DCT系數(shù)矩陣。

  • (4)縮小DCT:雖然DCT的結(jié)果是3232大小的矩陣抠艾,但我們只要保留左上角的88的矩陣桨昙,這部分呈現(xiàn)了圖片中的最低頻率。

  • (5)計(jì)算平均值:如同均值哈希一樣齐苛,計(jì)算DCT的均值桂塞。

  • (6)計(jì)算hash值:這是最主要的一步,根據(jù)8*8的DCT矩陣炊甲,設(shè)置0或1的64位的hash值欲芹,大于等于DCT均值的設(shè)為”1”吟吝,小于DCT均值的設(shè)為“0”。組合在一起浙宜,就構(gòu)成了一個(gè)64位的整數(shù),這就是這張圖片的指紋粟瞬。

優(yōu)點(diǎn)只要圖片的整體結(jié)構(gòu)保持不變裙品,hash結(jié)果值就不變。能夠避免伽馬校正或顏色直方圖被調(diào)整帶來的影響市怎。
與均值哈希一樣区匠,pHash同樣可以用漢明距離來進(jìn)行比較。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末麻汰,一起剝皮案震驚了整個(gè)濱河市戚篙,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌臣镣,老刑警劉巖智亮,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異弃舒,居然都是意外死亡状原,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來毕莱,“玉大人颅夺,你說我怎么就攤上這事蛹稍。” “怎么了拗慨?”我有些...
    開封第一講書人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵赵抢,是天一觀的道長(zhǎng)仗阅。 經(jīng)常有香客問我,道長(zhǎng)短绸,這世上最難降的妖魔是什么筹裕? 我笑而不...
    開封第一講書人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任朝卒,我火速辦了婚禮,結(jié)果婚禮上抗斤,老公的妹妹穿的比我還像新娘。我一直安慰自己龙宏,他們只是感情好伤疙,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開白布徒像。 她就那樣靜靜地躺著,像睡著了一般锯蛀。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上今布,一...
    開封第一講書人閱讀 49,166評(píng)論 1 284
  • 那天部默,我揣著相機(jī)與錄音造虎,去河邊找鬼。 笑死算凿,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的氓轰。 我是一名探鬼主播婚夫,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼署鸡!你這毒婦竟也來了案糙?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤靴庆,失蹤者是張志新(化名)和其女友劉穎时捌,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體炉抒,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡奢讨,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了焰薄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡塞茅,死狀恐怖亩码,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情凡桥,我是刑警寧澤蟀伸,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站缅刽,受9級(jí)特大地震影響啊掏,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜衰猛,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一迟蜜、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧啡省,春花似錦娜睛、人聲如沸髓霞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽方库。三九已至,卻和暖如春障斋,著一層夾襖步出監(jiān)牢的瞬間纵潦,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來泰國(guó)打工垃环, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留邀层,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓遂庄,卻偏偏與公主長(zhǎng)得像寥院,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子涛目,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容