新四季網

起居室電影創建的製作方法

2023-05-03 06:36:26

專利名稱:起居室電影創建的製作方法
技術領域:
本發明涉及創建電影的技術,尤其涉及在諸如起居室之類的環境中創建電影的技術。
背景技術:
用戶能夠使用可攜式攝像機來製作家庭電影已有一些時間了。最近,諸如蜂窩式電話之類的電子設備可允許用戶製作短電影。然而,這些設備在創建、執導和編輯電影的能力方面具有限制。同樣,製作任何種類的動畫電影的能力對於許多人而言可能非常難。在過去,諸如計算機遊戲和多媒體應用之類的計算應用使用控制器、遙控器、鍵盤、滑鼠等來允許用戶操縱遊戲角色或應用的其他方面。一些甚至可允許用戶將內容創建至某種程度。然而,創建內容的能力可能被隱藏在工具的複雜集合之後。而且,一些技術主要涉及角色定製,因此不允許對諸如電影之類的內容的較豐富的開發。

發明內容
在此公開了提供起居室電影創建的系統和方法。可使用包括深度相機的系統來執導、捕捉和編輯電影。該系統能夠使用深度相機來捕捉演員的運動並能夠基於此來生成電影。因此,不需要演員佩戴任何專門的標記來檢測他們的運動。可基於起居室內的普通對象用作虛擬道具來生成虛擬電影集合。在此公開了涉及執導、捕捉和編輯電影的其他方面。一個實施例包括可在具有深度相機的運動捕捉系統內實施的方法。該方法包括使用深度相機來收集諸如起居室之類的環境的深度信息。環境中的演員的模型基於深度信息而被生成和跟蹤。電影的場景基於對演員的模型的跟蹤而被生成。該系統響應於用戶命令基於場景創建電影。一個實施例包括在諸如起居室之類的環境中創建電影的系統。該系統可包括深度相機、耦合到該深度相機的一個或多個處理器以及耦合到該一個或多個處理器的計算機存儲介質。計算機存儲介質具有存儲在其上的指令,當在一個或多個處理器上執行這些指令時使得該一個或多個處理器使用深度相機來收集環境的深度信息。處理器使用深度相機使用無標記的技術來捕捉環境中的演員的運動。場景由處理器基於所捕捉到的演員的運動來生成。處理器確定環境中要用作虛擬取景器的電子設備的一個或多個位置。這些位置可在一時間段與該場景相關聯。處理器從電子設備在一個或多個位置處的角度生成場景的一個版本,並向該電子設備提供該場景的該版本。一個實施例包括包含以下的方法。使用深度相機來收集環境的深度信息,並基於該深度信息來生成環境的模型。基於深度信息生成虛擬電影集合。使用深度信息來開發環境中的演員的骨架模型。在一時間段跟蹤該骨架模型。基於虛擬電影集合和對骨架模型的跟蹤來生成場景。針對跟蹤骨架模型的時間段確定要用作虛擬取景器的電子設備的一個或多個位置。從電子設備在該一個或多個位置的每一個處的角度生成場景的一個版本,並向電子設備提供場景的該版本。從電子設備處接收記錄場景的請求。針對該時間段存儲描述了對骨架模型的跟蹤和電子設備的一個或多個位置的元數據。
提供本發明內容以便以簡化形式介紹在以下詳細描述中進一步描述的概念精選。本發明內容不旨在標識所要求保護主題的關鍵或必要特徵,也不旨在用於幫助確定所要求保護主題的範圍。此外,所要求保護的主題並不受限於解決在本公開任何部分提到的任何或全部缺點的實現。


圖IA示出用於提供起居室電影創建的目標識別、分析和跟蹤系統的示例實施例。圖IB示出用於提供聯網的起居室電影創建的目標識別、分析和跟蹤系統的示例實施例。圖2示出了可在目標識別、分析和跟蹤系統中使用的捕捉設備的示例實施例。圖3A示出了可用於在目標識別、分析和跟蹤系統中解釋一個或多個姿勢的計算環境的示例實施例。圖3B示出了可用於在目標識別、分析和跟蹤系統中解釋一個或多個姿勢的計算環境的另一不例實施例。圖4示出了從圖1A-2的目標識別、分析和跟蹤系統中已生成的用戶的骨架映射。圖5是用於提供起居室電影創建的當前技術的實施例的操作的高級流程圖。圖6是將虛擬道具合併到電影中的過程的實施例的流程圖。圖7描繪了開發演員的模型的過程的流程圖。圖8是重新目標化演員的模型的過程的一個實施例的流程圖。圖9是創建電影的過程的一個實施例的流程圖。圖10是在電子設備處查看場景的過程的一個實施例的流程圖。圖11是從被拍攝的電影處捕捉場景的過程的一個實施例的流程圖。圖12是編輯電影的過程的一個實施例的流程圖。
具體實施例方式在此公開了提供起居室電影創建的系統和方法。可使用包括深度相機的系統來執導、捕捉和編輯電影。可通過將起居室內的普通對象用作虛擬道具來創建電影集合。例如,可將起居室內的長椅在顯示屏上表示成虛擬集合中的巖石。電影導演可在起居室內到處移動對象以創建和修改將在其中拍攝場景的虛擬集合。系統可生成房間的3D模型,並確定對虛擬道具應呈現什麼圖像。還可在不使用起居室內的對象的情況下創建虛擬集合。例如,可在顯示屏上示出沙灘或太空船的虛擬集合。導演可通過例如「抓住」棕櫚樹並移動它來修改這個虛擬集合。系統能夠使用深度相機來捕捉演員的運動並能夠基於此來生成電影。因此,不需要演員佩戴任何專門的標記來檢測他們的運動。為了允許電影製作方面的較好的自由度,可將人類演員的動作重新目標化成非人類。例如,可將人類演員表示成電影中的動物。導演可將用作「虛擬相機」的電子設備的放置於要捕捉場景的有利地點。系統可檢測虛擬相機的定位,並確定如何從該有利地點生成場景。注意,不需要使用虛擬相機來記錄場景。相反,來自深度相機的深度和/或RGB數據可被用作電影的主題。注意,可存在多個虛擬相機,使得導演可從多個角度查看和捕捉場景。系統還可用於編輯電影。作為一個示例,深度相機可用於允許用戶輸入命令以編輯電影。
圖IA不出用於在諸如起居室之類的環境中創建電影的系統10。系統10可以指目標識別、分析和/或跟蹤系統10,它可用於識別、分析和/或跟蹤諸如用戶18之類的人類目標。一般而言,系統10包括計算環境12、深度相機系統20和顯示器16。深度相機系統20可包括用於確定深度信息的相機以及RGB相機。注意,RGB相機可以是與深度相機系統20分開的組件。深度相機系統20可用於收集電影將基於的數據。在這個示例中,用戶18是正在創建的電影中的演員。因此,用戶18在此還可被稱作演員。系統10能夠使用深度相機20來捕捉用戶的移動並能夠基於此來生成電影。因此,可基於深度信息來生成電影。注意,來自RGB相機的諸如視頻數據之類的其他數據也可用於生成電影。顯示器16至少部分地基於由深度相機系統20所捕捉到的信息描繪了場景19。注意,術語「場景」可以指在某一時間段上發生的動作。例如,電影中的「場景」可以指在一時間段上發生的動作。場景19可具有順序地呈現的多個數據幀。在這個示例中,演員18在場景19中被重新目標化成怪物17。系統10可以以模仿演員18的動作的方式來呈現怪物17。通過「重新目標化」演員,它意味著場景19包括基於演員18但以某一方式被修改或增加的某一元素。在重新目標化的一些實施例中,系統10基於深度信息來開發演員18的骨架模型,並隨後將該骨架模型映射到某一非人類的骨架模型。然後,可將諸如毛皮、眼睛、衣服之類的特徵覆蓋在該非人類的骨架模型上。房間還可具有可用作虛擬道具的各種對象。在這個示例中,環境中的椅子13被呈現為場景19中的房子21。可以理解,系統10通過允許將各種現實世界對象用作不同種類的道具來允許「虛擬電影集合」的創建。因此,場景19中的至少一些元素可以是計算機創建的圖形。然而,如上所述,場景19也可以是基於視頻數據的。例如,取代重新目標化演員18,來自RGB相機的實際視頻數據可用於表示場景19中的演員18。通過視頻數據也可將其他對象表示在場景19中。導演11和攝影人員15也被描繪,他們中的每一個都手持可用作虛擬相機的電子設備14。通過虛擬相機,它意味著設備14實際上不可捕捉視頻,但是可用於向用戶顯示從該電子設備14的有利地點處場景19將如何顯現。系統10可確定正由導演11手持的電子設備14的位置和方向,使得能夠確定從該角度場景19將如何顯現。系統10可隨後嚮導演的電子設備14傳送一信號,使得導演11能夠查看從導演的角度場景19將如何顯現。在這個示例中,導演11可以看見怪物17在房子21的前面。注意,導演11可查看到該場景是實時的。因此,如果演員18正移動他的/她的手臂,則導演11可看見怪物17正移動它的「手臂」。注意,導演11可在房間內到處移動,以測試出不同的相機角度將如何顯現。同樣,系統10可對攝像人員15的電子設備14執行類似的功能。電子設備14可以是任何電子設備14,諸如蜂窩電話、筆記本計算機等。一般而言,電子設備14具有用於查看場景19的某一類型的顯示屏。注意,電子設備14本身並不需要捕捉任何視頻等,雖然這是一種可能性。相反,生成場景19所基於的數據可以從深度相機系統20處收集到。電子設備14可具有確定設備14在房間內的位置和方向的一個或多個傳感器。在一個實施例中,導演11或攝像人員15可使用電子設備來捕捉場景19。換言之,導演11可決定從所選擇的相機角度記錄場景19。作為一個不例,導演11在電子設備14上既輸入使系統10對描述演員的移動的元數據的進行記錄的輸入也輸入電子設備14的位置和方向。然後,可使用該元數據基於一個或多個所記錄的場景19來編輯電影。現將討論系統10的一個實施例的進一步細節。用於實現本技術的硬體包括目標識別、分析和跟蹤系統10,該系統10可用於識別、分析和/或跟蹤諸如用戶18之類的人類目標。目標識別、分析和跟蹤系統10的各個實施例包括用於執行遊戲或諸如電影創建和編輯之類的其他應用的計算環境12。計算環境12可包括硬體組件和/或軟體組件,使得計算環境12可用於執行遊戲應用和非 遊戲應用。在一個實施例中,計算環境12可包括諸如標準化處理器、專用處理器、微處理器之類的處理器,該處理器可執行存儲在處理器可讀的存儲設備上的用於執行此處所描述的過程的指令。系統10還包括捕捉設備20,捕捉設備20用於捕捉與捕捉設備所感測的一個或多個用戶和/或對象有關的圖像和音頻數據。在各實施例中,捕捉設備20可以用於捕捉與一個或多個用戶的移動、姿勢和話音相關的信息,所述信息被計算環境接收並且被用於創建或編輯電影。以下更詳細地解釋計算環境12和捕捉設備20的示例。目標識別、分析和跟蹤系統10的實施例可以連接到具有顯示器的音頻/視覺設備16。設備16可以例如是可向用戶提供遊戲或應用視覺和/或音頻的電視機、監視器、高畫質電視機(HDTV)等。例如,計算環境12可包括諸如圖形卡之類的視頻適配器和/或諸如音效卡之類的音頻適配器,這些適配器可提供與遊戲或其他應用程式相關聯的音頻/視覺信號。音頻/視覺設備16可以從計算環境12接收音頻/視覺信號,並且然後可以向用戶18輸出與該音頻/視覺信號相關聯的遊戲或應用程式視覺和/或音頻。根據一個實施例,音頻/視覺設備16可經由例如S-視頻電纜、同軸電纜、HDMI電纜、DVI電纜、VGA電纜、分量視頻電纜等連接到計算環境12。系統10及其組件的合適的示例在以下共同待審的專利申請中找到,這些專利申請全部特此通過引用結合於此於2009年5月29日提交的名稱為「Environment And/Or Target Segmentation(環境和/或目標分割)」的美國專利申請序列號12/475,094;於 2009 年 7 月 29 日提交的名稱為 「Auto Generating a Visual Representation」 (自動生成視覺表示)」的美國專利申請序列號12/511,850 ;於2009年5月29日提交的名稱為「Gesture Tool (姿勢工具)」的美國專利申請序列號12/474, 655 ;於2009年10月21日提交的名稱為「Pose Tracking Pipeline (姿態跟蹤流水線)」的美國專利申請序列號12/603, 437 ;於 2009 年 5 月 29 日提交的名稱為「Device for Identifying and TrackingMultiple Humans Over Time (用於隨時間標識和跟蹤多個人類的設備)」的美國專利申請序列號12/475,308 ;於2009年10月7日提交的名稱為「Human Tracking System(人類跟蹤系統)」的美國專利申請序列號12/575,388 ;於2009年4月13日提交的名稱為「GestureRecognizer System Architecture (姿勢識別器系統體系結構)」的美國專利申請序列號12/422,661 ;於2009年2月23日提交的名稱為「Standard Gestures (標準姿勢)」的美國專利申請序列號12/391,150 ;以及於2009年5月29日提交的名稱為「Gesture Tool (姿勢工具)」的美國專利申請序列號12/474,655。圖IA的示例示出了被包含在諸如起居室之類的單個環境中的系統。然而,在一些情況下,不同的演員18可以在不同的物理位置處。在一個實施例中,目標識別、分析和跟蹤系統10被聯網到遠程目標識別、分析和跟蹤系統10,以允許各演員18在不同的位置處。圖IB示出了用於使用聯網的拍攝環境來創建電影的系統。在這個示例中,兩個目標識別、分析和跟蹤系統10a、10b通過網絡240而連接。網絡240可以是諸如網際網路之類的廣域網(WAN)。網絡240可以是(或包括)諸如IEEE 1394或藍牙之類的區域網(LAN)。網絡240實際上可以由一個或多個網絡組成。因此,一個系統IOa可以監控演員18並收集運動數據和/或深度信息,其可以通過網絡240而被傳送到其他系統10b。系統IOa還可以收集並傳輸RGB數據。系統IOb也可以監控演員18並收集運動數據以及RGB數據。系統IOb可以基於來自用戶的編輯命令使用來自任何來源的運動數據(以及可能的RGB數據)來生成電影。這可允許在分開的位置處拍攝電影的分開的場景。然而,還可允許在分開的位置處拍攝同一個場景,其中在兩個或更多位置處收集到的數據被合併以形成單個場景。數據的合併可由系統10響應於來自用戶的編輯命令來執行。圖2示出可在目標識別、分析和跟蹤系統10中使用的捕捉設備20的示例實施例。在一個示例實施例中,捕捉設備20可被配置成經由任何合適的技術來捕捉具有可包括深度值的深度圖像的視頻,這些技術包括例如飛行時間、結構化光、立體圖像等。根據一個實施例,捕捉設備20可以將所計算的深度信息組織成「Z層」,或與從深度相機沿其視線延伸的Z軸垂直的層。如圖2所示,捕捉設備20可包括圖像相機組件22。根據一個示例性實施例,圖像相機組件22可以是可捕捉場景的深度圖像的深度相機。深度圖像可以包括所捕捉場景的二維(2-D)像素區域,其中2-D像素區域中的每個像素都可表示深度值,比如例如所捕捉場景中的對象距相機的以釐米、毫米等為單位的長度或距離。如圖2所示,根據一示例性實施例,圖像相機組件22可以包括可用於捕捉場景的深度圖像的IR光組件24、三維(3-D)相機26、和RGB相機28。例如,在飛行時間分析中,捕捉設備20的IR光組件24可以將紅外光發射到場景上,並且然後可以使用傳感器(未示出)、例如用3-D相機26和/或RGB相機28來檢測從場景中的一個或多個目標和物體的表面後向散射的光。在一些實施例中,可以使用脈衝紅外光,使得可以測量出射光脈衝與相應入射光脈衝之間的時間,並且將其用於確定從捕捉設備20到場景中的目標或物體上的特定位置的物理距離。附加地,在其他示例性實施例中,可以將出射光波的相位與入射光波的相位相比較來確定相移。該相移然後可以用於確定從捕獲設備20到目標或物體上的特定位置的物理距離。根據另一示例性實施例,可以使用飛行時間分析來通過經由包括例如快門式光脈衝成像在內的各種技術分析反射光束隨時間的強度來間接地確定從捕捉設備20到目標或物體上的特定位置的物理距離。在另一示例性實施例中,捕捉設備20可以使用結構化光來捕捉深度信息。在此類分析中,圖案化光(即,被顯示為諸如網格圖案或條紋圖案之類的已知圖案的光)可經由例如IR光組件24投影到場景上。在落到場景中的一個或多個目標或物體的表面上以後,作為響應,圖案可以變為變形的。圖案的這樣的變形可以被例如3-D相機26和/或RGB相機28捕捉,並且隨後可被分析以確定從捕捉設備20到目標或物體上的特定位置的物理距離。
根據另一實施例,捕捉設備20可包括可以從不同的角度觀察場景的兩個或更多個在物理上分開的相機,以獲取可以被解析以生成深度信息的視覺立體數據。在另一示例實施例中,捕捉設備20可使用點雲數據(point cloud data)和目標數位化技術來檢測用戶的特徵。捕捉設備20還可包括一個或多個話筒30。話筒30可以包括可接收聲音並將其轉換成電信號的換能器或傳感器。根據一個實施例,話筒30可用於減少目標識別、分析和跟蹤系統10中的捕捉設備20與計算環境12之間的反饋。附加地,話筒30可用於接收也可由用戶提供的音頻信號,以控制可由計算環境12執行的諸如遊戲應用、非遊戲應用等之類的應用。
在一示例性實施例中,捕捉設備20還可包括可與圖像相機組件22有效通信的處理器32。處理器32可包括可執行指令的標準處理器、專用處理器、微處理器等,這些指令可包括用於接收深度圖像的指令、用於確定合適的目標是否可包括在深度圖像中的指令、用於將合適的目標轉換成該目標的骨架表示或模型的指令、或任何其他合適的指令。捕捉設備20還可包括存儲器組件34,存儲器組件34可存儲可由處理器32執行的指令、3-D相機或RGB相機捕捉到的圖像或圖像的幀、或任何其他合適的信息、圖像等。根據一個示例性實施例,存儲器組件34可包括隨機存取存儲器(RAM)、只讀存儲器(ROM)、高速緩存、快閃記憶體、硬碟、或任何其他合適的存儲組件。如圖2所示,在一實施例中,存儲器組件34可以是與圖像相機組件22和處理器32進行通信的單獨的組件。根據另一個實施例,可將存儲器組件34集成到處理器32和/或圖像相機組件22中。在一個實施例中,捕捉設備20不是具有處理器32,而是具有用於處理來自光傳感器的信息的應用專用集成電路(ASIC)。如圖2所示,捕捉設備20可經由通信鏈路36與計算環境12進行通信。通信鏈路36可以是包括例如USB連接、火線連接、乙太網電纜連接等的有線連接和/或諸如無線802. Ilb,802. llg、802. Ila或802. Iln連接等的無線連接。根據一個實施例,計算環境12可以經由通信鏈路36向捕捉設備20提供時鐘,該時鐘可用於確定何時捕捉例如場景。附加地,捕捉設備20可以通過通信鏈路36向計算環境12提供深度信息和由例如3-D相機26和/或RGB相機28捕捉到的圖像、以及可以由捕捉設備20生成的骨架模型。存在用於判斷由捕捉設備20檢測到的目標或對象是否與人類目標相對應的各種已知技術。骨架映射技術因而可用於確定該用戶的骨架上的各個點,手、腕、肘、膝、鼻、踝、肩的關節,以及骨盆與脊椎相交之處。其他技術包括將圖像變換成人的人體模型表示以及將圖像變換成人的網格模型表示。然後,可以將骨架模型提供給計算環境12,使得計算環境可以執行各種動作。在一些實施例中,執行重新目標化,使得以不同於他們的實際外表的方式來呈現演員。在一些實施例中,系統10基於例如已從骨架模型中識別出的用戶的姿勢來確定在計算機環境上執行的應用中要執行的那些控制。例如,如圖2所示,計算環境12可包括用於確定用戶何時執行了預定義姿勢的姿勢識別引擎190。還示出了電影編輯引擎192,該電影編輯引擎允許用戶通過自然的輸入(例如,語音命令和/或姿勢)來輸入命令。圖3A示出了可用於創建和編輯電影以及其他目的的計算環境的示例實施例。該計算環境可用於圖1A、圖IB或圖2的計算環境12。圖3A的計算環境是多媒體控制臺100,其可用於遊戲應用。如圖3A所示,多媒體控制臺100包括具有一級高速緩存102、二級高速緩存104和快閃記憶體ROM 106的中央處理單元(CPU) 101。一級高速緩存102和二級高速緩存104臨時存儲數據,並且因此減少存儲器訪問周期的數量,由此改進處理速度和吞吐量。CPU 101可被提供為具有一個以上的核,並且由此具有附加的一級聞速緩存102和_■級聞速緩存104。快閃記憶體ROM 106可存儲在多媒體控制臺100通電時引導過程的初始階段期間加載的可執行代碼。
圖形處理單元(GPU) 108和視頻編碼器/視頻編解碼器(編碼器/解碼器)114形成用於高速和高解析度圖形處理的視頻處理流水線。經由總線從GPU108向視頻編碼器/視頻編解碼器114運送數據。視頻處理流水線向A/V(音頻/視頻)埠 140輸出數據,用於傳輸至電視機或其他顯示器。存儲器控制器110連接到GPU 108,以便於處理器對各種類型的存儲器112(諸如,但不限於RAM)的訪問。多媒體控制臺100包括優選地在模塊120上實現的I/O控制器122、系統管理控制器123、音頻處理單元124、網絡接口控制器126、第一 USB主控制器128、第二 USB主控制器130以及前面板I/O子部件330。USB控制器126和128用作可選的外圍控制器142(1)-142(2)、無線適配器148、和外置存儲器設備146 (例如快閃記憶體、外置⑶/DVD ROM驅動器、可移動介質等)的主機。網絡接口 124和/或無線適配器148提供對網絡(例如,網際網路、家庭網絡等)的訪問,並且可以是包括乙太網卡、數據機、藍牙模塊、電纜數據機等的各種不同的有線或無線適配器組件中的任何一種。提供系統存儲器143來存儲在引導過程期間加載的應用數據。提供媒體驅動器144,且其可包括DVD/⑶驅動器、硬碟驅動器、或其他可移動媒體驅動器等。媒體驅動器144可以是對多媒體控制器100內置的或外置的。應用數據可經由媒體驅動器144訪問,以供多媒體控制臺100執行、回放等。媒體驅動器144經由諸如串行ATA總線或其他高速連接(例如IEEE 1394)等總線連接到I/O控制器120。系統管理控制器122提供與確保多媒體控制臺100的可用性相關的各種服務功能。音頻處理單元123和音頻編解碼器132形成具有高保真度和立體聲處理的相應音頻處理流水線。音頻數據經由通信鏈路在音頻處理單元123與音頻編解碼器132之間傳輸。音頻處理流水線將數據輸出到A/V埠 140,以供外置音頻播放器或具有音頻能力的設備再現。前面板I/O子部件130支持暴露在多媒體控制臺100的外表面上的電源按鈕150和彈出按鈕152、以及任何LED (發光二極體)或其他指示器的功能。系統供電模塊136向多媒體控制臺100的組件供電。風扇138冷卻多媒體控制臺100內的電路。CPU IOU GPU 108、存儲器控制器110、以及多媒體控制臺100內的各種其他組件經由一條或多條總線互連,該總線包括串行和並行總線、存儲器總線、外圍總線、以及使用各種總線體系結構中的任一種的處理器或局部總線。作為示例,這些架構可以包括外圍部件互連(PCI)總線、PCI-Express總線等。當多媒體控制臺100通電時,應用數據可從系統存儲器143加載到存儲器112和/或高速緩存102、104中,並且可在CPU 101上執行。應用可在導航到多媒體控制臺100上可用的不同媒體類型時呈現提供一致的用戶體驗的圖形用戶界面。在操作中,媒體驅動器144中所包含的應用和/或其他媒體可從媒體驅動器144啟動或播放,以將附加功能提供給多媒體控制臺100。多媒體控制臺100可通過簡單地將該系統連接到電視機或其他顯示器而作為獨立系統來操作。在該獨立模式中,多媒體控制臺100允許一個或多個用戶與該系統交互、看電影、或聽音樂。然而,在通過網絡接口 124或無線適配器148可用的寬帶連接集成的情況下,多媒體控制臺100還可作為更大網絡社區中的參與者來操作。當多媒體控制臺100通電時,可以保留設定量的硬體資源以供多媒體控制臺作業系統作系統使用。這些資源可包括存儲器的保留量(諸如,16MB)、CPU和GPU周期的保留量(諸如,5% )、網絡帶寬的保留量(諸如,8kbs),等等。因為這些資源是在系統引導時間保留的,所保留的資源對於應用視角而言是不存在的。具體而言,存儲器保留量優選地足夠大,以包含啟動內核、並發系統應用程式和驅動程序。CPU保留量 優選地為恆定,使得若所保留的CPU用量不被系統應用使用,則空閒線程將消耗任何未使用的周期。對於GPU保留,通過使用GPU中斷來調度代碼以將彈出窗口呈現為覆蓋圖,從而顯示由系統應用程式生成的輕量消息(例如,彈出窗口)。覆蓋圖所需的存儲器量取決於覆蓋區域大小,並且覆蓋圖優選地與屏幕解析度成比例縮放。在完整的用戶界面被並發系統應用使用的情況下,優選使用獨立於應用解析度的解析度。定標器可用於設置該解析度,從而無需改變頻率和引起TV重新同步。在多媒體控制臺100引導且系統資源被保留之後,執行並發系統應用來提供系統功能。系統功能被封裝在上述所保留的系統資源內執行的一組系統應用中。作業系統內核標識出作為系統應用線程或者遊戲應用線程的線程。系統應用優選地被調度為在預定時間並以預定時間間隔在CPU 101上運行,以便提供對應用而言一致的系統資源視圖。調度是為了使在控制臺上運行的遊戲應用的高速緩存分裂最小化。當並發系統應用需要音頻時,由於時間敏感性而將音頻處理異步地調度給遊戲應用。多媒體控制臺應用管理器(如下所描述的)在系統應用活動時控制遊戲應用的音頻級別(例如,靜音、衰減)。輸入設備(例如,控制器142(1)和142(2))由遊戲應用和系統應用共享。輸入設備不是保留資源,而是在系統應用和遊戲應用之間切換以使其各自具有設備的焦點。應用管理器優選控制輸入流的切換,而無需知道遊戲應用的知識,並且驅動器維護關於焦點切換的狀態信息。相機26、28和捕捉設備20可為控制臺100定義附加輸入設備。圖3B示出了可以是圖1A-2中所示出的計算環境12的計算環境220的另一示例實施例。計算系統環境220隻是合適的計算環境的一個示例,並且不旨在對當前公開的主題的使用範圍或功能提出任何限制。也不應該將計算環境220解釋為對示例性操作環境220中示出的任一組件或其組合有任何依賴性或要求。在一些實施例中,各個所示的計算元素可包括被配置成實例化本公開的特定方面的電路。例如,本公開中使用的術語電路可包括被配置成通過固件或開關來執行功能的專用硬體組件。在其他示例實施例中,術語「電路」可包括通過體現可操作以執行功能的邏輯的軟體指令來配置的通用處理單元、存儲器等。在電路包括硬體和軟體的組合的示例實施例中,實施者可以編寫體現邏輯的原始碼,且原始碼可以被編譯為可以由通用處理單元處理的機器可讀代碼。在圖3B中,計算環境220包括計算機241,該計算機241通常包括各種計算機可讀介質。計算機241可以被連接到深度相機系統20,以接收例如骨架數據和其他元數據,從這些數據可創建和編輯電影。
計算機可讀介質可以是能被計算機241訪問的任何可用介質,而且包含易失性和非易失性介質、可移動和不可移動介質。系統存儲器222包括諸如R0M223和RAM 260之類的易失性和/或非易失性存儲器形式的計算機存儲介質。包含諸如在啟動期間幫助在計算機241內的元件之間傳輸信息的基本例程的基本輸入/輸出系統224 (BIOS)通常儲存儲在ROM 223中。RAM 260通常包含處理單元259可立即訪問和/或當前正在操作的數據和/或程序模塊。作為示例而非局限,圖3B示出了作業系統225、應用程式226、其它程序模塊227和程序數據228。應用程式226的一 個示例是用於向用戶呈現如在此所解釋的交互性故事體驗的故事應用226。圖3B還包括圖形處理器單元(GPU) 229,該圖形處理器單元229具有用於高速度和高解析度的圖形處理和存儲的相關聯的視頻存儲器230。GPU 229可通過圖形接口 231連接到系統總線221。計算機241也可以包括其他可移動/不可移動、易失性/非易失性計算機存儲介質。僅作為示例,圖3B示出了對不可移動、非易失性磁介質進行讀寫的硬碟驅動器238,對可移動、非易失性磁碟254進行讀寫的磁碟驅動器239,以及對諸如CD ROM或其它光學介質等可移動、非易失性光碟253進行讀寫的光碟驅動器240。可在示例性操作環境中使用的其他可移動/不可移動、易失性/非易失性計算機存儲介質包括但不限於,磁帶盒、快閃記憶體卡、數字多功能盤、數字錄像帶、固態RAM、固態ROM等。硬碟驅動器238通常通過諸如接口 234之類的不可移動存儲器接口連接到系統總線221,並且磁碟驅動器239和光碟驅動器240通常通過諸如接口 235之類的可移動存儲器接口連接到系統總線221。以上討論並在圖3B中示出的驅動器及其相關聯的計算機存儲介質為計算機241提供了對計算機可讀指令、數據結構、程序模塊和其他數據的存儲。在圖3B中,例如,硬碟驅動器238被示為存儲作業系統258、應用程式257、其他程序模塊256和程序數據255。注意,這些組件可與作業系統225、應用程式226、其他程序模塊227和程序數據228相同,也可與它們不同。在此作業系統258、應用程式257、其他程序模塊256以及程序數據255被給予了不同的編號,以說明至少它們是不同的副本。用戶可通過諸如鍵盤251和定點設備252 (通常稱為滑鼠、跟蹤球或觸摸墊)之類的輸入設備將命令和信息輸入計算機241。其他輸入設備(未示出)可包括話筒、操縱杆、遊戲手柄、圓盤式衛星天線、掃描儀等。這些以及其他輸入設備通常通過耦合到系統總線的用戶輸入接口 236連接到處理單元259,但也可通過諸如並行埠、遊戲埠或通用串行總線(USB)之類的其他接口和總線結構來連接。相機26、28和捕捉設備20可為控制臺100定義附加輸入設備。監視器242或其他類型的顯示設備也通過諸如視頻接口 232之類的接口連接至系統總線221。除了監視器以外,計算機還可包括諸如揚聲器244和印表機243之類的其他外圍輸出設備,它們可通過輸出外圍接口 233來連接。計算機241可使用到一個或多個遠程計算機(諸如,遠程計算機246)的邏輯連接而在聯網環境中操作。遠程計算機246可以是個人計算機、伺服器、路由器、網絡PC、對等設備或其他常見的網絡節點,且通常包括許多或所有以上相對於計算機241描述的元件,儘管在圖3B中僅示出了存儲器存儲設備247。圖3B中所示的邏輯連接包括區域網(LAN) 245和廣域網(WAN) 249,但也可以包括其他網絡。此類聯網環境在辦公室、企業範圍的計算機網絡、內聯網和網際網路中是常見的。當在LAN聯網環境中使用時,計算機241通過網絡接口或適配器245連接到LAN237。當在WAN聯網環境中使用時,計算機241通常包括數據機250或用於通過諸如網際網路等WAN 249建立通信的其他手段。數據機250可以是內置的或外置的,可經由用戶輸入接口 236或其他適當的機制連接到系統總線221。在聯網環境中,相對於計算機241所示的程序模塊或其部分可被存儲在遠程存儲器存儲設備中。作為示例而非限制,圖3B示出了遠程應用程式248駐留在存儲器設備247上。應當理解,所示的網絡連接是示例性的,並且可使用在計算機之間建立通信鏈路的其他手段。圖4描繪了可從捕捉設備20生成的用戶的示例骨架映射。在該實施例中,標識出各個關節和骨骼每隻手302、每個前臂304、每個肘306、每個大臂308、每個肩310、每個髖312、每條大腿314、每個膝316、每條小腿318、每個足320、頭322、軀幹324、脊椎的頂部326和底部328以及腰330。在跟蹤更多點的情況下,可標識出附加的特徵,比如手指或腳趾的骨骼和關節,或面部的各個特徵,如鼻和眼。圖5是提供電影創建的過程500的一實施例的操作的高級流程圖。過程500可由系統10或另一個系統來執行。出於說明的目的,將作出對圖1A、圖IB和圖2的示例系統10的參考,但過程500並不限於該示例。在步驟502,使用深度相機收集環境的深度信息。例如,使用深度相機系統20來收集深度信息。由於過程500可用於電影的創建,因此該信息可隨時間而收集。為了討論的目的,在步驟502中數據收集發生在某一「時間段」上。注意,步驟504-508發生在該相同的時間段上。在一個實施例中,系統10基於深度信息來維護房間的3D模型。在一些實施例中,步驟502包括收集RGB數據。例如,RGB相機28可用於收集可在電影中使用的視頻數據。作為一個示例,視頻數據可以是MPEG流。可以將深度信息下採樣到較低的處理解析度,使得其可以更容易地用較少的計算開銷來使用和處理。另外,可從深度信息中移除和/或平滑掉一個或多個高變度和/或含噪聲的深度值;可填入和/或重構缺少的和/或移除的深度信息的部分;和/或可對所接收的深度信息執行任何其他合適的處理,使得該深度信息可用於生成諸如骨架模型之類的模型。在步驟504中,基於深度信息來開發環境中的演員18的模型。在一個實施例中,模型是骨架模型。注意,可在無需演員佩戴任何專門的標記的情況下開發模型。可存儲這個模型以供以後使用。在步驟506中,使用深度信息來跟蹤演員的模型。諸如,該跟蹤可在步驟502中所指的「時間段」上發生。以下討論了跟蹤演員的模型的進一步細節。在步驟508中,至少基於對演員的模型的跟蹤來生成場景。注意,「場景」可包括多個數據幀。例如,場景可包括每秒30個數據幀。場景可以基於除對骨架模型的跟蹤以外的信息。在一些實施例中,房間內的對象被用作場景的虛擬道具。例如,參考圖1A,椅子13被呈現為房子21,且演員18被呈現為怪物17。在這個示例中,椅子13被用作虛擬道具。以下討論了與虛擬道具一起工作的進一步細節。在這個示例中,演員18被重新目標化。以下討論的重新目標化演員18的進一步細節。諸如,重新目標化演員18並不是必須的。在場景中可使用來自RGB相機28的視頻數據。因此,可從計算機生成的圖形、視頻數據或其結合生成場景。在步驟510中,系統10響應於用戶命令至少基於該場景來創建電影。對電影的創建包括允許用戶執導、捕捉和編輯電影。在一些實施例中,向由導演11或其他人所手持的電子設備提供場景的一個版本。該版本可以來自電子設備14的角度。因此,電子設備14可用作「虛擬取景器」。在一些實施例中,步驟510包括響應於來自電子設備14的請求而捕捉場景。例如,導演11可在電子設備14上作出選擇,使得電子設備14指令系統10場景應該被記錄。在一些實施例中,步驟508包括允許用戶使用系統10編輯電影。以下討論了允許用戶執導、捕捉和編輯電影的進一步細節。
圖6是將虛擬道具合併到電影中的過程600的一個實施例的流程圖。一般而言,過程600允許導演11將某些對象用作電影中的道具。過程600是在生成場景時可使用的一個技術。因此,過程600提供了過程500的步驟508的一個實施例的更多細節。在步驟602中,系統10從導演11或其他用戶處接收將環境中的對象用作道具的請求。在一個實施例中,這包括系統10拍攝房間的「靜止照片」,並在顯示器16上顯示該靜止照片。因此,最初用戶可在顯示器16上看見諸如椅子13之類的對象。如果期望,用戶可以令系統「重新目標化」椅子13,使得該椅子被表示成某一其他對象。系統10可具有可能對象的庫,以供用戶從中進行選擇。在用戶選擇了「虛擬對象」後,系統10可隨後將該虛擬對象顯示在顯示器上供用戶查看。用戶可隨後能夠通過例如修改諸如大小、顏色、形狀之類的屬性來修改虛擬道具。系統10隨後在將現實世界中的對象連結至它的時候存儲這個信息,使得在用戶移動該現實世界的對象的情況下系統10可跟蹤對象的位置。注意,步驟602可在過程500之前在初始設置期間發生。在步驟602的初始設置階段之後,可經過了一些時間。在步驟604中,在「拍攝」場景同時,系統10基於在過程500中從深度相機處收集到的深度信息確定環境的3D模型。在步驟606中,系統10確定現實世界對象在該3D模型中的位置(或多個位置)。由於對象可在拍攝期間移動,系統10可跟蹤該對象。在步驟608,系統基於現實世界對象的位置將虛擬道具結合在電影中。參考圖I的示例,系統10可將房子21結合到顯示器16上的場景19中。在一個實施例中,在至少部分地不使用起居室內的對象的情況下創建虛擬集合。例如,用戶可能希望具有沙灘背景的電影。系統10可在不依賴於起居室內的任何對象的情況下創建沙灘的集合。系統10可將這個集合顯示在各顯示屏(例如,顯示器16、電子設備14上的顯示器等)中的任何一個上。在一個實施例中,這是計算機生成的場景。導演11可通過例如「抓住」虛擬道具並移動它來修改虛擬集合。例如,導演11可指向顯示器16上的棕櫚樹。系統10可使用深度相機來確定導演正指向什麼。虛擬道具可被突出顯示在顯示器上,但是這並不是必需的。導演11可隨後作出抓住動作,並移動該虛擬道具。同樣,系統可使用深度相機來跟蹤導演的移動,以確定虛擬道具要移動到哪裡。圖7描繪了開發和跟蹤演員18的模型的過程700的流程圖。過程700是過程500的步驟504-506的一個實施例。該示例方法可以使用例如深度相機系統20來實現。可以掃描演員18來生成模型,比如骨架模型、網格人類模型、或人的任何其他合適的表示。在步驟702處,訪問深度信息(例如,深度圖像)。這可以是來自步驟502或過程500的深度信息。深度圖像可以是深度值的矩陣。該矩陣的每一個元素可表示環境的一區域。深度值可定義從深度相機20到該區域中的對象的距離。該矩陣中的元素可以被稱為像素。在判定步驟704處,確定深度圖像是否包括人類目標。這可以包括對深度圖像中的每一個目標或物體進行泛色填充,將該目標或物體與圖案進行比較以判斷深度圖像是否包括人類目標。例如,可以如上文所描述的那樣將深度圖像的選定區域或點中的像素的各種深度值進行比較,以確定可以定義目標或對象的邊緣。可基於所確定的邊緣來對Z層的可能Z值進行泛色填充。例如,與確定的邊緣相關聯的像素和該邊緣內的區域的像素可以彼此相關聯,以定義可以與圖案相比較的捕捉區域中的目標或對象,這在下面將更詳細地描述。
如果判定步驟704為真,則執行步驟706。如果判斷步驟704為假,則在步驟702處訪問附加的深度信息。每一個目標或對象與其比較的圖案可包括一個或多個數據結構,這些數據結構具有共同地定義人的典型身體的變量集合。可以將與例如視野內的人類目標和非人類目標的像素相關聯的信息與變量進行比較,以標識人類目標。在一個實施例中,可以基於身體部位,對該集合中的每一個變量賦予權重。例如,圖案中的諸如頭和/或肩之類的各種身體部位可以具有與其相關聯的權重值,這些權重值可以大於諸如腿之類的其他身體部位的權重值。根據一個實施方式,當將目標與變量進行比較以判斷目標是否可能是人類以及哪些目標可能是人類時,可以使用權重值。例如,變量和目標之間具有較大的權重值的匹配與具有較小權重值的匹配相比可產生目標是人類的更大似然性。步驟706包括掃描人類目標以尋找身體部位。可以掃描人類目標,以提供與人的一個或多個身體部位相關聯的諸如長度、寬度等等之類的測量值,以提供該人的準確模型。在一示例實施例中,人類目標可以被隔離,並且可以創建人類目標的位掩模來掃描一個或多個身體部位。可以通過例如對人目標進行泛色填充來創建位掩模,以便人類目標可以與捕捉區域元素中的其他目標或對象分離。然後,可以對於一個或多個身體部位分析位掩碼,以生成人類目標的模型,如骨架模型、網格人類模型等等。步驟708包括生成人類目標的模型。在一個實施方式中,可以使用由掃描的位掩模確定的測量值來定義骨架模型中的一個或多個關節。一個或多個關節被用來定義對應於人類的身體部位的一個或多個骨頭。一般而言,每個身體部位可被表徵為定義骨架模型的關節和骨骼的數學向量。身體部位在關節處可以相對於彼此移動。模型可以包括描述用戶的頭的旋轉的信息,使得得知用戶的耳朵的取向。在步驟710中,通過每秒鐘多次更新人的位置來跟蹤模型。隨著用戶在物理空間中移動,使用來自深度相機系統的信息來調整骨架模型,以使該骨架模型表示人。可選地,用戶18可佩戴慣性傳感器;然而,慣性傳感器並不是必須的。如果使用了慣性傳感器,則來自慣性傳感器的數據也可以用於跟蹤用戶。具體而言,可將一個或多個力施加到骨架模型的一個或多個受力方面,以將骨架模型的姿態調整成更加緊密地對應於物理空間中的人類目標的姿態。一般而言,可使用用於跟蹤一個或多個人的運動的任何已知技術。注意,可以使用過程700多於一次,以生成單個場景。以這種方式,可基於多次經過來構成場景,其中演員18通過每一次經過扮演不同的角色。例如,過程700可用於在各個非重疊的時間段上跟蹤用戶18。系統10可將所跟蹤的演員18的模型合併到場景中,其中在該場景中演員的運動在時間上重疊。作為一個示例,可針對不同的時間段中的每一個跟蹤不同的骨架模型。每一個骨架模型可對應於不同的角色。圖8是重新目標化演員18的模型的過程800的一個實施例的流程圖。可在基於演員18的模型生成場景時使用過程800。因此,過程800是過程500的步驟508的一個實施例。在一個實施例中,過程800創建跟蹤演員18的行為的非人類圖像。注意,在過程800之前,用戶可能已經通知系統10應如何重新目標化演員18。例如,用戶輸入命令(可能用姿勢或語音)來指令系統10應該將演員18重新目標化成老虎。同時,在過程800之前,可能已開發了演員18的模型。例如,可能移執行了過程700來開發骨架模型。在步驟802中,訪問重新設定的目標對象。例如,系統10基於用戶的將演員18重新目標化成老虎或怪物的在先請求來訪問已存儲的信息。在步驟804中,執行重新目標化。在一個實施例中,系統10將骨架模型映射成重新設定目標的骨架模型。例如,怪物相對於演員18而言可具有非常長的手臂。因此,在步驟804中可修改手臂骨頭的長度。在一些情況下,可修改關節角度。例如,可縮短怪物的頭部,並將其相對於演員的頭部的實際位置向下調整一角度。在重新映射之後,可將各種紋理覆蓋在經重新映射的骨架模型上。覆蓋紋理可包括添加諸如頭髮、衣服、皮膚之類的特徵。這些元素可以與或者可以不與演員18的特徵相關。例如,怪物所穿的衣服可以與演員18所穿的衣服不具有任何相關性。圖9是響應於用戶命令基於場景創建電影的過程900的一個實施例的流程圖。過程900是過程500的步驟510的一個實施例。過程900描述了基於場景來創建電影的高級細節。如上所述,場景19可以指在某一時間段上發生的動作,並可包括順序呈現的多個數據幀。在步驟902,場景19被呈現在電子設備14上,使得導演11可查看場景19。注意,可從導演11的角度呈現場景19。同樣,導演11可實時地查看場景19。例如,參考圖1A,導演11從電子設備14的角度查看場景19。在一種情況下,電子設備14被用作虛擬取景器,以允許導演11、攝像人員15等確定合適的相機角度。在步驟904中,由系統10響應於來自電子設備14的請求而捕捉場景19。步驟904在一旦確定已發現了合適的相機角度以後,允許導演11 (或其他人)捕捉場景19。在一個實施例中,在步驟904中捕捉描述了場景(例如,骨架數據)以及相機位置的元數據。以下描述進一步的細節。如由判定步驟906所指示的,導演11可捕捉如所期望的那麼多的場景19。在步驟908中,使用系統10來編輯電影。編輯允許用戶基於所有捕捉到的場景來創建電影。如所述的,在一些實施例中,用戶使用可被系統10識別的語音命令和/或姿勢來輸入編輯命令。圖10是在電子設備14處查看場景19的過程1000的一個實施例的流程圖。過程1000是過程900的步驟902的一個實施例。在步驟1002,確定電子設備14在環境中的位置。例如,系統10確定導演的電子設備14的位置。注意,該位置可包括在3D空間中的定位以及方向。可使用多種技術來確定電子設備14的位置。此外,可基於各種類型的數據來確定該位置。一個示例是使深度相機系統20標識出電子設備14的3D坐標。用於實現這個的一個技術是基於骨架數據來跟蹤導演的手的位置。在這種情況下,導演11可通知系統10電子設備14在例如導演的右手中。作為一個替換例,系統10可能能夠基於模式識別來識別電子設備14。在這種情況下,導演11可通知系統10存在某種類型的電子設備14正被使用。系統10可指令導演11在某一定位處拿著電子設備14,使得系統10可學習來識別該電子設備14。系統10可通過將起居室顯示在顯示器16上並突出顯示目標區域來將嚮導演11傳達該定位。定位電子設備14的另一種方式是在電子設備14上放置系統10能夠檢測的標記。在一個實施例中,電子設備14運行允許它被用作場景19的虛擬的預查看器的應用。這個應用可被配置成與系統10進行通信以發送幫助確定電子設備14的位置的信息。例如,電子設備14可以具有能夠被發送至系統10的GPS數據、指南針數據和/或加速計數據。加速計數據可用於確定電子設備14相對於地板傾斜了什麼角度。這可用於確定虛擬取景器正指向的那個角度。GPS數據可用於確定電子設備14在房間內的定位。在步驟1004中,可從電子設備14的角度確定場景19的一個版本。注意,為了允許該場景被導演實時地查看,這可以被實時地執行。在過程500中創建的場景19可以是從深度相機系統20的角度的。在一些實施例中,系統10存儲諸如房間的3D模型和演員18的模型之類的元數據。房間的3D模型可包括諸如要用作虛擬道具的對象的3D坐標之類的信息。演員18的模型可包括基於時間的骨架數據。通過這個信息,系統10能夠確定場景19從電子設備14的角度將如何顯現。在步驟1006中,場景19的將該版本傳送給電子設備14。一般地,這將是通過無線傳輸的,但是有線傳輸可以被使用。該傳輸可使用諸如802. 11、藍牙、蜂窩電話傳輸之類的各種機制。在步驟1008中,將場景19的該版本顯示在電子設備14上。可使用電子設備14上的前面提到的應用來與系統10進行通信,以接收場景19的該版本並將場景19呈現在顯示器上。如前所述,場景19的該版本可以是實時的版本。正如術語「實時」之前被使用的那樣,可存在由於系統10生成場景19的該版本所花費的時間的某一小延遲、傳輸延遲、呈現延遲或其他可能的延遲。在一些實施例中,步驟1008包括呈現經重新目標化的演員。例如,導演11可在看電子設備14上的顯示器時看到演員18被重新目標化成了 Godzilla(哥斯拉)。更具體的,導演11可以看到Godzilla正基於演員的運動而實時地移動。由於導演11可改變電子設備14的位置,過程1000可返回至步驟1002以再次確定電子設備14的位置。隨後可執行確定、傳送和從電子設備14的角度顯示場景19的其他步驟。過程1000可響應於用戶輸入指令系統10記錄應該結束的命令而結束。圖11是捕捉正被拍攝的電影的場景的過程1100的一個實施例的流程圖。過程1100是過程900的步驟904的一個實施例。過程1100可以響應於記錄場景19的請求而被執行。因此,過程1100可響應於進行記錄的請求而開始,並響應於停止記錄的請求而結束。在步驟1102中,接收來自電子設備14的記錄場景19的元數據的請求。例如,電子設備14可能響應於來自導演11的命令而正在運行允許它與系統10進行通信的應用。在步驟1104,系統10存儲描述了演員18的模型的元數據。作為一個示例,骨架數據被存儲。附加的元數據可繼續被存儲,直到用戶請求記錄停止為止。元數據還可包括描述了要用作虛擬道具的對像的位置的數據。 在步驟1106,系統10存儲描述了電子設備14的位置的元數據。作為一個示例,電子設備14的3D坐標被存儲。附加的元數據可繼續被存儲,直到用戶請求記錄停止為止。因此,系統10可存儲各自包含3D位置和時間值的數據對。元數據還可包括描述了電子設備14的方向的數據(例如,指南針數據、加速計數據等)。
在步驟1108中,系統10接收停止記錄場景的請求。如上所述,該請求可來自電子設備14。圖12是編輯電影的過程1200的一個實施例的流程圖。過程1200是過程900的步驟906的一個實施例。過程1200允許用戶使用諸如姿勢和語音命令之類的自然用戶輸入來編輯電影。過程1200可響應於進入編輯模式的用戶請求而開始。多種技術可用於進入編輯模式。在一個實施例中 ,用戶作出一個或多個姿勢,這些姿勢可被系統12解釋成進入編輯模式的請求。在步驟1202中,訪問電影的一個或多個場景的已存儲的元數據。例如,訪問在一次或多次執行過程900時所存儲的元數據。注意,可訪問許多不同的元數據的集合,使得許多不同的場景可被編輯。系統10可呈現至少一些場景的快照,以允許用戶選擇場景來進行編輯。在步驟1204,深度相機系統20接收被系統12解釋成編輯命令的輸入。注意,深度相機系統20可以具有可允許用戶輸入語音命令的一個或多個話筒。例如,用戶可指向這些場景中的一個,並說「select scene (選擇場景)」或「play scene (播放場景)」。在查看了各個場景之後,用戶可選擇某些場景並對其進行排序以供順序的呈現。系統12也可允許用戶對場景作出修改。例如,在查看了場景之後,用戶可決定被重新目標化成獅子的演員18應該更換為被重新目標化成老虎。為了進行重新目標化,用戶可說「re-target asatiger (重新目標化成老虎)」。作為響應,系統12可播放演員被重新目標化成老虎的場景。為了實現這個,系統12可訪問演員18的骨架模型、將其重新映射成老虎的骨架、以及覆蓋老虎的特徵。用戶還可改變場景的角度。例如,用戶可說「zoom in(放大)」或「zoomout (縮小)」來使系統12創建具有不同的變焦級別的場景的版本。用戶還可將音樂覆蓋在場景中。這些只是可能的編輯可能性中的一些;存在許多其他的編輯可能性。本發明系統的前述詳細描述是出於說明和描述的目的而提供的。這並不旨在窮舉本發明系統或將本發明系統限於所公開的精確形式。鑑於上述教導,許多修改和變型都是可能的。選擇所述實施例以最好地解釋本發明系統的原理及其實踐應用,從而允許本領域技術人員能夠在各種實施例中並採用各種適於所構想的特定用途的修改來最好地利用本發明系統。本發明系統的範圍旨在由所附權利要求書來定義。
權利要求
1.一種在具有深度相機的系統中的方法,包括 使用所述深度相機來收集環境的深度信息(502); 使用所述深度信息來生成所述環境中的演員的模型(504); 使用所述深度信息來跟蹤所述模型(506); 基於對所述演員的所述模型的跟蹤生成場景(508);以及 響應於用戶命令基於所述場景創建電影(510)。
2.如權利要求I所述的方法,其特徵在於,所述響應於用戶命令基於所述場景創建電影包括 針對一時間段確定電子設備在所述環境中的一個或多個位置; 針對所述時間段從所述電子設備的角度生成所述場景的一個版本;以及 向所述電子設備傳送所述場景的所述版本。
3.如權利要求2所述的方法,其特徵在於,所述響應於用戶命令基於所述場景創建電影包括 接收來自所述電子設備的記錄所述場景的請求。
針對所述時間段存儲描述了對所述演員的所述模型的跟蹤的第一元數據;以及 針對所述時間段存儲描述了所述電子設備在所述環境中的所述一個或多個位置的第二元數據。
4.如權利要求I至3中的任何一項所述的方法,其特徵在於,所述生成和所述跟蹤所述模型包括基於所述深度信息來生成和跟蹤骨架模型。
5.如權利要求4所述的方法,其特徵在於,所述生成場景包括重新目標化所述骨架模型以創建跟蹤所述演員的行為的非人類圖像,並且還包括實時地向電子設備提供所述場旦-5^ O
6.如權利要求I至5中的任何一項所述的方法,其特徵在於,所述生成場景還包括 接收使用所述環境中的對象來用作虛擬道具的請求; 基於所述深度信息確定所述對象在所述環境的3D模型中一個或多個位置;以及 基於所述對象在所述3D模型中的一個或多個位置將虛擬道具合併到所述場景中。
7.如權利要求I至6中的任何一項所述的方法,其特徵在於,所述生成場景還包括 生成虛擬場景;以及 將所述演員放置在所述虛擬場景中。
8.如權利要求I至7中的任何一項所述的方法,其特徵在於,所述響應於用戶命令基於所述場景創建電影包括 經由所述深度相機接收輸入以編輯所述電影; 訪問描述了根據權利要求I所述的方法來生成的多個場景的已存儲的元數據;以及 經由所述深度相機接收輸入命令,以基於所述已存儲的元數據編輯所述電影。
9.一種用於創建電影的系統(10),所述系統包括 深度相機(20); 耦合到所述深度相機的一個或多個處理器(32,101,108,229,259);以及耦合到所述一個或多個處理器的計算機存儲介質(34,112,222,230),所述計算機存儲介質具有存儲在其上的指令,當在所述一個或多個處理器上執行所述指令時,使得所述一個或多個處理器 使用所述深度相機來收集環境的深度信息; 使用所述深度相機來捕捉所述環境中的演員的運動,所述運動是使用無標記的技術來捕捉的; 基於所捕捉到的所述演員的運動生成場景; 確定要用作虛擬取景器的電子設備的一個或多個位置,所述一個或多個位置在一時間段與所述場景相關聯; 從所述電子設備在所述一個或多個位置處的角度生成所述場景的一個版本;以及 向所述電子設備提供所述場景的所述版本。
10.如權利要求9所述的系統,其特徵在於,所述指令還使所述一個或多個處理器 接收來自所述電子設備的記錄所述場景的元數據的請求。
存儲描述了所捕捉到的所述演員的運動的第一元數據;以及 存儲描述了所述電子設備的所述一個或多個位置的第二元數據。
全文摘要
本發明涉及起居室電影創建。公開了起居室電影創建的系統和方法。可使用包括深度相機的系統來執導、捕捉和編輯電影。可通過將起居室內的普通對象用作虛擬道具來創建虛擬電影集合。系統能夠使用深度相機來捕捉演員的運動並能夠基於此來生成電影。因此,不需要演員佩戴任何專門的標記來檢測他們的運動。導演可從「虛擬相機」的角度查看各場景並記錄那些場景以供以後編輯。
文檔編號G06T13/20GK102622774SQ20121002079
公開日2012年8月1日 申請日期2012年1月30日 優先權日2011年1月31日
發明者A·A-A·基普曼, A·福勒, R·波特 申請人:微軟公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀