專利名稱:部分緩存發(fā)送的數(shù)據(jù)以便在有損耗傳輸環(huán)境中提供增強(qiáng)的差錯恢復(fù)的裝置及方法
提供增強(qiáng)的差錯恢復(fù)的裝置及方法發(fā)明背景1.相關(guān)申請本申請是1998年1月30日提交的題為“Source Coding toProvide for Robust Error Recovery During Transmission Losses(在傳輸損耗時提供增強(qiáng)的差錯恢復(fù)的信源編碼)”的美國專利申請系列號No.09/016,083的繼續(xù)申請,而它是1998年1月2日提交的題為“Image-to-Block Mapping to Provide for Robust ErrorRecovery During Transmission Losses(在傳輸損耗時提供增強(qiáng)的差錯恢復(fù)的圖象-到-塊映射)”的申請系列號No.09/002,547、1998年1月2日提交的題為“Source Coding to Provide for Robust ErrorRecovery During Transmission Losses(在傳輸損耗時提供增強(qiáng)的差錯恢復(fù)的信源編碼)”的申請系列號No.09/002,470、以及1998年1月2日提交的題為“Multiple Block Based Recovery Method toProvide for Robust Error Recovery During Transmission Losses(在傳輸損耗時提供增強(qiáng)的差錯恢復(fù)的基于多塊恢復(fù)方法)”的申請系列號No.09/002,553的部分繼續(xù)申請;它們是1997年10月23日提交的題為“Image-to-Block Mapping to Provide for Robust ErrorRecovery During Transmission Losses(在傳輸損耗時提供增強(qiáng)的差錯恢復(fù)的圖象-到-塊映射)”的申請系列號No.08/965,632、1997年10月23日提交的題為“Source Coding to Provide for RobustError Recovery During Transmission Losses(在傳輸損耗時提供增強(qiáng)的差錯恢復(fù)的信源編碼)”的申請系列號No.08/957,555、以及1997年10月23日提交的題為“Multiple Block Based RecoveryMethod to Provide for Robust Error Recovery DuringTransmission Losses(在傳輸損耗時提供增強(qiáng)的差錯恢復(fù)的基于多塊恢復(fù)方法)”的申請系列號No.08/956,870的部分繼續(xù)申請。1998年1月30日提交的申請系列號No.09/016,083、1998年1月2日提交的申請系列號No.09/002,547、1998年1月2日提交的申請系列號No.09/002,470、1998年1月2日提交的申請系列號No.09/002,553、1997年10月23日提交的申請系列號No.08/956,632、1997年10月23日提交的申請系列號No.08/957,555、以及1997年10月23日提交的申請系列號No.08/956,870都在這里結(jié)合參照。
2.發(fā)明領(lǐng)域本發(fā)明涉及對由于信號傳輸過程中出現(xiàn)數(shù)據(jù)損耗而帶來的差錯提供增強(qiáng)的恢復(fù)。
3.技術(shù)背景有很多技術(shù)用于重構(gòu)由于信號傳輸過程中出現(xiàn)隨機(jī)差錯而造成的丟失數(shù)據(jù)。但是,這些技術(shù)不能處理連續(xù)數(shù)據(jù)分組的丟失。數(shù)據(jù)分組的連續(xù)丟失在本領(lǐng)域中描述為突發(fā)錯誤。突發(fā)錯誤導(dǎo)致對最終用戶非常明顯的重構(gòu)信號質(zhì)量下降。此外,用于促進(jìn)高速通信的壓縮方法使突發(fā)錯誤所引起的信號下降變得更嚴(yán)重,因此使重構(gòu)信號變得更差。影響發(fā)送及/或存儲信號的突發(fā)錯誤損耗的例子在其中壓縮方法起了重要作用的高清晰度電視(“HDTV”)信號以及移動電信應(yīng)用中可以看到。
HDTV的出現(xiàn)將電視系統(tǒng)引入比目前National TelevisionSystems Committee(“NTSC”國家電視系統(tǒng)委員會)所建議的標(biāo)準(zhǔn)更高的分辨率。所建議的HDTV信號主要是數(shù)字的。因此,當(dāng)彩色電視信號轉(zhuǎn)換為數(shù)字使用時,亮度和色度信號使用八比特數(shù)字化是常見的。彩色電視的數(shù)字傳輸要求每秒216兆比特的標(biāo)稱比特率。HDTV的傳輸速率要更高些,它標(biāo)稱地要求大約每秒1200兆比特。這種高傳輸速率大大超過當(dāng)前無線標(biāo)準(zhǔn)所支持的帶寬。因此,要求有效的壓縮方法。
壓縮方法也在移動電信應(yīng)用中起著重要作用。通常,數(shù)據(jù)分組在移動電信應(yīng)用的遠(yuǎn)程終端之間傳遞。移動通信中有限數(shù)目的傳輸信道要求分組傳輸之前具有有效的壓縮方法。多種壓縮方法被用于促進(jìn)高傳輸速率。
自適應(yīng)動態(tài)范圍編碼(“ADRC”)和離散余弦變換(“DCT”)編碼提供了本領(lǐng)域已知的圖象壓縮技術(shù)。兩種技術(shù)都利用了圖象內(nèi)的局部相關(guān)性實現(xiàn)高壓縮比。但是,有效的壓縮算法導(dǎo)致更嚴(yán)重的差錯傳播,因為當(dāng)隨后解碼時編碼信號中的錯誤更顯著。這種錯誤繁殖導(dǎo)致對用戶非常明顯的視頻圖象質(zhì)量下降。
發(fā)明概要本發(fā)明描述了對信號信源編碼的方法。具體而言,對包括多個信號單元的信號進(jìn)行處理。每個信號單元被編碼構(gòu)成比特流。給定比特流內(nèi)的比特被分散到不同比特流中。因此,描述分段單元組成的參數(shù)被分散到不同比特流中。分散步驟導(dǎo)致錯誤分散到多級中。因此,當(dāng)分散步驟由解碼器逆向執(zhí)行時,突發(fā)傳輸錯誤變成分散的局部損耗組。
也描述了另一種用于多級混洗(shuffling)處理的方法。信號被定義為多級的,其中每個級別包括多個幀、多個象素、以及多個比特。在一個實施例中,混洗出現(xiàn)在每一級和級之間。多級混洗使突發(fā)錯誤損耗被分散到多級中,因此有利于出現(xiàn)損耗的圖象區(qū)域的圖象重構(gòu)。
附圖的簡要描述本領(lǐng)域技術(shù)人員根據(jù)如下詳細(xì)描述將明確本發(fā)明的目的、特性和優(yōu)點,其中
圖1一般性說明了信號編碼、傳輸及解碼過程。
圖2說明了分組結(jié)構(gòu)的一個實施例。
圖3是一個流程圖,說明根據(jù)本發(fā)明概念的編碼過程的一個實施例。
圖4是一個流程圖,說明根據(jù)本發(fā)明概念的解碼過程的一個實施例。
圖5說明根據(jù)本發(fā)明概念的圖象-到-塊映射的一個實施例。
圖5a說明圖象-到-塊映射中使用的混洗模式的一個實施例。
圖6說明示范的互補(bǔ)和互鎖塊結(jié)構(gòu)。
圖7a、7b、7c和7d說明幀組合內(nèi)Y塊的混洗模式的一個實施例。
圖8說明緩存器0的累計DR分布的一個實施例。
圖8a說明根據(jù)本發(fā)明概念的部分混洗處理的一個實施例。
圖9說明根據(jù)本發(fā)明概念的緩存器內(nèi)YUV塊混洗處理的一個實施例。
圖10說明根據(jù)本發(fā)明概念的組內(nèi)VL數(shù)據(jù)混洗處理的一個實施例。
圖11說明根據(jù)本發(fā)明概念的3-塊組合內(nèi)的Q碼級聯(lián)的一個實施例。
圖11a說明根據(jù)本發(fā)明概念的包括運(yùn)動塊在內(nèi)的幀對的Q碼級聯(lián)的一個實施例。
圖12說明1/6突發(fā)錯誤損耗引起的象素數(shù)據(jù)差錯的一個實施例。
圖12a說明根據(jù)本發(fā)明概念的對Q碼進(jìn)行混洗和分布Q碼比特的一個實施例。
圖12b說明重新分布Q碼的1/6突發(fā)錯誤損耗所引起的象素數(shù)據(jù)差錯的一個實施例。
圖12c說明重新指定Q碼的1/6突發(fā)錯誤損耗所引起的象素數(shù)據(jù)差錯的一個實施例。
圖13說明根據(jù)本發(fā)明概念的MIN混洗的一個實施例。
圖13a說明在一個幀對中運(yùn)動標(biāo)志混洗和固定長度數(shù)據(jù)損耗的一個實施例。
圖14說明取?;煜吹囊粋€實施例。
圖14a說明與取?;煜从嘘P(guān)的取?;煜唇Y(jié)果和固定長度數(shù)據(jù)損耗的一個實施例。
圖14b說明與取?;煜从嘘P(guān)的取?;煜唇Y(jié)果和固定長度數(shù)據(jù)損耗的另一個實施例。
圖14c說明與取?;煜从嘘P(guān)的取?;煜唇Y(jié)果和固定長度數(shù)據(jù)損耗的又一個實施例。
圖15說明幀組合中可變長度數(shù)據(jù)緩存的一個實施例。
圖16說明了根據(jù)本發(fā)明概念的段間VL-數(shù)據(jù)混洗的一個實施例。
圖17是一般性說明本發(fā)明的數(shù)據(jù)恢復(fù)處理的一個實施例的流圖。
圖18是本發(fā)明的Q比特和運(yùn)動標(biāo)志恢復(fù)過程一個實施例的流圖。
圖19是說明候選解碼一個實施例的表。
圖20a、20b、20c、20d說明圖18的Q比特和運(yùn)動標(biāo)志恢復(fù)過程中所用的測量的實施例。
圖21說明用于圖18的Q比特和運(yùn)動標(biāo)志恢復(fù)過程的確定誤差平方概率函數(shù)的表的一個實施例。
圖22說明根據(jù)本發(fā)明概念的Q比特、運(yùn)動標(biāo)志以及輔助信息恢復(fù)過程的一個實施例。
圖23說明雙向Q比特和運(yùn)動標(biāo)志恢復(fù)過程的一個實施例中后同步信號的使用。
圖24a、24b和24c說明評價候選解碼的另一個實施例。
圖25根據(jù)本發(fā)明一個實施例的概念說明平滑措施的使用。
圖26a、26b、26c、26d和26e說明評價候選解碼過程的另一個實施例。
圖27a說明評價候選解碼的另一個過程,圖27b說明確定權(quán)重值的一個實施例。
詳細(xì)描述本發(fā)明提供了一種編碼及安排信號流以便提供增強(qiáng)的差錯恢復(fù)的方法。在下面的描述中,為了說明起見,提出了很多細(xì)節(jié),以便提供對本發(fā)明的完整理解。但是,對于本領(lǐng)域技術(shù)人員很顯然的是,這些特定的細(xì)節(jié)是實施本發(fā)明所不必要的。另一方面,眾所周知的電氣結(jié)構(gòu)和電路用框圖的形式表示,這樣就不會不必要地使本發(fā)明變得不清晰。
信號處理方法及結(jié)構(gòu)是從信號是視頻信號這樣一個實施例的角度來描述的。但是,這里描述的方法及裝置是希望應(yīng)用于各種類型的信號的,包括聲音信號或其它數(shù)字?jǐn)?shù)據(jù)比特流,其中每個信號由多個信號單元組成。此外,這里描述的處理實施例使用自適應(yīng)動態(tài)范圍編碼(“ADRC”)過程來壓縮數(shù)據(jù);但是也可以使用各種編碼技術(shù)和算法。對于ADRC的更詳細(xì)討論,可以參見“Adpative Dynamic RangeCoding Scheme for Future HDTV Digital VTR(未來HDTV數(shù)字錄象機(jī)的自適應(yīng)動態(tài)范圍編碼方案)”,Kondo,F(xiàn)ujimori及Nakaya,F(xiàn)ourth International Workshop on HDTV and Beyond,1991年9月4日-6日,都靈,意大利。
在上述文章中,解釋了三種不同類型的ADRC。它們都是根據(jù)下式實現(xiàn)的非邊緣匹配ADRCDR=MAX-MIN+1q=[(x-MIN+0.5)·2QDR]]]>x′=[(q+0.5)·DR2Q+MIN]]]>邊緣匹配ADRC:DR=MAX-MINq=[(x-MIN)·(2Q-1)DR+0.5]]]>x′=[q·DR2Q-1+MIN+0.5]]]>多級ADRC:DR=MAX-MIN+1q=[(x-MIN+0.5)·2QDR]]]>x′=[(q+0.5)·DR2Q+MIN]]]>這里MAX’是在q=2Q-1情況下x’的平均值;MIN’是在q=0情況下x’的平均值;而且DR'=MAX'-MIN'q=[(x-MIN′)·(2Q-1)DR′+0.5]]]>x′=[q·DR′2Q-1+MIN′+0.5]]]>這里MAX代表一個塊的最高級別,MIN代表一塊的最低級別,x代表每個抽樣的信號電平,Q代表量化比特數(shù),q代表量化碼(編碼數(shù)據(jù)),x’代表每個抽樣的解碼級別,方括號[]代表方括號內(nèi)的值上進(jìn)行的截短運(yùn)算。
信號解碼、傳輸以及隨后的解碼過程一般性地在圖1中說明。信號100是輸入編碼器110的數(shù)據(jù)流。編碼器110遵循自適應(yīng)動態(tài)范圍編碼(“ADRC”)壓縮算法并沿著傳輸介質(zhì)135產(chǎn)生分組1、…、N。解碼器120從傳輸介質(zhì)135接收分組1、…、N,并產(chǎn)生信號130。信號130是信號100的重構(gòu)。
編碼器110和解碼器120可以用各種方式實現(xiàn)以便執(zhí)行這里描述的功能。在一個實施例中,編碼器110及/或解碼器120作為存儲在介質(zhì)中并由通用或?qū)iT配置的計算機(jī)系統(tǒng)執(zhí)行的軟件來實現(xiàn),計算機(jī)系統(tǒng)通常包括中央處理單元、存儲器以及一個或多個輸入/輸出設(shè)備及協(xié)處理器?;蛘?,編碼器110及/或解碼器120可以作為執(zhí)行這里所述功能的邏輯來實現(xiàn)。此外,編碼器110及/或解碼器120可以作為硬件、軟件或固件的組合來實現(xiàn)。
在本實施例中,信號100是由視頻幀序列組成的彩色視頻圖象,每個幀包括代表隔行掃描視頻系統(tǒng)中圖象的信息。每個幀由兩個場組成,一個場包含圖象偶數(shù)行的數(shù)據(jù),另一個場包含圖象奇數(shù)行。數(shù)據(jù)包括描述圖象中相應(yīng)位置的彩色成分的象素值。例如,在本發(fā)明中,彩色成分由亮度信號Y以及色差信號U及V組成。顯然,本發(fā)明的過程可以用于隔行掃描視頻信號以外的其它信號。此外,顯然本發(fā)明不限于Y、U、V彩色空間中的實現(xiàn),而是可以用于其它彩色空間中表示的圖象。
返回參考圖1,編碼器110將Y、U及V信號分開,并分別根據(jù)ADRC算法獨立地處理每組信號。為了使討論簡單,下面的敘述描述了Y信號的處理,但是編碼步驟要對U和V信號重復(fù)。
在本實施例中,編碼器110將信號100的跨越兩個連續(xù)幀的Y信號組成三維塊(“3D”),這里稱為一個幀對。對于一個實施例,3D塊由來自給定幀對上的同一局部區(qū)域的兩個2D塊的組合而產(chǎn)生,其中二維2D塊通過幀內(nèi)或場內(nèi)的局部象素組合而產(chǎn)生。希望這里描述的過程可以用于不同的塊結(jié)構(gòu)。信號組合將在下面圖象-到-塊映射部分中進(jìn)一步描述。
繼續(xù)本實施例,對于給定的3D塊,編碼器110計算構(gòu)成3D塊的2D塊之間的象素值中是否存在變化。如果值中確實有變化,就設(shè)置運(yùn)動標(biāo)志。正如本領(lǐng)域已知的,當(dāng)每個幀對內(nèi)有局部的圖象重復(fù)時,運(yùn)動標(biāo)志的使用使編碼器110減少了量化碼的數(shù)目。編碼器110也檢測3D塊內(nèi)的最大象素強(qiáng)度值(“MAX”)和最小象素強(qiáng)度值(“MIN”)。利用值MAX和MIN,編碼器110計算給定3D數(shù)據(jù)塊的動態(tài)范圍(“DR”)。對于一個實施例,在非邊緣匹配ADRC情況下DR=MAX-MIN+1。對于邊緣匹配ADRC,DR=MAX-MIN。在另一個實施例中,編碼器110逐幀對代表一串視頻幀的幀流信號編碼。在另一個實施例中,編碼器110逐場地對代表一串視頻域的域流信號編碼。因此,不使用運(yùn)動標(biāo)志,而是將2D塊用于計算MIN、MAX和DR值。
在本實施例中,編碼器110針對一個門限表(未表示)參考被計算的DR,以便確定用于編碼DR所對應(yīng)的塊內(nèi)象素的量化比特(“Q比特”)數(shù)。對象素編碼產(chǎn)生量化碼(“Q碼”)。Q碼是用于存儲或傳輸?shù)南鄬嚎s的圖象數(shù)據(jù)。
在一個實施例中,Q比特選擇是從3D塊的DR中得到的。因此,給定3D塊內(nèi)的所有象素使用相同Q比特來編碼,以得到一個3D編碼塊。3D編碼決的Q碼、MIN、運(yùn)動標(biāo)志以及DR的集合稱為3D ADRC塊?;蛘撸瑢?D塊編碼,并且給定2D塊的Q碼、MIN以及DR的集合產(chǎn)生2D ADRC塊。
可以實現(xiàn)多個門限表。在一個實施例中,門限表由一行DR門限值組成。Q比特對應(yīng)于用來對門限表一行內(nèi)兩個相鄰DR之間的一套DR值進(jìn)行編碼的量化比特數(shù)。在另一個實施例中,門限表包括多行,行的選擇根據(jù)所需的傳輸速率。門限表中的每一行用門限索引來標(biāo)識。門限選擇的一個實施例的詳細(xì)描述在下面討論部分緩存時描述。ADRC編碼及緩存的進(jìn)一步描述在轉(zhuǎn)讓給本發(fā)明受讓人的題為“HighEfficiency Coding Apparatus(高效編碼裝置)”的美國專利No.4,722,003以及同樣題為“High Efficiency Coding Apparatus(高效編碼裝置)”的美國專利No.4,845,560中揭示。
由此Q碼被稱為可變長度數(shù)據(jù)(“VL-數(shù)據(jù)”)。此外,DR、MIN和運(yùn)動標(biāo)志稱為塊屬性。塊屬性以及門限索引組成了固定長度數(shù)據(jù)(“FL-數(shù)據(jù)”)。此外,考慮到上面的討論,術(shù)語塊屬性描述了與信號單元的成分有關(guān)的參數(shù),其中信號單元包括多個成分。在另一個實施例中,F(xiàn)L-數(shù)據(jù)分組括Q比特碼。其好處是Q比特信息不必在解碼過程中從DR得到。因此,如果DR信息丟失或損壞,Q比特信息還可以從Q比特碼中確定。此外,如果Q比特碼丟失或損壞,Q比特信息可以從DR得到。因此,降低了恢復(fù)DR和Q比特的要求。
要求將Q比特碼包括在內(nèi)的缺點是每個ADRC塊要發(fā)送附加的比特。但是,在一個實施例中,用于組合ADRC塊的Q比特碼被根據(jù)例如加法或級聯(lián)這樣的功能而合并。例如,如果ADRC塊被組成三組,并且如果每個ADRC塊的Q比特值分別為3、3和4,則編碼為FL-數(shù)據(jù)的總和值是11。因此,代表總和所需的比特數(shù)少于代表每個單獨值所需的比特數(shù),而且組中沒有損壞的Q比特值可以用于確定Q比特值而不必執(zhí)行下面描述的那種Q比特恢復(fù)處理。
也考慮了其它實施例。例如,運(yùn)動標(biāo)志數(shù)據(jù)也可以被編碼??梢援a(chǎn)生帶有Q比特和運(yùn)動標(biāo)志數(shù)據(jù)的標(biāo)志并將其用于去查找碼表。編碼的配置和功能可以根據(jù)應(yīng)用而變。
幀、塊屬性以及VL-數(shù)據(jù)描述了視頻信號內(nèi)的各種成分。這些成分的邊界、位置及數(shù)量依賴于視頻信號的傳輸及壓縮特性。在本實施例中,這些成分在視頻信號比特流中可變而且被混洗,以便確保傳輸損耗時增強(qiáng)的差錯恢復(fù)。
為了說明起見,以下描述規(guī)定1/6連續(xù)分組傳輸損耗容限,遵循視頻信號的ADRC編碼和混洗。因此,以下的成分定義和劃分被用于一個實施例中。也考慮了其它實施例。一個數(shù)據(jù)集合包括一個視頻數(shù)據(jù)的一部分或其它類型的數(shù)據(jù)信號。因此,在一個實施例中,一個幀集合是包括一個或多個連續(xù)幀的一類數(shù)據(jù)集合。一個分段包括一個能夠存儲1/6部分的Q碼以及被包括在幀集合中的塊屬性的存儲器。此外,緩存器包括一個能夠存儲1/60部分的Q碼以及被包括在幀集合中的塊屬性的存儲器。數(shù)據(jù)混洗通過交換分段內(nèi)及/或緩存器內(nèi)的成分來進(jìn)行。此后,存儲在分段內(nèi)的數(shù)據(jù)用于產(chǎn)生供傳輸?shù)臄?shù)據(jù)分組。因此,在如下描述中,如果分段丟失,所有從分段中產(chǎn)生的分組都在傳輸中丟失。類似地,如果一部分分段丟失,那么從分段中產(chǎn)生的相應(yīng)數(shù)目的分組在傳輸中丟失。
盡管,以下描述提到了用ADRC編碼的數(shù)據(jù)有1/6連續(xù)的分組損耗,但是考慮這里描述的方法和裝置可用于被運(yùn)用到各種編碼/解碼方案中的1/n連續(xù)的分組損耗容限的設(shè)計。
圖2說明了用于在點對點連接以及網(wǎng)絡(luò)中傳輸數(shù)據(jù)的分組結(jié)構(gòu)200的一個實施例。分組結(jié)構(gòu)200由編碼器110產(chǎn)生并通過傳輸介質(zhì)135發(fā)送。對于一個實施例,分組結(jié)構(gòu)200包括5字節(jié)字頭信息、8個DR比特、8個MIN比特、一個運(yùn)動標(biāo)志比特、5個門限索引比特以及354比特Q碼。這里描述的分組結(jié)構(gòu)是說明性的,而且以便可以用于異步轉(zhuǎn)移模式(“ATM”)網(wǎng)絡(luò)中的傳輸。但是,本發(fā)明不限于所描述的分組結(jié)構(gòu),而且可以使用各種網(wǎng)絡(luò)中所用的各種分組結(jié)構(gòu)。
正如前面注意到的,傳輸介質(zhì)(例如,媒介)135沒有被認(rèn)為能夠提供無差錯傳輸,因此分組可能會丟失或損壞。正如前面注意到的,存在檢測這種丟失或損壞的常規(guī)方法,但是實際上一般會出現(xiàn)圖象惡化。因此本發(fā)明的系統(tǒng)及方法教導(dǎo)了從這種丟失或損壞中增強(qiáng)恢復(fù)的信源編碼。在整個如下討論中假設(shè),突發(fā)損耗(即,幾個連續(xù)分組的丟失)是最可能的錯誤形式,但是一些隨機(jī)分組損耗也可能出現(xiàn)。
為了確保從一個或多個連續(xù)數(shù)據(jù)分組損耗中增強(qiáng)的恢復(fù),本發(fā)明的系統(tǒng)及方法提供了多級混洗。具體而言,包括在所傳輸?shù)姆纸M中的FL-數(shù)據(jù)和VL-數(shù)據(jù)包含空間和時間分離的數(shù)據(jù)位置上的數(shù)據(jù)。對數(shù)據(jù)混洗確保任何突發(fā)錯誤被分散并有利于差錯恢復(fù)。正如下面所描述的,混洗使塊屬性和Q比特值得以恢復(fù)。
數(shù)據(jù)編碼/解碼圖3是說明編碼器110所執(zhí)行的編碼過程一個實施例的流圖。圖3還描述了用于防止圖象惡化并有利于增強(qiáng)的差錯恢復(fù)的混洗過程的概述。
在圖3的步驟1中,一個也被稱為顯示成分的輸入幀集合被抽取,以便降低傳輸要求。Y信號被水平抽取到原有寬度的3/4,U和V信號每個被抽取到原有高度的1/2以及原有寬度的1/2。這樣得到3∶1∶0的視頻格式,每個幀對中有3960個Y塊、660個U塊以及660個V塊。正如前面注意到的,討論將描述Y信號的處理;但是該處理可用于U及V信號。在步驟2,兩個Y幀圖象被映射到3D塊。在步驟3,3D塊被混洗。在步驟4,使用ADRC緩存和編碼。在步驟5,編碼的Y、U及V塊在緩存器內(nèi)混洗。
在步驟6,一組編碼3D塊的VL-數(shù)據(jù)以及它們相應(yīng)的塊屬性被混洗。在步驟7,F(xiàn)L-數(shù)據(jù)在不同分段上混洗。在步驟8,執(zhí)行后同步信號填充,其中緩存器末尾的可變空間被填充了預(yù)定的比特流。在步驟9,VL-數(shù)據(jù)在不同分段上混洗。
為了說明起見,以下混洗描述提供了在編碼之前和之后處理象素數(shù)據(jù)的方法。對于另一個實施例,獨立的數(shù)據(jù)值通過硬件被混洗/去混洗。具體而言,硬件將塊值地址映射到不同的地址,以便實現(xiàn)混洗/去混洗處理。但是,地址映射對于與數(shù)據(jù)相關(guān)的值是不可能的,因為混洗必須遵守數(shù)據(jù)的處理。下面描述的組內(nèi)VL-數(shù)據(jù)混洗包括與數(shù)據(jù)相關(guān)的值。此外,為了說明起見,以下的混洗描述出現(xiàn)在不連續(xù)的數(shù)據(jù)集合上。但是,對于另一個實施例,信號基于多種數(shù)據(jù)級別--從比特到象素到幀--而定義?;煜磳τ谛盘栔卸x的每個級別都是可能的并且跨越不同的信號數(shù)據(jù)級別。
圖4是說明解碼器120所執(zhí)行的解碼處理的一個實施例的流圖。優(yōu)選地,轉(zhuǎn)換和去混洗處理是圖3所代表的逆過程。圖4還以Q比特、運(yùn)動標(biāo)志、DR、MIN以及象素數(shù)據(jù)的不同組合描述了所發(fā)明的差錯恢復(fù)過程。在下面以不同實施例的不同Q比特、運(yùn)動標(biāo)志、DR、MIN以及象素恢復(fù)的不同組合來描述差錯恢復(fù)過程。
從圖象到塊的映射在本實施例中,單幀一般包括5280個2D塊,每個2D塊包括64個象素。因此,一個幀對包括5280個3D決,因為來自第一幀的一個2D塊和來自后一幀的2D塊合起來構(gòu)成一個3D塊。
為了分別將幀或數(shù)據(jù)幀集合分成2D塊或3D塊,就要進(jìn)行圖象-到-塊映射。此外,圖象-到-塊映射包括使用互補(bǔ)及/或互鎖模式劃分幀中的象素,以便促進(jìn)傳輸損耗過程中增強(qiáng)的差錯恢復(fù)。但是,為了提高給定DR值不太大的概率,每個2D塊從局部區(qū)域中的象素構(gòu)造。
圖5說明一個圖象的示范16象素分段的圖象-到-塊映射處理的一個實施例。圖象500包括構(gòu)成單幀局部區(qū)域的16象素。圖象500中的每個象素由一個強(qiáng)度值代表。例如,圖象頂部左邊的象素具有等于100的強(qiáng)度值,而圖象低部右邊的象素強(qiáng)度值為10。
在一個實施例中,來自圖象500不同區(qū)域的象素用于產(chǎn)生2D塊510、520、530和540。2D塊510、520、530和540被編碼、混洗(如下所述)并發(fā)送。發(fā)送之后,2D塊510、520、530和540被重新合并并用于構(gòu)成圖象550。圖象550是圖象500的重構(gòu)。
為了確保在可能的傳輸損耗下精確地代表圖象500,圖5是一種用于重構(gòu)圖象550的互鎖互補(bǔ)塊結(jié)構(gòu),它的一個實施例在圖5中表示。具體而言,用于產(chǎn)生2D塊510、520、530和540的象素選擇可以確保在重構(gòu)圖象550時,互補(bǔ)及/或互鎖模式用于重新合并塊。因此,當(dāng)特定的2D塊屬性在傳輸中丟失時,圖象550的連續(xù)分段在重構(gòu)過程中不會失真。例如,如圖5所示,2D塊540的DR在數(shù)據(jù)傳輸過程中丟失了。但是,在圖象550的重構(gòu)過程中,解碼器利用鄰塊的多個相鄰象素就可以恢復(fù)2D塊540丟失的DR。此外,正如后面將要描述的,互補(bǔ)模式與混洗的結(jié)合增加了相鄰象素數(shù)目,優(yōu)選地使得來源于其它塊的相鄰象素數(shù)最大化,顯著地改善了DR和MIN恢復(fù)。
圖5a說明了在圖象-到-塊映射處理的一個實施例中用于構(gòu)成2D塊的混洗模式的一個實施例?;谙笏亟惶?,圖象被分成兩個子圖象,即子圖象560和子圖象570。在子圖象560中構(gòu)成一個矩形,從而描述2D塊的邊界。為了討論,2D塊被編號為0、2、4、、7、、9、11、12、14、16、19、21和23。瓦塊(tile)565說明了子圖象560內(nèi)2D塊的象素分布。
在子圖象570中,2D塊指派被水平移了8個象素,垂直移了4個象素。這樣當(dāng)子圖象560和570在重構(gòu)過程中合并時,導(dǎo)致環(huán)繞2D塊指派和重疊的包封。2D塊被編號為1、3、5、6、8、10、13、15、17、18、20和22。瓦塊575說明子圖象570內(nèi)2D塊的象素分布。瓦塊575是瓦塊565的互補(bǔ)結(jié)構(gòu)。因此,當(dāng)特定的塊屬性在傳輸過程中丟失時,塊屬性可以從相鄰象素中恢復(fù),因為丟失的2D塊仍存在。此外,存在具有類似塊屬性集合的重疊2D象素塊。因此,在圖象的重構(gòu)過程中,解碼器有來自相鄰2D塊的多個相鄰象素,丟失的塊屬性可以從其中恢復(fù)。
圖6說明其它的互補(bǔ)及互鎖2D塊結(jié)構(gòu)。其它結(jié)構(gòu)也是可以使用的。類似于圖5,圖6中說明的這些2D塊結(jié)構(gòu),無論給定2D塊是否傳輸丟失,都確保提供周圍的2D塊。但是,在象素到隨后的2D塊映射過程中,模式610a、610b和610d使用水平及/或垂直移動。水平移動描述了在開始新的2D塊邊界之前在水平方向上將瓦塊結(jié)構(gòu)移動預(yù)定數(shù)目的象素。垂直移動描述了在開始新的2D塊邊界之前在垂直方向上將方塊結(jié)構(gòu)移動預(yù)定數(shù)目的象素。在應(yīng)用中,可以只使用水平移動,也可以只使用垂直移動,或者可以使用水平和垂直移動的結(jié)合。
模式610a描述了用于圖象-到-塊映射的螺旋形模式。螺旋形模式遵循水平移動,在圖象-到-塊映射過程中產(chǎn)生隨后的2D塊。模式610b和610d說明了互補(bǔ)模式,其中象素選擇被水平和垂直移動,從而在圖象-到-塊映射過程中產(chǎn)生隨后的2D塊。此外,模式610b和610d說明了2D塊之間象素選擇的交替偏移。模式610c說明使用不規(guī)則象素抽樣來產(chǎn)生用于圖象-到-塊映射的2D塊。因此,圖象-到-塊映射遵守任意映射結(jié)構(gòu),只要象素被映射到2D塊僅一次。
圖5、圖5a和圖6描述了用于產(chǎn)生2D塊的圖象-到-塊映射。顯然,該處理可以用于3D塊。如上所述,3D塊的產(chǎn)生遵守與2D塊相同的邊界定義,但是邊界劃分延伸到隨后的幀上,從而產(chǎn)生了3D塊。具體而言,3D塊是通過收集用于定義第一幀中2D塊的象素與來自隨后幀中2D塊的象素而產(chǎn)生的。在一個實施例中,來自第一幀的2D塊與來自隨后幀的2D塊中的象素都是來自完全相同的位置。
幀集合內(nèi)塊混洗給定圖象的象素值在局部區(qū)域密切相關(guān)。但是,在同一圖象的另一個區(qū)域,象素值可能有很不同的值。因此,在編碼之后,一部分圖象中空間接近的2D或3D塊的DR和MIN值具有類似值,而另一部分圖象中塊的DR和MIN值可能非常不同。因此,當(dāng)緩存器順序填充了來自圖象中空間接近的2D或3D塊的編碼數(shù)據(jù)時,會出現(xiàn)不成比例的緩存器空間利用。幀集合內(nèi)塊混洗在ADRC編碼之前出現(xiàn),并包括對在圖象-到-塊映射處理過程中產(chǎn)生的2D或3D塊進(jìn)行混洗。這個混洗過程確保在隨后的ADRC編碼過程中均衡的緩存器使用。
圖7a-7d說明對3D Y塊混洗的一個實施例。圖7a-7d中的3D Y塊通過將上述圖象-到-塊映射處理應(yīng)用于只包含Y信號的幀對而產(chǎn)生。3D Y塊的混洗確保用于存儲編碼幀對的緩存器包含來自幀對不同部分的3D Y塊。這樣導(dǎo)致ADRC編碼過程中相類似的DR分散。每個緩存器內(nèi)類似的DR分散導(dǎo)致一致的緩存器利用。
圖7a-7d也說明了使用物理上不連貫的3D塊進(jìn)行3D塊混洗,以便確保連續(xù)分組的傳輸損耗產(chǎn)生的損壞的塊屬性被分散到圖象上,而不是在圖象的局部區(qū)域。
塊混洗的設(shè)計在出現(xiàn)小、中或大的突發(fā)分組損耗時都能廣泛地分散塊屬性。在本實施例中,小量突發(fā)損耗被認(rèn)為是幾個分組丟失;中等損耗是一個緩存器中可以存儲的數(shù)據(jù)量的丟失;而大量損耗是一個分段中可以存儲的數(shù)據(jù)量的丟失。在3D塊混洗過程中,每個三相鄰塊組從圖象中相對較遠(yuǎn)的部分選出。因此,在隨后的組內(nèi)VL-數(shù)據(jù)混洗過程(后面將詳細(xì)描述)中,每個組由具有不同統(tǒng)計特性的3D塊構(gòu)成。將塊屬性損耗分散,可得到增強(qiáng)的差錯恢復(fù),因為未損壞的3D塊周圍環(huán)繞損壞的3D塊,未損壞的3D塊可以用于恢復(fù)丟失的數(shù)據(jù)。
圖7a說明一個包含水平方向上的66個3D Y塊、垂直方向上的60個3D Y塊的幀對。3D Y塊被分配到分段0-5。如所說明的,3D Y塊的指定按照2乘3列分段,這樣,來自每個分段的一個3D Y塊關(guān)聯(lián)于一個分段。因此,如果不進(jìn)行進(jìn)一步的混洗而且出現(xiàn)了第一個880分組的突發(fā)損耗,與分段0關(guān)聯(lián)的所有塊屬性都會丟失。盡管如此,正如后面所描述的,進(jìn)行FL-數(shù)據(jù)混洗會進(jìn)一步地分散塊屬性損耗。
圖7b說明用于進(jìn)入分段0的編號為“O”的3D Y塊的掃描順序。圖7a的每個“O”3D Y塊編號為0、1、2、3、…、659,表示它們在被輸入分段0的流中的位置。使用塊編號來分配分段指定,其余的3DY塊輸入到分段1-5,因此導(dǎo)致一個幀對在多個分段上混洗。
圖7c說明包括一個分段的660個3D Y塊。編號為0-65的3D Y塊輸入到緩存器0。類似地,與編號的3D Y塊相鄰的3D Y塊輸入到緩存器1。該過程重復(fù),直到填滿緩存器2-9。因此,在數(shù)據(jù)傳輸過程中一個緩存器的損壞導(dǎo)致來自圖象不同部分的3D Y塊的丟失。
圖7d說明“O”3D Y塊在一個緩存器中的最后順序。3D Y塊0、1和2占據(jù)緩存器的前三個位置。該過程對緩存器的其余部分重復(fù)。因此,三個3D Y塊在數(shù)據(jù)傳輸過程中的丟失導(dǎo)致圖象內(nèi)相距很遠(yuǎn)的3D Y塊的丟失。
圖7a-d說明了幀集合的3D Y塊的3D塊分散的一個實施例。但是,在另一個實施例中,提供了3D U塊和3D V塊的3D塊屬性。3D U塊通過將上述的圖象-到-塊映射處理提供給只包含U信號的幀集合而產(chǎn)生。類似地,3D V塊通過將圖象-到-塊映射處理提供給只包含V信號的幀集合而產(chǎn)生。3D U塊和3D V塊遵循上述的3D Y塊分布。但是,如前所述,3D U塊和3D V塊數(shù)量各相對3D Y塊有1∶6的比例。
圖7a-d用于說明Y信號的幀集合內(nèi)塊混洗的一個實施例,通過這樣的操作,高達(dá)1/6傳輸過程中分組損耗的突發(fā)錯誤可以容忍而且進(jìn)一步保證了均衡的緩存器利用。本領(lǐng)域技術(shù)人員會理解的是分段、緩存器以及ADRC塊指定可以改變,以便確保對付1/n的突發(fā)錯誤損耗并修改緩存器利用。
部分緩存如圖3所示,ADRC編碼和緩存過程在步驟4出現(xiàn)。根據(jù)編碼技術(shù),圖象-到-塊映射處理過程中產(chǎn)生的2D或3D塊被編碼,從而產(chǎn)生2D或3D ADRC塊。一個3D ADRC塊包含Q碼、MIN值、運(yùn)動標(biāo)志以及DR。類似地,一個2D ADRC塊包含Q碼、MIN以及DR。但是2D ADRC塊不包括運(yùn)動標(biāo)志,因為編碼在單幀或單個域上執(zhí)行。
多種緩存技術(shù)可以在現(xiàn)有技術(shù)中找到(例如,見High EfficiencyCoding Apparatus(高效編碼裝置),美國專利4,845,560,Kondo等,以及High Efficiency Coding Apparatus(高效編碼裝置),美國專利4,722,003,Kondo)。這兩項高效編碼裝置專利都在這里結(jié)合參照。
下面提到的部分緩存處理描述了確定用于ADRC編碼的編碼比特的創(chuàng)造性方法。具體而言,部分緩存描述了從門限表中選擇門限值的方法,該門限表設(shè)計為在遠(yuǎn)程終端之間提供恒定的傳輸率同時限制了差錯傳播。在另一個實施例中,門限表被進(jìn)一步設(shè)計為提供最大的緩存器利用。在一個實施例中,緩存器是存儲來自給定幀集合的1/60部分編碼數(shù)據(jù)的存儲器。門限值用于確定前面描述的圖象-到-塊映射處理所產(chǎn)生的2D或3D塊中象素編碼所用的Q比特數(shù)。
門限表包括多行門限值,也稱為門限集合,門限表中的每一行用門限索引來編排。在一個實施例中,門限表按照如下方式組織產(chǎn)生較大數(shù)量Q碼比特的門限集合處于門限表的較高行。因此,對于具有可用的預(yù)定比特數(shù)的給定緩存器來說,編碼器110在門限表中向下移動直到遇到產(chǎn)生小于預(yù)定比特數(shù)的門限集合。這個恰當(dāng)?shù)拈T限值用于對緩存器中的象素數(shù)據(jù)編碼。
在一個實施例中,希望不超過30Mbps的傳輸速率。所希望的傳輸速率導(dǎo)致有31,152比特用于任何給定緩存器中的VL-數(shù)據(jù)存儲。因此,對于每個緩存器,計算累積的DR分布并從門限表中選出門限集合,以便將3D或2D塊中的象素編碼為VL-數(shù)據(jù)。
圖8說明緩存器0中所選的門限值和DR分布的一個實施例。圖8的縱軸包括累積的DR分布。例如,值“b”等于其DR大于或等于L3的3D或2D塊數(shù)。橫軸包括可能的DR值。在一個實施例中,DR值的范圍從0到255。門限值L4、L3、L2和L1描述了用于確定緩存器編碼的門限集合。
在一個實施例中,存儲在緩存器0中的所有塊使用門限值L4、L3、L2和L1來進(jìn)行編碼。因此,DR值大于L4的塊,其象素值使用4比特編碼。類似地,屬于那些DR值在L3和L4之間的塊的所有象素用3比特來編碼。屬于那些DR值在L2和L3之間的塊的所有象素用2比特來編碼。屬于那些DR值在L1和L2之間的塊的所有象素用1比特來編碼。最后,屬于那些DR值小于L1的塊的所有象素用0比特來編碼。L4、L3、L2和L1的選擇使得用于對緩存器0中的所有塊編碼的總比特數(shù)盡可能地接近31,152比特的極限,而不超過31,152極限。
圖8a說明在一個實施例中使用部分緩存。幀800被編碼并存儲在緩存器0-59中。假設(shè)傳輸錯誤阻止了差錯恢復(fù),幀800的解碼過程就會停止直到對丟失數(shù)據(jù)進(jìn)行了差錯恢復(fù)。但是,部分緩存限制了緩存器內(nèi)的差錯傳播,因此允許對其余緩存器解碼。在一個實施例中,傳輸錯誤阻止了緩存器0中塊80的Q比特和運(yùn)動標(biāo)志恢復(fù)。部分緩存限制了差錯傳播到緩存器0中的其余塊。因為緩存器0的結(jié)尾和緩存器1的開始由于固定緩存器長度而已知,差錯傳播限制到緩存器0。因此,解碼器120可以沒有延遲地開始緩存器1內(nèi)的塊處理。此外,不同門限集合用于對不同緩存器編碼,使編碼器110最大化/控制一個給定緩存器內(nèi)包含的Q碼比特數(shù),從而允許較高的壓縮比。此外,部分緩存處理提供了恒定的傳輸率,因為緩存器0-59由固定長度組成。
在一個實施例中,緩存器的可變空間不完全用Q碼比特填充,因為存在有限數(shù)目的門限集合。因此,固定長度緩存器中的其余比特填充了被稱為后同步信號的預(yù)定的比特流圖形。正如隨后將要描述的那樣,后同步信號允許雙向數(shù)據(jù)恢復(fù),因為后同步信號描述了緩存器末尾之前VL-數(shù)據(jù)的結(jié)尾。
緩存器內(nèi)YUV塊混洗Y、U和V信號各具有獨特的統(tǒng)計特性。為了改善Q比特和運(yùn)動標(biāo)志恢復(fù)處理(下面描述的),Y、U和V信號在緩存器內(nèi)復(fù)接。因此,傳輸損耗對特定信號基本上沒有影響。
圖9說明了緩存器內(nèi)YUV塊混洗處理的一個實施例,其中YUVADRC塊分別從Y、U和V信號中得到。緩存器900說明了幀集合內(nèi)塊混洗之后的ADRC塊指定。緩存器900包括66個Y-ADRC塊,其后接著11個U-ADRC塊,其后再接著11個V-ADRC塊。緩存器910表示了緩存器內(nèi)YUV塊混洗之后YUV ADRC塊的組織。如所示,三個Y-ADRC塊后面接著一個U-ADRC塊或三個Y-ADRC塊,其后面又接著一個V-ADRC塊。緩存器內(nèi)YUV塊混洗減少了緩存器內(nèi)相鄰塊比特流之間的相似性。具有不同信號(即,YUV比或其它色度空間)的緩存器內(nèi)YUV塊混洗的另一個實施例按照最初的圖象格式也是可能的。
組內(nèi)VL-數(shù)據(jù)混洗組內(nèi)VL-數(shù)據(jù)混洗包括三個處理步驟。這三個處理步驟包括Q碼級聯(lián)、Q碼重指定以及隨機(jī)化級聯(lián)的Q碼。圖10說明組內(nèi)VL-數(shù)據(jù)混洗的一個實施例,其中三個處理步驟連續(xù)應(yīng)用于緩存器中存儲的Q碼。在另一個實施例中,處理步驟的子集應(yīng)用于組內(nèi)VL-數(shù)據(jù)混洗。每個處理步驟獨立地協(xié)助傳輸過程中數(shù)據(jù)丟失的差錯恢復(fù)。因此,對每個處理步驟獨立描述。差錯恢復(fù)的詳細(xì)描述在下面數(shù)據(jù)恢復(fù)的討論中提供。
1.Q碼級聯(lián)Q碼級聯(lián)保證ADRC塊組一起解碼。組解碼有利于差錯恢復(fù),因為在下面詳述的數(shù)據(jù)恢復(fù)處理過程中附加信息可從相鄰塊提供。對于一個實施例,Q碼級聯(lián)獨立地應(yīng)用于存儲在緩存器中的每個三ADRC塊組。在另一個實施例中,組包括來自不同緩存器的ADRC塊。在三個ADRC塊上的Q碼的級聯(lián)被描述為產(chǎn)生一個級聯(lián)的ADRC瓦塊。圖11和圖11a表示了一個產(chǎn)生級聯(lián)的ADRC瓦塊的實施例。
圖11說明從2D ADRC塊中產(chǎn)生級聯(lián)的ADRC瓦塊的一個實施例。具體而言,對2D ADRC塊0、1和2中所包括的每個Q碼(q0-q63)執(zhí)行級聯(lián),從而產(chǎn)生級聯(lián)ADRC瓦塊A的64個Q碼。例如,2D ADRC塊0的第一Q碼q0,0(第0個量化值)級聯(lián)到2D ADRC塊1的第一個Q碼q0,1。兩個級聯(lián)的Q碼再級聯(lián)到2D ADRC塊2的第一個Q碼q0,2,因此產(chǎn)生級聯(lián)的ADRC瓦塊A的Q0。處理一直重復(fù)到產(chǎn)生Q63?;蛘?,在級聯(lián)的ADRC瓦塊A中產(chǎn)生的Qi由下式描述Qi=[qi,0,qi,1,qi,2] i=0,1,2,…63。
此外,與級聯(lián)的ADRC瓦塊A中的每個Qi關(guān)聯(lián),有相應(yīng)數(shù)目的N比特代表產(chǎn)生單個Qi的級聯(lián)比特總數(shù)。
圖11a說明從包括運(yùn)動塊的幀對中產(chǎn)生級聯(lián)的ADRC瓦塊的一個實施例。運(yùn)動塊是具有設(shè)置的運(yùn)動標(biāo)志的3D ADRC塊。當(dāng)前面描述的圖象-到-塊映射處理所產(chǎn)生的兩個2D塊結(jié)構(gòu)內(nèi)的預(yù)定數(shù)目象素在第一幀和后續(xù)幀之間改變其值時,就設(shè)置運(yùn)動標(biāo)志。在另一個實施例中,當(dāng)?shù)谝粠秃罄m(xù)幀的2D塊之間每個象素改變的最大值超過預(yù)定值時,就設(shè)置運(yùn)動標(biāo)志。相反,非運(yùn)動(即靜止)塊包括一個未設(shè)運(yùn)動標(biāo)志的3D ADRC塊。當(dāng)?shù)谝粠秃罄m(xù)幀的兩個2D塊內(nèi)的預(yù)定象素數(shù)的值沒有改變時,運(yùn)動標(biāo)志保持不設(shè)置。在另一個實施例中,當(dāng)?shù)谝粠秃罄m(xù)幀之間每個象素改變的最大值不超過預(yù)定值時,運(yùn)動標(biāo)志保持不設(shè)置。
運(yùn)動塊包括來自第一幀中編碼的2D塊以及后續(xù)幀中編碼的2D塊的Q碼。對應(yīng)于單個編碼的2D塊的Q碼集合被稱為ADRC瓦塊。因此,一個運(yùn)動塊產(chǎn)生兩個ADRC瓦塊。但是由于沒有運(yùn)動,一個靜止塊只需包括運(yùn)動塊一半數(shù)目的Q碼,因此只產(chǎn)生一個ADRC瓦塊。在本實施例中,靜止塊的Q碼通過在第一幀的2D塊和后續(xù)幀中相應(yīng)2D塊之間對相應(yīng)的象素值進(jìn)行平均而產(chǎn)生。每個平均的象素值隨后被編碼,產(chǎn)生構(gòu)成單個ADRC瓦塊的Q碼集合。因此,運(yùn)動塊1110和1130產(chǎn)生ADRC瓦塊0、1、3和4。靜止塊1120產(chǎn)生ADRC瓦塊2。
圖11a中級聯(lián)ADRC瓦塊的產(chǎn)生可以把ADRC瓦塊0-4的Q碼級聯(lián)到級聯(lián)的ADRC瓦塊B。具體而言,對ADRC瓦塊0、1、2、3和4中包括的每個Q碼(q0-q63)進(jìn)行級聯(lián),從而產(chǎn)生級聯(lián)的ADRC瓦塊B的64個Q碼?;蛘撸總€Q碼(Qi)在級聯(lián)的ADRC瓦塊B中的產(chǎn)生由以下數(shù)學(xué)公式來進(jìn)行描述Qi=[qi,0,qi,1,qi,2,qi,3,qi,4]i=0,1,2,…632.Q碼重指定Q碼重指定可以確保傳輸損耗所引起的比特錯誤被局限在空間分離的象素內(nèi)。具體而言,在Q碼重指定過程中,Q碼被重新分布,而且重新分布的Q碼比特被混洗。因此,Q碼重指定有利于差錯恢復(fù),因為未損壞的象素環(huán)繞每個損壞的象素。此外,因為象素?fù)p壞均勻地分布在ADRC塊上,所以有助于DR和MIN恢復(fù),DR和MIN恢復(fù)在下面的數(shù)據(jù)恢復(fù)討論中詳述。
圖12說明在1/6突發(fā)錯誤損耗的傳輸損耗過程中象素破壞的一個實施例。具體而言,2D ADRC塊1210、1220和1230中的每一個包括使用3比特編碼的64個象素。因此,2D ADRC塊的每個象素(p0到P63)用3比特來代表。2D ADRC塊1210表示了當(dāng)每6比特的第一比特丟失時的比特?fù)p耗模式,用加黑的方塊表示,類似地,當(dāng)每6比特的第二比特或第四比特丟失時的比特?fù)p耗模式分別在2D ADRC塊1220和1230中表示。圖12說明沒有Q碼重指定時,對于1/6突發(fā)錯誤損耗,2D ADRC塊1210、1220和1230所有象素的一半被破壞。
對于一個實施例,Q碼重指定被獨立應(yīng)用于緩存器中存儲的每個級聯(lián)的ADRC瓦塊,因此確保了在去混洗時比特錯誤被局限在空間分離的象素內(nèi)。在另一個實施例中,Q碼重指定被應(yīng)用于緩存器中所存儲的每個ADRC塊。
圖12a說明從級聯(lián)的ADRC瓦塊產(chǎn)生混洗的Q碼比特流的Q碼重指定的一個實施例。表122和表132說明Q碼重分布。比特流130和140說明了Q碼比特的混洗過程。
表122表示用于級聯(lián)的ADRC瓦塊A的級聯(lián)的Q碼。Q0是第一個級聯(lián)的Q碼,Q63是最后一個級聯(lián)的Q碼。表132說明Q碼的重分布。對于一個實施例,Q0,Q6,Q12,Q18,Q24,Q30,Q36,Q42,Q48,Q54和Q60被包括在第一集合、分區(qū)0中。按照表132,后面11個級聯(lián)的Q碼被包括在分區(qū)1中。這些步驟對分區(qū)2-5重復(fù)。一個分區(qū)的邊界由表132中的垂直線描述。將級聯(lián)Q碼向6個分區(qū)的這種空間分離指定確保了1/6突發(fā)錯誤損耗將導(dǎo)致分散到一組連續(xù)象素上的比特?fù)p耗模式。
圖12b說明重新分布Q碼的1/6突發(fā)錯誤損耗所產(chǎn)生的比特模式損耗的一個實施例。具體而言,2D ADRC塊1215、1225和1235中每個包括用3比特編碼的64個象素。因此,每個2D ADRC塊的每個象素(p0到P63)用3比特代表。在2D ADRC塊1215、1225和1235中用加黑的方塊表示的比特?fù)p耗模式被局限在一組連續(xù)的象素上。因此,對于給定的分段損耗,每個2D ADRC塊1215、1225和1235內(nèi)只有11個連續(xù)象素被破壞。在另一個實施例中,Q碼到分區(qū)的指定包括來自不同運(yùn)動塊的Q碼,因此提供到6個分段的空間和時間分離的Q碼指定。這樣就產(chǎn)生了在1/6突發(fā)錯誤損耗時附加的未損壞的空間-時間象素,并進(jìn)一步促進(jìn)了更增強(qiáng)的差錯恢復(fù)。
參考圖12a,表132中重分布的Q碼比特在所產(chǎn)生的比特流上被混洗,這樣,比特流中的相鄰比特來自相鄰的分區(qū)。表132中所有分區(qū)的Q碼比特被級聯(lián)成比特流130。對于給定的分區(qū),比特流130中的相鄰比特被分散到所產(chǎn)生的比特流140中的每個第6個位置上。因此,比特流140中號碼0到5的比特包括來自每個分區(qū)中第一Q碼的第一比特。類似地,比特流140中號碼6到11的比特包括來自每個分區(qū)中第一Q碼的第二比特。該處理對所有Q碼比特重復(fù)。因此,1/6突發(fā)差錯損耗將產(chǎn)生空間分離的象素?fù)p耗。
圖12c說明了重指定(即,重分布并混洗)的Q碼的1/6突發(fā)錯誤損耗所造成的比特模式損耗的一個實施例。具體來說,2D ADRC塊1217、1227以及1237每個包括64個用三比特編碼的象素。因此,每個2D ADRC塊的每個象素P0到P63,可用三比特代表。在2D ADRC塊1217、1227和1237中,用黑方塊表示的比特?fù)p耗模式在空間分離的象素上分布,因此有利于象素差錯恢復(fù)。
3.Q碼比特的隨機(jī)化利用屏蔽密鑰來使Q碼比特隨機(jī)化,從而有助于解碼器恢復(fù)丟失和損壞的數(shù)據(jù)。具體而言,在編碼過程中,將密鑰(用KEY標(biāo)志)用于屏蔽Q碼比特流。因此,解碼器必須識別KEY的正確值,以便解除對Q碼比特流的屏蔽。
在一個實施例中,KEY用于屏蔽三個ADRC塊的Q碼重指定所產(chǎn)生的Q碼比特流。正如前面所描述的,ADRC塊包括FL-數(shù)據(jù)和Q碼。屏蔽密鑰的每個密鑰元素(“di”)由FL-數(shù)據(jù)值和相應(yīng)ADRC塊所關(guān)聯(lián)的量化比特(“qi”)數(shù)的組合來產(chǎn)生。在一個實施例中,運(yùn)動標(biāo)志和Q比特用于定義一個密鑰。因此,在這個實施例中,密鑰元素值從下面數(shù)學(xué)公式產(chǎn)生di=5·mi+qi,這里i=0,1,2而且qi=0,1,2,3,4變量mi等于運(yùn)動標(biāo)志。因此,當(dāng)相應(yīng)的ADRC塊是靜止塊時,mi等于0,當(dāng)相應(yīng)的ADRC塊是運(yùn)動塊時,mi等于1。此外,變量qi代表用于對相應(yīng)ADRC塊編碼的量化比特。因此,對于四比特ADRC編碼技術(shù),qi具有的值為0、1、2、3或4。在一個實施例中,一組三個ADRC塊的KEY根據(jù)下式用三個密鑰元素(“di”)定義KEY=d0+10·d1+100·d2因此,在運(yùn)動標(biāo)志或Q比特數(shù)據(jù)的恢復(fù)過程中,根據(jù)用于產(chǎn)生屏蔽密鑰的值重新生成可能的密鑰值。重生成的密鑰值用于對所接收的導(dǎo)致產(chǎn)生候選解碼的Q碼比特流解除屏蔽。重生成密鑰值以及特定候選解碼技術(shù)選擇的詳細(xì)描述在下面討論數(shù)據(jù)恢復(fù)時提供。
在另一個實施例中,屏蔽密鑰從各種元素中產(chǎn)生。因此,給解碼器提供與一個元素有關(guān)的特定信息,而不必在傳輸介質(zhì)上發(fā)送該元素。在一個實施例中,與ADRC塊對應(yīng)的DR或MIN值用于產(chǎn)生屏蔽密鑰,以便屏蔽代表ADRC塊的比特流。
圖10-12說明在傳輸過程中容限達(dá)1/6分組數(shù)據(jù)損耗的組內(nèi)VL-數(shù)據(jù)混洗。本領(lǐng)域技術(shù)人員將會理解的是,總分區(qū)數(shù)以及比特劃分可以改變,以保證對付1/n突發(fā)錯誤損耗。
分段內(nèi)FL-數(shù)據(jù)混洗分段內(nèi)FL-數(shù)據(jù)混洗描述了在不同分段上重新排列塊屬性。重新排列塊屬性提供了數(shù)據(jù)丟失的分散。具體而言,當(dāng)來自一個分段的FL-數(shù)據(jù)在傳輸過程中丟失時,DR值、MIN值以及運(yùn)動標(biāo)志值的丟失不屬于同一塊。圖13和14說明了分段內(nèi)FL-數(shù)據(jù)混洗的一個實施例。
圖13說明分段0到5的內(nèi)容。對于一個實施例,每個分段包括880個DR、880個MIN、880個運(yùn)動標(biāo)志以及對應(yīng)于660個Y塊、110個U塊以及110個V塊的VL-數(shù)據(jù)。正如圖MIN混洗1300中所示,分段0的MIN值移動到分段2,分段2的MIN值移動到分段4,分段4的MIN值移動到分段0。此外,分段1的MIN值移動到分段3,分段3的MIN值移動到分段5,分段5的運(yùn)動標(biāo)志值移動到分段1。
圖13a說明運(yùn)動標(biāo)志混洗。如所示,在圖運(yùn)動標(biāo)志混洗1305中,分段0的運(yùn)動標(biāo)志值移到分段4,分段2的運(yùn)動標(biāo)志值移到分段0,分段4的運(yùn)動標(biāo)志值移到分段2。此外,分段1的運(yùn)動標(biāo)志值移到分段5,分段3的運(yùn)動標(biāo)志值移到分段1,分段5的運(yùn)動標(biāo)志值移到分段3。損耗模式1310說明了分段0在傳輸中丟失后的FL-數(shù)據(jù)損耗。
對于特定的塊屬性,圖13和圖13a說明了在分段之間對特定塊屬性的所有情況的混洗。例如,在圖13中,來自分段0的880個MIN值全體與分段2的880個MIN值互換。類似地,在圖13a中,分段0的880個運(yùn)動標(biāo)志全體與分段4中的880個運(yùn)動標(biāo)志互換。在連續(xù)分組的傳輸丟失過程中,這種全體性的塊屬性混洗導(dǎo)致一個塊組的特定塊屬性的不均勻地丟失。在一個實施例中,一個塊組包括三個ADRC塊。
圖14說明了用于DR、MIN以及運(yùn)動標(biāo)志的模三混洗過程的一個實施例。模三混洗描述在三個不同分段中的三個塊(即,一個塊組)上共享的混洗模式?;煜茨J綄τ谌齻€不同分段內(nèi)的所有塊組重復(fù)。但是,不同混洗模式被用于不同的塊屬性。因此,模三混洗過程將塊屬性分散到所有三個分段中。具體而言,對于給定的塊組,模三混洗確保在分段傳輸丟失過程中特定塊屬性只有一次丟失。因此,在下面描述的數(shù)據(jù)恢復(fù)過程中,就產(chǎn)生了恢復(fù)塊內(nèi)數(shù)據(jù)丟失的、數(shù)目減少的候選解碼。
如DR取模混洗1410所示,一個分段存儲880個DR值。因此,DR值編號為0-879,根據(jù)給定的DR值所取自的塊而定。在模三混洗中,三個分段的FL-數(shù)據(jù)內(nèi)容被混洗。0-2的計數(shù)用于識別為取?;煜炊鴺?biāo)識的三個分段中的每個DR值。因此,屬于編號0、3、6、9…塊的DR屬于計數(shù)0。類似地,屬于編號1、4、7、10…塊的DR屬于計數(shù)1,屬于編號2、5、8、11..塊的DR屬于計數(shù)2。因此,對于給定的計數(shù),與該計數(shù)關(guān)聯(lián)的DR值在分段0、2和4上混洗。類似地,與同一計數(shù)關(guān)聯(lián)的DR值在分段1、3和5上混洗。
在DR取模混洗1410中,屬于計數(shù)0的DR值不混洗。屬于計數(shù)1的DR值混洗。具體而言,分段A中的計數(shù)1 DR值移動到分段B,分段B中的計數(shù)1 DR值移動到分段C,分段C中的計數(shù)1 DR值移動到分段A。
屬于計數(shù)2的DR值也被混洗。具體而言,分段A中的計數(shù)2 DR值移動到分段C,分段B中的計數(shù)2 DR值移動到分段A,分段C中計數(shù)2 DR值移動到分段B。
MIN取模混洗1420說明了MIN值的模三塊屬性混洗過程的一個實施例。一個分段包括880個MIN值。在MIN取?;煜?420中,在DR取?;煜?410中用于計數(shù)1和計數(shù)2的混洗模式移到計數(shù)0和計數(shù)1。具體而言,DR取?;煜?410中用于計數(shù)1的混洗模式被應(yīng)用于計數(shù)0。DR取?;煜?410中用于計數(shù)2的混洗模式被應(yīng)用于計數(shù)1,屬于計數(shù)2的MIN值不混洗。
運(yùn)動標(biāo)志取模混洗1430說明了運(yùn)動標(biāo)志值的模三塊屬性混洗過程的一個實施例。一個分段包括880個運(yùn)動標(biāo)志值。在運(yùn)動標(biāo)志取?;煜?430中,在DR取?;煜?410中用于計數(shù)1和計數(shù)2的混洗模式分別移到計數(shù)2和計數(shù)0。具體而言,DR取?;煜?410中用于計數(shù)2的混洗模式被應(yīng)用于計數(shù)0。DR取?;煜?410中用于計數(shù)1的混洗模式被應(yīng)用于計數(shù)2,屬于計數(shù)1的運(yùn)動標(biāo)志值不混洗。
圖14a說明取?;煜?410、1420和1430的取模混洗結(jié)果。取?;煜唇Y(jié)果1416表示屬于分段0的塊的每個屬性的目標(biāo)。在這個例子中,分段0對應(yīng)于圖14的分段A。這個目標(biāo)根據(jù)圖14的取?;煜?410、1420和1430而規(guī)定。圖14a也說明了在傳輸過程中分段0丟失后塊屬性損耗的分散。具體而言,損耗模式1415表示在隨后的去混洗被應(yīng)用于最初用取?;煜?410、1420和1430進(jìn)行混洗的接收數(shù)據(jù)上之后,DR、運(yùn)動標(biāo)志以及MIN值在6個分段上的丟失。如圖14a所示,塊屬性丟失周期性地分散在分段0、2和4上,而分段1、3和5沒有塊屬性丟失。此外,空間損耗模式1417說明了在傳輸過程中分段0丟失之后損壞的FL-數(shù)據(jù)的去混洗空間分布??臻g損耗模式1417表示隨后的去混洗被應(yīng)用于接收數(shù)據(jù)之后的DR、運(yùn)動標(biāo)志以及MIN值的丟失。在空間損耗模式1417中,損壞的塊被未損壞的塊環(huán)繞,損壞的塊屬性可以用周圍未損壞的塊來恢復(fù)。
圖14和圖14a說明了模三混洗模式以及傳輸過程中分段丟失之后塊屬性丟失的分散。在另一個實施例中,計數(shù)變量或分段號可變以便改變丟失塊屬性的分布。圖14b說明了取模混洗結(jié)果1421和損耗模式1420。類似地,圖14c說明了取?;煜唇Y(jié)果1426以及損耗模式1425。損耗模式1420和損耗模式1425說明了塊屬性丟失在6個分段上的分布,與前面描述的三個分段不同。
應(yīng)該考慮到在另外的實施例中,將會分散各種塊屬性組合以便進(jìn)行混洗處理。
分段內(nèi)VL-數(shù)據(jù)混洗在分段內(nèi)VL-數(shù)據(jù)混洗過程中,在預(yù)定數(shù)目的分段(例如,6個分段)之間的比特被設(shè)計為在高達(dá)1/6分組傳輸損耗過程中,可確保空間分開和周期性的VL-數(shù)據(jù)丟失。圖15和16說明了分段內(nèi)VL-數(shù)據(jù)混洗處理的一個實施例。
在本實施例中,需要接近于30Mbps的傳輸率。因此,所需的傳輸速率導(dǎo)致60個緩存器每個中的VL-數(shù)據(jù)有31,152比特。其余空間被緩存器中包括的88個塊的FL-數(shù)據(jù)所用。圖15包括傳輸率接近30Mbps的一個幀集合內(nèi)VL-數(shù)據(jù)緩存器的組織。如前面所描述的,部分緩存用于使每個緩存器內(nèi)可用VL-數(shù)據(jù)空間的使用最大化,而且未使用的VL-數(shù)據(jù)空間用后同步信號填充。
圖16說明保證空間分開和周期性的VL-數(shù)據(jù)損耗的混洗過程的一個實施例。第一行說明來自圖15的60個緩存器的VL-數(shù)據(jù)重新組織成1,869,120比特的級聯(lián)流。第二行說明每個第6比特組成新的比特流。因此,當(dāng)解碼器后來將該過程逆轉(zhuǎn)時,高達(dá)1/6被傳輸數(shù)據(jù)的突發(fā)損耗被轉(zhuǎn)換為周期性損耗,其中至少5個未損壞的比特將每組兩個損壞比特分開。
第三行說明將流2的每個10比特組成新比特流,即流3。組的邊界也由分段中的比特數(shù)定義。每節(jié)10個比特的流2分組保證1/60數(shù)據(jù)損耗在每組2個損壞比特之間產(chǎn)生59個未損壞的比特。這樣當(dāng)88個連續(xù)數(shù)據(jù)分組丟失時提供空間分開和周期性的VL-數(shù)據(jù)丟失。
第四行說明將流3的每個11比特組成流4。組的邊界也由分段中的比特數(shù)定義。每節(jié)11個比特的流3分組保證1/660數(shù)據(jù)損耗在損壞比特之間產(chǎn)生659個未損壞的比特,從而當(dāng)8個連續(xù)分組傳輸丟失時產(chǎn)生空間分開和周期性的VL-數(shù)據(jù)丟失。
流4內(nèi)的每個31,152比特組連續(xù)重存儲在緩存器0-59中,第一比特組存儲在緩存器0中,最后比特組存儲在緩存器59中。
本領(lǐng)域技術(shù)人員會理解的是,圖16的分組要求是可變的,以便在高達(dá)1/n傳輸損耗時保證空間分開和周期性的VL-數(shù)據(jù)丟失容限。
傳輸前面描述的混洗過程產(chǎn)生帶有混合了FL-數(shù)據(jù)和VL-數(shù)據(jù)的緩存器。對于一個實施例,按照分組結(jié)構(gòu)200,分組從每個緩存器中產(chǎn)生并在傳輸介質(zhì)135上發(fā)送。
數(shù)據(jù)恢復(fù)正如前面所注意的,用于數(shù)據(jù)比特流編碼的本發(fā)明方法能夠進(jìn)行由于數(shù)據(jù)分組丟失而通常出現(xiàn)的增強(qiáng)的數(shù)據(jù)恢復(fù)。解碼過程的概述已經(jīng)在圖4中表示。
參考圖4,分組中接收的數(shù)據(jù)通過多級去混洗過程(步驟425、430、435以及440)來處理,其中通過分組接收的不同級別或不同部分的比特流被去混洗以便恢復(fù)數(shù)據(jù)。根據(jù)本領(lǐng)域已知的概念(例如,Kondo,F(xiàn)ujimori,Nakaya,“Adaptive Dynamic Coding Scheme forFuture HDTV Digital VTR(未來HDTV數(shù)字錄象機(jī)的自適應(yīng)動態(tài)編碼方案)”,F(xiàn)ourth International Workshop on HDTV and Beyond,1991年9月4-6日,意大利,都靈),ADRC解碼在步驟445應(yīng)用于數(shù)據(jù)。
然后進(jìn)行幀集合內(nèi)的塊去混洗,隨后執(zhí)行塊-到-圖象映射,即步驟450、455。步驟425、430、435、440、445、450和455是前面執(zhí)行的對數(shù)據(jù)編碼的處理步驟的逆處理,這里就不再詳細(xì)討論。但是,應(yīng)該注意的是在一個實施例中,步驟425、430和440所代表的去混洗級別是與數(shù)據(jù)無關(guān)的。例如,所執(zhí)行的去混洗處理通過地址映射或表查找來預(yù)定或規(guī)定。由于去混洗步驟425、430和440是與數(shù)據(jù)內(nèi)容無關(guān)的,由于(例如)分組丟失造成的數(shù)據(jù)損耗不會防止去混洗步驟的執(zhí)行。類似地,步驟450和455是與數(shù)據(jù)無關(guān)的。但是組內(nèi)VL-數(shù)據(jù)去混洗處理是與數(shù)據(jù)內(nèi)容相關(guān)的。更具體地說,組內(nèi)VL-數(shù)據(jù)去混洗處理用于確定組中的塊的量化碼。因此在步驟435,如果分組丟失了,受影響的組就不能被處理。
在進(jìn)行了去混洗、解碼和映射之后(步驟425、430、435、440、445、450和455),執(zhí)行恢復(fù)處理,以便恢復(fù)處于丟失分組中的Q比特和運(yùn)動標(biāo)志值。Q比特值通常由于DR丟失(由丟失分組造成)而丟失。當(dāng)Q比特或運(yùn)動標(biāo)志值未知時,象素的Q碼比特不能從數(shù)據(jù)比特流中確定。如果Q比特或運(yùn)動標(biāo)志值的確定不恰當(dāng),那么這個錯誤將作為隨后塊的起點而傳播,因為緩存器中的數(shù)據(jù)將被錯誤地識別。
圖17描述了恢復(fù)Q比特和運(yùn)動標(biāo)志值的一般過程。這個特定實施例描述了使用多數(shù)據(jù)塊恢復(fù)Q比特和運(yùn)動標(biāo)志值的過程;但是,應(yīng)該考慮到特定的塊數(shù)不受這里的討論所限制,而且可以是一塊或多決。參考圖17,基于步驟1705中比特流的出錯檢測,基于規(guī)定參數(shù)的候選解碼針對所檢測的三個塊而產(chǎn)生。在步驟1715,每個候選解碼在它是精確解碼過程的幾率上記分,在步驟1720,使用具有最佳記分的候選解碼,該解碼識別能夠進(jìn)行隨后的受影響塊的象素解碼的Q比特和運(yùn)動標(biāo)志值。
返回參考圖4的解碼過程,一旦最佳解碼被選出,由于丟失分組造成丟失的任何DR或MIN值在步驟465被恢復(fù)。本領(lǐng)域技術(shù)人員已知的各種恢復(fù)處理都可以用于恢復(fù)DR和MIN,包括相鄰決值的最小二乘或平均。作為一個例子,見Kondo,F(xiàn)ujimori,Nakaya的“AdaptiveDynamic Coding Scheme for Future HDTV Digital VTR(未來HDTV數(shù)字錄象機(jī)的自適應(yīng)動態(tài)編碼方案)”,F(xiàn)ourth InternationalWorkshop on HDTV and Beyond,1991年9月4-6日,意大利,都靈。在本實施例中,本發(fā)明的圖象-到-塊映射過程以及由此產(chǎn)生的數(shù)據(jù)結(jié)構(gòu)增加了相鄰塊的數(shù)目,因此提供附加數(shù)據(jù)并有利于更精確的DR或MIN恢復(fù)。具體而言,在一個實施例中,DR和MIN如下恢復(fù)MIN′=Σi(yi-DRm·qi)N]]>這里MIN’對應(yīng)于恢復(fù)的MIN,N是用于求和的項數(shù)(例如,當(dāng)i=0-31時N=32)。在另一個實施例中,如果同一塊的DR和MIN同時損壞,根據(jù)下式恢復(fù)DR和MINDR′=m·[N·Σiqi·yi-Σiqi·Σiyi]N·Σiqi2-[Σiqi]2]]>MIN′=Σi(yi-DR′m·qi)N]]>在步驟470,ADRC解碼應(yīng)用于在Q比特和運(yùn)動標(biāo)志恢復(fù)之前沒有解碼的那些塊,并在步驟475執(zhí)行象素恢復(fù)處理,以便恢復(fù)由于丟失分組或隨機(jī)錯誤而可能出現(xiàn)的任何錯誤象素數(shù)據(jù)。此外在步驟480執(zhí)行3∶1∶0->4∶2∶2的返回轉(zhuǎn)換,以便將圖象置于所選的顯示格式。
圖18說明了本發(fā)明的解碼過程中Q比特和運(yùn)動標(biāo)志恢復(fù)處理的一個特定實施例。在這個特定實施例中,處理的輸入是相鄰塊信息、將要處理的三個塊的塊屬性以及象素數(shù)據(jù)。也要輸入表示丟失數(shù)據(jù)位置的錯誤標(biāo)志。錯誤標(biāo)志可以用本領(lǐng)域技術(shù)人員已知的各種方式來產(chǎn)生,而且這里將不會進(jìn)一步討論,只是說明標(biāo)志表示哪些比特是損壞這里DR’Σia2i]]>于恢復(fù)的DR,qi是ADRC塊的第i值,而且qi∈{0,1,…,2Q-1};對于邊緣匹配ADRC,m=2Q-1,對于非邊緣匹配ADRC,m=2Q;yi是相鄰塊象素的解碼值,Q是Q比特值;而且或丟失的分組所發(fā)送的。
在步驟1805,產(chǎn)生候選解碼。候選解碼可以用各種方式產(chǎn)生。例如,盡管處理負(fù)擔(dān)可能相當(dāng)大,但是候選解碼可以包括所有可能的解碼?;蛘?,候選解碼可以基于預(yù)定的參數(shù)產(chǎn)生,以便減少待評估的候選解碼數(shù)。
在本實施例中,候選解碼基于對前面描述的組內(nèi)VL-數(shù)據(jù)混洗處理的比特流進(jìn)行隨機(jī)化所用的可能的密鑰值來確定。此外,應(yīng)該注意候選解碼還受等待解碼的比特長度以及對剩下多少塊的了解所限制。例如,正如將要討論的,如果處理最后一塊,通常該塊的解碼長度是已知的。
繼續(xù)本例,圖19說明了本發(fā)明的可能情況,其中值x表示未知值(可能由于分組丟失)。將進(jìn)一步舉例來解釋。mi定義為第i塊的運(yùn)動標(biāo)志,qi是第i塊的量化比特數(shù),ni是第i塊的可能候選數(shù),di是前面在組內(nèi)VL-數(shù)據(jù)混洗中描述的第i塊的密鑰元素值。第i塊在每個組內(nèi)定義。在本例中,每個組內(nèi)的塊數(shù)是三。三塊組的密鑰按d0+10·d1+100·d2而產(chǎn)生。假設(shè)在第一塊中運(yùn)動標(biāo)志未知,量化比特數(shù)是2,則m0等于x,q0等于2。根據(jù)上面描述的式子產(chǎn)生密鑰元素,di=5·mi+qi,d0的可能數(shù)字集合由{2和7}組成。因此,可能值(n0)數(shù)是2。假設(shè)第二塊具有運(yùn)動標(biāo)志值1以及一個量化比特,d1的值是5·1+1=6而且n1=1。第三塊具有運(yùn)動標(biāo)志值1以及未知數(shù)目的量化比特。因此,數(shù)字d2包括由{6,7,8,9}組成的集合而且n2=4。因此,這個組可能的候選數(shù)M是2·1·4=8,而且用于產(chǎn)生候選解碼的密鑰在662、667、762、767、862、867、962、967中變化。這個處理優(yōu)選地用于受數(shù)據(jù)丟失影響的每個組。
返回參考圖17,在步驟1715,一旦根據(jù)密鑰數(shù)據(jù)已經(jīng)對數(shù)據(jù)解碼,就評估所產(chǎn)生的候選解碼或在它是正確的數(shù)據(jù)解碼的幾率上記分。在步驟1720,具有最佳分的候選解碼被選擇使用。
各種技術(shù)可以用于對候選解碼記分。例如,記分?jǐn)?shù)可以從特定候選解碼中塊的象素與圖象其它象素一致程度的分析中得到。優(yōu)選地,記分?jǐn)?shù)基于表示錯誤(例如誤差平方和相關(guān))的準(zhǔn)則中得到。例如,對于相關(guān),假設(shè)相鄰象素在某種程度上緊密相關(guān)是相當(dāng)有把握的。因此,一個很大或很小的相關(guān)表示候選解碼是不是正確解碼。
正如圖18所示,分析了四種不同的準(zhǔn)則,以選擇最佳候選解碼。但是,考慮可以分析一、二、三或更多種不同的準(zhǔn)則以便選擇最佳的候選解碼。
參考圖18,本實施例利用四個子記分準(zhǔn)則,它們最后合并成最后記分?jǐn)?shù)。具體而言,在步驟1815產(chǎn)生誤差平方測量,步驟1820確定水平相關(guān),步驟1825確定垂直相關(guān),在步驟1830測量時間活動性(根據(jù)M個候選、N個塊以及2幀/數(shù)據(jù)塊,每個是M乘2N矩陣)。盡管使用了水平和垂直相關(guān),但是應(yīng)該認(rèn)識到包括對角線相關(guān)在內(nèi)的各種相關(guān)測量都可以檢查。在步驟1835、1840、1845、1850,對每個準(zhǔn)則產(chǎn)生置信度測量,以便對所產(chǎn)生的測量歸一化,并在步驟1855、1860、1865和1870產(chǎn)生每個不同準(zhǔn)則的概率函數(shù)。這些概率函數(shù)然后通過(例如)將概率值相乘產(chǎn)生一個記分?jǐn)?shù)來進(jìn)行合并,例如圖18所示的步驟1875中的似然函數(shù)。候選解碼的記分?jǐn)?shù)隨后與所有候選解碼記分?jǐn)?shù)比較,以便確定最可能的候選者。
應(yīng)該認(rèn)識到可以使用各種技術(shù)評估候選解碼并對每個候選產(chǎn)生“記分?jǐn)?shù)”。例如,置信度測量是用來歸一化準(zhǔn)則的一種方式。此外,除了下面描述的以外,各種置信度測量都可使用。類似地,將基于每個準(zhǔn)則的概率值相乘產(chǎn)生總似然函數(shù)只是合并所檢查的各種準(zhǔn)則的一種方式。
編碼過程有利于確定最佳候選解碼,因為不是最可能候選的候選解碼一般有比較差的記分?jǐn)?shù),而最可能候選的解碼會有比較好的記分?jǐn)?shù)。具體而言,前面在組內(nèi)VL-數(shù)據(jù)混洗過程中描述的Q碼隨機(jī)化過程在這方面有幫助。
圖20a、20b、20c和20d提供了對圖18的步驟1815、1820、1825以及1830處執(zhí)行不同測量以便對特定候選解碼產(chǎn)生記分和總分的說明。圖20a說明評價候選解碼的象素xi與它的解碼的相鄰yi,j比較的誤差平方,其中下標(biāo)“i,j”對應(yīng)于“i”的相鄰地址。優(yōu)選去掉一些最大項,以便消除由于峰值(這是由于圖象的合理邊緣而出現(xiàn)的項)帶來的任何影響。優(yōu)選地,三個(xi-yi,j)2最大項被丟棄,以便去掉可能出現(xiàn)的峰值。圖20b說明了時間活動性準(zhǔn)則。這僅當(dāng)是或假設(shè)是運(yùn)動塊才有用。時間活動性準(zhǔn)則假設(shè)候選解碼越好,塊間差別越小。因此候選解碼越差,塊間差別越大。空間相關(guān)假設(shè)更可能的候選解碼導(dǎo)致很重的相關(guān),因為真實圖象易于以很慢的一致方式改變。圖20c所示的水平相關(guān)處理以及圖20d說明的垂直相關(guān)處理利用了這個假設(shè)。
圖18中步驟1835、1840、1845以及1850的置信度測量提供了對前面步驟(步驟1815、1820、1825以及1830)所確定的準(zhǔn)則歸一化的處理。例如,在一個實施例中,誤差平方的置信度測量在間隔
取值,并且如果誤差相等則置信度等于0,如果一個誤差是0則置信度等于1。其它歸一化測量或方法也可考慮。
類似地,空間相關(guān)的置信度測量為最大值(Y,0)-最小值(X,0)這里Y是最佳相關(guān)值,X是當(dāng)前候選解碼的相關(guān)。時間活動置信度測量根據(jù)下式確定置信度=(a-b)/(a+b)這里a=max(X,M_TH),b=max(Y,M_TH),其中M_TH是候選塊的運(yùn)動門限,Y是最佳測量值,即最小的時間活動性,而且X等于時間活動性的當(dāng)前候選測量。
在圖18中步驟1855、1860,1865以及1870,為每個不同的準(zhǔn)則產(chǎn)生概率函數(shù)。可使用各種方法產(chǎn)生概率測度。例如,可以規(guī)定置信度測量的記分?jǐn)?shù)。如果置信度測量大于預(yù)定值,例如0.8,基分就降低10;如果是在0.5和0.8之間,基分就降低5。圖21所示的實施例中,有一個表用于產(chǎn)生誤差平方測度準(zhǔn)則的概率函數(shù)。該表包括基于經(jīng)驗確定的任意存儲的數(shù)據(jù),包括置信度和誤差平方測度以及已知的候選解碼。更具體地說,該表可以通過使用未損壞數(shù)據(jù)并假設(shè)DR被破壞或丟失而產(chǎn)生。然后產(chǎn)生正確和非正確解碼的密鑰以及置信度測量。該表反映了正確與非正確解碼的概率比。使用這個表,針對特定的誤差平方值(行)以及置信度值(列),可以確定概率。例如,因此可以看到,對于置信度測量為0的各種誤差平方測度,大約有40%到50%候選正確的概率。如果置信度不為0,而是很小,則概率下降很大。類似的概率表可以基于相應(yīng)的經(jīng)驗確定的準(zhǔn)則測度和置信度測度針對相關(guān)及時間測量而產(chǎn)生。
所產(chǎn)生的概率被認(rèn)為是在本實施例中產(chǎn)生“記分?jǐn)?shù)”的數(shù)據(jù),正如前面注意到的,其它對候選解碼記分的技術(shù)也可以使用。在步驟1875,不同的概率合并成似然函數(shù)Li=j·Pi,j,這里j是概率函數(shù)Pi,j的倍數(shù)函數(shù),Pi,j是塊j、候選i的概率函數(shù)。因此選擇能使函數(shù)Li最大的候選。
返回參考圖18,恢復(fù)某些在丟失分組中發(fā)送的塊屬性可能是必要的。因此,在步驟1810,DR和MIN值在必要情況下恢復(fù)??梢允褂酶鞣N技術(shù),從缺省值、平均、誤差平方函數(shù)到更復(fù)雜的技術(shù),包括如下文獻(xiàn)中討論的那些Kondo、Fujimori和Nakaya的“AdaptiveDynamic Range Coding Scheme for Future HDTV Digital VTR(未來HDTV數(shù)字錄象機(jī)的自適應(yīng)動態(tài)范圍編碼方案)”以及Kondo、Fujimori、Nakaya和Uchida的“A New Concealment Method forDigital VCR(數(shù)字錄象機(jī)的新隱蔽方法)”,IEEE Visual SingalProcessing and Communications,1993年9月20-22日,澳大利亞,墨爾本。所恢復(fù)的值用于產(chǎn)生候選解碼,如上所述。
或者,DR和MIN值在Q比特確定過程中確定。在圖22中說明了這種情況。具體而言,如上面注意到的,在本實施例中運(yùn)動標(biāo)志和量化比特數(shù)用于編碼過程并在隨后用于恢復(fù)過程以縮減可能的候選解碼的數(shù)目。如前面注意到的,其它信息也可以用于對數(shù)據(jù)編碼。因此,DR值及/或MIN值也可以用于對數(shù)據(jù)編碼?;蛘逥R的一部分比特用于編碼(例如,DR的兩個最低有效比特)。盡管DR數(shù)據(jù)被編碼,可能的候選解碼數(shù)隨著變量的增加而大大增加了。參考圖22,因此產(chǎn)生了K·M個候選解碼,這里K是未知數(shù)據(jù)的候選值數(shù),例如如果DR1、DR2和DR3之和的兩比特被編碼(DR1、DR2和DR3代表組中塊的DR值),那么K=4。DR和MIN因此用提供的輔助信息恢復(fù),例如被編碼的DR1、DR2和DR3之和的兩比特。這樣以附加開銷為代價改善了檢查較大數(shù)目的候選解碼的候選選擇過程。
應(yīng)該注意的是,通常被解碼的塊越鄰近,Q比特和運(yùn)動標(biāo)志的恢復(fù)過程越好。此外,在一些實施例中,該處理被提供給緩存器內(nèi)的每個隨后的塊;如果所有的或一些FL-數(shù)據(jù)可用,候選解碼數(shù)就會減少,假定該塊所有FL-數(shù)據(jù)都可用,候選解碼可能減到1個。但是,希望Q比特和運(yùn)動標(biāo)志恢復(fù)過程全部避免,因為該處理是比較耗時的。此外,希望使用盡可能多的信息進(jìn)行Q比特和運(yùn)動標(biāo)志恢復(fù)。在一個實施例中,從緩存器的開始處理各塊,直到到達(dá)一個具有丟失Q比特/運(yùn)動標(biāo)志信息的塊。這被定義為前向Q比特和運(yùn)動標(biāo)志恢復(fù)。在另一個實施例中,參考緩存器的末尾來確定緩存器最后塊的結(jié)尾位置,并從緩存器的末尾恢復(fù)數(shù)據(jù)直到到達(dá)具有丟失Q比特/運(yùn)動標(biāo)志數(shù)據(jù)的決。這被定義為后向Q比特和運(yùn)動標(biāo)志恢復(fù)。
正如前面注意到的,由于VL-數(shù)據(jù)的長度,塊在長度上可變;因此需要確定構(gòu)成塊的VL-數(shù)據(jù)的比特數(shù)以便正確地定位隨后塊在緩存器中的位置。在編碼過程中,預(yù)定的而且優(yōu)選為容易識別模式的后同步信號被放入緩存器,以便填充未用的比特位置。在解碼過程中,后同步信號將處于該塊和緩存器末尾之間。由于該模式是容易識別的一種,通過檢查比特模式使系統(tǒng)能夠定位后同步信號的開始,并因此定位緩存器中最后一塊的結(jié)尾。這個信息可以按兩種方式使用。如果最后一塊包含損壞的Q比特/運(yùn)動標(biāo)志數(shù)據(jù)而且最后一塊的開始是已知的(例如,前面的塊已經(jīng)被成功解碼),那么緊接著的前面一塊的結(jié)尾與后同步信號的開始之間的差對應(yīng)于該塊的長度。這個信息可以用于計算該塊的Q比特及/或運(yùn)動標(biāo)志。后同步信號的開始位置也可以用于執(zhí)行從最后一塊開始并進(jìn)行到緩存器開始的Q比特和運(yùn)動標(biāo)志恢復(fù)。因此,Q比特和運(yùn)動標(biāo)志恢復(fù)處理可以雙向?qū)崿F(xiàn)。
圖23說明了后同步信號在雙向Q比特和運(yùn)動標(biāo)志恢復(fù)過程中的使用。參考圖23,緩存器2300包括N組VL-數(shù)據(jù)塊的FL-數(shù)據(jù)2303。每組由多個塊(例如,3塊)組成。在本例中,前兩組2305、2310被解碼,第三組215不能立即被解碼,因為DR/運(yùn)動標(biāo)志數(shù)據(jù)損壞了。在這里,需要Q比特/運(yùn)動標(biāo)志恢復(fù)過程以便恢復(fù)損壞的數(shù)據(jù)。不是繼續(xù)在前向處理這些組,該處理參考通過查找后同步信號模式220而確定的緩存器結(jié)尾。確定了后同步信號的開始,由此得知最后決組的結(jié)尾。由于DR/運(yùn)動標(biāo)志數(shù)據(jù)表示了VL-數(shù)據(jù)的長度,最后一塊的VL數(shù)據(jù)開始(因此也是緊接著前一塊的結(jié)尾)就可以被確定了。因此,可以對這些塊解碼,例如塊225、230、235,直到到達(dá)損壞數(shù)據(jù)的塊240。然后,使用上述Q比特/運(yùn)動標(biāo)志恢復(fù)處理恢復(fù)損壞的215、240以及受阻的塊250。
應(yīng)該注意雙向處理不限于一系列向前和向后處理;處理可以在任一方向或雙向上進(jìn)行。此外,在一些實施例中,可能希望與改善效率并行地進(jìn)行這種處理。最后,注意未損壞的受阻塊可以通過直接訪問Q比特/運(yùn)動標(biāo)志信息、而不執(zhí)行上述Q比特/運(yùn)動標(biāo)志恢復(fù)過程而恢復(fù)。
正如前面注意到的,各種記分技術(shù)可以用于確定最佳候選解碼以便選用來進(jìn)行解碼。在另一個實施例中,評估使用每種候選解碼的圖象平滑度。在一個實施例中,進(jìn)行拉普拉斯測量。拉普拉斯測量測出二階圖象表面性質(zhì),例如表面曲率。對于線性圖象表面,即平滑表面,拉普拉斯測量產(chǎn)生接近于0的值。
該處理將參照圖24a、24b和24c來解釋。圖24a說明拉普拉斯內(nèi)核的一個實施例。注意,也可以使用其它實施例。內(nèi)核“L”代表一個3×3區(qū)域。為了測量圖象區(qū)域的平滑度,圖象的3×3子區(qū)域(圖24b)與內(nèi)核卷積,而且卷積值被平均。區(qū)域和子區(qū)域的大小(以及有關(guān)的內(nèi)核大小)可以根據(jù)應(yīng)用而變。
該處理的一個實施例參考圖24c描述。這個實施例使用一個內(nèi)核和3×3的子區(qū)域尺寸以及8×8的區(qū)域尺寸,,其中各個元素用i,j來標(biāo)識。在步驟2460,候選解碼值x[i][j]被歸一化。例如,可以根據(jù)下式對這些值歸一化在步驟2465,根據(jù)下式歸一化值被用于計算表示平滑度的塊的拉普拉斯值Lxx′[i][j]=x[i][j]Σi,j(x[i][j]-Xmean)2,0≤i,j<8]]>這里,Xmean=Σi,jx[i][j]64,0≤i,j]]>l[i][j]=Σm=-1lΣn=-1lL[m][n]·x′[i+m][j+n],0≤i,j<8]]>Lx=Σi,j|l[i][j]|64]]>塊拉普拉斯值越接近0,圖象部分越平滑。因此,記分?jǐn)?shù)可以基于塊拉普拉斯值來測量,具有最小拉普拉斯值的解碼是正確的解碼。
拉普拉斯評估也可以使用候選編碼值q[i][j]來實現(xiàn)。其基本過程與圖24c的候選解碼值情況相同。這個實施例使用一個內(nèi)核和3×3的子區(qū)域尺寸以及8×8的區(qū)域尺寸,其各個元素用索引i,j標(biāo)識。在步驟2460,候選解碼值q[i][j]被歸一化。例如,可以根據(jù)下式對這些值歸一化q′[i][j]=q[i][j]Σi,j(q[i][j]-Qmean)2,0≤i,j<8]]>這里,Qmean=Σi,jq[i][j]64,]]>在步驟2465,根據(jù)下式歸一化值被用于計算表示平滑度的塊的拉普拉斯值Lql=[i][j]=Σm=-1lΣn=-1lL[m][n]·q′[i+m][j+n],0≤i,j<8]]>Lq=Σi,j|l[i][j]|36]]>塊拉普拉斯值越接近0,圖象部分越平滑。因此,分?jǐn)?shù)可以基于塊拉普拉斯值來測量,具有最小拉普拉斯值的解碼是正確的解碼。
同時也要注意其它變化。在另一些實施例中,可以使用較高階的圖象表面性質(zhì)作為平滑度測量。在那些情況下,會使用較高階的內(nèi)核。例如,四階塊拉普拉斯測量可以使用四階內(nèi)核來進(jìn)行。級聯(lián)使用二階拉普拉斯計算可以實現(xiàn)四階內(nèi)核。
還要注意的是,評估過程取決于圖象是否比預(yù)定水平具有更大的活動性或運(yùn)動。如果被評估的圖象部分具有比預(yù)定水平大的運(yùn)動,那么優(yōu)選地基于場而不是基于幀進(jìn)行測量。參考圖25對其進(jìn)行解釋。圖25解釋了使用平滑度測量的處理;但是注意這個處理可以使用各種類型的測量來實現(xiàn)。
圖象區(qū)域的幀2505由場0和場1組成。如果沒有在步驟2510檢測到運(yùn)動,平滑度測量就通過在步驟2515計算每幀內(nèi)塊的決拉普拉斯值來計算。如果檢測到超過預(yù)定水平的較大運(yùn)動,塊拉普拉斯測量就在每個場上進(jìn)行(步驟2520、2525),在步驟2530合并(例如,平均)兩個測量,從而產(chǎn)生平滑度測度。
運(yùn)動可以用各種方式檢測/測量。在一個實施例中,評估場間的改變程度,如果它超過預(yù)定門限就檢測到運(yùn)動。
運(yùn)動檢測以及產(chǎn)生恢復(fù)值的幀信息和場信息的使用(通常取代丟失或損壞的值),都可以提供給要求產(chǎn)生恢復(fù)值的任一部分處理。例如,運(yùn)動檢測和產(chǎn)生恢復(fù)值的幀信息及場信息的選擇性使用可以提供給DR/MIN恢復(fù)、象素恢復(fù)以及Q比特及運(yùn)動標(biāo)志恢復(fù)處理。因此,基于所檢測的運(yùn)動水平,恢復(fù)處理將基于場或基于幀利用現(xiàn)有信息。此外,這個處理可以與加權(quán)值的使用結(jié)合,加權(quán)值基于特定方向(例如,水平或垂直)上的相關(guān)水平來選擇。
在Q比特和運(yùn)動標(biāo)志恢復(fù)處理的另一個實施例中,基于塊內(nèi)和塊間測量來評估候選解碼。在如下討論中,術(shù)語“塊”指幀或場的一部分。塊內(nèi)測量可評估候選解碼的圖象部分,例如圖象部分的平滑度。塊間測量可測出候選解碼與相鄰圖象部分一致的程度。圖26a和26b說明組合的塊間及塊內(nèi)評估。具體而言,圖26a表示一個可接受的候選解碼,因為塊間和塊內(nèi)測量均良好,而圖26b中塊間測量較差,即使塊內(nèi)測量相當(dāng)好。
塊內(nèi)測量的例子包括上述的平滑度測量。塊間測量的例子包括前面所述的誤差平方測量。另一種塊間測量是候選ADRC塊上一致的邊界象素與邊界象素總數(shù)的比。
針對圖26c、26d和26e解釋ADRC編碼的8×8塊的塊間和塊內(nèi)評估的一個例子。圖26d說明由產(chǎn)生候選解碼值x的q值組成的編碼值2650、以及由y值組成的相鄰的解碼數(shù)據(jù)2655的數(shù)據(jù)的圖象部分(塊)。正如圖26c的流程圖所提出的,在步驟2605計算塊內(nèi)測量以便產(chǎn)生一個測度,例如塊拉普拉斯Lx。在步驟2610,計算塊間測量Sx以便產(chǎn)生相鄰塊之間一致性的一個測度。在步驟2615,產(chǎn)生組合測度Mx。組合測度提供用于選擇候選解碼的信息。
在本實施例中,作為處于候選解碼的每個邊界象素有效范圍內(nèi)的相鄰數(shù)據(jù)數(shù)來計算Sx(見圖26e)。作為一個實施例,圖26e是說明有效范圍的圖,表示每個所觀察的量化值qi的有效范圍。因此LQDR<UQ,這里L(fēng)Q、UQ分別代表對應(yīng)于量化比特數(shù)=Q的DR的下界和上界。優(yōu)選Sx根據(jù)下式歸一化Sx=Sx/邊界象素數(shù)。
在本實施例中,合并的測度Mx根據(jù)下式計算Mx=Sx+(1-Lx)?;蛘撸喜⒌臏y度可以被加權(quán),從此使用下式Mx=w·Sx+(1-w)·(1-Lx),這里w是加權(quán)值,通常是由經(jīng)驗確定的加權(quán)值。
用于確定已經(jīng)丟失/損壞的DR和MIN值的其它實施例也可考慮。例如,前面描述的公式可以被修改以便以更高精度恢復(fù)DR和MIN值。在另一個實施例中,使用中值技術(shù)。在中值技術(shù)的一個實施例中,MIN值作為所有MINi值的中值恢復(fù),如下計算MINi=yi-qi·s這里qi代表編碼的象素值,yi代表相鄰qi的解碼象素。對于邊緣匹配ADRC,s=DR/(2Q-1)。對于非邊緣匹配ADRC,s=DR/2Q,這里Q代表每個象素的量化比特數(shù)(Q比特值)。
所用的值可以是時間鄰近或空間鄰近的。yi值可以是相鄰幀/場或相同場中的相鄰象素的解碼值。yi值可以是相鄰幀/場或相同場中與qi相同位置的象素解碼值。
此外,任何DR及/或MIN恢復(fù)技術(shù)都可以與限幅處理結(jié)合以便改善恢復(fù)精度和防止數(shù)據(jù)在恢復(fù)過程中溢出。限幅處理將被恢復(fù)數(shù)據(jù)限制到預(yù)定值范圍;因此范圍外的那些值被限制到最接近范圍邊緣。在一個實施例中,限幅處理將值限制到范圍[LQ,UQ]中,這里L(fēng)Q,UQ分別代表量化比特數(shù)=Q個量化比特所代表的象素值范圍的上界和下界,并進(jìn)一步將值限制到MIN+DR Num,這里Num代表最大象素值;在本實施例中Num為225。在本實施例中,在可用的情況下,UQ+1=LQ+1。
可以將準(zhǔn)則合并成單個式子,得到DR的無限制的恢復(fù)值(val’),最后限幅的恢復(fù)值(val)從下式得到val=max(min(val,min(UQ,255-MIN)),LQ)這里min和max分別代表最小和最大函數(shù)。
在另一個實施例中,用于產(chǎn)生恢復(fù)的DR及/或MIN的邊界象素yi可以被過濾以便只使用其中呈現(xiàn)最佳相關(guān)的那些,因此更好地恢復(fù)DR和MIN。那些不滿足準(zhǔn)則的邊界象素不使用。在一個實施例中,如果存在一個DR值使LQDR<UQ而且原始象素yi可能已經(jīng)編碼為qi,邊界象素yi被認(rèn)為對DR計算有效。因此,如果滿足下式則象素有效(yi-MIN)mmax(qi-0.5,0)≥LQ]]>(yi-MIN)mmin(qi-0.5,m)<UQ]]>這里m代表最大量化級別=2Q-1。DR恢復(fù)值(val’)可以根據(jù)下式計算val′=m·Σi(yi-MIN)qiΣiqi2]]>然后該值可以被限幅到有效范圍。因此這個過程迫使DR恢復(fù)值進(jìn)入門限表定義的有效區(qū)域內(nèi)部,降低了其真正DR處于門限表邊界附近的點的精度。
已經(jīng)注意到由于量化噪聲,靜止ADRC塊的DR逐幀輕微變化。如果這個變化跨過ADRC編碼邊界,而且如果DR在幾個連續(xù)幀上恢復(fù),那么具有有效象素選擇的DR恢復(fù)值在每個交叉點易于超過目標(biāo),導(dǎo)致顯示中可覺察的閃爍現(xiàn)象。在嘗試減少這種現(xiàn)象出現(xiàn)的努力中,一個實施例修改了有效象素選擇過程,以便放寬上界和下界,從而允許越到相鄰有效區(qū)域中的邊界象素。通過包括僅在邊界外的點,恢復(fù)值將更容易采取靠近上界或下界的值。放寬的邊界L’Q以及U’Q通過放寬常數(shù)r計算。在一個實施例中,r被設(shè)置為0.5值。其它值也可以使用
L’Q=rLQ-1+(1-r)LQU’Q=(1-r)UQ+rUQ+1上面的討論提出了當(dāng)這些值已經(jīng)損壞或丟失時恢復(fù)DR和MIN的多種方式。通過檢查數(shù)據(jù)之間的時間和/或空間相關(guān)、并因此對相應(yīng)的計算恢復(fù)值加權(quán),可以實現(xiàn)進(jìn)一步的提高。更具體地,如果在特定方向或時間上存在很大相關(guān),例如水平相關(guān),那么很可能圖象特性在具有很強(qiáng)相關(guān)的方向上平滑地持續(xù)下去,因此使用高相關(guān)數(shù)據(jù)的恢復(fù)值通常產(chǎn)生較好的估計。為了利用這一點,邊界數(shù)據(jù)被分解為相應(yīng)的方向(例如,垂直、水平、場-到-場)并根據(jù)相關(guān)測量加權(quán),以產(chǎn)生最終恢復(fù)值。
該過程的一個實施例參考圖27a來進(jìn)行描述。在步驟2710,待恢復(fù)的DR或MIN值的恢復(fù)值在一個方向上產(chǎn)生,在步驟2715,在另一個方向上產(chǎn)生恢復(fù)值。例如,如果處理是空間自適應(yīng)的,那么沿著水平邊界的邊界象素用于產(chǎn)生第一恢復(fù)值,“hest(命令)”,沿著垂直邊界的邊界象素用于產(chǎn)生第二恢復(fù)值,“vest(上衣)”?;蛘?,如果處理是時間自適應(yīng)的,那么相鄰場之間的邊界象素用于產(chǎn)生第一恢復(fù)值,相鄰幀之間的邊界象素用于產(chǎn)生第二恢復(fù)值。
在步驟2720,根據(jù)表示每個方向中相關(guān)程度的相關(guān)計算來對恢復(fù)值加權(quán)。在步驟2725,加權(quán)的第一和第二恢復(fù)值被合并,以產(chǎn)生合并恢復(fù)值。應(yīng)該注意該處理不限于只在兩個方向上產(chǎn)生加權(quán)恢復(fù)值;很顯然被加權(quán)并合并的恢復(fù)值數(shù)可以根據(jù)應(yīng)用而變。各種已知技術(shù)可以用于產(chǎn)生表示特定方向上相關(guān)程度的相關(guān)值。此外,考慮到相關(guān)程度,有各種準(zhǔn)則可以用于選擇加權(quán)因子。通常,如果一個相關(guān)比另一個強(qiáng),合并恢復(fù)值應(yīng)該主要基于相應(yīng)的恢復(fù)值。在一個實施例中,合并恢復(fù)值如下計算 這里hc代表水平相關(guān),vc代表垂直相關(guān),hest代表僅基于左及右邊界信息的DR恢復(fù)值,vest代表僅基于上及下邊界信息的DR恢復(fù)值,α代表加權(quán)值。加權(quán)值可以用各種方式確定。圖27b說明了作為水平相關(guān)和垂直相關(guān)之差的函數(shù)來確定加權(quán)值的一個實施例。更具體來說,α被選為 正如上面注意到的,自適應(yīng)相關(guān)處理用于DR和MIN恢復(fù)。但是優(yōu)選地MIN恢復(fù)被限幅以便保證MIN+DR 255,因此可以使用函數(shù)val=max(min(val’,255-MIN),0)。此外,正如上面注意到的,可以評估時間相關(guān)并用于對恢復(fù)值加權(quán)。此外,可以進(jìn)行時間和空間相關(guān)的合并。例如,可作為時間恢復(fù)值在場間產(chǎn)生一個恢復(fù)值。另一個恢復(fù)值作為空間恢復(fù)值在一個場內(nèi)產(chǎn)生。最后的恢復(fù)值作為時間和空間相關(guān)的合并的合并值來計算。相關(guān)合并可以被運(yùn)動量取代。其它變量也可以考慮。該方法也可以用于聲音數(shù)據(jù)。
在另一個實施例中,使用對最小二乘技術(shù)的低復(fù)雜性修改。使用這個實施例,減少了由于恢復(fù)DR值而形成的閃爍。為了如下討論,QV代表一串來自其DR被恢復(fù)的、具有一組點qi的圖象分段或ADRC塊的編碼值,Y是一串從QV中各點的垂直或水平相鄰點取得的解碼值,這里yi代表qi的垂直或水平相鄰點。由于每個點qi可能有多達(dá)4個解碼的相鄰點,一個象素或點可能引起多達(dá)四個(qi,yi)配對。因此DR的非限制最小二乘估計(DRuls)是(DR)uls=2Q·Σi(yi-MIN)·(0.5+qi)Σi(0.5+qi)2]]>這里Q是量化比特數(shù),MIN是作為塊屬性傳輸?shù)淖钚≈?。上式假設(shè)非邊緣匹配ADRC;對于邊緣匹配ADRC,2Q被2Q-1代替,(0.5+qi)被qi代替。
優(yōu)選地對非限制最小二乘估計進(jìn)行限幅,以便保證與門限表和編碼過程中實施的式子MIN+DR 255的一致性(通常,對于非邊緣匹配ADRC,允許的DR值在1-256范圍內(nèi))。因此最小二乘估計被限幅(DRlsc)為(DR)lsc=max(min(UB,DRuls),LB)這里UB代表上界,LB代表下界,min和max分別代表最小和最大函數(shù)。
在另一個實施例中,估計可以通過選擇最適于DR估計的象素來提高,以便計算DR估計。例如,相比出現(xiàn)高活動性的那些區(qū)域,圖象的平坦區(qū)提供較適于DR估計的象素。具體而言,邊緣中的尖銳邊緣可能降低估計的精度。下面實施例為選擇用于計算DR估計的象素提供了計算量較輕的方法。
在一個實施例中,計算最小二乘估計(DRlse),例如Druls或DRlsc。使用這個估計,編碼值QV的列表被轉(zhuǎn)換成候選解碼值X,其中xi是從qi得到的X成員。xi值是使用DR的第一估計構(gòu)成的已恢復(fù)解碼值。xi值根據(jù)下式定義邊緣匹配ADRCxi=MIN+(0.5+qi·DRlse2Q-1)]]>非邊緣匹配ADRCxi=MIN+((qi+0.5)·DRlse2Q)]]>假設(shè)DRlse是真正DR的合理估計,那么xi離yi比較近的任何地方可以被判決為低活動性區(qū)并因此是一個希望的匹配。新X和Y列表則可以通過只考慮xi和yI相接近地方的匹配而構(gòu)成,并重新計算最小二乘估計以產(chǎn)生更新的估計。
用于確定“接近”的準(zhǔn)則可以用各種方式來確定。在一個實施例中,使用誤差函數(shù)的ADRC編碼。這種方法的需求是因為它計算起來不昂貴。對于該處理,定義了由點ei=|yi-xi|組成的列表E。定義emin和emax分別作為列表中的最小和最大值,則eDR=emax-emin。編碼誤差值則可定義為
gi=(ei-emin)nl/eDR這里nl代表以類似于上述ADRC處理的方式重新量化ei的量化級別平數(shù)。
因此,新列表X和Y通過只選擇那些gi小于一些門限的匹配而產(chǎn)生。如果新列表足夠長,這些列表可用于產(chǎn)生精確的最小二乘估計DRrls。gi的門限和在精確確定最小二乘估計之前所需的匹配數(shù)優(yōu)選地由經(jīng)驗確定。例如,在一個實施例中,對于包括8×8×2個水平二次抽樣塊的處理以及nl為10,只使用與gi=0對應(yīng)的匹配,而且僅當(dāng)新列表包含至少30個匹配時才對估計進(jìn)行精確地確定。
在另一個實施例中,DR估計可以通過限幅潛在的DR值并重新計算DR估計來改善。具體而言,在一個實施例中列表D由成員di組成,該成員di包含使xi等于yi的DR值。更精確地di=2Q(yi-MIN)/(0.5+qi)改善可以通過對每個di限幅而看到。即,di’=max(min(UB,di),LB)其中將DRcls計算為di’的平均值。限幅方法(DRcls)可以與其它DR估計(例如加權(quán)平均中的DRlse)合并,以便產(chǎn)生最后DR值。例如,根據(jù)下式確定加權(quán)平均DRestDRest=w1(DRcls)+w2(DRlse)權(quán)重w1和w2優(yōu)選地通過檢查所得的估計以及從特定加權(quán)中產(chǎn)生的圖象來經(jīng)驗性地確定。在一個實施例中,w1=0.22513,w2=0.80739。
本發(fā)明已經(jīng)結(jié)合優(yōu)選實施例進(jìn)行了描述。對于本領(lǐng)域技術(shù)人員來說,根據(jù)前面的描述很多替換、修改、變化以及使用都是顯而易見的。
權(quán)利要求
1.在信號傳輸之前緩存所述信號的多個分段的方法,所述緩存包括如下步驟從具有多個編碼級別的門限表中選出一組編碼級別,其中每組編碼級別包括多個范圍,每個范圍被配置為選擇不同的編碼比特;以及使用所述編碼級別組對所述信號的所述分段編碼;其中所述緩存800被配置為防止所述發(fā)送信號解碼過程中的差錯傳播。
2.權(quán)利要求1中提出的方法,其中所述門限表包括對應(yīng)于傳輸速率的預(yù)定的表。
3.權(quán)利要求1中提出的方法,其中所述信號是視頻信號。
4.權(quán)利要求1中提出的方法,其中所述信號是聲音信號。
5.權(quán)利要求1中提出的方法,其中所述分段包括存儲在緩存器中的信號單元(SEs)。
6.權(quán)利要求5的方法,其中選擇編碼級別組的步驟還包括根據(jù)所述緩存器中可用的變長數(shù)據(jù)空間來確定所述組。
7.?dāng)?shù)字處理系統(tǒng),包括處理器,該處理器被配置成在信號傳輸之前對信號的多個分段進(jìn)行緩存,所述處理器被配置為使用一組編碼級別對所述信號的所述多個分段編碼,并從具有多個編碼級別的門限表中選出所述編碼級別組,其中每組編碼級別組包括多個范圍,每個范圍配置為選擇不同的編碼比特,其中所述緩存800被配置為防止所述發(fā)送信號解碼過程中的差錯傳播。
8.權(quán)利要求7中提出的數(shù)字處理系統(tǒng),其中所述門限表包括對應(yīng)于傳輸速率的預(yù)定的表。
9.權(quán)利要求7中提出的數(shù)字處理系統(tǒng),其中所述信號是視頻信號。
10.權(quán)利要求7中提出的數(shù)字處理系統(tǒng),其中所述信號是聲音信號。
11.權(quán)利要求7中提出的數(shù)字處理系統(tǒng),其中所述分段包括存儲在緩存器中的信號元素(SEs)。
12.權(quán)利要求11中提出的數(shù)字處理系統(tǒng),其中選擇編碼級別組的步驟還包括根據(jù)所述緩存器中可用的變長數(shù)據(jù)空間來確定所述組。
13.計算機(jī)可讀介質(zhì),包含可執(zhí)行指令,當(dāng)它在處理系統(tǒng)中被執(zhí)行時使系統(tǒng)在信號傳輸之前執(zhí)行對信號的多個分段緩存的步驟,所述緩存包括如下步驟從具有多個編碼級別的門限表中選出一組編碼級別,其中每組編碼級別包括多個范圍,每個范圍配置為選擇不同的編碼比特800;以及使用所述編碼級別組對所述信號編碼;其中所述緩存被配置為防止所述發(fā)送信號解碼過程中的差錯傳播。
14.權(quán)利要求13中提出的計算機(jī)可讀介質(zhì),其中所述門限表包括對應(yīng)于傳輸速率的預(yù)定的表。
15.權(quán)利要求13中提出的計算機(jī)可讀介質(zhì),其中所述信號是視頻信號。
16.權(quán)利要求13中提出的計算機(jī)可讀介質(zhì),其中所述信號是聲音信號。
17.權(quán)利要求13中提出的計算機(jī)可讀介質(zhì),其中所述分段包括存儲在緩存器中的信號單元(SEs)。
18.權(quán)利要求17中提出的計算機(jī)可讀介質(zhì),其中選擇編碼級別組的步驟還包括根據(jù)所述緩存器中可用的變長數(shù)據(jù)空間來確定所述組。
19.用于在信號傳輸之前緩存信號的多個分段的系統(tǒng),所述系統(tǒng)包括具有多個編碼級別的門限表,其中每組編碼級別包括多個范圍,每個范圍被配置為選擇不同的編碼比特;從門限表中選擇一組編碼級別的裝置;以及使用所述編碼級別組對所述信號的所述分段編碼的裝置;其中所述緩存被配置為防止所述發(fā)送信號解碼過程中的差錯傳播。
20.權(quán)利要求19中提出的系統(tǒng),其中所述門限表包括對應(yīng)于傳輸速率的預(yù)定的表。
21.權(quán)利要求19中提出的系統(tǒng),其中所述信號是視頻信號。
22.權(quán)利要求19中提出的系統(tǒng),其中所述信號是聲音信號。
23.權(quán)利要求19中提出的系統(tǒng),其中所述分段包括存儲在緩存器中的信號單元(SEs)。
24.權(quán)利要求23的系統(tǒng),其中選擇編碼級別組的裝置還包括用于根據(jù)所述緩存器中可用的變長數(shù)據(jù)空間確定所述組的裝置。
全文摘要
揭示了用于在信號傳輸之前緩存多個信號分段的系統(tǒng)和方法。緩存器(800)極配置為防止發(fā)送信號解碼過程中的差錯傳播。一定傳輸速率的一組編碼級別從具有多個編碼級別的門限表中選出。每組編碼級別包括為選擇編碼比特而配置的多個范圍。每個信號分段使用該組編碼級別來進(jìn)行編碼。在一個實施例中,用于在可能有損耗的通信信道上傳輸視頻信號。
文檔編號H04N7/52GK1283366SQ98812591
公開日2001年2月7日 申請日期1998年10月23日 優(yōu)先權(quán)日1997年10月23日
發(fā)明者T·康多, Y·弗吉莫里, J·J·卡里格, S·戈薩爾 申請人:索尼電子有限公司