中文字幕无码日韩视频无码三区

用于視覺查詢的可采取動作的搜索結果的制作方法

文檔序(xu)號:6351884閱讀:187來源:國知(zhi)局
專利名稱:用于視覺查詢的可采取動作的搜索結果的制作方法
技術領域
所公開的實施例一般地涉及創建與視覺查詢中的實體相對應的一個或多個可采取動作(actionable)的搜索結果元素。
背景技術
其中用戶向搜索引擎中輸入詞或短語并且接收各種結果的基于文本或基于詞語的捜索是ー種用于搜索的有用工具。然而,基于詞語的查詢需要用戶能夠輸入相關詞語。有時用戶會希望了解與圖像相關的信息。例如,用戶可能想要知道照片中人物的名字,或者用戶可能想要知道雜志中的圖片中的花或鳥的名稱。個人可能還會希望與圖像中的人聯系或者購買圖像中的項目。因此,將需要一種能夠接收圖像,將其轉換為視覺查詢,并且提供與在視覺查詢中所識別的實體相對應的可采取動作的捜索結果元素的系統。

發明內容
通過提供以下所描述的方法、系統、計算機可讀存儲介質和圖形用戶界面(GUI)來對以上所描述的ー些局限和缺點進行描述。一些實施例提供了提供以下內容的方法、系統、計算機可讀存儲介質和圖形用戶界面(GUI)。根據ー些實施例,一種計算機實現的處理視覺查詢的方法包括在服務器系統上執行以下操作,所述服務器系統具有一個或多個處理器以及存儲供所述ー個或多個處理器執行的一個或多個程序的存儲器。由所述服務器系統從客戶端系統接收視覺查詢。在ー些實施例中,通過將視覺查詢發送到實現視覺查詢捜索處理的至少ー個捜索系統,并且從搜索系統中的一個或多個接收多個搜索結果,來對所述視覺查詢進行處理。無論服務器系統是否將視覺查詢發送至捜索系統,所述服務器系統都對所述視覺查詢中的實體進行識別。其還識別與所識別實體相對應的一個或多個客戶端側動作。接著,其創建被配置為啟動所述客戶端側動作中的一個的可采取動作的搜索結果元素。在一些實施例中,其創建被配置為啟動多個客戶端側動作的多個可采取動作的捜索結果。最后,所述服務器系統將(多個)可采取動作的捜索結果元素以及所述多個捜索結果中的至少ー個發送到所述客戶端系統。在一些實施例中,所述可采取動作的捜索結果元素不同于所述多個搜索結果。一些實施例提供了創建多個可采取動作的搜索結果按鈕并且將它們發送到客戶端系統,所述多個可采取動作的搜索結果按鈕中的每ー個被配置為啟動唯一的客戶端動作。在一些實施例中,所述方法還包括識別與所識別實體相對應的多個不同的客戶端側動作。接著,所述服務器系統創建兩個或更多可采取動作的捜索結果元素,所述兩個或更多可采取動作的搜索結果元素中的每ー個被配置為啟動所識別的多個客戶端側動作中的相應客戶端側動作。所述服務器系統接著將所述兩個或更多可采取動作的捜索結果元素發送到所述客戶端系統。在一些實施例中,識別實體包括使用非OCR圖像匹配過程來識別視覺查詢中的實體。
在一些實施例中,相應客戶端側動作是以下的ー個或多個對電話號碼發起呼叫、即時消息發送、傳呼、傳真、發送電子郵件、社交網絡通信,以及通過另ー種通信機制進行通ィ目。在一些實施例中,視覺查詢中所識別的實體可以是人、與人相關聯的姓名或其它標識符、條形碼、標志、企業、組織、建筑物、建筑物或物理結構群組、郵政地址、地標、地理實體、產品或服務。以上所提到的方法可選地還包括向客戶端系統發送具有可采取動作的捜索結果元素的視覺查詢的表示,所述可采取動作的捜索結果元素覆蓋所述視覺查詢的表示的至少一部分。在其它實施例中,所述發送包括向客戶端系統發送用于視覺呈現覆蓋所述視覺查詢的至少一部分的可采取動作的捜索結果元素的信息。可選地,當所識別的實體是電話號碼時,所述可采取動作的捜索結果元素是用于對所述電話號碼發起電話呼叫的按鈕(即,可以看上去類似或不類似按鈕的獨立用戶界面 元素)。當所識別的實體是電子郵件地址時,所述可采取動作的捜索結果元素是用于發起到所述電子郵件地址的電子郵件消息的編寫的按鈕。當所識別的實體是郵政地址時,所述可采取動作的捜索結果元素是用于對該地址繪制地圖的按鈕。在一些實施例中,繪制地圖包括以下至少ー個提供識別郵政地址的位置的地圖,提供到郵政地址的行車路線指引,提供始于郵政地址的行車路線指引、提供包括郵政地址的航空照片,以及提供對應于郵政地址的街景圖像。可選地,所述可采取動作的捜索結果元素被配置為向聯系人列表添加信息。所述信息可以包括以下的ー個或多個姓名、電子郵件地址、電話號碼、傳真號碼、郵政地址、即時消息地址、公司名稱、組織名稱、URL和社交網絡聯系人。在一些實施例中,當實體是產品時,所述可采取動作的捜索結果元素被配置為提供以下的ー個或多個產品評論、發起產品購買的選項,以及發起對產品出價的選項,類似廣品的列表和相關廣品的列表。一些實施例提供了在所識別實體是人或者與人相關聯的標識符時,所述多個捜索結果包括與所述人相關聯的通信地址,并且所述可采取動作的捜索結果元素被配置為使用所述通信地址啟動通信。在一些實施例中,所述可采取動作的捜索結果包括與人相關聯的標識符,并且所述標識符是人的姓名、人的面部圖像、與人相關聯的標識號碼、與人相關聯的電話號碼、與人相關聯的傳真號碼、與人相關聯的社交網絡標識符和/或與人相關聯的電子郵件地址中的ー個。在一些實施例中,除了可采取動作的搜索結果元素之外,還提供被配置為共享或上傳視覺查詢的至少一部分的可采取動作的元素。一些實施例提供了提供以下內容的方法、系統、計算機可讀存儲介質和圖形用戶界面(GUI)。根據ー些實施例,一種計算機實現的處理視覺查詢的方法包括在客戶端系統上執行以下步驟,所述客戶端系統具有一個或多個處理器、顯示器以及存儲供所述ー個或多個處理器執行的一個或多個程序的存儲器。從諸如圖像捕捉應用的應用接收視覺查詢。所述客戶端系統從所述圖像創建視覺查詢。接著,所述客戶端系統將視覺查詢發送到視覺查詢搜索系統。所述視覺查詢搜索系統如以上所討論的對所述視覺查詢進行處理。所述客戶端系統從所述視覺查詢搜索系統接收可采取動作的捜索結果元素,所述可采取動作的捜索結果元素被配置為啟動客戶端側動作。所述可采取動作的捜索結果元素對應于視覺查詢中的實體。所述客戶端系統使用視覺查詢客戶端應用在顯示器上顯示所述可采取動作的捜索結果元素。所述客戶端系統接著接收對所述可采取動作的捜索結果元素的用戶選擇,并且啟動與所選擇的可采取動作的搜索結果元素相對應的客戶端側動作。所述客戶端側動作在不同于所述視覺查詢客戶端應用的客戶端應用中啟動。在一些實施例中,所述不同于視覺查詢客戶端應用的客戶端側應用是電子郵件應用、瀏覽器應用、電話應用、即時消息應用、社交網絡應用或地圖應用。在一些實施例中,提供了一種服務器系統,所述服務器系統包括用于執行程序的ー個或多個中央處理單元以及存儲由所述ー個或多個中央處理單元執行的ー個或多個程序的存儲器。所述程序包括用于執行以下內容的指令。從客戶端系統接收視覺查詢。在一些實施例中,通過將視覺查詢發送到實現視覺查詢搜索過程的至少ー個捜索系統,并且接著服務器從捜索系統中的一個或多個接收多個搜索結果來對所述視覺查詢進行處理。無論服務器系統是否將視覺查詢發送至捜索系統,所述服務器系統都對所述視覺查詢中的實體進行識別。其還識別與所識別實體相對應的一個或多個客戶端側動作。接著,其創建配被 置為啟動所述客戶端側動作中的一個的可采取動作的捜索結果元素。在一些實施例中,其創建被配置為啟動多個客戶端側動作的多個可采取動作的捜索結果。最后,所述服務器系統將(多個)可采取動作的捜索結果元素以及所述多個捜索結果中的至少ー個發送到所述客戶端系統。這樣的服務器系統還可以包括用于執行以上所討論的額外選項的程序指令。在一些實施例中,提供了一種客戶端系統,其包括用于執行程序的ー個或多個中央處理単元、顯示器以及存儲由所述ー個或多個中央處理單元執行的ー個或多個程序的存儲器。所述程序包括用于執行以下內容的指令。從諸如圖像捕捉應用的應用接收視覺查詢。所述客戶端系統從所述圖像創建視覺查詢。接著,所述客戶端系統將視覺查詢發送到視覺查詢搜索系統。所述視覺查詢搜索系統如以上所討論的對所述視覺查詢進行處理。所述客戶端系統從所述視覺查詢搜索系統接收可采取動作的捜索結果元素,所述可采取動作的搜索結果元素被配置為啟動客戶端側動作。所述可采取動作的捜索結果元素對應于視覺查詢中的實體。所述客戶端系統使用視覺查詢客戶端應用在顯示器上顯示所述可采取動作的搜索結果元素。所述客戶端系統接著接收對所述可采取動作的捜索結果元素的用戶選擇,并且啟動與所選擇的可采取動作的搜索結果元素相對應的客戶端側動作。所述客戶端側動作在不同于所述視覺查詢客戶端應用的客戶端側應用中啟動。這樣的客戶端系統還可以包括用于執行以上所討論的額外選項的程序指令。一些實施例提供了一種存儲被配置為供計算機實現的ー個或多個程序的計算機可讀存儲介質。所述程序包括用于執行以下內容的指令。從客戶端系統接收視覺查詢。在一些實施例中,通過將視覺查詢發送到實現視覺查詢搜索過程的至少ー個捜索系統,并且服務器然后從ー個或多個搜索系統接收多個搜索結果來對所述視覺查詢進行處理。無論服務器系統是否將視覺查詢發送至捜索系統,所述服務器系統都對所述視覺查詢中的實體進行識別。其還識別與所識別實體相對應的一個或多個客戶端側動作。接著,其創建配被置為啟動所述客戶端側動作之一的可采取動作的搜索結果元素。在一些實施例中,其創建被配置為啟動多個客戶端側動作的多個可采取動作的捜索結果。最后,所述服務器系統將可采取動作的捜索結果元素以及所述多個捜索結果中的至少ー個發送到所述客戶端系統。這樣的計算機可讀存儲介質還可以包括用于執行以上所討論的額外選項的程序指令。一些實施例提供了一種存儲被配置為供計算機實現的ー個或多個程序的計算機可讀存儲介質。所述程序包括用于執行以下內容的指令。從諸如圖像捕捉應用的應用接收視覺查詢。所述客戶端系統從所述圖像創建視覺查詢。接著,所述客戶端系統將視覺查詢發送到視覺查詢搜索系統。所述視覺查詢搜索系統如以上所討論的對所述視覺查詢進行處理。所述客戶端系統從所述視覺查詢搜索系統接收可采取動作的捜索結果元素,所述可采取動作的捜索結果元素被配置為啟動客戶端側動作。所述可采取動作的捜索結果元素對應于視覺查詢中的實體。所述客戶端系統使用視覺查詢客戶端應用在客戶端顯示器上顯示所述可采取動作的捜索結果元素。所述客戶端系統接著接收對所述可采取動作的捜索結果元素的用戶選擇,并且啟動與所選擇的可采取動作的捜索結果元素相對應的客戶端側動作。所述客戶端側動作在不同于所述視覺查詢客戶端應用的客戶端側應用中啟動。這樣的計算機可讀存儲介質還可以包括用于執行以上所討論的額外選項的程序指令。
在另ー個方面,一種計算機實現的處理視覺查詢的方法包括在服務器系統上執行以下操作,所述服務器系統具有一個或多個處理器以及存儲供所述ー個或多個處理器執行的一個或多個程序的存儲器。從客戶端系統接收視覺查詢。還從客戶端系統接收位置信息。在一些實施例中,所述客戶端系統從GPS信息、小區塔臺信息和/或無線局域網信息獲得位置信息。所述服務器系統將視覺查詢和位置信息發送到視覺查詢搜索系統。其接著從所述視覺查詢搜索系統接收依據視覺查詢和位置信息兩者的ー個或多個搜索結果。所述服務器系統從所述ー個或多個搜索結果識別視覺查詢中的實體。其還識別與所識別實體相對應的一個或多個客戶端側動作。接著,所述服務器系統創建可采取動作的捜索結果元素,所述可采取動作的搜索結果元素被配置為啟動所識別的一個或多個客戶端側動作中的相應客戶端側動作。最后,所述服務器系統將所述可采取動作的捜索結果元素發送到客戶端系統。一些實施例進ー步包含將ー個或多個搜索結果中的至少ー個連同可采取動作的捜索結果元素一起發送到客戶端系統。在一些實施例中,所述搜索結果包括在距位置信息指定距離內的捜索結果。在其它實施例中,所述搜索結果包括與所識別實體類似的搜索結果。在一些實施例中,所述ー個或多個搜索結果中的至少ー個包括被配置為啟動與搜索結果中的實體相對應的客戶端側動作的可采取動作的搜索結果元素。在一些實施例中,當所識別實體是餐廳時,相應的客戶端側動作是以下的ー個或多個發起電話呼叫、提供評論;發起預訂請求,提供地圖信息、啟動餐廳網站、提供附加信息以及分享以上任意內容。一些實施例進ー步包括從視覺查詢搜索系統接收基于視覺查詢和位置信息的增強位置信息。所述服務器系統接著向基于位置的捜索系統發送捜索查詢。所述搜索查詢包括所述增強位置信息。所述搜索系統接收依據所述增強位置信息的一個或多個搜索結果并且將其提供至客戶端。在一些實施例中,視覺查詢中的所識別實體可以是人、與人相關聯的姓名或其它標識符、條形碼、標志、企業、組織、建筑物、建筑物或物理結構群組、郵政地址、地標、地理實體、產品或服務。在一些實施例中,所述可采取動作的搜索結果元素被配置為向聯系人列表添加信息,其中所述信息選自由以下一個或多個所構成的群組電子郵件地址、電話號碼、傳真號碼、郵政地址、公司名稱、組織名稱和URL。可選地,當所識別實體是與諸如企業、組織或協會之類的實體相關聯的標識符吋,所述ー個或多個搜索結果包括與所述實體相關聯的通信地址,并且所述可采取動作的捜索結果元素被配置為使用所述通信地址啟動通信。一些實施例提供了提供以下內容的方法、系統、計算機可讀存儲介質和圖形用戶界面(GUI)。根據ー些實施例,一種計算機實現的處理視覺查詢的方法包括在客戶端系統上執行以下步驟,所述客戶端系統具有一個或多個處理器、顯示器以及存儲供所述ー個或多個處理器執行的一個或多個程序的存儲器。所述客戶端系統接收圖像。所述圖像可以從圖像捕捉應用接收。所述客戶端系統還接收位置信息。在一些實施例中,所述客戶端系統從GPS信息、小區塔臺信息和/或無線局域網信息接收位置信息。所述客戶端系統從所述圖像 創建視覺查詢。其將所述視覺查詢和位置信息發送到視覺查詢搜索系統。所述視覺查詢搜索系統執行如以上所討論的操作。所述客戶端系統從所述視覺查詢搜索系統接收被配置為啟動客戶端側動作的可采取動作的捜索結果元素。所述可采取動作的捜索結果元素對應于視覺查詢中的實體。所述客戶端系統使用視覺查詢客戶端應用在顯示器上顯示所述可采取動作的捜索結果元素。隨后,所述客戶端系統接收對所述可采取動作的捜索結果元素的用戶選擇,并且在不同于所述視覺查詢客戶端應用的客戶端側應用中啟動與所選擇的可采取動作的搜索結果元素相對應的客戶端側動作。在一些實施例中,所述客戶端側應用是電子郵件應用、瀏覽器應用、電話應用、SP時消息應用、社交網絡應用或地圖應用。一些實施例進ー步包括從視覺查詢搜索系統接收依據所述視覺查詢和位置信息兩者的ー個或多個搜索結果。所述客戶端系統然后在顯示器上連同可采取動作的捜索結果元素一起顯示ー個或多個搜索結果。在一些實施例中,提供了一種服務器系統,其包括用于執行程序的ー個或多個中央處理單元以及存儲由所述ー個或多個中央處理單元執行的一個或多個程序的存儲器。所述程序包括執行以下內容的指令。從客戶端系統接收視覺查詢。還從客戶端系統接收位置信息。在一些實施例中,所述客戶端系統從GPS信息、小區塔臺信息和/或無線局域網信息獲得位置信息。所述服務器系統將視覺查詢和位置信息發送到視覺查詢搜索系統。其接著從所述視覺查詢搜索系統接收依據視覺查詢和位置信息兩者的ー個或多個搜索結果。所述服務器系統從所述ー個或多個搜索結果識別視覺查詢中的實體。其還識別與所識別實體相對應的一個或多個客戶端側動作。接著,所述服務器系統創建可采取動作的捜索結果元素,所述可采取動作的捜索結果元素被配置為啟動所識別的一個或多個客戶端側動作中的相應客戶端側動作。最后,所述服務器系統將所述可采取動作的捜索結果元素發送到客戶端系統。這樣的服務器系統還可以包括用于執行以上所討論的額外選項的程序指令。在一些實施例中,提供了一種客戶端系統,其包括用于執行程序的ー個或多個中央處理単元、顯示器以及存儲由所述ー個或多個中央處理單元執行的ー個或多個程序的存儲器。所述程序包括用于執行以下內容的指令。所述客戶端系統接收圖像。所述圖像可以從圖像捕捉應用接收。所述客戶端系統還接收位置信息。在一些實施例中,所述客戶端系統從GPS信息、小區塔臺信息和/或無線局域網信息接收位置信息。所述客戶端系統從所述圖像創建視覺查詢。其將所述視覺查詢和位置信息發送到視覺查詢搜索系統。所述視覺查詢搜索系統執行如以上所討論的操作。所述客戶端系統從所述視覺查詢搜索系統接收被配置為啟動客戶端側動作的可采取動作的捜索結果元素。所述可采取動作的捜索結果元素對應于視覺查詢中的實體。所述客戶端系統使用視覺查詢客戶端應用在顯示器上顯示所述可采取動作的捜索結果元素。隨后,所述客戶端系統接收對所述可采取動作的捜索結果元素的用戶選擇。在不同于所述視覺查詢客戶端應用的客戶端側應用中,所述客戶端系統啟動與所選擇的可采取動作的捜索結果元素相對應的客戶端側動作。這樣的客戶端系統還可以包括用于執行以上所討論的額外選項的程序指令。一些實施例提供了一種存儲被配置為供計算機執行的一個或多個程序的計算機可讀存儲介質。所述程序包括用于執行以下內容的指令。從客戶端系統接收視覺查詢。還從客戶端系統接收位置信息。在一些實施例中,所述客戶端系統從GPS信息、小區塔臺信息和/或無線局域網信息獲得位置信息。所述服務器系統將視覺查詢和位置信息發送到視覺查詢搜索系統。其接著從所述視覺查詢搜索系統接收依據視覺查詢和位置信息兩者的ー個或多個搜索結果。所述服務器系統從所述ー個或多個搜索結果識別視覺查詢中的實體。其還識別與所識別實體相對應的一個或多個客戶端側動作。接著,所述服務器系統創建可采 取動作的捜索結果元素,所述可采取動作的捜索結果元素被配置為啟動所識別的一個或多個客戶端側動作中的相應客戶端側動作。最后,所述服務器系統將所述可采取動作的捜索結果元素發送到客戶端系統。這樣的計算機可讀存儲介質還可以包括用于執行以上所討論的額外選項的程序指令。一些實施例提供了一種存儲被配置為供計算機執行的一個或多個程序的計算機可讀存儲介質。所述程序包括用于執行以下內容的指令。客戶端系統接收圖像。所述圖像可以從圖像捕捉應用接收。所述客戶端系統還接收位置信息。在一些實施例中,所述客戶端系統從GPS信息、小區塔臺信息和/或無線局域網信息接收位置信息。所述客戶端系統從所述圖像創建視覺查詢。其將所述視覺查詢和位置信息發送到視覺查詢搜索系統。所述視覺查詢搜索系統執行如以上所討論的操作。所述客戶端系統從所述視覺查詢搜索系統接收被配置為啟動客戶端側動作的可采取動作的搜索結果元素。所述可采取動作的搜索結果元素對應于視覺查詢中的實體。所述客戶端系統使用視覺查詢客戶端應用在顯示器上顯示所述可采取動作的捜索結果元素。隨后,所述客戶端系統接收對所述可采取動作的搜索結果元素的用戶選擇。在不同于所述視覺查詢客戶端應用的客戶端側應用中,所述客戶端系統啟動與所選擇的可采取動作的捜索結果元素相對應的客戶端側動作。這樣的計算機可讀存儲介質還可以包括用于執行以上所討論的額外選項的程序指令。


圖I是圖示包括視覺查詢服務器系統的計算機網絡的框圖。圖2是圖示依據ー些實施例的用于對視覺查詢進行響應的過程的流程圖。圖3是圖示依據ー些實施例的用于利用交互式結果文檔對視覺查詢進行響應的過程的流程圖。圖4是圖示依據ー些實施例的客戶端和視覺查詢服務器系統之間的通信的流程圖。
圖5是圖示依據ー些實施例的客戶端系統的框圖。圖6是圖示依據ー些實施例的前端視覺查詢處理服務器系統的框圖。圖7是圖示依據ー些實施例的被用來處理視覺查詢的并行搜索系統中一般的一個的框圖。圖8是圖示依據ー些實施例的被用來處理視覺查詢的OCR搜索系統的框圖。圖9是圖示依據ー些實施例的被用來處理視覺查詢的面部識別搜索系統的框圖。圖10是圖示依據ー些實施例的被用來處理視覺查詢的圖像至詞語搜索系統的框圖。圖11圖示了依據ー些實施例的具有示例性視覺查詢的截屏的客戶端系統。
圖12A和12B均圖示了依據ー些實施例的具有帶分界框的交互式結果文檔的截屏的客戶端系統。圖13圖示了依據ー些實施例的具有通過類型編碼的交互式結果文檔的截屏的客戶端系統。圖14圖示了依據ー些實施例的具有帶標簽的交互式結果文檔的截屏的客戶端系統。圖15圖示了依據ー些實施例的交互式結果文檔和與結果列表同時顯示的視覺查詢的截屏。圖16A和16B是圖示依據ー些實施例的用于創建可采取動作的搜索結果元素的過程的流程圖。圖17圖示了依據ー些實施例的針對包括商務卡的視覺查詢所返回的多個可采取動作的捜索結果元素和結果列表的客戶端系統顯示。圖18圖示了依據ー些實施例的針對包括2D條形碼的視覺查詢所返回的多個可采取動作的捜索結果元素和結果列表的客戶端系統顯示。圖19圖示了依據ー些實施例的針對包括圖書的視覺查詢所返回的多個可采取動作的捜索結果元素和結果列表的客戶端系統顯示。圖20是圖示依據ー些實施例的客戶端和視覺查詢服務器系統之間用于創建具有可選位置信息擴增的可采取動作的捜索結果的通信的流程圖。圖21圖示了依據ー些實施例的針對包括建筑物的街景視覺查詢所返回的多個可采取動作的捜索結果元素和結果列表的客戶端系統顯示。圖22圖示了依據ー些實施例的針對包括建筑物的街景視覺查詢所返回的覆蓋視覺查詢的多個可采取動作的捜索結果元素的客戶端系統顯示。圖23是圖示依據ー些實施例的擴增位置的視覺查詢處理器服務器系統的框圖。圖24是圖示依據ー些實施例的基于位置的查詢處理服務器系統的框圖。相同的附圖標記貫穿附圖指代相對應的部分。
具體實施例方式現在將對其示例在附圖中進行圖示的實施例進行詳細參考。在以下詳細描述中,給出多個具體細節以便提供對本發明的全面理解。然而,對本領域技術人員顯而易見的是,本發明可以在沒有這些具體細節的情況下進行實踐。在其它實例中,沒有對已知的方法、過程、組件、電路和網絡進行詳細描述以免對本發明的方面造成不必要的混淆。還要理解的是,雖然這里可能使用了術語第一、第二等來對各個元素進行描述,但是這些元素并不被這些術語所限制。這些術語僅被用來將ー個元素與另一元素區分開來。例如,第一聯系人可以被稱之為第二聯系人,并且類似地,第二聯系人可以被稱之為第一聯系人,而并不背離本發明的范圍。第一聯系人和第二聯系人均為聯系人,但是他們不是相同的聯系人。這里的發明描述中所使用的術語僅是為了描述特定實施例而并非意在對本發明進行限制。如發明描述和權利要求中所使用的,除非上下文明確另外指出,否則單數形式“ー個”(“a”、“an”和“ the”)意在也包括復數形式。還要理解的是,如這里所使用的術語“和/或”是指代并包含相關聯列舉項目中的ー個或多個的任意和所有的可能組合。將要進一歩理解的是,當在該說明書中使用吋,術語“包括”和/或“包含”指定存在所提到的特征、整數、步驟、操作、元素和/或組件,但是并不排除存在或添加ー個或多個其它特征、整數、步驟、操作、元素、組件和/或其群組。
如這里所使用的,根據上下文,術語“如果”可以被理解為表示“當……吋”或“一旦”或“響應于確定了……”或“響應于檢測到……”。類似地,根據上下文,短語“如果確定了”或“如果檢測到(所提到的條件或事件)”可以被理解為表示“一旦確定了……”或“響應于確定了……”或“一旦檢測到(所提到的條件或事件)”或“響應于檢測到(所提到的條件或事件)”。圖I是圖示根據ー些實施例的包括視覺查詢服務器系統的計算機網絡的框圖。計算機網絡100包括一個或多個客戶端系統102以及視覺查詢服務器系統106。ー個或多個通信網絡104對這些組件進行互連。通信網絡104可以是各種網絡中的任意網絡,包括局域網(LAN)、廣域網(WAN)、無線網絡、有線網絡、互聯網或者這樣的網絡的組合。客戶端系統102包括客戶端應用108,其由客戶端系統執行用于接收視覺查詢(例如,圖11的視覺查詢1102)。視覺查詢是作為查詢提交給搜索引擎或搜索系統的圖像。視覺查詢的示例包括照片、掃描文檔以及圖像和圖,但是并不局限于此。在一些實施例中,客戶端應用108從搜索應用、用于瀏覽器應用的搜索引擎插件和用于瀏覽器應用的搜索引擎擴展所構成的集合中進行選擇。在一些實施例中,客戶端應用108是“雜性的(omnivorous)”搜索框,其允許用戶將任意格式的圖像拖放到捜索框中以作為視覺查詢。客戶端系統102向視覺查詢服務器系統106發送查詢并且從其接收數據。客戶端系統102可以是能夠與視覺查詢服務器系統106進行通信的任意計算機或其它設備。示例包括臺式和筆記本計算機、大型主機計算機、服務器計算機、諸如移動電話和個人數字助理的移動設備、網絡終端和機頂盒,但不限于此。視覺查詢服務器系統106包括前端視覺查詢處理服務器110。前端服務器110從客戶端102接收視覺查詢,并且將所述視覺查詢發送到多個并行捜索系統112以便同時進行處理。捜索系統112均實施不同的視覺查詢搜索過程并且在必要時訪問其相應數據庫114以通過它們不同的搜索過程來處理所述視覺查詢。例如,臉部識別搜索系統112-A將訪問面部圖像數據庫114-A以尋找與圖像查詢相匹配的面部。如將關于圖9更為詳細描述的,如果視覺查詢包含臉部,則面部識別搜索系統112-A將從面部圖像數據庫114-A返回ー個或多個搜索結果(例如,名稱、匹配臉部等)。在另ー個示例中,光學字符識別(OCR)捜索系統112-B將視覺查詢中任意可識別的文本轉換為文本以便作為ー個或多個搜索結果返回。如關于圖8更為詳細解釋地,在光學字符識別(OCR)捜索系統112-B中,可以訪問OCR數據庫114-B來識別特定字體或文本圖案。可以使用任意數量的并行搜索系統112。一些示例包括面部識別搜索系統112-A、OCR捜索系統112-B、圖像至詞語搜索系統112-C (其可以識別對象或對象類別)、產品識別捜索系統(其可以被配置為識別諸如圖書封面和CD的2-D圖像并且還可以被配置為識別諸如家具的3-D圖像)、條形碼識別搜索系統(其識別ID和2D樣式的條形碼)、命名實體識別捜索系統、地標識別(其可以被配置為識別諸如埃菲爾鐵塔的特定著名地標,并且還可以被配置為識別諸如廣告牌之類的特定圖像庫集)、通過由客戶端系統102中的GPS接收器或移動電話網絡所提供的地理位置信息協助的地點識別、顔色識別搜索系統、以及類似的圖像捜索系統(其捜索并識別與視覺查詢類似的圖像)。由圖I中系統112-N所表示的,可以添加另外的捜索系統作為附加的并行搜索系統。除了 OCR捜索系統之外,所有捜索系統在這里被共同定義為執行圖像匹配過程的捜索系統。包括OCR捜索系統在內的所有捜索系統被共同稱作通過圖像進行查詢(query-by-image)的搜索系統。在一些實施例中,視覺查詢服
務器系統106包括面部識別搜索系統112-A、0CR捜索系統112-B以及至少ー個其它的通過圖像進行查詢的捜索系統112。并行搜索系統112均單獨對視覺搜索查詢進行處理并且將其結果返回給前端服務器系統110。在一些實施例中,前端服務器100可以對搜索結果執行ー個或多個分析,諸如以下的ー個或多個將結果聚合到復合文檔中,選擇結果的子集進行顯示,并且對結果進行排名,如關于圖6更為詳細解釋的。前端服務器110將搜索結果通信到客戶端系統102。客戶端系統102將ー個或多個搜索結果呈現給用戶。所述結果可以呈現在顯示器上,通過音頻揚聲器或者用來向用戶通信信息的任意其它手段來進行呈現。用戶可以以各種方式與捜索結果進行交互。在一些實施例中,用戶的選擇、注釋以及與捜索結果的其它交互被傳送到視覺查詢服務器系統106并且連同視覺查詢一起記錄在查詢和注釋數據庫116中。查詢和注釋數據庫中的信息可以被用來改善視覺查詢結果。在一些實施例中,來自查詢和注釋數據庫116的信息被定期推送至并行搜索系統112,其將任意相關的信息部分合并到其相應的單獨數據庫114中。計算機網絡100可選地包括詞語查詢服務器系統118,其用于響應于詞語查詢執行捜索。與包含圖像的視覺查詢相對,詞語查詢是包含一個或多個詞語的查詢。詞語查詢服務器系統118可以被用來生成捜索結果,該搜索結果對視覺查詢服務器系統106中的各個搜索引擎所產生信息進行補充。從詞語查詢服務器系統118所返回的結果可以包括任意格式。詞語查詢服務器系統118可以包括文本文檔、圖像、視頻等。雖然詞語查詢服務器系統118在圖I中被示為單獨系統,但是可選地,視覺查詢服務器系統106可以包括詞語查詢服務器系統118。以下關于圖2-4中的流程圖提供與視覺查詢服務器系統106的操作相關的附加信
O圖2是圖示根據本發明某些實施例的用于對視覺查詢進行響應的視覺查詢服務器系統方法的流程圖。圖2中所示出的每個操作可以對應于計算機存儲器或計算機可讀存儲介質中所存儲的指令。
視覺查詢服務器系統從客戶端系統接收視覺查詢(202)。如關于圖I所解釋的,客戶端系統例如可以為臺式計算設備、移動設備或其它類似設備(204)。圖11中示出了示例客戶端系統上的示例視覺查詢。視覺查詢是任意適當格式的圖像文檔。例如,視覺查詢可以是照片、截屏、掃描圖像,或者是視頻的一幀或多個幀的序列(206)。在一些實施例中,視覺查詢是內容編寫程序(736,圖5)所產生的圖。這樣,在一些實施例中,用戶“繪制”視覺查詢,而在其它實施例中,用戶掃描或拍攝視覺查詢。ー些視覺查詢使用諸如Acrobat之類的圖像生成應用、照片編輯程序、繪畫程序或圖像編輯程序來創建。例如,視覺查詢可以來自于用戶在其移動電話上為其朋友拍攝照片并且然后將該照片作為視覺查詢提交至服務器系統。視覺查詢還可以來自于用戶對ー頁雜志進行掃描或者在臺式計算機上截取網頁的截屏并然后將掃描或截屏作為視覺查詢提交至服務器系統。在一些實施例中,視覺查詢通過瀏覽器應用的搜索引擎擴展、通過瀏覽器應用的插件或者通過由客戶端系統102所執行的捜索應用提交至服務器系統106。視覺查詢還可以由(客戶端系統所執行的)支持或生成可以由客戶端系統傳送至遠程服務器的圖像的其它應用程序來提交。
視覺查詢可以是文本和非文本元素的組合(208)。例如,查詢可以是包含圖像和文本的雜志頁面的掃描,諸如ー個人站在路標旁邊。視覺查詢可以包括人臉的圖像,其或者由嵌入客戶端系統的相機所拍攝或者是客戶端系統所掃描或以另外方式所接收的文檔。視覺查詢還可以是僅包含文本的文檔的掃描。視覺查詢也可以是多個不同主題的圖像,諸如森林中的若干只鳥、人和物體(例如,汽車、公園長椅等)、人和動物(例如,寵物、家畜、蝴蝶等)。視覺查詢可以具有兩個或更多的不同元素。例如,視覺查詢可以包括產品的條形碼和圖像或者產品包裝上的產品名稱。例如,視覺查詢可以是包括圖書標題、封面藝術和條形碼的圖書封面的圖片。如以下更為詳細討論的,在一些實例中,一個視覺查詢將產生與該視覺查詢的不同部分相對應的兩個或更多的不同搜索結果。服務器系統如下對視覺查詢進行處理。前端服務器系統將視覺查詢發送到多個并行捜索系統以便同時進行處理(210)。每個搜索系統實施不同的視覺查詢搜索過程,即單獨的捜索系統通過其自己的處理方案對視覺查詢進行處理。在一些實施例中,對其發送視覺查詢以便進行處理的ー個搜索系統是光學字符識另IJ (OCR)捜索系統。在一些實施例中,對其發送視覺查詢以便進行處理的ー個搜索系統是面部識別搜索系統。在一些實施例中,運行不同視覺查詢搜索過程的多個搜索系統至少包括光學字符識別(OCR)、面部識別,以及不同于OCR和面部識別的其它通過圖像進行查詢的過程(212)。其它通過圖像進行查詢的過程選自包括但并不局限于產品識別、條形碼識別、對象或對象類別識別、命名實體識別和顏色識別的過程集合(212 )。在一些實施例中,命名實體識別作為OCR捜索系統的后期過程發生,其中針對著名人物、位置、對象等對OCR的文本結果進行分析,并且然后在詞語查詢服務器系統(圖I的118)中對被識別為命名實體的詞語進行捜索。在其它實施例中,由圖像至詞語搜索系統對著名地標、標志、人物、影集封面、商標等的圖像進行識別。在其它實施例中,采用與圖像至詞語搜索系統相分離的不同命名實體的通過圖像進行查詢的過程。對象或對象類別識別系統識別如“汽車”的一般結果類型。在一些實施例中,該系統還識別產品品牌、特定產品模型等,并且提供如“保時捷”的更為具體的描述。ー些搜索系統可以是特定于特殊用戶的搜索系統。例如,特定版本的顔色識別和面部識別可以是盲人所使用的特殊捜索系統。前端服務器系統從并行捜索系統接收結果(214)。在一些實施例中,所述結果伴隨有捜索分值。對于ー些視覺查詢而言,ー些搜索系統將找不到相關結果。例如,如果視覺查詢是花的圖片,則面部識別搜索系統和條形碼搜索系統將找不到任何相關結果。在ー些實施例中,如果沒有找到相關結果,則從該搜索系統接收空或零捜索分值(216)。在一些實施例中,如果前端服務器在預定義的時間段(例如,O. 2,0. 5、1、2或5秒)之后沒有從搜索系統接收到結果,則其就將如同超時服務器產生空捜索分值那樣來處理所接收結果并且將對來自其它捜索系統的所接收結果進行處理。可選地,當至少兩個所接收搜索結果滿足預定義標準時,對它們進行排名(218)。在一些實施例中,一種預定義標準排除無效結果。預定義標準是結果并非無效的標準。在一些實施例中,一種預定義標準排除具有低于預定義最低分值的數字分值(例如,對于相關性因素而言)的結果。可選地,對多個捜索結果進行過濾(220)。在一些實施例中,僅在結果總數超過預定義閾值的情況下對結果進行過濾。在一些實施例中,對所有結果進行排名但是排除低于預定義最低分值的結果。對于ー些視覺查詢而言,對結果的內容進行過濾。例 如,如果ー些結果包含隱私信息或個人保護信息,則這些結果被過濾棹。可選地,視覺查詢服務器系統創建復合搜索結果(222)。一個這樣的實施例是如關于圖3所解釋的在交互式結果文檔中嵌入了多于ー個捜索系統結果吋。詞語查詢服務器系統(圖I的118)可以利用來自詞語捜索的結果對來自并行捜索系統之ー的結果進行擴增,其中附加結果是到文檔或信息源的鏈接,或者是包含可能與視覺查詢相關的附加信息的文本和/或圖像。因此,例如,復合搜索結果可以包含OCR結果以及到OCR文檔中的命名實體的鏈接(224)。在一些實施例中,OCR搜索系統(圖I的112-B)或前端視覺查詢處理服務器(圖I的110)識別文本中可能相關的詞。例如,其可以識別諸如著名人物或地點的命名實體。命名實體作為查詢詞語被提交給詞語查詢服務器系統(圖I的118)。在一些實施例中,詞語查詢服務器系統所產生的詞語查詢結果被作為“鏈接”嵌入在視覺查詢結果中。在一些實施例中,詞語查詢結果作為單獨的鏈接返回。例如,如果圖書封面的圖片是視覺查詢,則對象識別搜索系統可能會對圖書產生高分值的命中。這樣,將在詞語查詢服務器系統118上運行對圖書標題的詞語查詢并且詞語查詢結果將連同視覺查詢結果一起返回。在一些實施例中,詞語查詢結果在帶標簽分組中呈現以將它們與視覺查詢結果進行區分。結果可以被單獨捜索,或者可以使用捜索查詢中的所有所識別的命名實體來執行搜索以產生特別相關的附加搜索結果。例如,如果視覺查詢是有關巴黎的掃描旅行冊,則所返回的結果可能包括指向詞語查詢服務器系統118的用于發起對詞語查詢“巴黎圣母院(Notre Dame)”的捜索的鏈接。類似地,復合搜索結果包括來自針對所識別著名圖像的文本捜索的結果。例如,在相同的旅行冊中,還可以示出針對在該冊子中作為圖片示出的“埃菲爾鐵塔”和“盧浮宮”的著名目的地的詞語查詢結果的活躍(live)鏈接(即使在冊子本身中并沒有出現詞語“埃菲爾鐵塔”和“盧浮宮”)。視覺查詢服務器系統接著將至少ー個結果發送到客戶端系統(226)。典型地,如果視覺查詢處理服務器從多個搜索系統中的至少ー些接收到多個搜索結果,則其將接著將所述多個捜索結果中的至少ー個發送到客戶端系統。對于ー些視覺查詢而言,僅ー個捜索系統將返回相關結果。例如,在僅包含文本圖像的視覺查詢中,可能僅有OCR服務器的結果是相關的。對于ー些視覺查詢而言,可能僅來自一個搜索系統的ー個結果是相關的。例如,可能僅有與所掃描的條形碼相關的產品是相關的。在這些情況下,前端視覺處理服務器將僅返回相關的搜索結果。對于ー些視覺查詢而言,多個搜索結果被發送到客戶端系統,并且多個搜索結果包括來自多于一個的并行捜索系統的搜索結果(228)。這可能在多于ー個的不同圖像出現在視覺查詢中時發生。例如,如果視覺查詢是騎馬的人的圖片,則針對該人的面部識別的結果會連同針對馬的對象識別結果一起進行顯示。在一些實施例中,圖像搜索系統對特定查詢的的所有結果被分組并一起呈現。例如,前N個面部識別結果被顯示在標題“面部識別結果”之下,并且前N個對象識別結果被一起顯示在標題“對象識別結果”之下。可替換地,如以下所討論的,來自特定圖像搜索系統的搜索結果可以通過圖像區域進行分組。例如,如果視覺查詢包括兩個臉部,它們都產生面部識別結果,則每張臉的結果將作為不同的分組進行呈現。對于一些視覺查詢而言(例如,包括文本以及ー個或多個對象的圖像的視覺查詢),搜索結果可以包括OCR結果以及一個或多個圖像匹配結果(230)。在一些實施例中,用戶可能希望對特定捜索結果進行更多了解。例如,如果視覺查詢是海豚的圖片并且“圖像至詞語”捜索系統返回了以下詞語“水”、“海豚”、“藍”和“鰭”;則用戶可能希望對“鰭”進行基于文本的查詢詞語搜索。當用戶想要對詞語查詢進行捜索 時(例如,如用戶在搜索結果中的相應鏈接上進行點擊或以另外方式選擇所述鏈接所指示的),查詢詞語服務器系統(圖I的118)被訪問,并且進行對所選擇詞語的搜索。相對應的捜索詞語結果被單獨或者連同視覺查詢結果一起顯示在客戶端系統上(232)。在一些實施例中,前端視覺查詢處理服務器(圖I的110)自動(即,沒有接收除初始的視覺查詢之外的任何用戶命令)選擇視覺查詢的ー個或多個最前面的潛在文本結果,在詞語查詢服務器系統118上運行那些文本結果,并且接著將那些詞語查詢結果連同視覺查詢結果一起向客戶端系統進行發送,作為向客戶端系統發送至少ー個捜索結果的一部分(232)。在以上的示例中,如果“鰭”是海豚的視覺查詢圖片的第一個詞語結果,則前端服務器進行對“鰭”的詞語查詢并且將那些詞語查詢結果連同視覺查詢結果一起返回給客戶端系統。該實施例節省了用戶的時間,其中在將來自視覺查詢的捜索結果發送給用戶之前,自動執行被認為可能被用戶所選擇的詞語結果。在一些實施例中,如以上所解釋的,這些結果作為復合搜索結果進行顯示(222)。在其它實施例中,除了復合搜索結果之外或者作為其替代,所述結果是搜索結果列表的一部分。圖3是圖示利用交互式結果文檔對視覺查詢進行響應的過程的流程圖。前三個操作(202、210、214)以上參考圖2進行了描述。從接收于并行捜索系統的搜索結果(214),創建交互式結果文檔(302)。現在將對創建交互式結果文檔(302)進行詳細描述。對于ー些視覺查詢而言,交互式結果文檔包括該視覺查詢的相應子部分的ー個或多個視覺標識符。每個視覺標識符具有到至少ー個捜索結果的至少ー個用戶可選擇的鏈接。視覺標識符識別視覺查詢的相應子部分。對于ー些視覺查詢而言,交互式結果文檔僅具有一個視覺標識符,其具有到一個或多個結果的一個用戶可選擇鏈接。在一些實施例中,到一個或多個搜索結果的相應用戶可選擇鏈接具有激活區域,并且所述激活區域對應于視覺查詢與相對應的視覺標識符相關聯的子部分。
在一些實施例中,視覺標識符是邊界框(304)。在一些實施例中,所述邊界框封閉視覺查詢的子部分,如圖12A所示。邊界框無需是正方形或矩形框形狀,而是可以為任意類型的形狀,包括圓形、橢圓、等角(例如,針對視覺查詢中的對象、實體或其區域)、不規則或者如圖12B所示的任意其它形狀。對于ー些視覺查詢而言,邊界框包圍視覺查詢的子部分中可識別實體的邊界(306)。在一些實施例中,每個邊界框包括到一個或多個搜索結果的用戶可選擇鏈接,其中用戶可選擇鏈接具有對應于被邊界框所包圍的視覺查詢子部分的激活區域。當邊界框內的空間(用戶可選擇鏈接的激活區域)被用戶選擇時,返回與所包圍的子部分中的圖像相對應的搜索結果。在一些實施例中,如圖14所示,視覺標識符是標簽(307)。在一些實施例中,標簽包括至少ー個與視覺查詢的相應子部分中的圖像相關聯的詞語。每個標簽被格式化以便在相應子部分之上或附近的交互式結果文檔中進行呈現。在一些實施例中,所述標簽被顔色編碼。在一些實施例中,每個相應的視覺標識符被格式化以便依據視覺查詢的相應子部分中所識別實體的類型的以在視覺上有所區別的方式進行呈現。例如,如圖13所示,圍繞 產品、人、商標的邊界框以及兩個文本區域均以表示不同著色的透明邊界框的不同交叉陰影圖案進行呈現。在一些實施例中,視覺標識符被格式化以便以在視覺上有區別的方式進行呈現,諸如覆蓋顏色、覆蓋圖案、標簽背景顔色、標簽背景圖案、標簽字體顔色和邊框顏色。在一些實施例中,交互式結果文檔中的用戶可選擇鏈接是到包含與視覺查詢的相對應子部分相關的ー個或多個結果的文檔或對象的鏈接(308)。在一些實施例中,至少ー個捜索結果包括與視覺查詢的相對應子部分相關的數據。這樣,當用戶選擇與相應子部分相關聯的可選擇鏈接吋,該用戶被指向與視覺查詢的所述相應子部分中所識別的實體相對應的搜索結果。例如,如果視覺查詢是條形碼的照片,則照片的部分可能是與其上貼有條形碼的包裝的不相關部分。交互式結果文檔可以包括僅圍繞條形碼的邊界框。當用戶在包圍條形碼的邊界框內進行選擇時,顯示條形碼捜索結果。條形碼搜索結果可以包括一個結果,與該條形碼相對應的產品的名稱,或者條形碼結果可以包括若干結果,諸如能夠購買、評論該產品的各種地點等。在一些實施例中,當對應于相應視覺標識符的視覺查詢的子部分包含包括ー個或多個詞語的文本時,對應于相應視覺標識符的搜索結果包括來自對所述文本中的至少ー個詞語進行的詞語查詢搜索的結果。在一些實施例中,當對應于相應視覺標識符的視覺查詢的子部分包含針對其找到至少ー個滿足預定可靠性(或其它)標準的匹配(即,捜索結果)的人臉時,對應于相應視覺標識符的捜索結果包括以下的ー個或多個與其臉部包含在可選擇子部分中的人相關聯的姓名、頭銜(handle )、聯系信息、賬戶信息、地址信息、相關移動設備的當前位置,其臉部包含在可選擇子部分中的人的其它圖像,以及該人臉的潛在圖像匹配。在一些實施例中,當視覺查詢對應于相應視覺標識符的子部分包含針對其找到至少ー個滿足預定可靠性(或其它)標準的匹配(即,捜索結果)的產品時,對應于相應視覺標識符的捜索結果包括以下的ー個或多個產品信息、產品評論、發起產品購買的選項、發起對產品出價的選項、類似產品的列表以及相關產品的列表。
可選地,交互式結果文檔中的相應用戶可選擇鏈接包括錨文本(anchor text),其在不必激活鏈接的情況下顯示在文檔中。錨文本提供諸如與激活鏈接時所獲得的信息相關的關鍵詞或詞語之類的信息。錨文本可以作為標簽的一部分進行顯示(307),或者顯示在邊界框的一部分中(304),或者作為用戶將光標在用戶可選擇鏈接上懸停諸如I秒的預定時間段時所顯示的附加信息。可選地,交互式結果文檔中的相應用戶可選擇鏈接是到用于搜索與基于文本的查詢(這里有時稱作詞語查詢)相對應的信息或文檔的搜索引擎的鏈接。激活該鏈接使得由所述搜索引擎執行捜索,其中所述查詢和搜索引擎由所述鏈接所指定(例如,搜索引擎由鏈接中的URL所指定而基于文本的搜索查詢由鏈接的URL參數所指定),其結果返回到客戶端系統。可選地,該示例中的鏈接可以包括指定捜索查詢中的文本或詞語的錨文本。在一些實施例中,響應于視覺查詢所產生的交互式結果文檔可以包括與來自相同的捜索系統的結果相對應的多個鏈接。例如,視覺查詢可以是人群的圖像或圖片。交互式結果文檔可以包括圍繞每個人的邊界框,其在被激活時返回來自面部識別搜索系統針對群組中的每張臉的結果。對于ー些視覺查詢而言,交互式結果文檔中的多個鏈接對應于來自 多于ー個的捜索系統的搜索結果(310)。例如,如果人和狗的圖片作為視覺查詢被提交,則交互式結果文檔中的邊界框可以單獨包圍人和狗。當(交互式結果文檔中的)人被選擇吋,返回來自面部識別搜索系統的搜索結果,而當(交互式結果文檔中的)狗被選擇時,則返回來自圖像至詞語搜索系統的結果。對于ー些視覺查詢而言,交互式結果文檔包含OCR結果和圖像匹配結果(312)。例如,如果人站在標牌旁邊的圖片作為視覺查詢被提交,則交互式結果文檔可以包括對人和所述標牌中的文本的視覺標識符。類似地,如果雜志的掃描被用作視覺查詢,則交互式結果文檔可以包括頁面上廣告中的照片或商標的視覺標識符以及也處于該頁面上的文章文本的視覺標識符。在已經創建了交互式結果文檔之后,將其發送到客戶端系統(314)。在一些實施例中,如以上參考圖2所討論的,交互式結果文檔(例如,文檔1200,圖15)連同來自一個或多個并行捜索系統的搜索結果列表一起進行發送。在一些實施例中,在客戶端系統,交互式結果文檔顯示在來自ー個或多個并行捜索系統的搜索結果列表上方或以另外方式與之相鄰地進行顯示(315),如圖15所示。可選地,用戶將通過選擇結果文檔中的視覺標識符來與所述結果文檔進行交互。服務器系統從客戶端系統接收與交互式結果文檔中的視覺標識符的用戶選擇相關的信息(316)。如以上所討論的,在一些實施例中,通過選擇邊界框內的激活區域來激活鏈接。在其它實施例中,通過對視覺查詢子部分的并非邊界框的視覺標識符的用戶選擇來激活鏈接。在一些實施例中,帶鏈接的視覺標識符是熱按鈕(hot button)、位于子部分附近的標簽、文本中的加下劃線的詞,或者視覺查詢中的對象或主題的其它表示。在利用交互式結果文檔呈現捜索結果列表的實施例中(315),當用戶選擇用戶可選擇鏈接時(316),搜索結果列表中與所選擇鏈接相對應的搜索結果被識別。在一些實施例中,光標將跳躍或自動移動到與所選擇鏈接相對應的第一結果。在客戶端102的顯示器太小而無法顯示交互式結果文檔和整個搜索結果列表的一些實施例中,選擇交互式結果文檔中的鏈接使得捜索結果列表滾動或跳躍以便至少顯示與所選擇鏈接相對應的第一結果。在一些其它實施例中,響應于交互式結果文檔中鏈接的用戶選擇,對結果列表進行重新排序以使得對應于所述鏈接的第一結果被顯示在結果列表的頂端。在一些實施例中,當用戶選擇用戶可選擇鏈接時(316),視覺查詢服務器系統向客戶端發送與視覺查詢的相對應子部分相關的結果的至少ー個子集以便向用戶進行顯示(318)。在一些實施例中,用戶能夠同時選擇多個視覺標識符并且將同時接收到所有所選擇視覺標識符的結果子集。在其它實施例中,對應于用戶可選擇鏈接的捜索結果在用戶選擇任意用戶可選擇鏈接之前被預先加載到客戶端上,以便響應于交互式結果文檔中ー個或多個鏈接的用戶選擇在視覺上立即向用戶提供捜索結果。圖4是圖示客戶端和視覺查詢服務器系統之間的通信的流程圖。客戶端102從用戶/查詢方接收視覺查詢(402)。在一些實施例中,可以僅接受來自己經注冊或者“選擇加入”到視覺查詢系統的用戶的視覺查詢。在一些實施例中,僅針對已經注冊到面部識別視覺查詢系統的用戶執行面部識別匹配的捜索,而對無論其是否已經“選擇加入”到面部識別部分的任何人執行其它類型的視覺查詢。如以上所解釋的,視覺查詢的格式可以采取許多形式。視覺查詢將可能包含位于 視覺查詢文檔的子部分中的ー個或多個主題。對于ー些視覺查詢而言,客戶端系統102對視覺查詢執行類型識別預處理(404)。在一些實施例中,客戶端系統102在該預處理系統中捜索特定的可識別模式。例如,對于ー些視覺查詢而言,客戶端可以識別顔色。對于ー些視覺查詢,客戶端可以識別出特定子部分可能包含文本(原因在于該區域由被亮空間所包圍的小的暗字符所構成,等等)。客戶端可以包含任意數量的預處理類型識別器,或者類型識別模塊。在一些實施例中,客戶端將具有用于識別條形碼的類型識別模塊(條形碼識別406)。其可以通過識別矩形區域中的不同條狀圖案來完成該功能。在一些實施例中,客戶端將具有用于識別視覺查詢的特定主題或子部分可能包含臉部的類型識別模塊(臉部檢測408)。在一些實施例中,所識別的“類型”被返回給用戶以便驗證。例如,客戶端系統102可以返回指出“已經在你的視覺查詢中找到條形碼,你有興趣接收條形碼查詢結果嗎?”的消息。在一些實施例中,該消息甚至可以指示已經在視覺查詢中找到所述類型的子部分。在一些實施例中,該呈現類似于參考圖3所討論的交互式結果文檔。例如,其可以包圍視覺查詢的子部分并且指示該子部分可能包含臉部,并且詢問用戶是否有興趣接收面部識別結果O在客戶端102執行了視覺查詢的可選預處理之后,客戶端向視覺查詢服務器系統106特別是前端視覺查詢處理服務器110發送視覺查詢。在一些實施例中,如果預處理產生了相關結果,即如果類型識別模塊之ー產生了高于特定閾值的結果,這指示查詢或查詢的子部分可能為特定類型(臉部、文本、條形碼等),則客戶端將傳遞與預處理結果相關的信息。例如,客戶端可以指示臉部識別模塊75%確信視覺查詢的特定子部分包含臉部。更一般地,如果有的話,預處理結果包括ー個或多個主題類型數值(例如,條形碼、臉部、文本等)。可選地,發送到視覺查詢服務器系統的預處理結果包括以下的ー個或多個對于預處理結果中的每個主題類型值,識別與主題類型值相對應的視覺查詢子部分的信息;以及對于預處理結果中的每個主題類型值,指示視覺查詢的相對應子部分的主題類型值和/或識別的確信度水平的確信度值。前端服務器110從客戶端系統接收視覺查詢(202)。所接收的視覺查詢可以包含以上所討論的預處理信息。如以上所描述的,前端服務器向多個并行捜索系統發送視覺查詢(210)。如果前端服務器110接收了與子部分包含某個類型的主題的可能性相關的預處理信息,則前端服務器可以將該信息送至一個或多個并行捜索系統。例如,其可以傳遞特定子部分可能為臉部的信息以使得面部識別搜索系統112-A能夠首先對視覺查詢的該子部分進行處理。類似地,發送(特定子部分可能為臉部的)相同信息可以被其它并行捜索系統用來忽略該子部分或首先分析其它子部分。在一些實施例中,前端服務器將不向并行捜索系統傳遞預處理信息,而是將替代使用該信息來擴增其對從并行捜索系統所接收的結果進行處理的方式。如參考圖2所解釋的,對于ー些視覺查詢,前端服務器110從并行捜索系統接收多個搜索結果(214)。前端服務器接著可以執行各種排序和過濾,并且可以如參考圖2和3所解釋的創建交互式捜索結果文檔。如果前端服務器110接收了與子部分包含某個類型主題的可能性相關的預處理信息,則其可以通過給出針對匹配預處理的所識別主題類型的那些結果的偏好來進行過濾和排序。如果用戶指示了請求特定類型的結果,前端服務器將在對結果進行處理時考慮用戶的請求。例如,前端服務器可以在用戶僅請求了條形碼信息的情況下將所有其它結果過濾掉,或者前端服務器將與所請求類型相關的所有結果列出在列出 其它結果之前。如果返回了交互式視覺查詢文檔,則服務器可以預先捜索與用戶指示了對其感興趣的類型相關聯的鏈接,同時僅提供用于執行針對交互式結果文檔中所指示的其它主題的相關搜索的鏈接。前端服務器110接著將搜索結果發送到客戶端系統(226)。客戶端102從服務器系統接收結果(412)。當可應用時,這些結果將包括與預處理階段中所找到的結果類型相匹配的結果。例如,在一些實施例中,它們將包括ー個或多個條形碼結果(414)或者ー個或多個面部識別結果(416)。如果客戶端的預處理模塊已經指示了結果可能為特定類型,并且找到了該結果,則所找到的該類型的結果將被突出列出。可選地,用戶將選擇或注釋ー個或多個結果(418)。用戶可以選擇ー個搜索結果,可以選擇特定類型的捜索結果,和/或可以選擇交互式結果文檔的一部分(420)。結果的選擇是所返回結果與查詢相關的隱含反饋。這樣的反饋信息可以在未來的查詢處理操作中加以利用。注釋提供了與所返回結果相關的明確反饋,其也可以在未來的查詢處理操作中加以利用。注釋采用所返回結果的部分的更正(如對錯誤OCR化的詞的更正)的形式或者為單獨注釋(自由形式或結構化)。一個搜索結果的用戶選擇是被稱作解釋中的選擇(selection amonginterpretations)的過程,其通常從若干相同類型中選擇“正確”結果(例如,選擇來自面部識別服務器的正確結果)。特定類型的捜索結果的用戶選擇是被稱作意圖消歧(disambiguation of intent)的過程,其通常從若干不同類型的返回結果中選擇感興趣的結果“類型”(例如,選擇雜志中文章的OCR化的文本而不是也處于相同頁面上的廣告的視覺結果)。如參考圖8詳細解釋的,用戶可以類似地選擇OCR化的文檔中的特定帶鏈接詞(諸如所識別的命名實體)。可替換地或除此之外,用戶可能希望對特定捜索結果進行注釋。該注釋可以以自由樣式或者結構化格式來進行(422)。注釋可以是結果的描述或者可以是結果的評論。例如,它們可以指示結果中主題的名稱,或者它們可以指示“這是一本好書”或者“該產品在銷售年度內有所突破”。另ー個注釋示例是用戶繪制的圍繞視覺查詢子部分的邊界框以及用戶所提供的識別邊界框內的對象或主題的文本。參考圖5對用戶注釋進行更為詳細的解釋。捜索結果的用戶選擇以及其它注釋被發送到服務器系統(424)。前端服務器110接收所述選擇和注釋并且進ー步對它們進行處理(426)。如果該信息為交互式結果文檔中的對象、子區域或詞語的選擇,則可以適當地請求關于該選擇的進一歩信息。例如,如果選擇是ー個視覺結果,則將會請求關于該視覺結果的更多信息。如果選擇是(來自OCR服務器或來自圖像至詞語服務器的)詞,則該詞的文本捜索將被發送到詞語查詢服務器系統118。如果選擇是來自面部圖像識別搜索系統的人,則將會請求該人的簡檔。如果選擇針對交互式搜索結果文檔的特定部分,則將會請求潛在的視覺查詢結果。如果服務器系統接收到注釋,則該注釋被存儲在參考圖5所解釋的查詢和注釋數據庫116中。接著,如以下參考圖7-10所討論的,來自注釋數據庫116的信息被 定期復制到用于ー個或多個并行服務器系統的單獨注釋數據庫。圖5是圖示依據本發明的一個實施例的客戶端系統102的框圖。客戶端系統102典型地包括ー個或多個處理單元(CPU) 702、一個或多個網絡或其它通信接ロ 704、存儲器712,以及用于將這些組件進行互連的ー個或多個通信總線714。客戶端系統102包括用戶接ロ 705。用戶接ロ 705包括顯示設備706并且可選地包括諸如鍵盤、鼠標或其它輸入按鈕的輸入裝置708。可替換地或除此之外,顯示設備706包括觸摸敏感表面709,在這種情況下,顯示器706/709是觸摸敏感顯示器。在具有觸摸敏感顯示器706/709的客戶端系統中,物理鍵盤是可選的(例如,可以在需要鍵盤輸入時顯示軟鍵盤)。此外,一些客戶端系統使用麥克風和語音識別來補充或替換鍵盤。可選地,客戶端102包括GPS (全球定位衛星)接收器,或者用于確定客戶端系統102的位置的其它位置檢測裝置707。在一些實施例中,提供要求客戶端系統102提供視覺查詢服務器系統以接收指示客戶端系統102的位置的位置信息的視覺查詢搜索服務。客戶端系統102還包括諸如相機或掃描儀的圖像捕捉設備710。存儲器712包括高速隨機存取存儲器,諸如DRAM、SRAM、DDR RAM或其它隨機存取固態存儲器設備;并且可以包括非易失性存儲器,諸如ー個或多個磁盤存儲設備、光盤存儲設備、閃存設備或者其它非易失性固態存儲設備。存儲器712可以可選地包括與CPU 702遠程定位的ー個或多個存儲設備。存儲器712或者可替換地存儲器712內的非易失性存儲設備包括非瞬時計算機可讀存儲介質。在一些實施例中,存儲器712或者存儲器712的計算機可讀存儲介質存儲以下程序、模塊和數據結構或者其子集 操作系統716,其包括用于處理各種基本系統服務以及用于執行依賴于硬件的任務的程序;·網絡通信模塊718,其用于將客戶端系統102經由ー個或多個通信網絡接ロ 704(有線或無線)以及諸如互聯網、其它廣域網、局域網、城域網等的ー個或多個通信網絡連接到其它計算機; 圖像捕捉模塊720,其用于對圖像捕捉設備/相機710所捕捉的相應圖像進行處理,其中相應圖像可以(例如,被客戶端應用模塊)作為視覺查詢發送到視覺查詢服務器系統;· ー個或多個客戶端應用模塊722,其用于處理通過圖像進行查詢的各個方面,包括但并不局限干用于向視覺查詢服務器系統提交視覺查詢的通過圖像進行查詢的提交模塊724 ;可選地,檢測圖像中的感興趣區域的選擇(諸如觸摸敏感顯示器706/709上的手勢)并且將該感興趣區域準備為視覺查詢的感興趣區域選擇模塊725 ;用于顯示視覺查詢的結果的結果瀏覽器726 ;以及可選地,具有用于諸如在表單中進行填寫的結構化注釋文本輸入730或者用于能夠接受各種格式的注釋的自由形式的注釋文本輸入732的可選模塊的注釋模塊728 ;以及允許用戶選擇圖像的特定子部分以便進行注釋的圖像區域選擇模塊734(這里有時稱作結果選擇模塊); 可選的內容編寫應用736,其允許用戶通過創建或編輯圖像而不是僅經由圖像捕捉設備710捕捉圖像來編寫視覺查詢;可選地,一個或多個這樣的應用736可以包括使得用戶能夠選擇圖像的子部分以作為視覺查詢的指令; 可選的本地圖像分析模塊738,其在將視覺查詢發送到視覺查詢服務器系統之前對其進行預處理。本地圖像分析可以識別圖像的特定類型,或者圖像內的子區域。可以被這樣的模塊738所識別的圖像類型的示例包括以下的ー個或多個面部類型(視覺查詢內所識別的面部圖像)、條形碼類型(視覺查詢內所識別的條形碼)和文本類型(視覺查詢內所 識別的文本);以及·附加的可選客戶端應用740,諸如電子郵件應用、電話應用、瀏覽器應用、地圖應用、即時消息應用、社交網絡應用等。在一些實施例中,可以在選擇了可采取動作的搜索結果時啟動或訪問對應于適當可采取動作的搜索結果的應用。可選地,允許用戶選擇圖像的特定子部分以便進行注釋的圖像區域選擇模塊734還允許用戶選擇作為“正確”命中的搜索結果而并非必須對其進行進一歩注釋。例如,用戶可以被呈現以最前面的N個面部識別匹配并且可以從該結果列表中選擇正確的人物。對于一些搜索查詢而言,將呈現多于ー種類型的結果,并且用戶將選擇結果的類型。例如,圖像查詢可以包括站在樹旁的人,但是用戶僅對與人相關的結果感興趣。因此,圖像選擇模塊734允許用戶指示哪種類型的圖像是“正確的”類型ー即其有興趣接收的類型。用戶還可能希望通過使用(用于在表單中填寫的)注釋文本輸入模塊730或者自由形式的注釋文本輸入模型732來添加個人評論或描述性詞以對搜索結果進行注釋。在一些實施例中,可選的本地圖像分析模塊738是客戶端應用(圖I的108)的一部分。此外,在一些實施例中,可選的本地圖像分析模塊738包括一個或多個用來執行本地圖像分析以對視覺查詢或其一部分進行預處理或分類的程序。例如,客戶端應用722可以在將視覺查詢提交至搜索引擎之前識別圖像包含條形碼、臉部或文本。在一些實施例中,當本地圖像分析模塊738檢測到視覺查詢包含特定類型的圖像時,該模塊詢問用戶是否對相對應類型的搜索結果感興趣。例如,本地圖像分析模塊738可以基于其一般特征來檢測臉部(即,沒有確定是哪個人的臉)并且在向視覺查詢服務器系統發送查詢之前向用戶提供立即反饋。其可以返回如“已經檢測到臉部,你有興趣得到針對該臉部的面部識別匹配嗎? ”的結果。這可以為視覺查詢服務器系統(圖I的106)節省時間。對于ー些視覺查詢,前端視覺查詢處理服務器(圖I的110)僅向搜索系統112發送與本地圖像分析模塊738所識別的圖像類型相對應的視覺查詢。在其它實施例中,針對搜索系統112的視覺查詢可以向所有搜索系統112A-N發送視覺查詢,但是將對來自搜索系統112的與本地圖像分析模塊738所識別的圖像類型相對應的結果進行排名。在一些實施例中,本地圖像分析對視覺查詢服務器系統的操作施加影響的方式取決于客戶端系統的配置或者與用戶或客戶端系統相關聯的配置或處理參數。此外,任意特定視覺查詢的實際內容以及本地圖像分析所產生的結果可以使得在客戶端系統和視覺查詢服務器系統中任一個或其二者對不同視覺查詢進行不同處理。在一些實施例中,以兩個步驟來執行條形碼識別,其中在客戶端系統上,在本地圖像分析模塊738執行視覺查詢是否包括條形碼的分析。接著,視覺查詢僅在客戶端確定該視覺查詢可能包括條形碼的情況下才被送至條形碼捜索系統。在其它實施例中,條形碼搜索系統對每個視覺查詢進行處理。可選地,客戶端系統102包括附加客戶端應用740。圖6是圖示依據本發明一個實施例的前端視覺查詢處理服務器系統110的框圖。前端服務器110典型地包括ー個或多個處理單元(CPU)802、一個或多個網絡或其它通信接ロ 804、存儲器812,以及用于將這些組件進行互連的ー個或多個通信總線814。存儲器812包括高速隨機存取存儲器,諸如DRAM、SRAM、DDR RAM或其它隨機訪問固態存儲器設備;并 且可以包括非易失性存儲器,諸如ー個或多個磁盤存儲設備、光盤存儲設備、閃存設備或者其它非易失性固態存儲設備。存儲器812可以可選地包括與CPU 802遠程定位的一個或多個存儲設備。存儲器812或者可替換地存儲器812內的非易失性存儲設備包括非瞬時計算機可讀存儲介質。在一些實施例中,存儲器812或者存儲器812的計算機可讀存儲介質存儲以下程序、模塊和數據結構或者其子集 操作系統816,其包括用于處理各種基本系統服務以及用于執行依賴于硬件的任務的程序; 網絡通信模塊818,其用于將前端服務器系統110經由ー個或多個通信網絡接ロ804 (有線或無線)以及諸如互聯網、其它廣域網、局域網、城域網等的ー個或多個通信網絡連接到其它計算機; 查詢管理器820,其用于處理來自客戶端系統102的進入視覺查詢并且將它們發送到兩個或更多并行捜索系統;如本文其它地方所描述的,在ー些特殊情況下,諸如在視覺查詢包括客戶端所生成的指令(例如,“僅面部識別搜索”)時,視覺查詢可以僅被指向ー個捜索系統; 結果過濾模塊822,其用于可選地對來自一個或多個并行捜索系統的結果進行過濾并且將最前面或“相關”結果發送到客戶端系統102以供呈現; 結果排名和格式化模塊824,其用于可選地對來自一個或多個并行捜索系統的結果進行排名并且用于對結果進行格式化以供呈現;·結果文檔創建模塊826,其在適當時被用來創建交互式搜索結果文檔;模塊826可以包括子模塊,包括但并不局限于邊界框創建模塊828和鏈接創建模塊830 ;·標簽創建模塊831,其用于創建作為視覺查詢的相應子部分的視覺標識符的標簽;·注釋模塊832,其用于接收來自用戶的注釋并且將它們發送到注釋數據庫116 ;·可采取動作的搜索結果模塊838,其用于響應于視覺查詢而產生ー個或多個可采取動作的搜索結果元素,其中每個可采取動作的搜索結果元素被配置為啟動客戶端側動作;可采取動作的捜索結果元素的示例是用于發起電話呼叫、發起電子郵件消息、繪制地址地圖、進行餐廳預訂以及提供購買產品的選項的按鈕;和·查詢和注釋數據庫116,其包括數據庫本身834以及針對數據庫836的索引。結果排名和格式化模塊824對從ー個或多個并行搜索系統(112-A-112-N,圖I)所返回的結果進行排名。如以上已經指出的,對于ー些視覺查詢而言,可能僅有來自一個搜索系統的結果是相關的。在這樣的實例中,僅對來自ー個捜索系統的相關搜索結果進行排名。對于ー些視覺查詢而言,若干類型的捜索結果可能是相關的。在這些實例中,在一些實施例中,結果排名和格式化模塊824對來自具有最相關結果(例如,具有最高相關分值的結果)的捜索系統的所有結果排名為高于較不相關搜索系統的結果。在其它實施例中,結果排名和格式化模塊824對來自每個相關搜索系統的頂部結果排名為高于其余結果。在一些實施例中,結果排名和格式化模塊824依據對每個搜索結果所結算的相關分值對結果進行排名。對于ー些視覺查詢,除了并行視覺搜索系統上的捜索之外,還執行擴增的文本查詢。在ー些實施例中,當還執行文本查詢吋,以與視覺查詢系統結果在視覺上有所不同的方式來呈現它們的結果。
結果排名和格式化模塊824還對結果進行格式化。在一些實施例中,結果以列表格式呈現。在一些實施例中,結果利用交互式結果文檔來呈現。在一些實施例中,交互式結果文檔和結果列表都被呈現。在一些實施例中,查詢的類型規定了如何呈現結果。例如,如果在視覺查詢中檢測到多于ー個的可捜索主題,則產生交互式結果文檔,而如果僅檢測到一個可搜索主題,則將僅以列表格式來顯示結果。結果文檔創建模塊826被用來創建交互式搜索結果文檔。交互式搜索結果文檔可以具有一個或多個所檢測和搜索的主題。邊界框創建模塊828創建圍繞ー個或多個搜索主題的邊界框。邊界框可以是矩形框,或者可以包圍主題的形狀。鏈接創建模塊830創建到與其在交互式搜索結果文檔中的相應主題相關聯的搜索結果的鏈接。在一些實施例中,邊界框內的點擊激活鏈接創建模塊所插入的相對應鏈接。查詢和注釋數據庫116包含能夠被用來改進視覺查詢結果的信息。在一些實施例中,用戶可以在已經呈現了視覺查詢結果之后對圖像進行注釋。此外,在一些實施例中用戶可以在將圖像發送到視覺查詢搜索系統之前對其進行注釋。預先注釋可以通過對結果進行聚焦(focusing)或者與視覺查詢搜索并行地對所注釋的詞運行基于文本的捜索來對視覺查詢處理提供幫助。在一些實施例中,可以使得經注釋的圖片版本公開(例如,在用戶已經例如通過將圖像和注釋指定為非私有而允許公開時),以使得其作為潛在的圖像匹配命中而返回。例如,如果用戶拍攝了花的照片并且通過給出與該花相關的詳細種屬信息對圖像進行了注釋,則用戶可能想要將該圖像呈現給執行尋找該花的視覺查詢搜索的任何人。在一些實施例中,來自查詢和注釋數據庫116的信息被定期推送到并行搜索系統112,其將信息的相關部分(如果有)合并到其相應的單獨數據庫114中。圖7是圖示被用來處理視覺查詢的并行搜索系統之ー的框圖。圖7圖示了依據本發明ー個實施例的“一般”服務器系統112-N。該服務器系統的一般性僅在于其表不視覺查詢搜索服務器112-N中的任意ー個。一般服務器系統112-N典型地包括ー個或多個處理單元(CPU) 502、一個或多個網絡或其它通信接ロ 504、存儲器512,以及用于將這些組件進行互連的ー個或多個通信總線514。存儲器512包括高速隨機存取存儲器,諸如DRAM、SRAM、DDR RAM或其它隨機存取固態存儲器設備;并且可以包括非易失性存儲器,諸如ー個或多個磁盤存儲設備、光盤存儲設備、閃存設備或者其它非易失性固態存儲設備。存儲器512可以可選地包括與CPU 502遠程定位的一個或多個存儲設備。存儲器512或者可替換地存儲器512內的非易失性存儲設備包括非瞬時計算機可讀存儲介質。在一些實施例中,存儲器512或者存儲器512的計算機可讀存儲介質存儲以下程序、模塊和數據結構或者其子集 操作系統516,其包括用于處理各種基本系統服務以及用于執行依賴于硬件的任務的程序; 網絡通信模塊518,其用于將一般服務器系統112-N經由ー個或多個通信網絡接ロ 504 (有線或無線)以及諸如互聯網、其它廣域網、局域網、城域網等的ー個或多個通信網絡連接到其它計算機;·特定于特定服務器系統的搜索應用520,其例如可以是條形碼搜索應用、顏色識別搜索應用、產品識別搜索應用、對象或對象類別搜索應用等;·可選的索引522,如果特定捜索應用采用索引;
可選的圖像數據庫524,其用于存儲與特定搜索應用相關的圖像,其中如果有,則所存儲的圖像數據取決于搜索過程類型;·可選的結果排名模塊526 (有時被稱作相關性評分模塊),其用于對來自搜索應用的結果進行排名,排名模塊可以對來自搜索應用的每個結果分配相關性分值,并且如果沒有結果達到預定的最低分值,則可以向前端視覺查詢處理服務器返回指示來自該服務器系統的結果不相關的空或零值分值;和 注釋模塊528,其用于從注釋數據庫(圖I的116)接收確定任意注釋信息是否與特定搜索應用相關的注釋信息,并且將任意所確定的注釋信息相關部分合并到相應注釋數據庫530中。圖8是圖示依據本發明一個實施例的用來處理視覺查詢的OCR搜索系統112-B的框圖。OCR搜索系統112-B典型地包括ー個或多個處理單元(CPU) 602、一個或多個網絡或其它通信接ロ 604、存儲器612,以及用于將這些組件進行互連的ー個或多個通信總線614。存儲器612包括高速隨機存取存儲器,諸如DRAM、SRAM、DDR RAM或其它隨機存取固態存儲器設備;并且可以包括非易失性存儲器,諸如ー個或多個磁盤存儲設備、光盤存儲設備、閃存設備或者其它非易失性固態存儲設備。存儲器612可以可選地包括與CPU 602遠程定位的一個或多個存儲設備。存儲器612或者可替換地存儲器612內的非易失性存儲設備包括非瞬時計算機可讀存儲介質。在一些實施例中,存儲器612或者存儲器612的計算機可讀存儲介質存儲以下程序、模塊和數據結構或者其子集 操作系統616,其包括用于處理各種基本系統服務以及用于執行依賴于硬件的任務的程序; 網絡通信模塊618,其用于將OCR搜索系統112-B經由ー個或多個通信網絡接ロ604 (有線或無線)以及諸如互聯網、其它廣域網、局域網、城域網等的ー個或多個通信網絡連接到其它計算機;·光學字符識別(OCR)模塊620,其試圖識別視覺查詢中的文本,并且將字母圖像轉換為字符;·可選的OCR數據庫114-B,其被OCR模塊620用來識別特定字體、文本圖案以及對于字母識別唯一的其它特征;
可選的拼寫檢查模塊622,其通過針對字典檢查所轉換的詞并且替換另外匹配了字典單詞的詞中潛在錯誤轉換的字母來改善字母圖像到字符的轉換;·可選的命名實體識別模塊624,其捜索轉換文本內的命名實體,將所識別的命名實體作為詞語查詢中的詞語發送到詞語查詢服務器系統(圖I的118),并且將來自詞語查詢服務器系統的結果作為嵌入與所識別命名實體相關聯的OCR化文本中的鏈接進行提供;·可選的文本匹配應用632,其通過針對文本分段的數據庫檢查所轉換分段(諸如所轉換的句子和段落)并且替換另外匹配了文本匹配應用文本分段的OCR化文本分段中潛在錯誤轉換的字母來改善字母圖像到字符的轉換,在一些實施例中,文本匹配應用所找到的文本分段作為鏈接提供給用戶(例如,如果用戶掃描了紐約時報的ー頁,則文本匹配應用可以提供到紐約時報網站上整篇刊登文章的鏈接);·結果排序和格式化模塊626,其用于對OCR化結果進行格式化以供呈現并且將可選鏈接格式化為命名實體,并且還可選地對來自文本匹配應用的任意相關結果進行排名;和 可選的注釋模塊628,其用于從注釋數據庫(圖I的116)接收確定任意注釋信息是否與OCR捜索系統相關的注釋信息,并且將任意所確定的注釋信息相關部分合并到相應注釋數據庫630中。圖9是圖示依據本發明一個實施例的用來處理視覺查詢的面部識別搜索系統112-A的框圖。面部識別搜索系統112-A典型地包括ー個或多個處理單元(CPU) 902、ー個或多個網絡或其它通信接ロ 904、存儲器912,以及用于將這些組件進行互連的ー個或多個通信總線914。存儲器912包括高速隨機存取存儲器,諸如DRAM、SRAM、DDR RAM或其它隨機存取固態存儲器設備;并且可以包括非易失性存儲器,諸如ー個或多個磁盤存儲設備、光盤存儲設備、閃存設備或者其它非易失性固態存儲設備。存儲器912可以可選地包括與CPU902遠程定位的一個或多個存儲設備。存儲器912或者可替換地存儲器912內的非易失性存儲設備包括非瞬時計算機可讀存儲介質。在一些實施例中,存儲器912或者存儲器912的計算機可讀存儲介質存儲以下程序、模塊和數據結構或者其子集 操作系統916,其包括用于處理各種基本系統服務以及用于執行依賴于硬件的任務的程序; 網絡通信模塊918,其用于將面部識別搜索系統112-A經由ー個或多個通信網絡接ロ 904 (有線或無線)以及諸如互聯網、其它廣域網、局域網、城域網等的ー個或多個通信網絡連接到其它計算機; 面部識別搜索應用920,其用于搜索在面部圖像數據庫114-A中與視覺查詢中所出現的臉部相匹配的面部圖像,并且針對與面部圖像數據庫114-A中所找到的每個匹配相關的信息搜索社交網絡數據庫922 ;·面部圖像數據庫114-A,其用于存儲多個用戶的ー個或多個面部圖像;可選地,面部圖像數據庫包括用戶之外的人的面部圖像,諸如家庭成員或用戶所認識并且已經被識別為出現在面部圖像數據庫114-A中所包括的圖像中的其他人;可選地,面部圖像數據庫包括從諸如在公眾領域合法的面部圖像提供商的外部源獲得的面部圖像;·可選地,社交網絡數據庫922,如參考圖12A更為詳細討論的,其包含與社交網絡用戶相關的信息,諸如姓名、地址、職業、組成員資格、社交網絡連接、移動設備的當前GPS位置、分享偏好、興趣、年齡、籍貫、個人統計、工作信息等;·結果排名和格式化模塊924,其用于對來自面部圖像數據庫114-A的潛在面部匹配進行排名(例如,對其分配相關性和/或匹配質量分值)并且對結果進行格式化以供呈現;在一些實施例中,結果的排名或評分采用從以上提到的社交網絡數據庫所獲取的相關信息;在一些實施例中,經格式化的捜索結果包括潛在的圖像匹配以及來自社交網絡數據庫的信息的子集;和 注釋模塊926,其用于從注釋數據庫(圖I的116)接收確定任意注釋信息是否與面部識別搜索系統相關的注釋信息,并且將任意所確定的注釋信息相關部分合并到相應注釋數據庫928中。圖10是圖示依據本發明一個實施例的用來處理視覺查詢的圖像至詞語搜索系統112-C的框圖。在一些實施例中,圖像至詞語搜索系統識別視覺查詢中的對象(實例識別)。在其它實施例中,圖像至詞語搜索系統識別視覺查詢中的對象類別(類型識別)。在ー些實施例中,圖像至詞語搜索系統識別對象和對象類別。圖像至詞語搜索系統返回針對視覺查 詢中的圖像的潛在詞語匹配。圖像至詞語搜索系統112-C典型地包括一個或多個處理単元(CPU) 1002、一個或多個網絡或其它通信接ロ 1004、存儲器1012,以及用于將這些組件進行互連的ー個或多個通信總線1014。存儲器1012包括高速隨機存取存儲器,諸如DRAM、SRAM、DDR RAM或其它隨機存取固態存儲器設備;并且可以包括非易失性存儲器,諸如ー個或多個磁盤存儲設備、光盤存儲設備、閃存設備或者其它非易失性固態存儲設備。存儲器1012可以可選地包括與CPU 1002遠程定位的一個或多個存儲設備。存儲器1012或者可替換地存儲器1012內的非易失性存儲設備包括非瞬時計算機可讀存儲介質。在一些實施例中,存儲器1012或者存儲器1012的計算機可讀存儲介質存儲以下程序、模塊和數據結構或者其子集·操作系統1016,其包括用于處理各種基本系統服務以及用于執行依賴于硬件的任務的程序;·網絡通信模塊1018,其用于將圖像至詞語搜索系統112-C經由ー個或多個通信網絡接ロ 1004 (有線或無線)以及諸如互聯網、其它廣域網、局域網、城域網等的一個或多個通信網絡連接到其它計算機;·圖像至詞語搜索應用1020,其在圖像搜索數據庫114-C中捜索與視覺查詢中的一個或多個主題相匹配的圖像;·圖像搜索數據庫114-C,其能夠被搜索應用1020所搜索以找出類似于視覺查詢的主題的圖像; 詞語至圖像反向索引1022,其存儲用戶在使用基于文本的查詢搜索引擎1006搜索圖像時所使用的文本詞語;·結果排名和格式化模塊1024,其用于對潛在圖像匹配進行排名和/或對詞語至圖像反向索引1022中所標識的與潛在圖像匹配相關聯的詞語進行排名;和·注釋模塊1026,其用于從注釋數據庫(圖I的116)接收確定任意注釋信息是否與圖像至詞語搜索系統112-C相關的注釋信息,并且將任意所確定的注釋信息相關部分合并到相應注釋數據庫1028中。圖5-10更多地是意在作為可以在計算機系統的集合中給出的各種特征的功能描述而不是作為這里所描述的實施例的結構示意。實際上,并且如本領域技術人員所認識到的,単獨示出的項目可以進行組合并且ー些項目可以被分離。例如,在這些附圖中單獨示出的ー些項目可以在單個服務器上實現并且單個項目可以由一個或多個服務器實現。用來實施視覺查詢處理的系統的實際數量以及特征如何在它們之間進行分配可以隨實施方式而變化。這里所描述的每種方法可以由存儲在非瞬時計算機可讀存儲介質中并且由ー個或多個服務器或客戶端的一個或多個處理器所執行的指令進行管理。以上所標識的模塊或程序(即,指令集合)無需作為單獨的軟件程序、過程或模塊來實現,并且這些模塊的各個子集可以在各個實施例中組合或以另外的方式重新安排。圖5-10中所示出的每個操作可以對應于存儲在計算機存儲器或非瞬時計算機可讀存儲介質中的指令。圖11圖示了具有示例性視覺查詢1102的截屏的客戶端系統102。圖11所示的客戶端系統102是諸如蜂窩電話、便攜式音樂播放器或便攜式電子郵件設備的移動設備。客戶端系統102包括顯示器706以及諸如該圖中所示出的按鈕的一個或多個輸入裝置708。在一些實施例中,顯示器706是觸摸敏感顯示器709。在具有觸摸敏感顯示器709的實施例 中,顯示在顯示器709上的軟按鈕可以可選地替換ー些或所有電子機械按鈕708。如以下更為詳細解釋的,觸摸敏感顯示器還有助于同視覺查詢結果進行交互。客戶端系統102還包括諸如相機710的圖像捕捉機制。圖11圖示了作為店鋪貨架上的包裝的照片或視頻幀的視覺查詢1102。在這里所描述的實施例中,視覺查詢是ニ維圖像,其具有與兩個維度中的每ー個中的像素的視覺查詢大小相對應的分辨率。在該示例中,視覺查詢1102是三維對象的ニ維圖像。視覺查詢1102包括背景元素、產品包裝1104以及包裝上各種類型的實體,包括人物圖像1106、商標圖像1108、產品圖像1110以及各種文本元素1112。如參考圖3所解釋的,視覺查詢1102被發送到前端服務器110,其將視覺查詢1102發送到多個并行捜索系統(112A-N),接收結果并創建交互式結果文檔。圖12A和12B均圖示了具有交互式結果文檔1200的實施例的截屏的客戶端系統102。交互式結果文檔1200包括視覺查詢1102的相應子部分的ー個或多個視覺標識符1202,其均包括到捜索結果子集的用戶可選擇鏈接。圖12A和12B圖示了具有視覺標識符的交互式結果文檔1200,所述視覺標識符是分界框1202 (例如,分界框1202-1、1202-2、1202-3)。在圖12A和12B所示的實施例中,用戶通過在其分界框1202所包圍的空間內的激活區域上進行敲擊來激活對應于特定子部分的搜索結果的顯示。例如,用戶將通過在圍繞人物圖像的分界框1306 (圖13)上進行敲擊來激活與人物圖像相對應的捜索結果。在其它實施例中,使用鼠標或鍵盤而不是觸摸敏感顯示器來選擇可選擇鏈接。在一些實施例中,在用戶預覽分界框1202時(即,在用戶在分界框上進行單擊、一次敲擊或懸停指示符時)顯示第一對應搜索結果。用戶在其選擇邊界框時(即,當用戶進行雙擊、兩次敲擊或者使用其它機制來指示選擇時)激活多個對應搜索結果的顯示。在圖12A和12B中,視覺標識符是圍繞視覺查詢的子部分的分界框1202。圖12A圖示了為正方形或矩形的分界框。圖12B圖示了包圍視覺查詢的子部分中的可識別實體的邊界的分界框1202,諸如用于飲料瓶的分界框1202-3。在一些實施例中,相應分界框1202在其內部包括較小的分界框1202。例如,在圖12A和12B中,標識包裝的分界框1202-1圍繞著標識商標的分界框1202-2以及所有其它分界框1202。在包括文本的一些實施例中,還包括ー些文本詞語的活躍熱鏈接1204。圖12B示出了其中“Active Drink”和“UnitedStates”被顯示為熱鏈接1204的示例。對應于這些詞語的搜索結果是從詞語查詢服務器系統118所接收的結果,而對應于分界框的結果則是來自通過圖像進行查詢的捜索系統的結
果O圖13圖示了具有交互式結果文檔1200的截屏的客戶端系統102,所述交互式結果文檔1200通過視覺查詢中所識別的實體類型進行編碼。圖11的視覺查詢包含人物圖像1106、商標圖像1108、產品圖像1110以及各種文本元素1112。這樣,圖13中所顯示的交互式結果文檔1200包括圍繞人物1306、商標1308、產品1310以及兩個文本區域1312的分界框1202。圖13的分界框均利用表示不同著色的透明分界框1202的単獨交叉陰影來呈現。在一些實施例中,分界框的視覺標識符(和/或交互式結果文檔1200中的標簽或其它視覺標識符)被格式化以便以諸如覆蓋顏色、覆蓋圖案、標簽背景顔色、標簽背景圖案、標簽字體顔色和分界框邊界顔色的視覺上不同的方式進行呈現。用于特定識別實體的類型編碼參考 圖13中的分界框示出,但是通過類型進行的編碼也被應用于作為標簽的視覺標識符。圖14圖示了具有交互式結果文檔1200的截屏的客戶端系統102,所述交互式結果文檔1200具有作為圖11的視覺查詢1102的相應子部分的視覺標識符的標簽1402。標簽視覺標識符1402均包括到相對應搜索結果的子集的用戶可選擇鏈接。在一些實施例中,可選擇鏈接由標簽1402區域內所顯示的描述文本所標識。一些實施例包括一個標簽1402內的多個鏈接。例如,在圖14中,懸停在喝水女士圖像上方的標簽包括到針對該女士的面部識別結果的鏈接以及到針對該特定圖片(例如,其它產品的圖像或者使用相同圖片的廣告)的圖像識別結果的鏈接。在圖14中,標簽1402被顯示為部分透明區域,其具有位于交互式結果文檔的其相應子部分上的文本。在其它實施例中,相應標簽位于交互式結果文檔的其相應子部分附近而并非位于其上。在一些實施例中,標簽以與參考圖13所討論的相同方式通過類型進行編碼。在一些實施例中,用戶通過在被標簽1302的邊緣或外圍所包圍的空間內的激活區域上進行敲擊來激活與對應于標簽1302的特定子部分相對應的搜索結果的顯示。以上參考圖12A和12B的分界框所討論的相同預覽和選擇功能也適用于作為標簽1402的視覺標識符。圖15圖示了與結果列表1500同時顯示的原始視覺查詢1102和交互式結果文檔1200的截屏。在一些實施例中,交互式結果文檔1200如圖12-14所示的自己進行顯示。在其它實施例中,如圖15所示,交互式結果文檔1200與原始視覺查詢同時顯示。在一些實施例中,視覺查詢結果的列表1500連同原始視覺查詢1102和/或交互式結果文檔1200 —起同時進行顯示。客戶端系統的類型以及顯示器706上的空間量可以確定是否與交互式結果文檔1200同時顯示結果列表1500。在一些實施例中,客戶端系統102 (響應于提交給視覺查詢服務器系統的視覺查詢)接收結果列表1500和交互式結果文檔1200,但是僅在用戶向下滾動交互式結果文檔1200時才顯示結果列表1500。在這些實施例中的ー些中,客戶端系統102顯示與用戶所選擇的視覺標識符1202/1402相對應的結果而無需再次對服務器進行查詢,這是因為客戶端系統102響應于視覺查詢接收了結果列表1500并且隨后將其本地存儲在客戶端系統102。在一些實施例中,結果列表1500被組織為類別1502。每個類別包含至少ー個結果1503。在一些實施例中,類別標題被高亮以便將它們與結果1503進行區分。類別1502根據其經計算的類別權重進行排序。在一些實施例中,類別權重是該類別中最高的N個結果的權重組合。這樣,具有可能產生最為相關的結果的類別被首先顯示。在針對相同的識別實體返回了多于ー個的類別1502 (諸如圖15中所示的面部圖像識別匹配和圖像匹配)的實施例中,首先顯示的類別具有較高的類別權重。如參考圖3所解釋的,在一些實施例中,當客戶端系統102的用戶選擇了交互式結果文檔1200中的可選擇鏈接時,光標將自動移動到適當類別1502或該類別中的第一結果1503。可替換地,當交互式結果文檔中的可選擇鏈接被客戶端系統102的用戶所選擇時,結果列表1500被重新排序以使得與所選擇鏈接相關的ー個或多個類別被首先顯示。例如,這是通過利用標識相對應搜索結果的信息對可選擇鏈接進行編碼或者通過對搜索結果進行編碼以指示相對應的可選擇鏈接或指示相對應的結果類別來實現的。在一些實施例中,捜索結果的類別對應于產生那些搜索結果的通過圖像進行查詢的搜索系統。例如,在圖15中,一些類別是產品匹配1506、標志匹配1508、面部識別匹配 1510、圖像匹配1512。原始視覺查詢1102和/或交互式結果文檔1200可以與諸如查詢1504的類別標題類似地進行顯示。類似地,來自詞語查詢服務器所執行的任意詞語搜索的結果也可以被顯示為單獨類別,諸如web結果1514。在其它實施例中,視覺查詢中多于ー個的實體將產生來自相同的通過圖像進行查詢的搜索系統的結果。例如,視覺查詢可以包括兩個不同臉部,它們將從面部識別搜索系統返回単獨的結果。這樣,在一些實施例中,類別1502通過所識別實體而不是通過搜索系統進行劃分。在一些實施例中,所識別實體的圖像被顯示在所識別實體的類別首部1502中,以使得該所識別實體的結果能夠與另一個所識別實體的結果區分開來,即使兩個結果是由圖像捜索系統所進行的相同查詢所產生。例如,在圖15中,產品匹配類別1506包括兩個實體產品實體并且由此作為兩個實體類別1502—盒裝產品1516和瓶裝產品1518,它們中的每ー個具有多個相應搜索結果1503。在ー些實施例中,類別可以通過所識別實體以及通過圖像進行查詢的系統的類型進行劃分。例如,在圖15中,存在兩個單獨實體,它們在產品匹配類別產品下返回了相關結果。在一些實施例中,結果1503包括縮略圖。例如,如對于圖15中的面部識別匹配結果所示出的,連同諸如圖像中人物的姓名之類的ー些文本描述一起顯示了“女演員X”和“社交網絡好友Y”的面部匹配圖片的小型版本(也被稱作縮略圖)。圖16A和16B是圖示用于創建可采取動作的搜索結果元素的過程的流程圖。圖16A和16B中所示的每個操作可以對應于計算機存儲器或計算機可讀存儲介質中所存儲的指令。特別地,許多操作對應于用于前端捜索系統110的可采取動作的搜索結果模塊838(圖6)的指令。如參考圖2所解釋的,前端捜索系統110從客戶端系統接收視覺查詢1200 (圖12) (202)。捜索系統將所述視覺查詢發送到至少ー個實現視覺查詢搜索過程的捜索系統(1602)。在一些實施例中,視覺查詢將被發送到多個搜索系統(210),如以上參考圖2所描述的,其中每個搜索系統執行不同的視覺查詢搜索過程。從搜索系統接收至少ー個結果(1604)。在一些實施例中,結果將包括通信地址(1606)。例如,當視覺查詢包含若干臉部的圖像吋,(從面部識別搜索系統)所返回的搜索結果可以包括ー個或多個通信地址,諸如搜索結果中所識別的ー個或多個人的電話號碼、電子郵件地址和物理地址中的ー個或多個。
前端捜索系統識別視覺查詢中的實體(1608)。如參考圖17所解釋的,所述實體可以基于視覺查詢中的部分文本來識別。如參考圖18所解釋的,所述實體可以是條形碼(或者可以基于條形碼進行識別)。如參考圖19所解釋的,所述實體可以是產品。如參考圖21所解釋的,所述實體可以是建筑物。如參考圖22所解釋的,所述實體可以是(例如,從建筑物圖像或者企業或組織所制造產品的圖像等所識別的)企業或組織。實體可以是以下的任意一個人、與人相關聯的姓名或其它標識符、公司、組織、電話號碼、傳真號碼、電子郵件地址、郵政地址、IM地址、URL、文本、標志、建筑物、建筑物或物理結構群組、郵政地址、地標、社交網絡聯系人、產品、臉部、條形碼或圖像(1610)。當實體是諸如姓名、電話號碼或電子郵件地址的文本實體時,使用OCR過程來識別所述實體。當實體不是文本實體時,使用非OCR匹配過程來進行實體識別(1612)。前端捜索系統識別與所識別實體相對應的一個或多個客戶端側動作(1614)。在一些實施例中,當所識別實體可以與多于ー個的客戶端側動作相關聯時,多于ー個的客戶端側動作與所識別實體相關聯。例如,如果所識別實體為公司,則識別出諸如發起電話呼叫、發送電子郵件或者去往該公司網址的各種客戶端側動作(假設所有那些客戶端側動作可以
由捜索系統確定或識別)。針對所識別實體的類型,僅有ー個客戶端側動作與所識別實體相關聯。例如,如果傳真號碼是所識別實體,則發送傳真可能是僅有的所識別的客戶端側動作。在一些實施例中,所識別的動作是基于ー個或多個搜索結果中所識別的信息(1616)。當原始查詢不直接包括可采取動作的信息吋,這是特別相關的。例如,如果視覺查詢1200是如圖18所示的條形碼,則所識別的動作將基于從條形碼匹配所識別的信息,諸如產品信息,或者在圖18的情形下是與個人ID上的條形碼相關聯的個人信息。客戶端側動作可以是以下的任意一個對電話號碼發起呼叫、即時消息發送、傳真、傳呼、電子郵件、通過社交網絡系統聯系以及通過其它機制進行通信(1618)。例如,如果所識別的實體是電話號碼,則客戶端側動作將是對所述電話號碼發起電話呼叫。如果所識別的實體是電子郵件地址,則客戶端側動作將是向所述電子郵件地址發起電子消息的編與。當視覺查詢中所識別的實體是郵政地址時,客戶端側動作可以是多個地圖相關動作中的任意動作。在一些實施例中,地圖相關動作包括提供標識郵政地址位置的地圖,提供到郵政地址的行車路線指引,提供始于郵政地址的行車路線指引、提供包括郵政地址的航空照片,和/或提供對應于郵政地址的街景圖像(1620)。在一些實施例中,客戶端側動作是向聯系人列表添加信息(1622)。例如,客戶端動作可以是向聯系人列表添加姓名、電子郵件地址、電話號碼、傳真號碼、郵政地址、即時消息地址、公司名稱、組織名稱、URL和/或社交網絡聯系人。當視覺查詢中所識別的實體是能夠購買或評論的產品、財產或其它實體時,客戶端側動作可以是以下的ー個或多個發起對產品、財產或其它實體的購買或出價;獲取和/或顯示產品、資產或其它實體的評論;獲取和/或顯示類似產品、資產或其它實體的列表;以及獲取和/或顯示相關產品、資產或其它實體的列表(1624)。前端捜索系統創建可采取動作的捜索結果元素(1626)。可采取動作的捜索結果元素被配置為啟動所識別的客戶端側動作。對于至少ー些視覺查詢而言,對所處理的視覺查詢創建兩個或更多可采取動作的捜索結果元素;每個可采取動作的捜索結果元素被配置為啟動相應的客戶端側動作(1628)。可選地,兩個或更多可采取動作的捜索結果元素被配置為啟動不同的客戶端應用(1629),并且執行不同的客戶端側動作。不同的客戶端應用的示例是經由電子郵件進行通信、觀看網頁以及通過電話進行通信的客戶端應用。由于應用還可以在web瀏覽器的環境內執行,所以不同的客戶端應用可以包括如Gmail (Google公司的商標)、Google Calendar (Google 公司的商標)和 Google Reader (Google 公司的商標)的應用,它們是包括由瀏覽器應用環境中的虛擬機所執行的客戶端應用代碼的基于web的應用。在一些實施例中,在存在預定條件時(例如,當所識別的客戶端側動作的數量超過閾值或預定最大值時),僅針對所識別的客戶端側動作的子集形成可采取動作的捜索結果元素。在這些實例中,針對相對應的可采取動作的搜索結果元素所選擇的客戶端側動作是被計算為用戶最可能感興趣的那些客戶端側動作。在一些實例中,在決定要向客戶端設備發送什么可采取動作的捜索結果元素時使用客戶端設備的能力。例如,如果客戶端設備不 包括電話應用,則將不會向該客戶端設備發送用于啟動電話呼叫的可采取動作的捜索結果 元素,或者不會將其選作優選的可采取動作的捜索結果元素。在一些實施例中,基于ー個或多個因素對潛在的可采取動作的捜索結果元素進行評分,諸如相關性、流行度、與視覺查詢焦點的關聯、先前的用戶使用模式以及其它的用戶使用模式。然后基于分配給可采取動作的搜索結果的屏幕空間來顯示前N個潛在的可采取動作的捜索結果。在一些實施例中,可采取動作的捜索結果作為用戶界面上的按鈕進行顯示(1630)。在本文中,“按鈕”是可以包括或不包括看上去像按鈕的顯示元素的離散用戶界面元素。前端捜索系統將ー個或多個可采取動作的捜索結果元素發送到客戶端系統以便進行顯示(1632)。可選地,若干可采取動作的捜索結果元素被發送到客戶端系統。在ー些實施例中,除了可采取動作的捜索結果元素之外,還向客戶端系統發送至少ー個捜索結果(1634)。在一些實施例中,可采取動作的搜索結果元素不同于搜索結果。在一些實施例中,它們被配置為在顯示設備的単獨部分中進行顯示。在一些實施例中,ー些可采取動作的搜索結果元素作為鏈接嵌入在捜索結果顯示中。在一些實施例中,可采取動作的搜索結果元素被配置為通過視覺查詢的一部分進行顯示(1636)。例如,在一些實施例中,發送包括向客戶端系統發送具有可采取動作的捜索結果元素的視覺查詢的表示,所述可采取動作的捜索結果元素覆蓋所述視覺查詢的表示的至少一部分。在其它實施例中,發送包括向客戶端系統發送用于視覺呈現覆蓋視覺查詢的至少一部分的可采取動作的捜索結果元素的信息。在一些實施例中,除了創建可采取動作的捜索結果元素之外,創建其它可采取動作的元素并且將其發送到客戶端系統(1638)。這些可采取動作的元素由于動作不與特定搜索結果相關而與搜索結果元素相分離。例如,可采取動作的元素可能包括分享或上傳視覺查詢和/或捜索結果、回顧用戶的視覺查詢歷史和/或啟動新的捜索的一個或多個選項(1640)。現在,已經參考圖16A和16B對用于創建可采取動作的捜索結果元素的過程進行了描述,現在將對特定示例進行討論。
在一些實施例中,所識別的實體是具有ー個或多個相關聯標識符的人。例如,標識符可以是以下的ー個或多個人的姓名、人的面部圖像、與人相關聯的標識號碼、與人相關聯的電話號碼、與人相關聯的傳真號碼、與人相關聯的社交網絡標識符以及與人相關聯的電子郵件地址。當所識別的實體是諸如企業、組織、協會或其它實體的不同于人的實體吋,所述實體具有ー個或多個相關聯的標識符,諸如以下的ー個或多個圖像、標識號碼、標志、電話號碼、傳真號碼、電子郵件地址和物理地址。在這些實施例中,多個搜索結果可以包括與不同于人/實體的標識符的人/實體相關聯的通信地址。例如,如果標識符是人的姓名,則搜索結果可能包括以下的ー個或多個與人相關聯的電話號碼、電子郵件地址和即時消息地址。這樣,可采取動作的捜索結果元素被配置為使用來自搜索結果的通信地址(以及原始查詢中所識別的任意通信地址)啟動通信。與此相同的概念適用于個體或個體標識符之外的實體。在一些實施例中,客戶端被配置為以類似于以上針對服務器所討論的方式識別直接存在于視覺查詢中的實體。接著,客戶端識別與所識別實體相對應的ー個或多個動作并且創建相對應的可采取動作的捜索結果元素。在該實施例中,客戶端側所創建的可采取動作的捜索結果元素可以通過服務器所識別的可采取動作的捜索結果元素擴增,諸如間接對 應于視覺查詢中的所識別實體的那些可采取動作的捜索結果元素。將在以下出于說明的目的對查詢及其相關聯的可采取動作的捜索結果的示例說明進行討論。這些示例中的捜索查詢及其結果不表示所有可能查詢和可采取動作的搜索結果,而是被示出以對以上關于圖16A和16B所提供的一般性描述進行加強。圖17圖示了針對包括商業卡圖像的視覺查詢1200所返回的結果列表1500和多個可采取動作的捜索結果元素1700的實施例的客戶端系統顯示。該實施例中的視覺查詢1200是包括各種元素的商業卡的照片。在該示例中,商業卡的視覺查詢1200被發送到搜索系統,所述搜索系統識別視覺查詢中的以下實體個體名稱1702、標志1704、郵政地址1706、電話號碼1708和網站地址1710。搜索系統連同視覺查詢1200和其它元素一起返回捜索結果列表1500和可采取動作的捜索結果元素1700。一些可采取動作的捜索結果元素1700對應于捜索系統通過使用OCR過程在商業卡中直接找到的實體。這些包括呼叫按鈕的可采取動作的捜索結果1712,這是用于向所識別的電話號碼1708發起電話呼叫的按鈕,地圖按鈕的可采取動作的捜索結果1716,這是用于對所識別的地址1706繪制地圖的按鈕,以及URL按鈕的可采取動作的捜索結果1718,這是用于觀看所識別的網站1710的按鈕。圖17中的ー些可采取動作的搜索結果1700被配置為啟動間接對應于視覺查詢中的所識別實體(或與所識別實體相關聯的標識符)的客戶端側動作。例如,電子郵件按鈕的可采取動作的捜索結果1714,通過并未包括在視覺查詢中的商業卡上的文本中的電子郵件地址發起電子郵件消息編寫。啟動間接對應于所識別實體的客戶端側動作所需的地址信息從與視覺查詢相關聯的捜索結果獲取。例如,電子郵件地址從與姓名Bob Every相關聯的捜索結果信息所獲取,這是因為在商業卡上沒有列出電子郵件地址。(姓名“Bob Every”是與人“Bob Every”相關聯的標識符)。換句話說,所識別的客戶端側動作(發送郵件)對應于所識別實體“Bob Every”,并且電子郵件地址是在視覺查詢(商業卡)的捜索結果中所識別的信息的一部分。類似地,“發送社交網絡消息-Bob”的可采取動作的搜索結果按鈕1722用于發起對其商業卡上也沒有列出的Bob的社交網絡賬戶的社交網絡消息編寫。因此,“發送社交網絡消息-Bob”的可采取動作的捜索結果按鈕是被配置為啟動間接對應于視覺查詢中的所識別實體的客戶端側動作的另ー個可采取動作的捜索結果。“將Bob Every添加到聯系人”的可采取動作的搜索結果按鈕1720用于將ー些所識別信息添加到聯系人列表。能夠添加的信息是從視覺查詢直接獲取的信息(諸如商業卡上的姓名、郵政地址、電話號碼、網站)以及對應于視覺查詢中所識別實體的附加搜索結果信息(諸如電子郵件地址、社交網絡聯系人和公司名稱)。該示例中的捜索結果列表示出了其它相關結果,諸如“任意企業”的web結果1514和標志匹配1508。這些類型的結果與以上參考圖15所描述的那些相同。圖17還包括若干可采取動作的元素1724。可采取動作的元素1724并不依賴于特定捜索結果,而是用于發起視覺查詢系統中的標準動作的可選擇元素。圖17中所顯示的可采取動作的元素是用來發起“新捜索”、與另ー個用戶或應用“分享”搜索結果或者其一部分、以及回顧先前的視覺查詢搜索(標記為“歷史”)的按鈕。 圖18圖示了針對2D條形碼的視覺查詢1200所返回的結果列表1500和多個可采取動作的搜索結果元素1700的實施例的客戶端系統顯示。圖18中的可采取動作的搜索結果元素1700被配置為啟動間接對應于條形碼所識別的實體1801的客戶端側動作,這是因為條形碼本身不是具有直接對應的客戶端側動作的實體。在圖18所示的實施例中,條形碼匹配視覺查詢搜索結果信息1802顯示在可采取動作的捜索結果元素1700紙上。該實施例中所顯示的信息與Bob Every相關,這是因為該條形碼可能處于其ID或訪問卡上。因此,所返回的結果與圖17所示的那些相同。然而,條形碼被用在各種應用之中,并且與每個條形碼相關聯的信息將確定所顯示的可采取動作的搜索結果的類型。例如,如果條形碼與產品相關聯,則可采取動作的捜索結果可能與購買產品、獲得與產品相關的詳細信息或者獲得產品評論相關。該實施例還包括結果列表1500和可采取動作的元素1724。圖19圖示了針對包括產品的視覺查詢1200所返回的結果列表1500和多個可采取動作的捜索結果元素1700的視覺查詢結果的客戶端系統顯示。該實施例中的視覺查詢1200是書架上的圖書1901的照片。圖書封面包括文本和圖像。捜索系統連同視覺查詢1200和其它元素一起返回搜索結果列表1500和可采取動作的搜索結果元素1700。針對該查詢所識別的實體是圖書1901。在圖19中所示的實施例中,圖書匹配視覺查詢搜索結果信息1902顯示在可采取動作的捜索結果元素1700之上。這些圖書結果元素包括標題、作者和星級評級。可采取動作的捜索結果元素1700對應于用戶可能希望采取的對應于所識別產品的客戶端側動作。在該實施例中,可采取動作的捜索結果元素包括用于購買產品的按鈕1904、用于對產品出價的按鈕1906,以及用于閱讀關于產品的產品評論的按鈕1908。搜索結果列表包括web結果1514和圖像結果1512。圖20是圖示客戶端系統102和前端視覺查詢服務器系統110之間用于創建具有可選位置信息的可采取動作的捜索結果1700的通信的流程圖。在一些實施例中,位置信息在使用之前進行增強。在這些實施例中,視覺查詢結果至少部分基于用戶在查詢時的位置。使用位置信息或增強位置信息來改善視覺查詢搜索對于“街景視覺查詢”是有用的。例如,如果站在街角并且拍攝了建筑物照片作為視覺查詢,并且使用當前位置信息(即,識別客戶端設備的位置的信息)以及視覺查詢對其進行處理,則搜索結果將包括與位于該建筑物中的企業或組織相關的信息。
圖20中所示出的每個操作可以對應于計算機存儲器或計算機可讀存儲介質中所存儲的指令。。特別地,許多操作對應于前端捜索系統110的可采取動作的搜索結果模塊838 (圖6)和客戶端系統102的結果瀏覽器736 (圖5)中的可執行指令。客戶端設備或系統102接收來自用戶的圖像(2002)。在一些實施例中,所述圖像從客戶端設備或系統102中的相機710(圖5)接收。在一些實施例中,客戶端系統還接收指示客戶端系統的位置的位置信息(2004)。所述位置信息可以來自于客戶端設備或系統102中的GPS設備707 (圖5)。可替換地或除此之外,所述位置信息可以來自于小區塔臺使用信息或無線局域網信息。為了可用于產生街景輔助結果,所述位置信息通常必須滿足精確度標準。在一些實施例中,當位置信息具有不低于A的精確度時,精確度標準得以被滿足,其中A是預定義的100米或更近的數值。客戶端系統102從所述圖像創建視覺查詢(2006)并且將所述視覺查詢發送到服務器系統(2008)。在一些實施例中,客戶端系統102還將位置信息發送到服務器(2010)。前端服務器系統110從客戶端系統接收視覺查詢(2012)。其還可以接收位置信息(2014)。如參考圖16A所解釋的,前端服務器系統110向實現視覺查詢過程的至少ー個搜索系統發送視覺查詢(2016)。在一些實施例中,視覺查詢被發送到多個并行捜索系統。搜 索系統返回ー個或多個搜索結果(2024)。在客戶端系統102向前端服務器系統110發送位置信息的實施例中,前端服務器系統將所述位置信息發送到至少ー個位置擴增搜索系統(2018)。(在2014)接收的位置信息可能在指定范圍內精確定位用戶。在一些實施例中,位置信息以75英尺或更好的精確度定位客戶端系統;在ー些(如以上所描述的)其它實施例中,位置信息具有不低于A的精確度,其中A是預定義的100米或更近的數值。位置擴增搜索系統(圖23所示的112-F)在指定范圍內對(之前存儲在圖像數據庫2322中的)街景圖像庫集執行視覺查詢匹配捜索。如果在該庫集內找到了圖像匹配,則獲取與匹配圖像相關聯的增強位置信息。在一些實施例中,增強位置信息在比原始范圍窄的范圍內精確定位用戶的特定位置,并且可選地(但是通常)還包括姿態(即,用戶所面對的方向)。在一些實施例中,增強位置信息所識別的特定位置處于距客戶端設備的實際位置的預定距離之內,諸如10或15英尺。在該實施例中,前端服務器系統110從位置擴增搜索系統接收基于視覺查詢和位置信息的增強位置信息(2020)。然后,前端服務器系統110將增強位置信息發送到基于位置的查詢系統(圖24所示的112-G) (2022)。基于位置的查詢系統112-G獲取并返回被前端服務器系統所接收的ー個或多個搜索結果(2024)。可選地,依據視覺查詢和增強位置信息兩者獲得捜索結果(2026)。可替換地,依據使用原始位置信息和視覺查詢所獲取的增強位置信息獲得搜索結果(2028)。應當注意的是,(在2024接收的)視覺查詢結果可以包括所精確定位的位置附近實體的結果,無論這些實體是否能夠在視覺查詢圖像中看到。例如,視覺查詢結果可以包括被在原始視覺查詢中(例如,被過往車輛或樹木)所遮蔽的實體。在一些實施例中,視覺查詢結果還將包括諸如精確定位的地址附近的企業或地標之類的臨近實體,即使這些實體根本不處于視覺查詢圖像之中。如參考圖16A的元素1602和1604所解釋的,在沒有接收到位置信息的實施例中,前端捜索系統110僅將視覺查詢發送到一個或多個視覺捜索系統(2016),并且前端捜索系統110然后從一個或多個視覺查詢搜索系統接收ー個或多個搜索結果(2024)。在具有和沒有位置信息的實施例中,前端捜索系統110創建ー個或多個可采取動作的搜索結果元素(2030)。以上參考圖16A和16B的元素(1608-1630)討論了可采取動作的搜索結果元素的創建或生成。至少ー個可采取動作的搜索結果元素被客戶端系統所接收(2032)。客戶端系統102顯示可采取動作的搜索結果元素(2034)。如參考圖16B的元素1632所討論的,在ー些實施例中,一個或多個搜索結果還連同來自前端服務器系統的可采取動作的捜索結果元素一起發送到客戶端系統。可選地(并且通常),捜索結果與可采取動作的捜索結果元素一起顯示。類似地,在可采取動作的元素被發送到客戶端的實施例中(圖16B的元素1638),它們也被顯示。在一些實施例中,可采取動作的捜索結果元素覆蓋視覺查詢的一部分進行顯示(2036)。如以下更為詳細討論的,這種類型的顯示示例在圖22中示出。客戶端系統102接收相應可采取動作的捜索結果元素的用戶選擇(2038)。隨后,客戶端系統在不同于視覺查詢應用的應用啟動對應于所選擇的可采取動作的捜索結果元 素的客戶端側動作,所述視覺查詢應用中顯示有視覺查詢結果和可采取動作的捜索結果元素(2024)。例如,如果用戶所選擇的可采取動作的捜索結果元素是用于向特定電話號碼發起電話呼叫,則在不同于客戶端側視覺查詢應用的電話應用中發起所述動作。圖21圖示了針對建筑物的視覺查詢1200所返回的結果列表1500和多個可采取動作的捜索結果元素1700的實施例的客戶端系統顯示。在該實施例中,視覺查詢1200被作為街景視覺查詢進行處理,并且因此所接收的搜索結果依據視覺查詢和客戶端系統102所提供的位置信息兩者而獲得。針對該查詢所識別的實體是舊金山(SF)Ferry大廈2101。在圖21中所示的實施例中,“地點匹配”視覺查詢搜索結果信息2102被顯示在可采取動作的搜索結果元素1700上方。地點匹配結果包括建筑物名稱(SF Ferry大廈)、郵政地址(Pier 48)、與該地點相關的描述和星級評級。可采取動作的捜索結果元素1700對應于用戶可能希望采取的對應于所識別地點的客戶端側動作。在該實施例中,可采取動作的捜索結果元素包括用于呼叫與地點相關聯的電話號碼的按鈕2104,用于觀看與地點相關聯的網站的URL按鈕2106,以及用于對地址繪制地圖的按鈕2108。搜索結果列表包括web結果1514和相關地點匹配2110。捜索結果列表包括所述街景地點匹配系統所識別的其它地點。在一些實施例中,地點匹配系統顯示其它與被識別為目前處于用戶前方的地點相類似的地點和/或其它臨近地點。例如,如果處于用戶前方的地點被標識為泰式餐廳,則街景地點匹配系統可以顯示處于所識別地點一英里范圍內的其它泰式餐廳。在圖21中所示的實施例中,所顯示的相關地點2110是同樣為流行的旅途停留地的地點一California Academy ofSciences 2112和Palace ofFine Arts 2114。在其它實施例中,不同于顯示類似地點,相關地點匹配可以顯示在地理上處于所識別地點旁邊的地點,諸如處于視覺查詢中的店鋪任ー側或上方的店鋪。在一些實施例中,類似和/或臨近結果還包括可采取動作的捜索結果元素。例如,在一些實施例中將提供用于對每個類似結果發起電話呼叫的按鈕。圖22圖示了多個可采取動作的搜索結果元素1700覆蓋視覺查詢1200的實施例的客戶端系統顯示。在該實施例中,所返回的可采取動作的捜索結果元素是針對街景視覺查詢,但是可采取動作的捜索結果元素可以覆蓋任意類型的視覺查詢。在圖22所示的實施例中,前端服務器系統在視覺查詢中識別了稱為“The City Restaurant”的餐廳實體2201。前端服務器識別對應于“The City Restaurant”實體2201的若干客戶端側動作并且為它們創建了可采取動作的捜索結果元素。可采取動作的捜索結果元素包括用于呼叫與餐廳相關聯的電話號碼的按鈕2204、用于閱讀關于餐廳的評論的按鈕2206、用于得到與餐廳相關的信息的按鈕2208、用于繪制與餐廳相關聯的地址的地圖的按鈕2210、用于在餐廳進行預訂的按鈕2212,以及用于諸如附近或類似餐廳的更多信息的按鈕2214。圖22中所示的實施例中的可采取動作的結果元素被顯示為在可采取動作的捜索結果元素顯示框2216中覆蓋視覺查詢1200的一部分。在該實施例中,顯示框2216是部分透明的,以允許用戶看到顯示框2216以下的原始查詢。在一些實施例中,顯示框2216包括諸如紅色、藍色、緑色等的帶顏色覆蓋。在其它實施例中,顯示框2216使原始查詢圖像變灰(gray out)。顯示框2216還提供所識別實體的名稱2218,在這種情況下為餐廳的名稱“The City Restaurant”。部分透明的顯示框2216的實施例是圖21所示的結果列表樣式的視圖的可替換形式。該實施例允許用戶直觀地將可采取動作的搜索結果按鈕與查詢中所識別的實體相關聯。
圖23是圖示用于處理視覺查詢的ー個位置擴增搜索系統的框圖。圖23圖示了依據ー些實施例的位置擴增搜索系統112-F。位置擴增搜索系統112-F包括ー個或多個處理單元(CPU)2302、一個或多個網絡或其它通信接ロ 2304、存儲器2312,以及用于將這些組件進行互連的ー個或多個通信總線2314。通信總線2314可以包括互連和控制在系統組件之間的通信的電路(有時稱為芯片集)。存儲器2312包括高速隨機存取存儲器,諸如DRAM、SRAM、DDR RAM或其它隨機存取固態存儲器設備;并且可以包括非易失性存儲器,諸如ー個或多個磁盤存儲設備、光盤存儲設備、閃存設備或者其它非易失性固態存儲設備。存儲器2312可以可選地包括與CPU 2302遠程定位的一個或多個存儲設備。存儲器2312或者可替換地存儲器2312內的非易失性存儲設備包括計算機可讀存儲介質。在一些實施例中,存儲器2312或者存儲器2312的計算機可讀存儲介質存儲以下程序、模塊和數據結構或者其子集·操作系統2316,其包括用于處理各種基本系統服務以及用于執行依賴于硬件的任務的程序;·網絡通信模塊2318,其用于將位置擴增搜索系統112-F經由ー個或多個通信網絡接ロ 2304 (有線或無線)以及諸如互聯網、其它廣域網、局域網、城域網等的ー個或多個通信網絡連接到其它計算機;·搜索應用2320,其針對位于客戶端系統位置的指定范圍內的匹配視覺查詢的相關圖像捜索街景索引,所述客戶端系統位置由與客戶端系統相關聯的位置信息所指定,并且如果找到了匹配圖像,則返回擴增位置信息,其比客戶端系統之前的可用位置信息更為準確;·圖像數據庫2322,其包括街景圖像記錄2306 ;每個街景圖像記錄包括圖像2308和精確定位位置信息2310 ;·可選索引2324,其用于將街景圖像記錄2306組織在圖像數據庫2320中;·可選的結果排名模塊2326 (有時稱作相關性評分模塊),其用于對來自搜索應用的結果進行排名,所述排名模塊可以對來自搜索應用的每個結果指定相關性分值,并且如果沒有結果達到預定的最低分值,則可以向前端視覺查詢處理服務器返回指示來自該服務器系統的結果不相關的空或零值分值;和
·注釋模塊2328,其用于從注釋數據庫(圖I的116)接收確定任意注釋信息是否與特定搜索應用相關的注釋信息,并且將任意所確定的注釋信息相關部分合并到相應注釋數據庫2330中。圖24是圖示依據ー些實施例的基于位置的搜索系統112-G的框圖。被用來處理視覺查詢的基于位置的搜索系統112-G包括ー個或多個處理單元(CPU) 2402、ー個或多個網絡或其它通信接ロ 2404、存儲器2412,以及用于將這些組件進行互連的ー個或多個通信總線2414。通信總線2414可以包括互連和控制在系統組件之間的通信的電路(有時稱為芯片集)。存儲器2412包括高速隨機存取存儲器,諸如DRAM、SRAM、DDR RAM或其它隨機存取固態存儲器設備;并且可以包括非易失性存儲器,諸如ー個或多個磁盤存儲設備、光盤存儲設備、閃存設備或者其它非易失性固態存儲設備。存儲器2412可以可選地包括與CPU 2402遠程定位的一個或多個存儲設備。存儲器2412或者可替換地存儲器2412內的非易失性存儲設備包括計算機可讀存儲介質。在一些實施例中,存儲器2412或者存儲器2412的計算機可讀存儲介質存儲以下程序、模塊和數據結構或者其子集

·操作系統2416,其包括用于處理各種基本系統服務以及用于執行依賴于硬件的任務的程序;·網絡通信模塊2418,其用于將基于位置的捜索系統112-G經由ー個或多個通信網絡接ロ 2404 (有線或無線)以及諸如互聯網、其它廣域網、局域網、城域網等的一個或多個通信網絡連接到其它計算機;·搜索應用2420,其針對處于位置擴增搜索系統(112-F)所提供的增強位置信息的指定范圍內的捜索結果搜索基于位置的索引;在ー些實施例中,返回指定范圍內的所有捜索結果,而在其它實施例中,所返回的結果是與增強位置最接近的N個結果;在再其它的實施例中,搜索應用返回總體而言類似于與增強位置信息相關聯的結果的捜索結果(例如,與增強位置信息相關聯的餐廳的某個范圍內的所有餐廳); 位置數據庫2422,其包括記錄2406,每個記錄包括位置信息2310,以及相關聯的其它彳目息2308 (諸如聯系/[目息、評論和圖像);·可選索引2424,其用于將記錄2406組織在位置數據庫2420中;·可選的結果排名模塊2426 (有時稱作相關性評分模塊),其用于對來自搜索應用的結果進行排名,所述排名模塊可以對來自搜索應用的每個結果分配相關性,并且如果沒有結果達到預定的最低分值,則可以向前端視覺查詢處理服務器返回指示來自該服務器系統的結果不相關的空或零值分值;和·注釋模塊2428,其用于從注釋數據庫(圖I的116)接收確定任意注釋信息是否與特定搜索應用相關的注釋信息,并且將任意所確定的注釋信息相關部分合并到相應注釋數據庫2430中。圖23和24中所示出的每個軟件元素可以存儲在一個或多個之前所提到的存儲器設備中,并且對應于用于執行以上所描述功能的指令集合。以上所標識的模塊或程序(即,指令集合)無需作為單獨的軟件程序、過程或模塊來實現,并且因此這些模塊的各個子集在各個實施例中可以進行組合或者以另外的方式重新安排。在一些實施例中,相應系統的存儲器可以存儲以上所標識的模塊和數據結構的子集。此外,相應系統的存儲器可以存儲以上沒有描述的附加模塊和數據結構。
雖然圖23和24示出了捜索系統,但是這些附圖更多地是意在作為可以在服務器集合中出現的各種特征的功能描述,而不是作為這里所描述的實施例的結構示意。實際上,并且如本領域技術人員所認識到的,単獨示出的項目可以進行組合并且ー些項目可以被分離。例如,在圖23和24中單獨示出的一些項目可以在單個服務器上實現并且單個項目可以由ー個或多個服務器實現。用來實現基于位置的捜索系統或位置擴增搜索系統的服務器的實際數量以及特征如何在它們之間進行分配可以隨實施方式而有所變化,并且可以部分取決于系統在高峰使用期間以及平均使用期間所必須處理的數據業務的數量。出于解釋的目的,已經參考特定實施例對以上描述進行了描述。然而,以上的說明性討論并非意在是窮舉的或者意在將權利要求限制為所公開的確切形式。可能基于以上教導進行許多修改和變化。實施例被選擇和描述是為了最佳地對發明原則及其實際應用進行解釋,由此使得本領域技術人員能夠適應于所預期的特定用途而對本發明以及具有各種修 改的各個實施例加以利用。
權利要求
1.一種計算機實現的處理視覺查詢的方法,包括在具有一個或多個處理器和存儲用于供所述ー個或多個處理器執行的ー個或多個程序的存儲器的服務器系統從客戶端系統接收視覺查詢;通過將所述視覺查詢發送到實現視覺查詢搜索過程的至少ー個捜索系統對所述視覺查詢進行處理;從所述至少ー個捜索系統接收多個搜索結果;識別所述視覺查詢中的實體;識別與所識別的實體相對應的一個或多個客戶端側動作;創建被配置為啟動所述一個或多個客戶端側動作中的相應客戶端側動作的可采取動作的搜索結果元素;以及將所述可采取動作的捜索結果元素以及所述多個捜索結果中的至少ー個發送到所述客戶端系統。
2.根據權利要求I的方法,其中所述可采取動作的捜索結果元素不同于所述多個搜索結果。
3.根據權利要求1-2中任ー項的方法,包括創建多個可采取動作的搜索結果用戶界面元素并且將其發送到所述客戶端系統,所述多個可采取動作的搜索結果用戶界面元素中的姆ー個被配置為啟動唯一的客戶端動作。
4.一種計算機實現的處理視覺查詢的方法,包括在具有一個或多個處理器和存儲用于供所述ー個或多個處理器執行的ー個或多個程序的存儲器的服務器系統從客戶端系統接收視覺查詢;識別所述視覺查詢中的實體;識別與所識別的實體相對應的一個或多個客戶端側動作;創建被配置為啟動所識別的一個或多個客戶端側動作中的相應客戶端側動作的可采取動作的捜索結果元素;以及將所述可采取動作的捜索結果元素發送到所述客戶端系統。
5.根據權利要求4的方法,進ー步包括識別與所識別的實體相對應的多個不同的客戶端側動作;創建兩個或更多個可采取動作的捜索結果元素,所述兩個或更多個可采取動作的捜索結果元素中的每ー個被配置為啟動所識別的多個客戶端側動作中的相應客戶端側動作;以及將所述兩個或更多個可采取動作的捜索結果元素發送到所述客戶端系統。
6.根據權利要求4-5中任ー項的方法,其中所述ー個或多個客戶端側動作中的相應客戶端側動作選自由以下所組成的群組對電話號碼發起呼叫、即時消息發送、傳呼、傳真、發送電子郵件、社交網絡通信、以及通過另ー種通信機制進行通信。
7.根據權利要求4-6中任ー項的方法,其中所述發送包括向所述客戶端系統發送所述視覺查詢的表示,所述可采取動作的捜索結果元素覆蓋所述視覺查詢的所述表示的至少ー部分。
8.根據權利要求4-6中任ー項的方法,其中所述發送包括向所述客戶端系統發送用于視覺呈現覆蓋所述視覺查詢的至少一部分的所述可采取動作的捜索結果元素的信息。
9.根據權利要求4-8中任ー項的方法,其中所識別的實體是電話號碼,并且所述可采取動作的捜索結果元素是用于對所述電話號碼發起電話呼叫的按鈕。
10.根據權利要求4-8中任ー項的方法,其中所識別的實體是電子郵件地址,并且所述可采取動作的捜索結果元素是用于向所述電子郵件地址發起電子郵件消息編寫的按鈕。
11.根據權利要求4、5、7和8中任ー項的方法,其中所識別的實體是郵政地址,并且所述可采取動作的捜索結果元素是用于對該地址繪制地圖的按鈕,其中繪制地圖包括以下的至少ー個提供識別所述郵政地址的位置的地圖、提供到所述郵政地址的行車路線指引、提供始于所述郵政地址的行車路線指引、提供包括所述郵政地址的航空照片、以及提供對應于所述郵政地址的街景圖像。
12.根據權利要求4、5、7和8中任ー項的方法,其中所識別的實體是產品,并且所述可采取動作的捜索結果元素被配置為提供以下的ー個或多個產品評論、發起購買所述產品的選項、發起對所述產品的出價的選項、類似產品的列表和相關產品的列表。
13.根據權利要求4-8中任ー項的方法,其中所識別的實體是人或者與所述人相關聯的標識符,并且所述多個捜索結果包括與所述人相關聯的通信地址,并且所述可采取動作的捜索結果元素被配置為使用所述通信地址啟動通信。
14.根據權利要求13的方法,其中所述可采取動作的捜索結果包括與所述人相關聯的標識符,并且所述標識符是所述人的姓名、所述人的面部圖像、與所述人相關聯的標識號碼、與所述人相關聯的電話號碼、與所述人相關聯的傳真號碼、與所述人相關聯的社交網絡標識符和與所述人相關聯的電子郵件地址中的ー個或多個。
15.根據權利要求4、5、6、7、8、12、13和14中任ー項的方法,其中識別所述實體包括使用非OCR圖像匹配過程來識別所述視覺查詢中的所述實體。
16.根據權利要求4、5、6、7、8、11、12、13、14和15中任ー項的方法,其中所識別的所述視覺查詢中的實體是以下的ー個或多個人、所述人的姓名或其它標識符、條形碼、標志、企業、組織、建筑物、建筑物或物理結構群組、郵政地址、地標、地理實體、產品和服務。
17.根據權利要求4-16中任ー項的方法,其中所述可采取動作的搜索結果元素被配置為向聯系人列表添加信息,其中所述信息選自由以下的一個或多個所組成的群組姓名、電子郵件地址、電話號碼、傳真號碼、郵政地址、即時消息地址、公司名稱、組織名稱、URL和社交網絡聯系人。
18.根據權利要求4-17中任ー項的方法,進ー步包括發送被配置為分享或上傳所述視覺查詢的至少一部分的可采取動作的元素。
19.一種計算機實現的處理視覺查詢的方法,包括在具有一個或多個處理器、顯示器以及存儲供所述ー個或多個處理器執行的一個或多個程序的存儲器的客戶端系統接收圖像;從所述圖像創建視覺查詢;將所述視覺查詢發送到視覺查詢搜索系統;從所述視覺查詢搜索系統接收可采取動作的捜索結果元素,所述可采取動作的搜索結果元素被配置為啟動客戶端側動作,其中所述可采取動作的捜索結果元素對應于所述視覺查詢中的實體;使用視覺查詢客戶端應用在所述顯示器上顯示所述可采取動作的捜索結果元素;接收對所述可采取動作的捜索結果元素的用戶選擇;以及在不同于所述視覺查詢客戶端應用的客戶端側應用中,啟動與所選擇的可采取動作的搜索結果元素相對應的客戶端側動作。
20.根據權利要求19的方法,其中不同于所述視覺查詢客戶端應用的所述客戶端側應用選自由以下所組成的群組電子郵件應用、瀏覽器應用、電話應用、即時消息應用、社交網絡應用和地圖應用。
21.一種用于處理視覺查詢的服務器系統,包括用于執行程序的ー個或多個中央處理單元;存儲由所述ー個或多個中央處理單元執行的一個或多個程序的存儲器;所述ー個或多個程序包括用于以下的指令從客戶端系統接收視覺查詢;通過將所述視覺查詢發送到實現視覺查詢搜索過程的至少ー個捜索系統對所述視覺查詢進行處理;從所述至少ー個捜索系統接收多個搜索結果;識別所述視覺查詢中的實體;識別與所識別的實體相對應的一個或多個客戶端側動作;創建被配置為啟動所述一個或多個客戶端側動作中的相應客戶端側動作的可采取動作的搜索結果元素;以及將所述可采取動作的捜索結果元素以及所述多個捜索結果中的至少ー個發送到所述客戶端系統。
22.一種用于處理視覺查詢的服務器系統,包括用于執行程序的ー個或多個中央處理單元;存儲由所述ー個或多個中央處理單元執行的一個或多個程序的存儲器;所述ー個或多個程序包括用于以下的指令從客戶端系統接收視覺查詢;識別所述視覺查詢中的實體;識別與所識別的實體相對應的一個或多個客戶端側動作;創建被配置為啟動所識別的一個或多個客戶端側動作中的相應客戶端側動作的可采取動作的捜索結果元素;以及將所述可采取動作的捜索結果元素發送到所述客戶端系統。
23.一種用于處理視覺查詢的客戶端系統,包括用于執行程序的ー個或多個中央處理單元;顯不器;和存儲由所述ー個或多個中央處理單元執行的一個或多個程序的存儲器;所述ー個或多個程序包括用于以下的指令接收圖像;從所述圖像創建視覺查詢;將所述視覺查詢發送到視覺查詢搜索系統;從所述視覺查詢搜索系統接收可采取動作的捜索結果元素,所述可采取動作的搜索結果元素被配置為啟動客戶端側動作,其中所述可采取動作的捜索結果元素對應于所述視覺查詢中的實體;使用視覺查詢客戶端應用在所述顯示器上顯示所述可采取動作的捜索結果元素;接收對所述可采取動作的捜索結果元素的用戶選擇;以及在不同于所述視覺查詢客戶端應用的客戶端側應用中,啟動與所選擇的可采取動作的搜索結果元素相對應的客戶端側動作。
24.一種存儲被配置為供計算機執行的一個或多個程序的非瞬時計算機可讀存儲介質,所述ー個或多個程序包括用于以下的指令從客戶端系統接收視覺查詢;通過將所述視覺查詢發送到實現視覺查詢搜索過程的至少ー個捜索系統對所述視覺查詢進行處理;從所述至少ー個捜索系統接收多個搜索結果;識別所述視覺查詢中的實體;識別與所識別的實體相對應的一個或多個客戶端側動作;創建被配置為啟動所述一個或多個客戶端側動作中的相應客戶端側動作的可采取動作的搜索結果元素;以及將所述可采取動作的捜索結果元素以及所述多個捜索結果中的至少ー個發送到所述客戶端系統。
25.一種存儲被配置為供計算機執行的一個或多個程序的非瞬時計算機可讀存儲介質,所述ー個或多個程序包括用于以下的指令從客戶端系統接收視覺查詢;識別所述視覺查詢中的實體;識別與所識別的實體相對應的一個或多個客戶端側動作;創建被配置為啟動所識別的一個或多個客戶端側動作中的相應客戶端側動作的可采取動作的捜索結果元素;以及將所述可采取動作的捜索結果元素發送到所述客戶端系統。
26.一種存儲被配置為供計算機執行的一個或多個程序的非瞬時計算機可讀存儲介質,所述ー個或多個程序包括用于以下的指令接收圖像;從所述圖像創建視覺查詢;將所述視覺查詢發送到視覺查詢搜索系統;從所述視覺查詢搜索系統接收可采取動作的捜索結果元素,所述可采取動作的搜索結果元素被配置為啟動客戶端側動作,其中所述可采取動作的捜索結果元素對應于所述視覺查詢中的實體;使用視覺查詢客戶端應用在顯示器上顯示所述可采取動作的捜索結果元素;接收對所述可采取動作的捜索結果元素的用戶選擇;以及在不同于所述視覺查詢客戶端應用的客戶端側應用中,啟動與所選擇的可采取動作的搜索結果元素相對應的客戶端側動作。
27.一種用于處理視覺查詢的服務器系統,包括用于執行程序的ー個或多個中央處理單元;存儲由所述ー個或多個中央處理單元執行的一個或多個程序的存儲器;所述ー個或多個程序包括用于執行根據權利要求1-18中任ー項的方法的指令。
28.一種用于處理視覺查詢的客戶端系統,包括用于執行程序的ー個或多個中央處理單元;顯不器;和存儲由所述ー個或多個中央處理單元執行的一個或多個程序的存儲器;所述ー個或多個程序包括用于執行根據權利要求19-20中任ー項的方法的指令
29.一種存儲被配置為供計算機執行的一個或多個程序的非瞬時計算機可讀存儲介質,所述ー個或多個程序包括用于執行根據權利要求1-18中任ー項的方法的指令。
30.一種存儲被配置為供計算機執行的一個或多個程序的非瞬時計算機可讀存儲介質,所述ー個或多個程序包括用于執行根據權利要求19-20中任ー項的方法的指令。
全文摘要
一種服務器系統接收視覺查詢并且識別該視覺查詢中的實體。該服務器系統進一步識別與所識別實體相對應的客戶端側動作并且創建被配置為啟動客戶端側動作的可采取動作的搜索結果元素。可采取動作的搜索結果元素的示例是用于發起電話呼叫、發起電子郵件消息、對地址繪制地圖、進行餐廳預訂以及提供購買產品的選項的按鈕。在視覺查詢中所識別的實體可以間接地與在與所識別實體相關聯的搜索結果中找到其聯系人地址或適當鏈接的客戶端側動作相關聯。客戶端系統接收并顯示所述可采取動作的搜索結果元素,并且在用戶選擇所述可采取動作的搜索結果元素時,啟動與視覺查詢客戶端應用不同的應用中的客戶端側動作。
文檔編號G06F17/30GK102822817SQ201080062784
公開日2012年12月12日 申請日期2010年8月12日 優先權日2009年12月2日
發明者戴維·彼得魯, 阿維·弗拉姆霍爾茨, 馬修·R·凱西, 西奧多·鮑爾 申請人:谷歌公司
網友詢問留言(yan) 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1