(57)【要約】【課題】  生成行列の冗長部分の「１」を少なくしても欠損補償能力の低下を抑制でき、その欠損補償能力の維持と演算時間の低下の両立を図る。【解決手段】  欠損補償符号化又は復号に用いる生成行列Ａの冗長部分Ａ２を、分割数Ｇと同次数の正方行列である部分行列Ｊを構成単位とする、次の（１）及び（２）の基本行列及び行置換行列を含む２次元配列で構成する。含まれる「１」の数が同じである行列で対角成分以外の「１」の位置が重複しない複数種類の基本行列を、同じ縦列にならないように各横列に配置し、同じ基本行列から派生する複数種類の行置換行列を、当該基本行列と同じ横列に配置する。  （１）基本行列：「１」の位置が三角行列となるように設定された部分行列Ｊ  （２）行置換行列：基本行列の行順序を入れ替えた関係を有する部分行列Ｊ【選択図】      図４
2010136279.tif 000002
【特許請求の範囲】
【請求項１】
ｋ個の情報データｕi（i=1〜k）のそれぞれを任意の分割数Ｇで分割してなる分割情報データｕi,j（i=1〜k,j=1〜G）を、単位行列部分Ａ１と冗長部分Ａ２とで構成された生成行列Ａを用いて欠損補償符号化し、ｎ（＞ｋ）個の符号化データｗi（i=1〜n）のそれぞれを前記分割数Ｇで分割してなる分割符号化データｗi,j（i=1〜n,j=1〜G）を生成する符号化装置であって、
前記生成行列Ａの冗長部分Ａ２は、前記分割数Ｇと同次数の正方行列である部分行列Ｊを構成単位とする、次の（１）及び（２）で定義される基本行列及び行置換行列を含む２次元配列で構成され、
含まれる「１」の位置が同じである行列で対角成分以外の「１」の位置が重複しない複数種類の前記基本行列が、同じ縦列にならないように各横列に配置され、同じ前記基本行列から派生する複数種類の前記行置換行列が、当該基本行列と同じ横列に配置されていることを特徴とする符号化装置。
（１）基本行列：「１」の位置が三角行列となるように設定された部分行列Ｊ
（２）行置換行列：基本行列の行順序を入れ替えた関係を有する部分行列Ｊ
【請求項２】
前記基本行列は、前記部分行列Ｊの「１」の数をＱとしたとき、その数Ｑが当該部分行列Ｊの全成分数（Ｇ×Ｇ）に対して約５０％未満となるように設定されている請求項１に記載の符号化装置。
【請求項３】
前記生成行列Ａの冗長部分Ａ２は、前記部分行列Ｊの「１」の数をＱとしたとき、Ｑ＝Ｇ＋（Ｇ−１）×（ｈ−１）の式で算出される重みｈが少ないものから順に選択された前記基本行列を含んでいる請求項１又は２に記載の符号化装置。
【請求項４】
前記生成行列Ａの冗長部分Ａ２は、前記部分行列Ｊの単位行列のみを横に並べて構成された横列部分を有する請求項１〜３のいずれか１項に記載の符号化装置。
【請求項５】
ｎ個の符号化データｗi（i=1〜n）を任意の分割数Ｇで分割してなる、無欠損の場合に（Ｇ×ｎ）個となる分割符号化データｗi,j（i=1〜n,j=1〜G）を、単位行列部分Ａ１と冗長部分Ａ２とで構成された生成行列Ａを用いて欠損補償復号し、ｋ（＜ｎ）個の情報データｕi（i=1〜k）のそれぞれを前記分割数Ｇで分割してなる分割情報データｕi,j（i=1〜k,j=1〜G）を復元する復号装置であって、
前記生成行列Ａの冗長部分Ａ２は、前記分割数Ｇと同次数の正方行列である部分行列Ｊを構成単位とする、次の（１）及び（２）で定義される基本行列及び行置換行列を含む２次元配列で構成され、
含まれる「１」の数が同じである行列で対角成分以外の「１」の位置が重複しない複数種類の前記基本行列が、同じ縦列にならないように各横列に配置され、同じ前記基本行列から派生する複数種類の前記行置換行列が、当該基本行列と同じ横列に配置されていることを特徴とする復号装置。
（１）基本行列：「１」の位置が三角行列となるように設定された部分行列Ｊ
（２）行置換行列：基本行列の行順序を入れ替えた関係を有する部分行列Ｊ
【請求項６】
前記基本行列は、前記部分行列Ｊの「１」の数をＱとしたとき、その数Ｑが当該部分行列Ｊの全成分数（Ｇ×Ｇ）に対して約５０％未満となるように設定されている請求項５に記載の復号装置。
【請求項７】
前記生成行列Ａの冗長部分Ａ２は、前記部分行列Ｊの「１」の数をＱとしたとき、Ｑ＝Ｇ＋（Ｇ−１）×（Ｗ−１）の式で算出される重みｈが少ないものから順に選択された前記基本行列を含んでいる請求項５又は６に記載の復号装置。
【請求項８】
前記生成行列Ａの冗長部分Ａ２は、前記部分行列Ｊの単位行列のみを横に並べて構成された横列部分を有する請求項５〜７のいずれか１項に記載の復号装置。
【請求項９】
コンピュータを請求項１〜４のいずれか１項に記載の符号化装置として機能させるためのコンピュータプログラム。
【請求項１０】
コンピュータを請求項５〜８のいずれか１項に記載の復号装置として機能させるためのコンピュータプログラム。
【請求項１１】
次の工程（１）〜（４）を含むことを特徴とする、欠損補償符号化又は復号に用いるために単位行列部分と冗長部分とで構成された生成行列の作成方法。
（１）  前記生成行列の単位行列部分を作成する工程
（２）  情報データの分割数と同次数の正方行列を部分行列とした場合に、この部分行列が三角行列となるように「１」の位置が設定された、含まれる「１」の数が同じである行列で対角成分以外の「１」の位置が重複しない複数種類の基本行列を作成する工程
（３）  前記基本行列の行順序を入れ替えた関係を有する行置換行列を作成する工程
（４）  複数種類の前記基本行列の全部又は一部を同じ縦列及び横列にならないように配置し、かつ、同じ前記基本行列から派生する複数種類の前記行置換行列の全部又は一部を当該基本行列と同じ横列に配置することにより、前記部分行列を構成単位とした２次元配列よりなる、前記生成行列の冗長部分を作成する工程
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生成行列を用いてそれぞれ欠損補償符号化及び復号を行う符号化装置及び復号装置と、その生成行列の作成方法と、コンピュータプログラムに関する。
より具体的には、欠損補償符号化及び復号に用いる生成行列の冗長部分と、その効率的な作成する方法に関する。
【背景技術】
【０００２】
例えば、ユーザの要求に応じて、映画、テレビジョン放送、コンサート等の様々な映像データを、ネットワークを介してストリーミング配信するビデオオンデマンドと呼ばれる映像配信システムが普及している。
上記ビデオオンデマンドの映像配信システムでは、映像データを送信装置からパケット単位でネットワーク上へ送出し、送出されたパケットをセットトップボックス等よりなる受信装置で受信し、受信した一連のパケットに含まれる映像データに基づいて映像データを出力する（例えば、特許文献１参照）。
【０００３】
このような映像配信システムでは、送信装置から送出されたパケットがネットワークを転送中に欠損する場合がある。パケットに欠損が生じるとそのパケットに含まれる映像データが欠落するので、受信装置側で出力される映像に乱れが生じる。
そこで、転送中に欠損したパケットに含まれる映像データを補償する方法として、組織符号や非組織符号（例えば、ＬＴ符号とＲａｐｔｏｒ(TM)符号）による欠損補償符号化及び復号方式が採用されている。
【０００４】
上記方式は、ＦＥＣ（Forward Error Correction：前方誤り訂正）技術の一つであり、本来の映像データ（オリジナルデータ）を所定長のブロック単位に分割し、ブロック単位に分割した情報データに冗長データを付加することで欠損箇所を補償可能とする欠損補償符号化を行い、符号化されたデータを送信装置から送出する。
他方、受信装置では、受信した伝送データからブロック単位のデータを生成し、このブロック単位のデータに対して欠損を補償する欠損補償復号を行う。
【０００５】
すなわち、より具体的には、符号化機能を有する送信装置での欠損補償符号化(エンコード処理)において、生成行列と呼ばれるマトリックスを情報データ(情報ベクトル)に掛けることで符号化データ(符号化ベクトル)が生成され、かつ、復号機能を有する受信装置での欠損補償復号(デコード処理)においては、通信路を経て受信した符号化データに対して、送信側と同じ生成行列を係数とした連立方程式をガウス消去法等の解法で解くことにより、情報データが復元される。
【０００６】
【特許文献１】特開２００４−８０１６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
符号化データを情報ビットと冗長ビットとからなる組織符号で構成する場合には、上記生成行列として、単位行列部分と冗長部分とで構成されたものが使用される。
かかる組織化された生成行列では、単位行列部分を除いた冗長部分（パリティ部分）の行重み（生成行列の行内に存在する「１」の数）を少なくすると、欠損補償符号化及び復号の演算時間を低減することが可能である。
【０００８】
しかし、生成行列の冗長部分での行重みを少なくすると、生成行列における符号化データの欠損対応部分を除いた残りの行列（以下、残余生成行列ということがある。）の階数（rank）が、当該行列の列数未満になる確率が高くなる。
つまり、符号化データの欠損によってフルランクではない残余生成行列が得られる確率が高くなるため、行重みが減少すると欠損補償（誤り訂正）能力が低下してしまう。
【０００９】
そこで、生成行列の冗長部分の「１」の位置を、疑似乱数発生器等を用いてランダムに設定し、このようにして作成した複数の生成行列の中から欠損補償能力の良いものを選択するのこともあるが、この場合、冗長部分の「１」の存在率は、全成分数に対して約５０％以上を占める必要があり、欠損補償符号化及び復号の演算時間が長くなる。このように、欠損補償能力とその演算時間とは互いにトレードオフの関係にある。  
【００１０】
一方、この種の欠損補償符号化及び復号において、情報データのそれぞれを任意の分割数で分割した分割パケットとして冗長度を増し、符号化データのハミング距離を増大して欠損補償能力を増加させる手法がある。
しかし、この手法を採用する場合において、情報データの分割数を増加させると、これによって生成行列の行列サイズが当該分割数の２乗で増大するため、生成行列の冗長部分の「１」の数も２乗で増大し、欠損補償符号化及び復号の演算時間の増大がより顕著となる。
【００１１】
本発明は、このような従来の問題点に鑑み、生成行列の冗長部分の「１」を少なくしても欠損補償能力の低下を抑制でき、その欠損補償能力の維持と演算時間の低下の両立を図ることができる符号化装置及び復号装置等を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の符号化装置（請求項１）は、ｋ個の情報データｕi（i=1〜k）のそれぞれを任意の分割数Ｇで分割してなる分割情報データｕi,j（i=1〜k,j=1〜G）を、単位行列部分Ａ１と冗長部分Ａ２とで構成された生成行列Ａを用いて欠損補償符号化し、ｎ（＞ｋ）個の符号化データｗi（i=1〜n）のそれぞれを前記分割数Ｇで分割してなる分割符号化データｗi,j（i=1〜n,j=1〜G）を生成するものであり、前記生成行列Ａが次の特徴を有する。
【００１３】
すなわち、前記生成行列Ａの冗長部分Ａ２が、前記分割数Ｇと同次数の正方行列である部分行列Ｊを構成単位とする、次の（１）及び（２）で定義される基本行列及び行置換行列を含む２次元配列で構成され、含まれる「１」の数が同じである行列で対角成分以外の「１」の位置が重複しない複数種類の前記基本行列が、同じ縦列にならないように各横列に配置され、同じ前記基本行列から派生する複数種類の前記行置換行列が、当該基本行列と同じ横列に配置されている。
（１）基本行列：「１」の位置が三角行列となるように設定された部分行列Ｊ
（２）行置換行列：基本行列の行順序を入れ替えた関係を有する部分行列Ｊ
【００１４】
本発明の生成行列Ａによれば、冗長部分Ａ２の構成単位が、「１」の位置が三角行列となるように設定された部分行列である複数種類の基本行列と、この基本行列の行順序を入れ替えた関係を有する部分行列である行置換行列になっており、これらの各行列が上記のように配置されているので、欠損した分割符号化データに対応する部分を除いた残余生成行列には、必ずどの列にも「１」が存在し、この残余生成行列がフルランクになる可能性が高い。
【００１５】
このため、上記基本行列の重みをなるべく小さくする（重みが小さい三角行列を選択する。）ことにより、生成行列Ａの冗長部分Ａ２の「１」を少なくしても欠損補償能力の低下を抑制することができ、欠損補償能力の維持と演算時間の低下の両立が可能な生成行列Ａを得ることができる。
【００１６】
例えば、前記基本行列として、前記部分行列Ｊの「１」の数をＱとしたとき、その数Ｑが当該部分行列Ｊの全成分数（Ｇ×Ｇ）に対して約５０％未満となるように設定されたものを採用すれば（請求項２）、この基本行列と当該基本行列から派生する行置換行列を構成単位として冗長部分Ａ２を作成することにより、冗長部分Ａ２の「１」が全成分数に対して約５０％未満となる生成行列Ａが得られる。
【００１７】
また、前記生成行列Ａの冗長部分Ａ２は、前記部分行列Ｊの「１」の数をＱとしたとき、Ｑ＝Ｇ＋（Ｇ−１）×（ｈ−１）の式で算出される重みｈが少ないものから順に選択された前記基本行列を含んでいることが好ましい（請求項３）。
この場合、上記重みｈが少ない基本行列から順に選択されているので、この基本行列と当該基本行列から派生する行置換行列を構成単位とした冗長部分Ａ２を有する生成行列Ａを作成することにより、重みｈの小さい生成行列Ａを得ることができる。
【００１８】
更に、前記生成行列Ａの冗長部分Ａ２として、前記部分行列Ｊの単位行列のみを横に並べて構成された横列部分を有するものを採用すれば（請求項５）、生成行列Ａの重みｈを更に小さく設定することができる。
【００１９】
本発明の復号装置（請求項５）は、ｎ個の符号化データｗi（i=1〜n）を任意の分割数Ｇで分割してなる、無欠損の場合に（Ｇ×ｎ）個となる分割符号化データｗi,j（i=1〜n,j=1〜G）を、単位行列部分Ａ１と冗長部分Ａ２とで構成された生成行列Ａを用いて欠損補償復号し、ｋ（＜ｎ）個の情報データｕi（i=1〜k）のそれぞれを前記分割数Ｇで分割してなる分割情報データｕi,j（i=1〜k,j=1〜G）を復元するものであり、前記生成行列Ａが前記符号化装置（請求項１）の場合と同じ特徴を有する。
【００２０】
従って、本発明の復号装置（請求項５）においても、本発明の符号化装置（請求項１）と同様の作用効果が得られる。
また、本発明のコンピュータプログラム（請求項９及び１０）は、コンピュータを上記符号化装置や復号装置として機能させるものであり、これらのプログラム発明においても、本発明の符号化装置（請求項１）と同様の作用効果を奏する。
【００２１】
また、本発明の作成方法（請求項１１）は、欠損補償符号化又は復号に用いるために単位行列部分と冗長部分とで構成された上記生成行列の作成方法であり、次の工程（１）〜（４）を含むことを特徴とする。
（１）  前記生成行列の単位行列部分を作成する工程
（２）  情報データの分割数と同次数の正方行列を部分行列とした場合に、この部分行列が三角行列となるように「１」の位置が設定された、含まれる「１」の数が同じである行列で対角成分以外の「１」の位置が重複しない複数種類の基本行列を作成する工程
【００２２】
（３）  前記基本行列の行順序を入れ替えた関係を有する行置換行列を作成する工程
（４）  複数種類の前記基本行列の全部又は一部を同じ縦列にならないように各横列に配置し、かつ、同じ前記基本行列から派生する複数種類の前記行置換行列の全部又は一部を当該基本行列と同じ横列に配置することにより、前記部分行列を構成単位とした２次元配列よりなる、前記生成行列の冗長部分を作成する工程
【００２３】
本発明の作成方法によれば、予め基本行列と行置換行列とを作成しておき（工程（２）及び（３））、作成した基本行列と行置換行列とを所定の規則で配置して生成行列の冗長部分を作成するので（工程（４））、所望の欠損補償能力が予想される複数の生成行列を機械的かつ効率的に作成することができる。
【発明の効果】
【００２４】
以上の通り、本発明によれば、生成行列の冗長部分の「１」を少なくしても欠損補償能力の低下を抑制できるので、その欠損補償能力の維持と演算時間の低下の両立を図ることができる。
【発明を実施するための最良の形態】
【００２５】
以下、図面に基づいて、本発明の実施形態を説明する。
〔システム構成〕
図１は、本発明を採用した映像配信システムの構成例を示している。
図１に示すように、本実施形態の映像配信システムは、欠損補償符号化機能を有するデータ送信側の送信装置１と、欠損補償復号機能を有するデータ受信側の受信装置２とを備えている。
【００２６】
送信装置１は、映像及び音声データをパケット単位で送出するサーバコンピュータ等よりなり、そのデータを受信する受信装置２はセットトップボックス等よりなる。
送信装置１から送出された映像及び音声データは、インターネット等よりなるネットワーク（通信網）３を介して受信装置２に伝送される。図１に例示した映像配信システムでは、受信装置２を操作するユーザの要求に応じて、映画、テレビジョン放送やコンサート等の様々な映像及び音声データを、ネットワーク３を介してストリーミング配信するビデオオンデマンドと呼ばれるサービスを提供している。
【００２７】
〔送信装置（符号化装置）〕
上記送信装置１は、この装置１全体を制御するＣＰＵ等よりなる制御部１１と、符号化等のための各種のファームウェア（コンピュータプログラム）や配信する映像及び音声データを記録するハードディスク等よりなる記憶部１２と、ネットワーク３に接続された通信インタフェースよりなる通信部１３とを備えており、これらは共通の内部バスによって互いに接続されている。
【００２８】
送信装置１の制御部１１は、記憶部１２に記録されている映像及び音声データをＭＰＥＧ(Motion Picture Expert Group) 等の符号化形式にて圧縮符号化する圧縮符号化手段１４と、この圧縮符号化手段１４で圧縮符号化された映像及び音声データをブロック単位に分割して、欠損を補償するための冗長データを付加する欠損補償符号化手段１５とを備えている。
これらの符号化手段１４，１５が行う各機能は、記憶部１２に格納されている上記コンピュータプログラムを制御部１１が読み出して実行することによって達成される。
【００２９】
また、記憶部１２には、上記欠損補償符号化に用いる生成行列Ａ（図４及び図５参照）が予め格納されている。欠損補償符号化手段１４は、圧縮符号化されたデータをブロック単位に分割してなる情報データｕに対して、予め記憶された上記生成行列Ａを掛け合わすことにより、冗長化した符号化データｗを生成する。
ここで行列演算は、有限個の元「０」と「１」を持つ体（ガロア体：GF(2)）におけるデータが対象となり、その加算と乗算は次の通りとなる。
０＋０＝０，０＋１＝１，１＋０＝１，１＋１＝０
０×０＝０，０×１＝０，１×０＝０，１×１＝１
【００３０】
図４及び図５に示すように、本実施形態では符号化データｗは組織符号になっており、このため、生成行列Ａは単位行列部分Ａ１と冗長部分Ａ２とに組織化されている。
図４及び図５の例では、生成行列Ａの機能やその作成方法の理解を容易にするために、比較的次数の小さい生成行列Ａを例示しているが、実際の生成行列Ａは、概ね１０００行１０００列〜２０００行２０００列程度の多数の成分を有している。
なお、この生成行列Ａの詳細については後述するが、その作成処理は送信装置１以外の外部コンピュータ（図示せず）で行い、この作成済みの生成行列Ａを不揮発性の記憶領域である記憶部１２に記憶させてもよいし、当該作成処理を送信装置１の制御部１１の演算回路ないしコンピュータプログラムで行うこともできる。
【００３１】
後者の場合には、送信装置１の記憶部１２に、生成行列Ａの作成処理を実行するコンピュータプログラムを記憶させておき、欠損補償符号化を行う際に制御部１１において生成行列Ａを作成し、この作成した生成行列Ａを一時的な記憶領域（メモリ）に記憶させることになる。この場合は、パケットの分割数Ｇを変更しても、柔軟に符号を生成できる。
しかし、欠損補償符号化に必要な生成行列Ａをその符号化の度に作成するのは演算回数を無駄に消費することになるから、作成済みの生成行列Ａを予め記憶部１２に記憶させることもある。
【００３２】
なお、コンサートや市街地等の撮像対象を撮像してライブ配信するために本実施形態のシステムを適用する場合には、記憶部１２に映像及び音声データを予め記録しておくのではなく、カメラ等の撮像手段を用いた撮像により映像及び音声データを生成し、生成した映像及び音声データを圧縮符号化及び欠損補償符号化するようにしてもよい。
また、予め圧縮符号化した映像及び音声データを記憶部１２に記録するようにしてもよく、この場合には圧縮符号化手段１４は不要となる。
【００３３】
〔受信装置（復号装置）〕
一方、受信装置２は、この装置２全体を制御するＣＰＵ等よりなる制御部２１と、復号等のための各種のファームウェア（コンピュータプログラム）や符号化データ等の各種情報を記憶する記憶部２２と、ネットワーク３に接続された通信インタフェースよりなる通信部２３と、映像及び音声データをテレビジョンモニタ等の画像表示装置に出力する出力部２４とを備えており、これらは共通の内部バスによって互いに接続されている。
なお、受信装置２が、テレビジョンモニタを内蔵した装置である場合には、上記出力部２４にはそのモニタやスピーカ等が含まれる。
【００３４】
受信装置２の制御部２１は、欠損したデータを補償するための欠損補償復号手段２５と、欠損したデータを補償して生成した映像及び音声データを伸長復号する伸長復号手段２６とを備えている。
これらの復号手段２５，２６が行う各機能は、記憶部２２に格納されている上記コンピュータプログラムを制御部２１が読み出して実行することによって達成される。
【００３５】
また、記憶部２２にも、上記欠損補償復号に用いられる生成行列Ａが予め格納されている。欠損補償復号手段２５は、通信部２３によりネットワーク３を介してパケット単位で受信したデータからブロック単位のデータを生成し、生成したデータに欠損が生じているか否かを判定するものであり、欠損が生じている場合には、付加されている冗長データに基づいて欠損したデータを補償する。
【００３６】
具体的には、欠損補償復号手段２５は、受信したパケット単位のデータをブロック化してなる符号化データｗに対して、予め記憶された上記生成行列Ａを適用して連立方程式をガウス消去法等で解くことにより、冗長化されている符号化データｗから情報データｕを復元する。どのパケットが欠損したかは、パケットに番号情報を持たせることによって判断する。
なお、制御部２１は、受信したパケット単位のデータを一時的に蓄積するバッファメモリを有しており、このパケット単位のデータに各種処理を実行することで、本実施形態の受信装置２がセットトップボックスとして動作する。
【００３７】
また、受信装置２の記憶部２２にも、生成行列Ａの作成処理を実行するコンピュータプログラムを記憶させておき、欠損補償復号を行う際に制御部２１において、送信装置１側から事前に生成規則を送ることによって生成行列Ａを作成するようにして、作成した生成行列Ａを一時的な記憶領域（メモリ）に記憶させることにしてもよい。また、直接、生成行列Ａを送信装置１から送ってもよい。
【００３８】
〔各装置の処理動作〕
〔ネゴシエーション処理〕
次に、上記送信装置１及び受信装置２が行う各種処理について説明する。
まず、受信装置２は、送信装置１に対して映像及び音声データの送信を要求する。この場合、送信装置１から送出される映像及び音声データに関する組織符号型の欠損補償符号の方式等の諸条件を、受信装置２に認識させるネゴシエーション処理が行われる。なお、このネゴシエーション処理の前に、送信装置１と受信装置２とで生成行列Ａを決めて記憶しておいてもよい。
上記ネゴシエーション処理が完了すると、送信装置１から受信装置２へ映像及び音声データがパケット単位で送信される。
【００３９】
〔送信処理〕
図２は、送信装置１が行う送信処理を示すフローチャートである。
図２に示すように、送信装置１は、制御部１１の圧縮符号化手段１４により、記憶部１２に記録されている映像及び音声データをＭＰＥＧ等の符号化形式を用いて圧縮符号化する（ステップＳ１０１）。
【００４０】
次に、送信装置１は、圧縮符号化した映像及び音声データを、制御部１１の欠損補償符号化手段１５により、所定長のブロック単位に分割するとともに（ステップＳ１０２）、ブロック単位に分割した映像及び音声データに対して欠損を補償する冗長データを付加する欠損補償符号化を行い（ステップＳ１０３）、ブロックの先頭にパケット番号情報を含ませる（ステップＳ１０４）。なお、上記欠損補償符号化は、記憶部１２に記憶された生成行列Ａを用いて行われる。
【００４１】
そして、送信装置１は、制御部１１での通信制御処理により、上記パケット番号情報を含ませたブロック単位の映像及び音声データをパケット単位に分割し（ステップＳ１０５）、通信部１３からネットワーク３上へ送出する（ステップＳ１０６）。
なお、ブロックの末尾に対して、この末尾を区切位置として示す区切位置情報を含ませることにしてもよい。
【００４２】
〔受信処理〕
図３は、受信装置２が行う受信処理を示すフローチャートである。
図３に示すように、受信装置２は、制御部２１での通信制御処理により、通信部２３を介してネットワーク３からパケット単位の映像及び音声データを受信し（ステップＳ２０１）、受信したパケット単位の映像及び音声データを制御部２１に引き渡す。
制御部２１の欠損補償復号手段２５は、受け付けたパケット単位の映像及び音声データをいったんバッファメモリに蓄積する（ステップＳ２０２）。
【００４３】
次に、受信装置２は、制御部２１の欠損補償復号手段２５により、バッファメモリにパケット単位で蓄積した複数の映像及び音声データを、ブロック単位の一つの映像及び音声データとして読み出し（ステップＳ２０３）、読み出した映像及び音声データをブロック単位のデータとして欠損補償復号を実行する（ステップＳ２０４）。
なお、ステップＳ２０４において補償すべき欠損が生じていない場合には、上記欠損補償復号処理（ステップＳ２０４）は省略される。
【００４４】
上記欠損補償復号には、ブロック化してなる符号化データｗに対して、予め記憶された生成行列Ａを適用して連立方程式をガウス消去法等で解き、冗長化されている符号化データｗから情報データｕを復元する処理が含まれる。
そして、受信装置２は、欠損補償復号処理を実行した映像及び音声データを、制御部２１の伸長復号手段２６によって伸長復号し（ステップＳ２０５）、伸長復号した映像及び音声データを出力部２４から出力する出力処理を実行する（ステップＳ２０６）。
【００４５】
上記出力部２４が行う出力処理（ステップＳ２０６）は、受信装置２がテレビジョンモニタに外部接続されたセットトップボックスである場合には、テレビジョンモニタから映像及び音声として出力される映像信号及び音声信号を、当該テレビジョンモニタへ出力する処理のことを意味する。
また、受信装置２０がテレビジョンモニタを内蔵した装置である場合には、出力部２４が行う出力処理（ステップＳ２０６）は、映像及び音声を自身のモニタが出力する処理を意味する。
【００４６】
〔生成行列の構成と作成方法〕
〔生成行列の記述〕
以下、図４〜図８を参照しつつ、上記送信装置１及び受信装置２が使用する生成行列Ａの具体的構造とその作成方法について説明する。
図４は、本実施形態の生成行列Ａの記述法を示すための構成図であり、図５は、当該生成行列Ａのビット配置の一例を示す構成図である。
【００４７】
前記した通り、本実施形態では、送信装置１及び受信装置２が行う欠損補償符号化及び復号において、情報データｕのそれぞれを任意の分割数で分割した分割データとし、符号化データｗのハミング距離を増大して欠損補償能力を増加させる手法を採用している。
このため、図４に示すように、情報データｕｉはそれぞれが任意の分割数Ｇで分割された分割パケット（分割情報データ）で構成されており、情報データｕi（i=1〜k）の数をｋ個とすると、分割情報データｕi,j（i=1〜k,j=1〜G）数は合計でＧ×ｋ個になる。
【００４８】
従って、符号化データｗi（i=1〜n）のそれぞれも任意の分割数Ｇで分割された分割パケット（分割符号化データ）によって構成され、符号化データｗi（i=1〜n）の数をｎ（＞ｋ）個とすると、無欠損の場合の分割符号化データｗi,j（i=1〜n,j=1〜G）数は合計でＧ×ｎ個になる。
なお、図４及び図５では、生成行列Ａの構造と作成方法の理解を容易にするため、ｋ＝８、ｎ＝１４、Ｇ＝４として、比較的次数が少ない生成行列Ａを例示しているが、前記した通り、実際の生成行列Ａの次数はこれより膨大である。
【００４９】
本実施形態では、分割符号化データｗi,j を情報ビットと冗長ビットに分かれた組織符号として定義する。そのため、生成行列Ａは、分割情報データｕi,j に対応する単位行列部分Ａ１と、検査ビットである冗長部分Ａ２とで構成された構造になっている。
従って、図４に示すように、本実施形態の生成行列Ａは、単位行列部分Ａ１が上部でかつ冗長部分Ａ２が下部に位置する（Ｇ×ｎ）行（Ｇ×ｋ）列の行列である。また、単位行列部分Ａ１の行列サイズは（Ｇ×ｋ）行（Ｇ×ｋ）列であり、冗長部分Ａ２の行列サイズは（Ｇ×（ｎ−ｋ））行（Ｇ×ｋ）列である。
【００５０】
また、本実施形態では、分割数Ｇと同次数の正方行列（Ｇ行Ｇ列）を生成行列Ａの「部分行列Ｊ」と定義し、当該生成行列Ａの冗長部分Ａ２を、その部分行列Ｊを構成単位とした２次元配列で構成している。
冗長部分Ａ２を構成する部分行列Ｊはサフィックス付きで「Ｊhi,j」と表わされる（図４参照）。このサフィックス付きの部分行列「Ｊhi,j」の上添え字「ｈ」は、当該部分行列Ｊの重みｈを表す。また、下添え字「ｉ，ｊ」は、重みｈの部分行列Ｊh がどの番号の基本行列又は行置換行列であるかを示している。すなわち、「ｉ」は後述する基本行列の番号であり、「ｊ」は、それが１である場合には基本行列であることを示し、それが２以上の場合には行置換行列の番号を示す。
【００５１】
なお、重みｈが異なる場合には、横列番号ｉと縦列番号ｊをリセットするものとする。  また、部分行列Ｊの重みｈとは、当該部分行列Ｊの「１」の数をＱとしたとき、Ｑ＝Ｇ＋（Ｇ−１）×（ｈ−１）の式で算出される重みのことをいう。
【００５２】
〔基本行列の作成〕
本実施形態では、生成行列Ａの冗長部分Ａ２を構成する部分行列Ｊの一部及び全部が、次に定義される基本行列と行置換行列とで構成されている。
（１）基本行列：「１」の位置が三角行列となるように設定された部分行列Ｊ
（２）行置換行列：基本行列の行順序を入れ替えた関係を有する部分行列Ｊ
【００５３】
図６は、上記基本行列の作成可能個数を示す図である。
図６（ａ）の基本行列は重みｈ＝２であり、この場合、部分行列Ｊの単位行列に対して追加すべき「１」の数は、Ｑ−Ｇ＝（Ｇ−１）×（ｈ−１）＝３×１＝３となる。
図６（ａ）に示すように、重みｈ＝２の最初の基本行列Ｊ21,1（Ｎｏ．１）は、部分行列Ｊの単位行列が上三角行列になるように、その単位行列成分「ｊ（値は１）」の右側（行番号が１つ増加する位置）に「１」を３つ追加したものである。
【００５４】
重みｈ＝２の２番目の基本行列Ｊ22,1（Ｎｏ．２）は、部分行列Ｊの単位行列が上三角行列になり、かつ、最初の基本行列Ｊ21,1（Ｎｏ．１）において「１」を追加しなかった残りの位置に、「１」を追加したものである。
重みｈ＝２の３番目の基本行列Ｊ23,1（Ｎｏ．３）は、部分行列Ｊの単位行列が下三角行列になるように、２行目と３行目の単位行列成分「ｊ（＝１）」の左側の位置に、「１」を追加したものである。
【００５５】
また、重みｈ＝２の４番目の基本行列Ｊ24,1（Ｎｏ．４）は、部分行列Ｊの単位行列が下三角行列になり、かつ、３番目の基本行列Ｊ23,1において「１」を追加しなかった残りの位置に、「１」を追加したものである。
このように、重みｈ＝２の基本行列Ｊ21,1〜Ｊ24,1は、「１」の位置が上三角行列又は下三角行列となるように部分行列Ｊであって、「１」の位置が重複しないように複数種類作成されたものである。
【００５６】
図６（ｂ）の基本行列は重みｈ＝３であり、この場合、部分行列Ｊの単位行列に対して追加すべき「１」の数は、Ｑ−Ｇ＝（Ｇ−１）×（ｈ−１）＝３×２＝６となる。
図６（ｂ）に示すように、重みｈ＝３の最初の基本行列Ｊ31,1（Ｎｏ．１）は、部分行列Ｊの単位行列が上三角行列になるように、「１」を６つ追加したものである。この場合、単位行列成分「ｊ（＝１）」の右側には空きが６つしかないので、重みｈ＝３でかつ上三角行列となる基本行列はこの１種類しかない。
【００５７】
また、重みｈ＝３の２番目の基本行列Ｊ32,1（Ｎｏ．２）は、部分行列Ｊの単位行列が下三角行列になるように、「１」を６つ追加したものである。この場合、単位行列成分「ｊ（＝１）」の左側には空きが６つしかないので、重みｈ＝３でかつ上三角行列となる基本行列もこの１種類しかない。
【００５８】
なお、重みｈ＝４の場合には、Ｑ−Ｇ＝（Ｇ−１）×（ｈ−１）＝３×３＝９個の「１」を追加することになるが、Ｇ＝４の部分行列Ｊではこのような追加は不可能であるから、重みｈ＝４以上の基本行列は存在しない。
また、一般に、（Ｇ×Ｇ）の正方行列よりなる部分行列Ｊにおいて、重みｈの当該部分行列Ｊで作成できる基本行列の作成可能個数は、Ｇ／（ｈ−１）通りである。
【００５９】
〔行置換行列の作成〕
図７及び図８は、行置換行列の作成可能個数を示す図である。
なお、この図６及び図７では、重みｈ＝２の最初の基本行列Ｊ21,1（図６（ａ）のＮｏ．１）を例として、それから派生する行置換行列の作成可能個数を示しているが、その他の番号の基本行列についても、以下に述べる操作と同じ操作によって行置換行列を派生させることができる。
【００６０】
前記定義（２）で述べた通り、行置換行列は、基本行列の行順序を入れ替えた関係を有する部分行列Ｊである。そこで、行置換行列の作成可能個数としては、図７の上段に示すように、特定の基本行列の行番号を下に向かって１つずつ順番に繰り下げることによって構成できる。
なお、図７の下段は、基本行列とこれから派生し得る各行置換行列を、基本行列の行番号１〜４を成分値として有するベクトル表示で表したものである。
【００６１】
一方、基本行列とこれから派生し得る各行置換行列の総数は、図８に示すように、基本行列の行順序を入れ替えた場合の順列数に等しく、この場合、基本行列の行数がＧ＝４個あるから、Ｇ！＝４×３×２×１＝２４通りあることになる。
【００６２】
〔冗長部分に対する基本行列及び行置換行列の配列〕
図４及び図５に戻り、生成行列Ａの冗長部分Ａ２の具体的構造を説明する。
本実施形態の生成行列Ａでは、予め作成された上記基本行列及び行置換行列を、次のように配列することによって冗長部分Ａ２が構成されている。
すなわち、本実施形態では、複数種類の基本行列Ｊ21,1，Ｊ22,1，Ｊ23,1，Ｊ24,1，Ｊ31,1が、例えば図４の太線枠で示すように、対角状に配置されている。なお、基本行列は要するに同じ縦列にならないように各横列に配置されておればよく、対角状でなくてもよい。
【００６３】
次に、異なる複数種類の行置換行列については、同じ基本行列から派生するものが、当該基本行列と同じ横列となるように配置されている。
すなわち、図４に示す冗長部分Ａ２において、重みｈ＝２の場合の最初の基本行列Ｊ21,1が、上から２番目の第２横列における最初の縦列（第１列）に配置されており、この基本行列Ｊ21,1の右側の第２縦列以降に、図７及び図８の入れ替え操作によって作成された複数種類の行置換行列の一部が、順に配置されている。
【００６４】
また、図４に示す冗長部分Ａ２において、重みｈ＝２の場合の２番目の基本行列Ｊ22,1が上から３番目の第３横列における第２縦列に配置されており、この基本行列Ｊ22,1の右側の第３縦列以降に、図７及び図８の入れ替え操作によって作成された複数種類の行置換行列の一部が、順に配置されている。
そして、重みｈ＝２の場合の他の基本行列Ｊ23,1，Ｊ24,1についても、当該基本行列の右側に、図７及び図８の入れ替え操作によって作成された複数種類の行置換行列の一部を、順に配置することにより、冗長部分Ａ２の横列が構成されている。
【００６５】
なお、Ｇ＝４の場合には、重みｈ＝２の基本行列は４種類しか存在しない（図６（ａ）参照）。そこで、本実施形態では、冗長部分Ａ２の第６横列（図４の最終横列）については、重みｈ＝３の場合の最初の基本行列Ｊ31,1と、これから派生する各行置換行列を当該基本行列Ｊ31,1の右側に順に配置することにより、重みｈ＝３の場合の第１横列が構成されている。
【００６６】
一方、重みｈ＝１の場合には、基本行列は単位行列という特殊な三角行列となる。この単位行列は、重みが最も小さいので最優先で冗長部分Ａ２に採用される必要があり、他の基本行列の相対的な位置の基準となるため、異なる行置換行列を横列に配置する必要はなく、同じ単位行列を採用すればよい。
そこで、図５に示すように、本実施形態では、部分行列Ｊの単位行列で作成された横列部分を構成し、この横列部分を冗長部分Ａ２の最上部の横列に配置している。すなわち、冗長部分Ａ２の上から１番目の第１横列は、部分行列Ｊの単位行列のみを横に並べて構成された横列部分になっている。
なお、上記のように作成した生成行列Ａに対して、冗長部分Ａ２における横列の順序を入れ替えてもよい。冗長部分Ａ２の横列の順序を入れ替えても等価の連立方程式が得られるからである。
【００６７】
〔生成行列の作成手順〕
以上説明した生成行列Ａの作成手順を纏めると、次の通りである。
（１）  生成行列Ａの単位行列部分Ａ１を作成する。
（２）  情報データｕの分割数Ｇと同次数の正方行列を部分行列Ｊとした場合に、この部分行列Ｊが三角行列となるように「１」の位置が設定された、「１」の位置が重複しない複数種類の基本行列（図６）を作成する。
【００６８】
（３）  基本行列の行順序を入れ替えた関係を有する行置換行列（図７及び図８）を作成する。
（４）  複数種類の基本行列の全部又は一部を可能な限り同じ縦列にならないように各横列に配置し、かつ、同じ基本行列から派生する複数種類の行置換行列の全部又は一部を当該基本行列と同じ横列に配置して、生成行列Ａの冗長部分Ａ２を作成する。
なお、上記生成行列Ａは、当該生成行列を「0010001010」といった形式でそのままＨＤＤや不揮発性メモリなどのコンピュータ読取可能な記録媒体に保存する方法もあるが、各行ごとに「１」が存在する場所を、「３番目」「７番目」「９番目」といった情報に変換して記録媒体に保存し、符号化ならびに復号の際に使用することもできる。
この場合、符号化装置では、分割情報データｕi,j（i=1〜k,j=1〜G）のうち、「３番目」「７番目」「９番目」を選択し、排他的論理和(XOR)演算をこの３つの分割情報データに対して行うことを意味する。
【００６９】
〔生成行列の効果〕
図５に示す生成行列Ａにおいて、冗長分（ｎ−ｋ）個以下の数で幾つかの分割符号化データｗi,j（i=1〜n,j=1〜G）がパケット単位で欠損した場合を想定する。
この場合、例えば、ｗ6,j〜ｗ10,jまでの５つの分割符号化データが欠損したとすると、図５に示す生成行列Ａにおけるハッチングで示す行部分が無くなったのと等価の状態となる。
【００７０】
このさい、本実施形態の生成行列Ａによれば、冗長部分Ａ２の構成単位が、「１」の位置が重複しない三角行列よりなる複数種類の基本行列と、この基本行列の行順序を入れ替えた関係を有する行置換行列とからなり、異なる複数種類の基本行列が同じ縦列にならないように各横列に配置され、同じ基本行列から派生する複数種類の行置換行列が当該基本行列と同じ横列に配置されているので、欠損した分割符号化データｗ6,j〜ｗ10,j に対応する部分を生成行列Ａから除いた行列（図５の生成行列Ａにおけるハッチング以外の部分：残余生成行列）には、必ずどの列にも「１」が存在する。
【００７１】
このため、データ欠損後に得られる残余生成行列がフルランクになる可能性が高く、その残余生成行列と残りの分割符号化データｗi,jから、欠損した情報データｕ6,j〜ｕ8,j を回復できる可能性が高くなる。
【００７２】
従って、重みｈがなるべく小さい基本行列を選択して、生成行列Ａの冗長部分Ａ２の「１」の数を極力少なくしても、欠損補償能力の低下を抑制することができ、欠損補償能力の維持と演算時間の低下の両立が可能な生成行列を得ることができる。
例えば、部分行列Ｊの「１」の数をＱとして、その数Ｑが部分行列Ｊの全成分数（Ｇ×Ｇ）に対して５０％未満となるように設定すれば、冗長部分Ａ２の「１」の存在率も確実に５０％未満となり、「１」の数を従来よりも少なく抑えることができる。
【００７３】
また、本実施形態の生成行列Ａのように、重みｈ（＝２）の基本行列から順に選択するようにすれば、この基本行列と当該基本行列から派生する行置換行列を構成単位とした冗長部分Ａ２を有する生成行列Ａを作成することにより、重みｈの小さい生成行列Ａを得ることができる。
更に、本実施形態の生成行列Ａでは、その冗長部分Ａ２として、部分行列Ｊの単位行列のみを横に並べて構成された横列部分（冗長部分Ａ２の第１横列）を有するので、生成行列Ａの重みｈを更に小さく設定することができる。
【００７４】
〔分割数が４を超える場合の基本行列〕
図９〜図１５は、分割数Ｇが４を超える場合の基本行列を示している。
このうち、図９は、分割数Ｇ＝８でかつ重みｈ＝２の場合の基本行列を示している。この場合、基本行列の作成可能個数は、Ｇ／（ｈ−１）＝８／（２−１）＝８通りである。また、図１０は、分割数Ｇ＝８でかつ重みｈ＝３の場合の基本行列を示している。この場合、基本行列の作成可能個数は、Ｇ／（ｈ−１）＝８／（３−１）＝４通でりある。
【００７５】
図１１は、分割数Ｇ＝８でかつ重みｈ＝４及び５の場合の基本行列を示している。
重みｈ＝４の基本行列の作成可能個数は、Ｇ／（ｈ−１）＝８／（４−１）＝２．３３≒２通り（小数点以下は繰り下げ）である。
また、重みｈ＝５の基本行列の作成可能個数は、Ｇ／（ｈ−１）＝８／（５−１）＝２通りである。
【００７６】
図１２〜図１５は、分割数Ｇ＝１６でかつ重みｈ＝２の場合の基本行列を示している。この場合、基本行列の作成可能個数は、Ｇ／（ｈ−１）＝１６／（２−１）＝１６通りある。
【００７７】
〔その他の変形例〕
今回開示した各実施形態は本発明の例示であって制限的なものではない。本発明の範囲は、上記実施形態ではなく特許請求の範囲によって示され、特許請求の範囲とその構成と均等な意味及び範囲内での全ての変更が含まれる。
例えば、図５に示す生成行列Ａにおいて、部分行列Ｊの単位行列のみを横に並べた横列部分は、必ずしも設ける必要はなく、基本行列と行置換行列とで冗長部分Ａ２を構成して重みが十分小さくかつ所望の欠損補償能力が得られる場合には、不要である。
【００７８】
また、上記実施形態では、映像及び音声データをストリーミング配信するシステムに適用する形態を示したが、本発明はこれに限らず、映像データのみを配信するシステムや音声データのみを配信するシステム等に適用する等、種々の情報配信システムに対して適用することが可能である。
【図面の簡単な説明】
【００７９】
【図１】映像配信システムの構成例を示すブロック図である。
【図２】送信装置の送信処理を示すフローチャートである。
【図３】受信装置の受信処理を示すフローチャートである。
【図４】生成行列の記述法を示すための構成図である。
【図５】生成行列のビット配置の一例を示す構成図である。
【図６】基本行列の作成可能個数を示す図である。
【図７】行置換行列の作成可能個数を示す図である。
【図８】行置換行列の作成可能個数を示す図である。
【図９】分割数Ｇ＝８でかつ重みｈ＝２の場合の基本行列である。
【図１０】分割数Ｇ＝８でかつ重みｈ＝３の場合の基本行列である。
【図１１】分割数Ｇ＝８でかつ重みｈ＝４及び５の場合の基本行列である。
【図１２】分割数Ｇ＝１６でかつ重みｈ＝２の場合の基本行列である。
【図１３】分割数Ｇ＝１６でかつ重みｈ＝２の場合の基本行列である。
【図１４】分割数Ｇ＝１６でかつ重みｈ＝２の場合の基本行列である。
【図１５】分割数Ｇ＝１６でかつ重みｈ＝２の場合の基本行列である。
【符号の説明】
【００８０】
１    送信装置（符号化装置）
２    受信装置（復号装置）
３    ネットワーク
１１    制御部
１２    記憶部
１３    通信部
１４    圧縮符号化手段
１５    欠損補償符号化手段
２１    制御部
２２    記憶部
２３    通信部
２４    欠損補償復号手段
２５    伸長復号手段
ｕ    情報データ
ｗ    符号化データ
Ａ    生成行列
Ａ１  単位行列部分
Ａ２  冗長部分
Ｊ    部分行列
Ｇ    分割数
【図１】
2010136279.tif 000003
【図２】
2010136279.tif 000004
【図３】
2010136279.tif 000005
【図４】
2010136279.tif 000006
【図５】
2010136279.tif 000007
【図６】
2010136279.tif 000008
【図７】
2010136279.tif 000009
【図８】
2010136279.tif 000010
【図９】
2010136279.tif 000011
【図１０】
2010136279.tif 000012
【図１１】
2010136279.tif 000013
【図１２】
2010136279.tif 000014
【図１３】
2010136279.tif 000015
【図１４】
2010136279.tif 000016
【図１５】
2010136279.tif 000017