使用用戶特定內容增強可視數據流的系統的制作方法
【專利摘要】諸多用戶的用戶配置文件信息可以被存儲在與連接至網絡的服務器計算機相關聯的用戶配置文件數據庫中。基于從移動計算設備接收的信息,服務器計算機從與用戶配置文件數據庫聯接的增強信息數據庫中選擇增強信息。從移動計算設備接收的信息與移動計算設備拍攝的視頻流的幀以及這些幀所關聯的地理信息相關。增強信息還基于與移動計算設備相關聯的用戶配置文件來選擇。增強信息使用無線通信從服務器計算機傳輸至移動計算設備,并且被移動計算設備用于疊加移動計算設備所拍攝的視頻流的幀。
【專利說明】使用用戶特定內容增強可視數據流的系統
【技術領域】
[0001]本發明的實施例大體上涉及數字圖像處理領域,并且在一些實施例中具體涉及將增強信息插入視頻流中。
【背景技術】
[0002]當今在市場上能以非常便宜的價格買到各種視頻拍攝設備。這允許眾多消費者能夠在任何地方和在任何時間為任何場合拍攝視頻。典型地,所拍攝的視頻的內容局限于視頻拍攝設備的操作者可見的內容。例如,當操作者正在由于建筑物的獨特的建筑結構而攝錄建筑物時,操作者在視頻拍攝設備的取景器中或顯示器上看見的是同一建筑物的圖像,而沒有更多其它內容。
【發明內容】
[0003]對于一些實施例,隨時間捕獲關于用戶如何使用移動計算設備的信息。使用無線通信將所捕獲的信息以及移動計算設備的標識信息傳輸至服務器計算機,使得服務器計算機能夠更新與移動計算設備相關聯的用戶配置文件。提取在移動計算設備拍攝的視頻流的幀中包括的關注點的特性信息,并使用無線通信將其傳輸至服務器計算機。與所述幀相關聯的地理信息也被傳輸至所述服務器計算機。從服務器計算機接收與關注點相關并基于移動計算設備所關聯的用戶配置文件的增強信息。然后,在移動計算設備的顯示屏上與視頻流的幀一起顯示增強信息。
【專利附圖】
【附圖說明】
[0004]多個附圖涉及本發明的實施例。雖然本文描述的本發明的實施例可經歷各種修改和可替代形式,但是本發明的特定實施例在附圖中通過示例示出并且將在本文中詳細地進行描述。
[0005]圖1圖示根據一些實施例的可以使用的移動計算設備的一個示例。
[0006]圖2圖示根據一些實施例的可以用于增強所拍攝的視頻流的網絡的示例。
[0007]圖3A圖示根據一些實施例的可以用于確定對所拍攝的視頻流使用的增強信息的服務器計算機的示例。
[0008]圖3B圖示根據一些實施例的用戶配置文件信息的示例。
[0009]圖4圖示根據一些實施例的具有可以用于過濾從移動計算設備接收的信息的鏡像服務器的網絡圖示例。
[0010]圖5圖示根據一些實施例的可以在移動計算設備上執行以創建增強的視頻流的過程的示例流程圖。
[0011]圖6A圖示根據一些實施例的可以在服務器計算機上執行以確定增強信息的過程的示例流程圖。
[0012]圖6B圖示根據一些實施例的可以在服務器計算機上執行以基于用戶配置文件確定增強信息的過程的示例流程圖。
[0013]圖6C圖示根據一些實施例的可以用于基于移動計算設備所生成的啁啾信號確定距離的過程的示例流程圖。
[0014]圖7圖示根據一些實施例的IDOL服務器的一些模塊的示例框圖。
[0015]圖8圖示根據一些實施例的可以用于實現增強的視頻流的示例計算機系統。
【具體實施方式】
[0016]對于一些實施例,公開了用于基于用戶配置文件產生相關增強信息的方法。針對多個移動計算設備的用戶配置文件信息被存儲在可從網絡訪問的用戶配置文件數據庫中。使用無線通信接收來自連接至網絡的第一移動計算設備的標識信息。標識信息對應于與第一移動計算設備相關聯的用戶配置文件。使用無線通信接收包括在由第一移動計算設備拍攝的視頻流幀中的關注點的特性信息。使用無線通信還接收與來自第一移動計算設備的視頻流幀相關聯的地理信息。選擇與用戶配置文件數據庫聯接的增強信息數據庫中的相關增強信息。基于與第一移動計算設備相關聯的用戶配置文件選擇相關增強信息。相關增強信息被傳送至第一移動計算設備,以使相關增強信息可以被用于疊加視頻流的幀。
[0017]在下面的描述中,闡述諸如特定數據信號示例、組件示例、連接示例等之類的多個特定細節,以便提供本發明的透徹理解。然而,將對本領域技術人員顯而易見的是,本發明可以在沒有這些特定細節的情況下實施。在其它情況下,眾所周知的組件或方法未被詳細地描述,而是在框圖中進行描述,以便避免不必要地使本發明模糊。因此,所闡述的特定細節只是示例性的。特定細節可以根據本發明的精神和范圍改變,并且仍然被認為在本發明的精神和范圍內。
[0018]從對計算機存儲器內的數據位進行的操作的算法和符號表示的角度,呈現下面的詳細描述的一些部分。這些算法描述和表示是在數據處理領域的技術人員所使用的手段,以最有效地將它們工作的實質傳達給該領域的其它技術人員。算法在這里通常被構思為導致期望結果的自洽的一系列步驟。這些步驟是需要對物理量的物理操作的那些步驟。通常但不必須,這些量采用能夠被儲存、被傳輸、被組合、被比較和以其它方式被操縱的電信號或磁信號的形式。已經證明,主要出于通常使用的原因,有時將這些信號稱為比特、值、元素、符號、字符、項、數字等等是方便的。這些算法可以用諸如C、C++、Java或其它類似語言之類的多種不同軟件編程語言編寫。此外,算法可以用軟件中的多行代碼、以軟件配置的邏輯門或這兩者的組合來實現。在實施例中,邏輯由遵循布爾邏輯規則的電子電路、包含指令模式的軟件或這兩者的任意組合組成。
[0019]然而,應該記住,所有這些和類似術語應與合適的物理量關聯,并且僅僅是應用于這些量的方便標記。除非特別聲明,否則如從以下討論中顯而易見的,將理解在整個說明書中,使用諸如“處理”或“計算”或“運算”或“確定”或“顯示”等之類術語的討論涉及計算機系統或類似電子計算設備的動作或過程,該計算機系統或類似電子計算設備將計算機系統的寄存器和存儲器內作為物理量(電子量)表示的數據操作和轉換成計算機系統的存儲器或寄存器或其它這樣的信息存儲、傳輸或顯示設備中類似地作為物理量表示的其它數據。
[0020]本發明還涉及用于執行本文中的操作的裝置。該裝置可以是為所需用途專門構造的,或其可以包括由存儲在計算機中的計算機程序選擇性地激活或重配置的通用計算機。這樣的計算機程序可以存儲在計算機可讀存儲介質中,例如但不限于:包括軟盤、光盤、CD-ROM及磁光盤在內的任何類型的盤,只讀存儲器(ROM),隨機存取存儲器(RAM),EPROM,EEPR0M,磁卡或光卡,或任何種類的適合于存儲電子指令的介質,并且每個介質都與計算機系統總線聯接。本文描述的任何模塊或組件的部分可以用軟件中的多行代碼、軟件中配置過的邏輯門或這兩者的組合實現,并且在軟件中實現的部分被有形地存儲在計算機可讀存儲介質上。
[0021]本文提出的算法和顯示本質上不與任何特定的計算機或其它裝置相關。根據本文的教導,各種通用系統可以與程序一起使用,或構造更專業的設備來執行所需的方法框會證明是方便的。用于多種這些系統的所需結構將從下面的描述中顯現。
[0022]在示例性實施例的下面描述中,參考附圖,附圖構成本發明的一部分并且在附圖中通過圖解示出特定實施例,在這些特定實施例中能夠實施本發明。應當理解,能夠使用其它實施例且能夠在不脫離本發明實施例的范圍的情況下進行結構變化。本文使用的術語“聯接”、“連接”及“附接”是可互換的,并且包括將一個部分直接地或間接地連接至另一部分的各種形式。此外,應該理解,在一個實施例中描述的一個或多個結構特征可以在不同實施例中實現,即便未特別地被提到為不同實施例的特征。
[0023]SM
[0024]本發明的實施例提供一種合并兩個或更多個數據源的可擴展方法,該方法包括使用可視信息來觸發增強和使用地理位置來允許所拍攝的視頻流的高級增強。由視頻流提供的信息典型地局限于用戶可見的或可聽的信息,例如幾何形狀、與該形狀關聯的顏色圖案、與該視頻流中的對象關聯的符號和其它特征。可能存在與視頻流中的場景關聯的未被傳達至用戶的深入得多的信息。單獨使用與關注點或對象有關的可視信息或特性信息來增強視頻流可能是有用的,但在可視信息或特性信息的量大時可能是不足夠的或不可擴展的。單獨使用地理信息可能不允許增強視頻流中的場景的特定對象或景物。
[0025]將可視信息和地理信息結合可以允許對已知的且預存儲在對象數據庫中的對象的特性的快速識別或匹配。該地理信息可以由全球定位系統(GPS)提供。將可視信息與地理信息結合可以減少為辨別和識別已知對象和/或人而需要由服務器計算機整理的可能關注點的量。來自GPS的粗略地理信息減少需要被整理為那個區域中已知對象的可能匹配的可能關注點的量。進一步,與移動計算設備的攝像頭在拍攝視頻流時面向何處有關的方向信息也被傳輸至服務器計算機。該方向信息連同那個幀中的關注點的特征可以由移動計算設備中的內置指南針或方向傳感器提供給服務器計算機。所有這些有助于通過將從移動計算設備傳輸的特性信息與在數據庫中存儲的已知對象進行比較來減少數量龐大的潛在景物,這構成可擴展且可管理的系統。
[0026]移動計算設備和增強的視頻流的生成
[0027]圖1圖示根據一些實施例的可以使用的移動計算設備的一個示例。移動計算設備100可以包括顯示模塊105、通信模塊110、全球定位系統(GPS)模塊115、視頻拍攝模塊120、處理器125和存儲器130。移動計算設備100可以是例如移動電話、筆記本電腦、上網本、觸摸板或任何其它類似設備。移動計算設備100與網絡200 (見圖2)協作,以基于地理和可視信息的結合供應移動計算設備100中的視頻流的幀中的所拍攝關注點的增強信息。移動計算設備100包括移動計算設備100上的視頻處理模塊135,以幫助辨別每個視頻幀中的所拍攝對象然后將增強信息插入視頻流的幀中。
[0028]通信模塊110可以用于允許移動計算設備100與網絡(例如網絡200 (見圖2))連接。通信模塊110可以被配置為使移動計算設備100能夠使用無線通信協議或任何其它適合的通信協議與網絡200連接。例如,通信模塊110可以包括無線保真(W1-Fi)模塊111、藍牙模塊112、寬帶模塊113、短消息服務(SMS)模塊114等等。如將描述的,通信模塊110可以被配置為將與視頻流關聯的可視信息從移動計算設備100傳送至與網絡200連接的一個或多個服務器計算機。
[0029]GPS模塊115可以用于使用戶能夠獲得從一個位置至另一位置的方向。GPS模塊115還可以用于使能生成地理信息,并將地理信息與視頻流的圖像和幀關聯。該過程典型地被稱為地理標記(geotagging)。當移動計算設備100用于拍攝視頻流時,地理信息可以被插入視頻流的一個或多個幀中。地理信息可以被插入并與由移動計算設備100生成的圖像、視頻流以及文本消息一起被存儲。地理信息可以被存儲為元數據,并且可以包括緯度坐標和經度坐標。例如,用于地理特定位置的標記和增強的服務器系統能夠,通過使用與圖像關聯或與圖像一起存儲的緯度坐標和經度坐標,使用那個圖像中的建筑物的位置,并且使用建筑物的其它區別性特征,來確定在視頻流中出現什么對象。
[0030]視頻拍攝模塊120可以被配置為拍攝圖像或視頻流。視頻拍攝模塊120可以與攝像頭121關聯,并可以使用戶能拍攝圖像和/或視頻流。視頻拍攝模塊120可以與方向傳感器122關聯,以感應攝像頭121正指向的方向。攝像頭121可以是內置的攝像頭。
[0031]顯示模塊105可以被配置為顯示由視頻拍攝模塊120拍攝的圖像和/或視頻流。對于一些實施例,顯示模塊105可以被配置為顯示已經用存儲在網絡中的數據庫中的增強信息增強后的圖像和/或視頻流。顯示模塊105可以與顯示屏106關聯。
[0032]存儲器130可以包括內部存儲器和擴展存儲器。例如,內部存儲器可以包括只讀存儲器(ROM)和隨機存取存儲器(RAM),并且擴展存儲器可以包括閃存。存儲器130可以用于存儲操作系統(OS)和各種其它應用程序,各種其它應用程序包括例如生產應用程序、娛樂應用程序、通信應用程序、圖像和/或視頻處理應用程序、用戶接口應用程序等。處理器125可以被配置為運行與OS、網絡瀏覽器和各種應用程序關聯的指令。OS的一些示例可以包括來自谷歌的安卓、來自蘋果的iOS、來自微軟的Windows Phone和來自Palm/HP的WebOS等等。網絡瀏覽器可以由移動計算設備100用來允許用戶使用網絡200訪問網站。
[0033]對于一些實施例,移動計算設備100可以包括視頻處理模塊135,視頻處理模塊135被配置為處理由視頻拍攝模塊120拍攝的圖像和/或視頻流。視頻處理模塊135可以分析所拍攝的視頻流的幀,并辨別所拍攝的視頻流的每個幀中的對象/關注點。辨別對象的關注點可以包括將該對象分解為幾何形狀和區別性特征。該操作可以適用于一組對象,該組中的每個對象被分解成不同幾何形狀和相關聯的區別性特征。
[0034]對由攝像頭121拍攝的每個幀,視頻處理模塊135可以使用提取算法來辨別幀中關注點的特征,并提取這些特征以及地理信息和其它相關信息,并且將具有與那個幀有關的信息的數據包傳輸至服務器計算機(見圖3A)。視頻處理模塊135可以生成關注點的幾何形狀的X-Y坐標的圖案和與這些形狀關聯的顏色。視頻處理模塊135可以從與攝像頭121關聯的指南針或方向傳感器122提取方向信息,以確定在拍攝視頻流中的幀時攝像頭121面對的方向。由方向傳感器122提供的方向信息可以包括北、南、東、西、上、下和任何可能相關的組合(例如西北且從水平面向上20度等)。對于一些實施例,用于關注點的點的圖案、所使用的點的數量和關注點的數量可能取決于幀中的不同關注點的數量。幀中非中心的或外圍的對象、小對象和非區別性對象能夠被提取算法過濾掉,而僅關注點上明顯的和區別性的特征可以被提取。
[0035]視頻處理模塊135可以分析視頻流中的每個拍攝的幀。視頻處理模塊135可以使來自該系列幀的圖案相關以幫助確定對象/關注點是什么。視頻處理模塊135可以使來自該系列幀的圖案相關以幫助使關注點的特征能更快傳輸。對于一些實施例,如果先前傳輸的特定幀的特征不存在變化,則不需要傳輸相同的特征。對于一些實施例,如果當前幀包括不同于先前幀的特征,那么僅傳輸特征變化的差異。
[0036]對于一些實施例,對象/關注點可以通常位于幀的中心區域。可以注意到,所拍攝的視頻流的特定連續幀可以在中心區域具有相同對象,或至少在該系列連續幀中包含相同對象。視頻處理模塊135可以分析這些幀,以辨別該對象的特性或可視信息。由于視頻拍攝模塊135繼續拍攝視頻流,所以視頻處理模塊135可能可以辨別很多不同對象。
[0037]視頻處理模塊135可以執行基本場景分析,基本場景分析包括使用光學字符識別(OCR)提取所拍攝的視頻流的幀中的關注點的區別性特征,利用那個特征的關聯的區別性顏色和圖案信息將它們編碼為用于幾何形狀格式的X-Y坐標的小圖案。視頻處理模塊135可以辨別那個對象的地理信息和關于那個對象的其它已知區別性特征。對于一些實施例,由移動計算設備100傳輸至服務器計算機的信息可能呈文本格式。
[0038]上述由視頻處理模塊135執行的操作能夠用來最小化被傳輸至服務器的文件大小,且加速通過服務器進行的關注點的近實時識別和增強信息向移動計算設備100的近實時傳輸。視頻處理模塊135不是試圖傳輸JPEG或MPEG類型文件,而是辨別并提取區別性特征,區別性特征包括與視頻幀中的對象/關注點關聯的形狀、形狀的點對點型X-Y坐標、圖案顏色、字母數字、符號等等,以最小化被傳輸至服務器計算機的文件大小,且加速通過服務器計算機進行的關注點的近實時識別和增強信息向移動計算設備100的近實時傳輸。增強信息應被疊加在關注點上或在關注點上被高亮,因此用戶能夠激活來查看和/或收聽對所拍攝的視頻流疊加的增強信息。隨著傳輸速度提高,整個圖像可以被連續地傳輸至服務器計算機。可用來減少移動計算設備100和服務器計算機之間傳輸的信息量的其它技術,可以包括以黑白灰度傳輸彩色圖像、傳輸減少的每英寸點數(DPI)圖像等。
[0039]對于一些實施例,幀中的關注點可以與人相關。視頻處理模塊135可以被配置為分析所拍攝的視頻流的幀,并辨別可能位于幀的中心區域的人的面部特性或可視信息。由于視頻處理模塊135分析所拍攝的視頻流的許多幀,所以視頻處理模塊135可能可以辨別許多不同的人。
[0040]視頻處理模塊135可以包括壓縮解壓縮(編解碼器)模塊136。對于一些實施例,編解碼器136可以將所拍攝的視頻流壓縮成DivX格式。DivX是由加利福尼亞的圣地亞哥的DivX有限責任公司開發的視頻壓縮技術。DivX格式也許能使用戶快速播放和創建高品質的視頻流。DivX編解碼器因它的質量、速度和效率而成為流行的基于動態圖像專家組-4(MPEG-4)的編解碼器。作為一種DivX編解碼器,編解碼器136可以使所拍攝的視頻流和/或對象/關注點的所辨別的特征或特性信息能夠被快速地傳輸至通信帶寬受限(例如無線通信)的服務器計算機。還可以使用能夠將信息從移動計算設備快速傳輸至服務器計算機的其它技術。例如,不是以圖像或所拍攝的視頻流的原來顏色傳輸該圖像或視頻流,而是可以執行轉換來將該圖像或所拍攝的視頻流從彩色轉換為黑白色,以減少要傳遞的信息的大小。
[0041]啁啾信號傳輸、檢測、位置估算
[0042]與服務器計算機有一些潛在交互的移動計算設備100可以使用音頻和/或可視信息來檢測并確定一個或多個移動計算設備的空間準確位置。對于一些實施例,移動計算設備100可以包括音頻處理模塊140,以處理音頻信息。音頻處理模塊140可以包括啁啾(chirp)信號生成模塊141和揚聲器142。啁啾信號生成模塊141可以被配置為以特定頻率模式(例如高頻噪聲、低頻噪聲)傳輸啁啾信號。啁啾信號可以由移動計算設備100傳輸和由位于附近的另一移動計算設備接收。傳輸啁啾信號時與接收該啁啾信號時之間的時間間隔可以用來估算這兩個移動計算設備距離彼此多遠。在該示例中,第一移動計算設備可以傳輸其自己的啁啾信號,并且可以接收由第二移動計算設備傳輸的啁啾信號。高頻信號和低頻信號之間的差異可以用來確定啁啾從第一(或發送)移動計算設備和第二 (或接收)移動計算設備所行進的距離。
[0043]在可替代方案中,移動計算設備可以傳輸時間戳通知至服務器計算機300,以表示已經傳輸啁啾信號。另一移動計算設備可以傳輸時間戳通知至服務器計算機300,以表示已接收或檢測到啁啾信號。然后,服務器計算機300基于傳輸通知和接收通知之間的時間差計算這兩個移動計算設備之間的距離。對于一些實施例,啁啾信號的傳輸和接收可以用于將兩個移動計算設備的兩個用戶向彼此引導。可以注意,基于與這兩個移動計算設備關聯的標識信息,服務器計算機300可能已經知道使用這兩個移動計算設備的用戶的標識。
[0044]移動計算設備100是支持音頻/視頻的設備(例如iPhone)。啁啾信號生成模塊141允許持有移動計算設備100的用戶檢測并定位附近持有類似移動計算設備的其它用戶。基于傳輸和接收啁啾信號的兩個移動計算設備或基于使用面部識別引擎320(見圖3A),音頻處理模塊140可以允許檢測附近的人。
[0045]對于一些實施例,一種可以使用的基于音頻信號的距離計算方法如下。這兩個移動計算設備向彼此傳輸/廣播啁啾信號,以算出它們之間的距離。第三移動計算設備也能夠收聽并辨別來自其它兩個移動計算設備的兩個啁啾信號,從而使能夠計算精確位置(使用X-Y坐標)。
[0046]如所討論的,啁啾信號頻率用于檢測兩個用戶的接近度。這兩個移動計算設備依次廣播啁啾信號。當廣播和檢測啁啾信號時,每個具有其麥克風和/或音頻接收器的移動計算設備記錄/檢測時間。基于這些時間值,計算這兩個移動計算設備之間的距離。一個移動計算設備的音頻處理模塊140被配置為計算至另一移動計算設備(或持有該設備的用戶)的距離。可替代地,當采用第三觀察移動計算設備(被置于預定位置)時,音頻處理模塊140還允許計算另一人的準確位置(準確距離和方向)。音頻處理模塊140被配置為對所有三個移動計算設備的位置進行三角測量。然后,音頻處理模塊140通過指明方向和距離的文本生成另一移動計算設備的近似方向。
[0047]音頻處理模塊140可以向在移動計算設備上播放的視頻流中插入箭頭。該箭頭可以表示指示移動計算設備的用戶為到達另一人而應當行走的方向。該方向信息可以疊加到在顯示屏上觀看的視頻流。如前所介紹的,當面部識別操作的使用可能是不可能的時,可替代實現可以使用來自兩個移動計算設備并被傳送至服務器計算機300的通知信號來確定移動計算設備之間的距離。該通知可以由音頻處理模塊140生成,以使用戶能夠辨別并定位相同附近的其它移動計算設備或用戶。
[0048]音頻處理模塊140可以包括編碼算法,該編碼算法使能夠在一組音頻頻率下生成啁啾模式并且檢測啁啾信號。該算法還使能夠確定從當前移動計算設備至傳輸或廣播檢測到的啁啾信號的移動計算設備的距離。由于聲音回聲路徑,算法還被用于使距離計算誤差最小化。不是生成超過標準移動計算設備的揚聲器系統和麥克風系統的操作能力/范圍的高頻/低頻信號來避免背景噪聲,啁啾信號可以是在麥克風和揚聲器系統的標準范圍內的一系列高頻率和低頻率突發脈沖,但是在那些頻率下的突發脈沖序列實際上不會自然地發生。音頻處理模塊140具有信號處理過濾器,以特別地尋找那些頻率下的那個圖案來辨別何時檢測到啁啾信號和這兩個移動計算設備之間的距離是多少。
[0049]對于一些實施例,當移動計算設備100正在拍攝視頻場景時,視頻流被傳輸至服務器計算機300,并由服務器計算機300分析來進行面部識別。可替代地,所期望用戶的標識被傳輸至服務器計算機300,并且圖像和不同的視圖被傳輸至移動計算設備。因此,服務器計算機300將用于面部識別的照片存儲在面部識別數據庫340中,并且向移動計算設備100傳輸面部識別圖像/ 一組圖像,該面部識別圖像/ 一組圖像的前側、右側和左側輪廓要由視頻處理模塊135匹配,這使移動計算設備100的視頻處理模塊135的面部識別更快速且更容易。可以注意,著眼于像膚色這樣的特征和像眼睛這樣的面部特征的一種或多種快速面部識別軟件可以被并入視頻處理模塊135中。
[0050]這個過程在諸如酒吧、競技場或主題公園、初次會見和問候等之類的大型嘈雜公共場所中可能是有用的。基于聲音的距離計算和場景分析的集成允許創建動態形成的移動社區。該系統自動地創建移動社區,使用戶能夠與具有類似關注的人聯系,否則他們永遠不會見面。在某人附近的具有類似配置文件的用戶將被提示并給予與另一用戶見面的方向。
[0051]移動計算設備100可以包括被配置為在網絡中給移動計算設備100提供唯一標識的標識模塊150。標識模塊150可以是用戶標識模塊(SIM)。
[0052]盡管在圖1中未示出,但是移動計算設備100可以包括電源(例如電池)、用戶標識模塊(SM)、鍵盤(雖然可以實現軟鍵盤)、輸入/輸出接口(例如視頻、音頻端口)、外部電源連接器、外部存儲器連接器、天線、揚聲器等。應注意,盡管在本文的示例中使用移動計算設備100,但是具有類似特征的非移動設備也可以用于傳輸可視信息和接收增強信息。
[0053]具有移動計算設備和服務器計算機的網絡環境
[0054]圖2圖示根據一些實施例的可以用于增強所拍攝的視頻流的網絡的示例。網絡200可以是互聯網。多個服務器計算機205A-205C和多個移動計算設備210A-210D可以連接至網絡200。服務器計算機205A-205C中的每個服務器計算機分別可以與數據庫206A-206C關聯。移動計算設備210A-210D可以被稱為移動計算設備。本示例中圖示的網絡環境可以被稱為客戶機-服務器環境。客戶機-服務器關系允許在全世界任何位置觸發移動計算設備205A-205C的操作,并用加強用戶對真實世界的視角的有用信息來增強任何所拍攝的視頻流。應注意,在本示例中圖示的移動計算設備、服務器計算機和數據庫的數量僅用于說明目的,而不意在限制。全世界可以存在許多服務器計算機和數據庫來為更多移動計算設備提供服務,是在本發明實施例的范圍內的。[0055]移動計算設備210A-210D可以包括與圖1中描述的移動計算設備100類似的特征。服務器計算機205A-205C可以包括通信模塊和關聯的應用程序,通信模塊和關聯的應用程序允許服務器計算機與網絡200連接并與移動計算設備210A-210D交換信息。例如,使用移動計算設備210A的用戶可以與包含嵌入式應用的網頁交互,然后向該應用所關聯的用戶界面所呈現的查詢/域和/或服務提供輸入。在支持超文本標記語言(HTML)或無線接入協議(WAP)或任何其等價物的移動計算設備205A上,網頁可以由服務器計算機205A服務。移動計算設備205A可以包括瀏覽器軟件(例如Internet Explorer、火狐(Firefox)),以訪問由服務器計算機205A服務的網頁。
[0056]服務器計算機和增強信息的選擇
[0057]圖3A圖示根據一些實施例的可以用于確定對所拍攝的視頻流使用的增強信息的服務器計算機的示例。服務器計算機300可以包括通信模塊(未示出),以允許該服務器計算機連接至網絡,例如圖2中圖示的網絡200。服務器計算機300還可以包括服務器應用程序,服務器應用程序允許該服務器計算機與包括例如移動計算設備100在內的一個或多個移動計算設備通信。在服務器計算機300和移動計算設備100之間可以建立通信會話,以使能夠從移動計算設備100接收可視信息306并向移動計算設備100傳輸增強信息391。對于一些實施例,服務器計算機300可以與對象數據庫300、面部識別數據庫340和增強信息數據庫350聯接。
[0058]如所討論的,客戶機模塊使用提取算法來辨別那個幀中的關注點的特征,提取那些特征連同諸如地理信息、指南針方向及其它相關信息之類的數據,并且將具有與那個幀有關的信息的數據包傳輸至IDOL服務器。IDOL服務器具有知識庫和分布式計算能力,以辨別關注點。IDOL服務器能夠分析視頻流中出現的一系列幀,并且使用該信息來將關注點的所傳輸特征與數據庫中的已知對象或圖像相匹配。大約與對象識別引擎310層次化地過濾或減少與所傳輸的特征匹配的可能已知圖像/對象同時,增強引擎325準備并選擇要被傳回移動計算設備100上的視頻處理模塊135以便顯示的增強信息。
[0059]增強引擎325具有數據庫,該數據庫具有準備的要疊加到幀中的已知關注點上的增強信息(例如視頻文件、廣告、鏈接等)。基于潛在的與那個用戶相關的內容,增強引擎325減少要添加至視頻文件中的可能疊加。當對象識別引擎310確定對象是什么時,增強引擎325能夠開始向移動計算設備100傳輸潛在的大文件,例如視頻文件及廣告。另外,增強引擎325能夠在辨別關注點以后,開始傳輸視頻文件、廣告和圖像、文本消息、至相關網頁的鏈接等。然后,視頻處理模塊135將增強信息疊加到視頻流的幀上。增強信息可以是文本消息或關注點的高亮。用戶能夠選擇激活被高亮的關注點,以查看與在移動計算設備100的顯示屏106上顯示的視頻文件的幀相關聯的增強信息。
[0060]對象數據庫300可以被配置為存儲與一組已知對象相關的信息。該信息可以描述已知對象的不同特性。這可以包括地理信息、顏色信息、圖案信息等等。通常,對象的特性可以包括與該對象有關的可以用于辨別該對象且將該對象識別為已知對象的任何信息。例如,坐落在舊金山商業區的百老匯大街第四街道的角落的辦公樓,可以基于其獨特的金字塔形建筑結構和橙色來辨別。可以注意到,對象數據庫330在其被配置為存儲關于許多對象或許多組對象的信息時可以是大型數據庫。可以使用許多技術來生成關于對象的信息。例如,信息可以由人生成,或者信息可以由專用計算機程序生成,該專用計算機程序被編碼為掃描彩色圖像并生成包含在圖像中的對象的列表及其特性。
[0061]對于一些實施例,面部識別數據庫340可以存儲與一組已知的人有關的面部識別信息。與該組中每個人有關的面部識別信息可以事先生成并存儲在面部識別數據庫340中。面部識別數據庫340在其被配置為存儲與許多人有關的面部識別信息時可以是大型數據庫。可以使用許多技術來生成和存儲面部識別信息。例如,一人使用面部識別應用程序來生成自己的面部識別信息,并且請求將其自己的面部識別信息存儲在面部識別數據庫340 中。
[0062]對于一些實施例,增強信息數據庫340可以被配置為存儲可被插入所拍攝的視頻流305中的信息。該信息可以包括標識信息(例如大學)、廣告信息(例如餐廳優惠券)、鏈接信息(例如餐廳網站的URL鏈接)和面部信息(例如鮑勃?史密斯)等等。可以為同一對象存儲不同類型的增強信息。對于一些實施例,服務器計算機300可以包括對象識別引擎310、面部識別引擎320和增強引擎325。
[0063]對象識別引擎310可以被配置為從移動計算設備100接收對象的特性。對象識別引擎310能夠被配置為利用跨越多個服務器的分布式工作負荷計算,以提高與視頻處理模塊135所傳輸的特性信息相比過濾對象數據庫330中存儲的已知圖像的速度。對象識別引擎310可以使用包含在所拍攝的視頻流305的幀中的地理信息和存儲在對象數據庫330中的信息來識別對象。例如,位于緯度坐標X和經度坐標Y處的具有金字塔形狀的黃色建筑物可以被識別為國家金融大廈。對于一些實施例,對象識別引擎310可以使用一組過濾器,并將這些過濾器應用于從移動計算設備100接收的特性或可視信息,以確定它是否能夠識別該對象是什么或該人是誰。由于所拍攝的視頻流305包括一系列在時間上和近似位置上密切相關的幀,所以這些幀通常包括相同的對象和/或人,并且特性/可視信息可以具有所辨別的對象(或關注點)的主要特征的相同圖案。這可以幫助對象識別引擎310減少對象數據庫330中可利用的匹配選項。例如,對象識別引擎310可以將關注點的區別性特征識別為電影的廣告牌或海報、餐廳(例如麥當勞)、建筑物(例如辦公室)、歷史地標、住宅等。
[0064]面部識別引擎320可以被配置為從移動計算設備100接收人的面部特性。面部識別引擎320可以使用包含在所拍攝的視頻流305的幀中的地理信息和存儲在面部識別數據庫340中的信息來辨別和識別人。對于一些實施例,面部識別引擎320還可以使用包含在幀中的地理信息來辨別所識別的人的位置,以用于方向用途。
[0065]增強引擎325可以被配置為從對象識別引擎310和/或面部識別引擎320接收結果,來確定如何選擇要傳輸至移動計算設備110的適合的增強信息,以增強原始視頻文件中被辨別的對象,并且被配置為從增強信息數據庫350中選擇增強信息391。增強信息391可以與對象識別引擎310和/或面部識別引擎320所識別的對象或人相關。通常,增強信息391可以包括能提供與包含在所拍攝的視頻流305的幀中的對象和/或人有關的深入信息或內容的任何信息。例如,增強信息391可包括各個建筑物內的食品機構的列表、對特殊生意的用戶評論的鏈接、對網頁的鏈接等。增強引擎325可以選擇與用戶最相關的增強信息。例如,對象可以是具有許多不同商行的辦公樓,并且對象數據庫330可以包括與每個商行關聯的增強信息。但是,可以僅選擇與藝廊關聯的增強信息,因為移動計算設備100的用戶或操作者的配置文件可能表示該用戶只關注現代藝術。
[0066]然后,所選擇的增強信息391可以被傳輸至移動計算設備100,并且被視頻處理模塊135用來生成增強的視頻流390。然后,增強的視頻流390可以由用戶觀看或由可能存在于移動計算設備100上的任何其它應用程序使用。拍攝視頻流、處理所拍攝的視頻流、識別所拍攝的視頻流中的對象和/或人、增強所拍攝的視頻流以及向用戶或其它應用程序呈現增強的視頻流的操作實時發生,是在本發明的實施例的范圍內的。例如,用戶可以拍攝視頻流305并且幾乎瞬間看見在移動計算設備100的顯示屏幕106上顯示的增強的視頻流390。
[0067]對于一些實施例,增強信息可以包括圖形信息和/或音頻信息。圖形增強信息可以疊加所拍攝的視頻流305的幀。音頻增強信息可以通過移動計算設備100的揚聲器142聽見。因此,移動計算設備100上的視頻處理模塊135辨別由攝像頭120拍攝的視頻流的每個幀中的一個或多個關注點的主要特征,將那些辨別出的關注點傳輸至服務器計算機300,并且在顯不屏106上顯不在原始拍攝的視頻流上I)置加、2)聞売或3)置加和聞売的增強信息,和/或與原始拍攝的視頻流一起通過移動計算設備100的揚聲器142輸出增強信息的音頻部分。
[0068]對于一些實施例,在對象識別引擎310和/或面部識別引擎320辨別對象時,增強引擎325可以開始傳輸潛在大的增強信息391 (例如視頻文件、廣告、圖像等)。另外,增強引擎325可以在辨別出關注點和對象以后開始傳輸增強信息391。然后,視頻處理模塊135可以將增強信息疊加到視頻流上。對于一些實施例,用戶可以有查看所拍攝視頻流的原樣的選擇權,或者用戶可以選擇查看相應的增強的視頻流。
[0069]對于一些實施例,服務器計算機300可以被實現為使用加利福尼亞州舊金山的Autonomy公司的智能數據操作層(IDOL)軟件產品及關聯系統的智能數據操作層(IDOL)月艮務器。該IDOL服務器從自各種源的連接器收集索引數據來訓練這些引擎,并將索引數據存儲為其為數據的快速處理和檢索而優化的專有結構。作為信息處理層,IDOL形成對企業中所有內容的概念的和上下文的理解,自動分析來自超過數千種不同內容格式及甚至人們關注的任一條信息。IDOL能夠對數字 內容進行數百個操作,這些操作包括超鏈接、代理、歸納、分類生成、聚類、推斷、剖析、提示和檢索。IDOL服務器具有知識庫,并與視頻處理模塊135所傳輸的特征圖案相互關聯。圖7圖示在IDOL服務器中包含的模塊的示例。
[0070]IDOL服務器使組織能受益于自動化而不喪失人工控制。這種互補方法允許自動處理與人可控制的多種代用相結合,提供兩全其美且從來不需要“要么…/要么…”的選擇。IDOL服務器集成所有已知的歷史系統,省去對拼湊多個系統來支持它們完全不同的組件的組織的需要。
[0071]IDOL服務器可以與IDOL連接器關聯,IDOL連接器能夠連接數百個內容貯存庫和支持超過數千種文件格式。這提供將任何形式的結構化的、半結構化的和非結構化的數據聚合并索引到單一索引內的能力,而不管該文件駐留在哪里。全面的一組連接器能夠支持對所有企業信息(包括富媒體)的單點搜索,為組織節約大量時間和金錢。通過幾乎訪問每一條內容,IDOL為組織的數據資產提供360度的查看。
[0072]IDOL服務器實現上下文感知的概念技術,并且使用深度音頻和視頻索引技術來尋找最相關的產品,最相關的產品包括音樂、游戲和視頻。IDOL服務器在沒有人工輸入的情況下自動分類內容來提供直觀導航。IDOL服務器還生成至概念上類似的內容的鏈接,而不需要用戶搜索。可以用自由文本描述和樣品圖像(例如產品的快照)訓練IDOL服務器。業務控制臺提供關于查詢模式的、人氣和點擊率的實時度量,這允許操作者響應于改變的需求而配置環境、設置提升和調整相關度。
[0073]對于一些實施例,移動計算設備100的視頻處理模塊135可以辨別對象和/或人的特性,然后致使那個信息被實時傳輸至IDOL服務器。因此,有可能在服務器計算機300的增強引擎325對第一組幀執行其操作時,移動計算設備100的視頻處理模塊135可以對第二組幀執行其操作,并且第三組幀連同關聯的增強信息可以在顯示屏106上顯示。
[0074]用戶配置文件信肩、和相關增強信肩、的選擇
[0075]圖3B圖示根據一些實施例的可以用于確定對所拍攝的視頻流使用的增強信息的服務器計算機的示例。服務器計算機300中包含的組件可以是除圖3A中所示的組件以外的組件。這包括用戶配置文件引擎328和用戶配置文件數據庫360。通過維護用戶配置文件,服務器計算機300可以利用關于視頻流的每個幀中的辨別的關注點的、與主管視頻處理模塊135的特定移動計算設備的用戶更相關的增強信息,來增強這些辨別的關注點。
[0076]對于一些實施例,本文描述的系統利用關于視頻流的每個幀中的辨別的關注點的、與主管視頻處理應用135的特定移動計算設備的用戶更相關的增強信息(圖形信息或音頻信息)來增強每個辨別的關注點。能夠供應的增強信息的類型被存儲在增強信息數據庫350中。在選擇要對視頻流使用的增強信息的過程中,服務器計算機300使用移動計算設備的用戶特定信息。
[0077]對于一些實施例,移動計算設備100可以與獨特的標識信息相關聯。該獨特的標識信息可以與移動計算設備100的用戶標識模塊(SIM) 150相關聯。獨特的標識信息可以由用戶提供。獨特的標識信息可以由服務器計算機300使用,從而在用戶配置文件數據庫360中建立特定用戶或移動計算設備的用戶配置文件。用戶配置文件信息可以基于怎樣使用移動計算設備而產生。隨后可以使用相同的獨特的標識信息來檢索用戶配置文件信息。
[0078]當用戶使用移動計算設備100時,視頻處理模塊135捕獲用戶的習慣,并將捕獲的信息用作用戶配置文件信息。例如,當用戶正在拍攝視頻流、瀏覽互聯網和撥打電話號碼等時,可以捕獲用戶習慣。用戶配置文件信息可以包括常常呼叫的電話號碼、經常訪問的網站、購買的產品種類、用戶的年齡和性別、家庭的城市和地址信息等。用戶特定信息的使用以及隨時間自動更新和完善用戶配置文件信息的能力,對于增強信息的準確提供和靶定是非常重要的,并且將該技術與所有前身區分開。
[0079]視頻處理模塊135將關注點的特征和可視信息的組合連同用戶個人的配置文件傳輸至服務器計算機300,并且將附加的多條信息傳輸至服務器計算機300。然后,服務器計算機300使用對視頻流305中具有在那個位置和那時時間與那個用戶具有特別相關性的信息的幀來確定視頻流305中的幀的增強信息。用戶特定的方面能夠自動訓練和更新那個用戶的用戶配置文件,這允許提供更多相關信息。由于每個用戶利用該增強視頻流的系統,所以關于他的使用的信息可以被用于建立代表示他的關注關注、人口特征和/或特定具體使用模式的用戶“配置文件”。隨后,用戶的移動計算設備100能夠被部署來為從攝像頭搜集信息和視頻流,并且將所收集的信息傳輸至服務器計算機300。這可用于確定在那個特定時間為針對那個用戶向該可以被用于系統做出的最相關的增強信息,以及并用于使用增強具有附加的可視的或視聽的對象或圖像來增強的視頻流305。因此,維護“用戶配置文件”的數據庫以表示每個用戶的關注、人口特征和/或具體使用模式,在確定什么類型的內容來增強移動設備上拍攝的視頻文件的幀中的關注點時,“用戶配置文件”的數據庫可以被增強引擎所引用。
[0080]用戶配置文件數據庫360被維護以表示每個用戶的配置文件,包括用戶的關注、人口特征和/或具體使用模式,在確定何種增強信息來增強移動計算設備100上所拍攝的視頻流的幀中的關注點時,用戶配置文件引擎328和增強引擎325可以引用用戶配置文件數據庫360。增強引擎325可以具有一組例如二十或更多種不同的增強關注點的方式,無論是向如連鎖餐廳這樣的一類已知對象應用的一般增強信息,或是僅僅應用于已知對象的特定內容的增強信息,還是從歷史關注點的廣告、相關網頁的鏈節、街道地址的疊加、電話號碼、建筑物中的商鋪列表到諸如被創建以加強對象的動畫之類的加強的增強信息的不同主題。
[0081]用戶配置文件引擎328幫助增強引擎325確定選擇并向移動計算設備100傳輸哪個增強信息來加入由移動計算設備100拍攝的視頻流的幀中。在實施例中,IDOL服務器系統可以自動地規劃用戶彼此交互以及與他們的移動計算設備上的信息交互的方式,建立他們的關注和位置的概念性理解以提供量身定制的商業內容。一發布新的音軌和相關產品,IDOL服務器就提供自動通知,或者提供位置特定的信息(例如交通報告和最新新聞),而不需要用戶搜索。
_2] 服務器鏡像和分布式處理
[0083]圖4圖示根據一些實施例的具有可以用于過濾從移動計算設備接收的信息的鏡像服務器的網絡圖的示例。連接至網絡200的服務器計算機405M、405A、405B和405C可以被配置為IDOL服務器。IDOL服務器可以包括主IDOL服務器405M和多個鏡像IDOL服務器405A-405C。主IDOL服務器405M可以將其信息鏡像到鏡像IDOL服務器405A-405C上。該鏡像可以包括將主IDOL服務器數據庫406M的內容鏡像到鏡像IDOL服務器數據庫406A-406C中。例如,對象數據庫300、面部識別數據庫340和增強信息數據庫350可以遍及所有鏡像IDOL服務器405A-405C鏡像。主IDOL服務器405M和鏡像IDOL服務器405A-405C可以位于或分布在多個地理位置,以服務這些地區的移動計算設備。例如,主IDOL服務器405M可以位于巴黎,鏡像IDOL服務器405A可以位于波士頓,鏡像IDOL服務器405B可以位于費城,并且鏡像IDOL服務器405C可以位于紐約。
[0084]圖4中示出的IDOL服務器中每個IDOL服務器可以包括其自己的對象識別引擎310、面部識別引擎320和增強引擎325。服務器在特定位置內的分布有助于提高辨別和增強響應時間。相同服務器站點位置的鏡像也幫助提高辨別和增強響應時間。然而此外,通過分布工作負荷并限制物理傳輸距離和關聯時間,相同服務器站點位置的鏡像協助給潛在的數百萬具有駐留的視頻應用的、全部遞交具有區別性關注點特征的數據包的移動計算設備提供服務。用相同的內容復制該IDOL服務器組并且穿越互聯網鏡像該IDOL服務器組,以將該負荷分布至多個相同的站點來改善響應時間并應對那些移動計算設備的查詢容量。
[0085]對于一些實施例,視頻處理模塊135可以包括編碼塊,以在移動計算設備100用于拍攝視頻流時呼叫并與主IDOL服務器的最近非過載鏡像站點建立永久安全通信信道。例如,移動計算設備410A可以經由通信信道450與IDOL服務器405A連接,因為它們都位于波士頓。然而,即便IDOL服務器405C可能離移動計算設備410A比IDOL服務器405A離移動計算設備410A更遠,但因為IDOL服務器405C可能未超載,所以在IDOL服務器405A過載時,移動計算設備410A可能與紐約的IDOL服務器405C連接。[0086]對于一些實施例,一組IDOL服務器可以用于過濾從移動計算設備接收的信息。層次化的一組過濾器可以遍及該組IDOL服務器線性地散布。這些IDOL服務器可以協作地一起工作來處理所傳輸的對象和/或人可視信息,以確定或識別該對象是什么或該人是誰。例如,當移動計算設備410A與IDOL服務器405A建立通信信道時,IDOL服務器405A-405C可以共同工作來處理從移動計算設備410A接收的信息。這種協作通過IDOL服務器405A和IDOL服務器405C之間的通信信道451以及IDOL服務器405A和IDOL服務器405B之間的通信信道452來圖示。類似地,當移動計算設備410B與IDOL服務器405C建立通信信道454時,IDOL服務器405C、405B和405A可以共同工作來處理從移動計算設備410B接收的信息。這種協作通過IDOL服務器405C和IDOL服務器405A之間的通信信道451以及IDOL服務器405C和405B之間的通信信道453來圖示。
[0087]該組服務器中的每個服務器應用過濾器來消除從移動計算設備100接收的可能與對象數據庫330中的多組已知對象的特征相匹配的特征的圖案。能夠同時消除可能全部種類的匹配對象,然而能夠在不同的服務器上同時解決甚至單個種類的可能匹配對象內的子集。每個服務器可以層次化地排除每個機器上的潛在已知圖像,以減少通往與所分析的關注對象匹配或不匹配的層次化分支和葉路徑。
[0088]移動計算設備100有內置的W1-Fi電路,并且視頻流被傳輸至互聯網上的IDOL服務器。IDOL服務器組包括遍布該IDOL服務器組分布的對象識別引擎310、ID0L數據庫,還包括增強引擎325。遍布該IDOL服務器組分布的對象識別引擎310將層次化的一組過濾器應用至視頻流每個幀中的所傳輸的經辨別的關注點和與其關聯的主要特征,以確定那個幀中的那一個或多個關注點是什么。由于這是一系列在時間和近似位置上密切相關的幀的視頻饋給,所以視頻流的每個幀中的經辨別的關注點的主要特征的圖案幫助減少在對象數據庫330中存儲的匹配已知對象。
[0089]IDOL服務器之間的協作可以幫助加速識別過程。例如,IDOL服務器中的每個IDOL服務器可以應用過濾器來消除可能與存儲在對象數據庫330中的已知對象的特征相匹配的特征的圖案。可以同時消除全部種類的對象,然而協作的IDOL服務器可以同時將甚至單個類別的對象內的子集辨別為潛在的匹配對象。每個IDOL服務器可以層次化地排除潛在的已知對象來減少層次化的分支和葉路徑,以確定是否存在匹配。
[0090]對于一些實施例,IDOL服務器中的每個IDOL服務器可以將幀中的關注點的可視區別性特征的圖案與對象數據庫330中的已知對象進行匹配。關注點的特征的幾何形狀的X-Y坐標可能像點對點連接圖示那樣給人留下印象。當點在紙的網格上的X-Y坐標以正確順序連接時,識別與這張紙上的那些點關聯的圖像/對象是簡單的任務。這可以包括將所傳輸特征的點對點型幾何形狀連同它們的區別性顏色、識別的文本、數字和符號、地理信息、相對于相機的方向信息與存儲在對象數據庫330中的特征組進行比較。點對點型幾何形狀能夠被補充設置為區別性的三角形、金字塔、矩形、立方體、圓和圓柱等,每個形狀具有其自己的關聯的區別性顏色或圖案,以幫助辨別和識別。IDOL服務器中的每個IDOL服務器可以層次化地將與關注點有關的特征點的集合映射至存儲的已知對象的特征點的圖案,以將幀中內容與已知對象進行匹配。
[0091]對于一些實施例,當那個被辨別的對象正近實時地(例如小于5秒)在顯示屏上顯示時,視頻處理模塊135可以連續地傳輸所拍攝的視頻流305的幀中的關注點306的所辨別的特征,同時對象識別引擎310 (分布在大量的IDOL服務器上)和增強引擎325傳輸回增強信息來增強在移動計算設備100的存儲器中存儲的視頻文件的所拍攝的幀中的所辨別的圖像/對象。
[0092]如所討論的,服務器計算機300具有一組一個或多個數據庫來存儲關于位置(例如建筑物)和結構的可視信息的可擴展數據庫,以便執行可視數據流的隨后匹配來確定被查看的建筑物或結構。通過將移動用戶與這些可視圖像所關聯的特性的數據庫進行匹配,在任何時候,服務器-客戶機系統解決確定移動用戶的確切位置的問題,并且準確地確定用戶正在看什么。不管位置如何且以最少訓練,該系統提供能力來構造對辨別位置的問題的可擴展方案。
[0093]具有服務器計算機300和一組一個或多個數據庫(例如對象數據庫330、面部識別數據庫340、增強信息數據庫350、用戶配置文件數據庫330)的系統在世界的一組視圖上進行訓練,所得到的模型被存儲以供今后檢索。地理信息和可視特性的組合允許更快的匹配。此后,移動計算設備能夠被部署為從攝像頭搜集地理空間信息和視頻數據流并且將其反饋至該系統。這用于精準定位視圖內的對象或位置,并且使用附加的可視或視聽對象或圖像來增強視頻流。
[0094]流稈圖
[0095]圖5圖示根據一些實施例的可以在移動計算設備上執行來創建增強的視頻流的過程的示例流程圖。該方法可以與可在移動計算設備100上執行的操作相關聯。移動計算設備100可以拍攝視頻流的許多幀。在正拍攝這些幀時,這些幀被分析并且這些幀中的對象的特性信息被提取,如框505所示。提取可以涉及特征、幾何形狀信息、不同顏色、點對點型圖案和其它相關信息。提取可以涉及生成關注點的幾何形狀的X-Y坐標的圖案和與這些形狀關聯的顏色,并且涉及來自GPS模塊的地理坐標、來自與該移動計算設備的攝像頭121關聯的方向傳感器122的方向信息。
[0096]在框510,將特性信息和地理信息傳輸至網絡中的服務器計算機(例如服務器計算機300),使得該服務器計算機能夠過濾信息并確定增強信息。接收特性信息的服務器計算機可以是地理上與移動計算設備100最接近的服務器計算器。如果這個服務器計算機過載,那么作為替代可以選擇附近的未過載的服務器計算機。所選擇的服務器計算機可以與其它鏡像服務器計算機協作來確定增強信息。服務器計算機可以使用層次化的方法執行比較操作和匹配操作。服務器計算機可以查找可使用的不同增強信息。準則可以用于選擇向移動計算設備100傳輸的適當的增強信息。
[0097]在框515,從服務器計算機接收增強信息。也許可能的是,當移動計算設備100正接收一系列幀的增強信息時,移動計算設備100還在準備待傳輸至服務器計算機的另一系列幀的特性信息。通常,針對視頻流中的每個幀,從移動計算設備100將包含關注點的特性信息的傳輸數據包傳輸至服務器計算機。
[0098]在框520,移動計算設備100可以使用增強信息來疊加視頻流的適當的幀,并且創造增強的視頻流。在框525,增強的視頻流在移動計算設備100的顯示屏106上顯示。
[0099]圖6A圖示根據一些實施例的可以在服務器計算機上執行來確定增強信息的過程的示例流程圖。與該方法關聯的操作可以由許多服務器執行,這許多服務器協作地工作來幾乎實時地向移動計算設備提供結果。該方法可以在框605處開始,這里從移動計算設備10接收特性和地理信息。還可以從方向傳感器122接收攝像頭121的方向信息。如先前提到的,可以壓縮從移動計算設備100傳輸的信息。因此,服務器可以包括解壓縮邏輯,以解壓縮信息。如果需要,服務器還可以包括壓縮邏輯,以壓縮增強信息。在框610,服務器可以執行比較和匹配或識別操作。這可以包括過濾和消除不具有相同特性的任何已知對象。這可以包括減少為可能具有相同特性的潛在已知對象。
[0100]也許可能的是,存在每個已知對象的一組增強信息,并且服務器可能需要確定選擇哪個增強信息,如框615所示。在框620,將增強信息傳輸至移動計算設備100。也許可能的是,當服務器在傳輸視頻流的一組幀的增強信息時,服務器還在對與同一視頻流關聯的另一組幀執行框610中的操作。可以注意到,圖5和圖6A中描述的方法還可以用于使用面部識別引擎320和面部識別數據庫340執行面部識別。
[0101]圖6B圖示根據一些實施例的可以在服務器計算機上執行以基于用戶配置文件確定增強信息的過程的示例流程圖。與該方法關聯的操作可以由IDOL服務器執行,并且可以在圖6A的框615中描述的操作上進行擴展。該方法可以在框625開始,這里驗證移動計算設備100的標識。移動計算設備100的標識信息可以在初始通信期間,例如在建立移動設備100和服務器計算機300之間的通信信道期間,被傳輸至服務器計算機300。該標識信息可以由用戶配置文件引擎328來確定來自用戶配置文件數據庫360的合適的用戶配置文件,如框630所示。如所討論的,隨著用戶隨時間推移使用移動計算設備100,可能已經收集用戶配置文件。用戶配置文件可以包括特定的用戶提供的信息。在框635,可以基于用戶配置文件中的信息選擇增強信息。這允許將相關增強信息傳輸至移動計算設備100,以增強視頻流305,如框640所示。
[0102]圖6C圖示根據一些實施例的可以用于基于移動計算設備所生成的啁啾信號確定距離的過程的示例流程圖。該方法可以在已經執行面部識別引擎320的面部識別操作且已經出現確定的識別以后操作。該方法可以在框650開始,這里兩個移動計算設備進行初始的啁啾通信。在框655,第一移動計算設備廣播啁啾信號預定的次數(例如3次),并記錄廣播啁啾信號的時鐘時間。在框660,第二移動計算設備記錄音頻信號,并且檢測啁啾信號和它們的時鐘時間。在框665,在數秒(例如5秒)的暫停以后,該過程反向,此時第二移動計算設備廣播其啁啾信號相同的預定次數。然后,第二設備記錄其廣播時間,并且向第一設備發送檢測時間和廣播時間。在框670,第一移動計算設備在其記錄的音頻信號中檢測第二移動計算設備的啁啾信號。在框675,從第一移動計算設備中,基于所測得的時鐘時間,使用第一公式來確定這兩個移動計算設備之間的距離。
[0103]在框680,收聽由第一移動計算設備和第二移動計算設備廣播的這兩個啁啾信號的第三移動計算設備也在其記錄的音頻信號中檢測啁啾信號,并且將時間報告給第一移動計算設備。第三移動計算設備可以被置于預定的位置。在框685,從第一移動計算設備,使用第二公式來計算第二移動計算設備關于它自己和第三移動計算設備的位置U,y),并且對所有三個移動計算設備之間的位置和距離進行三角測量。然后在框690,第一移動計算設備和第二移動計算設備的視頻處理模塊135將箭頭或足跡疊加在顯示在各自的顯示屏上的視頻流上,以指出第一移動計算設備和第二移動計算設備的每個用戶應當向哪個方向前進來見面。因此,場景分析、面部識別和后續音頻信號的組合用于檢測并確定一個或多個移動計算設備的空間精確位置。_4] 智能數據操作層(IDOL)服務器
[0105]圖7圖示根據一些實施例的IDOL服務器的一些模塊的示例框圖。IDOL服務器700可以包括自動超鏈接模塊705、自動類別模塊710、自動查詢指引模塊715、自動分類生成模塊720、配置文件模塊725、自動聚類模塊730和概念檢索模塊735。自動超鏈接模塊705被配置為允許相關的多條信息之間人工的和全自動的鏈接。超鏈接在查看文件時實時生成。自動類別模塊710被配置為允許通過在未結構化的文本中發現的概念獲取精確的類別,確保所有數據被分組在正確的上下文中。
[0106]自動查詢指引模塊715被配置為提供查詢建議來發現最相關的信息。其通過將結果動態聚類到它們最相關的分組中來辨別詞的不同含義。自動分類生成模塊720被配置為自動生成分類,并且立即將數據組織到熟悉的子/父分類結構中。其以數據集作為整體基于對概念的理解來辨別名稱并創建每個節點。配置文件模塊725被配置為基于個人的瀏覽、內容消費和內容貢獻來準確理解個人的關注。它基于明確的配置文件和隱含的配置文件來生成每個用戶的多層面的概念配置文件。
[0107]自動聚類模塊730被配置為幫助分析多組文檔和用戶配置文件,并且自動辨別內在的主題或信息聚類。它甚至對在郵件、電話交談和即時消息中交換的未結構化的內容進行聚類。概念檢索模塊735被配置為使用對概念進行識別的可擴展技術來識別圖案,并基于可能不在文檔中的詞語來查找信息。應當注意,IDOL服務器700還可以包括能夠使其能與移動計算設備100—起工作來生成本文描述的增強的視頻流的其它模塊和特征。如上文描述的,IDOL服務器700的模塊中的一個或多個模塊可以用于實現對象識別引擎310、面部識別引擎320、增強引擎325和用戶配置文件引擎328的功能。
[0108]計算機系統
[0109]圖8圖示根據一些實施例的可以用于實現增強的視頻流的示例計算機系統。計算環境802僅是適合的計算環境的一個示例,而并不旨在表示對本發明實施例的使用或功能的范圍的任何限制。計算環境802也不應被解釋為具有與圖8所示的組件中的任一個組件或任何組合相關的任何依賴或需求。
[0110]本發明的實施例可以用通用的或專用的計算機系統或配置來操作。可以使用的眾所周知的計算機系統的示例包括但不限于:個人計算機、服務器計算機、手持設備或筆記本電腦設備、平板電腦、智能電話、上網本、多處理器系統、基于微處理器的系統、機頂盒、可編程消費電子設備、網絡PC、微型計算機、大型計算機、包括以上系統或設備中任一種的分布式計算環境等等。
[0111]本發明的實施例可以在由計算機系統執行的計算機可執行指令(例如程序模塊)的通常背景下描述。通常,程序模塊包括執行特定任務或實現特定抽象數據類型的例程、程序、數據庫、對象、組件、數據結構等。本領域技術人員能夠將本文中的描述和/或附圖實現為計算機可運行指令,計算機可運行指令能夠體現在下面介紹的任何形式的計算機可讀介質上。
[0112]本發明的實施例還可以在分布式計算環境中實施,在分布式計算環境中由通過通信網絡鏈接的遠程處理設備執行任務。在分布式計算環境中,程序模塊可以位于包括存儲器存儲設備的本地計算機存儲介質和遠程計算機存儲介質中。
[0113]參考圖8,計算環境802包括通用計算機系統810。計算機系統810的組件可以包括但不限于:具有一個或多個處理核心的處理單元820、系統存儲器830和系統總線821,系統總線821將包括系統存儲器在內的各個系統組件聯接至處理單元820。系統總線821可以是使用多種總線體系結構中任一種的包括存儲器總線或存儲器控制器、外圍總線及本地總線在內的數種總線結構中的任一種總線結構。作為示例而不作為限制,這樣的體系結構包括:工業標準體系結構(ISA)總線、微通道體系結構(MCA)總線、增強型ISA (EISA)總線、視頻電子標準協會(VESA)場所總線以及外設組件互連(PCI)總線(也被稱為夾層(Mezzanine)總線)。
[0114]計算機系統810典型地包括各種計算機可讀介質。計算機可讀介質可以是計算機系統810能夠訪問的且包括易失性介質和非易失性介質、可移除介質和不可移動介質的任何可用介質。作為示例而不作為限制,計算機可讀介質的用途包括諸如計算機可讀指令、數據結構、程序模塊或其它數據之類的信息的存儲。計算機存儲介質包括但不限于:RAM、R0M、EEPR0M、閃存或其它存儲器技術、⑶-ROM、數字多功能盤(DVD)或其它光盤存儲器、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設備、或者能夠用于存儲所需要的信息并能夠被計算機系統810訪問的任何其它介質。通信介質典型地包含計算機可讀指令、數據結構、程序模塊或其它傳輸機制,并且包括任何信息傳遞介質。
[0115]系統存儲器830包括呈易失性和/或非易失性存儲器形式的計算機存儲介質,例如只讀存儲器(ROM) 831和隨機存取存儲器(RAM) 832。在R0M831中典型地存儲基本輸入/輸出系統833 (BIOS),基本輸入/輸出系統833 (BIOS)包含幫助在計算機系統810內的元件之間例如在啟動期間傳遞信息的基本例程。RAM832典型地包含可由處理單元820立即訪問的和/或當前由處理單元820操作的數據和/或程序模塊。作為示例而不作為限制,圖8圖示操作系統834、應用程序835、其它程序模塊836以及程序數據837。
[0116]計算機系統810還可以包括其它可移除的/不可移除的易失性/非易失性計算機存儲介質。僅作為示例,圖8圖示硬盤驅動器841、磁盤驅動器851和光盤驅動器855,硬盤驅動器841從不可移除的非易失性磁性介質讀取或向不可移除的非易失性磁性介質寫入,磁盤驅動器851從可移除的非易失性磁盤852讀取或向可移除的非易失性磁盤852寫入,光盤驅動器855從可移除的非易失性光盤856 (例如CD ROM)或其它光學介質讀取或向可移除的非易失性光盤856或其它光學介質寫入。能夠在示例性操作環境中使用的其它可移除/不可移除的易失性/非易失性計算機存儲介質包括但不限于=USB驅動器和設備、盒式磁帶、閃存卡、數字多功能盤、數字視頻磁帶、固態RAM、固態ROM等。硬盤驅動器841典型地通過不可移除的存儲器接口(例如接口 840)連接至系統總線821,并且磁盤驅動器851和光盤驅動器855典型地通過可移除的存儲器接口(例如接口 850)連接至系統總線821。
[0117]上面討論的和圖8所示的驅動器及其關聯的計算機存儲介質,為計算機系統810提供計算機可讀指令、數據結構、程序模塊和其它數據的存儲。在圖8中,例如,硬盤驅動器841被圖示為存儲操作系統844、應用程序845、其它程序模塊846和程序數據847。注意,這些組件可以與操作系統834、應用程序835、其它程序模塊836和程序數據837相同或不同。這里,操作系統844、應用程序845、其它程序模塊846和程序數據847被給予不同的數字標識,以說明至少它們是不同的副本。
[0118]參與者可以通過諸如鍵盤862、麥克風863和指點設備861 (例如鼠標、跟蹤球或觸摸板)之類的輸入設備將命令和信息輸入計算機系統810。其它輸入設備(未示出)可以包括操縱桿、游戲墊、掃描儀等。這些和其它輸入設備經常通過與系統總線821聯接的用戶輸入接口 860與處理單元820連接,但是可以通過諸如并行端口、游戲端口或通用串行總線(USB)之類的其它接口和總線結構連接。監視器891或其它類型的顯示設備也通過接口(例如視頻接口 890)連接至系統總線121。除監視器以外,計算機還可以包括諸如揚聲器897和打印機896之類的其它外圍輸出設備,其它外圍輸出設備可以通過輸出外圍接口 890連接。
[0119]計算機系統810可以在使用與一個或多個遠程計算機(例如遠程計算機880)的邏輯連接的聯網環境中操作。遠程計算機880可以是個人計算機、手持設備、服務器、路由器、網絡PC、對等設備或其它公共網絡節點,并且典型地包括上面關于計算機系統810描述的元件中的許多元件或全部元件。圖8所示的邏輯連接包括局域網(LAN)871和廣域網(WAN)873,但還可以包括其它網絡。這樣的聯網環境在辦公室、企業范圍的計算機網絡、內聯網和互聯網中是常見的。
[0120]當在LAN聯網環境中使用時,計算機系統810通過網絡接口或適配器870連接至LAN871。當在WAN聯網環境中使用時,計算機系統810典型地包括調制解調器872或用于通過WAN873 (例如互聯網)建立通信的其它裝置。調制解調器872可以是內部的或外部的,其可以經由用戶輸入接口 860或其它適當機制連接至系統總線821。在聯網環境中,關于計算機系統810或其部分描述的程序模塊可以存儲在遠程存儲器存儲設備中。作為示例而不作為限制,圖8將遠程應用程序885圖示為駐留在遠程計算機880上。將理解,所示出的網絡連接是示例性的,可以使用在計算機之間建立通信鏈路的其它裝置。
[0121]應當注意,本發明的一些實施例可以在如關于圖8描述的計算機系統那樣的計算機系統上實施。然而,本發明的一些實施例可以在服務器上、在專用于消息處理的計算機上、在手持設備上或在分布式系統上實施,在分布式系統中本設計的不同部分可以在分布式系統的不同部分上實施。
[0122]可以與系統總線821聯接的另一設備是電源,例如電池或直流(DC)電源和交流(AC)適配器電路。DC電源可以是電池、燃料電池或類似的需要周期性地再充電的DC電源。通信模塊(或調制解調器)872可以采用無線應用協議(WAP)來建立無線通信信道。通信模塊872可以實現無線聯網標準,例如電氣和電子工程師協會(IEEE)802.11標準、IEEE標準802.11-1999 (IEEE 于 1999 年公布)。
[0123]移動計算設備的示例可以是筆記本計算機、平板電腦、上網本、移動電話、個人數字助理或具有板載處理能力和無線通信能力的由直流(DC)電源(例如燃料電池或電池)供電的其它類似設備,該DC電源向移動計算設備供應DC電壓并且僅在移動計算設備中并且需要周期性地再充電。
[0124]雖然參考附圖對本發明的實施例充分地進行描述,但是要注意,各種變化和修改將對本領域技術人員變得明顯。這樣的變化和修改應當被理解為包括在由所附權利要求限定的本發明的實施例的范圍內。例如,為形狀和材料提供特定示例,然而實施例包括那些對本領域技術人員顯而易見的變化,例如改變形狀或將材料組合在一起。此外,雖然已經示出本發明的一些特定實施例,但是本發明不應局限于這些實施例。例如,已經示出幾個特定模塊。每個模塊執行一些特定功能。然而,所有這些功能可以被組合至一個模塊中或者甚至可以進一步被分解成很多模塊。由電子硬件組件執行的大多數功能可以由軟件模擬來復制,反之亦然。本發明應被理解為不由本文描述的特定實施例限制,而是僅由所附權利要求的范圍限制。
【權利要求】
1.一種基于用戶配置文件產生相關增強信息的計算機實現方法,所述方法包括: 將針對多個移動計算設備的用戶配置文件信息存儲在從網絡可訪問的用戶配置文件數據庫中, 使用無線通信從連接至所述網絡的第一移動計算設備接收標識信息,所述標識信息對應于與所述第一移動計算設備相關聯的用戶配置文件; 使用無線網絡從所述第一移動計算設備接收在第一移動計算設備拍攝的視頻流的幀中包括的關注點的特性信息以及與所述視頻流的幀相關聯的地理信息; 從與所述用戶配置文件數據庫聯接的增強信息數據庫中選擇相關的增強信息,其中基于與所述第一移動計算設備相關聯的用戶配置文件選擇所述相關的增強信息;以及 將所述相關的增強信息傳輸至所述第一移動計算設備,以使能夠使用所述相關的增強?目息來I)置加、2)聞売或3)置加并聞売所述視頻流中的關注點。
2.根據權利要求1所述的方法,其中來自所述第一移動計算設備的標識信息與所述第一移動計算設備的用戶標識模塊(SIM)相關聯。
3.根據權利要求1所述的方法,其中所述用戶配置文件信息基于用戶如何隨時間使用所述第一移動計算設備而產生、存儲并更新,并且由所述第一移動計算設備捕獲,并從所述第一移動計算設備接收。
4.根據權利要求3所述的方法,其中所述用戶配置文件信息包括用戶的個人信息。
5.根據權利要求1所述的方法,其中所述相關的增強信息從與所述特性信息有關的多個增強信息中選擇。
6.根據權利要求5所述的方法,其中所述特性信息包括幾何形狀的圖案和相關聯的顏色信息。
7.根據權利要去6所述的方法,進一步包括: 將過濾器組應用于所述幾何形狀的圖案和所述相關聯的顏色信息以確定是否能夠匹配已知對象,所述已知對象存儲在與所述增強信息數據庫聯接的對象數據庫中;以及基于與所述已知對象的匹配,來辨別與所述已知對象相關聯的多個增強信息。
8.根據權利要求7所述的方法,其中所述過濾器組通過兩個或多個服務器計算機使用分布式處理方式而應用。
9.一種基于用戶配置文件產生增強的視頻流的計算機實現方法,所述方法包括: 捕獲關于用戶如何隨時間使用第一移動計算設備的信息; 使用無線通信將所捕獲的信息以及所述第一計算設備的標識信息傳輸至服務器計算機,使得所述服務器計算機能夠更新與所述第一移動計算設備相關聯的用戶配置文件; 提取在所述第一移動計算設備拍攝的視頻流的幀中包括的關注點的特性信息; 使用無線通信將在所述幀中包括的關注點的特性信息和與所述幀相關聯的地理信息傳輸至所述服務器計算機; 從所述服務器計算機接收與所述關注點相關且基于所述第一移動計算設備所關聯的用戶配置文件的增強信息;以及 在所述第一移動計算設備的顯示屏上與所述視頻流的幀一起顯示所述增強信息。
10.根據權利要求9所述的方法,其中所述關注點的特性信息包括幾何形狀信息和相關聯的顏色信息,并且其中所述特性信息以文本傳輸。
11.根據權利要求9所述的方法,其中與所述第一移動計算設備相關聯的用戶配置文件被存儲在與所述服務器計算機相關聯的用戶配置文件數據庫中。
12.根據權利要求11所述的方法,其中關于用戶如何隨時間使用第一移動計算設備的信息至少包括隨時間的瀏覽習慣和購物習慣,并且其中所述第一移動計算設備的標識信息被所述服務器計算機使用以從所述用戶配置文件數據庫中辨別與所述第一移動計算設備相關聯的用戶配置文件。
13.根據權利要求9所述的方法,其中所述第一移動計算設備的標識信息與所述第一移動計算設備的用戶標識模塊(SIM)相關聯。
14.一種基于用戶配置文件選擇增強信息的服務器計算機系統,所述系統包括: 被配置為存儲關于已知對象的特性信息的對象數據庫; 被配置為存儲已知對象的增強信息的增強數據庫; 被配置為針對連接至網絡的包括第一移動計算設備在內的多個移動計算設備存儲用戶配置文件信息的用戶配置文件數據庫; 與所述對象數據庫聯接的對象識別引擎,用于基于從所述第一移動計算設備接收的特性和地理信息與所述對象數據庫中的已知對象的特性和地理信息的匹配,來辨別所述已知對象; 與所述用戶配置文件數據庫聯接的用戶配置文件引擎,用于辨別與所述第一移動計算設備相關聯的用戶配置文件 信息;以及 與所述增強數據庫聯接的增強引擎,用于基于與所述第一移動計算設備相關聯的用戶配置文件信息,并基于已經辨別的已知對象,來選擇增強信息,其中所述增強信息需被傳輸至所述第一移動計算設備。
15.根據權利要求14所述的系統,其中從所述第一移動計算設備接收的特性和地理信息與在所述第一移動計算設備拍攝的視頻流的幀中包括的關注點相關聯,其中所述增強信息從多個增強信息中選擇,并且其中所述增強信息包括文本消息或所述關注點的高亮。
16.根據權利要求14所述的系統,其中所述對象識別引擎進一步被配置為從所述第一移動接收設備接收攝像頭方向信息,并且使用所述攝像頭方向信息來辨別所述已知對象。
17.根據權利要求14所述的系統,其中所述用戶配置文件引擎被配置為基于所述第一移動計算設備的標識信息來辨別與所述第一移動計算設備相關聯的用戶配置文件信息。
18.根據權利要求17所述的方法,其中所述第一移動計算設備的標識信息與所述第一移動計算設備的用戶標識模塊(SIM)相關聯。
19.根據權利要求14所述的系統,其中所述對象識別引擎被配置為應用過濾器組來匹配從所述第一移動計算設備接收的特性和地理信息與所述已知對象的特性和地理信息,并且其中所述過濾器與連接至所述網絡的鏡像服務器計算機組協作應用。
20.根據權利要求14所述的系統,其中所述用戶配置文件信息包括與所述第一移動計算設備相關聯的用戶的個人信息,并且其中所述用戶配置文件信息基于用戶如何隨時間使用所述第一移動計算設備而更新。
【文檔編號】G09G5/00GK103635953SQ201280008140
【公開日】2014年3月12日 申請日期:2012年2月7日 優先權日:2011年2月8日
【發明者】肖恩·馬克·布蘭什弗勞爾, 邁克爾·理查德·林奇 申請人:隆沙有限公司