Google '相似圖片搜索':你可以用一張圖片,搜索互聯(lián)網(wǎng)上所有與它相似的圖片。 打開Google圖片搜索頁面: 點擊【相機】使用上傳一張《深度學(xué)習(xí)》的原圖: 點擊搜索后,Google會出現(xiàn)外觀類似的圖片,相似度越高,圖片越靠前。 這種技術(shù)的原理是什么?計算機怎么知道兩張圖片相似呢? 為了滿足大家的好奇心,下面我來講一下“以圖搜圖”背后的故事。
“以圖搜圖”正式的名稱應(yīng)該叫“相似圖像搜索引擎”,也稱為“反向圖片搜索引擎”。最初的圖像搜索引擎是基于文本關(guān)鍵字檢索的。早期的Altavista、Lycos等搜索引擎正是利用圖像的文件名和路徑名、圖像周圍的文本,以及Alt標簽中的注釋索引和搜索相關(guān)圖像的。從本質(zhì)上來說,這樣的圖像搜索引擎其實還是基于文本搜索引擎的。有時圖像周邊的這些文本信息和圖像并沒有關(guān)系,會造成搜索出來的部分圖像結(jié)果和查詢關(guān)鍵詞并不一致。為了避免這種問題,有些搜索引擎采用人工的方式對圖像進行標注索引。雖然人工標注保證了搜索引擎的查準率,但是它限制了圖像索引的規(guī)模,不可能有很好的查全率。而有時,圖像的內(nèi)容是很難用幾個關(guān)鍵詞就能完整描述出來的。在某種情況下,無論是利用圖像網(wǎng)頁相關(guān)文本信息,還是人工標注文字說明,都很難做到較高的搜索準確度。 1992年,T. Kato提出了基于內(nèi)容的圖像檢索(CBIR)的概念,它使用圖像的顏色、形狀等信息作為特征構(gòu)建索引以實現(xiàn)圖像檢索,即我們通常所說的“以圖搜圖”。基于這一概念,IBM開發(fā)了第一個商用的CBIR系統(tǒng)QBIC(Query By Image Content),用戶只需輸入一幅草圖或圖像,便可以搜索出相似的圖像。同一時期,很多公司也將這一技術(shù)引入搜索引擎。哥倫比亞大學(xué)開發(fā)的WebSEEK系統(tǒng)不僅提供了基于關(guān)鍵詞的圖像搜索和按照圖像類目的主題瀏覽,還可以利用圖像的顏色信息進行基于內(nèi)容的圖像搜索。Yahoo的ImageSurfer也提供了使用例圖的顏色、形狀、紋理特征,以及它們的組合來進行基于內(nèi)容的圖像搜索功能。隨著視覺技術(shù)的進步和發(fā)展,越來越多的搜索引擎采用這一方式來進行圖像搜索,并在此基礎(chǔ)上不斷演進。 早期曾使用過“以圖搜圖”方式進行圖像搜索的讀者可能會有這樣的印象,這種圖像搜索方式在返回的結(jié)果的準確度往往不太令人滿意。為此,很多視覺研究人員、圖像技術(shù)開發(fā)者不斷提出新的圖像特征表示算法。雖然準確率在一點點提高,但是并未根本性地解決準確度問題。這究竟是什么原因呢?原因在于無論是圖像的顏色、紋理、形狀這些全局信息,還是后來的SIFT等局部圖像信息,都是人為設(shè)計的硬編碼,還不能完整地表達人類對整幅圖像內(nèi)容的理解。 那圖像搜索的準確率還能提高嗎?隨著人工智能(特別是深度學(xué)習(xí)理論和技術(shù))的發(fā)展,人們逐步找到了解決方案。深度學(xué)習(xí)技術(shù)極大地提高了圖像表達的準確性。諸多主流圖像搜索引擎紛紛引入了深度學(xué)習(xí)算法來提高圖像搜索的準確率。 如今我們?nèi)粘J褂玫陌俣?、搜狗等通用搜索引擎均提供了相似圖像檢索功能。淘寶、京東等電商平臺也利用自己龐大的商品圖像庫開發(fā)了垂直領(lǐng)域內(nèi)的圖像檢索功能來滿足消費者們不易用文字描述的商品搜索需求。有更多的創(chuàng)業(yè)公司在各自的領(lǐng)域內(nèi)使用相似圖像搜索技術(shù)來滿足形形色色圖像檢索需求,服務(wù)于更多的行業(yè)和消費者。 雖然圖像檢索技術(shù)已廣泛應(yīng)用于我們的生活當中,但目前這一技術(shù)還未完全成熟,仍有許多問題需要解決,改進和提高的空間還很大。搜索的結(jié)果和用戶的期望還有一些距離,存在一定的圖像語義鴻溝。這也是從事這項技術(shù)研究與開發(fā)的人員不斷進步的源動力。
根據(jù)一般的抽象方法,我們可以把事物非關(guān)鍵性的特征剝離出來,而只保留其最為本質(zhì)的特征。對于現(xiàn)有技術(shù)條件下的搜索引擎,必須事先生成索引庫,再在其上進行搜索查詢。 如圖所示,首先需要對輸入數(shù)據(jù)進行一定的預(yù)處理,以使我們可以對其進行進一步分析。接下來,把文本搜索引擎的詞法、語法分析等語言處理階段抽象為對輸入數(shù)據(jù)的特征提取,一個個提取出來的詞就是構(gòu)成一個文檔特征向量的基本元素,反向索引庫就是特征和文檔對應(yīng)關(guān)系的集合。對于查詢數(shù)據(jù),我們也要抽取其特征,然后計算它的特征向量與索引庫中所有特征向量的相似度,最終返回規(guī)定數(shù)量的相似結(jié)果。 抽象搜索引擎結(jié)構(gòu)
為了徹底弄清楚這類圖像搜索引擎的技術(shù)原理,我反復(fù)查找和閱讀當時互聯(lián)網(wǎng)上甚為稀缺的相關(guān)資料,但收效甚微。直到后來,我遇到了一個叫作LIRE的開源項目,它讓我初步理解了圖像搜索引擎的技術(shù)原理。但是在實際應(yīng)用中,LIRE的效果并不是太好。為了解決這個問題,我又找到“深度學(xué)習(xí)”這個強有力的助手。 在探索原理的過程中,我發(fā)現(xiàn)國內(nèi)幾乎找不到一本介紹圖像搜索引擎基本原理和實現(xiàn)的書,這也成了《自制AI圖像搜索引擎》誕生的緣由。 《自制AI圖像搜索引擎》 作者:明恒毅 圖像搜索引擎有兩種實現(xiàn)方式——基于圖像上下文文本特征的方式和基于圖像視覺內(nèi)容特征的方式。本書所指的圖像搜索引擎是基于內(nèi)容特征的圖像檢索,也就是通常所說的“以圖搜圖”來檢索相似圖片。本書主要講解了搜索引擎技術(shù)的發(fā)展脈絡(luò)、文本搜索引擎的基本原理和搜索引擎的一般結(jié)構(gòu),詳細講述了圖像搜索引擎各主要組成部分的原理和實現(xiàn),并構(gòu)建了一個基于深度學(xué)習(xí)的Web圖像搜索引擎。
業(yè)內(nèi)僅此一本,你還在等什么? 目前在國內(nèi)計算機專業(yè)圖書市場上,有關(guān)圖像檢索的書籍甚為稀缺。據(jù)我所知,僅有兩本中文專業(yè)書籍,分別是:科學(xué)出版社出版的清華大學(xué)章毓晉教授的《基于內(nèi)容的視覺信息檢索》,清華大學(xué)出版社出版的北師大周明全教授等人著的《基于內(nèi)容圖像檢索技術(shù)》。這兩本書均是純正的學(xué)術(shù)著作,理論豐富,但實踐相對不足。此外,這兩本書均出版于本世紀初,也就是深度學(xué)習(xí)技術(shù)開始風(fēng)靡之前,故兩本書中均未包含將深度學(xué)習(xí)應(yīng)用于圖像檢索的內(nèi)容。 《自制AI圖像搜索引擎》由一線開發(fā)人員所著,偏重實踐,兼有傳統(tǒng)和現(xiàn)代方法,可以說是目前市場上唯一一本有關(guān)AI圖像檢索的圖書。 將深度學(xué)習(xí)理論和應(yīng)用場景緊密結(jié)合,有技術(shù)、能落地 自2016年AlphaGo以4:1的比分戰(zhàn)勝世界頂級圍棋棋手李世石以來, AlphaGo所依賴的深度學(xué)習(xí)算法在公眾中得到了快速的科普。與此同時,各大科技公司也紛紛在深度學(xué)習(xí)領(lǐng)域投入重金,開始高薪聘請首席科學(xué)家、算法研究員和工程師。圖書市場也紛紛推出各種有關(guān)深度學(xué)習(xí)的理論書籍。但隨著時間的推移,很多理論缺乏應(yīng)用場景,并未產(chǎn)生實際效用。不同于其他的理論和技術(shù),AI圖像檢索技術(shù)有著明確的應(yīng)用場景和目標市場,能夠緊密地將深度學(xué)習(xí)理論和應(yīng)用場景相結(jié)合,可謂“有技術(shù)、能落地”。 用理論指導(dǎo)編碼,用代碼闡釋理論,相得益彰 《自制AI圖像搜索引擎》一書的每有個圖像檢索的理論都配有一段Java代碼,使讀者既能深刻地理解理論,又能將理論轉(zhuǎn)變?yōu)榫幋a實現(xiàn)。無論是對理論功底強、實踐能力弱的學(xué)術(shù)讀者,還是對實踐能力強、理論功底弱的開發(fā)者,本書都能提供有針對性的指導(dǎo)。 循序漸進,深入淺出,適合各層次開發(fā)人員入手 《自制AI圖像搜索引擎》一書采用循序漸進的敘述方式,沿著歷史和技術(shù)發(fā)展的脈絡(luò),由文本搜索引擎的基本原理逐步抽象出搜索引擎的一般結(jié)構(gòu),進而由文本演進到圖像。結(jié)合具體實現(xiàn)代碼,全面講述了圖像搜索引擎中各個組成部分的基本原理。任何愿意了解和學(xué)習(xí)AI圖像搜索引擎的讀者在研讀此書后,都能在理論與實踐方面收獲滿滿。 提供從零開始構(gòu)建AI圖像搜索引擎的案例教程,即學(xué)即用 《自制AI圖像搜索引擎》一書在最后一章提供了一個從零開始構(gòu)建一個基于深度學(xué)習(xí)的Web圖像搜索引擎的教程和相應(yīng)的可實際運行的項目代碼,真正做到了即學(xué)即用。讀者既可以先嘗試一下運行效果,而后帶著小小的成就感來學(xué)習(xí)相關(guān)的理論和技術(shù),也可以在學(xué)習(xí)完相關(guān)的理論和技術(shù)后,再研究最后一章的代碼與實現(xiàn)過程。 輕松學(xué)《自制AI圖像搜索引擎》你需要掌握: |
|