亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

譯碼裝置和譯碼方法

文檔序號:7538980閱讀:272來源:國知局
專利名稱:譯碼裝置和譯碼方法
技術領域
本發(fā)明涉及通過無線傳輸線路這樣的誤碼率高的媒體傳輸/存儲信息的系統(tǒng),將利用高效率壓縮編碼而得到的壓縮代碼串進行糾錯/檢出編碼并進行傳輸/存儲的譯碼裝置/譯碼方法。
背景技術
例如,如無線電視(TV)電話、便攜式信息終端、數(shù)字TV廣播系統(tǒng)那樣,在進行高效率地壓縮編碼并通過無線傳輸線路等進行傳輸以使圖像及聲音的信息成為盡可能少的信息量的系統(tǒng)中,由于傳輸線路的誤碼率高,所以,如何高品質(zhì)底傳輸所得到的代碼串就成了重要的課題。
通過這種誤碼率高的媒體進行代碼串的傳輸/存儲時,作為降低誤碼率的方法,多數(shù)是使用BCH(Bose-Chaudhuri-Hocquenghem)碼、RS(Recommended Standard)碼、卷積碼等糾錯碼。另外,在接收一側,作為可以檢錯的方法,是使用檢查和及CRC(cyclicredundancy check)等檢錯碼。這些糾錯/檢出,是根據(jù)一定的規(guī)則將多余的位(冗長性)附加到傳輸/存儲的信息上,在譯碼時檢查傳輸/存儲的代碼串是否符合該規(guī)則,根據(jù)該結果進行糾錯或檢錯。
但是,這種將利用高效率壓縮編碼而得到的代碼串進行糾錯/檢出編碼后進行傳輸/存儲的方法,難于與恢復由于傳輸線路/媒體的代碼字錯誤而發(fā)生的同步偏離的同步恢復方法組合。作為同步恢復方法,多數(shù)是使用插入唯一可以譯碼的稱為同步碼的代碼,在發(fā)生同步偏離時從檢測到同步碼的時刻再次開始進行譯碼的方法。
為了使同步碼成為唯一可以譯碼的代碼字,在其他代碼字的組合中必須構成不會發(fā)生與同步碼相同的位組合格式的代碼字。但是,通常在糾錯/檢出編碼中,難于構成避免出現(xiàn)某一特定的位組合格式的代碼字,在出現(xiàn)與同步碼相同的位組合格式時,由于同步碼的誤檢測,將引起偽同步。
為了避免這一問題,是使用在進行糾錯/檢出編碼后,判斷代碼串中是否存在與同步碼相同的位組合格式,存在相同的位組合格式時,就按照某一規(guī)則將啞數(shù)據(jù)位插入到該組合格式中,在譯碼裝置中通過按照相同的規(guī)則刪除啞數(shù)據(jù)位來防止偽同步的方法。但是,通過容易發(fā)生誤碼的媒體傳輸/存儲代碼串時,在該插入位也可能發(fā)生錯誤,從而引起新的同步偏離或偽同步。
另外,在對代碼串進行糾錯/檢出編碼并插入同步碼時,以往,在夾在同步碼與同步碼之間的同步區(qū)間的最后的部分,為了補充應進行糾錯/檢出編碼的信息位的剩余部分,必須將很多插入位附加到代碼串上,所以,編碼效率將降低。
另一方面,為了提高糾錯/檢出能力,可以提高傳輸/存儲的信息的冗長度,但是,如果提高冗長度,則傳輸相同的信息所需要的位數(shù)將增加。因此,提高糾錯/檢出能力時,就需要傳輸速率更高的傳輸線路,或者必須存儲的信息的位數(shù)將增加。另外,如果傳輸速率或存儲容量相同,冗長度越高,則只能傳輸/存儲少的信息。高效率地將圖像或聲音進行壓縮編碼并進行傳輸/存儲時,為了提高耐錯性而附加冗長性,如果傳輸/存儲速率相同,則必須對少的信息量進行壓縮編碼,從而將招致畫質(zhì)或音質(zhì)下降。
因此,作為以更少的冗長度而具有高耐錯性的方法,有稱為層次編碼的方法。這是根據(jù)錯誤對畫質(zhì)或音質(zhì)影響的大小將高效率壓縮編碼的信息分類、通過對錯誤的影響大的信息使用冗長度更高的糾錯/檢出能力高的糾錯/檢出編碼,而對錯誤的影響不太大的信息使用糾錯/檢出能力不太高但冗長度小的糾錯/檢出編碼,以相同的平均冗長度比全體使用相同的糾錯/檢出編碼時提高耐錯性的方法。
例如,在將多數(shù)用于運動圖象的高效率壓縮編碼的運動補償預測與正交變換組合的編碼方式即對輸入的運動圖象信號進行運動補償預測并利用DCT(離散余弦變換-Discrete Cosine Transform-)等對該預測殘差進行正交變換的方式中,發(fā)生錯誤時,對于發(fā)生大的畫質(zhì)劣化的運動矢量信息或預測殘差信號的正交變換系數(shù)中的低次系數(shù)使用糾錯/檢出能力強的糾錯/檢出編碼,對錯誤的影響小的預測殘差信號的正交變換系數(shù)中的高次系數(shù)使用糾錯/檢出能力弱的糾錯/檢出編碼。
為了實現(xiàn)這種層次編碼,在輸出的代碼串的途中,必須切換糾錯/檢出能力不同的糾錯/檢出編碼。作為切換糾錯/檢出能力不同的糾錯/檢出編碼的方法,有將表示糾錯/檢出編碼的種類的標題信息附加到代碼串上的方法。圖11是表示附加標題信息后切換糾錯/檢出編碼的代碼串的例子,在該例中,是切換2種糾錯/檢出編碼FEC1和FEC2。在標題1101~1104中,插入表示糾錯/檢出編碼的種類進代碼字的數(shù)的標題信息。在編碼裝置中,將進行了糾錯/檢出編碼的代碼字排列在這些標題信息之后,在譯碼裝置中,將標題信息進行譯碼,然后進行糾錯/檢出編碼的譯碼。
但是,在通過附加這種標題信息切換糾錯/檢出編碼的方法中,由于附加標題信息,將增加必須傳輸/存儲的代碼串的位數(shù)。在對圖像及聲音進行高效率壓縮編碼并傳輸/存儲時,給標題信息分配位數(shù),將減少圖像及聲音的高效率壓縮編碼所使用的位數(shù),結果,將招致畫質(zhì)及音質(zhì)的劣化。
如上所述,對于將運動圖象信號等進行高效率壓縮編碼的代碼串進行糾錯/檢出編碼時,由于發(fā)生任意的位組合格式,所以,在將糾錯/檢出編碼與使用唯一可以譯碼的同步代碼的同步恢復方法組合時,存在由于同步代碼的誤檢測而引起的偽同步,即使通過插入啞數(shù)據(jù)位進行避免偽同步的操作,也會由于插入位的錯誤而發(fā)生新的同步偏離或偽同步。
另外,在將代碼串進行糾錯/檢出編碼并插入同步代碼時,以往,在同步區(qū)間的最后部分為了補足應進行糾錯/檢出編碼的信息位的剩余部分,必須使用很多插入位,所以,編碼效率將降低。
此外,在通過附加標題信息切換糾錯/檢出能力不同的糾錯/檢出編碼的編碼/譯碼裝置中,由于附加標題信息將增加必須傳輸/存儲的位數(shù),所以,在將圖像及聲音進行高效率壓縮編碼并傳輸/存儲時,分配給圖像及聲音的信息的信息量將減少,從而將招致畫質(zhì)及音質(zhì)的降低。

發(fā)明內(nèi)容
本發(fā)明的主要目的旨在提供可以解決由于同步代碼的誤檢測而引起的偽同步及同步偏離的問題的編碼裝置和譯碼裝置。
本發(fā)明的更具體的目的在于,提供在將糾錯/檢出編碼與使用同步代碼的同步恢復方法組合時可以解決由于同步代碼的誤檢測而引起的偽同步及同步偏離的問題的編碼裝置和譯碼裝置。
本發(fā)明的其他目的在于,提供在將糾錯/檢出編碼與使用同步代碼的同步恢復方法組合時可以減少在同步區(qū)間的最后部分使用的插入位從而提高編碼效率的編碼裝置和譯碼裝置。
本發(fā)明的另一個目的旨在提供在將對圖像及聲音等的信息進行高效率壓縮編碼的代碼串切換為多種糾錯/檢出代碼進行編碼并傳輸/存儲時減少必須附加表示糾錯/檢出代碼的種類的標題信息而進行傳輸/存儲的代碼串的位數(shù)、從而可以提高信息的品質(zhì)的編碼裝置和譯碼裝置。
(1)本發(fā)明的第1編碼裝置其特征在于具有將輸入的代碼串編碼為由信息位和檢查位構成的糾錯/檢出代碼的編碼單元和將同步代碼插入到輸出代碼串中的預先決定的多個同步代碼插入位置中的某一位置同時將上述信息位配置到該代碼串中的任意的位置、將上述檢查位配置到該代碼串中的上述同步代碼插入位置以外的位置從而組合成輸出代碼串的代碼串組合單元。
本發(fā)明的第1譯碼裝置其特征在于具有根據(jù)編碼為由信息位和檢查位構成的糾錯/檢出代碼的代碼串在預先決定的多個同步代碼插入位置進行同步代碼的檢測的同步代碼檢測單元、分解上述代碼串并抽出糾錯/檢出代碼的信息位和配置在上述同步代碼插入位置以外的位置的該糾錯/檢出代碼的檢查位的代碼串分解單元和接收由上述代碼串分解單元抽出的信息位和檢查位并將上述糾錯/檢出代碼進行譯碼的譯碼單元。
這樣,在第1編碼/譯碼裝置中,同步代碼只存在于輸出代碼串的預先決定的同步代碼插入位置,糾錯/檢出代碼的檢查位存在于同步代碼插入位置以外,所以,即使在檢查位中包含與同步代碼相同的位組合格式,也不可能將其誤檢測為同步代碼。因此,不必使用防止發(fā)生特定的位組合格式的特殊的糾錯/檢出代碼或在糾錯/檢出編碼后進行用于防止同步組合格式的位插入等,于是,不僅可以增加所使用的糾錯/檢出代碼的自由度,而且不可能發(fā)生由于錯誤混入插入位而引起的新的同步檢測錯誤,從而可以提高抗錯能力。
(2)本發(fā)明的第2編碼裝置其特征在于在第1編碼裝置中追加將位于輸出代碼串中預先決定的多個同步代碼插入位置的同步代碼以外的輸入代碼串變換為使之與該同步代碼的加重平均距離大于預先決定的值的代碼串變換單元,將由該代碼串變換單元進行變換后的代碼串輸入編碼單元,編碼為由信息位和檢查位構成的糾錯/檢出代碼。
本發(fā)明的第2譯碼裝置其特征在于在第1譯碼裝置中追加了將在由譯碼單元所譯碼的代碼串中存在于變換為與同步代碼的加重平均距離大于預先決定的值的同步代碼插入位置處的該同步代碼以外的代碼串變換為原來的代碼串的代碼串變換單元。
這樣,在第2編碼/譯碼裝置中,編碼裝置對位于同步代碼插入位置的位串進行使與同步代碼的加重平均距離大于預先決定的值的變換處理;譯碼裝置通過進行與此相反的變換,由于在位串中不包含與同步代碼相同的位組合格式,所以,不會出現(xiàn)同步代碼的誤檢測。另外,如果進行使同步代碼與其以外的代碼串的加重平均距離增大的變換,即使錯誤混入代碼串中,也可以區(qū)別同步代碼與其以外的代碼串,所以,可以減少由于錯誤而引起的同步代碼的誤檢測的概率。
由于該變換/逆變換處理只在同步代碼插入位置進行,所以,與對代碼串全體進行變換/逆變換處理的先有方法相比,減少了額外操作。另外,在向編碼裝置輸入的輸入代碼串中,不必進行用以不發(fā)生與同步代碼相同的位組合格式的變換處理或使用特別的代碼字。特別是將切換不同的代碼字表而使用的可變長編碼裝置作為本編碼裝置的輸入時,如果在可變長編碼裝置中作成用以不發(fā)生與同步代碼相同的組合格式的代碼字表,將招致編碼效率的降低,但是如果使用第2編碼/譯碼裝置,就不會發(fā)生這種問題。
(3)本發(fā)明的第3編碼裝置其特征在于具有將輸入的代碼串編碼為糾錯/檢出代碼的編碼單元、將同步代碼插入到上述代碼串中的同步代碼插入單元和判斷應編碼為上述代碼串的上述同步代碼之前的糾錯/檢出代碼的信息的位數(shù)的判斷單元,在上述編碼單元中,根據(jù)由上述判斷單元判定的位數(shù),使上述同步代碼之前的糾錯/檢出代碼成為適應地縮退的縮退代碼。
本發(fā)明的第3譯碼裝置其特征在于具有對編碼為糾錯/檢出代碼并插入同步代碼的代碼串進行譯碼的譯碼單元、檢測上述代碼串中的同步代碼的同步代碼檢測單元和判斷編碼為上述代碼串中的由同步代碼檢測單元檢測的同步代碼之前的糾錯/檢出代碼的信息的位數(shù)的判斷單元,在上述譯碼單元中,根據(jù)上述判斷單元的判斷結果,識別上述同步代碼之前的糾錯/檢出代碼是否為縮退代碼并進行譯碼。
這樣,在第3編碼/譯碼裝置中,作為同步代碼之前的糾錯/檢出代碼,是使用為了將留在1個同步區(qū)間的最后的信息位進行編碼而縮退到所需要的位數(shù)的縮退代碼,所以,不必在同步區(qū)間的最后部分為了補足信息位的剩余部分而使用很多插入位,從而可以提高編碼效率。
(4)本發(fā)明的第4編碼裝置其特征在于具有將包含輸入的多種信息的代碼串編碼為糾錯/檢出代碼的編碼單元和根據(jù)上述代碼串中的信息的種類切換上述糾錯/檢出代碼的種類的切換單元。
本發(fā)明的第4譯碼裝置其特征在于具有將根據(jù)信息的種類編碼為不同種類的糾錯/檢出代碼的代碼串進行譯碼并生成原來的信息的譯碼單元和根據(jù)由上述譯碼單元生成的信息的種類判斷上述糾錯/檢出代碼的種類并通知上述譯碼單元的通知單元。
這樣,在第4編碼/譯碼裝置中,根據(jù)信息的種類切換糾錯/檢出代碼進行編碼/譯碼時,在編碼裝置中,通過根據(jù)所輸入的代碼串的信息的種類進行糾錯/檢出代碼的切換,同時,在譯碼裝置中根據(jù)所譯碼的信息判斷糾錯/檢出代碼的種類進行與編碼裝置相同的切換,就不必如以往那樣使用表示糾錯/檢出代碼的種類的標題信息,從而可以消除標題信息所帶來的額外的操作。
(5)本發(fā)明的第5編碼裝置其特征在于具有將位于輸出代碼中預先決定的多個同步代碼插入位置及其前后的預先決定的位數(shù)的區(qū)間的同步代碼以外的輸入代碼串變換為使與該同步代碼的加重平均距離大于預先決定的值的代碼串變換單元、將由上述代碼串變換單元進行變換后的代碼串編碼為由信息位和檢查位構成的糾錯/檢出代碼的編碼單元和將同步代碼插入到上述輸出代碼串中預先決定的多個同步代碼插入位置中的某一個位置同時將上述信息位配置到該輸出代碼串中的任意的位置而將上述檢查位配置到該代碼串中的上述同步代碼插入位置以外的位置從而組合成該輸出代碼串的代碼串組合單元。
本發(fā)明的第5譯碼裝置其特征在于具有從編碼為由信息位和檢查位構成的糾錯/檢出代碼并插入同步代碼的代碼串中在預先決定的同步代碼插入位置及其傾預先決定的位數(shù)的區(qū)間進行同步代碼的檢測的同步代碼檢測單元、分解上述代碼串抽出配置在糾錯/檢出代碼的信息位和上述同步代碼插入位置以外的位置的該糾錯/檢出代碼的檢查位的代碼串分解單元、接收由上述代碼串分解單元抽出的信息位和檢查位并將上述糾錯/檢出代碼進行譯碼的譯碼單元和將存在于由上述譯碼單元所譯碼的代碼串中變換為使與同步代碼的加重平均距離大于預先決定的值的上述同步代碼插入位置及其前后預先決定的位數(shù)區(qū)間的該同步代碼以外的代碼串變換為原來的代碼串的代碼串變換單元。
這樣,在第5編碼/譯碼裝置中,對于輸入代碼串,不僅在同步代碼插入?yún)^(qū)間而且在其前后的預先決定的位數(shù)的區(qū)間進行使與同步代碼的加重平均距離大于預先決定的值的變換,在譯碼裝置中,通過對輸入的代碼串進行與此相反的變換,由于在該區(qū)間不包含與同步代碼相同的位組合格式,所以,即使通過發(fā)生一部分位消失的位消失或附加多余的位的位附加的傳輸路線/存儲媒體進行已編碼的位串的傳輸/存儲,只要消失/附加的位數(shù)小于預先決定的位數(shù),就可以區(qū)別同步代碼與其以外的代碼串,從而在譯碼裝置中可以正確地進行同步檢測。
(6)本發(fā)明的第6編碼裝置其特征在于具有使將輸入信號進行壓縮編碼而得到的多種壓縮代碼多路化并生成多路化代碼串的多路化單元和將上述多路化代碼串作為輸入組合成輸出代碼串的代碼串組合單元,上述代碼串組合單元將同步代碼插入到上述輸出代碼串中預先周期地決定的多個同步代碼插入位置中的某一個位置。
這時,由于上述代碼串組合單元將同步代碼插入到上述輸出代碼串中預先周期地決定的多個同步代碼插入位置中的某一個位置,所以,進行在該輸出代碼串中插入填充位或者在上述輸出代碼串中預先決定周期性的多個同步代碼插入位置,同時插入指示上述多路化代碼串的邊界的信息(指針信息),將同步代碼插入到上述多個同步代碼插入位中的某一個位置。這樣,便可將同步代碼只插入到周期地決定的多個同步代碼插入位置中的某一個位置。
這里,填充位最好是可以從輸出代碼串的反方向唯一地進行譯碼的代碼。這樣,在譯碼裝置中,通過將填充位之前的代碼串的譯碼結束位置與填充位的開始位置進行比較,便可很容易檢測輸入代碼串中的錯誤。
此外,該填充位最好是同步代碼和與其一部分之間的加重平均距離大于預先決定的值。這樣,便可降低偽同步的發(fā)生概率。
本發(fā)明的第6譯碼裝置其特征在于具有檢測輸入代碼串中的同步代碼的同步代碼檢測單元、以由上述同步代碼檢測單元從上述輸入代碼串中檢測的同步代碼的位置為基準進行逆多路化處理從而生成壓縮代碼的逆多路化單元和將上述壓縮代碼進行譯碼并輸出再生信號的譯碼單元,上述同步代碼檢測單元在上述輸入代碼串中的預先周期地決定的多個同步代碼插入位置檢測上述同步代碼。
這樣,在第6編碼/譯碼裝置中,由于在編碼裝置中將同步代碼只插入到使多種壓縮代碼實現(xiàn)多路化的多路化代碼串中預先周期地決定的同步代碼插入位置,所以,在譯碼裝置中,只在該同步代碼插入位置進行同步檢測就可以了,與將同步代碼插入到代碼串中的任意的位置的先有方式相比,可以減少同步代碼檢測的次數(shù),另外,由于位錯誤而輸入譯碼裝置的位串通過變化為與同步代碼相同的位組合格式而引起的偽同步的發(fā)生概率隨著該同步代碼檢測次數(shù)的減少而減小,所以,利用本發(fā)明可以減少發(fā)生偽同步,從而可以減少伴隨同步代碼檢測的運算處理量。
(7)本發(fā)明的第7編碼裝置其特征在于除了第6編碼裝置的結構外,進而還具有將位于上述輸出代碼串中的上述同步代碼插入位置的上述同步代碼以外代碼串變換為使之與同步代碼的加重平均距離大于預先決定的值的代碼串變換單元。
本發(fā)明的第7譯碼裝置其特征在于進而還具有將在上述輸入代碼串的上述同步代碼插入位置處已變換為使之與上述同步代碼的加重平均距離大于預先決定的值的該同步代碼以外的代碼串變換為原來的代碼串的代碼串變換單元。
這樣,在第7編碼/譯碼裝置中,除了第6編碼/譯碼裝置的結構外,通過對考慮了同步代碼的錯誤的位插入即對位于同步代碼插入位置的位串進行與同步代碼的加重平均距離的變換,在位串中不包含與同步代碼相同的位組合格式,所以,對于預想的位數(shù)以下的錯誤,可以保證不會發(fā)生同步代碼的誤檢測,從而可以減小同步代碼誤檢測的概率。
在本發(fā)明中,所謂同步代碼,就是用于同步恢復而插入到代碼串中的可以唯一譯碼的代碼,例如,如果插入同步代碼的代碼串是使將按幀單位輸入的圖像信號進行壓縮編碼后的多種探索代碼實現(xiàn)多路化的多路化代碼串,則同步代碼就是表示編碼幀的分界線或多種壓縮代碼的分界線以及其他分界線的代碼。
如上所述,如果應用本發(fā)明,則可獲得如下效果。
(1)按照第1編碼/譯碼裝置,通過將同步代碼只插入到每隔一定間隔的同步代碼插入位置并使糾錯/檢出代碼的檢查位發(fā)生移位而存在于同步代碼插入位置以外的位置,所以,即使在檢查位發(fā)生與同步代碼相同的位組合格式,在進行同步代碼檢測的同步代碼插入位置也不會發(fā)生與同步代碼相同的位組合格式,從而在原理上完全不存在錯誤地進行同步檢測的可能性。
另外,對于位于同步代碼插入位置的代碼串,如果進行用以不發(fā)生偽同步代碼的位插入,就可以克服以往那樣構成用以不發(fā)生與同步位相同的位組合格式的代碼字的困難。
(2)按照第2編碼/譯碼裝置,在編碼裝置中除了第1編碼裝置的結構外通過對位于考慮了同步代碼的錯誤的位插入即同步代碼插入位置的位串進行用以使與同步代碼的加重平均距離大于預先決定的值的變換處理而在譯碼裝置中進行與此相反的變換,在位串中不包含與同步代碼相同的位組合格式,所以,對于預想的位數(shù)以下的錯誤可以保證不會發(fā)生同步代碼的誤檢測,從而可以減小同步代碼的誤檢測的概率。另外,如果進行了這種變換,即使錯誤混入到代碼串中,也可以區(qū)別同步代碼也其以外的代碼串,所以,可以減小由于錯誤而引起的同步代碼的誤檢測的概率。
此外,糾錯/檢出編碼在通過位插入而進行代碼字的變換之后進行,所以,對插入位也進行了錯誤保護。因此,與在進行糾錯/檢出編碼后進行位插入的先有的方式相比,可以降低插入位發(fā)生錯誤的概率。而且,由于位插入只在同步代碼插入位置進行,所以,與先有的在代碼串全體中進行位插入的情況相比,可以減少由于位插入而引起的代碼量增加,從而庫體格編碼效率。
(3)按照第3編碼/譯碼裝置,由于將同步代碼之前的糾錯/檢出代碼采用縮退代碼,所以,與先有的編碼裝置相比,在同步代碼之前的部分可以減少用于補足信息位的剩余部分的位插入數(shù),從而可以提高編碼效率。
(4)按照第4編碼/譯碼裝置,通過在編碼裝置中利用圖像及聲音等的高效率壓縮編碼裝置的多路化規(guī)則根據(jù)輸入的代碼串的信息種類進行糾錯/檢出代碼的切換、而在譯碼裝置中根據(jù)譯碼的信息判斷糾錯/檢出代碼的種類并進行與編碼裝置相同的切換,就不需要附加表示糾錯/檢出代碼的種類的標題信息,可以將其位數(shù)分配給圖像及聲音的高效率壓縮編碼,結果,便可提高畫質(zhì)及聲音等的信息品質(zhì)。
(5)按照第5編碼/譯碼裝置,通過在編碼裝置中對輸入代碼串不僅在同步代碼插入?yún)^(qū)間而且在其前后的預先決定的位數(shù)的區(qū)間進行使與同步代碼的加重平均距離大于預先決定的值的變換、而在譯碼裝置中對輸入的代碼串進行與此相反的變換,便可使在該區(qū)間不包含與同步代碼相同的位組合格式。因此,即使通過發(fā)生一部分位消失的位消失或附加多余的位的位附加的傳輸路線/存儲媒體進行已編碼的位串的傳輸/存儲,只要消失/附加的位數(shù)小于預先決定的位數(shù),就可以區(qū)別同步代碼與其以外的代碼串,從而在譯碼裝置中可以正確地進行同步檢測。
(6)按照第6編碼/譯碼裝置,由于在編碼裝置中將同步代碼只插入到使多種壓縮代碼實現(xiàn)多路化的多路化代碼串中預先周期地決定的同步代碼插入位置,所以,在譯碼裝置中只在該同步代碼插入位置進行同步檢測就可以了,與同步代碼插入到代碼串中的任意位置的先有方式相比,可以減少同步代碼檢測的次數(shù)。
另外,由于位錯誤而輸入譯碼裝置的位串通過變化為與同步代碼相同的位組合格式而引起偽同步的發(fā)生的概率伴隨該同步代碼檢測次數(shù)的減少而減小,所以,如果應用本發(fā)明,便可減少偽同步的發(fā)生,從而也可以減少伴隨同步代碼檢測的運算處理量。
(7)按照第7編碼/譯碼裝置,除了第6編碼/譯碼裝置的結構外,通過對位于考慮了同步代碼的錯誤的位插入即同步代碼插入位置的位串進行與同步代碼的加重平均距離的變換,在位串中不包含與同步代碼相同的位組合格式,所以,對預想的位數(shù)以下的錯誤可以保證不發(fā)生同步代碼的誤檢測,從而可以減小同步代碼誤檢測的概率。


圖1是表示本發(fā)明實施例1和2的運動圖象編碼裝置的結構的框圖。
圖2是表示圖1的運動圖象編碼裝置的多路器的多路化規(guī)則的圖。
圖3是表示圖1的運動圖象編碼裝置的輸出編碼裝置的結構的框圖。
圖4是表示圖1的運動圖象編碼裝置的輸出代碼串的例子的圖。
圖5是表示同步代碼的例子的圖。
圖6是表示圖3的輸出編碼裝置的糾錯/檢出切換編碼部的結構的框圖。
圖7是表示圖3的輸出編碼裝置的代碼串組合器的結構的框圖。
圖8是表示本發(fā)明的實施例1和2的運動圖象譯碼裝置的結構的框圖。
圖9是表示圖8的運動圖象譯碼裝置的輸入譯碼裝置的結構的框圖。
圖10是表示圖9的輸入譯碼裝置的代碼串分解器的結構的框圖。
圖11是表示用先有的糾錯/檢出代碼切換編碼裝置得到的代碼串的例子的圖。
圖12是表示用于說明本發(fā)明的實施例2的由于傳輸路線的位附加/消失而發(fā)生錯誤的同步代碼的例子的圖。
圖13是用于說明實施例2的圖3中的位插入器的動作的圖。
圖14是用于說明實施例2的圖9中的同步檢測器和插入位去除器的動作的圖。
圖15是表示在實施例1和2中使用幀長信息進行同步保護的代碼串的例子的圖。
圖16是表示在實施例1和2中使用幀長信息進行同步保護的代碼串的其他例子的圖。
圖17是表示在實施例1和2中使用幀長信息進行同步保護的代碼串的又一個其他例子的圖。
圖18是表示本發(fā)明實施例3和4的運動圖象編碼裝置的結構的框圖。
圖19是表示本發(fā)明實施例3的運動圖象編碼裝置的輸出編碼裝置的結構的框圖。
圖20是表示本發(fā)明實施例3的運動圖象編碼裝置的輸出代碼串的例子的圖。
圖21是表示本發(fā)明實施例3和4的運動圖象譯碼裝置的結構的框圖。
圖22是表示本發(fā)明實施例3的運動圖象譯碼裝置的輸入譯碼裝置的結構的框圖。
圖23是表示本發(fā)明實施例4的運動圖象編碼裝置的輸出編碼裝置的結構的框圖。
圖24是表示本發(fā)明實施例4的運動圖象譯碼裝置的輸入譯碼裝置的結構的框圖。
圖25是表示本發(fā)明實施例4的運動圖象編碼裝置的輸出代碼串的例子的框圖。
圖26是表示運動圖象編碼裝置的多路器的多路化規(guī)則的圖。
圖27是表示本發(fā)明實施例5的運動圖象編碼裝置的輸出代碼串的例子的框圖。
圖28是表示運動圖象編碼裝置的多路器的多路化的其他例子的圖。
圖29是表示對圖28所示的進行多路化處理時的各同步代碼進行處理的輸出代碼串的圖。
圖30是表示用于說明本發(fā)明使用的填充位的例子的代碼表的圖。
圖31是用于說明使用圖30的填充位時的譯碼裝置的處理的圖。
圖32是說明圖30的填充位的特征的圖。
圖33是表示使同步代碼插入間隔小于同步代碼時的輸出代碼串的例子的圖。
圖34是表示使用不同長度的同步代碼的例子的圖。
圖35是表示本發(fā)明實施例6的運動圖象編碼裝置的輸出代碼串的例子的圖。
具體實施例方式
下面,參照

本發(fā)明的實施例。
(實施例1)圖1是表示將具有本發(fā)明的糾錯/檢出代碼切換功能的編碼裝置與使用運動補償自適應預測和正交變換編碼的一種即離散余弦變換編碼的高效率壓縮編碼裝置組合的運動圖象編碼裝置的實施例1的框圖。關于將運動補償自適應預測與離散余弦變換編碼組合的編碼方式,由于例如文獻1安田浩編著、“マルチメデイア符號化の國際標準”、丸善、(平成3年6月)等中有詳細的說明,所以,此處只說明動作的概況。另外,在本實施例中使用的糾錯/檢出代碼如BCH代碼那樣,采用分離為信息位和檢查位的代碼。
在圖1中,以幀單位輸入的編碼對象的輸入運動圖象信號131先按宏塊等小區(qū)域單位進行運動補償自適應預測。即,在運動補償自適應預測器101中,檢測輸入運動圖象信號131與幀存儲器102中存儲的已進行了編碼/局部譯碼的圖像信號之間的運動矢量,根據(jù)該運動矢量通過運動補償預測作成預測信號132。在該運動補償預測器101中,選擇運動補償預測編碼和將輸入運動圖象信號131直接進行編碼的幀內(nèi)編碼(預測信號=0)中的極適合于編碼使用的預測模式,并輸出對應的預測信號132。
預測信號132輸入減法器103,通過從輸入運動圖象信號131中將預測信號132減去,輸出預測殘差信號133。預測殘差信號133在離散余弦變換器104中按一定大小的塊單位進行離散余弦變換(DCT),生成DCT系數(shù)。該DCT系數(shù)由量化器105進行量化處理。從量化器105輸出的已量化的DCT系數(shù)數(shù)據(jù)分為2個分支,1個分支由第1可變長編碼器106進行可變長編碼,另一個分支經(jīng)逆量化器107進行逆量化處理后由逆離散余弦變換器108進行逆離散余弦變換(逆DCT)。逆離散余弦變換器108的輸出在加法器109中與預測信號132相加,生成局部譯碼信號。該局部譯碼信號存儲到幀存儲器102中。
另一方面,在運動補償自適應預測器101中決定的預測模式和運動矢量的信息由第2可變長編碼器110進行可變長編碼。從第1、第2可變長編碼器106、110輸出的可變長代碼(壓縮代碼)在多路器111中實現(xiàn)多路化,成為多路化代碼串201。
從多路器111輸出多路化代碼串201、表示與其對應的糾錯/檢出代碼的種類的FEC種類識別信號202和要求同步代碼的插入的同步代碼插入要求信號203。
這些代碼串201、FEC種類識別信號202和同步代碼插入要求信號203輸入將代碼串201切換為糾錯/檢出能力不同的多種糾錯/檢出代碼而進行編碼的輸出編碼裝置200,生成最終的輸出代碼串205。在本實施例中,輸出編碼裝置200與本發(fā)明的編碼裝置相當。
圖2是表示多路器111中實現(xiàn)多路化的流程的圖。多路化是以編碼幀為單位進行的。首先,使同步代碼301實現(xiàn)多路化。同步代碼301實現(xiàn)多路化時,從多路器111輸出同步代碼插入要求信號203,并通知編碼裝置200已實現(xiàn)多路化的代碼字是同步代碼。其次,使對多路化代碼串201表示該編碼幀的各種編碼模式的圖像標題203實現(xiàn)多路化。然后,使表示各區(qū)域的運動補償自適應預測器MC的預測模式的預測模式信息303實現(xiàn)多路化,進而使運動矢量信息304和預測殘差信號的DCT系數(shù)(以下,將其稱為殘差DCT系數(shù))305實現(xiàn)多路化。使圖像標題302、預測模式信息303、運動矢量信息304和殘差DCT系數(shù)305實現(xiàn)多路化時,輸出分別與它們對應的表示糾錯/檢出代碼的種類的FEC種類識別信號202。
如果混入了錯誤,對于畫質(zhì)大大劣化的圖像標題302、預測模式信息303和運動矢量信息304,使用糾錯/檢出能力高的糾錯/檢出代碼。另一方面,殘差DCT系數(shù)305在混入錯誤時通過檢測該錯誤并使殘差為0便可防止大的畫質(zhì)劣化,所以,糾錯能力不必太高,只要能夠單純地進行檢錯就可以了。
圖3是表示圖1中的輸出編碼裝置200的結構的框圖。該輸出編碼裝置200由位插入器211、糾錯/檢出切換編碼器212和代碼串組合器213構成。另外,圖4是表示由輸出編碼裝置200生成的輸出代碼串205的一例的圖。在圖4中,PSC是同步代碼,PH是圖像標題,MODE是預測模式信息,MV是運動矢量信息,CHK是糾錯/檢出代碼的檢查位,COEF是殘差DCT系數(shù),STUFF是填充位(插入位)。該輸出代碼串205具有以下特征。
(1)同步代碼PSC只插入到由以一定間隔(每隔sync_period位)配置的箭頭所示的同步代碼插入位置中的某一個位置。sync_period的長度大于同步代碼PSC的長度和檢查位CHK的最大長度。檢查位CHK移位到同步代碼插入位置之前。
(2)1幀即夾在同步代碼PSC與下一個PSC之間的1同步期間的最后部分的糾錯/檢出代碼,作為只將留在最后的信息位進行編碼的縮退代碼,為了進行檢查位CHK(在圖4的例中,是CHK6)的移位,進行所需位數(shù)的填充位STUFF的位插入。
(3)在圖4的輸出代碼串205中不存在表示糾錯/檢出代碼的種類及數(shù)量的FEC種類識別信號。
在該輸出代碼串205中,如上述(1)那樣,由于進行檢查位CHK的移位,所以,檢查位CHK沒有輸入到箭頭所示的同步代碼插入位置,因此,完全不可能由于檢查位CHK發(fā)生偽同步。另外,如上述(2)那樣,進行幀的最后的糾錯/檢出編碼時,在先有的技術中,必須插入很多插入位(啞數(shù)據(jù)位),但是,在本實施例中,由于幀的最后成為縮退代碼,所以,插入位數(shù)很少就夠了。另外,如上述(3)那樣,由于在輸出代碼串205中不包含表示糾錯/檢出代碼的種類及數(shù)量的標題信息,所以,沒有由此引起代碼量的增加。
下面,將從多路器111輸出的圖2的多路化代碼串201與圖4的輸出代碼串205對應地詳細說明生成這種輸出代碼串205的圖3的輸出編碼裝置200的結構和動作。
同步代碼301由多路器111實現(xiàn)了多路化時,如前所述,就輸出同步代碼插入要求信號203。同步代碼301如圖5所示的那樣由例如sync_0_len位的“0”、1位的“1”和表示同步代碼301的種類的sync_nb_len位的“×××××”構成。輸出編碼裝置200接收到從多路器111輸出的同步代碼301和同步代碼插入要求信號203時,就從代碼串組合器213作為輸出代碼串205輸出同步代碼(PSC)。
這里,如圖4所示,由于同步代碼301只能插入到輸出代碼串205中的每隔sync_period位配置的同步代碼插入位置,所以,此前所生成的輸出代碼串205的最末尾沒有位于同步代碼插入位置時,如后面所述的那樣,就插入填充位STUFF,以使同步代碼301到達同步代碼插入位置。
同步代碼301輸出到輸出代碼串205中時,以后的圖像標題302、預測模式信息303、運動矢量信息304、殘差DCT系數(shù)305就按如下方式進行編碼。首先,對于從多路器111輸出的多路化代碼串201,在位插入器211中進行用于防止發(fā)生偽同步的位插入。即,為了防止在輸出代碼串205中有與同步代碼301的代碼字相同的位組合格式時不能將同步代碼301唯一地進行譯碼,根據(jù)需要進行位插入。例如,如果同步代碼301如圖5所示的那樣成為sync_0_len位的“0”連續(xù)的代碼字,只要插入“1”使在同步代碼301以外的代碼串中不會連續(xù)有sync_0_len位以上的0,就可以防止發(fā)生偽同步。
如前所述,由于同步代碼301只插入到同步代碼插入位置,所以,用于防止該偽同步發(fā)生的位插入操作只在同步代碼插入位置進行就行了。因此,從代碼串組合器213輸出表示至此所生成的輸出代碼串205的總位數(shù)的計數(shù)值221,由位插入器211根據(jù)計數(shù)值221判斷是否需要進行位插入。設計數(shù)值221即已生成的輸出代碼串205的總位數(shù)為total_len,則在0<total_len mod sync_period≤sync_0_len的區(qū)間,計數(shù)多路化代碼串201中的“1”的數(shù),如果在該區(qū)間完全沒有“1”,就插入1位的“1”。這里,A mod B表示用B除A時的余數(shù)。
另外,為了降低錯誤引起的同步代碼301的誤檢測的概率,可以如以下所述的那樣進行位插入。
在n位錯誤混入同步代碼301時,為了檢測同步代碼301,在后面所述的運動圖象譯碼裝置的輸入譯碼裝置中,必須判斷與真的同步代碼的加重平均距離小于等于n的代碼字是同步代碼。但是,如果對同步代碼301以外的代碼串直接進行這種判斷時,在同步代碼301以外的代碼串中有時也存在與同步代碼的加重平均距離小于等于n的位組合格式,從而將會誤認為它位于同步代碼插入位置,并將其判定為同步代碼301。
因此,通過在位插入器211中按以下方式對多路化代碼串201進行位插入,將位于多路化代碼串201中的同步代碼插入位置的同步代碼以外的代碼串變換為與同步代碼301的加重平均距離成為大于等于2*n+1的值。具體而言,就是在0<total_len mod sync_period≤sync_0_len-(2*N+1)的區(qū)間,計數(shù)“1”的數(shù)(設=n0),如果n0小于等于2*n+1,就將2*n+1-n0位的“1”插入到多路化代碼串201中。
這樣,在位插入器211中進行位插入后的代碼串222就與表示糾錯/檢出代碼的種類的FEC種類識別信號202一起輸入糾錯/檢出代碼切換編碼部212。
圖6是表示圖3中的糾錯/檢出代碼切換編碼部212的結構的框圖。鎖存電路603是鎖存FEC種類識別信號202的電路,從多路器111結束同步代碼向多路化代碼串201的輸出從而同步代碼插入要求信號203停止時,將FEC種類識別信號202鎖存,并將鎖存的信號623供給糾錯/檢出編碼器604。
糾錯/檢出編碼器604根據(jù)鎖存的信號623對從位插入器211輸出的代碼串222進行糾錯/檢出編碼,生成并輸出信息位631和檢查位632。另外,糾錯/檢出編碼器604結束1塊的糾錯/檢出編碼時,就輸出指示鎖存電路603鎖存下一個FEC種類識別信號202的鎖存指示信號625。鎖存電路603按照該鎖存指示信號625進行鎖存,并將鎖存的信號623供給糾錯/檢出編碼器604。
在輸出編碼裝置200中反復進行上述動作,從位插入器211輸出的位插入后的代碼串222由糾錯/檢出切換編碼器212按照從多路器111輸出的FEC種類識別信號202進行糾錯/檢出代碼的切換,同時進行糾錯/檢出編碼。FEC種類識別信號202由于只在1塊的糾錯/檢出代碼的編碼結束的時刻由鎖存電路603鎖存,所以,在該切換點之前可以應用相同的糾錯/檢出代碼。例如,在圖像標題302使用FEC1、預測模式信息303使用FEC2這樣的糾錯/檢出代碼時,如果圖像標題302的位數(shù)比FEC1的1塊的信息位數(shù)少,則作為后續(xù)的預測模式信息303的糾錯/檢出代碼,在達到FEC1的信息位數(shù)之前,可以使用FEC1。
圖7是表示圖3中的代碼串組合器213的結構的框圖。該代碼串組合器213由計數(shù)輸出代碼串205的位數(shù)的計數(shù)器701、暫時存儲檢查位632及其位數(shù)的緩沖器702、切換輸出代碼串205的切換器703和控制切換器703的切換控制器704構成。
計數(shù)器701在輸入同步代碼插入要求信號203時復位為同步代碼長sync_len的值,從同步代碼的下一位到順序輸入下一個同步代碼停止計數(shù)。在同步代碼輸入后,在最初的檢查位632輸入之前切換器動作以輸出信息位631。輸入檢查位632時,就存儲到緩沖器702中,同時將其位數(shù)(檢查位數(shù))711從緩沖器702向切換控制器704輸出。
切換控制器704根據(jù)檢查位數(shù)711和計數(shù)器701的計數(shù)值221,如前所述的那樣控制切換器703進行用以使檢查位632不會輸出到同步代碼插入位置的檢查位移位。例如,設計數(shù)值221為bit_count、檢查位數(shù)711為check_len,則在bit_count mod sync_period<sync_period-check_len時就輸出信息位631,在sync_period-check_len≤total_bits mod sync_period<sync_period時就輸出緩沖器702存儲的檢查位713。以后,便輸入信息位631和檢查位632,反復進行上述處理。
輸出編碼裝置200如前所述的那樣在1幀的最后部分作為糾錯/檢出代碼使用縮退碼,為了進行檢查位的移位而進行位插入,所以,進行與除此以外的部分的通常情況不同的動作。即,多路器111結束1幀的多路化代碼串201的輸出時,就輸出下一幀的同步代碼插入要求信號203。與此對應地,圖6的糾錯/檢出切換編碼部212內(nèi)的糾錯/檢出編碼器604將糾錯/檢出代碼的信息位631的不足部分視為是從插入位發(fā)生器705輸出的預先決定的位組合格式,從而進行使用縮退碼的糾錯/檢出編碼。該位組合格式可以使全部位為“1”,也可以為“0”,也可以是“0101...”那樣的特定的格式的反復。不向信息位631輸出該補足的插入位。
在圖7的代碼串組合器213中,將信息位631輸出到最后之后,將切換器703從位發(fā)生器705切換到輸入,進行位插入以使緩沖器702存儲的檢查位713配置到下一個同步代碼之前。設輸出1幀的最后的信息位631時的計數(shù)器701的計數(shù)值221為total_len、最后輸出的檢查位632的位數(shù)為last_check_len,則該插入位的數(shù)stuffing_len成為stuffing_len=sync_period-last_check_len-(total_lenmod sync_period)不使用縮退碼時,就進行最后的信息位last_info_len的通常的信息位info_len的不足部分(info_len-last_info_len)位的位插入,此外,還必須進行用于使檢查位移位的位插入。因此,與使用縮退碼時相比,必須進行info_len-last_info_len+(info_len-last_info_len)mod sync_period位的很多位插入。
代碼串組合器213在這樣通過切換器703向輸出代碼串205輸出信息位631和插入位后,最后切換到檢查位713,向輸出代碼串205輸出。
下面,說明本實施例的運動圖象譯碼裝置。
圖8是表示與圖1的運動圖象編碼裝置對應的運動圖象譯碼裝置的結構的框圖。從圖1的運動圖象譯碼裝置輸出的輸出代碼串205經(jīng)過傳輸/存儲系統(tǒng)后,作為輸入代碼串205’輸入到輸入譯碼裝置800中。在本實施例中,輸入譯碼裝置800與本發(fā)明的譯碼裝置相當。
在輸入譯碼裝置800中,根據(jù)從后續(xù)的逆多路器811輸出的表示糾錯/檢出代碼的種類的FEC種類識別信號802切換糾錯/檢出代碼,輸出經(jīng)過糾錯/檢出譯碼的代碼串801、同步代碼檢測信號803和檢錯信號804。逆多路器811輸入這些代碼串801、同步代碼檢測信號803和檢錯信號804,分離并輸出預測殘差代碼841和運動補償自適應預測信息代碼842。
預測殘差代碼841和運動補償自適應預測信息代碼842分別輸入第1和第2可變長譯碼器806和810。由第1可變長譯碼器806所譯碼的殘差DCT系數(shù)831由逆量化器807進行逆量化處理和由逆DCT器808進行逆離散余弦變換等一系列的處理后,由加法器809與運動補償自適應預測器801的輸出即運動補償自適應預測信號832相加,成為再生圖像信號850。再生圖像信號850向裝置外輸出,同時記錄到幀存儲器820中。由第2可變長譯碼器810所譯碼的運動補償自適應預測信息輸入運動補償自適應預測器801,生成運動補償預測信號832。
上述處理是與圖1的運動圖象編碼裝置對應地再生運動圖象的處理,逆量化器807、逆DCT器808、加法器809和幀存儲器820進行的處理,分別與圖1的逆量化器107、逆DCT器108、加法器109和幀存儲器102進行的處理的實現(xiàn)方法也有不同的情況,但是,基本上是相同的。另外,第1和第2可變長譯碼器806、810、逆多路器811和輸入譯碼裝置800的處理除了錯誤混入代碼串的情況外,分別是與圖1的可變長編碼器106、110、多路器111和輸出編碼裝置200進行的處理相反的處理。
圖9是表示輸入譯碼裝置800的結構的框圖。該輸入譯碼裝置800由檢測輸入代碼串205’中的同步代碼的同步檢測器901、計數(shù)輸入代碼串205’的位數(shù)的計數(shù)器902、將輸入代碼串205’分解為信息位912和檢查位913并輸出的代碼串分解器903、糾錯/檢出譯碼器904和插入位去除器905構成。
在同步檢測器901中,根據(jù)計數(shù)器902的計數(shù)值911只在同步代碼插入位置進行同步代碼的檢測。例如,設同步代碼插入位置的間隔為sync_period、計數(shù)值911為bit_count、同步代碼的長度為sync_len,就只進行0<bit_count%sync_period≤sync_len時的同步檢測。
這里,也可以進行考慮了同步代碼的錯誤的同步代碼的檢測。
在圖3中的輸出編碼裝置200內(nèi)的位插入器211中,如果考慮n位以下的錯誤,進行以使與同步代碼的加重平均距離遠離為2*n+1的位插入引起的代碼串變換,即使將與真的同步代碼的加重平均距離小于n的代碼判定為同步代碼,只要是n位以下的錯誤混入,就不會發(fā)生誤同步檢測。
圖10是表示代碼串分解器903的結構的框圖。輸入代碼串205’由后面所述的控制器1001控制的第1切換器1002切換為信息位1021和檢查位913。從第1切換器1002輸出信息位1021時,該信息位1021經(jīng)過第2切換器1003只將信息位長度存儲到緩沖器1004中。計數(shù)器1005計數(shù)從第2切換器1003輸出的輸出位數(shù)。該計數(shù)器1005的計數(shù)值1023由比較器1006與從糾錯/檢出代碼信息輸出器1007輸出的信息位長度1024進行比較,兩者一致時就將計數(shù)器1005復位,同時由鎖存電路1008將表示糾錯/檢出代碼的種類的FEC種類識別信號802鎖存,進而從緩沖器1004輸出信息位912。鎖存電路1008的輸出914輸入糾錯/檢出代碼信息輸出電路1007,同時向圖9中所示的糾錯/檢出譯碼器904輸出。
如前所述,糾錯/檢出代碼的檢查位進行移位,進入代碼串205中后方的糾錯/檢出代碼的信息位之間??刂破?001進行用以將進行了移位的檢查位和信息位分離的控制。1塊的糾錯/檢出代碼的信息位的輸入結束時,在比較器1006中計數(shù)值1023與信息位長度1024就一致??刂破?001接收該一致信號,從糾錯/檢出信息輸出器1007取入檢查位長度1025,計算進入下一個信息位之間的檢查位的位置。設由比較器1006判定為一致時的代碼串205’的輸入位數(shù)的計數(shù)值911為bit_count、檢查位長度為check_len,則檢查位開始位置check_start就成為check_start=(bit_count/sync_period+1)*sync_period-check_len,檢查位結束位置check_end就成為check_end=(bit_count/sync_period+1)*sync_period??刂破?001控制切換器1002在計數(shù)值911從check_start到check_end之間輸出檢查位913。
由于在1幀的最后用縮退碼進行糾錯/檢出編碼,所以,進行特別的處理。在達到1幀的最后時,從同步檢測器901輸出表示檢測下一幀的同步代碼的信號803??刂破?001接收該信號803,計算1幀的最后的糾錯/檢出代碼的檢查位的位置和信息位的不足位數(shù)。設開始輸入1幀的最后的糾錯/檢出代碼時的輸入的代碼串205’的位數(shù)的計數(shù)值911為pre_last_count、1幀的代碼串205’的輸入結束時的計數(shù)值911為total_count、處理時的計數(shù)值911為bit_count、前一個糾錯/檢出代碼的檢查位長度為pre_last_check_len。首先,計算糾錯代碼是縮退碼和進行位插入而引起的信息位的過不足部分。在1幀最后的糾錯/檢出代碼的信息位中,包含在輸出代碼串205中的位數(shù)last_info_len就是last_info_len=total_count-last_check_len-pre_last_count-pre_last_check_len。在last_info_len比糾錯代碼的信息長度info_len短時,就判定為縮退碼,計數(shù)值1023從last_info_len到info_len由切換器1021切換為從插入位發(fā)生器1015輸出的位組合模式,補足由于縮退而引起的信息位的不足部分。從該插入位發(fā)生器1015輸出的輸出位組合格式和編碼器的圖7中的插入位發(fā)生器705發(fā)生的位組合格式相同。
另一方面,last_info_len比info_len長時,就判定為位插入部分,對于計數(shù)值1023成為info_len以上的部分,就不輸出信息位912。對于檢查位,就控制切換器1002將total_count-chrck_len<bit_count≤total_count時的輸出代碼串205作為檢查位而輸出。
糾錯/檢出譯碼器904輸入從代碼串分解器903輸出的信息位912和檢查位913,根據(jù)由圖10的鎖存電路1008鎖存的表示糾錯/檢出代碼的種類的FEC種類識別信號914進行糾錯/檢出代碼的譯碼,并輸出進行了糾錯的代碼串915和檢錯信號804。
進行了糾錯的代碼串915輸入插入位去除器905。插入位去除器905進行去除用于防止由輸出編碼裝置200的位插入器211插入的偽同步信號的插入位的處理。如前所述,由于位插入只在同步插入位置進行,所以,根據(jù)計數(shù)器902的計數(shù)值911判斷同步插入位置。
例如,設同步代碼字為圖5所示的代碼字,在位插入器211中向同步代碼的最初的sync_len位的“0000...”部分進行位插入用以使與同步代碼的加重平均距離遠離2*n+1以上時,就從同步代碼插入位置開始計數(shù)sync_0_len-(2*n+1)位的“1”的數(shù)(設=n0),如果n0小于2*n+1,就刪除2*n+1-n0位。但是,由于插入位決定為“1”,所以,由插入位去除器905判定為插入位的位為“0”時,就認為錯誤混入到了同步代碼插入?yún)^(qū)間,這時,就輸出誤檢測信號804。
如上所述,由輸入譯碼裝置800譯碼的代碼串801由逆多路器811進行逆多路化處理。這就是將圖2所示的經(jīng)過多路化處理的代碼字分離并輸出的操作。該逆多路器811與第1和第2可變長譯碼器806和810連動地動作。
首先,從輸出譯碼裝置800輸入同步代碼檢測信號803時,逆多路器811就轉移為幀處理的初始狀態(tài)。其次,作為表示糾錯/檢出代碼的種類的FEC種類識別信號802,輸出對圖像標題的糾錯/檢出代碼的種類,輸入代碼串801,將圖像標題302進行譯碼,判斷圖像標題中有無錯誤。沒有錯誤時,作為FEC種類識別信號802就輸出對預測模式信息303的糾錯/檢出代碼的種類,輸入代碼串801,對預測模式信息進行逆多路化處理,并向第2可變長譯碼器810輸出。
第2可變長譯碼器810將所有的預測模式信息譯碼時,就向逆多路器811輸出表示該情況的信號。逆多路器811接收該信號,并輸出表示對運動矢量信息304的糾錯/檢出代碼的種類的FEC種類識別信號,開始進行運動矢量信息304的逆多路化處理。進行了逆多路化處理的運動矢量信息向第2可變長譯碼器810輸出,進行譯碼。在所有的運動矢量信息的譯碼結束時,從第2可變長譯碼器810向逆多路器811輸出表示該情況的信號,逆多路器811接收該信號,并輸出表示對殘差DCT系數(shù)的糾錯/檢出代碼的種類的FEC種類識別信號,同時,對殘差DCT系數(shù)305進行逆多路化處理,并向第1可變長譯碼器806輸出。由第1可變長譯碼器806將該殘差DCT系數(shù)305進行譯碼。
如上所述,糾錯/檢出代碼的種類,在逆多路器811中根據(jù)與輸出編碼裝置200決定的相同的多路化規(guī)則進行判斷。因此,不必使表示糾錯/檢出代碼的種類的標題信息等包含在輸出代碼串205中。
在糾錯/檢出譯碼器904中,有時利用檢錯代碼檢測錯誤混入到輸入代碼串205’中的情況。另外,如前所述,有時也用插入位去除器905檢測插入位的錯誤。這時,從輸入譯碼裝置800輸出檢錯代碼804。此外,在可變長譯碼的處理中,在檢測到可變長代碼字表中沒有的代碼字時,也判定為混入了錯誤。另外,在逆多路器811的逆多路化處理中,判定有違反多路化的規(guī)則的部分時,也判定為混入了錯誤。這時,輸入譯碼裝置800和逆多路器811為了不使再生圖像產(chǎn)生大的劣化而進行以下處理。
(1)在殘差DCT系數(shù)中檢測到錯誤時,就令該部分的殘差為0。早預測模式選擇內(nèi)部編碼模式時,也可以根據(jù)已再生幀及周圍的區(qū)域的再生圖像信號預測該區(qū)域的再生圖像信號。
(2)在預測模式信息及運動矢量中檢測到錯誤時,可以根據(jù)周圍的區(qū)域的預測模式信息及運動矢量信息推斷該區(qū)域的預測模式信息及運動矢量信息時就使用這些信息,不能推斷時就根據(jù)已再生幀及周圍的求的再生圖像信號預測該區(qū)域的再生圖像信號。
(3)在圖像標題中檢測到錯誤時,如果直接將其譯碼,就可能發(fā)生非常大的畫質(zhì)劣化,所以,就直接將前一幀的再生圖像作為當前幀的再生圖像。
在上述(1)、(2)、(3)的處理中,由于使用可變長編碼而波及到下一個同步代碼之前的后續(xù)的代碼時,就對該部分也進行同樣的處理。
在上述說明中,表示了同步代碼檢測器901只在同步代碼插入位置(每隔sync_period位)進行同步代碼的檢測的例子,但是,由于傳輸/存儲媒體的影響有時也會發(fā)生位的消失或錯誤位的插入。這時,也可以在同步代碼插入位置以外進行同步代碼的檢測,并將檢測到同步代碼的位置判定為同步代碼插入位置。
(實施例2)下面,參照圖12~圖14說明本發(fā)明的實施例2。本實施例的運動圖象編碼裝置和運動圖象譯碼裝置即使使用使位串的一部分消失從而減少位數(shù)或附加多余的位從而增加位數(shù)的傳輸路線/存儲媒體進行代碼串的傳輸/存儲,也可以可靠地進行同步檢測。
圖12是表示有這種位附加/消失時的同步檢測的處理的原理的框圖。這里,如圖12(a)所示,正確的同步代碼由sync_0_len位的“0”和1位的“1”構成。圖12中的“×”是同步代碼以外的位。
圖12(b)~(e)表示由于位附加/消失而同步代碼是如何變化的。這里,附加/消失的位數(shù)(Nid)最大為1位。(b)是在同步代碼之前的位串中發(fā)生1位刪除的情況,全體同步代碼向前移1位。(c)是在同步代碼之前的位串中發(fā)生1位附加的情況,全體同步代碼向后移1位。(d)是在同步代碼中發(fā)生位刪除的情況,從圖中箭頭的位抽出位置開始后邊的向前移1位。此外,(e)是在同步代碼中發(fā)生1位附加的外科,在圖中箭頭的位附加位置發(fā)生1位附加,其后邊的向后移1位。
為了即使發(fā)生位附加/消失也可以正確地檢測同步,必須將圖12(b)~(d)所示的位串也判定為同步代碼。由圖12可知,在正確的同步代碼插入位置的±Nid位的范圍內(nèi)包含的“1”的位數(shù)最大為sync_0_len-3*Nid的位。因此,在譯碼側在同步代碼插入位置的±Nid位的范圍內(nèi)進行同步檢測,如果包含在該區(qū)間的“1”的位數(shù)小于上述值,就可以判定為同步代碼。另外,在編碼裝置中,進行代碼串的變換用以不發(fā)生圖12(b)~(d)的位組合格式。
下面,以與實施例1的差異為中心說明這種編碼裝置/譯碼裝置。
實施例2的運動圖象編碼裝置和實施例1的運動圖象編碼裝置的全體結構是相同的,但是,圖3中的位插入器211的動作不同。位插入器211的動作示于圖13。即,在實施例1的位插入器211中,只在同步代碼插入?yún)^(qū)間進行位插入操作,但是,在實施例2的位插入器211中,為了即使發(fā)生最大Nid位的位附加/消失也不發(fā)生與同步代碼相同的位組合格式而在同步代碼插入?yún)^(qū)間±Nid位的區(qū)間進行位插入。
設圖3的計數(shù)值221為total_len、同步代碼插入位置的間隔為sync_period,位插入器211計數(shù)從total_len mod sync_period=sync_period-Nid(mod剩余運算)到total_len mod sync_period=symc_0_len-1-3*Nid的區(qū)間的“1”的數(shù)(設=n0),如果n0不到3*Nid+1,就插入3*Nid+1-n0位的“1”。
在圖13中,示出了sync_period=12、sync_0_len=9、Nid=1時的位插入器211的動作例。在該例中,由于n0=2,所以,插入3*Nid+1-n0=2位的“1”。
這樣,通過進行位插入,就保證了同步代碼插入?yún)^(qū)間±Nid位的“0”的數(shù)是大于3*Nid位,從而可以唯一地識別為同步代碼。
另一方面,實施例2的運動圖象譯碼裝置與實施例1的全體結構是相同的,但是,圖9中的同步檢測器901和插入位去除器905的動作不同。插入位去除器905的動作示于圖14。
即,在同步檢測器901中,為了即使發(fā)生最大Nid位的位附加/消失也可以檢測同步,在同步代碼插入位置的前后±Nid位的范圍內(nèi)進行同步代碼的檢測。
首先,對每一同步代碼插入位置判斷是否存在同步代碼。即,設計數(shù)器902的計數(shù)值911為bit_count,計數(shù)從bit_count mod sync_period=sync_period-Nid到bit_count mod sync_period=sync_0_len-1+Nid之間的“0”的數(shù)(設=ns0),如果n 0小于3*Nid,就判定在該區(qū)間有同步代碼。
在圖14的動作中,示出了sync_period=12、sync_0_len=9、Nid=1時的例子。在該例中,在(bit_count mod sync_period)從“1”到“8”之間計數(shù)“0”的數(shù)。在圖14的例中,由于ns0=2,所以,判定為同步代碼。
其次,在判定為有同步代碼的同步代碼插入?yún)^(qū)間,判斷代碼串由于位附加/消失而移位了幾位。是圖14所示的那樣的sync_0_len位時,就從最后的“1”的位置判斷移位量。具體而言,就是從同步代碼判斷區(qū)間的開始,探索從第sync_0_len+1位看位于開始的“1”,根據(jù)從該同步代碼判斷區(qū)間的開始位于第幾位(設=first_1_pos位),求移位位數(shù)=first_1_pos-(sync_0_len+1+Nid)(等于負值時,表示向前移位,等于正值時,表示向后移位)在圖14的例中,由于first_1_pos=10,所以,移位位數(shù)=10-(9+1+1)=-1由此可知,是向前移1位。
在插入位去除器905中,和實施例1不同,是在同步代碼插入位置±Nid位的區(qū)間中進行插入位去除處理。即,計數(shù)從bit_count mod sync_period=sync_period-Nid到bit_count mod sync_period=sync_0_len-1-3*Nid
區(qū)間的“1”的數(shù)(設=n0),如果n0小于3*Nid,就去除3*Nid+1-n0位的“1”。
在實施例2中,可以用某種形式判定在傳輸路線及存儲媒體中的位附加/消失的區(qū)間時,考慮了位附加/消失的同步檢測處理及位插入處理和位去除處理也可以只在該區(qū)間進行。
在上述實施例1的運動圖象譯碼裝置中,為了進行與傳輸路線/存儲媒體中的位附加/消失對應的同步檢測,也可以在同步檢測器901中和實施例2一樣在同步代碼插入?yún)^(qū)間±Nid位的區(qū)間進行同步檢測。這時,雖然有可能發(fā)生將同步代碼以外的部分錯誤地判定為同步代碼的偽同步,但是,在容易發(fā)生位附加/消失的傳輸路線/存儲媒體中可以抑制由于同步檢測錯誤而引起的譯碼圖像的品質(zhì)劣化,從而可以提高畫質(zhì)。
另外,在可以用某種形式判定在傳輸路線及存儲媒體中發(fā)生位附加/消失的區(qū)間時,這一處理也可以只在該區(qū)間進行,而在除此以外的區(qū)間進行通常的同步檢測。
此外,在上述實施例1和實施例2中,也可以使用表示幀的長度的信息(以下,稱為幀長度信息)節(jié)約保護同步。圖15、圖16和圖17時表示使用幀長度信息POINTER時的代碼串的例子。
在圖15的例中,幀長度信息POINTER和保護該幀長度信息POINTER的糾錯/檢出代碼的檢查位CHKP接續(xù)在同步代碼PSC之后。在幀長度信息POINTER中記錄著前一幀的位數(shù)即表示從前一幀的同步代碼到當前幀的同步代碼的位數(shù)的信息。
在編碼裝置中,計數(shù)1幀的代碼串位數(shù),將其變換為幀長度信息POINTER,進而進行糾錯/檢出編碼,生成檢查位CHKP。并且,如圖15所示的那樣,將它們接續(xù)到下一幀的同步代碼之后,生成代碼串。
另一方面,在譯碼裝置,在用與實施例1和實施例2相同的方法進行同步代碼的檢測后,從代碼串中取出接續(xù)在其后的幀長度信息POINTER和檢查位CHKP,進行糾錯/檢出譯碼,從而將幀長度信息POINTER譯碼。并且,將所譯碼的幀長度信息POINTER與計數(shù)從前一個檢測的同步代碼到當前的同步代碼的位置的位數(shù)而求出的值(幀長度計數(shù)值)進行比較,檢查有無同步代碼的誤檢測。
如果幀長度計數(shù)值與幀長度信息POINTER所示的前一幀的代碼長不同時,有可能發(fā)生了同步代碼的誤檢測,所以,就使用幀長度信息POINTER進行所誤檢測的同步代碼的再檢測。即,認為從當前的同步代碼開始到幀長度信息POINTER所示的位數(shù)的前方有不能檢測的同步代碼。這時從前一個檢測的同步代碼到當前的同步代碼的區(qū)間分割為從前一個同步代碼到幀長度信息POINTER所示的位置的區(qū)間和從該處到當前的同步代碼的區(qū)間的2個幀進行譯碼處理。
但是,由幀長度信息POINTER所示的位數(shù)比從前一個檢測的同步代碼到當前的同步代碼的位置的位數(shù)多時,就認為幀長度信息POINTER錯誤了,從而不進行上述同步再檢測處理。
幀長度信息POINTER和檢查位CHKP的位數(shù)多時,如圖16所示,同步代碼PSC、幀長度信息POINTER和檢查位CHKP也可以涉及多個同步區(qū)間。這時,用以使同步代碼以外的代碼串與同步代碼保持一定的加重平均距離的編碼裝置中的位插入處理和譯碼裝置中的位刪除處理也可以不在幀長度信息POINTER和檢查位CHKP存在的區(qū)間進行。
在圖15和圖16的例中,在同步代碼PSC的后半部包含表示該同步代碼的種類的信息(幀同步代碼、GOB同步代碼的區(qū)別等)時,也可以不僅用糾錯代碼保護幀長度信息POINTER而且可以保護同步代碼PSC的后半部位。這樣,不僅可以正確地檢測同步代碼的位置,而且可以正確地檢測其種類,所以,進一步提高了抗錯誤性。
在圖17的例中,是將幀長度信息POINTER和檢查位CHKP置于幀的最后(下一個幀的同步代碼之前)的例子。這時,在譯碼裝置中,在檢測到下一幀的同步代碼后,就取出其之前的幀長度信息POINTER和檢查位CHKP,進行糾錯/檢出譯碼,通過與圖15和圖16相同的處理,進行同步代碼的再檢測。
在圖15的例中,由于同步代碼只存在于同步代碼插入位置,所以,幀長度信息POINTER也可以記錄用同步代碼插入間隔(=sync_period位)除幀的位數(shù)而得到的值。這樣,便可用很少的位數(shù)表示幀長度。
另外,在實施例1和實施例2中,示出了進行根據(jù)對糾錯/檢出代碼進行編碼的信息的重要性而變化的層次編碼的例子,但是,在幀內(nèi)既可以使用相同的糾錯/檢出代碼也可以不使用糾錯/檢出代碼。這時,通過本實施例所示的用以使同步代碼以外的代碼串與同步代碼保持大于預先決定的值的加重平均距離的位插入處理和與其對應的同步代碼檢測處理比先有方式提高了檢測同步的能力。
另外,在上述各實施例的說明中說明了將運動圖象信號進行高效率壓縮編碼而進行傳輸/存儲的例子,但是,本發(fā)明也可以應用于靜止圖像及聲音、數(shù)據(jù)等的傳輸/存儲。例如,使用正交變換將靜止圖像信號進行高效率壓縮編碼時,可以切換使用糾錯/檢出代碼用以更強地保護變換系數(shù)的低頻成分。在將聲音模型化為驅動源和聲道濾波器進行編碼的方法中,可以切換糾錯/檢出代碼用以更強地保護間距周期及聲道參量等。
(實施例3)下面,說明本發(fā)明的實施例3。本實施例與實施例1和實施例2的不同是不使用糾錯/檢出代碼。
圖18是本實施例的運動圖象編碼裝置的框圖。對與圖1相對應的部分標以相同的符號以與實施例1的不同點為中心進行說明,在本實施例中,輸出編碼裝置200的結構和動作不同。另外,多路器111的基本動作和圖1的多路器111相同,但是,隨著不使用糾錯/檢出代碼,只輸出多路化代碼串201和同步代碼插入要求信號203。
圖19是表示圖18中的輸出編碼裝置200的結構的框圖。該輸出編碼裝置200由計數(shù)輸出代碼串205的位數(shù)的計數(shù)器1701、切換輸出代碼串205的1703、控制切換器1703的切換控制器1704和發(fā)生填充位的填充位發(fā)生器1705構成。
圖20是表示由圖19的輸出編碼裝置200生成的輸出代碼串205的一例的圖。對于與圖4的輸出代碼串對應的代碼字,使用同一符號進行標記。與圖4一樣,同步代碼PSC只周期地插入由每隔一定區(qū)間(sync_period位)而配置的箭頭所示的同步代碼插入位置的某個位置。在圖20中,與圖4不同的是不包含糾錯/檢出代碼的檢查位CHKP。在輸出代碼串205的1幀的最后的部分插入填充位STUFF,用以使同步代碼PSC插入到同步代碼插入位置。填充位STUFF的位數(shù)小于sync_period位。
下面,詳細說明生成這種輸出代碼串205的圖19的輸出編碼裝置200的結構和動作。
計數(shù)器1701從多路器111輸入同步代碼插入要求信號203,作為多路化代碼串201輸入同步代碼301的最初的位時,置位為“1”,輸入同步代碼301的全部位時,就置位為同步代碼長sync_len。然后,計數(shù)器1701從同步代碼301的下一位順序計數(shù)到輸出下一個同步代碼之前的位。
切換控制器1704作為多路化代碼串201輸入從同步代碼的最初的位到下一個同步代碼之前的位時,就將切換器1703切換到多路化代碼串201一側,控制為多路化代碼串201作為輸出代碼串205而輸出。
并且,在1幀的最后的部分,進行用以使下一個同步代碼插入到同步代碼插入位置的位插入(位填充)。多路器111在1幀的多路化代碼串201的輸出結束時輸出下一幀的同步代碼插入要求信號203。接收到該信號后,切換控制器1704將切換器1703切換到填充位發(fā)生器1705一側,將填充位1223作為輸出代碼串205而輸出。該填充位1223既可以使全部位為“1”,也可以全部為“0”,也可以采用“0101...”這樣的特定的組合模式。
下面,說明本實施例的運動圖象譯碼裝置。
圖21是表示與圖18的運動圖象編碼裝置對應的運動圖象譯碼裝置的結構的框圖。對于與圖8相對應的部分標以相同的符號,以與實施例1的不同點為中心進行說明,在本實施例中,輸入譯碼裝置800的結構和動作不同。另外,從輸入譯碼裝置800輸入逆多路器811的信號只是代碼串801和同步代碼檢測信號803,沒有從逆多路器811向輸入譯碼裝置800輸入的信號。
圖22是表示輸入譯碼裝置800的結構的框圖。該輸入譯碼裝置800由檢測輸入代碼串205’中的同步代碼的同步檢測器1901和計數(shù)輸入代碼串205’的位數(shù)的計數(shù)器1902構成。
計數(shù)器1902在譯碼的最初階段復位為“0”,輸入代碼串205’每輸入1位,將計數(shù)值1911計數(shù)為“1”。
在同步檢測器1901中,根據(jù)計數(shù)器1902的計數(shù)值1911只在同步代碼插入位置進行同步代碼的檢測。例如,設同步代碼插入間隔為sync_period、計數(shù)值1911為bit_count、同步代碼的長度為sync_len,則只在0<bit_count mod sync_period≤sync_len時進行同步檢測。這里,A mod B表示用B除A時的余數(shù)。同步檢測器1901檢測到同步代碼時,就輸出同步代碼檢測信號803。
從輸入譯碼裝置輸出的代碼串801是直接輸出輸入代碼串205’,并輸入逆多路器811。以后,和圖21的運動圖象譯碼裝置一樣進行逆多路化處理,進行譯碼的處理。
將幀的最后的填充位STUFF采用預先決定的位組合格式時,在逆多路器811中判斷該填充位STUFF與預先決定的組合格式是否一致,不一致時就判定輸入代碼串205’中有錯誤,也可以進行用于使在實施例1所示的運動圖象編碼裝置中所述的畫質(zhì)劣化不大的處理。
(實施例4)下面,說明本發(fā)明的實施例4。
本實施例的運動圖象編碼裝置的全體結構與圖18的運動圖象編碼裝置相同,輸出編碼裝置的動作和實施例3不同。
圖23是表示圖18中的輸出編碼裝置200的結構的框圖。對于與圖19的輸出編碼裝置相對應的部分標以相同的符號,以它們的差別為中心進行說明,追加了進行用于防止偽同步代碼的位填充處理的位插入器1211。
在位插入器1211中,對多路化代碼串201進行用于防止發(fā)生偽同步的位插入。這是由于在輸出代碼串205中有與同步代碼相同的位組合格式時不能將同步代碼唯一地譯碼,所以,是用于防止該情況的處理。例如,如圖5所示的那樣同步代碼由sync_0_len位的“0”、1位的“1”和表示同步代碼的種類的sync_nb_len位的“×××××”構成時,如果在同步代碼以外的代碼串中插入“1”用以不連續(xù)地出現(xiàn)sync_0_len位以上的“0”,就可以防止發(fā)生偽同步。
同步代碼只插入到同步代碼插入位置。因此,用于防止發(fā)生偽同步的位插入操作只能在同步代碼插入位置進行。因此,根據(jù)計數(shù)輸出代碼串205的總位數(shù)的計數(shù)值1221判斷是否必須進行位插入。設計數(shù)值1221為total_len,則在0<total_len_mod_sync_period≤sync_0_len的區(qū)間計數(shù)多路化代碼串201中的“1”的數(shù),如果在該區(qū)間完全沒有“1”,就插入1位的“1”。這里,A mod B表示用B除A時的余數(shù)。
另外,為了降低由于錯誤而引起同步代碼的誤檢測的概率,可以按如下方式進行位插入。
為了在n位錯誤混入同步代碼中時也檢測同步代碼,在后面所述的運動圖象編碼裝置的輸入編碼裝置中必須判斷與真的同步代碼的加重平均距離小于n的代碼字是同步代碼。但是,如果將同步代碼以外的代碼串直接進行這樣的判斷,有時在同步代碼以外的代碼串中也存在與同步代碼的加重平均距離小于n的位組合格式,這就誤認為位于同步代碼插入位置,從而將其判定為同步代碼。
因此,在位插入器211中,通過按如下方式對多路化代碼串201進行位插入,將位于多路化代碼串201中的同步代碼插入位置的同步代碼以外的代碼串變換為與同步代碼的加重平均距離大于2×n+1的代碼串。
具體而言,就是計數(shù)在0<total_len_mod_sync_period≤sync_0_len-(2×n+1)區(qū)間的“1”的數(shù)(設=n0),如果n0小于2×n+1,就將2×n+1-n0位的“1”插入到多路化代碼串201中。
這樣,進行了位插入后的代碼串1222和圖19的輸出編碼裝置一樣進行幀的最后的區(qū)間的位插入(圖20中的STUFF),并作為輸出代碼串205而輸出。
下面,說明本實施例的運動圖象譯碼裝置。運動圖象譯碼裝置的全體結構和圖21的運動圖象譯碼裝置相同,輸入編碼裝置800的動作和實施例3不同。
圖24是表示輸入譯碼裝置800的結構的框圖。對于與圖22的輸入譯碼裝置相對應的部分標以相同的符號,以與實施例3的差異為中心進行說明,追加了位去除器1905。
輸入代碼串205’輸入插入位去除器1905,進行去除由圖23的輸出編碼裝置的位插入器1211插入的用于防止偽同步代碼的插入位的處理。如前所述,由于位插入只在同步代碼插入位置進行,所以,根據(jù)計數(shù)器1902的計數(shù)值1911判斷同步代碼插入位置。
例如,設同步代碼是圖5所示的代碼字,在位插入器1211中向同步代碼的最初的“000...”的部分進行位插入用以使與同步代碼的加重平均距離大于2×n+1時,從同步代碼插入位置開始計數(shù)sync_0_len-(2×n+1)位的“1”的數(shù),如果n0小于2×n+1,就刪除2×n+1-n0位。
這里,由于插入位定為“1”,所以,在判定為插入位的位為“0”時,就認為錯誤混入了同步代碼插入?yún)^(qū)間。這時,將圖中未示出的誤檢測信號向逆多路器811輸出,和在實施例1中所述的一樣,可以進行使再生圖像不發(fā)生大的劣化的處理。
在圖23的位插入器1211中的位插入處理,也可以向同步代碼以外的全部同步代碼插入?yún)^(qū)間插入預先決定的位數(shù)的插入位。圖25是表示進行這種位插入處理時輸出代碼串205的一例。圖中,SB表示插入的位。
例如,如圖5所示的那樣,同步代碼由sync_0_len位的“0”、1位的“1”和表示同步代碼的種類的sync_nb_len位的“×××××”構成時,就從同步代碼插入?yún)^(qū)間的開始向sync_0_len位的區(qū)間的預先決定的位置插入1位的插入位SB。
插入位SB可以總是采用“1”。另外,也可以從同步代碼插入?yún)^(qū)間的開始根據(jù)sync_0_len位的區(qū)間的位組合格式自適應地決定插入位SB用以使該區(qū)間的“1”的個數(shù)大于1。
此外,通過從同步代碼插入?yún)^(qū)間的開始將插入位SB采用sync_0_len位的區(qū)間的奇偶性,便可避免出現(xiàn)與同步代碼相同的位組合格式,同時可以檢測混入該位組合格式的錯誤。
圖25(b)表示進行了這種位插入處理的輸出代碼串。在該例中,從同步代碼插入位置開始向最初的部分插入1位的插入位SB。該插入位SB決定為從該位和下一位開始與sync_0_len-1位一致的區(qū)間的“1”的數(shù)一定為奇數(shù)。例如,在圖25(b)的左側的例中,插入位SB為“1”。另外,在圖25(b)的右側的例中,從插入位SB的下一位開始即使sync_0_len-1位的區(qū)間全部為“0”,由于插入位SB為“1”,所以,一定是1位以上的“1”進入同步代碼插入?yún)^(qū)間,從而不會發(fā)生和同步代碼相同的位組合格式。另外,由于插入位SB也起奇偶性檢查的作用,所以,可以檢測混入到該區(qū)間的位錯誤。
另外,也可以將插入位SB作為下一個同步代碼插入位置之前的全部位的奇偶性檢查位。但是,為了避免從插入位SB的下一位開始僅在sync_0_len-1位全部為“0”時出現(xiàn)與同步代碼相同的位組合格式,使插入位SB一定為“1”。這樣,便可利用全部位的奇偶性檢查進行錯誤檢測。
為了降低由錯誤而引起的同步代碼的誤檢測的概率,希望插入更多的位數(shù)。例如,為了即使進入了n位的錯誤也能正確地檢測同步,向該區(qū)間的預先決定的位置插入2×n+1位的“1”。
在本實施例中,與上述位插入器1211的動作對應地圖24的位去除器1905的動作也不同。即,在位去除器1905中,進行刪除由位插入器1211進行位插入的預先決定的位置的插入位SB的處理。
這里,將插入位SB總是采用“1”時,在位于輸入代碼串205’中的位插入位置的位是“0”時,就判定為位錯誤,將誤檢測信號(圖中未示出)向逆多路器811輸出,進行用于使譯碼圖像不發(fā)生大的劣化的處理。
在實施例1~實施例4中,多路器111的多路化處理,如圖2所示的那樣,示出了以編碼幀為單位將預測模式信息303、運動矢量信息304和殘差DCT系數(shù)305進行多路化處理的例子,但是,也可以如圖26所示的那樣,按編碼區(qū)域(例如,宏塊、GOB等)單位將預測模式信息303、運動矢量信息304和殘差DCT系數(shù)305進行多路化處理。這時,在圖像標題302和除此以外的信息中可以使用不同的糾錯/檢出代碼,也可以使用相同的糾錯/檢出代碼。或者,可以只在圖像標題中使用糾錯/檢出代碼,也可以在各幀的預先決定的位數(shù)的一部分代碼串中使用糾錯/檢出代碼,也可以完全不使用糾錯/檢出代碼。
另外,不僅可以按幀(圖像)單位進行多路化處理,而且可以按幀的部分區(qū)域或將多個幀集中的層單位進行多路化處理,從而可以向這些各多路化單位(層單位)插入同步代碼。
圖28使表示這種多路化處理的例子。在圖28的例中,對集中了多個編碼塊的宏塊、集中了多個宏塊的GOB、圖像(幀)、集中了多個圖像的會話的4個層進行多路化處理。其中,會話、圖像、GOB的各層使用各自的同步代碼(圖中為SSC、SEC、PSC、GSC)。SSC、SEC、PSC、GSC分別使用不同的代碼,可以區(qū)別檢測到了哪一層的同步代碼。使用圖5所示的同步代碼時,可以用表示同步代碼的種類的sync_nb_len位的部分來區(qū)別這些同步代碼。
進行這種多路化處理時,也可以對會話、圖像、GOB的同步代碼的一部分乃至全部進行和上述實施例的幀同步代碼一樣的處理。圖29時表示進行這種處理的輸出代碼串的一例。如圖所示,在PSC、GSC之前插入了填充位STUFF,SSC、PSC、GSC插入到圖中箭頭所示的同步代碼插入位置。因此,和在上述實施例中對幀同步代碼PSC說明的一樣,提高了各同步代碼的檢測精度。
也可以將與圖15、圖16和圖17的幀長度信息POINTER相同的長度信息附加到會話、圖像、GOB的各同步代碼上。如圖15和圖16所示,對幀長度信息POINTER進行糾錯/檢出代碼的保護時,通過不僅對幀長度信息POINTER而且對表示同步代碼的種類的sync_nb_len位的部分使用糾錯/檢出代碼,不僅提高可以正確地檢測同步代碼的位置的概率,而且提高可以正確地檢測其種類的概率。另外,對會話、圖像、GOB的標題信息(圖中為SH、PH、GF)的一部分或全部也可以使用糾錯/檢出代碼進行保護,這樣,也可以提高各標題信息的抗錯誤的耐性。
如本實施例那樣,進行用于防止偽同步代碼的填充處理時,進行以下的處理也可以使同步代碼插入間隔sync_period小于同步代碼的長度。
首先,說明運動圖象編碼裝置的輸出編碼裝置的處理。這里,如圖5所示,同步代碼采用由sync_0_len位的“0”和1位的“1”構成的代碼字。在圖23的輸出編碼裝置中,設表示從位插入器1211輸出的位數(shù)的計數(shù)值1221為total_len,用同步代碼插入間隔sync_period除total_len的余數(shù)與用sync_period除從同步代碼的最初的“0”的位數(shù)sync_0_len減去1的值的余數(shù)一致時,即total_len mod sync_period=(sync_0_len-1)mod sync_period(1)時,計數(shù)從該時刻的輸出位到(sync_0_len-1)位前的輸出位中的“1”的數(shù)(設為n1),如果完全沒有“1”(即,如果n1=0),就插入1位的“1”。
圖33(a)表示進行了這種處理的輸出代碼串的例子。圖中,方向向下的箭頭表示同步代碼插入位置,同步代碼由23位的“0”(即,sync_0_len=23)和1位的“1”構成。在圖的例中,同步代碼插入間隔sync_period是比同步代碼的長度(=24位)短的8。
圖中,區(qū)間1~4表示計數(shù)上述n1的區(qū)間。在各區(qū)間順序計數(shù)“1”的數(shù)n1,如果n1=0,就向該區(qū)間的下一位插入填充位。在區(qū)間1中,由于n1>0,所以,就不必填充。在區(qū)間2中,由于n1=0,所以,就向該區(qū)間的下一區(qū)間插入1位的填充位3301。在區(qū)間3中,通過插入填充位3301,由于n1=1,所以,就不必插入填充位。
通過進行上述位填充處理,由于在輸出代碼串中的同步代碼以外的部分沒有與同步代碼相同的位組合格式,所以,不會發(fā)生偽同步。
另一方面,為了降低由于傳輸路線錯誤而引起的同步代碼的誤檢測的概率,可以按如下方式進行位插入。
為了即使n位錯誤混入同步代碼時也能正確地檢測同步代碼,可以進行位插入處理以使在位插入1211中輸出代碼串中的同步代碼以外的部分與同步代碼的加重平均距離大于2×n+1。
用同步代碼插入?yún)^(qū)間sync_period除表示圖23的輸出代碼串205的總位數(shù)的計數(shù)值1221total_len的余數(shù)與用sync_period除從同步代碼的最初的“0”的位數(shù)sync_0_len中減去2×n+1的值的余數(shù)一致時,即total_len mod sync_period=(sync_0_len-(2×n+1))mod sync_period(2)時,計數(shù)從該時刻的輸出位到(sync_0_len-(2×n+1))位前的輸出位中的“1”的數(shù)(設為n1),如果“1”的數(shù)小于(2×n+1),即n1<2×n+1就插入(2×n+1-n1)位的“1”。
使用從圖5所示的多位的“0”開始的同步代碼時,如果同步代碼之前的位串中的“1”的數(shù)少,有時會發(fā)生該部分的同步誤檢測。為了防止發(fā)生這種誤檢測,可以輸出幀的最后的區(qū)間的位插入(圖20中為STUFF)以使從同步代碼到其之前的同步代碼插入位置的sync_period位的區(qū)間的“1”的位數(shù)大于2×n+1位。
為此,可以使用一定包含2×n+1位以上的“1”的STUFF,或者可以根據(jù)輸出代碼串決定STUFF。即,可以決定STUFF以使包含STUFF的輸出代碼串中的同步代碼之前的sync_period位的“1”的位數(shù)大于2×n+1。
圖33(b)表示進行了這種處理的輸出代碼串的例子。圖中,區(qū)間1~4表示計數(shù)上述n1的區(qū)間。在各區(qū)間順序計數(shù)“1”的數(shù)n1,如果n1<2×n+1,就向該區(qū)間的下一位插入填充位。在區(qū)間2中,由于n1=1,所以,在該區(qū)間的下一區(qū)間插入(2×n+1)-1=2位的填充位3311。在區(qū)間3中,由于通過插入填充位3311而n1=3,所以,不必插入填充位。
此外,為了防止在同步代碼之前的部分的同步代碼誤檢測,按以下方式?jīng)Q定STUFF。設STUFF之前的位為3312。由于從該溫柔312之前的同步代碼插入位置到其后的同步代碼插入位置的sync_period位間(區(qū)間5)的“1”的數(shù)只有1位,所以,使用圖5那樣的多個“0”連續(xù)的同步代碼時,在該部分便有可能發(fā)生同步誤檢測。因此,使插入同步代碼的位置移位到下一個同步代碼插入位置,輸出包含多個“1”的STUFF3313。這樣,由于同步代碼之前的sync_period位區(qū)間(區(qū)間6)包含2×n+1位以上的“1”,所以,可以防止同步誤檢測。
通過進行上述那樣的位填充處理,可以使在輸出代碼串中的同步代碼以外的部分與同步代碼的加重平均距離大于2×n+1,所以,減少了同步誤檢測的概率。
下面,說明運動圖象譯碼裝置的輸入譯碼裝置的處理。在圖24的位去除器1905中,設表示輸入的代碼串的位數(shù)的計數(shù)值1911為total_len,在total_len成為滿足1的條件的值時,計數(shù)從該時刻的輸入位到(sync_0_len-1)位前的輸入位中的“1”的數(shù)(設為n1),如果完全沒有“1”,即,如果n1=0,就刪除1位。
為了在n位錯誤混入同步代碼時也可以檢測同步代碼,在位插入器1211中進行位插入處理以使輸出代碼串中的同步代碼以外的部分與同步代碼的加重平均距離大于2×n+1時,可以進行如下的處理。在total_len成為滿足式(2)的值的時刻,計數(shù)從該時刻的輸入位到(sync_0_len-(2×n+1))位之前的輸出位中的“1”的數(shù)(設為n1),如果“1”的數(shù)小于(2×n+1),即,如果n1<(2×n+1)就刪除(2×n+1-n1)位。
在輸出編碼裝置和輸入譯碼裝置中,通過進行上述那樣的處理將同步代碼插入間隔sync_period采用小于同步代碼的長度的短的位數(shù),可以減少填充位STUFF的位數(shù),提高編碼效率。特別是在同步代碼的長度長時或插入多個同步代碼時,該填充位STUFF的位數(shù)減少將大大提高編碼效率。例如,如運動圖象編碼的GOB/限幅那樣,在將畫面分割為1個~多個宏塊、或各宏塊行而按各單位插入同步代碼的方式中,由于插入多個同步代碼,所以,STUFF的位數(shù)減少將使編碼效率更高。
另外,如圖28所示的那樣進行多個層結構的多路化處理時,可以根據(jù)層不同而使用不同長度的同步代碼。
圖34(a)時表示這種同步代碼的例子。在4種同步代碼中,SSC、SEC、PSC都由23位的“0”、1位的“1”和表示同步代碼的種類的8位共計32位構成。另一方面,GOB層的同步代碼GSC是由16位的“0”和1位的“1”構成的17位的同步代碼,是比其他同步代碼短的代碼字。
這樣,只將GSC采用短的代碼字,是由于GOB是由1個~多個宏塊(MB)構成的在畫面內(nèi)分割為小區(qū)域的編碼單位,通常,GOB層的同步代碼與其他同步代碼相比,數(shù)量多,通過使同步代碼字長度縮短,可以減少輸出代碼串的代碼量。另外,通過這樣處理,如果是相同的代碼量,就可以輸出更多的GSC,從而可以在畫面內(nèi)分割為更細的GOB區(qū)域進行編碼,這樣,便可提高發(fā)生傳輸路線錯誤時的再生圖像的品質(zhì)。
也可以進行在實施例4中說明的那樣的用于防止偽同步的處理,即可以進行位填充處理以使在同步代碼以外的代碼串中不發(fā)生與同步代碼相同的位組合格式。如果進行用于降低由于傳輸路線錯誤引起的同步代碼的誤檢測的概率的位填充處理,例如對保證不發(fā)生與位長度長的同步代碼(在圖34(a)的例中為SSC、SEC、PSC)相同的位組合格式的位串也進行位填充處理以使不發(fā)生與最短的同步代碼(在圖34(a)的例中為GSC)相同的位組合格式,便可不發(fā)生與所有的同步代碼相同的位組合格式。該處理可以對全部層的代碼串進行,也可以對比使用最短的代碼的層低的低位的層(在圖示的例中為GOB層、宏塊層)的代碼串進行,也可以對比該層高一位的層以下的層(圖像層、GOB層、宏塊層)的代碼串進行。此外,也可以只對預先決定的層的代碼串進行該處理。
為了即使發(fā)生傳輸路線錯誤也容易識別長度不同的同步代碼,可以按如下方式進行同步代碼字及其前后的處理。
(1)使用由多位的“0”和接續(xù)其后的“1”構成的同步代碼時,在長的代碼字和短的代碼字中,可以使從該“1”的同步代碼插入位置看的相對位置不同。在圖34(b)的例中,PSC的“1”3411和GSC的“1”3412位于不同的位置,其他同步代碼中的相同位置的位(與3411對應的3413、與3412對應的3414)都為“0”。這樣,由于同步代碼和該部分串的加重平均距離增大,所以,即使發(fā)生傳輸路線錯誤,也可以很容易識別不同的同步代碼。
(2)可以在長度短的同步代碼之前插入填充位。例如,如圖中3401所示的那樣,通過在長度短的GSC之前插入由1個~多個“1”構成的填充位3401,便可增大GSC與其他同步代碼的部分串的加重平均距離。
(3)可以在長度短的同步代碼之后插入填充位。例如,可以在GSC之后進行位插入3402以使與識別長的同步代碼中的同步代碼的種類的部分的加重平均距離增大。
(實施例5)下面,說明本發(fā)明的實施例5。
本實施例的運動圖象編碼裝置和運動圖象譯碼裝置的全體結構與實施例1相同,在輸出編碼裝置200和輸入譯碼裝置800的1同步區(qū)間的開始和最后部分的處理與此前的實施例不同。
圖27(a)、(b)、(c)使表示本實施例的運動圖象編碼裝置的輸出代碼串205的一例的圖。該輸出代碼串205在同步代碼PSC之后進入前一幀(幀n-1)的代碼串的一部分2701,有該代碼串2701與當前幀(n幀)的代碼串的邊界2703(當前幀的代碼串的起點),換言之,有表示多路化代碼串的邊界的指針信息2702(SA),與此相應地,與圖4的輸出代碼串不同的是沒有1幀的最后的填充位(在圖4中為STUFF)。
在運動圖象編碼裝置內(nèi)的輸出編碼裝置200中,在各同步代碼插入位置檢查該幀的其余的代碼串的位數(shù)resid_bit。resid_bit和同步代碼PSC以及指針信息SA的位數(shù)之和比同步代碼插入間隔sync_period位少時,在向輸出代碼串205中輸出該幀的其余的代碼串之前,輸出同步代碼PSC。其次,輸出指針信息SA(這時,表示resid_bit),然后,輸出其余的代碼串2701。最后,輸出下一幀的代碼串。
在運動圖象譯碼裝置內(nèi)的輸入譯碼裝置800中,在各同步代碼插入位置進行同步代碼的檢測,檢測到同步代碼時,就在其后接續(xù)上指針信息SA和幀的其余的信息進行處理。
以圖27中的幀n-1與幀n的邊界部為例進行說明,在同步代碼PSC之前的2704的譯碼處理結束后,就在其后的同步代碼插入?yún)^(qū)間檢測同步代碼,檢測到同步代碼時,就將指針信息2702譯碼,并求幀n-1的代碼串還有幾位。通過上述處理,從指針信息之后的代碼串中取出由指針信息所示的位數(shù)(在圖27中為2703之前),將其接續(xù)在2707之后,輸出代碼串801。其后的代碼串(在圖27中從2903開始)在下一幀即幀n進行處理。
在本實施例中,如圖27(a)所示,可以對輸出代碼串的一部分或全部進行糾錯/檢出編碼。這時,糾錯/檢出代碼的種類可以全部相同,也可以使用不同的代碼。
另外,如圖27(b)所示,也可以不進行糾錯/檢出編碼。
此外,如圖27(c)所示,也可以插入圖15還圖16所示的表示1幀的代碼串位數(shù)的幀長度信息POINTER。這時,幀長度信息POINTER也可以表示從該幀的同步代碼PSC到下一幀的同步代碼PSC的位數(shù)。
如圖27(a)所示的那樣進行糾錯/檢出編碼時,從同步代碼PSC到下一個檢查位CHK的部分的糾錯/檢出編碼,將指針信息SA、幀n-1的其余的代碼串2701和2703以后的幀n的代碼串集中作為1個信息位進行糾錯/檢出編碼。
指針信息SA可以作為進行糾錯/檢出編碼的信息。這時,也可以將同步代碼PSC(或其一部分)、幀長度信息POINTER和指針信息組合進行糾錯/檢出編碼。
下面,說明填充位STUFF的具體例子。
圖30(a)、(b)是表示作為上述填充位STUFF的具體例的填充位STUFF的代碼表的例子的圖。圖30(a)、(b)的特征是都可以從輸出代碼串的反方向唯一地進行譯碼,這樣,便可唯一地特定填充位STUFF的開始位置。因此,通過將填充位STUFF之前的代碼串的譯碼結束位置與填充位STUFF的開始位置進行比較,可以檢測混入到代碼串中的錯誤,同時,在應用于根據(jù)同步代碼沿反方向進行譯碼的編碼方式時,可以特定反方向譯碼的開始地點。
此外,示于圖30(a)、(b)的代碼表所示的填充位STUFF,其開始的位一定為“0”,可能由于后面所述的簡易的譯碼引起誤檢測。
圖31是表示包含圖30(a)、(b)的代碼表所示的填充位STUFF的代碼串的譯碼處理的例子的圖。在圖31中,示出了同步代碼插入位置之前的填充位的例子,但是,也可以在除此以外的任意的同步代碼插入位置之前插入填充位進行同樣的處理。在圖31中,箭頭3101~3103是按順方向進行譯碼時的填充位STUFF之前的代碼串(用“×××...”表示)的譯碼結束位置的例子,箭頭的右端表示譯碼結束位置。錯誤未混入代碼串,可以正常地進行譯碼時,如箭頭3101所示的那樣,填充位STUFF之前的代碼串的譯碼結束位置與填充位STUFF的開始位置一致。
另一方面,錯誤混入到代碼串中時,填充位STUFF之前的代碼串的譯碼結束位置如箭頭3102、3103所示的那樣移位到填充位STUFF的開始位置。這時,就判定有錯誤混入到代碼串中。
在譯碼裝置中,填充位STUFF之前的代碼串的譯碼結束時,在下一個同步代碼插入位置之前讀入填充位STUFF,并判斷它與圖30(a)、(b)所示的代碼表的代碼是否一致。如果填充位STUFF與代碼表的哪一個代碼都不一致時,就判定為有錯誤。
判定填充位STUFF與代碼表一致時,也可以容許少數(shù)的位錯誤。這樣,便可降低錯誤混入填充位STUFF時的錯誤的誤檢測。
圖30(a)的代碼表一定以“0”開始,后續(xù)的位為“1”。因此,也可以只判斷填充位STUFF之前的代碼串的譯碼結束位置的下一位是否為“0”而檢測錯誤,或者,只根據(jù)開始的“0”和后續(xù)的幾個“1”檢測錯誤。這樣,將降低若干誤檢測精度,從而減少譯碼所需要的處理量。這樣,在所有的填充位STUFF使用從由特定的位乃至多個位構成的特定的位組合格式開始的代碼表時,便可簡化譯碼處理。
此外,圖30(a)、(b)的代碼表所示的填充位STUFF包含多個“1”的位,如圖5所示的那樣,由于包含多個“0”的同步代碼和與其一部分的加重平均距離增大,所以,有發(fā)生偽同步的概率低的優(yōu)點。具體而言,在圖30(a)的代碼表中,只是填充位STUFF的開始的位全部為“0”,由于除此以外的位全部為“1”,所以,全部為“0”的同步代碼和與其一部分的加重平均距離成為(填充位STUFF的長度-1)。另外,在圖30(b)的代碼表中,只是填充位STUFF的開始和最后的位為“0”,由于除此以外的位全部為“1”,所以,同步代碼和與其一部分的加重平均距離成為(填充位STUFF的長度-2)。這樣,通過選擇填充位STUFF和同步代碼與其一部分的加重平均距離大于指定值例如大于(填充位STUFF的長度-2),即使錯誤混入代碼串,也難于發(fā)生偽同步代碼。
下面,使用圖32說明該效果。圖32(a-0)、(b-0)分別是表示使用通常的填充位(所有的位為“0”)和圖30(a)的代碼表所示的填充位STUFF時的代碼串的例子,(a-1)、(b-1)分別是表示(a-0)、(b-0)中混入錯誤時的例子。由圖32(a-1)可知,在所有的位為“0”的通常的填充位中,只混入了1位的錯誤,如(a-1)的虛線所示的那樣,由于發(fā)生與同步代碼相同的位組合格式,所以,將發(fā)生偽同步。與此相反,圖30(a)的代碼表所示的填充位STUFF,如圖32(b-2)所示的那樣,即使混入了錯誤,由于沒有成為和同步代碼相同的位組合格式,所以,不會發(fā)生偽同步。
這樣,本實施例的填充位便可很容易地檢測代碼串的錯誤,同時,即使錯誤混入了代碼串,也難于發(fā)生偽同步代碼,從而具有很強的抗錯誤耐性的優(yōu)點。
另外,本實施例的填充位可以從反方向唯一地進行譯碼,由于可以特定其開始位置即填充位STUFF之前的代碼串的結束位置,所以,信息代碼串在既可以從順方向也可以從反方向進行譯碼的代碼之后時,如圖31的箭頭3104所示的那樣,可以將STUFF之前的代碼串從反方向進行譯碼。
在上述實施例中,填充位STUFF可以按如下方式?jīng)Q定。
(1)如圖5所示的那樣同步代碼包含sync_0_len位的“0”時,通過使填充位STUFF的全部乃至至少同步代碼插入位置的全部位為“1”,便可增大同步代碼的“0”的部分與填充位STUFF的加重平均距離。因此,通過這樣處理,便可減少錯誤混入填充位STUFF而發(fā)生偽同步的概率。
(2)填充位STUFF也可以采用表示其長度的代碼字。在譯碼裝置中,根據(jù)填充位STUFF以外的代碼串的譯碼結束的地點判斷STUFF的長度,同時,進行STUFF的譯碼,并將STUFF的長度信息譯碼。這時,如果兩者不一致時,就可以判定錯誤進入到了代碼串中。
另外,填充位STUFF的代碼字也可以用二進制數(shù)表示其長度。例如,STUFF為5位時,也可以采用二進制數(shù)表示“5”的“00101”?;蛘?,也可以將取二進制數(shù)表示的“1”的補數(shù)或“2”的補數(shù)的值作為填充位STUFF的代碼字,這樣,由于減少了STUFF中的“0”的位數(shù),所以,可以和在(1)中所述的一樣抑制偽同步的發(fā)生。
(3)使用不僅可以從順方向而且可以從反方向進行譯碼的代碼字進行編碼時,在譯碼裝置中,就必須從幀的結束地點開始將填充位STUFF從反方向進行譯碼并知道其開始地點(STUFF與其他代碼字的邊界地點)。這時,例如可以將STUF F如“01111111”那樣決定為以1位乃至多個位的“0”開始而其余的位為“1”的代碼字。這樣,如果將STUFF從反方向進行譯碼并探索有“0”的位置,就可以將該地點唯一地判定為STUFF的開始地點。另外,在該例中,填充位STUFF的開始部分以外的位為“1”,可以和在(1)中所述的一樣減少發(fā)生偽同步的概率。
(4)填充位STUFF也可以采用輸出代碼串的一部分或全部位的糾錯/檢出代碼的檢查位或奇偶性檢查位等。這樣,便可進行混入到輸出代碼串中的位錯誤的糾錯/檢出。
如上例所述的那樣,通過暗示預先決定的規(guī)則生成填充位STUFF,在譯碼裝置中,將輸入代碼串中的填充位STUFF與其生成規(guī)則進行對照,如果判定違反其生成規(guī)則時,就可以判定錯誤混入到了輸入代碼串中。這樣,在運動圖象譯碼裝置中,便可進行使再生圖像不發(fā)生大的劣化的處理,從而可以提高錯誤混入輸入代碼串中時的再生圖像的品質(zhì)。
此外,在上述實施例中,同步代碼插入間隔sync_period也可以按如下方式?jīng)Q定。
(1)使用糾錯/檢出代碼時,如果使同步代碼插入間隔sync_period大于在譯碼裝置中進行同步檢測的最小的位數(shù)即同步代碼的長度與糾錯/檢出代碼的檢查位的最大值之和就足夠了。由于幀的最后的填充位STUFF的位數(shù)的平均值是sync_period/2,所以,通過使sync_period成為該可以進行同步檢測的最小位,便可減少填充位STUFF的位數(shù),從而可以提高編碼效率。
(2)不使用糾錯/檢出代碼時,如果使同步代碼插入間隔sync_period大于在譯碼裝置中進行同步檢測的最小的位數(shù)即同步代碼的長度就足夠了。由于幀的最后的填充位STUFF的位數(shù)的平均值為sync_period/2,所以,通過使sync_period成為該可以進行同步檢測的最小位,便可減少填充位STUFF的位數(shù),從而可以提高編碼效率。
(3)如圖15、圖16、圖17和圖27所示的那樣,使用幀長度信息POINTER時,也可以使同步代碼插入間隔sync_period比同步代碼的長度短。這樣,便可減少填充位STUFF的位數(shù),從而可以提高編碼效率。
(4)在傳輸線路/存儲媒體中分割為指定的間隔的包或信元進行傳輸/存儲時,也可以使同步代碼插入間隔sync_period與包或信元的間隔一致或成為該間隔的約數(shù)。這樣,由于包或信元的開頭一定為同步代碼插入位置,所以,發(fā)生包損耗或信元損耗時也可以檢測同步代碼。
(5)同步代碼插入間隔sync_period最好比1幀的最小需要的位數(shù)短。這樣,便可減少填充位STUFF的位數(shù),從而可以提高編碼效率。
(實施例6)下面,說明本發(fā)明的實施例6。
圖35是表示本實施例的運動圖象編碼裝置的輸出代碼串的一例的圖。在該輸出代碼串中,為了降低由于錯誤而引起的同步代碼的誤檢測概率,進行在上述實施例中所述的位插入處理。另外,標題信息等的信息進入預先決定的位置或從同步代碼相對地看預先決定的位置。
圖35(a)是進行位插入處理之前的代碼串,(b)是進行位插入處理后的輸出代碼串。圖中,斜線部分3201、3202、3261、3262是進入預先決定的位置(從同步代碼相對地看預先決定的位置)的信息,空心箭頭3211、3212是進入該信息的位置。圖35(b)中的代碼串的信息3261、3262分別與(a)的代碼串的信息3201、3202相當,根據(jù)情況不同從代碼串(a)向代碼串(b)變換時,有時對這些信息也進行變換(即,從信息3201向信息3261的變換和從信息3202向信息3262的變換)。
圖35(b)中的3203是通過位插入處理而插入的位。由于通過該位插入處理而后續(xù)在插入位之后的位串向后移位了,所以,為了使進入指定的位置的信息進入恒定位置,進行使該信息之前的代碼串的一部分向后移動的處理。例如,設從信息3201當前一個同步代碼3205開始的插入位的數(shù)的總和為Ns1,可以將信息3201之前的圖35(a)中的符號3221所示的Ns1位移動到信息3201之后的圖35(b)中的符號3231的部分。
在信息3201、3202中包含表示代碼串中的特定的位置的指針等信息時,也可以進行將其變換的處理。具體而言,例如在信息3201中包含表示由箭頭3241所示的位置的信息時,就變換為表示信息3261中的位置的信息,用以根據(jù)該位置指示由插入位的數(shù)Ns1之后的箭頭3251所示的位置。
權利要求
1.一種譯碼方法,包括按包含有將對圖像信號壓縮編碼后生成的多種可變長度代碼針對多個層中的每一個層進行多路化所得到的多路化代碼串的輸入代碼串中的預先周期性確定的多個同步代碼插入位置,檢測同步代碼;基于由上述同步代碼檢測單元檢測出的同步代碼位置,對所述輸入代碼串中的多路化代碼串進行逆多路化,生成可變長度代碼;以及對所生成的可變長度代碼進行譯碼后輸出再生圖像信號。
2.一種譯碼裝置,包括按包含有將對圖像信號壓縮編碼后生成的多種可變長度代碼針對多個層中的每一個層進行多路化所得到的多路化代碼串的輸入代碼串中的預先周期性確定的多個同步代碼插入位置,檢測同步代碼的同步代碼檢測單元;基于由上述同步代碼檢測單元檢測出的同步代碼位置,對所述輸入代碼串中的多路化代碼串進行逆多路化,生成可變長度代碼的逆多路化單元;以及對所生成的可變長度代碼進行譯碼后輸出再生圖像信號的譯碼單元。
3.根據(jù)權利要求2所述的譯碼裝置,其中,所述多路化代碼串中所述可變長度代碼按照所述圖像信號的幀單位被多路化,所述逆多路化單元按所述幀單位對所述多路化代碼串進行逆多路化。
4.根據(jù)權利要求2所述的譯碼裝置,其中,所述多路化代碼串中所述可變長度代碼按照所述圖像信號的一幀的部分區(qū)域單位被多路化,所述逆多路化單元按所述部分區(qū)域單位對所述多路化代碼串進行逆多路化。
5.根據(jù)權利要求2所述的譯碼裝置,其中,所述多路化代碼串中所述可變長度代碼按照所述圖像信號的幀單位被多路化;所述同步代碼檢測單元按位于緊鄰按所述多路化代碼串的所述幀單位進行多路化后的各多路化單位的結尾部分之前或之后的同步代碼插入位置,檢測所述同步代碼;以及所述逆多路化單元按所述幀單位對所述多路化代碼串進行逆多路化。
6.根據(jù)權利要求2所述的譯碼裝置,其中,所述多路化代碼串中所述可變長度代碼按照所述圖像信號的一幀的部分區(qū)域單位被多路化;所述同步代碼檢測單元在位于緊鄰按所述多路化代碼串的所述部分區(qū)域單位進行多路化后的各多路化單位的結尾部分之前或之后的同步代碼插入位置處,檢測所述同步代碼;以及所述逆多路化單元按所述部分區(qū)域單位對所述多路化代碼串進行逆多路化。
7.根據(jù)權利要求2所述的譯碼裝置,進一步包括代碼串變換單元,該代碼串變換單元將在所述輸入代碼串的所述同步代碼插入位置上被變換為與所述同步代碼的加重平均距離等于或大于預定值的該同步代碼以外的代碼串變換成原代碼串。
8.根據(jù)權利要求2所述的譯碼裝置,其中,所述輸入代碼串中插入了與所述同步代碼及其一部分之間的加重平均距離大于或等于預定值的填充位。
9.根據(jù)權利要求8所述的譯碼裝置,其中,所述填充位被配置在緊鄰所述輸入代碼串中的所述同步代碼之前。
10.一種譯碼方法,包括按包含有將對圖像信號壓縮編碼后生成的多種可變長度代碼針對多個層中的每一個層進行多路化所得到的多路化代碼串的輸入代碼串中的預先周期性確定的多個同步代碼插入位置,檢測根據(jù)上述層而不同的長度的同步代碼,基于由同步代碼檢測單元檢測出的同步代碼位置,對所述輸入代碼串中的多路化代碼串進行逆多路化,生成可變長度代碼;以及對所生成的可變長度代碼進行譯碼后輸出再生圖像信號。
11.一種譯碼裝置,包括同步代碼檢測單元,用于按包含有將對圖像信號壓縮編碼后生成的多種可變長度代碼針對多個層中的每一個層進行多路化所得到的多路化代碼串的輸入代碼串中的預先周期性確定的多個同步代碼插入位置,檢測根據(jù)上述層而不同的長度的同步代碼,逆多路化單元,用于基于由所述同步代碼檢測單元檢測出的同步代碼位置,對所述輸入代碼串中的多路化代碼串進行逆多路化,生成可變長度代碼;以及譯碼單元,用于對所生成的可變長度代碼進行譯碼后輸出再生圖像信號。
12.根據(jù)權利要求11所述的譯碼裝置,其中,所述多路化代碼串中所述可變長度代碼按照所述圖像信號的幀單位被多路化,所述逆多路化單元按所述幀單位對所述多路化代碼串進行逆多路化。
13.根據(jù)權利要求11所述的譯碼裝置,其中,所述多路化代碼串中所述可變長度代碼按照所述圖像信號的一幀的部分區(qū)域單位被多路化,所述逆多路化單元按所述部分區(qū)域單位對所述多路化代碼串進行逆多路化。
14.根據(jù)權利要求11所述的譯碼裝置,其中,所述多路化代碼串中所述可變長度代碼按照所述圖像信號的幀單位被多路化;所述同步代碼檢測單元按位于緊鄰按所述多路化代碼串的所述幀單位進行多路化后的各多路化單位的結尾部分之前或之后的同步代碼插入位置,檢測所述同步代碼;以及所述逆多路化單元按所述幀單位對所述多路化代碼串進行逆多路化。
15.根據(jù)權利要求11所述的譯碼裝置,其中,所述多路化代碼串中所述可變長度代碼按照所述圖像信號的一幀的部分區(qū)域單位被多路化;所述同步代碼檢測單元按位于緊鄰按所述多路化代碼串的所述部分區(qū)域單位進行多路化后的各多路化單位的結尾部分之前或之后的同步代碼插入位置,檢測所述同步代碼;以及所述逆多路化單元按所述部分區(qū)域單位對所述多路化代碼串進行逆多路化。
16.根據(jù)權利要求11所述的譯碼裝置,進一步包括代碼串變換單元,該代碼串變換單元將在所述輸入代碼串的所述同步代碼插入位置上被變換為與所述同步代碼的加重平均距離等于或大于預定值的該同步代碼以外的代碼串變換成原代碼串。
17.根據(jù)權利要求11所述的譯碼裝置,其中,所述輸入代碼串中插入了與所述同步代碼及其一部分之間的加重平均距離大于或等于預定值的填充位。
18.根據(jù)權利要求17所述的譯碼裝置,其中,所述填充位被配置在緊鄰所述輸入代碼串中的所述同步代碼之前。
全文摘要
為了解決在將糾錯/檢出編碼及使用同步代碼的同步恢復方法進行組合使用的編碼裝置中由同步代碼的誤檢測而引起的偽同步或同步偏離的問題,本發(fā)明提供一種編碼裝置和編碼方法。具有將輸入的多路化代碼串(201)編碼為由信息位和檢查位構成的糾錯/檢出代碼的編碼部(212)和將同步代碼插入到代碼串(201)中預先決定的周期性的多個同步代碼插入位置中的某一個位置、同時將信息位配置到代碼串中的任意的位置而將檢查位配置到代碼串(201)中同步代碼插入位置以外的位置從而組合成輸出代碼串(205)的代碼串組合部(213)。
文檔編號H03M7/30GK1913425SQ20061009389
公開日2007年2月14日 申請日期1997年3月18日 優(yōu)先權日1996年3月18日
發(fā)明者菊地義浩, 渡邊敏明, 馱竹健志, 中條健, 永井剛 申請人:株式會社東芝
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1