JP2010136279A - 符号化装置、復号装置、生成行列の作成方法及びコンピュータプログラム - Google Patents
符号化装置、復号装置、生成行列の作成方法及びコンピュータプログラム Download PDFInfo
- Publication number
- JP2010136279A JP2010136279A JP2008312408A JP2008312408A JP2010136279A JP 2010136279 A JP2010136279 A JP 2010136279A JP 2008312408 A JP2008312408 A JP 2008312408A JP 2008312408 A JP2008312408 A JP 2008312408A JP 2010136279 A JP2010136279 A JP 2010136279A
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- basic
- row
- submatrix
- same
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 350
- 238000000034 method Methods 0.000 title claims description 47
- 238000004590 computer program Methods 0.000 title claims description 12
- 239000000470 constituent Substances 0.000 claims description 6
- 230000007547 defect Effects 0.000 claims description 5
- 230000007423 decrease Effects 0.000 abstract description 6
- 238000004364 calculation method Methods 0.000 abstract description 5
- 230000007812 deficiency Effects 0.000 abstract description 5
- 238000012423 maintenance Methods 0.000 abstract 1
- 230000005540 biological transmission Effects 0.000 description 26
- 230000008569 process Effects 0.000 description 22
- 238000004891 communication Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000009897 systematic effect Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 230000008030 elimination Effects 0.000 description 3
- 238000003379 elimination reaction Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Error Detection And Correction (AREA)
Abstract
【課題】 生成行列の冗長部分の「1」を少なくしても欠損補償能力の低下を抑制でき、その欠損補償能力の維持と演算時間の低下の両立を図る。
【解決手段】 欠損補償符号化又は復号に用いる生成行列Aの冗長部分A2を、分割数Gと同次数の正方行列である部分行列Jを構成単位とする、次の(1)及び(2)の基本行列及び行置換行列を含む2次元配列で構成する。含まれる「1」の数が同じである行列で対角成分以外の「1」の位置が重複しない複数種類の基本行列を、同じ縦列にならないように各横列に配置し、同じ基本行列から派生する複数種類の行置換行列を、当該基本行列と同じ横列に配置する。
(1)基本行列:「1」の位置が三角行列となるように設定された部分行列J
(2)行置換行列:基本行列の行順序を入れ替えた関係を有する部分行列J
【選択図】 図4
【解決手段】 欠損補償符号化又は復号に用いる生成行列Aの冗長部分A2を、分割数Gと同次数の正方行列である部分行列Jを構成単位とする、次の(1)及び(2)の基本行列及び行置換行列を含む2次元配列で構成する。含まれる「1」の数が同じである行列で対角成分以外の「1」の位置が重複しない複数種類の基本行列を、同じ縦列にならないように各横列に配置し、同じ基本行列から派生する複数種類の行置換行列を、当該基本行列と同じ横列に配置する。
(1)基本行列:「1」の位置が三角行列となるように設定された部分行列J
(2)行置換行列:基本行列の行順序を入れ替えた関係を有する部分行列J
【選択図】 図4
Description
本発明は、生成行列を用いてそれぞれ欠損補償符号化及び復号を行う符号化装置及び復号装置と、その生成行列の作成方法と、コンピュータプログラムに関する。
より具体的には、欠損補償符号化及び復号に用いる生成行列の冗長部分と、その効率的な作成する方法に関する。
より具体的には、欠損補償符号化及び復号に用いる生成行列の冗長部分と、その効率的な作成する方法に関する。
例えば、ユーザの要求に応じて、映画、テレビジョン放送、コンサート等の様々な映像データを、ネットワークを介してストリーミング配信するビデオオンデマンドと呼ばれる映像配信システムが普及している。
上記ビデオオンデマンドの映像配信システムでは、映像データを送信装置からパケット単位でネットワーク上へ送出し、送出されたパケットをセットトップボックス等よりなる受信装置で受信し、受信した一連のパケットに含まれる映像データに基づいて映像データを出力する(例えば、特許文献1参照)。
上記ビデオオンデマンドの映像配信システムでは、映像データを送信装置からパケット単位でネットワーク上へ送出し、送出されたパケットをセットトップボックス等よりなる受信装置で受信し、受信した一連のパケットに含まれる映像データに基づいて映像データを出力する(例えば、特許文献1参照)。
このような映像配信システムでは、送信装置から送出されたパケットがネットワークを転送中に欠損する場合がある。パケットに欠損が生じるとそのパケットに含まれる映像データが欠落するので、受信装置側で出力される映像に乱れが生じる。
そこで、転送中に欠損したパケットに含まれる映像データを補償する方法として、組織符号や非組織符号(例えば、LT符号とRaptor(TM)符号)による欠損補償符号化及び復号方式が採用されている。
そこで、転送中に欠損したパケットに含まれる映像データを補償する方法として、組織符号や非組織符号(例えば、LT符号とRaptor(TM)符号)による欠損補償符号化及び復号方式が採用されている。
上記方式は、FEC(Forward Error Correction:前方誤り訂正)技術の一つであり、本来の映像データ(オリジナルデータ)を所定長のブロック単位に分割し、ブロック単位に分割した情報データに冗長データを付加することで欠損箇所を補償可能とする欠損補償符号化を行い、符号化されたデータを送信装置から送出する。
他方、受信装置では、受信した伝送データからブロック単位のデータを生成し、このブロック単位のデータに対して欠損を補償する欠損補償復号を行う。
他方、受信装置では、受信した伝送データからブロック単位のデータを生成し、このブロック単位のデータに対して欠損を補償する欠損補償復号を行う。
すなわち、より具体的には、符号化機能を有する送信装置での欠損補償符号化(エンコード処理)において、生成行列と呼ばれるマトリックスを情報データ(情報ベクトル)に掛けることで符号化データ(符号化ベクトル)が生成され、かつ、復号機能を有する受信装置での欠損補償復号(デコード処理)においては、通信路を経て受信した符号化データに対して、送信側と同じ生成行列を係数とした連立方程式をガウス消去法等の解法で解くことにより、情報データが復元される。
符号化データを情報ビットと冗長ビットとからなる組織符号で構成する場合には、上記生成行列として、単位行列部分と冗長部分とで構成されたものが使用される。
かかる組織化された生成行列では、単位行列部分を除いた冗長部分(パリティ部分)の行重み(生成行列の行内に存在する「1」の数)を少なくすると、欠損補償符号化及び復号の演算時間を低減することが可能である。
かかる組織化された生成行列では、単位行列部分を除いた冗長部分(パリティ部分)の行重み(生成行列の行内に存在する「1」の数)を少なくすると、欠損補償符号化及び復号の演算時間を低減することが可能である。
しかし、生成行列の冗長部分での行重みを少なくすると、生成行列における符号化データの欠損対応部分を除いた残りの行列(以下、残余生成行列ということがある。)の階数(rank)が、当該行列の列数未満になる確率が高くなる。
つまり、符号化データの欠損によってフルランクではない残余生成行列が得られる確率が高くなるため、行重みが減少すると欠損補償(誤り訂正)能力が低下してしまう。
つまり、符号化データの欠損によってフルランクではない残余生成行列が得られる確率が高くなるため、行重みが減少すると欠損補償(誤り訂正)能力が低下してしまう。
そこで、生成行列の冗長部分の「1」の位置を、疑似乱数発生器等を用いてランダムに設定し、このようにして作成した複数の生成行列の中から欠損補償能力の良いものを選択するのこともあるが、この場合、冗長部分の「1」の存在率は、全成分数に対して約50%以上を占める必要があり、欠損補償符号化及び復号の演算時間が長くなる。このように、欠損補償能力とその演算時間とは互いにトレードオフの関係にある。
一方、この種の欠損補償符号化及び復号において、情報データのそれぞれを任意の分割数で分割した分割パケットとして冗長度を増し、符号化データのハミング距離を増大して欠損補償能力を増加させる手法がある。
しかし、この手法を採用する場合において、情報データの分割数を増加させると、これによって生成行列の行列サイズが当該分割数の2乗で増大するため、生成行列の冗長部分の「1」の数も2乗で増大し、欠損補償符号化及び復号の演算時間の増大がより顕著となる。
しかし、この手法を採用する場合において、情報データの分割数を増加させると、これによって生成行列の行列サイズが当該分割数の2乗で増大するため、生成行列の冗長部分の「1」の数も2乗で増大し、欠損補償符号化及び復号の演算時間の増大がより顕著となる。
本発明は、このような従来の問題点に鑑み、生成行列の冗長部分の「1」を少なくしても欠損補償能力の低下を抑制でき、その欠損補償能力の維持と演算時間の低下の両立を図ることができる符号化装置及び復号装置等を提供することを目的とする。
本発明の符号化装置(請求項1)は、k個の情報データui(i=1〜k)のそれぞれを任意の分割数Gで分割してなる分割情報データui,j(i=1〜k,j=1〜G)を、単位行列部分A1と冗長部分A2とで構成された生成行列Aを用いて欠損補償符号化し、n(>k)個の符号化データwi(i=1〜n)のそれぞれを前記分割数Gで分割してなる分割符号化データwi,j(i=1〜n,j=1〜G)を生成するものであり、前記生成行列Aが次の特徴を有する。
すなわち、前記生成行列Aの冗長部分A2が、前記分割数Gと同次数の正方行列である部分行列Jを構成単位とする、次の(1)及び(2)で定義される基本行列及び行置換行列を含む2次元配列で構成され、含まれる「1」の数が同じである行列で対角成分以外の「1」の位置が重複しない複数種類の前記基本行列が、同じ縦列にならないように各横列に配置され、同じ前記基本行列から派生する複数種類の前記行置換行列が、当該基本行列と同じ横列に配置されている。
(1)基本行列:「1」の位置が三角行列となるように設定された部分行列J
(2)行置換行列:基本行列の行順序を入れ替えた関係を有する部分行列J
(1)基本行列:「1」の位置が三角行列となるように設定された部分行列J
(2)行置換行列:基本行列の行順序を入れ替えた関係を有する部分行列J
本発明の生成行列Aによれば、冗長部分A2の構成単位が、「1」の位置が三角行列となるように設定された部分行列である複数種類の基本行列と、この基本行列の行順序を入れ替えた関係を有する部分行列である行置換行列になっており、これらの各行列が上記のように配置されているので、欠損した分割符号化データに対応する部分を除いた残余生成行列には、必ずどの列にも「1」が存在し、この残余生成行列がフルランクになる可能性が高い。
このため、上記基本行列の重みをなるべく小さくする(重みが小さい三角行列を選択する。)ことにより、生成行列Aの冗長部分A2の「1」を少なくしても欠損補償能力の低下を抑制することができ、欠損補償能力の維持と演算時間の低下の両立が可能な生成行列Aを得ることができる。
例えば、前記基本行列として、前記部分行列Jの「1」の数をQとしたとき、その数Qが当該部分行列Jの全成分数(G×G)に対して約50%未満となるように設定されたものを採用すれば(請求項2)、この基本行列と当該基本行列から派生する行置換行列を構成単位として冗長部分A2を作成することにより、冗長部分A2の「1」が全成分数に対して約50%未満となる生成行列Aが得られる。
また、前記生成行列Aの冗長部分A2は、前記部分行列Jの「1」の数をQとしたとき、Q=G+(G−1)×(h−1)の式で算出される重みhが少ないものから順に選択された前記基本行列を含んでいることが好ましい(請求項3)。
この場合、上記重みhが少ない基本行列から順に選択されているので、この基本行列と当該基本行列から派生する行置換行列を構成単位とした冗長部分A2を有する生成行列Aを作成することにより、重みhの小さい生成行列Aを得ることができる。
この場合、上記重みhが少ない基本行列から順に選択されているので、この基本行列と当該基本行列から派生する行置換行列を構成単位とした冗長部分A2を有する生成行列Aを作成することにより、重みhの小さい生成行列Aを得ることができる。
更に、前記生成行列Aの冗長部分A2として、前記部分行列Jの単位行列のみを横に並べて構成された横列部分を有するものを採用すれば(請求項5)、生成行列Aの重みhを更に小さく設定することができる。
本発明の復号装置(請求項5)は、n個の符号化データwi(i=1〜n)を任意の分割数Gで分割してなる、無欠損の場合に(G×n)個となる分割符号化データwi,j(i=1〜n,j=1〜G)を、単位行列部分A1と冗長部分A2とで構成された生成行列Aを用いて欠損補償復号し、k(<n)個の情報データui(i=1〜k)のそれぞれを前記分割数Gで分割してなる分割情報データui,j(i=1〜k,j=1〜G)を復元するものであり、前記生成行列Aが前記符号化装置(請求項1)の場合と同じ特徴を有する。
従って、本発明の復号装置(請求項5)においても、本発明の符号化装置(請求項1)と同様の作用効果が得られる。
また、本発明のコンピュータプログラム(請求項9及び10)は、コンピュータを上記符号化装置や復号装置として機能させるものであり、これらのプログラム発明においても、本発明の符号化装置(請求項1)と同様の作用効果を奏する。
また、本発明のコンピュータプログラム(請求項9及び10)は、コンピュータを上記符号化装置や復号装置として機能させるものであり、これらのプログラム発明においても、本発明の符号化装置(請求項1)と同様の作用効果を奏する。
また、本発明の作成方法(請求項11)は、欠損補償符号化又は復号に用いるために単位行列部分と冗長部分とで構成された上記生成行列の作成方法であり、次の工程(1)〜(4)を含むことを特徴とする。
(1) 前記生成行列の単位行列部分を作成する工程
(2) 情報データの分割数と同次数の正方行列を部分行列とした場合に、この部分行列が三角行列となるように「1」の位置が設定された、含まれる「1」の数が同じである行列で対角成分以外の「1」の位置が重複しない複数種類の基本行列を作成する工程
(1) 前記生成行列の単位行列部分を作成する工程
(2) 情報データの分割数と同次数の正方行列を部分行列とした場合に、この部分行列が三角行列となるように「1」の位置が設定された、含まれる「1」の数が同じである行列で対角成分以外の「1」の位置が重複しない複数種類の基本行列を作成する工程
(3) 前記基本行列の行順序を入れ替えた関係を有する行置換行列を作成する工程
(4) 複数種類の前記基本行列の全部又は一部を同じ縦列にならないように各横列に配置し、かつ、同じ前記基本行列から派生する複数種類の前記行置換行列の全部又は一部を当該基本行列と同じ横列に配置することにより、前記部分行列を構成単位とした2次元配列よりなる、前記生成行列の冗長部分を作成する工程
(4) 複数種類の前記基本行列の全部又は一部を同じ縦列にならないように各横列に配置し、かつ、同じ前記基本行列から派生する複数種類の前記行置換行列の全部又は一部を当該基本行列と同じ横列に配置することにより、前記部分行列を構成単位とした2次元配列よりなる、前記生成行列の冗長部分を作成する工程
本発明の作成方法によれば、予め基本行列と行置換行列とを作成しておき(工程(2)及び(3))、作成した基本行列と行置換行列とを所定の規則で配置して生成行列の冗長部分を作成するので(工程(4))、所望の欠損補償能力が予想される複数の生成行列を機械的かつ効率的に作成することができる。
以上の通り、本発明によれば、生成行列の冗長部分の「1」を少なくしても欠損補償能力の低下を抑制できるので、その欠損補償能力の維持と演算時間の低下の両立を図ることができる。
以下、図面に基づいて、本発明の実施形態を説明する。
〔システム構成〕
図1は、本発明を採用した映像配信システムの構成例を示している。
図1に示すように、本実施形態の映像配信システムは、欠損補償符号化機能を有するデータ送信側の送信装置1と、欠損補償復号機能を有するデータ受信側の受信装置2とを備えている。
〔システム構成〕
図1は、本発明を採用した映像配信システムの構成例を示している。
図1に示すように、本実施形態の映像配信システムは、欠損補償符号化機能を有するデータ送信側の送信装置1と、欠損補償復号機能を有するデータ受信側の受信装置2とを備えている。
送信装置1は、映像及び音声データをパケット単位で送出するサーバコンピュータ等よりなり、そのデータを受信する受信装置2はセットトップボックス等よりなる。
送信装置1から送出された映像及び音声データは、インターネット等よりなるネットワーク(通信網)3を介して受信装置2に伝送される。図1に例示した映像配信システムでは、受信装置2を操作するユーザの要求に応じて、映画、テレビジョン放送やコンサート等の様々な映像及び音声データを、ネットワーク3を介してストリーミング配信するビデオオンデマンドと呼ばれるサービスを提供している。
送信装置1から送出された映像及び音声データは、インターネット等よりなるネットワーク(通信網)3を介して受信装置2に伝送される。図1に例示した映像配信システムでは、受信装置2を操作するユーザの要求に応じて、映画、テレビジョン放送やコンサート等の様々な映像及び音声データを、ネットワーク3を介してストリーミング配信するビデオオンデマンドと呼ばれるサービスを提供している。
〔送信装置(符号化装置)〕
上記送信装置1は、この装置1全体を制御するCPU等よりなる制御部11と、符号化等のための各種のファームウェア(コンピュータプログラム)や配信する映像及び音声データを記録するハードディスク等よりなる記憶部12と、ネットワーク3に接続された通信インタフェースよりなる通信部13とを備えており、これらは共通の内部バスによって互いに接続されている。
上記送信装置1は、この装置1全体を制御するCPU等よりなる制御部11と、符号化等のための各種のファームウェア(コンピュータプログラム)や配信する映像及び音声データを記録するハードディスク等よりなる記憶部12と、ネットワーク3に接続された通信インタフェースよりなる通信部13とを備えており、これらは共通の内部バスによって互いに接続されている。
送信装置1の制御部11は、記憶部12に記録されている映像及び音声データをMPEG(Motion Picture Expert Group) 等の符号化形式にて圧縮符号化する圧縮符号化手段14と、この圧縮符号化手段14で圧縮符号化された映像及び音声データをブロック単位に分割して、欠損を補償するための冗長データを付加する欠損補償符号化手段15とを備えている。
これらの符号化手段14,15が行う各機能は、記憶部12に格納されている上記コンピュータプログラムを制御部11が読み出して実行することによって達成される。
これらの符号化手段14,15が行う各機能は、記憶部12に格納されている上記コンピュータプログラムを制御部11が読み出して実行することによって達成される。
また、記憶部12には、上記欠損補償符号化に用いる生成行列A(図4及び図5参照)が予め格納されている。欠損補償符号化手段14は、圧縮符号化されたデータをブロック単位に分割してなる情報データuに対して、予め記憶された上記生成行列Aを掛け合わすことにより、冗長化した符号化データwを生成する。
ここで行列演算は、有限個の元「0」と「1」を持つ体(ガロア体:GF(2))におけるデータが対象となり、その加算と乗算は次の通りとなる。
0+0=0,0+1=1,1+0=1,1+1=0
0×0=0,0×1=0,1×0=0,1×1=1
ここで行列演算は、有限個の元「0」と「1」を持つ体(ガロア体:GF(2))におけるデータが対象となり、その加算と乗算は次の通りとなる。
0+0=0,0+1=1,1+0=1,1+1=0
0×0=0,0×1=0,1×0=0,1×1=1
図4及び図5に示すように、本実施形態では符号化データwは組織符号になっており、このため、生成行列Aは単位行列部分A1と冗長部分A2とに組織化されている。
図4及び図5の例では、生成行列Aの機能やその作成方法の理解を容易にするために、比較的次数の小さい生成行列Aを例示しているが、実際の生成行列Aは、概ね1000行1000列〜2000行2000列程度の多数の成分を有している。
なお、この生成行列Aの詳細については後述するが、その作成処理は送信装置1以外の外部コンピュータ(図示せず)で行い、この作成済みの生成行列Aを不揮発性の記憶領域である記憶部12に記憶させてもよいし、当該作成処理を送信装置1の制御部11の演算回路ないしコンピュータプログラムで行うこともできる。
図4及び図5の例では、生成行列Aの機能やその作成方法の理解を容易にするために、比較的次数の小さい生成行列Aを例示しているが、実際の生成行列Aは、概ね1000行1000列〜2000行2000列程度の多数の成分を有している。
なお、この生成行列Aの詳細については後述するが、その作成処理は送信装置1以外の外部コンピュータ(図示せず)で行い、この作成済みの生成行列Aを不揮発性の記憶領域である記憶部12に記憶させてもよいし、当該作成処理を送信装置1の制御部11の演算回路ないしコンピュータプログラムで行うこともできる。
後者の場合には、送信装置1の記憶部12に、生成行列Aの作成処理を実行するコンピュータプログラムを記憶させておき、欠損補償符号化を行う際に制御部11において生成行列Aを作成し、この作成した生成行列Aを一時的な記憶領域(メモリ)に記憶させることになる。この場合は、パケットの分割数Gを変更しても、柔軟に符号を生成できる。
しかし、欠損補償符号化に必要な生成行列Aをその符号化の度に作成するのは演算回数を無駄に消費することになるから、作成済みの生成行列Aを予め記憶部12に記憶させることもある。
しかし、欠損補償符号化に必要な生成行列Aをその符号化の度に作成するのは演算回数を無駄に消費することになるから、作成済みの生成行列Aを予め記憶部12に記憶させることもある。
なお、コンサートや市街地等の撮像対象を撮像してライブ配信するために本実施形態のシステムを適用する場合には、記憶部12に映像及び音声データを予め記録しておくのではなく、カメラ等の撮像手段を用いた撮像により映像及び音声データを生成し、生成した映像及び音声データを圧縮符号化及び欠損補償符号化するようにしてもよい。
また、予め圧縮符号化した映像及び音声データを記憶部12に記録するようにしてもよく、この場合には圧縮符号化手段14は不要となる。
また、予め圧縮符号化した映像及び音声データを記憶部12に記録するようにしてもよく、この場合には圧縮符号化手段14は不要となる。
〔受信装置(復号装置)〕
一方、受信装置2は、この装置2全体を制御するCPU等よりなる制御部21と、復号等のための各種のファームウェア(コンピュータプログラム)や符号化データ等の各種情報を記憶する記憶部22と、ネットワーク3に接続された通信インタフェースよりなる通信部23と、映像及び音声データをテレビジョンモニタ等の画像表示装置に出力する出力部24とを備えており、これらは共通の内部バスによって互いに接続されている。
なお、受信装置2が、テレビジョンモニタを内蔵した装置である場合には、上記出力部24にはそのモニタやスピーカ等が含まれる。
一方、受信装置2は、この装置2全体を制御するCPU等よりなる制御部21と、復号等のための各種のファームウェア(コンピュータプログラム)や符号化データ等の各種情報を記憶する記憶部22と、ネットワーク3に接続された通信インタフェースよりなる通信部23と、映像及び音声データをテレビジョンモニタ等の画像表示装置に出力する出力部24とを備えており、これらは共通の内部バスによって互いに接続されている。
なお、受信装置2が、テレビジョンモニタを内蔵した装置である場合には、上記出力部24にはそのモニタやスピーカ等が含まれる。
受信装置2の制御部21は、欠損したデータを補償するための欠損補償復号手段25と、欠損したデータを補償して生成した映像及び音声データを伸長復号する伸長復号手段26とを備えている。
これらの復号手段25,26が行う各機能は、記憶部22に格納されている上記コンピュータプログラムを制御部21が読み出して実行することによって達成される。
これらの復号手段25,26が行う各機能は、記憶部22に格納されている上記コンピュータプログラムを制御部21が読み出して実行することによって達成される。
また、記憶部22にも、上記欠損補償復号に用いられる生成行列Aが予め格納されている。欠損補償復号手段25は、通信部23によりネットワーク3を介してパケット単位で受信したデータからブロック単位のデータを生成し、生成したデータに欠損が生じているか否かを判定するものであり、欠損が生じている場合には、付加されている冗長データに基づいて欠損したデータを補償する。
具体的には、欠損補償復号手段25は、受信したパケット単位のデータをブロック化してなる符号化データwに対して、予め記憶された上記生成行列Aを適用して連立方程式をガウス消去法等で解くことにより、冗長化されている符号化データwから情報データuを復元する。どのパケットが欠損したかは、パケットに番号情報を持たせることによって判断する。
なお、制御部21は、受信したパケット単位のデータを一時的に蓄積するバッファメモリを有しており、このパケット単位のデータに各種処理を実行することで、本実施形態の受信装置2がセットトップボックスとして動作する。
なお、制御部21は、受信したパケット単位のデータを一時的に蓄積するバッファメモリを有しており、このパケット単位のデータに各種処理を実行することで、本実施形態の受信装置2がセットトップボックスとして動作する。
また、受信装置2の記憶部22にも、生成行列Aの作成処理を実行するコンピュータプログラムを記憶させておき、欠損補償復号を行う際に制御部21において、送信装置1側から事前に生成規則を送ることによって生成行列Aを作成するようにして、作成した生成行列Aを一時的な記憶領域(メモリ)に記憶させることにしてもよい。また、直接、生成行列Aを送信装置1から送ってもよい。
〔各装置の処理動作〕
〔ネゴシエーション処理〕
次に、上記送信装置1及び受信装置2が行う各種処理について説明する。
まず、受信装置2は、送信装置1に対して映像及び音声データの送信を要求する。この場合、送信装置1から送出される映像及び音声データに関する組織符号型の欠損補償符号の方式等の諸条件を、受信装置2に認識させるネゴシエーション処理が行われる。なお、このネゴシエーション処理の前に、送信装置1と受信装置2とで生成行列Aを決めて記憶しておいてもよい。
上記ネゴシエーション処理が完了すると、送信装置1から受信装置2へ映像及び音声データがパケット単位で送信される。
〔ネゴシエーション処理〕
次に、上記送信装置1及び受信装置2が行う各種処理について説明する。
まず、受信装置2は、送信装置1に対して映像及び音声データの送信を要求する。この場合、送信装置1から送出される映像及び音声データに関する組織符号型の欠損補償符号の方式等の諸条件を、受信装置2に認識させるネゴシエーション処理が行われる。なお、このネゴシエーション処理の前に、送信装置1と受信装置2とで生成行列Aを決めて記憶しておいてもよい。
上記ネゴシエーション処理が完了すると、送信装置1から受信装置2へ映像及び音声データがパケット単位で送信される。
〔送信処理〕
図2は、送信装置1が行う送信処理を示すフローチャートである。
図2に示すように、送信装置1は、制御部11の圧縮符号化手段14により、記憶部12に記録されている映像及び音声データをMPEG等の符号化形式を用いて圧縮符号化する(ステップS101)。
図2は、送信装置1が行う送信処理を示すフローチャートである。
図2に示すように、送信装置1は、制御部11の圧縮符号化手段14により、記憶部12に記録されている映像及び音声データをMPEG等の符号化形式を用いて圧縮符号化する(ステップS101)。
次に、送信装置1は、圧縮符号化した映像及び音声データを、制御部11の欠損補償符号化手段15により、所定長のブロック単位に分割するとともに(ステップS102)、ブロック単位に分割した映像及び音声データに対して欠損を補償する冗長データを付加する欠損補償符号化を行い(ステップS103)、ブロックの先頭にパケット番号情報を含ませる(ステップS104)。なお、上記欠損補償符号化は、記憶部12に記憶された生成行列Aを用いて行われる。
そして、送信装置1は、制御部11での通信制御処理により、上記パケット番号情報を含ませたブロック単位の映像及び音声データをパケット単位に分割し(ステップS105)、通信部13からネットワーク3上へ送出する(ステップS106)。
なお、ブロックの末尾に対して、この末尾を区切位置として示す区切位置情報を含ませることにしてもよい。
なお、ブロックの末尾に対して、この末尾を区切位置として示す区切位置情報を含ませることにしてもよい。
〔受信処理〕
図3は、受信装置2が行う受信処理を示すフローチャートである。
図3に示すように、受信装置2は、制御部21での通信制御処理により、通信部23を介してネットワーク3からパケット単位の映像及び音声データを受信し(ステップS201)、受信したパケット単位の映像及び音声データを制御部21に引き渡す。
制御部21の欠損補償復号手段25は、受け付けたパケット単位の映像及び音声データをいったんバッファメモリに蓄積する(ステップS202)。
図3は、受信装置2が行う受信処理を示すフローチャートである。
図3に示すように、受信装置2は、制御部21での通信制御処理により、通信部23を介してネットワーク3からパケット単位の映像及び音声データを受信し(ステップS201)、受信したパケット単位の映像及び音声データを制御部21に引き渡す。
制御部21の欠損補償復号手段25は、受け付けたパケット単位の映像及び音声データをいったんバッファメモリに蓄積する(ステップS202)。
次に、受信装置2は、制御部21の欠損補償復号手段25により、バッファメモリにパケット単位で蓄積した複数の映像及び音声データを、ブロック単位の一つの映像及び音声データとして読み出し(ステップS203)、読み出した映像及び音声データをブロック単位のデータとして欠損補償復号を実行する(ステップS204)。
なお、ステップS204において補償すべき欠損が生じていない場合には、上記欠損補償復号処理(ステップS204)は省略される。
なお、ステップS204において補償すべき欠損が生じていない場合には、上記欠損補償復号処理(ステップS204)は省略される。
上記欠損補償復号には、ブロック化してなる符号化データwに対して、予め記憶された生成行列Aを適用して連立方程式をガウス消去法等で解き、冗長化されている符号化データwから情報データuを復元する処理が含まれる。
そして、受信装置2は、欠損補償復号処理を実行した映像及び音声データを、制御部21の伸長復号手段26によって伸長復号し(ステップS205)、伸長復号した映像及び音声データを出力部24から出力する出力処理を実行する(ステップS206)。
そして、受信装置2は、欠損補償復号処理を実行した映像及び音声データを、制御部21の伸長復号手段26によって伸長復号し(ステップS205)、伸長復号した映像及び音声データを出力部24から出力する出力処理を実行する(ステップS206)。
上記出力部24が行う出力処理(ステップS206)は、受信装置2がテレビジョンモニタに外部接続されたセットトップボックスである場合には、テレビジョンモニタから映像及び音声として出力される映像信号及び音声信号を、当該テレビジョンモニタへ出力する処理のことを意味する。
また、受信装置20がテレビジョンモニタを内蔵した装置である場合には、出力部24が行う出力処理(ステップS206)は、映像及び音声を自身のモニタが出力する処理を意味する。
また、受信装置20がテレビジョンモニタを内蔵した装置である場合には、出力部24が行う出力処理(ステップS206)は、映像及び音声を自身のモニタが出力する処理を意味する。
〔生成行列の構成と作成方法〕
〔生成行列の記述〕
以下、図4〜図8を参照しつつ、上記送信装置1及び受信装置2が使用する生成行列Aの具体的構造とその作成方法について説明する。
図4は、本実施形態の生成行列Aの記述法を示すための構成図であり、図5は、当該生成行列Aのビット配置の一例を示す構成図である。
〔生成行列の記述〕
以下、図4〜図8を参照しつつ、上記送信装置1及び受信装置2が使用する生成行列Aの具体的構造とその作成方法について説明する。
図4は、本実施形態の生成行列Aの記述法を示すための構成図であり、図5は、当該生成行列Aのビット配置の一例を示す構成図である。
前記した通り、本実施形態では、送信装置1及び受信装置2が行う欠損補償符号化及び復号において、情報データuのそれぞれを任意の分割数で分割した分割データとし、符号化データwのハミング距離を増大して欠損補償能力を増加させる手法を採用している。
このため、図4に示すように、情報データuiはそれぞれが任意の分割数Gで分割された分割パケット(分割情報データ)で構成されており、情報データui(i=1〜k)の数をk個とすると、分割情報データui,j(i=1〜k,j=1〜G)数は合計でG×k個になる。
このため、図4に示すように、情報データuiはそれぞれが任意の分割数Gで分割された分割パケット(分割情報データ)で構成されており、情報データui(i=1〜k)の数をk個とすると、分割情報データui,j(i=1〜k,j=1〜G)数は合計でG×k個になる。
従って、符号化データwi(i=1〜n)のそれぞれも任意の分割数Gで分割された分割パケット(分割符号化データ)によって構成され、符号化データwi(i=1〜n)の数をn(>k)個とすると、無欠損の場合の分割符号化データwi,j(i=1〜n,j=1〜G)数は合計でG×n個になる。
なお、図4及び図5では、生成行列Aの構造と作成方法の理解を容易にするため、k=8、n=14、G=4として、比較的次数が少ない生成行列Aを例示しているが、前記した通り、実際の生成行列Aの次数はこれより膨大である。
なお、図4及び図5では、生成行列Aの構造と作成方法の理解を容易にするため、k=8、n=14、G=4として、比較的次数が少ない生成行列Aを例示しているが、前記した通り、実際の生成行列Aの次数はこれより膨大である。
本実施形態では、分割符号化データwi,j を情報ビットと冗長ビットに分かれた組織符号として定義する。そのため、生成行列Aは、分割情報データui,j に対応する単位行列部分A1と、検査ビットである冗長部分A2とで構成された構造になっている。
従って、図4に示すように、本実施形態の生成行列Aは、単位行列部分A1が上部でかつ冗長部分A2が下部に位置する(G×n)行(G×k)列の行列である。また、単位行列部分A1の行列サイズは(G×k)行(G×k)列であり、冗長部分A2の行列サイズは(G×(n−k))行(G×k)列である。
従って、図4に示すように、本実施形態の生成行列Aは、単位行列部分A1が上部でかつ冗長部分A2が下部に位置する(G×n)行(G×k)列の行列である。また、単位行列部分A1の行列サイズは(G×k)行(G×k)列であり、冗長部分A2の行列サイズは(G×(n−k))行(G×k)列である。
また、本実施形態では、分割数Gと同次数の正方行列(G行G列)を生成行列Aの「部分行列J」と定義し、当該生成行列Aの冗長部分A2を、その部分行列Jを構成単位とした2次元配列で構成している。
冗長部分A2を構成する部分行列Jはサフィックス付きで「Jh i,j」と表わされる(図4参照)。このサフィックス付きの部分行列「Jh i,j」の上添え字「h」は、当該部分行列Jの重みhを表す。また、下添え字「i,j」は、重みhの部分行列Jh がどの番号の基本行列又は行置換行列であるかを示している。すなわち、「i」は後述する基本行列の番号であり、「j」は、それが1である場合には基本行列であることを示し、それが2以上の場合には行置換行列の番号を示す。
冗長部分A2を構成する部分行列Jはサフィックス付きで「Jh i,j」と表わされる(図4参照)。このサフィックス付きの部分行列「Jh i,j」の上添え字「h」は、当該部分行列Jの重みhを表す。また、下添え字「i,j」は、重みhの部分行列Jh がどの番号の基本行列又は行置換行列であるかを示している。すなわち、「i」は後述する基本行列の番号であり、「j」は、それが1である場合には基本行列であることを示し、それが2以上の場合には行置換行列の番号を示す。
なお、重みhが異なる場合には、横列番号iと縦列番号jをリセットするものとする。 また、部分行列Jの重みhとは、当該部分行列Jの「1」の数をQとしたとき、Q=G+(G−1)×(h−1)の式で算出される重みのことをいう。
〔基本行列の作成〕
本実施形態では、生成行列Aの冗長部分A2を構成する部分行列Jの一部及び全部が、次に定義される基本行列と行置換行列とで構成されている。
(1)基本行列:「1」の位置が三角行列となるように設定された部分行列J
(2)行置換行列:基本行列の行順序を入れ替えた関係を有する部分行列J
本実施形態では、生成行列Aの冗長部分A2を構成する部分行列Jの一部及び全部が、次に定義される基本行列と行置換行列とで構成されている。
(1)基本行列:「1」の位置が三角行列となるように設定された部分行列J
(2)行置換行列:基本行列の行順序を入れ替えた関係を有する部分行列J
図6は、上記基本行列の作成可能個数を示す図である。
図6(a)の基本行列は重みh=2であり、この場合、部分行列Jの単位行列に対して追加すべき「1」の数は、Q−G=(G−1)×(h−1)=3×1=3となる。
図6(a)に示すように、重みh=2の最初の基本行列J2 1,1(No.1)は、部分行列Jの単位行列が上三角行列になるように、その単位行列成分「j(値は1)」の右側(行番号が1つ増加する位置)に「1」を3つ追加したものである。
図6(a)の基本行列は重みh=2であり、この場合、部分行列Jの単位行列に対して追加すべき「1」の数は、Q−G=(G−1)×(h−1)=3×1=3となる。
図6(a)に示すように、重みh=2の最初の基本行列J2 1,1(No.1)は、部分行列Jの単位行列が上三角行列になるように、その単位行列成分「j(値は1)」の右側(行番号が1つ増加する位置)に「1」を3つ追加したものである。
重みh=2の2番目の基本行列J2 2,1(No.2)は、部分行列Jの単位行列が上三角行列になり、かつ、最初の基本行列J2 1,1(No.1)において「1」を追加しなかった残りの位置に、「1」を追加したものである。
重みh=2の3番目の基本行列J2 3,1(No.3)は、部分行列Jの単位行列が下三角行列になるように、2行目と3行目の単位行列成分「j(=1)」の左側の位置に、「1」を追加したものである。
重みh=2の3番目の基本行列J2 3,1(No.3)は、部分行列Jの単位行列が下三角行列になるように、2行目と3行目の単位行列成分「j(=1)」の左側の位置に、「1」を追加したものである。
また、重みh=2の4番目の基本行列J2 4,1(No.4)は、部分行列Jの単位行列が下三角行列になり、かつ、3番目の基本行列J2 3,1において「1」を追加しなかった残りの位置に、「1」を追加したものである。
このように、重みh=2の基本行列J2 1,1〜J2 4,1は、「1」の位置が上三角行列又は下三角行列となるように部分行列Jであって、「1」の位置が重複しないように複数種類作成されたものである。
このように、重みh=2の基本行列J2 1,1〜J2 4,1は、「1」の位置が上三角行列又は下三角行列となるように部分行列Jであって、「1」の位置が重複しないように複数種類作成されたものである。
図6(b)の基本行列は重みh=3であり、この場合、部分行列Jの単位行列に対して追加すべき「1」の数は、Q−G=(G−1)×(h−1)=3×2=6となる。
図6(b)に示すように、重みh=3の最初の基本行列J3 1,1(No.1)は、部分行列Jの単位行列が上三角行列になるように、「1」を6つ追加したものである。この場合、単位行列成分「j(=1)」の右側には空きが6つしかないので、重みh=3でかつ上三角行列となる基本行列はこの1種類しかない。
図6(b)に示すように、重みh=3の最初の基本行列J3 1,1(No.1)は、部分行列Jの単位行列が上三角行列になるように、「1」を6つ追加したものである。この場合、単位行列成分「j(=1)」の右側には空きが6つしかないので、重みh=3でかつ上三角行列となる基本行列はこの1種類しかない。
また、重みh=3の2番目の基本行列J3 2,1(No.2)は、部分行列Jの単位行列が下三角行列になるように、「1」を6つ追加したものである。この場合、単位行列成分「j(=1)」の左側には空きが6つしかないので、重みh=3でかつ上三角行列となる基本行列もこの1種類しかない。
なお、重みh=4の場合には、Q−G=(G−1)×(h−1)=3×3=9個の「1」を追加することになるが、G=4の部分行列Jではこのような追加は不可能であるから、重みh=4以上の基本行列は存在しない。
また、一般に、(G×G)の正方行列よりなる部分行列Jにおいて、重みhの当該部分行列Jで作成できる基本行列の作成可能個数は、G/(h−1)通りである。
また、一般に、(G×G)の正方行列よりなる部分行列Jにおいて、重みhの当該部分行列Jで作成できる基本行列の作成可能個数は、G/(h−1)通りである。
〔行置換行列の作成〕
図7及び図8は、行置換行列の作成可能個数を示す図である。
なお、この図6及び図7では、重みh=2の最初の基本行列J2 1,1(図6(a)のNo.1)を例として、それから派生する行置換行列の作成可能個数を示しているが、その他の番号の基本行列についても、以下に述べる操作と同じ操作によって行置換行列を派生させることができる。
図7及び図8は、行置換行列の作成可能個数を示す図である。
なお、この図6及び図7では、重みh=2の最初の基本行列J2 1,1(図6(a)のNo.1)を例として、それから派生する行置換行列の作成可能個数を示しているが、その他の番号の基本行列についても、以下に述べる操作と同じ操作によって行置換行列を派生させることができる。
前記定義(2)で述べた通り、行置換行列は、基本行列の行順序を入れ替えた関係を有する部分行列Jである。そこで、行置換行列の作成可能個数としては、図7の上段に示すように、特定の基本行列の行番号を下に向かって1つずつ順番に繰り下げることによって構成できる。
なお、図7の下段は、基本行列とこれから派生し得る各行置換行列を、基本行列の行番号1〜4を成分値として有するベクトル表示で表したものである。
なお、図7の下段は、基本行列とこれから派生し得る各行置換行列を、基本行列の行番号1〜4を成分値として有するベクトル表示で表したものである。
一方、基本行列とこれから派生し得る各行置換行列の総数は、図8に示すように、基本行列の行順序を入れ替えた場合の順列数に等しく、この場合、基本行列の行数がG=4個あるから、G!=4×3×2×1=24通りあることになる。
〔冗長部分に対する基本行列及び行置換行列の配列〕
図4及び図5に戻り、生成行列Aの冗長部分A2の具体的構造を説明する。
本実施形態の生成行列Aでは、予め作成された上記基本行列及び行置換行列を、次のように配列することによって冗長部分A2が構成されている。
すなわち、本実施形態では、複数種類の基本行列J2 1,1,J2 2,1,J2 3,1,J2 4,1,J3 1,1が、例えば図4の太線枠で示すように、対角状に配置されている。なお、基本行列は要するに同じ縦列にならないように各横列に配置されておればよく、対角状でなくてもよい。
図4及び図5に戻り、生成行列Aの冗長部分A2の具体的構造を説明する。
本実施形態の生成行列Aでは、予め作成された上記基本行列及び行置換行列を、次のように配列することによって冗長部分A2が構成されている。
すなわち、本実施形態では、複数種類の基本行列J2 1,1,J2 2,1,J2 3,1,J2 4,1,J3 1,1が、例えば図4の太線枠で示すように、対角状に配置されている。なお、基本行列は要するに同じ縦列にならないように各横列に配置されておればよく、対角状でなくてもよい。
次に、異なる複数種類の行置換行列については、同じ基本行列から派生するものが、当該基本行列と同じ横列となるように配置されている。
すなわち、図4に示す冗長部分A2において、重みh=2の場合の最初の基本行列J2 1,1が、上から2番目の第2横列における最初の縦列(第1列)に配置されており、この基本行列J2 1,1の右側の第2縦列以降に、図7及び図8の入れ替え操作によって作成された複数種類の行置換行列の一部が、順に配置されている。
すなわち、図4に示す冗長部分A2において、重みh=2の場合の最初の基本行列J2 1,1が、上から2番目の第2横列における最初の縦列(第1列)に配置されており、この基本行列J2 1,1の右側の第2縦列以降に、図7及び図8の入れ替え操作によって作成された複数種類の行置換行列の一部が、順に配置されている。
また、図4に示す冗長部分A2において、重みh=2の場合の2番目の基本行列J2 2,1が上から3番目の第3横列における第2縦列に配置されており、この基本行列J2 2,1の右側の第3縦列以降に、図7及び図8の入れ替え操作によって作成された複数種類の行置換行列の一部が、順に配置されている。
そして、重みh=2の場合の他の基本行列J2 3,1,J2 4,1についても、当該基本行列の右側に、図7及び図8の入れ替え操作によって作成された複数種類の行置換行列の一部を、順に配置することにより、冗長部分A2の横列が構成されている。
そして、重みh=2の場合の他の基本行列J2 3,1,J2 4,1についても、当該基本行列の右側に、図7及び図8の入れ替え操作によって作成された複数種類の行置換行列の一部を、順に配置することにより、冗長部分A2の横列が構成されている。
なお、G=4の場合には、重みh=2の基本行列は4種類しか存在しない(図6(a)参照)。そこで、本実施形態では、冗長部分A2の第6横列(図4の最終横列)については、重みh=3の場合の最初の基本行列J3 1,1と、これから派生する各行置換行列を当該基本行列J3 1,1の右側に順に配置することにより、重みh=3の場合の第1横列が構成されている。
一方、重みh=1の場合には、基本行列は単位行列という特殊な三角行列となる。この単位行列は、重みが最も小さいので最優先で冗長部分A2に採用される必要があり、他の基本行列の相対的な位置の基準となるため、異なる行置換行列を横列に配置する必要はなく、同じ単位行列を採用すればよい。
そこで、図5に示すように、本実施形態では、部分行列Jの単位行列で作成された横列部分を構成し、この横列部分を冗長部分A2の最上部の横列に配置している。すなわち、冗長部分A2の上から1番目の第1横列は、部分行列Jの単位行列のみを横に並べて構成された横列部分になっている。
なお、上記のように作成した生成行列Aに対して、冗長部分A2における横列の順序を入れ替えてもよい。冗長部分A2の横列の順序を入れ替えても等価の連立方程式が得られるからである。
そこで、図5に示すように、本実施形態では、部分行列Jの単位行列で作成された横列部分を構成し、この横列部分を冗長部分A2の最上部の横列に配置している。すなわち、冗長部分A2の上から1番目の第1横列は、部分行列Jの単位行列のみを横に並べて構成された横列部分になっている。
なお、上記のように作成した生成行列Aに対して、冗長部分A2における横列の順序を入れ替えてもよい。冗長部分A2の横列の順序を入れ替えても等価の連立方程式が得られるからである。
〔生成行列の作成手順〕
以上説明した生成行列Aの作成手順を纏めると、次の通りである。
(1) 生成行列Aの単位行列部分A1を作成する。
(2) 情報データuの分割数Gと同次数の正方行列を部分行列Jとした場合に、この部分行列Jが三角行列となるように「1」の位置が設定された、「1」の位置が重複しない複数種類の基本行列(図6)を作成する。
以上説明した生成行列Aの作成手順を纏めると、次の通りである。
(1) 生成行列Aの単位行列部分A1を作成する。
(2) 情報データuの分割数Gと同次数の正方行列を部分行列Jとした場合に、この部分行列Jが三角行列となるように「1」の位置が設定された、「1」の位置が重複しない複数種類の基本行列(図6)を作成する。
(3) 基本行列の行順序を入れ替えた関係を有する行置換行列(図7及び図8)を作成する。
(4) 複数種類の基本行列の全部又は一部を可能な限り同じ縦列にならないように各横列に配置し、かつ、同じ基本行列から派生する複数種類の行置換行列の全部又は一部を当該基本行列と同じ横列に配置して、生成行列Aの冗長部分A2を作成する。
なお、上記生成行列Aは、当該生成行列を「0010001010」といった形式でそのままHDDや不揮発性メモリなどのコンピュータ読取可能な記録媒体に保存する方法もあるが、各行ごとに「1」が存在する場所を、「3番目」「7番目」「9番目」といった情報に変換して記録媒体に保存し、符号化ならびに復号の際に使用することもできる。
この場合、符号化装置では、分割情報データui,j(i=1〜k,j=1〜G)のうち、「3番目」「7番目」「9番目」を選択し、排他的論理和(XOR)演算をこの3つの分割情報データに対して行うことを意味する。
(4) 複数種類の基本行列の全部又は一部を可能な限り同じ縦列にならないように各横列に配置し、かつ、同じ基本行列から派生する複数種類の行置換行列の全部又は一部を当該基本行列と同じ横列に配置して、生成行列Aの冗長部分A2を作成する。
なお、上記生成行列Aは、当該生成行列を「0010001010」といった形式でそのままHDDや不揮発性メモリなどのコンピュータ読取可能な記録媒体に保存する方法もあるが、各行ごとに「1」が存在する場所を、「3番目」「7番目」「9番目」といった情報に変換して記録媒体に保存し、符号化ならびに復号の際に使用することもできる。
この場合、符号化装置では、分割情報データui,j(i=1〜k,j=1〜G)のうち、「3番目」「7番目」「9番目」を選択し、排他的論理和(XOR)演算をこの3つの分割情報データに対して行うことを意味する。
〔生成行列の効果〕
図5に示す生成行列Aにおいて、冗長分(n−k)個以下の数で幾つかの分割符号化データwi,j(i=1〜n,j=1〜G)がパケット単位で欠損した場合を想定する。
この場合、例えば、w6,j〜w10,jまでの5つの分割符号化データが欠損したとすると、図5に示す生成行列Aにおけるハッチングで示す行部分が無くなったのと等価の状態となる。
図5に示す生成行列Aにおいて、冗長分(n−k)個以下の数で幾つかの分割符号化データwi,j(i=1〜n,j=1〜G)がパケット単位で欠損した場合を想定する。
この場合、例えば、w6,j〜w10,jまでの5つの分割符号化データが欠損したとすると、図5に示す生成行列Aにおけるハッチングで示す行部分が無くなったのと等価の状態となる。
このさい、本実施形態の生成行列Aによれば、冗長部分A2の構成単位が、「1」の位置が重複しない三角行列よりなる複数種類の基本行列と、この基本行列の行順序を入れ替えた関係を有する行置換行列とからなり、異なる複数種類の基本行列が同じ縦列にならないように各横列に配置され、同じ基本行列から派生する複数種類の行置換行列が当該基本行列と同じ横列に配置されているので、欠損した分割符号化データw6,j〜w10,j に対応する部分を生成行列Aから除いた行列(図5の生成行列Aにおけるハッチング以外の部分:残余生成行列)には、必ずどの列にも「1」が存在する。
このため、データ欠損後に得られる残余生成行列がフルランクになる可能性が高く、その残余生成行列と残りの分割符号化データwi,jから、欠損した情報データu6,j〜u8,j を回復できる可能性が高くなる。
従って、重みhがなるべく小さい基本行列を選択して、生成行列Aの冗長部分A2の「1」の数を極力少なくしても、欠損補償能力の低下を抑制することができ、欠損補償能力の維持と演算時間の低下の両立が可能な生成行列を得ることができる。
例えば、部分行列Jの「1」の数をQとして、その数Qが部分行列Jの全成分数(G×G)に対して50%未満となるように設定すれば、冗長部分A2の「1」の存在率も確実に50%未満となり、「1」の数を従来よりも少なく抑えることができる。
例えば、部分行列Jの「1」の数をQとして、その数Qが部分行列Jの全成分数(G×G)に対して50%未満となるように設定すれば、冗長部分A2の「1」の存在率も確実に50%未満となり、「1」の数を従来よりも少なく抑えることができる。
また、本実施形態の生成行列Aのように、重みh(=2)の基本行列から順に選択するようにすれば、この基本行列と当該基本行列から派生する行置換行列を構成単位とした冗長部分A2を有する生成行列Aを作成することにより、重みhの小さい生成行列Aを得ることができる。
更に、本実施形態の生成行列Aでは、その冗長部分A2として、部分行列Jの単位行列のみを横に並べて構成された横列部分(冗長部分A2の第1横列)を有するので、生成行列Aの重みhを更に小さく設定することができる。
更に、本実施形態の生成行列Aでは、その冗長部分A2として、部分行列Jの単位行列のみを横に並べて構成された横列部分(冗長部分A2の第1横列)を有するので、生成行列Aの重みhを更に小さく設定することができる。
〔分割数が4を超える場合の基本行列〕
図9〜図15は、分割数Gが4を超える場合の基本行列を示している。
このうち、図9は、分割数G=8でかつ重みh=2の場合の基本行列を示している。この場合、基本行列の作成可能個数は、G/(h−1)=8/(2−1)=8通りである。また、図10は、分割数G=8でかつ重みh=3の場合の基本行列を示している。この場合、基本行列の作成可能個数は、G/(h−1)=8/(3−1)=4通でりある。
図9〜図15は、分割数Gが4を超える場合の基本行列を示している。
このうち、図9は、分割数G=8でかつ重みh=2の場合の基本行列を示している。この場合、基本行列の作成可能個数は、G/(h−1)=8/(2−1)=8通りである。また、図10は、分割数G=8でかつ重みh=3の場合の基本行列を示している。この場合、基本行列の作成可能個数は、G/(h−1)=8/(3−1)=4通でりある。
図11は、分割数G=8でかつ重みh=4及び5の場合の基本行列を示している。
重みh=4の基本行列の作成可能個数は、G/(h−1)=8/(4−1)=2.33≒2通り(小数点以下は繰り下げ)である。
また、重みh=5の基本行列の作成可能個数は、G/(h−1)=8/(5−1)=2通りである。
重みh=4の基本行列の作成可能個数は、G/(h−1)=8/(4−1)=2.33≒2通り(小数点以下は繰り下げ)である。
また、重みh=5の基本行列の作成可能個数は、G/(h−1)=8/(5−1)=2通りである。
図12〜図15は、分割数G=16でかつ重みh=2の場合の基本行列を示している。この場合、基本行列の作成可能個数は、G/(h−1)=16/(2−1)=16通りある。
〔その他の変形例〕
今回開示した各実施形態は本発明の例示であって制限的なものではない。本発明の範囲は、上記実施形態ではなく特許請求の範囲によって示され、特許請求の範囲とその構成と均等な意味及び範囲内での全ての変更が含まれる。
例えば、図5に示す生成行列Aにおいて、部分行列Jの単位行列のみを横に並べた横列部分は、必ずしも設ける必要はなく、基本行列と行置換行列とで冗長部分A2を構成して重みが十分小さくかつ所望の欠損補償能力が得られる場合には、不要である。
今回開示した各実施形態は本発明の例示であって制限的なものではない。本発明の範囲は、上記実施形態ではなく特許請求の範囲によって示され、特許請求の範囲とその構成と均等な意味及び範囲内での全ての変更が含まれる。
例えば、図5に示す生成行列Aにおいて、部分行列Jの単位行列のみを横に並べた横列部分は、必ずしも設ける必要はなく、基本行列と行置換行列とで冗長部分A2を構成して重みが十分小さくかつ所望の欠損補償能力が得られる場合には、不要である。
また、上記実施形態では、映像及び音声データをストリーミング配信するシステムに適用する形態を示したが、本発明はこれに限らず、映像データのみを配信するシステムや音声データのみを配信するシステム等に適用する等、種々の情報配信システムに対して適用することが可能である。
1 送信装置(符号化装置)
2 受信装置(復号装置)
3 ネットワーク
11 制御部
12 記憶部
13 通信部
14 圧縮符号化手段
15 欠損補償符号化手段
21 制御部
22 記憶部
23 通信部
24 欠損補償復号手段
25 伸長復号手段
u 情報データ
w 符号化データ
A 生成行列
A1 単位行列部分
A2 冗長部分
J 部分行列
G 分割数
2 受信装置(復号装置)
3 ネットワーク
11 制御部
12 記憶部
13 通信部
14 圧縮符号化手段
15 欠損補償符号化手段
21 制御部
22 記憶部
23 通信部
24 欠損補償復号手段
25 伸長復号手段
u 情報データ
w 符号化データ
A 生成行列
A1 単位行列部分
A2 冗長部分
J 部分行列
G 分割数
Claims (11)
- k個の情報データui(i=1〜k)のそれぞれを任意の分割数Gで分割してなる分割情報データui,j(i=1〜k,j=1〜G)を、単位行列部分A1と冗長部分A2とで構成された生成行列Aを用いて欠損補償符号化し、n(>k)個の符号化データwi(i=1〜n)のそれぞれを前記分割数Gで分割してなる分割符号化データwi,j(i=1〜n,j=1〜G)を生成する符号化装置であって、
前記生成行列Aの冗長部分A2は、前記分割数Gと同次数の正方行列である部分行列Jを構成単位とする、次の(1)及び(2)で定義される基本行列及び行置換行列を含む2次元配列で構成され、
含まれる「1」の位置が同じである行列で対角成分以外の「1」の位置が重複しない複数種類の前記基本行列が、同じ縦列にならないように各横列に配置され、同じ前記基本行列から派生する複数種類の前記行置換行列が、当該基本行列と同じ横列に配置されていることを特徴とする符号化装置。
(1)基本行列:「1」の位置が三角行列となるように設定された部分行列J
(2)行置換行列:基本行列の行順序を入れ替えた関係を有する部分行列J - 前記基本行列は、前記部分行列Jの「1」の数をQとしたとき、その数Qが当該部分行列Jの全成分数(G×G)に対して約50%未満となるように設定されている請求項1に記載の符号化装置。
- 前記生成行列Aの冗長部分A2は、前記部分行列Jの「1」の数をQとしたとき、Q=G+(G−1)×(h−1)の式で算出される重みhが少ないものから順に選択された前記基本行列を含んでいる請求項1又は2に記載の符号化装置。
- 前記生成行列Aの冗長部分A2は、前記部分行列Jの単位行列のみを横に並べて構成された横列部分を有する請求項1〜3のいずれか1項に記載の符号化装置。
- n個の符号化データwi(i=1〜n)を任意の分割数Gで分割してなる、無欠損の場合に(G×n)個となる分割符号化データwi,j(i=1〜n,j=1〜G)を、単位行列部分A1と冗長部分A2とで構成された生成行列Aを用いて欠損補償復号し、k(<n)個の情報データui(i=1〜k)のそれぞれを前記分割数Gで分割してなる分割情報データui,j(i=1〜k,j=1〜G)を復元する復号装置であって、
前記生成行列Aの冗長部分A2は、前記分割数Gと同次数の正方行列である部分行列Jを構成単位とする、次の(1)及び(2)で定義される基本行列及び行置換行列を含む2次元配列で構成され、
含まれる「1」の数が同じである行列で対角成分以外の「1」の位置が重複しない複数種類の前記基本行列が、同じ縦列にならないように各横列に配置され、同じ前記基本行列から派生する複数種類の前記行置換行列が、当該基本行列と同じ横列に配置されていることを特徴とする復号装置。
(1)基本行列:「1」の位置が三角行列となるように設定された部分行列J
(2)行置換行列:基本行列の行順序を入れ替えた関係を有する部分行列J - 前記基本行列は、前記部分行列Jの「1」の数をQとしたとき、その数Qが当該部分行列Jの全成分数(G×G)に対して約50%未満となるように設定されている請求項5に記載の復号装置。
- 前記生成行列Aの冗長部分A2は、前記部分行列Jの「1」の数をQとしたとき、Q=G+(G−1)×(W−1)の式で算出される重みhが少ないものから順に選択された前記基本行列を含んでいる請求項5又は6に記載の復号装置。
- 前記生成行列Aの冗長部分A2は、前記部分行列Jの単位行列のみを横に並べて構成された横列部分を有する請求項5〜7のいずれか1項に記載の復号装置。
- コンピュータを請求項1〜4のいずれか1項に記載の符号化装置として機能させるためのコンピュータプログラム。
- コンピュータを請求項5〜8のいずれか1項に記載の復号装置として機能させるためのコンピュータプログラム。
- 次の工程(1)〜(4)を含むことを特徴とする、欠損補償符号化又は復号に用いるために単位行列部分と冗長部分とで構成された生成行列の作成方法。
(1) 前記生成行列の単位行列部分を作成する工程
(2) 情報データの分割数と同次数の正方行列を部分行列とした場合に、この部分行列が三角行列となるように「1」の位置が設定された、含まれる「1」の数が同じである行列で対角成分以外の「1」の位置が重複しない複数種類の基本行列を作成する工程
(3) 前記基本行列の行順序を入れ替えた関係を有する行置換行列を作成する工程
(4) 複数種類の前記基本行列の全部又は一部を同じ縦列及び横列にならないように配置し、かつ、同じ前記基本行列から派生する複数種類の前記行置換行列の全部又は一部を当該基本行列と同じ横列に配置することにより、前記部分行列を構成単位とした2次元配列よりなる、前記生成行列の冗長部分を作成する工程
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008312408A JP2010136279A (ja) | 2008-12-08 | 2008-12-08 | 符号化装置、復号装置、生成行列の作成方法及びコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008312408A JP2010136279A (ja) | 2008-12-08 | 2008-12-08 | 符号化装置、復号装置、生成行列の作成方法及びコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010136279A true JP2010136279A (ja) | 2010-06-17 |
Family
ID=42347074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008312408A Pending JP2010136279A (ja) | 2008-12-08 | 2008-12-08 | 符号化装置、復号装置、生成行列の作成方法及びコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010136279A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014021558A1 (ko) * | 2012-07-31 | 2014-02-06 | Choi Sujeong | 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치 |
WO2014021559A1 (ko) * | 2012-07-31 | 2014-02-06 | Choi Sujeong | 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치 |
-
2008
- 2008-12-08 JP JP2008312408A patent/JP2010136279A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014021558A1 (ko) * | 2012-07-31 | 2014-02-06 | Choi Sujeong | 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치 |
WO2014021559A1 (ko) * | 2012-07-31 | 2014-02-06 | Choi Sujeong | 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101159432B1 (ko) | 스케일러블 정보 신호, 스케일러블 정보 내용를 인코딩하기 위한 장치와 방법 및 스케일러블 정보 신호의 에러를 정정하기 위한 장치 및 방법 | |
US8924827B2 (en) | Methods and systems for minimizing decoding delay in distributed video coding | |
KR101922990B1 (ko) | 멀티미디어 통신 시스템에서 준순환 저밀도 패리티 검사 부호 송/수신 장치 및 방법 | |
CN110943800A (zh) | 数据包的发送方法、装置及系统、存储介质、电子装置 | |
JP4559126B2 (ja) | 映像送信方法、映像送信装置、映像送信用プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP5610709B2 (ja) | エラー訂正用データの生成装置、及び生成方法 | |
JP7408152B2 (ja) | メディア内容に基づく自己適応システムコードfec符号化および復号化方法、装置、システムおよび媒体 | |
JP2007166605A (ja) | パリティ検査行列、パリティ検査行列の生成方法、エンコーディング方法及びエラー訂正装置 | |
JP6519474B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP6117994B2 (ja) | 符号化および復号の方法および装置 | |
JP6511472B2 (ja) | ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置 | |
JP2010136279A (ja) | 符号化装置、復号装置、生成行列の作成方法及びコンピュータプログラム | |
KR101967884B1 (ko) | 방송 및 통신 시스템에서 패킷 송/수신 장치 및 방법 | |
JP2018536325A (ja) | 画像群(gop)に基づいてビデオデータのストリームを符号化するための方法 | |
JP2014045341A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP4755691B2 (ja) | 高画質圧縮映像伝送システム | |
KR101272846B1 (ko) | 저밀도 패리티 검사 부호를 이용한 분산 소스 부호화 및 복호화 방법, 그리고 분산 소스 부호화 및 복호화 장치 | |
JP2011109364A (ja) | 画像処理装置 | |
US9167279B2 (en) | Method for payload formatting and deformatting for burst loss recovery | |
JP5595260B2 (ja) | 受信機 | |
JP2009049463A (ja) | 情報伝送システム、受信装置、データ復号方法、コンピュータプログラム及びデータ構造 | |
KR102014710B1 (ko) | 방송 및 통신 시스템에서 패킷 송/수신 장치 및 방법 | |
JP2009044702A (ja) | 情報伝送システム、送信装置、受信装置、生成行列の作成方法及びコンピュータプログラム | |
EP3171536B1 (en) | Receiving device, receiving method, and computer program | |
JP2010245777A (ja) | データ伝送装置および方法 |