專利名稱:用于在有限帶寬介質(zhì)上進行視頻通信的方法和裝置的制作方法
技術領域:
本發(fā)明一般涉及在窄帶寬或有限帶寬介質(zhì)上傳送數(shù)據(jù)的通信系統(tǒng)。更具體地,本發(fā)明涉及用于在諸如普通老式電話服務(POTS)線路的窄帶寬傳輸信道上進行視頻傳輸?shù)姆椒ê脱b置。
背景技術:
可視電話已經(jīng)在市場存在了若干年,但是僅獲得了有限的商業(yè)成功??梢曤娫挼牟怀晒Σ糠值貧w因于其無法良好工作的事實。將質(zhì)量可接受的聲音和視頻經(jīng)由現(xiàn)存的電話線路進行發(fā)送是存在問題的。
某些可用的視頻會議系統(tǒng)提供可接受的視頻和音頻質(zhì)量,并且已經(jīng)獲得了某些商業(yè)成功。這些視頻會議系統(tǒng)有賴于寬帶通信連接,例如租用線路、ISDN(綜合業(yè)務數(shù)字網(wǎng))、DSL(數(shù)字用戶線路)等等。為提供可接受的音頻和視頻質(zhì)量,高帶寬是必要的。
標準電話線路上的可用帶寬太低,以至于不能支持每秒30幀的行業(yè)標準視頻。當前,使用壓縮,在標準U.S.電話線路上可獲得的最佳性能大約是在一個方向中每秒15個視頻幀。因為每秒15個視頻幀小于人眼的暫留時間,其中,人眼的暫留時間通常大約是每秒24幀,所以每秒15個視頻幀將導致具有不可接受的跳動的視頻質(zhì)量。即便采用昂貴的壓縮硬件,所生成視頻的質(zhì)量也是不可接受的。
因此,對于視頻通信系統(tǒng)存在如下需要,即,當經(jīng)由標準模擬電話線路進行雙向傳送時,該視頻通信系統(tǒng)不依賴于昂貴的壓縮硬件并且仍然可以產(chǎn)生可接受的視頻顯示。
發(fā)明內(nèi)容
在一個實施例中,本發(fā)明提供了在第一幀和第二幀之間構造圖像的至少一個中間幀的方法。該方法包括識別在所述第一和第二幀中的至少一幀內(nèi)具有至少一個相關特性的多個點。該方法還包括確定所述多個點中的至少一個點是否已經(jīng)在所述第一幀和所述第二幀之間改變其位置。該方法還包括至少將所述多個點中已經(jīng)改變其位置的所述至少一個點與所述第一幀內(nèi)的第一像素以及所述第二幀內(nèi)的第二像素相關。該方法還包括確定所述第一像素的位置與所述第二像素的位置之間的關系。
在另一個實施例中,本發(fā)明提供了一種用于在第一和第二幀之間構造圖像的至少一個中間幀的系統(tǒng)。該系統(tǒng)包括識別器電路,配置為識別在所述第一和第二幀中的至少一個幀內(nèi)具有至少一個相關特性的多個點。該系統(tǒng)還包括比較電路,配置為確定所述多個點中的至少一個點是否已經(jīng)在所述第一幀和所述第二幀之間改變其位置。該系統(tǒng)還包括處理電路,配置為將所述多個點中已經(jīng)改變其位置的至少一個點至少與所述第一幀內(nèi)的第一像素和所述第二幀內(nèi)的第二像素相關。處理電路進一步配置為確定所述第一像素的位置和所述第二像素的位置之間的關系。
圖1是用于在有限帶寬介質(zhì)上進行視頻通信的系統(tǒng)的一個實施例的方框圖。
圖2是在圖1的有限帶寬視頻通信系統(tǒng)的一端生成并且在其上進行傳輸?shù)囊曨l流的視圖。
圖3是從圖2所示視頻流中選出的多個幀的視圖,所述視頻流在圖1的視頻通信系統(tǒng)上進行傳輸。
圖4是在目的地處顯示的視頻幀的視圖,其包括來自圖3的發(fā)送幀以及重構幀。
圖5是示出在收發(fā)機處重構中間幀的方法的一個實施例的流程圖。
圖6是示出對視頻流中變化對象的元素進行識別的方法的一個實施例的流程圖。
圖7A-B是示出識別作為對象邊界元素的元素并且對視頻幀內(nèi)的對象進行輪廓勾勒(outlining)和定位的方法的一個實施例的流程圖。
圖8是示出根據(jù)圖7所示方法對對象進行輪廓勾勒的方法的一個實施例的流程圖。
圖9A是例如球運動通過單色背景的實例的四個視頻幀的視圖。
圖9B是與用于圖9A的多個視頻幀的不同矩陣相對應的幀表示的視圖。
圖10A是圖9A的四個視頻幀的更詳細視圖,其對在確定球的運動方程過程中所使用的點進行識別。圖10B是圖9B的幀表示的更詳細視圖,其對在確定球的運動方程過程中所使用的點進行識別。
圖11A-11D示出在視頻通信目的地處重構用于視頻流輸出的視頻幀的方法的一個實施例。
圖12是源收發(fā)機電路的一個實施例的方框圖。
圖13是目的地收發(fā)機電路的一個實施例的方框圖。
具體實施例方式
現(xiàn)在,將參考附圖對本發(fā)明的實施例進行描述,其中,類似的標號在全文中指類似的單元。不應以任何有限的或限制性的方式來理解在本文提供的描述中所使用的術語,僅僅是結(jié)合了本發(fā)明某些特定實施例的詳細描述來使用該術語。此外,本發(fā)明的實施例可以包括若干新穎特征,但是這些新穎特征中沒有一個單一特征單獨形成其預期屬性或是實現(xiàn)本文所述發(fā)明所必需的。
圖1是配置為在有限帶寬介質(zhì)上傳送視頻的視頻通信系統(tǒng)20的一個實施例的方框圖。系統(tǒng)20包含視頻源22,其連接到源發(fā)射機/接收機(收發(fā)機)24。例如,視頻源22可以是諸如照相機的圖像采集設備、諸如數(shù)字化視頻光盤(DVD)播放器的視頻信號發(fā)生器、盒式磁帶錄像機(VCR)、或者具有視頻輸出的任何設備(例如計算機)或者從遠程源接收視頻信號的通信站。將源收發(fā)機配置為經(jīng)由普通老式電話服務(POTS)28與目的地收發(fā)機26進行通信,普通老式電話服務(POTS)28也被稱為公共交換電話網(wǎng)絡(PSTN)。本領域技術人員應當清楚,還可以將收發(fā)機24、26配置為用于無線通信。為了便于描述,本文利用標記“源”和“目的地”來引用視頻通信系統(tǒng)20的某些單元,以便說明僅在該實例中的視頻傳輸方向,然而這些標記并不限制本發(fā)明的范圍。
將目的地收發(fā)機26連接到視頻顯示器34,將視頻顯示器34配置為對在目的地收發(fā)機26處所接收的視頻進行顯示。系統(tǒng)還可以包括附加的視頻源36以及附加的顯示器38,其中附加的視頻源36連接到目的地收發(fā)機26和顯示器34,并且附加的顯示器38連接到視頻源22和源收發(fā)機24。
在一個實施例中,視頻源22包含圖像采集設備,其以諸如至少每秒30幀的速率對圖像進行采集。源收發(fā)機24與目的地收發(fā)機26進行通信,以便測試傳輸線路可接受的最高幀傳輸速率,隨后以傳輸線路28可接受的、諸如每秒1幀的速率將圖像發(fā)送到目的地收發(fā)機26。在一個實施例中,對幀傳輸速率進行最大化,同時保證可接受的數(shù)據(jù)傳輸精度,在這種情況下,幀傳輸速率可以大于每秒1幀。源收發(fā)機24還在目的地收發(fā)機請求驗證或確認時與目的地收發(fā)機26進行通信。
如上文所述,目的地收發(fā)機26與源收發(fā)機24進行通信,以便對傳輸線路28進行測試以確定可接受的最高幀傳輸速率。如果由目的地收發(fā)機26所接收的數(shù)據(jù)的質(zhì)量變得不可接受,那么目的地收發(fā)機26與源收發(fā)機24進行協(xié)調(diào),以便動態(tài)地改變幀傳輸速率。如下文更詳細描述的,目的地收發(fā)機26從接收自源收發(fā)機26的圖像或幀中重構視頻流,與源收發(fā)機24關于視頻流重構處理的任何部分進行確認和驗證。在一個實施例中,重構的視頻流包括在顯示器34上的多達每秒30幀的顯示。
參考圖2,源收發(fā)機24對視頻流100進行接收,該視頻流100包含來自視頻源22的多個幀。在該示例性實施例中,源收發(fā)機24從將要傳輸?shù)囊曨l流中選擇每30幀中的第一幀(原始的(unshaded)幀1、幀2、幀3和幀4)。散布在發(fā)送幀之間的幀在這里被稱為中間幀,將其存儲在源收發(fā)機一段預定的時間周期,例如30秒。這樣,如在這里所使用的,“中間”幀不僅僅是指在兩個發(fā)送幀的中間處創(chuàng)建的幀,還可以指在兩個發(fā)送幀之間創(chuàng)建的任何幀。在一個實施例中,中間幀的預定存儲周期至少是目的地收發(fā)機26詢問源收發(fā)機24關于中間幀的信息所需要的時間長度。
如圖3所示,源收發(fā)機24將所選擇的幀105發(fā)送到目的地收發(fā)機26,所選擇的幀105包含幀1、幀2、幀3和幀4。源收發(fā)機24可以繼續(xù)在某一長度的時間內(nèi)以這種格式發(fā)送幀。當目的地收發(fā)機26在重構中識別出問題或困難時,目的地收發(fā)機26從源收發(fā)機24請求信息。如下文所詳細描述的,在目的地收發(fā)機26處接收均勻分布的視頻信息幀105,并將其用于在每個接收幀之間重構29個幀。圖4示出重構幀與接收幀(幀1、幀2、幀3、幀4)的合并,其構成了用于在視頻顯示器34上顯示的連續(xù)視頻流110。期望使重構的視頻流110類似于原始輸入的視頻流100(見圖2)。
I.幀傳輸速率的調(diào)節(jié)可以通過最小化收發(fā)機24、26之間所發(fā)送的信息數(shù)量來減少視頻通信系統(tǒng)20所使用的信道帶寬。例如,在傳輸線路28上幀傳輸速率的減少對應于帶寬使用的減少。
在幀傳輸速率調(diào)節(jié)的一個實施例中,對從源收發(fā)機24發(fā)送的多個信息幀進行比較,以便確定從一幀到下一幀發(fā)生變化的像素的總百分比。目的地收發(fā)機26將一幀的各個像素與另一幀的各個像素進行比較,以便確定每個像素的信息是否在幀間發(fā)生了變化,或者確定像素信息是否在閾值之上或之下改變了預定的數(shù)量。在一個實施例中,閾值是從一幀到下一幀具有不同像素信息的總像素的百分比,其可以在從40%至80%的范圍內(nèi)。例如,當從一幀到下一幀(例如從幀1到幀2)過程中幀內(nèi)60%以上的像素改變了像素信息時,將從源收發(fā)機24發(fā)送的視頻幀(幀1、幀2、幀3、幀4)識別為處于60%以上的范圍。結(jié)果,用于每秒發(fā)送一幀的像素變化閾值是60%,從而在該實例中,源收發(fā)機24繼續(xù)將每30幀中的第一幀發(fā)送到目的地收發(fā)機26。然而,一旦總變化率下降到小于60%,目的地收發(fā)機26就逐漸增加使用目的地緩沖器中的信息,并且可以以小于每秒一幀的頻率發(fā)送視頻幀。例如,在一列視頻幀中,僅有一小部分可能隨著時間而變化,例如閃光(flashing light)占視頻幀內(nèi)總像素的不足60%。在這種情況下,源收發(fā)機24可以將幀傳輸速率減少到低于每秒一幀,并且僅發(fā)送關于從一幀到下一幀具有變化信息的像素的信息。這樣,源收發(fā)機24可以僅在必要或期望時才發(fā)送完整幀,并且可以繼續(xù)僅發(fā)送對象和背景信息,同時保持該信息獨立于并且鏈接到與其關聯(lián)的幀和對象。如在這里所使用的,不必將術語“對象”限制于觀察者的眼睛所觀看到的“物理”對象,其是指具有共同或相關特性的兩個或多個(即一組)像素,例如,兩個或多個經(jīng)歷相同位置或運動速率、相同旋轉(zhuǎn)速率及/或相同內(nèi)容變化速率等的像素。如果期望,可以完整地發(fā)送整個幀、背景或?qū)ο?,其中,無論使用何種方法在目的地收發(fā)機26處生成幀,視頻流重構過程幾乎都是相同的。
II.幀內(nèi)容的分類在一個實施例中,根據(jù)各種標準對接收幀的內(nèi)容進行分類。在一個實施例中,第一,將幀的所有內(nèi)容(即,各個像素)分類為背景部分或?qū)ο蟛糠?。第二,將對象分類為靜止對象或運動對象。第三,根據(jù)運動類型對運動對象進行分類,其中,運動包括(1)平移、(2)旋轉(zhuǎn)或(3)自旋,或者這三類運動的任意組合。對于運動對象,系統(tǒng)確定運動方程,以便確定對象在中間幀內(nèi)的位置。對于靜止對象,系統(tǒng)確定對象中每個變化元素在中間幀內(nèi)的像素值。每個對象將具有運動方程或靜止方程。
根據(jù)對一列幀的內(nèi)容進行分類的方法的一個實施例,目的地收發(fā)機26首先對該列幀內(nèi)的靜止元素進行定位,之后對運動像素進行識別。為了說明,使用四(4)幀比較來尋找靜止元素和運動像素。將包含多個像素的每一幀算術映射為相應的矩陣XN,其中用于每個矩陣X的下標“N”對應于幀號。元素xij在矩陣中的物理位置對應于像素在視頻幀內(nèi)的物理位置。下標“i”和“j”分別對應于元素x在矩陣X中行和列的位置。矩陣中元素的數(shù)值是相應幀內(nèi)的像素的值,并且可以包括諸如對應于紅、綠和/或藍級別的值的顏色信息。將下列矩陣X1到X4定義為用于四幀比較,其中指定幀(例如幀1)是包括30個幀的一列幀中的第一幀幀1=X1(像素矩陣)(1)幀2=X2(像素矩陣)(2)幀3=X3(像素矩陣)(3)幀4=X4(像素矩陣)(4)III.使用有限組幀重構視頻幀的方法概述在圖5的流程圖中示出了使用有限組幀對視頻幀進行重構的方法50的一個實施例。在一個實施例中,由目的地收發(fā)機26實現(xiàn)方法50,但是也可以由源收發(fā)機24或者由源和目的地收發(fā)機24、26的組合來實現(xiàn)方法50。方法50從步驟55開始,并且繼續(xù)進行到步驟60,其中,目的地收發(fā)機對一組幀(例如,幀1、幀2、幀3和幀4)內(nèi)的對象或多個對象進行識別。在該實施例中,源收發(fā)機將被識別的幀發(fā)送到目的地接收機。通過在步驟60中對一個或多個對象進行識別,將幀內(nèi)剩余的、未被識別為對象部分的像素或元素分類作為靜止背景部分。在步驟60之后,方法50繼續(xù)進行到步驟65,其中,目的地收發(fā)機26確定被識別的對象是否在運動。如果在步驟65中對所述確認的答案為否,即對象不在運動,那么方法50繼續(xù)進行到步驟70,在步驟70中,目的地收發(fā)機26將對象分類為靜止對象。如果在步驟65中對所述確認的答案為是,即對象在運動,那么方法50繼續(xù)進行到步驟75,在步驟75中,目的地收發(fā)機26將對象分類為運動對象,并且確定對象的運動方程。對于在步驟60中識別的所有對象,重復執(zhí)行步驟65和70或75。
對于在步驟70中所確定的、被識別為靜止對象的對象,目的地收發(fā)機26確定中間幀內(nèi)靜止對象的像素值(例如,顏色分量信息)。為了確定靜止對象在中間幀內(nèi)的像素值,目的地收發(fā)機可以使用若干規(guī)則中的一個規(guī)則。在一個實施例中,目的地收發(fā)機可以使用與(a)在幀1中、(b)在幀2中和/或(c)通過對幀1和幀2中靜止對象的每個像素導出平均像素信息中所找到的靜止對象的像素值相同的像素值。在另一個實施例中,目的地收發(fā)機可以從源收發(fā)機為靜止對象的一個或多個像素請求像素信息。對于背景中的像素,幀1、中間幀和幀2中的像素值幾乎是相同的。
對于被識別為運動對象并且具有如步驟75中所確定的運動方程的對象,方法50繼續(xù)進行到步驟85。在步驟85中,目的地收發(fā)機執(zhí)行運動方程,從而確定在中間幀中對象的位置以及對象的像素值。在步驟85之后,目的地收發(fā)機使用來自步驟60、75和85的確定,在步驟90中對中間幀進行重構。在步驟90中,將一組幀中未在步驟60中被識別為對象的像素或元素在中間幀上映射為靜止背景部分。同樣,在步驟90中,使用在步驟70中所確定的靜止對象的像素值以及運動對象的對象位置和像素值信息來重構中間幀。在步驟90中對中間幀進行重構之后,方法50繼續(xù)進行以在步驟95中結(jié)束。在下文中將對方法50中的每個步驟進行更詳細的描述。
IV.背景元素將幀內(nèi)不是對象部分的所有像素定義為處于背景平面上,并且因此不將其定義為將要進行數(shù)學處理的對象。背景平面可以具有顏色和/或陰影變化,因此顏色和/或陰影變化不總是用于定義對象的可靠參數(shù)。然而,該信息仍可用于獲得關于正在傳送的視頻幀的基本信息,因此可將這些信息傳送到目的地收發(fā)機。
為了在從幀1到幀4的幀流中尋找靜止或背景元素,目的地收發(fā)機26將對應于所述四個幀中的每一幀的幀矩陣(X1、X2、X3和X4)進行比較(例如彼此相減),以便獲得多個差異矩陣ΔXNN。例如,由差異矩陣ΔX12來表示對幀1和幀2的比較。在本實施例中,源收發(fā)機24每秒發(fā)送一個幀,使得幀1和幀2的傳輸之間的時間是1秒,并且?guī)?和幀4的傳輸之間的時間是3秒。因此,每個差異矩陣還具有相應的時間差異ΔTNN,其中,例如差異矩陣ΔX12的時間差異ΔT12是1秒。因此,使用幀矩陣X1、X2、X3和X4來定義下面的差異矩陣,并且每個差異矩陣由差異矩陣元素Δxij組成ΔX12=X1-X2,其中,ΔT12=1秒(5)ΔX13=X1-X3,其中,ΔT13=2秒(6)ΔX14=X1-X4,其中,ΔT14=3秒(7)ΔX23=X2-X3,其中,ΔT23=1秒(8)ΔX34=X3-X4,其中,ΔT34=1秒(9)根據(jù)上述關系,差異矩陣中的每個零值元素Δxij指示了在差異矩陣中初始矩陣幀和相應的最后矩陣幀之間的靜止元素。將差異矩陣中由零值指示的靜止元素分類為靜止背景部分或者位于非運動對象內(nèi)部。一旦目的地收發(fā)機26使用差異矩陣識別出靜止或背景元素,就將其映射到存儲器中。差異矩陣中的任何非零值定義了運動或變化的元素。僅僅對于來自差異矩陣的非零或非靜止元素,首先對運動進行估計,其次對靜止變化進行估計。
在一個實施例中,使用大于但是接近于零的閾值來確定差異矩陣中的非零元素。例如,在差異矩陣中,將變化超過5%的元素確定為非零元素,并且將變化小于5%的元素確定為零元素。在一個實施例中,元素的變化百分比是指像素值的變化百分比,其中將像素定義為8比特二進制數(shù)。例如,閾值可以是1%、2%、3%、4%、5%、6%、7%、8%、9%、10%、11%、12%、13%、14%或15%,并且可以隨著所使用的圖像采集設備以及主體被拍攝的環(huán)境而改變。另外,可以動態(tài)地對閾值進行調(diào)節(jié)。
V.定義對象如上文所述,將對象識別為運動對象或靜止對象。運動對象具有在某個前景平面上移動的、可定義的邊界,其中,通過利用具有相同或不同系數(shù)的基本方程由聯(lián)合的(例如相鄰的)像素運動來定義運動對象。靜止變化的對象通常是指具有可定義邊界的對象,該對象具有很少或沒有與其相關的運動,但是可能包含在幀流上的顏色和亮度的變化。該描述首先提供運動對象的特征。
如上文所述,運動對象的視頻運動是其在幀流或者從X1到X2到X3到X4…到XN的矩陣內(nèi)部的物理運動。運動對象的邊界可以是半連續(xù)的,并且通常在顏色上與幀序列中的背景或其它對象不同。構成對象的元素可以包含顏色和亮度的變化,并且構成對象的元素數(shù)目可以隨著對象變大或變小、移近或遠離圖像采集設備或者改變形狀而增加或減少。例如,由于對象的變形或旋轉(zhuǎn),包括邊界在內(nèi)的、構成運動對象的元素也可以以不同的速率運動。
運動對象邊界上的元素是相對于背景的運動變化的元素。運動對象的邊界或輪廓包含具有類似運動變化的多個單一元素,所述單一元素在相鄰側(cè)包括至少兩個具有類似運動變化的元素,并且在其相鄰處包括至少一個具有非類似運動變化的元素,這樣,就構成了勾勒出運動對象輪廓的連接邊界。在下文中將對該概念進行更詳細的討論。
靜止變化對象是具有很少或沒有與其相關的運動的對象,但是其可以包含在變化的幀流或者從X1到X2到X3到X4…到XN的矩陣上的顏色和亮度的變化。靜止變化對象的實例將是閃光,其中,對象不是從幀到幀運動,而是在顏色和亮度上發(fā)生變化。
在圖6的流程圖中示出了識別對象的方法的一個實施例。方法從方框500開始。在步驟505中,目的地收發(fā)機26通過從左到右、自上至下地搜索每一行矩陣元素,對從幀1到幀2的第一個差異矩陣ΔX12中的第一個非零元素Δxij進行定位。
為了驗證非零元素可能不是壞元素或錯誤元素(諸如“雪花”),目的地收發(fā)機26在步驟510中確定差異矩陣ΔX12中的相鄰或相關元素(像素)Δx(i-1)(j-1)、Δx(i-1)j、Δx(i-1)(j+1)、Δxi(j-1)、Δxi(j+1)、Δx(i+1)(j-1)、Δx(i+1)j和Δx(i+1)(j+1)中是否存在非零元素。如果所有的相鄰元素都為零,那么將元素xij識別為壞元素而不是變化的元素,其中,元素xij實際上是靜止背景部分或者處于主對象的內(nèi)部。如果一個或多個相鄰元素具有非零值,那么初始元素是變化的元素,并且其位于運動對象的邊界上、位于靜止背景的變化部分上或者位于旋轉(zhuǎn)對象的內(nèi)部。如果沒有找到具有非零值的相鄰元素,那么,就在步驟515中以元素的真實零值對差異矩陣ΔX12進行更新。在步驟520中,對于ΔX12、ΔX23和ΔX34中的所有元素,重復執(zhí)行步驟505至515。在下文中參考圖7對圖6中所說明的方法進行更詳細的描述。
在步驟520之后,將ΔX12、ΔX23和ΔX34中不等于零的元素定義為變化的元素,并且其作為運動對象或者靜止變化對象部分。使用更新的差異矩陣ΔX12、ΔX23和ΔX34對對象的邊界元素進行識別,并且勾勒出對象的輪廓且將其放置在合適的幀內(nèi)。隨后,確定與每個潛在對象相關的運動方程以及構成該對象的其它元素,這樣,就基本上對運動對象的所有元素進行了定義。
A.定位對象邊界圖7A-B是示出將元素識別為對象的邊界元素以及對視頻幀內(nèi)的對象進行輪廓勾勒和定位的方法的流程圖。參考圖7A,方法600開始于步驟601并且繼續(xù)進行到步驟605。在步驟605中,目的地收發(fā)機26對差異矩陣ΔX12、ΔX23和ΔX34中的第一個非零元素進行定位,從而對運動或變化對象的邊界部分或壞元素進行識別。例如,在步驟605中通過諸如從矩陣的第一行開始向下繼續(xù)地、從左到右地搜索行,對差異矩陣ΔX12中的第一個非零元素Δxij進行定位。
ΔX12=Δx11Δx12Δx13···Δx1_176Δx21Δx22Δx23···Δx2_176Δx31Δx32Δx33···Δx3_176···············Δx144_1Δx144_2Δx144_3···Δx144_176...(10)]]>為了驗證第一個非零元素Δxij可能不是壞元素,而是運動或變化的元素,目的地收發(fā)機26在步驟610中對ΔX12中的相鄰或相關元素(像素)Δx(i-1)(j-1)、Δx(i-1)j、Δx(i-1)(j+1)、Δxi(j-1)、Δxi(j+1)、Δx(i+1)(j-1)、Δx(i+1)j和Δx(i+1)(j+1)進行分析,以便確定它們是否全部等于或非常接近于零。對于步驟610中的分析,針對非零元素Δxij,將差異矩陣ΔX12減小為下列矩陣[Δxij]。
=Δx(i-1)(j-1)Δx(i-1)jΔx(i-1)(j+1)Δxi(j-1)ΔxijΔxi(j+1)Δx(i+1)(j-1)Δx(i+1)jΔx(i+1)(j+1)...(11)]]>如果在步驟610中目的地收發(fā)機26確定為否,即減小的矩陣[Δxij]中的相鄰元素也不是非零的,那么在步驟615中將幀X1內(nèi)的元素xij識別為壞元素而不是變化的元素,但是可以將其識別為靜止背景的真實部分或者對象的內(nèi)部部分。因此,在步驟615中還對ΔX12中Δxij的值進行更新,并且方法通過返回到步驟605繼續(xù)為下一個非零元素搜索差異矩陣。
如果在步驟610中目的地收發(fā)機26確定為是,即相鄰元素也是非零的,那么將幀X1內(nèi)的元素xij識別為變化的元素。該變化的元素可以位于或接近于運動對象的邊界、靜止背景的變化部分或者旋轉(zhuǎn)對象的內(nèi)部。一旦對第一個真實的變化元素(ΔX12中的Δxij)進行了定位,就在步驟620中對元素進行分析,以便確定其是否位于運動或旋轉(zhuǎn)對象的邊界或一部分上、或者在靜止對象的變化部分上。
如果元素在變化、運動和/或旋轉(zhuǎn)對象的邊界上,那么必然有至少兩個具有類似變化的相鄰元素,并且必然有至少一個具有非類似變化的相鄰元素,從而構成勾勒出對象輪廓的連接邊界部分。如果對象僅僅是自旋或靜止變化的,那么將在ΔX12、ΔX13和ΔX14的相同位置找到所述元素。如果對象是運動的,那么所述元素將在幀間可預測地運動,并且可以相當精確地確定其在后續(xù)幀內(nèi)的位置。這樣,目的地收發(fā)機26在步驟620中確定對于非零元素是否存在至少兩個具有類似運動變化的相鄰元素以及是否存在至少一個具有非類似運動變化的相鄰元素。例如,減小的差異矩陣元素Δx(i)(j-1)和Δx(i+1)(j-1)可以具有與非零元素Δxij相同的值,并且減小的差異矩陣元素Δx(i)(j-1)可以具有與非零元素Δxij不同的值。在一個實施例中,如果在步驟620中目的地收發(fā)機26確定為否,即對于非零元素Δxij,不存在至少兩個具有類似變化的相鄰元素并且不存在至少一個具有非類似變化的相鄰元素,那么在步驟625中將元素識別為在對象內(nèi)部,并且方法返回到步驟605??蛇x地,如果在步驟620中目的地收發(fā)機26確定為是,即對于非零元素Δxij,存在至少兩個具有類似變化的相鄰元素并且存在至少一個具有非類似變化的相鄰元素,那么在步驟630中將元素假定為對象的邊界元素。
在一個實施例中,在步驟630中沒有將非零元素Δxij假定為在對象的邊界上,并且目的地收發(fā)機26對減小的矩陣[Δxij]執(zhí)行附加分析,以便確定元素是否是在對象邊界內(nèi)部變化的元素。例如,實心的彩色運動或旋轉(zhuǎn)對象除了在對象的邊界上之外可能不具有任何非零差異矩陣值(Δx)。如果存在至少六個具有類似變化的相鄰元素,就將非零元素Δxij識別為變化對象邊界內(nèi)部的變化元素。可以在步驟625中進行上述決定。
仍然參考圖7A,在步驟625和630之后,方法600繼續(xù)進行到步驟635,其中,在步驟625和630中,將非零元素識別為在變化或旋轉(zhuǎn)對象內(nèi)部或者對象的邊界元素,在步驟635中,目的地收發(fā)機確定在差異矩陣中是否還有未分析的剩余非零元素。如果差異矩陣中剩余未被檢測的非零元素,那么方法600返回到步驟605。如果差異矩陣中沒有剩余非零元素,那么如圖7B中所示,方法繼續(xù)進行到步驟645。
在步驟645中,當邊界元素出現(xiàn)在第一幀中時,目的地收發(fā)機26確定邊界元素是否在對象的邊界上;或者當邊界元素出現(xiàn)在差異矩陣比較的第二幀中時,目的地收發(fā)機26確定邊界元素是否在對象的邊界上。例如,如果邊界元素Δxij來自差異矩陣ΔX12,那么當對象出現(xiàn)在幀1中時,方法確定相應的邊界元素xij是否在對象的邊界上,或者當對象出現(xiàn)在幀2中時,方法確定相應的邊界元素xij是否在對象的邊界上。如果在步驟645中目的地收發(fā)機確定為是,即邊界元素xij在差異矩陣比較的第一幀內(nèi)(在當前實例中是幀1)的對象邊界上,那么在步驟650中將元素存儲為變化、運動和/或旋轉(zhuǎn)對象的邊界元素。如果在步驟645中目的地收發(fā)機確定為否,即邊界元素xij不在第一幀內(nèi)的對象邊界上而在差異矩陣比較的第二幀內(nèi)(在當前實例中是幀2)的對象的邊界上,那么在步驟655中將其丟棄。在步驟645和655之后,方法600繼續(xù)進行到步驟660,其中,目的地收發(fā)機26確定差異矩陣中是否有在步驟645中未被檢測的剩余邊界元素。如果在步驟660中目的地收發(fā)機26確定為是,即在差異矩陣中剩余有未被檢測的邊界元素,那么方法600返回到步驟645。如果在步驟660中目的地收發(fā)機26確定為否,即在差異矩陣中沒有未被檢測的剩余邊界元素,那么方法600繼續(xù)進行到步驟665。
在步驟645中確定為否時,邊界元素xij不在第一幀內(nèi)的對象邊界上,那么目的地收發(fā)機26假定對象正在從左到右地在差異矩陣比較的幀之間移動。例如,在對象從左到右地在幀1和幀2之間移動并且目的地收發(fā)機26從左到右地對差異矩陣進行掃描時,在差異矩陣ΔX12中識別的對象的第一個邊界元素將不在如對象在幀1中出現(xiàn)的對象邊界上,而在如對象在幀2中出現(xiàn)的對象邊界上。這樣,在一個實施例中,當目的地收發(fā)機26確定為否,即邊界元素xij不在第一幀內(nèi)的對象邊界上時,目的地收發(fā)機26通過自底向上、從右到左地掃描差異矩陣來重復步驟645至660。因此,目的地收發(fā)機26可以識別對象邊界元素在差異矩陣比較的第一幀內(nèi)的位置。
B.勾勒對象輪廓一旦通過重復步驟645至660對單一對象在差異矩陣比較的第一幀內(nèi)的所有邊界元素進行了定位,就在步驟665中勾勒出對象的輪廓。在步驟665中,通過將在對象邊界上識別的具有類似顏色變化的相鄰相關的元素連接到一起來勾勒差異矩陣比較的第一幀內(nèi)的對象的輪廓。在一個實施例中,將每個幀矩陣XN中的元素xij表示為數(shù)值形式,其對應于給定像素的紅、綠和藍級別。因此,通過提供對第一幀和第二幀內(nèi)矩陣元素值的數(shù)學比較,差異矩陣元素Δxij提供了關于像素是否在幀之間改變顏色的信息。這樣,具有類似值的差異矩陣Δxij指示了類似的顏色變化,并且相鄰的差異矩陣元素指示了分配給單一對象上邊界元素的類似顏色變化。
在圖8中示出對對象輪廓進行勾勒的示例性方法665,其中方法開始于步驟700。在步驟705中,目的地收發(fā)機26將被識別為邊界元素的差異矩陣元素Δxij的值與也被識別為邊界元素的相鄰差異矩陣元素的值進行數(shù)學比較。在步驟710中,例如,目的地收發(fā)機26確定所述比較是否產(chǎn)生5%或小于5%的差異。如果在步驟710中目的地收發(fā)機26確定為是,即所述比較產(chǎn)生5%或小于5%的差異,那么在步驟715中將相鄰元素識別為相關元素并且作為單一對象的輪廓部分。在步驟715之后,目的地收發(fā)機26在步驟720中確定對象的輪廓是否完整。如果在步驟720中目的地收發(fā)機確定為是,即對象的輪廓完整,那么方法640繼續(xù)進行到結(jié)束步驟725。如果在步驟720中目的地收發(fā)機確定為否,即對象的輪廓不完整,那么方法返回到步驟705。如果在步驟710中目的地收發(fā)機26確定為否,即所述比較沒有產(chǎn)生5%或小于5%的差異,那么在步驟730中不將相鄰元素識別為單一對象輪廓上的相關元素。在步驟730之后,方法返回到步驟705。如本領域的技術人員所意識到的,用于識別相關元素的差異閾值可以大于或小于5%,例如,其可以是1%、2%、3%、4%、6%、7%、8%、9%和10%,并且閾值5%僅用于說明的目的地。
C.識別和定位發(fā)送幀內(nèi)的被勾勒出輪廓的對象再次參考圖7B,在步驟665中勾勒出對象的輪廓之后,使用被勾勒出輪廓的對象上的元素,以便識別對象在每個發(fā)送視頻幀X1、X2、X3和X4內(nèi)的位置。具體地,在步驟665之后,方法600繼續(xù)進行到步驟670,其中,選擇沿著邊界并且在對象相對側(cè)面上的四個元素,并且將其用于根據(jù)顏色和位置信息對每一幀X1、X2、X3和X4內(nèi)的對象進行識別和定位。在一個實施例中,第一個元素是當對差異矩陣進行掃描時被定位對象的第一個邊界元素。在一個實施例中,這些被選擇的元素在對象的相對側(cè)面上,其中通過連接環(huán)繞在對象周圍的這些元素所畫出的線形成矩形,并且更優(yōu)選地形成正方形。當在輸出幀中對對象進行定位時,被選擇的元素定義了對象被放置在各個幀內(nèi)的像素位置。
在步驟645中,還將k值分配給對象以用于對象在存儲器中的存儲。分配給對象的k值對應于對象被識別的次序(例如從1到100,000),并且對象在每一幀內(nèi)保持相同的k值。一旦在視頻幀內(nèi)對對象進行了輪廓勾勒、識別和定位,就在步驟650中對差異矩陣ΔX12、ΔX23和ΔX34中的所有剩余元素重復執(zhí)行步驟605至645。
VI.運動的球的實例將以示例性應用的方式對識別對象及其運動的方法的一個實施例進行討論。該實例包括運動的球70,其中球可能在一列幀的每一幀內(nèi)位于不同的位置。圖9A示出一列捕獲幀的4個幀(幀1、幀2、幀3和幀4),其中球70在四個幀的每一幀內(nèi)位于不同的位置。每個示出的幀是在每秒30幀的視頻捕獲序列中被捕獲的第一個幀。這樣,在序列中示出的幀之間的時間是60秒。
在本實例中,使用視頻會議標準四分之一通用中間格式(QICF),其中,每一幀包含144×176個像素柵格,其包含144行(i=1、2、3、…144)和176列(i=1、2、3、…176)像素。用于每一幀(幀1、幀2、幀3和幀4)的相應差異矩陣XN在以下方程(12)中進行定義。矩陣的每個元素Xij具有由下標識別的相應的位置信息,其中“i”對應于元素位于矩陣中的行,并且“j”對應于元素位于矩陣中的列。
ΔXN=x11x12x13···x1_176x21x22x23···x2_176x31x32x33···x3_176···············x144_1x144_2x144_3···x144_176...(12)]]>此外,每個像素具有表示為8比特二進制數(shù)即1字節(jié)長度的對應顏色信息。顏色信息包含紅、綠和藍分量,其中,8比特編號的前2個比特對應于藍色分量,隨后的3比特對應于綠色分量,并且最后的3比特對應于紅色分量,如下
幀矩陣XN中每個元素xij的值是8比特二進制數(shù),其表示對應于幀矩陣XN中元素xij的像素的顏色信息。在該實例中,球70經(jīng)歷兩類運動平移和自旋。
如圖9A所示,球70運動經(jīng)過亮藍色背景,并且球是單一的單色。將背景和球的顏色定義為每像素8比特顏色的形式,如下
圖9B示出了下列差異矩陣ΔX12、ΔX23、ΔX34、ΔX13、ΔX14的幀表示。對于運動的球70,差異矩陣(ΔX)是幀之間的顏色差異。如果任何點在幀之間是基本相同的(具有基本相同的顏色信息),那么它們將被歸零,但是如果從對象中減去背景,或者從背景中減去對象,那么就產(chǎn)生顏色差異并且在差異矩陣中對其進行識別。
A.靜止元素目的地收發(fā)機26通過計算差異矩陣ΔX12、ΔX23和ΔX34將在4個幀之間未發(fā)生變化的元素識別為靜止元素,其中不位于球上的所有元素歸零。例如,對應于幀1中背景內(nèi)像素a的幀矩陣元素xaa具有的幀矩陣X1值為01001001(背景顏色的像素值)。對應于幀2內(nèi)像素a的相同幀矩陣元素xaa在幀矩陣X2中具有相同的像素值01001001。因此,差異矩陣ΔX12中的差異矩陣元素Δxaa是零,其中,幀矩陣元素xaa在幀矩陣X1和幀矩陣X2中具有相同的像素值。
類似于背景中的元素,幀1和幀2中球上所有的元素也在差異矩陣ΔX12中歸零。幀1內(nèi)對應于球上像素b的元素xbb具有的幀矩陣X1值(球顏色的像素值)為11011011,并且?guī)?內(nèi)對應于像素b的相同幀矩陣元素xbb具有的幀矩陣X1值為11011011。因此,在差異矩陣ΔX12中的差異矩陣值Δxaa是零,其中,幀矩陣元素xbb在幀矩陣X1和幀矩陣X2中具有相同的像素值。
B.變化元素幀1中球上的和幀2中背景上的所有元素將在幀矩陣X1中所具有的幀矩陣值為11011011(球顏色),并且在幀矩陣X2中所具有的幀矩陣值為01001001(背景顏色)。例如,對應于幀1和幀2中像素c的幀矩陣元素xcc將在幀矩陣X1中所具有的幀矩陣值為11011011,并且在幀矩陣X2中所具有的幀矩陣值為01001001。差異矩陣ΔX12(X1-X2)內(nèi)的差異矩陣值Δxcc是幀矩陣X1中元素xcc的幀矩陣值和幀矩陣X2中元素xcc的幀矩陣值之間的差異。這樣,差異矩陣ΔX12中的差異矩陣值Δxcc是11011011-01001001=10010010。
與此相反,幀2中球上的和幀1中背景上的所有元素將在幀矩陣X1中所具有的幀矩陣值為01001001,并且在幀矩陣X2中所具有的幀矩陣值為11011011。例如,對應于幀1和幀2中像素d的幀矩陣元素xdd將在幀矩陣X1中所具有的幀矩陣值為01001001,并且在幀矩陣X2中所具有的幀矩陣值為11011011。差異矩陣ΔX12(X1-X2)內(nèi)的差異矩陣值Δxdd是幀矩陣X1中元素xdd的幀矩陣值和幀矩陣X2中元素xdd的幀矩陣值之間的差異。因此,差異矩陣ΔX12中的差異矩陣值Δxdd是01001001-11011011=11111111111111111111111101101110,其是以多于8比特的二進制形式表示的負數(shù)。由于當前實例中的差異矩陣值可以僅僅是8比特,并且可能沒有使用溢出條件,所以對相反的差異矩陣值ΔX21(X2-X1)進行計算,以便獲得差異矩陣元素Δxdd的值10010010并且將標識添加到用于這些比特的相關存儲器中。具體地,使用奇偶校驗位作為標識,其中,如果元素的差異矩陣值是負的,那么將奇偶校驗位設置為一(1),并且如果差異矩陣值是正的,那么將奇偶校驗位設置為0。
在一個實施例中,使用奇偶校驗位信息來確定對象的運動方向。例如,在目的地收發(fā)機26自頂向下且從左到右地掃描差異矩陣時,如果對于在對象輪廓頂部的邊界元素將奇偶校驗位設置為一(1),那么對象的邊界就處于向左和/或向上的運動中。相反地,如果對于在對象輪廓頂部的邊界元素沒有對奇偶校驗位進行設置(為零),那么對象的邊界就處于向右和/或向下的運動中。
對于剩余的差異矩陣ΔX23和ΔX34,與上文方法相一致地執(zhí)行所有的矩陣值減法。隨后,根據(jù)圖7A-B中所說明的方法600對對象進行定位。
C.對象識別根據(jù)步驟605,通過從矩陣的頂部的行開始對矩陣的行進行從左到右地搜索來掃描第一個差異矩陣ΔX12的第一個非零元素Δxij。
=Δx(i-1)(j-1)Δx(i-1)jΔx(i-1)(j+1)Δxi(j-1)ΔxijΔxi(j+1)Δx(i+1)(j-1)Δx(i+1)jΔx(i+1)(j+1)=0000100100100100100101001001010010010...(13)]]>為了驗證第一個非零元素Δxij可能不是壞元素或噪聲,而是運動或變化的元素,方法在步驟610中確定ΔX12中的相鄰或相關元素Δx(i-1)(j-1)、Δx(i-1)j、Δx(i-1)(j+1)、Δxi(j-1)、Δxi(j+1)、Δx(i+1)(j-1)、Δx(i+1)j和Δx(i+1)(j+1)不全部等于零。具體地,該方法將識別出三個相鄰元素Δx(i+1)(j-1)、Δx(i+1)j和Δx(i+1)(j+1)不等于零(Δx(i+1)(j-1)=Δx(i+1)j=Δx(i+1)(j+1)=10010010)。由于并不是所有的相鄰元素都為零,那么元素xij是變化的元素并且可能位于運動對象的邊界上、位于靜止背景的變化部分上或者位于旋轉(zhuǎn)對象的內(nèi)部。然而,如果ΔX12中所有相鄰元素Δx(i-1)(j-1)、Δx(i-1)j、Δx(i-1)(j+1)、Δxi(j-1)、Δxi(j+1)、Δx(i+1)(j-1)、Δx(i+1)j和Δx(i+1)(j+1)基本都等于零,那么在步驟615中將第一個非零元素Δxij識別為壞元素,并且在步驟605中將對差異矩陣ΔX12中的下一個非零元素進行定位。
如果球70僅僅是旋轉(zhuǎn)或者改變顏色,那么將在ΔX12、ΔX13和ΔX14的相同位置中尋找到該球70。然而,如圖9B中的差異矩陣ΔX12、ΔX13和ΔX14的幀表示中所示,球70在平移而不僅僅是旋轉(zhuǎn)或改變顏色。在步驟620中,目的地收發(fā)機26確定差異矩陣ΔX12中的第一個非零元素Δxij是否在運動對象的邊界上。參考用于第一個非零元素Δxij的被減少的矩陣,至少兩個相鄰的元素具有類似的運動變化并且至少一個相鄰的元素具有非類似的運動變化。具體地,三個相鄰元素Δx(i+1)(j-1)、Δx(i+1)j和Δx(i+1)(j+1)具有類似的運動變化(10010010),并且五個相鄰元素Δx(i-1)(j-1)、Δx(i-1)j、Δx(i-1)(j+1)、Δxi(j-1)和Δxi(j+1)具有非類似的運動變化。這樣,當在步驟620中目的地收發(fā)機26將確定為是、即第一個非零元素位于運動對象的邊界上時,在步驟630中將元素Δxij識別為對象的邊界元素。
在目的地收發(fā)機在步驟620中確定為否,即非零元素不位于運動對象的邊界上的情況下,目的地收發(fā)機26可以確定非零元素Δxij在對象內(nèi)部。更具體地說,如果目的地收發(fā)機26確定存在至少六個具有類似運動變化的相鄰元素,那么將非零元素Δxij識別為在靜止變化或旋轉(zhuǎn)對象內(nèi)部的元素。例如,非零元素可以在改變顏色或閃光的對象內(nèi)部。根據(jù)所述識別,將被識別為在靜止變化或旋轉(zhuǎn)對象內(nèi)部的非零元素存儲在存儲器中,并且目的地收發(fā)機根據(jù)圖7A-B中所示的方法600繼續(xù)識別對象及其邊界元素。
在步驟625中將非零元素識別為在變化對象內(nèi)部或者在步驟630中將非零元素識別為邊界元素之后,目的地收發(fā)機26在步驟635中確定差異矩陣ΔX12、ΔX13和ΔX14中是否剩余尚未在步驟605至630中進行分析的元素。如果步驟635中的確定為否,那么方法600返回到步驟605,并且目的地收發(fā)機26在差異矩陣中對下一個非零元素進行定位。
D.勾勒對象輪廓將在圖7B中所示出的、在方法600的步驟650中識別的邊界元素用作起始元素,以便勾勒出相關對象在幀矩陣X1、X2、X3和X4中的輪廓。通過將對象邊界上的相鄰相關元素鏈接在一起來定義對象的輪廓,其中,該對象使用差異矩陣ΔX12、ΔX23和ΔX34以及幀矩陣X1、X2、X3和X4。
之前,我們將非零元素Δxij=10010010識別為對象的邊界元素,其中,相鄰元素Δx(i+1)(j-1)、Δx(i+1)j和Δx(i+1)(j+1)具有類似的變化(10010010)。為了驗證非零元素Δxij在對象輪廓的起始處,接著對差異矩陣ΔX12進行分析,以便驗證具有類似變化(Δx(i+1)(j-1)=Δx(i+1)j=Δx(i+1)(j+1)=10010010)的被識別的圖案。將具有類似變化以及以該方式識別的相鄰元素鏈接到一起,以建立對象的輪廓。選擇對象輪廓的相對側(cè)面上的四個元素,其中,第一個元素是對應于第一個非零元素Δxij的幀元素xij。選擇其它三個元素,使得通過連接元素所畫出的線構成“X”或盒形。使用四個所選擇的元素來定義對象被放置在重構的中間幀內(nèi)的像素位置。
在使用差異矩陣ΔX12、ΔX23和ΔX34勾勒出每個對象的輪廓并且在對象的輪廓上識別了四個元素之后,使用這四個元素以便在幀矩陣X1、X2、X3和X4內(nèi)對其相應的對象進行定位。在一個實施例中,圍繞四個元素之一的相鄰元素與所選擇的元素一起構成了符號差圖案。還可以使用該圖案對幀內(nèi)的對象進行定位和放置。一旦將被勾勒出輪廓的對象放置在幀矩陣中,就通過根據(jù)對象被找到的次序來分配k值而將對象信息存儲在存儲器中。由于該實例僅包含一個對象,所以其k值為1。
VII.用于運動對象的運動方程如在節(jié)II中簡要描述的,在識別出對象的輪廓并且將其存儲在存儲器中之后,確定對象的運動方程,以便對中間幀(在發(fā)送幀幀1、幀2、幀3和幀4中的每一個之間的幀)進行重構。因此,運動方程能夠用于重構,以便將每秒30幀的輸出視頻提供給顯示器34。為了確定對象的運動方程,首先確定對象正在經(jīng)歷的運動類型。
A.確定運動類型為了確定對象的運動方程,系統(tǒng)首先確定對象正在經(jīng)歷的運動類型。可以將對象的運動分為三種類型運動之一或者其組合平移、旋轉(zhuǎn)和自旋。在空間中,通過三維向量xij=p(xyk)對幀矩陣XN中的元素或像素xij進行定義,其中,x=i、y=j并且k是元素的相對空間平面。如果對象在平移,則其從一個位置a(xyk)經(jīng)過空間平移到另一個位置b(xyk)。如果對象在旋轉(zhuǎn),則其關于對象外部的位置c(xyk)旋轉(zhuǎn)。最后,如果對象在自旋,則其關于對象內(nèi)的位置c(xyk)旋轉(zhuǎn)。典型地,旋轉(zhuǎn)或自旋的對象在幀內(nèi)或矩陣內(nèi)具有該對象旋轉(zhuǎn)所圍繞的至少一個固定元素,而平移則沒有固定元素。當對象從一幀運動到另一幀時,純粹的平移將組成對象的所有元素移動相等的距離。
通過對以給定k平面值勾勒其輪廓的并且從幀矩陣X1、X2、X3和X4中導出的對象進行存儲和檢測,可以對對象進行估計以確定其運動類型。為了確定對象是否處于平移中、處于旋轉(zhuǎn)中或者處于平移和旋轉(zhuǎn)中,在幀X1、X2、X3和X4中觀察由ΔX12、ΔX23和ΔX34中定義的對象輪廓上的至少兩個點。在一個實施例中,這兩個元素在對象的相對側(cè)面上。
使用在所選擇對象相對側(cè)面上的兩個元素p1(xyk)和p2(xyk),可以確定對象在空間上的運動。在第一幀X1中,兩個元素具有位置p1(xyk)和p2(xyk),并且在第二幀X2上,相同對象的兩個元素在位置p′1(x′y′k)和p′2(x′y′k)處。在p1(xyk)和p2(xyk)之間所畫出的線的長度與在p′1(x′y′k)和P′2(x′y′k)之間所畫出的線的長度是相同的。
如果被計算為 計數(shù)像素的p1和p′1之間的距離等于p2和p′2之間的距離,那么對象在平移。如果p1和p′1之間的距離不等于p2和p′2之間的距離,那么對象在旋轉(zhuǎn)并且可能具有一定的平移。
為了確定對象是否同時在平移和旋轉(zhuǎn),對X2和X3中的對象執(zhí)行與用于確定對象是否在旋轉(zhuǎn)的處理相同的處理,以便在后續(xù)幀內(nèi)找到對象旋轉(zhuǎn)的中心c′(xcyck)。如果c(xcyck)是與c′(xcyck)相同的元素,那么對象僅在旋轉(zhuǎn)。如果c(xcyck)是與c′(xcyck)不同的元素,那么對象在旋轉(zhuǎn)和平移,并且用從c(xcyck)是與c′(xcyck)的線或向量來描述平移。
如上文所討論的,使用每個對象輪廓上的四個點或元素對被重構幀內(nèi)的對象進行定位。在目的地收發(fā)機處,將旋轉(zhuǎn)向量(r)和平移向量(t)的值用于在被重構的幀上移動對象。
為了確定對象是否在自旋,至少使用兩個點p1(xyk)和p2(xyk)來代表對象上的顏色圖案,并且在幀X1、X2、X3和X4中觀察這些點。在一個實施例中,這兩點在圖案的相對側(cè)面上。為了確定對象是否在自旋,對從第一幀X1存儲的對象進行掃描,以獲得對對象的運動進行分析時可以觀察的顏色圖案。使用QCIF(176×144)幀大小,對象可以在幀間的任何方向上移動約17個像素。對對象進行掃描以獲得顯著的顏色變化,例如,在對象上紅、綠或藍值變化超過15%的位置,以及獲得相對于對象大小(區(qū)域/對象大小)的變化區(qū)域的大小。如果使用像素計算的該比率大于1/3,那么對對象進一步進行掃描,以便找到更小的變化區(qū)域(例如,1/5或更小)。
一旦對期望的變化區(qū)域進行了定位,就在其它幀X2、X3和X4上對顏色圖案區(qū)域及其在對象的k平面上的方向進行定位。隨后,使用圖案區(qū)域上的四個元素來定義對象的運動。使用四個元素中在所選擇圖案的相對側(cè)面上的兩個元素(p1(xyk)和p2(xyk)),可以定義對象輪廓內(nèi)的圖案運動。將幀X1中對象圖案上的兩個點識別為p1(xyk)和p2(xyk),并且將幀X2中對象圖案上的相同的兩個點識別為p′1(x′y′k)和p′2(x′y′k)。類似于對象的平移確定,根據(jù)定義,在p1(xyk)和p2(xyk)之間所畫出的線的長度與在p′1(x′y′k)和p′2(x′y′k)之間所畫出的線的長度是相同的。
如果在幀X1和X1之間沒有旋轉(zhuǎn),那么計算為 計數(shù)像素的p1和p′1之間的距離等于p2和p′2之間的距離,并且在所有的幀X1、X2、X3和X4內(nèi)圖案位于對象的相同位置中。因此,對象沒有自旋。如果在幀X1和X2之間圖案的旋轉(zhuǎn)是顯而易見的,那么p1和p′1之間的距離不等于p2和P′2之間的距離,則對象在自旋。
B.確定一個或多個運動方程可以在空間中將矩陣或幀XN內(nèi)被識別為位于對象上的元素或像素定義為三維向量xij=p(xyk),其中,x=i、y=j并且k是對象標識符。根據(jù)元素定義,可以將用于元素或像素的運動方程p′定義為旋轉(zhuǎn)向量(r)、起始元素向量(p)以及平移向量(t)的函數(shù),如下p′=r×p+t (14)其中
可以進一步將旋轉(zhuǎn)向量定義如下r=rxry=(x′-Δx)/x(y′-Δy)/y=p′/(p+t)...(19)]]>為了找到旋轉(zhuǎn)中心c(xcyck),在P1和P′1之間的對象平面內(nèi)畫一條直線,其中,將直線的長度確定為 并且直線的斜率是Δy/Δx=tanθ。以相同的方式也在P2和P′2之間畫線。隨后,從這些線的中心(長度/2)處畫出垂直平分線,其中兩條垂直平分線的交點是對象旋轉(zhuǎn)的三維中心c(xcyck)。從該旋轉(zhuǎn)中心c(xcyck)到P1所畫的線在長度上等于從c(xcyck)到P′1所畫的線,并且從c(xcyck)到P2所畫的線在長度上等于從c(xcyck)到P′2所畫的線。
可以使用旋轉(zhuǎn)向量來確定對象的自旋速率。自旋速率提供了信息,以便將對象放置在視頻輸出的每個中間幀內(nèi)合適的位置中。將對象的自旋速率(R)定義為旋轉(zhuǎn)向量的幅度除以時間的變化R=|r|ΔT=((rx)2+(ry)2)ΔT...(20)]]>如果對象的自旋速率是一個常數(shù),那么使用差異矩陣ΔX12、ΔX23和ΔX34計算的旋轉(zhuǎn)向量的幅度|r12|、|r23|和|r34|將提供近似相同的值。在本實施例中,幀之間的時間變化ΔT12=ΔT23=ΔT34是1秒,因此|r|/ΔT=|r|/sec,并且通過x′=rx×x和y′=ry*y來定義旋轉(zhuǎn)的距離,并且可以將該距離均勻地分為30份以獲得每個輸出視頻幀的位置。
如果對象的自旋速率(|r|/ΔT)不是一個常數(shù),那么使用差異矩陣ΔX12、ΔX23和ΔX34計算的旋轉(zhuǎn)向量的幅度|r12|、|r23|和|r34|將不提供相同的值(|r12|≠|(zhì)r23|≠|(zhì)r34|),并且對象正在加速或者減速其自旋。在本實施例中,差異矩陣的幀之間的時間變化ΔT12=ΔT23=ΔT34是1秒,因此|r12|/ΔT12=|r12|/sec、|r23|/ΔT23=|r23|/sec且|r34|/ΔT34=|r34|/sec。不能將通過x′=rx*x和y′=ry*y所定義的旋轉(zhuǎn)距離均勻地分為30份以獲得每幀的位置。為了確定不具有恒定自旋速率的對象的運動,系統(tǒng)確定自旋對象的加速度或減速度。在下文中針對運動對象的加速向量的旋轉(zhuǎn)元素,討論對加速的自旋對象的旋轉(zhuǎn)向量的確定。
對象的運動方程包括加速或減速分量,以便說明對象運動的加速或減速。如果對象的加速度是線性的,那么對象隨著其經(jīng)由各個幀而以確定的速率進行加速或減速??梢允褂靡呀?jīng)從X1、X2、X3和X4中被存儲的對象圖像來計算對象的線性加速度。
加速向量a具有平移和旋轉(zhuǎn)分量。為了確定平移分量,將如上文所討論的元素從p移動到p′的直線距離|t|計算為 如果對象正在線性加速或減速,那么下述關系是正確的|t12-t23|=|t23-t34|≠0 (21)如果對象正在非線性加速,那么下述關系是正確的|t12-t23|≠|(zhì)t23-t34|≠0 (22)在本實例中,沒有考慮非線性加速或減速。對于線性加速,將線性加速向量at14的平移分量定義如下,其中在兩秒時間周期上獲得加速at14=(t12-t23)+(t23-t34)=at13+at24(23)如果對象在線性加速或減速,那么at13=at24,并且新向量tc按照如下進行定義且te對于所有幀是恒定的,如下tc=t12-t23=t23-t34(24)這樣,可以使用加速向量對平移向量t進行重新定義,如下t=at13×tc=atxaty×tcxtcy=atx×tcxaty×tcy...(25)]]>在本實例中,每秒發(fā)送一幀,并且上文使用距離分量的加速度計算在兩秒的周期上計算加速度,那么,每幀加速的速率如下|a13|60sec=|a24|60sec...(26)]]>確定加速度的(x,y)分量,如下at13=t12-t23=atxaty=Δx12-Δx23Δy12-Δy23...(27)]]>
每個新幀內(nèi)對象的加速度乘數(shù)at為at=|atx|/60|aty|/60...(28)]]>此外,確定每個新創(chuàng)建幀的平移向量t,如下t=atx×tcx/60aty×tcy/60...(29)]]>針對加速向量的旋轉(zhuǎn)分量進行下一步確定。如果對象正在線性加速或減速,那么下述關系是正確的|r12-r23|=|r23-r34|≠0 (30)如果對象是非線性加速的,那么下述關系是正確的|r12-r23|≠|(zhì)r23-r34|≠0 (31)在本實例中,沒有考慮非線性加速或減速。對于線性加速,將線性加速向量ar14的旋轉(zhuǎn)分量定義如下,其中在兩秒時間周期上獲得加速ar14=(r12-r23)+(r23-r34)=ar13+ar24(32)如果對象在線性加速或減速,那么ar13=ar24,并且新向量rc按照如下進行定義且rc對于所有幀是恒定的rc=r12-r23=r23-r34(33)這樣,可以使用加速向量對平移向量r進行重新定義,如下r=ar13×rc=arxary×rcxrcy=arx×acxary×rcy...(34)]]>在本實例中,每秒發(fā)送一幀并且上文使用距離分量的加速度計算在兩秒的周期上計算加速度,那么,每幀加速的速率如下|a13|60sec=|a24|60sec...(35)]]>確定加速度的(x,y)分量,如下
ar13=r12-r23=arxary=(x2-Δx12)/x1-(x3-Δx23)/x2(y2-Δy12)/y1-(y3-Δy23)/y2...(36)]]>每個新幀內(nèi)對象的加速度乘數(shù)ar為ar=|acx|/60|acy|/60...(37)]]>此外,確定每個新創(chuàng)建幀的平移向量r,如下r=arx×rcx/60ary×rcy/60...(38)]]>因此,將所確定的平移和旋轉(zhuǎn)向量進行合并得到對象的加速度,對每個新創(chuàng)建幀的結(jié)束元素向量p′進行定義,如下p′(x′y′k)=x′y′=(arx×rcx×x/60)+(atx×tcx/60)(ary×rcy×y/60)+(aty×tcy/60)...(39)]]>因此,如果對象移動經(jīng)過幀X1、X2、X3和X4,那么使用對象輪廓上的四個點在用于視頻輸出的新創(chuàng)建的背景幀上移動對象圖像,其中,通過將差異幀ΔX12、ΔX23和ΔX34與X1、X2、X3和X4中的對象進行比較對該四個點進行定位。通過運動方程以及在對象輪廓上定義的四個點來定義該運動。
對于僅經(jīng)歷線性運動的對象,根據(jù)下述方程確定點pn′(xn′yn′k)在重構的中間幀號n內(nèi)的對象上的位置,其中x和y是該點在第一個發(fā)送幀內(nèi)的對象上的起始坐標,并且n是對應于被創(chuàng)建的中間幀的、從1到29的整數(shù)(例如,對于第一個中間幀n=1)pn′(xn′yn′k)=x′y′=(arx×rcx×x/60)+(atx×tcx/60)×n(ary×rcy×y/60)+(aty×tcy/60)×n...(40)]]>如果對象在其在幀X內(nèi)被定義的輪廓內(nèi)部進行自旋,就使用位于對象上的圖案上的四個點,來對用于視頻輸出的、將要放置在新創(chuàng)建背景幀上的對象圖像進行旋轉(zhuǎn),其中由旋轉(zhuǎn)向量r定義對象的自旋或旋轉(zhuǎn)。分母值“60”反映了將要在幀1和幀3之間創(chuàng)建的幀的數(shù)目。因此,分母值“60”可以隨著將要在發(fā)送幀(例如幀1和幀3)之間創(chuàng)建的幀的數(shù)目而改變。
VIII.為運動的球確定運動方程的實例圖10A是對圖9A的四個視頻幀的更詳細說明,并且圖10B是對圖9B的幀表示的更詳細說明,其中,圖10A-B示出了在為運動的球70確定運動方程過程中所使用的識別點x和x′。
將球70上點x的運動方程p′定義為旋轉(zhuǎn)向量(r)、起始元素向量(p)以及平移向量(t)的函數(shù),如下p′=r×p+t (14)在如圖10A中所示的幀1的幀矩陣中,點x位于元素x52,64處,并且在幀2的幀矩陣中,點x位于元素x46,52處。如前面在節(jié)VI中所討論的,對于該實例僅存在一個對象,并且因此對象的k值為1。使用幀和幀2的幀矩陣內(nèi)用于點x的元素信息,可以確定運動方程和相應的向量,如下 對象的運動方程包括加速或減速分量,以便說明對象運動的加速或減速。如果對象的加速是線性的,那么對象隨著其經(jīng)由各個幀而以確定的速率進行加速或減速??梢允褂靡呀?jīng)為幀矩陣X1、X2、X3和X4存儲的對象的圖像來計算對象的線性加速度。
對干球70上的點x,將如上文所討論的元素在p和p′之間移動的直線距離|t|計算為 這樣,可以計算下列直線距離,其中,對于幀3,點x位于幀矩陣內(nèi)的元素x84,38上,并且對于幀4,點x位于幀矩陣內(nèi)的元素x98,64上|t12|=(52-46)2+(64-52)2=(6)2+(12)2=13.4]]>|t23|=(46-84)2+(52-38)2=(-38)2+(14)2=40.5]]>|t34|=(84-98)2+(38-64)2=(-14)2+(-26)2=29.5]]>將用于線性加速的線性加速向量at14的平移分量定義如下,其中,在兩秒時間周期上獲得加速at14=(t12-t23)+(t23-t34)=at13+at24(23)其中,t12=612,t23=-3814]]>且t34=-1426,]]>并且確定加速向量at13和at14,如下at13=t12-t23=442]]>且at24=t23-t34=-24-12...(27)]]>在該實例中,目的地收發(fā)機26僅考慮球70的線性運動。因此,當點x出現(xiàn)在重構的中間幀中時,根據(jù)下列方程來確定點x在球上的位置pn′(xn′yn′k),其中,為了找到點x在第15幀內(nèi)的位置,例如,以15替代變量npn′(xn′yn′k)=x′y′=(arx×rcx×x/60)+(atx×tcx/60)×n(ary×rcy×y/60)+(aty×tcy/60)×n...(40)]]>IX.靜止變化的對象如果對象不具有與其相關的運動,即對象在差異矩陣ΔX12、ΔX13和ΔX14中相同的位置上,那么將對象識別為靜止變化對象。可以將對象變化的速率定義為ΔX/ΔT。使用對象的邊界元素(輪廓)以便找到幀X1、X2、X3和X4內(nèi)的物理對象。可以使用差異矩陣以及時間的相關變化來確定對象變化的速率,如下ΔX/ΔT=(ΔX12/ΔT12+ΔX23/ΔT23+ΔX34/ΔT34+ΔX13/ΔT13+ΔX14/ΔT14)5---(40)]]>靜止變化對象的邊界或輪廓由具有類似變化速率(ΔX/ΔT)的非運動元素組成,其中,在靜止對象邊界上的元素包括至少兩個具有非類似變化速率的相鄰元素。通過對具有非類似變化速率的相鄰元素的元素進行識別,目的地收發(fā)機26使用識別的邊界元素構成勾勒出對象輪廓的連接邊界。
如上文所討論的,在一個實施例中,在具有144×176像素大小的QCIF幀內(nèi)使用8比特像素(xij)。圖像或幀的每個像素或元素代表顏色,并且具有標準(canonical)最小值和標準最大值。在每幀所定義的空間中,系統(tǒng)忽略未動態(tài)變化的任何對象。系統(tǒng)對所定義對象內(nèi)的色彩變化進行估計和定義,使每個對象的信息獨立并且鏈接到其相關幀。
系統(tǒng)中使用的所定義的變量是像素顏色、像素幀位置以及隨著時間的幀差異。系統(tǒng)的目標是了解當幀X1、X2、X3和X4內(nèi)的對象經(jīng)過這些幀時,對象的圖像在顏色上發(fā)生了何種變化。
如本領域的技術人員所意識到的,可以使用色度和亮度(luma)代替紅、綠和藍(RGB)值來描述像素值的特征。在一個實施例中,YCrCb或YUV通過亮度分量“Y”和兩個色度分量Cr(或V)和Cb(或U)來表示每種顏色。亮度分量與“光亮度”或“流明度”相關,并且色度分量形成與“色調(diào)”相關的數(shù)量。在ITU-R BT.601-4(也已知為Rec.601以及以前的CCIR 601)中對這些分量進行了嚴格的定義。當參考色度分量時,因為模擬NTSC視頻標準ANSI/SMPTE170M使用具有稍微不同意義的V和U,所以使用Cr和Cb比使用V和U可以更加有利。
在一個實例中,像素的RGB分量具有從0到255范圍內(nèi)的值,并且色度和亮度分量YCrCb或YUV的變換方程如下Y=0.257r+0.504g+0.098b+16Cr或V=0.439r-0.368g-0.071b+128Cb或U=-0.148r-0.291g+0.439b+128隨著對象運動經(jīng)過一列視頻幀,其可以經(jīng)歷顏色和/或陰影圖案的變化。為了更好理解對象的行為,將需要對每秒的全部30個幀進行捕獲和估計。然而,系統(tǒng)在每30幀中僅發(fā)送1幀,并且目的地收發(fā)機26可以關于接收幀中不清晰的對象的信息或行為對源收發(fā)機24進行詢問。
X.幀重構圖12A-D示出了在目的地收發(fā)機26處使用如圖3中所示的發(fā)送幀幀1、幀2、幀3和幀4以及上文所確定的背景和對象信息,對視頻流進行重構的方法的一個實施例。首先,在發(fā)送幀幀1、幀2、幀3和幀4之間的幀緩沖器上,對接收自源收發(fā)機24的所有靜止背景信息進行均勻移位,從而為從幀1至幀4的中間幀創(chuàng)建背景。在創(chuàng)建了背景之后,對完整中間幀的生成進行初始化,其中,使用來自目的地收發(fā)機26的對象信息將對象定位在目的地收發(fā)機26處的工作緩沖器內(nèi)的背景幀上。幀緩沖器是在存儲器內(nèi)對圖像幀進行重構的區(qū)域,并且其為將要被移出(FIFO)到視頻顯示器34用于顯示的緩沖器。幀緩沖器是工作緩沖器的一部分,并且在一個實施例中,工作緩沖器是存儲器,在該存儲器中存儲并使用計算、對象、對象輪廓、位置信息等。
如之前所討論的,4幀比較方法可以用于對中間幀內(nèi)的對象進行定義和定位。如圖12A所示,使用來自幀1、幀2、幀3和幀4的信息以便對幀1和幀2之間的中間幀內(nèi)的對象進行識別和定位,在下文中該中間幀稱為中間幀1。類似地,如圖12B所示,使用來自幀1、中間幀1、幀2和幀3信息以便對幀1和中間幀1之間的中間幀內(nèi)的對象進行識別和定位,在下文中將該中間幀稱為中間幀2。隨后,如圖12C所示,使用來自幀1、中間幀1、幀2和幀3的信息,對中間幀1和幀2之間的中間幀內(nèi)的對象進行識別和定位,在下文中將該中間幀稱為中間幀3。
更具體地,結(jié)合時間信息使用根據(jù)節(jié)VII中的描述所確定的運動方程,來確定當所選擇的4個點在中間幀內(nèi)時其在對象上的位置。例如,如果確定對象在幀1和幀2之間線性運動,并且?guī)?和幀2之間的時間是30秒,那么通過將在幀1和幀2之間經(jīng)過的距離分割為一半或者使用消息來確定對象在中間幀1內(nèi)的位置,其中,所使用的消息是對于中間幀1,從如幀1中所識別的那樣對對象進行定位開始,已經(jīng)經(jīng)過了十五(15)秒。
系統(tǒng)繼續(xù)對幀1、中間幀1、中間幀2、中間幀3和幀2之間的中間幀上的對象進行識別和定位,直到如圖12D所示完成幀1和幀2之間的全部29個幀為止。一旦在一個發(fā)送幀之后已對背景和對象在29個幀構成的序列上進行了定位,就將包括發(fā)送幀幀1和幀2在內(nèi)的幀序列發(fā)送到幀緩沖器用于在顯示器34上顯示。
在完成幀1和幀2之間的中間幀序列之后,將新的發(fā)送幀用作幀4(幀矩陣X4),以便以與構造之前的幀1和幀2之間的中間幀的方式相同的方式對之前的幀2和幀3之間的中間幀進行重構。這樣,之前的幀2是現(xiàn)在的幀1,之前的幀3現(xiàn)在用作幀2,并且將之前的幀4用作幀3,以便對下一個幀序列進行重構以用于在顯示器34上顯示。對所創(chuàng)建的現(xiàn)有背景幀進行檢驗和確認,其中,如果某些部分發(fā)生了顯著變化,那么目的地收發(fā)機26詢問源收發(fā)機24以便對變化進行驗證。如果源收發(fā)機24沒有對變化做出確認,那么目的地收發(fā)機或者請求新幀,或者如果存在傳輸問題,目的地收發(fā)機26假定新幀是壞而使用已經(jīng)確定的背景信息。在對中間幀的背景進行驗證和確認之后,將對象放置在工作緩沖器內(nèi)新幀1和新幀2之間的中間幀上。一旦在工作緩沖器中對所有的中間幀進行了重構,就將新幀1、重構的中間幀以及新幀2發(fā)送到顯示器34。對于在目的地收發(fā)機26處所接收的被發(fā)送幀序列的剩余部分,重復進行所述重構中間幀的處理以及隨后向顯示器34的發(fā)送,使得在顯示器34上顯示的幀是圖4所示的連續(xù)視頻流110,并且該連續(xù)視頻流110由每秒30個幀組成。
在圖12的方框圖中示出了示例性源收發(fā)機電路1200。源收發(fā)機電路1200包括視頻緩沖器1202,其配置為從視頻源22接收視頻流。將視頻緩沖器連接到可編程的數(shù)學和分立邏輯電路1204,將該邏輯電路1204連接到工作存儲器1206。將可編程的數(shù)學和分立邏輯電路1204連接到動態(tài)輸出緩沖器1208,該動態(tài)輸出緩沖器1208每秒輸出1幀到數(shù)據(jù)復用器和壓縮電路1210。將數(shù)據(jù)復用器和壓縮電路1210連接到收發(fā)機電路,該收發(fā)機電路可以包括發(fā)送電路和接收電路。還將數(shù)據(jù)復用器和壓縮電路1210連接到可編程的數(shù)學和分立邏輯電路1204,使得源收發(fā)機24可以響應來自目的地收發(fā)機26的請求而恢復幀信息。
類似于源收發(fā)機電路1200,在圖13中示出了示例性目的地收發(fā)機電路1300。目的地收發(fā)機電路1300包含數(shù)據(jù)復用器和壓縮電路1302,其配置為從源收發(fā)機24接收每秒1幀的視頻輸入。將動態(tài)輸入緩沖器1304連接到數(shù)據(jù)復用器和壓縮電路1302,并且將其配置為每秒將1幀移入可編程的數(shù)學和分立邏輯電路1306??删幊痰臄?shù)學和分立邏輯電路1306連接到工作存儲器1308,并且配置為在動態(tài)輸出緩沖器1304處對幀之間的中間幀進行重構或構造。數(shù)學和分立邏輯電路1306在幀構造緩沖器1310中對中間幀進行重構或構造,其中,將幀構造緩沖器1310連接到視頻緩沖器1312,將視頻緩沖器1312配置為每秒移出30幀到顯示器34。
可以將可編程的數(shù)學和分立邏輯電路1306嵌入在處理器中,將該處理器配置為對在第一和第二幀中的至少一幀內(nèi)具有至少一種相關特性的多個點進行識別。還可以將可編程的數(shù)學和分立邏輯電路1306配置為確定多個點中的至少一個點是否已經(jīng)在第一幀和第二幀之間改變了其位置。可以將可編程的數(shù)學和分立邏輯電路1306配置為將多個點中已經(jīng)改變其位置的至少一個點至少與第一幀內(nèi)的第一像素以及第二幀內(nèi)的第二像素相關,并且將其進一步配置為確定第一像素的位置和第二像素的位置之間的關系??梢詫⒖删幊痰臄?shù)學和分立邏輯電路1306配置為至少部分地基于第一和第二像素的位置之間的關系,在至少一個中間幀內(nèi)確定多個點中已經(jīng)改變其位置的至少一個點的位置??梢詫⒖删幊痰臄?shù)學和分立邏輯電路1306配置為對在第一和第二幀之間基本保持不動的多個點進行識別??梢詫⒖删幊痰臄?shù)學和分立邏輯電路1306配置為對基本整個中間幀的像素位置進行定義,該整個中間幀包含運動的點以及基本靜止的點。在為中間幀內(nèi)的靜止對象確定像素信息過程中,將可編程的數(shù)學和分立邏輯電路1306配置為基于(a)第一幀內(nèi)的像素信息,(b)第二幀內(nèi)的像素信息,(c)從第一和第二幀的源提供的關于中間幀的像素信息,以及(d)第一和第二幀的平均像素信息中的至少一個,識別在中間幀中保持不變的多個點的像素信息。如上文所指出的,可以分別在源電話機和目的地電話機中實現(xiàn)可編程的數(shù)學和分立邏輯電路1204和1306,或者可以分別使可編程的數(shù)學和分立邏輯電路1204和1306與源電話機和目的地電話機相關。這種電話機可以工作在有線(例如POTS)或無線(例如蜂窩或移動)電話網(wǎng)絡中。本發(fā)明并不僅僅限制于電話網(wǎng)絡實現(xiàn),還可以在發(fā)送和/或接收圖像或視頻信息的任何有線或無線通信網(wǎng)絡中類似地實現(xiàn)本發(fā)明。
以上描述提供了本發(fā)明的某些實施例的細節(jié)。然而,應該意識到,可以以多種方式實施本發(fā)明。例如,可以在單一或多個處理器、專用硬件電路、在諸如電話或計算機的設備內(nèi)執(zhí)行的軟件模塊、以及本領域中已知的許多其它實現(xiàn)方式中實現(xiàn)諸如可編程的數(shù)學和分立邏輯電路1306和1204的若干組件。因此,將根據(jù)所附的權利要求與其任何等價物來解釋本發(fā)明的范圍。
權利要求
1.一種在第一和第二幀之間構造圖像的至少一個中間幀的方法,所述方法包括識別在所述第一和第二幀中的至少一幀內(nèi)具有至少一個相關特性的多個點;確定所述多個點中的至少一個點是否已經(jīng)在所述第一幀和所述第二幀之間改變其位置;至少將所述多個點中已經(jīng)改變其位置的所述至少一個點與所述第一幀內(nèi)的第一像素以及所述第二幀內(nèi)的第二像素相關;以及確定所述第一像素的位置與所述第二像素的位置之間的關系。
2.如權利要求1所述的方法,還包括至少部分地基于所述第一和第二像素的位置之間的關系,在所述至少一個中間幀內(nèi)確定所述多個點中已經(jīng)改變其位置的所述至少一個點的位置。
3.如權利要求2所述的方法,還包括識別在所述第一和第二幀之間基本保持不動的多個點。
4.如權利要求3所述的方法,還包括定義包括運動的點和基本靜止的點的基本所述整個中間幀的像素位置。
5.如權利要求1所述的方法,其中,確定所述第一和第二像素位置之間關系的步驟包括導出運動方程中的至少一個系數(shù)。
6.如權利要求1所述的方法,其中,所述運動方程確定至少正在經(jīng)歷自旋、旋轉(zhuǎn)和平移運動之一的所述多個點中至少一個點的位置。
7.如權利要求6所述的方法,其中,至少部分地利用x和y坐標來識別所述第一和第二像素的位置。
8.如權利要求1所述的方法,其中,識別具有至少一個相關特性的所述多個點的步驟包括對對象進行定義。
9.如權利要求8所述的方法,其中,對對象進行定義的步驟包括對觀察者的眼睛所觀看到的圖像中的物理對象的至少一部分進行定義。
10.如權利要求1所述的方法,其中,識別具有至少一個相關特性的所述多個點的步驟包括確定所述多個點是否至少經(jīng)歷自旋、旋轉(zhuǎn)和平移運動之一。
11.如權利要求1所述的方法,其中,確定所述多個點中的至少一個點是否已經(jīng)改變了其位置的步驟包括識別在所述第一幀內(nèi)的像素位置以及在所述第二幀內(nèi)基本相同位置像素之間具有非零差異的點。
12.如權利要求11所述的方法,還包括識別所述第一和第二幀內(nèi)的多個對象。
13.如權利要求1所述的方法,還包括將所述第一和第二幀從發(fā)射機發(fā)送到接收機。
14.如權利要求3所述的方法,還包括基于(a)所述第一幀內(nèi)的像素信息,(b)所述第二幀內(nèi)的像素信息,(c)從所述第一和第二幀的源處提供的關于所述中間幀的像素信息,以及(d)所述第一和第二幀的平均像素信息中的至少一個,識別在所述中間幀像素信息內(nèi)保持不變的所述多個點。
15.如權利要求14所述的方法,其中,保持不變的所述多個點的所述像素信息包括顏色和灰度值中的至少一個。
16.如權利要求15所述的方法,其中,所述多個點中一個點的像素信息包括與位于所述第一幀內(nèi)的位置上的至少一個像素的顏色信息基本相同的顏色信息,其中,所述第一幀內(nèi)的位置與所述多個點中的一個點在所述第一幀內(nèi)的基本相同的位置相關。
17.如權利要求1所述的方法,還包括選擇性地請求源發(fā)射機傳送關于所述中間幀內(nèi)至少一個像素的信息。
18.如權利要求1所述的方法,其中,確定所述第一像素位置和所述第二像素位置之間關系的步驟包括至少部分地識別所述第一像素和在所述第二幀內(nèi)位于基本相同位置的第三像素的顏色或灰度信息之間的非零差異。
19.如權利要求1所述的方法,還包括經(jīng)由有線或無線電話網(wǎng)絡,至少將所述第一和第二幀從源電話機傳送到目的地電話機。
20.一種用于在第一和第二幀之間構造圖像的至少一個中間幀的系統(tǒng),所述系統(tǒng)包括識別器電路,配置為識別在所述第一和第二幀中的至少一個幀內(nèi)具有至少一個相關特性的多個點;比較電路,配置為確定所述多個點中的至少一個點是否已經(jīng)在所述第一幀和所述第二幀之間改變其位置;以及處理電路,配置為將所述多個點中已經(jīng)改變其位置的至少一個點至少與所述第一幀內(nèi)的第一像素和所述第二幀內(nèi)的第二像素相關,并且進一步配置為確定所述第一像素的位置和所述第二像素的位置之間的關系。
21.如權利要求20所述的系統(tǒng),其中,所述處理電路配置為至少部分地基于所述第一和第二像素位置之間的關系,在所述至少一個中間幀內(nèi)確定所述多個點中已經(jīng)改變其位置的所述至少一個點的位置。
22.如權利要求21所述的系統(tǒng),其中,所述識別器電路配置為識別在所述第一和第二幀之間基本保持不動的多個點。
23.如權利要求22所述的系統(tǒng),其中,所述處理電路配置為定義包括運動的點和基本靜止的點的基本所述整個中間幀的像素位置。
24.如權利要求20所述的系統(tǒng),其中,所述處理電路配置為導出運動方程中的至少一個系數(shù)。
25.如權利要求20所述的系統(tǒng),其中,所述運動方程確定至少正在經(jīng)歷自旋、旋轉(zhuǎn)和平移運動之一的所述多個點中的至少一個點的位置。
26.如權利要求25所述的系統(tǒng),其中,至少部分地利用x和y坐標識別所述第一和第二像素的位置。
27.如權利要求20所述的系統(tǒng),其中,所述識別器電路配置為對對象的點進行定義。
28.如權利要求27所述的系統(tǒng),其中,所述識別器電路對由觀測者的眼睛所觀看到的圖像內(nèi)的物理對象的至少一部分進行定義。
29.如權利要求20所述的系統(tǒng),其中,所述識別器電路確定所述多個點是否至少經(jīng)歷自旋、旋轉(zhuǎn)和平移運動之一。
30.如權利要求20所述的系統(tǒng),其中,所述比較電路配置為識別在所述第一幀內(nèi)的像素位置和所述第二幀內(nèi)基本相同位置像素之間具有非零差異的點。
31.如權利要求30所述的系統(tǒng),其中,將所述識別器電路配置為識別所述第一和第二幀內(nèi)的多個對象。
32.如權利要求20所述的系統(tǒng),還包括發(fā)射機,配置為將所述第一和第二幀發(fā)送到接收機。
33.如權利要求22所述的系統(tǒng),其中,所述處理電路配置為基于(a)所述第一幀內(nèi)的像素信息,(b)所述第二幀內(nèi)的像素信息,(c)從所述第一和第二幀的源處提供的關于所述中間幀的像素信息,以及(d)所述第一和第二幀的平均像素信息中的至少一個,識別在所述中間幀像素信息中保持不變的所述多個點。
34.如權利要求33所述的系統(tǒng),其中,保持不變的所述多個點的所述像素信息包括顏色和灰度值中的至少一個。
35.如權利要求34所述的系統(tǒng),其中,所述多個點中一個點的像素信息包括與位于所述第一幀內(nèi)的位置上的至少一個像素的顏色信息基本相同的顏色信息,其中,所述第一幀內(nèi)的位置與所述多個點中的一個點在所述第一幀內(nèi)的基本相同的位置相關。
36.如權利要求20所述的系統(tǒng),其中,所述處理電路配置為選擇性地請求源發(fā)射機發(fā)送關于所述中間幀內(nèi)的至少一個像素的信息。
37.如權利要求20所述的系統(tǒng),其中,所述處理電路配置為識別所述第一像素和在所述第二幀內(nèi)位于基本相同位置的第三像素的顏色或灰度信息之間的非零差異。
38.如權利要求20所述的系統(tǒng),還包括源電話機,配置為經(jīng)由有線或無線電話網(wǎng)絡,至少將所述第一和第二幀發(fā)送到目的地電話機。
39.如權利要求20所述的系統(tǒng),其中,處理器包括所述識別器、比較和處理電路。
全文摘要
一種用于在諸如有線或無線電話網(wǎng)絡的系統(tǒng)中在第一和第二幀之間構造圖像的至少一個中間幀的方法和系統(tǒng)。該系統(tǒng)識別在第一和第二幀的至少一個幀中具有至少一個相關特征的多個點。系統(tǒng)確定多個點中的至少一個點是否已經(jīng)在第一幀和第二幀之間改變了其位置。系統(tǒng)將多個點中已經(jīng)改變其位置的至少一個點至少與第一幀內(nèi)的第一像素和第二幀內(nèi)的第二像素相關。該系統(tǒng)確定第一像素的位置和第二像素的位置之間的關系。
文檔編號H04N7/46GK1947418SQ200580013148
公開日2007年4月11日 申請日期2005年2月24日 優(yōu)先權日2004年2月26日
發(fā)明者約翰·W·卡拉齊 申請人:Jps國際公司