覺對象可以返回搜索 結果。響應于UI設備4接收到選擇預測卡16內所呈現的視覺搜索類型指示的用戶輸入, 計算設備2可以開始從一個或多個光學傳感器獲得圖像。響應于獲得圖像,UI模塊6可以 輸出相應的所獲得的圖像中的每一個以便在UI設備4進行顯示。例如,UI模塊6可以在 預測卡16和/或GUI 14的窗口內輸出圖像。該窗口可以被描述為直播窗口而使得在該直 播窗口內所呈現的圖像大致在光學傳感器獲得該圖像的時間實時或近似實時地進行呈現。
[0047] 響應于獲得該圖像,搜索模塊8還可以將每個相應圖像傳送至聯(lián)網設備(例如,聯(lián) 網服務器)以便進行圖像識別。該聯(lián)網服務器可以針對所識別的對象而對每個圖像進行分 析。所識別的對象可以是可以在視覺搜索期間針對其獲得搜索結果的對象。雖然可以將完 整分辨率的圖像傳送至聯(lián)網服務器以便進行對象識別,但是這樣的傳輸可能要求高的數據 帶寬。在一些示例中,計算設備2可以針對每個所獲得的圖像生成低分辨率圖像并且傳送 該低分辨率圖像以便進行對象識別。在其它示例中,高或低分辨率圖像可以僅被定期發(fā)送 以便進行圖像識別。由于大多數連續(xù)圖像可能包括類似對象,所以可能需要比全部更少的 圖像就足以識別出圖像內的對象。例如,計算設備2可以每秒一次、每五秒一次、每十秒一 次地傳送圖像,等等。如果圖像以高于預定圖像傳輸頻率的速率被捕捉,則計算設備2可以 選擇以傳輸頻率所獲得的圖像以便發(fā)送至網絡服務器。并未被傳送的圖像可以由UI設備 4進行呈現,在呈現之前或之后被丟棄,或者被存儲在緩沖器中以供后續(xù)使用。
[0048] 響應于識別出所接收圖像內的對象,聯(lián)網服務器可以傳送圖像內所識別的對象 (或多個所識別的對象)的指示。響應于從聯(lián)網服務器接收到一個或多個所識別的對象的 指示,UI模塊4可以輸出GUI 14以用于包括基于所識別的對象發(fā)起搜索的提示的顯示。發(fā) 起搜索的提示可以包括鄰近于呈現所獲得的圖像的窗口的可選擇圖標。在一些示例中,計 算設備2可以在UI設備4所顯示的圖像內的所識別的對象周圍疊加紅色邊框,指向所識別 的對象的箭頭,所識別的對象的文本描述,或者在圖像內所識別的對象的一些其它指示。如 果在相同圖像內識別出多個不同對象,則每個對象可以由特定于每個對象的單獨可選擇提 示所識別。以這種方式,計算設備2可以被配置為接收指定要對其進行搜索的所識別的對 象的用戶輸入。
[0049] -旦對象被識別并且相應提示在UI設備4進行顯示,計算設備2可以被配置為接 收該提示的選擇以基于與該提示相關聯(lián)的所識別的對象而發(fā)起搜索。響應于接收到對該提 示的選擇,計算設備2可以被配置為傳送圖形用戶界面中用于發(fā)起搜索的提示的指示。聯(lián) 網服務器隨后可以基于與搜索提示相關聯(lián)的圖像或圖像中的對象執(zhí)行搜索。以這種方式, 用于搜索的搜索項可以包括所獲得的圖像中的一個或多個對象。計算設備2可以從聯(lián)網服 務器接收基于與所選擇的搜索提示相關聯(lián)的一個或多個所識別的對象的至少一個搜索結 果。響應于接收到該搜索結果,搜索模塊8可以輸出該搜索結果以便在GUI 14內的UI設 備4進行顯示。在一些示例中,GUI 14可以在預測卡16或類似于預測卡16的另一個預測 卡中呈現搜索結果。計算設備2可以繼續(xù)獲得圖像以基于其它所獲得的圖像和/或圖像內 所識別的對象來執(zhí)行后續(xù)搜索。在可替換示例中,聯(lián)網服務器可以針對所獲得的圖像內識 別的任意對象自動進行搜索并且將搜索結果傳送至計算設備2以供顯示。
[0050] 雖然聯(lián)網服務器在總體上被描述為生成搜索結果,但是可替換地或除此之外,計 算設備2可以提供針對任何所選擇的搜索類型的搜索結果。例如,搜索模塊8可以被配置 為搜索計算設備2的一個或多個存儲器和/或搜索模塊8能夠經由網絡進行訪問的庫集。 以這種方式,搜索模塊8可以獲得包括從聯(lián)網庫集、聯(lián)網服務器和/或計算設備2的存儲器 所檢索到的事項的搜索結果。計算設備2可以將搜索項傳送至聯(lián)網服務器以獲得針對任意 所選擇的搜索類型的搜索結果。例如,音頻文件和/或文本串也可以被用作其相應搜索類 型的搜索項。
[0051] 這里所描述的搜索結果可以使用一個或多個搜索引擎來生成。例如,計算設備2 的搜索模塊8和/或一個或多個聯(lián)網服務器所執(zhí)行的搜索模塊可以采用一種或多種算法來 獲得與搜索項相關的信息。在一些示例中,搜索引擎可以特定于預測模塊12所預測的搜索 類型,諸如視覺搜索。搜索引擎可以在本地進行操作(例如,在計算設備2或聯(lián)網服務器) 和/或通過一個或多個網絡進行操作。
[0052] 以這種方式,本公開的技術可以使得計算設備能夠以更具指向性的方式并且在以 一般性指示(例如,"視覺搜索")呈現能力而并不考慮到計算設備2的位置的情況下相比 能力可能明顯更為清晰的環(huán)境中揭示具體的搜索能力(例如,視覺搜索能力)。本公開的技 術還使得計算設備2能夠向本來并不知道計算設備的視覺搜索能力的用戶提示視覺搜索 能力。
[0053] 本公開的各個方面可能僅在用戶已經明確啟用這樣的功能時才能夠進行操作。例 如,在用戶已經同意使用例如計算設備2的地理位置或者計算設備2的光學傳感器所獲得 的圖像的任意數據的情況下,該數據可以被用來獲得搜索類型和/或與圖像內的一個或多 個對象相關的搜索結果。用戶可以在任意時間同意任意數據的收集和/或傳輸或者撤銷同 O
[0054] 此外,本公開的各個方面可以被用戶禁用。因此,用戶可以選擇防止計算設備2收 集和/或傳送與計算設備2相關聯(lián)的位置信息、所獲得的圖像或者與計算設備2所位于或 用戶所在的位置相關的任意其它信息。此外,用戶可以防止計算設備2在沒有確認的情況 下傳送能夠識別出用戶的信息。計算設備2可以呈現請求用戶選擇傳送任意或全部信息的 一個或多個屏幕。以這種方式,用戶可以對何種信息一如果存在一被傳送至聯(lián)網服務器或 其它計算設備進行控制。更具體地,可以基于用戶的隱私偏好而對本公開的所有方面應用 隱私控制,以尊重與計算設備2或任意其它計算設備的使用或者本公開所描述的功能相關 的用戶的隱私偏好。
[0055] 圖2是圖示示例計算設備2的框圖。以下在圖1的上下文內描述圖2的計算設備 2。在其它示例中,與圖2所示的那些相比,計算設備2可以包括更少、另外或不同的組件。 例如,雖然用戶界面設備4( "UID 4")在圖2中被示為與計算設備2整合,但是在其它實 施方式中,UID 4例如可以通過有線或無線數據連接操作耦接至計算設備2。如圖2中的示 例所示,計算設備2包括UID 4、一個或多個處理器40、一個或多個輸入設備42、一個或多 個通信單元44、一個或多個輸出設備46以及一個或多個存儲設備48。在該示例中,計算設 備2的存儲設備48還包括UI模塊6、搜索模塊8、設備位置模塊10、預測模塊12和操作系 統(tǒng)52。通信信道50可以對組件4、6、8、10、12、40、42、44、46、48和52中的每一個進行互連 以便進行組件間通信(物理地、通信地和/或操作地)。在一些示例中,通信信道50可以包 括系統(tǒng)總線、網絡連接、處理間通信數據結構或者用于傳輸數據的任意其它方法。
[0056] 計算設備2的一個或多個輸入設備42可以接收輸入。輸入的示例為觸覺、音頻和 視頻輸入。在一個示例中,計算設備2的輸入設備42包括存在敏感顯示器、觸摸敏感顯示 器、鼠標、鍵盤、語音響應系統(tǒng)、視頻相機、麥克風或者用于檢測來自人或機器的輸入的任意 其它類型的設備。存在敏感顯示器可以包括存在敏感輸入設備和顯示設備。此外,輸入設 備42可以包括一個或多個光學傳感器,諸如數字相機。該一個或多個光學傳感器可以獲得 用于視覺搜索的圖像。麥克風可以獲得用于音頻搜索的音頻信息。
[0057] 計算設備2的一個或多個輸出設備46可以生成輸出。輸出的示例是觸覺、音頻和 視頻輸出。在一個示例中,計算設備2的輸出設備46包括存在敏感顯示器(其可以包括顯 示設備)、聲卡、視頻圖形適配器卡、揚聲器、陰極射線管(CRT)監(jiān)視器、液晶顯示器(LCD)或 者用于向人或機器生成輸出的任意其它類型的設備。
[0058] 計算設備2的一個或多個通信單元44可以通過在一個或多個網絡(例如,圖4的 網絡160)上傳送和/或接收網絡信號而經由該一個或多個網絡與外部設備(例如,聯(lián)網服 務器,諸如圖4的聯(lián)網服務器162)進行通信。例如,計算設備2可以使用通信單元44在諸 如蜂窩無線電網絡的無線電網絡上傳送和/或接收無線電信號。同樣,通信單元44可以 在諸如GPS網絡的衛(wèi)星網絡上傳送和/或接收衛(wèi)星信號。通信單元44的示例包括網絡接 口卡(例如,諸如以太網卡)、光學收發(fā)器、射頻收發(fā)器、GPS接收器或者能夠發(fā)送和/或接 收信息的任意其它類型的設備。通信單元44的其它示例可以包括在移動設備中所采用的 Bluetooth?、GPS、3G、4G和WiFi無線電以及通用串行總線(USB)控制器。
[0059] 圖2的UID 4可以包括存在敏感顯示器。計算設備2可以使用存在敏感顯示器作 為輸入設備和輸出設備。例如,UID 4的存在敏感顯示器包括觸摸屏(例如,存在敏感輸入 設備),其被配置為從計算設備2的用戶接收觸覺用戶輸入。UID 4的存在敏感顯示器還包 括能夠向計算設備2的用戶輸出可見信息的發(fā)光二極管(LED)顯示器(例如,顯示設備)。 UID 4可以在存在敏感顯示器上呈現用戶界面,諸如圖1的預測GUI 14,其可以與計算設備 2所提供的功能相關。例如,UID 4的存在敏感顯示器可以呈現各種功能和應用,諸如電子 消息客戶端、地圖應用、用于從互聯(lián)網訪問并下載信息的互聯(lián)網瀏覽器以及社交媒體應用。 在另一個示例中,UID 4的存在敏感顯示器可以呈現與計算設備2的功能和操作相關的選 項的菜單,諸如屏幕亮度或者其它可配置的移動電話設置。
[0060] 在一些示例中,存在敏感顯示器可以檢測位于存在敏感顯示器的屏幕和/或其附 近的物體。作為一個非限制性示例范圍,存在敏感顯示器可以檢測在該存在敏感顯示器的 物理屏幕2英寸或更少以內的諸如手指或輸入筆之類的物體。該存在敏感顯示器可以確定 在該存在敏感顯示器處或其附近檢測到該物體的位置(例如,(x,y)坐標)。在另一個非限 制性示例范圍中,存在敏感顯示器可以檢測距該存在敏感顯示器的物理屏幕6英寸或更少 的物體,并且也可能是其它示例性范圍。該存在敏感顯示器可以使用電容、電感和/或光學 識別技術來確定該物體(例如,用戶的手指)所選擇的位置。在一些示例中,如參考輸出設 備46所描述的,存在敏感顯示器使用觸覺、音頻或視頻刺激提供輸出。
[0061] 計算設備2內的一個或多個存儲設備48可以存儲在計算設備2的操作期間的使 用所需的信息。在一些示例中,存儲設備48的主要目的在于作為短期而非長期的計算機可 讀存儲介質。計算設備2上的存儲設備48可以被配置為作為易失性存儲器而進行信息的短 期存儲并且因此在其關閉時并不保留所存儲的內容。易失性存儲器的示例包括隨機存取存 儲器(RAM)、動態(tài)隨機存取存儲器(DRAM)、靜態(tài)隨機存取存儲器(SRAM)以及本領域已知的 其它形式的易失性存儲器。存儲設備48可以進一步被配置為作為非易失性存儲器空間進 行信息的長期存儲并且在電源開關周期之后保留信息。非易失性存儲器的示例包括磁性硬 盤、光盤、軟盤、閃存或者多種形式的電可編程存儲器(EPROM)或電可擦除可編程(EEPROM) 存儲器。存儲設備48可以存儲與UI模塊6、搜索模塊8、設備位置模塊10、預測模塊12和 操作系統(tǒng)52相關聯(lián)的程序指令和/或數據。
[0062] -個或多個處理器40可以在計算設備2內實施功能和/或執(zhí)行指令。例如,計算 設備2上的處理器40可以讀取并執(zhí)行由存儲設備48所存儲的執(zhí)行UI模塊6、搜索模塊8、 設備位置模塊10和預測模塊12的功能的指令。處理器40所執(zhí)行的這些指令可以使得計 算設備2在程序執(zhí)行期間在存儲設備48內存儲信息,諸如與搜索模塊8、設備位置模塊10 和預測模塊12相關聯(lián)的通知、通知對象和/或信息。處理器40可以執(zhí)行模塊6、8、10和12 的指令以確定計算設備2的地理位置,生成預測用戶界面(例如,GUI 14),執(zhí)行視覺搜索 等。也就是說,模塊6、8、10和12可以由處理器40進行操作以執(zhí)行各種動作,包括生成和 輸出預測用戶界面。在其它示例中,一個或多個處理器40可以執(zhí)行模塊6、8、10和12中的 任意一個的指令以請求聯(lián)網服務器執(zhí)行(或至少部分執(zhí)行)在這里歸于模塊6、8、10和12 的任意功能。
[0063] 如圖1中所描述的,預測模塊12可以被配置為確定與計算設備2的地理位置相關 聯(lián)的一個或多個搜索類型。例如,預測模塊12可以將計算設備2的地理位置與地理位置集 合進行比較。該地理位置集合中的地理位置可以與一種或多種搜索類型相關聯(lián)。因此,預 測模塊12可以基于該地理位置與所存儲的位置集合的比較而確定與計算設備2所位于的 地理位置相關聯(lián)的一種或多種搜索類型。地理位置集合可以存儲在存儲設備48中和/或 預測模塊12可以從聯(lián)網服務器或庫集獲得地理位置集合。
[0064] 在一些示例中,預測模塊12可以基于計算設備2的地理位置以及一個或多個附加 標準來確定一種或多種搜索類型。例如,預測模塊12可以從存儲設備48獲得計算設備2 的類型。計算設備的類型可以指示可用傳感器、處理器、存儲器或者任意其它能力。預測模 塊12隨后可以確定對應于計算設備2的地理位置以及該計算設備的類型的搜索類型。
[0065] 在一些示例中,預測模塊12可以用來確定與計算設備2所位于的地理位置相關聯(lián) 的搜索類型。在其它示例中,聯(lián)網服務器或另一個聯(lián)網設備可以確定與所確定的計算設備 2的地理位置相關聯(lián)的一種或多種搜索類型。例如,預測模塊12可以將所確定的地理位置 經由通信單元44傳送至聯(lián)網服務器