iOS 上如何實現以圖搜圖

軟件 iOS Chrome Google 少數派 2017-06-01

五月九日舉行的堅果 Pro 發佈會上,老羅展示了擁有多項新功能的 One Step 進化版,其中以圖搜圖功能可以用拖拽的方式快速實現多個渠道的圖片搜索,從而找到相關圖片或瞭解圖片內容信息,其方便與實用性令人頗有些心動。

但這些也只是交互方式上的創新,並不是全新的功能實現。圖片搜索調用的還是搜索引擎的接口和數據,只是可以讓用戶方便的把要搜的圖片發送過去。智能手機作為通用計算平臺,只要不是受限於計算能力,這種應用層面的功能只要一家能做,其他手機上也應該能做。那麼,在 iOS 上,用哪些 App 可以實現以圖搜圖呢?

搜索引擎應用

以圖搜圖不論如何實現,最終還是要用到搜索引擎的接口,所以我首先想到的是搜索引擎類應用。雖然國內外各大搜索引擎在 iOS 上都提供了自己獨立的搜索應用,但並非都可以進行以圖搜圖的操作。我經過試用後發現,Google 無論在自己的搜索 App 裡還是移動網頁端 images.google.com,都無法進行以圖搜圖的操作,根本沒有提供相關接口。

而微軟家的搜索引擎必應 Bing 支持以圖搜圖,操作如下:應用主界右上⻆有三個按鈕,點擊左邊第一個,即可拍照或從相冊選取圖片搜索。沒有拖拽方便,但確實可用。

iOS 上如何實現以圖搜圖

有時我們也想在相冊中看圖片時直接搜索,但可惜微軟並沒有在 Share Sheet 中提供相關搜圖接口。2014 年 WWDC 上微軟在臺上展示瞭如何在 Safari 中利用 Share Sheet 直接調用必應翻譯來翻譯網頁,三年過去了,必應提供的共享接口還是隻有一個網頁翻譯,也許他們覺得其他功能做出來也沒人用吧。

瀏覽器

我最初使用以圖搜圖就是在桌面版的 Chrome 上,網頁圖片在右鍵菜單中點擊即可調用 Google 搜索圖片。iOS 版 Chrome 同樣支持直接搜索網頁圖片,方法與桌面端類似:長按圖片,在彈出菜單中直接選擇「在 Google 中搜索此圖片」,即可在新頁面中出現結果。在桌面上除搜索網頁圖片之外,本地圖片也可以用 Chrome 打開然後右鍵搜索。而在 iOS 上這一途徑並不存在,只能搜索網頁圖片。

我又試過 iOS 上其他一些第三方瀏覽器,如 Firefox, Opera, 夸克瀏覽器等,雖然都在功能和交互上大作文章,卻沒有一家提供搜圖功能。

Reversee

前面說 Bing 只能應用內搜圖而沒有在「照片」中提供共享接口,那麼這個名為 Reversee 的應用做的就是這件事。以文字搜圖片是傳統的正向圖片搜索,而以圖搜圖或者搜相關信息則為反向圖片搜索 Reverse Image Search。Reversee 之名正來源於此。

Reversee 提供了多種圖片搜索方式。既可以在應用內調取相冊圖片或拍照搜索(拍照需解鎖 Pro 版本),也可以從「照片」或瀏覽器應用中通過標準的 Share Sheet 共享接口直接上傳圖片並搜索。在三種方式之下,都可以在選定圖片之後調整分辨率或者裁剪部分進行搜索。需要注意的是,在瀏覽器中使用時,並非像 Chrome 自帶的功能那樣,在網頁圖片上直接長按選擇,這樣選中圖片後的共享列表中是沒有 Reversee 的。需要將圖片用新頁面打開,這時 Reversee 就會出現在新頁面的 Share Sheet 中了。這一瀏覽器擴展不僅支持 Safari,任何支持標準分享接口的第三方瀏覽器內也都可以使用。

iOS 上如何實現以圖搜圖

Reversee 免費版本只能使用 Google 進行圖片搜索,且從照片及瀏覽器擴展中搜圖時要等待 10 秒的 Preparing 時間。付費 18 元解鎖 Pro 版本後,可在應用內直接拍照搜索,可另外使用 Bing 和 Yandax 兩個搜索引擎同時搜圖,去除十秒等待時間,以及其他一些高級功能。

購物應用

京東,淘寶,亞馬遜,噹噹都在 iOS 移動應用中提供了按圖片搜索商品的功能。噹噹功能最弱,只能搜圖書封面,識別率也一般。京東與淘寶類似,都可拍照識別圖片或者載入相冊圖片搜索商品。

亞馬遜稍有不同,不能搜索相冊圖片,但搜索實物時只需將物體放入取景框即可,無需拍照,應用會自行識別物體輪廓,有結果時直接跳轉至對應商品頁面,不像京東和淘寶兩家總是給出一堆他們覺得相似而實際相差很遠的商品。

另外在移動設備上用瀏覽器訪問上述各商城的網頁時,搜圖功能都無法使用。而在桌面端訪問網頁時,也只有京東和淘寶可以點擊搜索框中的相機圖標以載入本地圖片進行搜索,亞馬遜和噹噹則不行。總的來說,以圖片搜商品就是一項為移動而生的功能。

Power User 之選:Workflow

以圖搜圖這種操作,iOS 上沒有提供現成的實現方法,但本身邏輯清晰,調用固定的 Web API。這樣的工作交給 Workflow 最為合適,只是需要一定的學習成本。

Workflow 自帶的動作裡並無圖片搜索,事實上在動作庫中搜索 Google 會出來四個動作,兩個地圖相關,一個是在 Google Chrome 中打開鏈接,最後一個是「Search Web」。最後這個動作可以選擇不同的搜索引擎,包括 Google,但是隻接受文本作為輸入。我一開始沒看說明,想試試能不能搜圖片。從照片 Extension 中試著運行這個動作,還真能跑,並沒有出錯。可是結果出來無語了,它只是把照片的文件名放上去搜索了,類似 IMG_2048 這樣。

所以目前在 Workflow 裡搜圖只能自己定製動作,調用網絡 API。少數派做的 Workflow Gallery裡提供了由 JailbreakHum 製作的兩條以圖搜圖的 Workflow,一條百度一條谷歌,步驟完全一樣,只是最後一步調用了不同的搜索引擎。在裝有 Workflow 的 iOS 設備上打開 Gallery 網頁,在需要的 Workflow 卡片上點擊「獲取該 WORKFLOW」,即可導入本地使用。

iOS 上如何實現以圖搜圖

這兩個 Workflow 的原理為:從相冊中選取一張照片並設置變量,然後匿名上傳至 sm.ms 這個香港的圖床網站,再從服務器返回的結果中讀取該圖片網址,附加在

https://images.google.com/searchbyimage?image_url=

http://image.baidu.com/n/pc_search?queryImageUrl=後面,然後把新生成的網址 URL 在 Safari 中打開,相當於用搜索引擎搜一個已知網址的網絡圖片。其實現是基於 Workflow 1.5.3 中添加的對 POST 這一 HTTP 請求方式的支持,具體可參見Workflow 教程(八):利用新的請求方法打造 Web 小程序。

這兩條 Workflow 的類型都是 Today Widget,只能從 Workflow 主應用裡運行或者從通知中心運行。如果想在相冊中選中圖片後直接調用,可以把原類型改為 Action Extension,並且設定屬性為只接受圖片 Accepts Images,再把原來第一步的 Select Photos 刪除,即可從相冊中直接發起搜索。

iOS 上如何實現以圖搜圖

因為借用了第三方圖床作為中轉,若此圖床網站因為任何原因發生改變,如宕機、API 變化,中止服務等情況,此一系列 Workflow 便不能再正常工作,需要用戶自行調整,比如換用別家圖床。前面說的 Reversee 可能也是這麼搞的,不過它的圖床出了問題有開發者去操心。而用 Bing 和 Chrome 這種第一方的服務則不會有這樣的隱憂。

結語

以上展示了在 iOS 設備上以圖搜圖的幾種途徑。這些方法沒有錘子的 One Step 酷炫,只能在各個應用內部「艱難」實現或尋找特定 app 解決。可是如其名所述,在錘子的系統上也只是把多步操作簡化為「一步」而已,並非做到了人所不能。

其實搜圖可以做的事情很多。除了找無水印高清大圖外,還可以隨時隨地識別身邊的動物植物、繪畫雕塑以增長知識,藝術家、設計師朋友也可以藉此查看自己的作品有沒有被人侵權使用。現在的情況是,很多人不知道有這樣的功能,還有人想用而不知道怎麼用。因為用的人少,廠家才不重視。瞭解它,使用它,習慣它。用的多起來之後,還是會對個人生活學習和工作帶來一些積極的改變。硬件和軟件廠商也才有動力去優化搜圖的使用體驗。

相關推薦

推薦中...