• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            不會飛的鳥

            2010年12月10日 ... 不鳥他們!!! 我要用自己開發的分布式文件系統、分布式調度系統、分布式檢索系統, 做自己的搜索引擎!!!大魚有大志!!! ---楊書童

            [轉]相似圖片搜索的原理(一)

            上個月,Google把"相似圖片搜索"正式放上了首頁。

            你可以用一張圖片,搜索互聯網上所有與它相似的圖片。點擊搜索框中照相機的圖標。

            一個對話框會出現。

            你輸入網片的網址,或者直接上傳圖片,Google就會找出與其相似的圖片。下面這張圖片是美國女演員Alyson Hannigan。

            上傳后,Google返回如下結果:

            類似的"相似圖片搜索引擎"還有不少,TinEye甚至可以找出照片的拍攝背景。

            ==========================================================

            這種技術的原理是什么?計算機怎么知道兩張圖片相似呢?

            根據Neal Krawetz博士的解釋,原理非常簡單易懂。我們可以用一個快速算法,就達到基本的效果。

            這里的關鍵技術叫做"感知哈希算法"(Perceptual hash algorithm),它的作用是對每張圖片生成一個"指紋"(fingerprint)字符串,然后比較不同圖片的指紋。結果越接近,就說明圖片越相似。

            下面是一個最簡單的實現:

            第一步,縮小尺寸。

            將圖片縮小到8x8的尺寸,總共64個像素。這一步的作用是去除圖片的細節,只保留結構、明暗等基本信息,摒棄不同尺寸、比例帶來的圖片差異。

             

            第二步,簡化色彩。

            將縮小后的圖片,轉為64級灰度。也就是說,所有像素點總共只有64種顏色。

            第三步,計算平均值。

            計算所有64個像素的灰度平均值。

            第四步,比較像素的灰度。

            將每個像素的灰度,與平均值進行比較。大于或等于平均值,記為1;小于平均值,記為0。

            第五步,計算哈希值。

            將上一步的比較結果,組合在一起,就構成了一個64位的整數,這就是這張圖片的指紋。組合的次序并不重要,只要保證所有圖片都采用同樣次序就行了。

             =  = 8f373714acfcf4d0

            得到指紋以后,就可以對比不同的圖片,看看64位中有多少位是不一樣的。在理論上,這等同于計算"漢明距離"(Hamming distance)。如果不相同的數據位不超過5,就說明兩張圖片很相似;如果大于10,就說明這是兩張不同的圖片。

            具體的代碼實現,可以參見Wote用python語言寫的imgHash.py。代碼很短,只有53行。使用的時候,第一個參數是基準圖片,第二個參數是用來比較的其他圖片所在的目錄,返回結果是兩張圖片之間不相同的數據位數量(漢明距離)。

            這種算法的優點是簡單快速,不受圖片大小縮放的影響,缺點是圖片的內容不能變更。如果在圖片上加幾個文字,它就認不出來了。所以,它的最佳用途是根據縮略圖,找出原圖。

            實際應用中,往往采用更強大的pHash算法和SIFT算法,它們能夠識別圖片的變形。只要變形程度不超過25%,它們就能匹配原圖。這些算法雖然更復雜,但是原理與上面的簡便算法是一樣的,就是先將圖片轉化成Hash字符串,然后再進行比較。

            posted on 2014-03-06 21:42 不會飛的鳥 閱讀(318) 評論(0)  編輯 收藏 引用

            青青青国产成人久久111网站| 久久婷婷五月综合国产尤物app| 色综合久久中文综合网| 久久99精品国产麻豆蜜芽| 欧洲性大片xxxxx久久久| 久久国产劲爆AV内射—百度| av无码久久久久久不卡网站| 久久久久国产精品麻豆AR影院| 欧美亚洲国产精品久久高清| 久久久久久久尹人综合网亚洲| 婷婷久久精品国产| 99久久精品国产一区二区蜜芽| 一本色道久久综合狠狠躁| 国产免费福利体检区久久| 久久精品无码专区免费青青| 日韩人妻无码一区二区三区久久99| 久久成人精品视频| 久久久久亚洲AV无码永不| 一本久道久久综合狠狠躁AV| 91久久九九无码成人网站| 久久精品国产亚洲av影院| 久久午夜夜伦鲁鲁片免费无码影视| 国产精品嫩草影院久久| 72种姿势欧美久久久久大黄蕉| 97精品伊人久久大香线蕉| 欧美久久综合九色综合| 久久婷婷五月综合97色直播| 狠狠色综合网站久久久久久久| .精品久久久麻豆国产精品| 久久av无码专区亚洲av桃花岛| 国产精品久久久久免费a∨| 色综合久久88色综合天天 | 欧美午夜A∨大片久久 | 久久久久久极精品久久久| 国产成人精品久久一区二区三区| 久久久国产乱子伦精品作者| 一本一本久久a久久综合精品蜜桃| 久久久SS麻豆欧美国产日韩| 综合久久给合久久狠狠狠97色| 伊人 久久 精品| 伊人久久综合成人网|