(57)【要約】【課題】受信装置に届けられる映像データの品質の低下を抑制しつつ、処理済のパケット群に関する十分な量の情報を分析することで新たな処理対象のパケット群の選別を行うような技術と比較して、その映像データの送信遅延を小さくする。【解決手段】受信装置３０は、映像送信装置１０に対して、映像データの識別子であるファイル名を含む要求を送信する。映像送信装置１０は、複数の受信装置３０から送信された上記要求を受け取って、これらの受信装置３０群に対して最適な最大画素数や符号化のときの階層数等の符号化条件を特定し、この符号化条件にしたがって映像データを階層符号化する。映像中継装置２０は、階層符号化された映像データのパケットを中継する際には、上記の複数の受信装置３０に含まれる各受信装置３０に対し、これらの各々の受信装置３０に応じて、特定の階層に対応するパケットを抽出して、或いは、全パケットをそのまま宛先へと転送する。【選択図】図１
2011216986.tif 000002
【特許請求の範囲】
【請求項１】
空間階層及び時間階層で階層符号化された複数のピクチャからなる映像データを、当該映像データの宛先である受信装置に宛てて送信する送信装置と、
前記映像送信装置と前記受信装置との間で前記映像データの中継を行う中継装置とを備え、
前記送信装置は、
階層符号化された前記映像データの内容を、予め決められた数のピクチャ群からなるグループ単位で分析する分析手段と、
前記分析手段による分析結果に基づいて、各々の前記グループに含まれるピクチャ群によって表される映像の動きが大きい動画モードであるか、または、当該ピクチャ群によって表される映像の動きが小さい静止画モードであるかを表すグループ属性情報を、各々の前記グループについて生成する属性情報生成手段と、
階層符号化された前記映像データと生成された前記グループ属性情報とをカプセル化してパケット群を生成し、前記受信装置に宛てて送信する送信手段とを有し、
前記中継装置は、
前記パケット群を受信する受信手段と、
前記受信手段によって受信されたパケット群に含まれるグループ属性情報が前記動画モードを表している場合には、空間階層よりも時間階層に重みをおいてパケットを選別する手順を含む第１の関数を用い、また、前記グループ属性情報が前記静止画モードを表している場合には、時間階層よりも空間階層に重みをおいてパケットを選別する手順を含む第２の関数を用い、各々の前記グループ属性情報に対応するグループに含まれるパケット群から、送信対象となるパケットを抽出する抽出手段と、
前記抽出手段によって抽出されたパケットを受信装置に宛てて転送する転送手段と
を備えることを特徴とする映像送信システム。
【請求項２】
前記第１の関数及び第２の関数は、前記受信装置における映像の表示に関する性能に応じたパケットを抽出する手順を含む
ことを特徴とする請求項１に記載の映像送信システム。
【請求項３】
前記送信装置において、
前記分析手段は、階層符号化された前記映像データが表す映像で表現されたシーンの変化の有無又は当該映像内のオブジェクトの動き量の少なくともいずれか一方と、当該映像の精細度とに関して、前記分析を行い、
前記属性情報生成手段は、前記分析手段による分析結果が、前記シーンの変化が有ること又は前記オブジェクトの動き量が閾値以上という内容である場合には、前記動画モードであると判断して、動画モードであることを表すグループ属性情報を生成し、前記分析手段による分析結果が、前記シーンの変化が無いこと又は前記オブジェクトの動き量が閾値未満であり、且つ前記精細度が閾値以上という内容である場合には、前記静止画モードであると判断して、静止画モードであることを表すグループ属性情報を生成する
ことを特徴とする請求項１又は２に記載の映像送信システム。
【請求項４】
空間階層及び時間階層で階層符号化された複数のピクチャからなる映像データを、当該映像データの宛先である受信装置に宛てて送信する送信装置であって、
階層符号化された前記映像データの内容を、予め決められた数のピクチャ群からなるグループ単位で分析する分析手段と、
前記分析手段による分析結果に基づいて、各々の前記グループに含まれるピクチャ群によって表される映像の動きが大きい動画モードであるか、または、当該ピクチャ群によって表される映像の動きが小さい静止画モードであるかを表すグループ属性情報を、各々の前記グループについて生成する属性情報生成手段と、
階層符号化された前記映像データと生成された前記グループ属性情報とをカプセル化してパケット群を生成し、前記受信装置に宛てて送信する送信手段と
を備えることを特徴とする送信装置。
【請求項５】
請求項４に記載の送信装置から送信されたパケット群を受信する受信手段と、
前記受信手段によって受信されたパケット群に含まれるグループ属性情報が、当該グループ属性情報に対応するグループに含まれるピクチャ群によって表される映像の動きが大きい動画モードを表している場合には、空間階層よりも時間階層に重みをおいてパケットを選別する手順を含む第１の関数を用い、また、前記グループ属性情報が、当該グループ属性情報に対応するグループに含まれるピクチャ群によって表される映像の動きが小さい静止画モードを表している場合には、時間階層よりも空間階層に重みをおいてパケットを選別する手順を含む第２の関数を用い、各々の前記グループ属性情報に対応するグループに含まれるパケット群から、送信対象となるパケットを抽出する抽出手段と、
前記抽出手段によって抽出されたパケットを、当該パケットの宛先である受信装置に宛てて転送する転送手段と
を備えることを特徴とする中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、階層符号化された映像データを送信するための技術に関する。
【背景技術】
【０００２】
映像データの送信元である送信装置から、例えば携帯電話機、ＳＤＴＶ（Standard Definition Television）またはＨＤＴＶ（High Definition Television）などの複数の受信装置に対して映像データを送信する場合に、各々の受信装置の処理の性能に応じた品質の映像データを送信することがある。この種の技術として、送信対象の映像データを品質の高いデータから品質の低いデータへと階層的に符号化し、送信先の受信装置の処理性能に応じて、一部あるいは全部の階層のデータを選択的に送信する、階層符号化という技術がある。階層符号化の規格として、ＩＳＯ／ＩＥＣ１４４９６−１０ ＭＰＥＧ４ Ａｄｖａｎｃｅｄ Ｖｉｄｅｏ Ｃｏｄｉｎｇ、ＩＴＵ−Ｔ  Ｈ．２６４ Ａｎｎｅｘ Ｇなどがある。
【０００３】
送信装置、或いはこの送信装置と受信装置との間のデータ伝送を中継する中継装置は、要求される品質に応じて、階層符号化された映像データのパケットをその階層単位で選択して受信装置に宛てて送信するという送信制御を行う。この場合、送信装置或いは中継装置において或るパケットを処理する時点で、その処理対象パケットが映像データ全体においてどのような意味を持つのかを特定するべく、それまでに処理済のパケット群に関する情報を分析することで、後続して発生するパケット群に対する予測を行う。そして、送信装置或いは中継装置は、この予測結果に基づいて、処理対象であるパケットを送信すべきか或いは廃棄しても問題ないのかということを判断する（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】再公表公報  ＷＯ２００７／０１５４８２
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の技術では、上記分析を行うのに十分な量の映像データを蓄積してからその分析を行っているから、例えば、送信装置と受信装置との間の伝送経路に中継装置が多段にカスケード方式で接続されているような場合、各々の中継装置で上述の分析処理が何度も行われることになり、カスケード接続の段数に応じて、映像データの送信遅延が発生してしまうという問題がある。
そこで、本発明は、受信装置に届けられる映像データの品質の低下を抑制しつつ、処理済のパケット群に関する十分な量の情報を分析することで新たな処理対象のパケット群の選別を行うような技術と比較して、その映像データの送信遅延を小さくすることを目的とする。
【課題を解決するための手段】
【０００６】
上述の課題を解決するため、本発明は、空間階層及び時間階層で階層符号化された複数のピクチャからなる映像データを、当該映像データの宛先である受信装置に宛てて送信する送信装置と、前記映像送信装置と前記受信装置との間で前記映像データの中継を行う中継装置とを備え、前記送信装置は、階層符号化された前記映像データの内容を、予め決められた数のピクチャ群からなるグループ単位で分析する分析手段と、前記分析手段による分析結果に基づいて、各々の前記グループに含まれるピクチャ群によって表される映像の動きが大きい動画モードであるか、または、当該ピクチャ群によって表される映像の動きが小さい静止画モードであるかを表すグループ属性情報を、各々の前記グループについて生成する属性情報生成手段と、階層符号化された前記映像データと生成された前記グループ属性情報とをカプセル化してパケット群を生成し、前記受信装置に宛てて送信する送信手段とを有し、前記中継装置は、前記パケット群を受信する受信手段と、前記受信手段によって受信されたパケット群に含まれるグループ属性情報が前記動画モードを表している場合には、空間階層よりも時間階層に重みをおいてパケットを選別する手順を含む第１の関数を用い、また、前記グループ属性情報が前記静止画モードを表している場合には、時間階層よりも空間階層に重みをおいてパケットを選別する手順を含む第２の関数を用い、各々の前記グループ属性情報に対応するグループに含まれるパケット群から、送信対象となるパケットを抽出する抽出手段と、前記抽出手段によって抽出されたパケットを受信装置に宛てて転送する転送手段とを備えることを特徴とする映像送信システムを提供する。
【０００７】
好ましい態様において、前記第１の関数及び第２の関数は、前記受信装置における映像の表示に関する性能に応じたパケットを抽出する手順を含むようにしてもよい。
【０００８】
また、別の好ましい態様においては、前記送信装置において、前記分析手段は、階層符号化された前記映像データが表す映像で表現されたシーンの変化の有無又は当該映像内のオブジェクトの動き量の少なくともいずれか一方と、当該映像の精細度とに関して、前記分析を行い、前記属性情報生成手段は、前記分析手段による分析結果が、前記シーンの変化が有ること又は前記オブジェクトの動き量が閾値以上という内容である場合には、前記動画モードであると判断して、動画モードであることを表すグループ属性情報を生成し、前記分析手段による分析結果が、前記シーンの変化が無いこと又は前記オブジェクトの動き量が閾値未満であり、且つ前記精細度が閾値以上という内容である場合には、前記静止画モードであると判断して、静止画モードであることを表すグループ属性情報を生成するようにしてもよい。
【０００９】
また、本発明は、空間階層及び時間階層で階層符号化された複数のピクチャからなる映像データを、当該映像データの宛先である受信装置に宛てて送信する送信装置であって、階層符号化された前記映像データの内容を、予め決められた数のピクチャ群からなるグループ単位で分析する分析手段と、前記分析手段による分析結果に基づいて、各々の前記グループに含まれるピクチャ群によって表される映像の動きが大きい動画モードであるか、または、当該ピクチャ群によって表される映像の動きが小さい静止画モードであるかを表すグループ属性情報を、各々の前記グループについて生成する属性情報生成手段と、階層符号化された前記映像データと生成された前記グループ属性情報とをカプセル化してパケット群を生成し、前記受信装置に宛てて送信する送信手段とを備えることを特徴とする送信装置を提供する。
【００１０】
また、本発明は、上記送信装置から送信されたパケット群を受信する受信手段と、前記受信手段によって受信されたパケット群に含まれるグループ属性情報が、当該グループ属性情報に対応するグループに含まれるピクチャ群によって表される映像の動きが大きい動画モードを表している場合には、空間階層よりも時間階層に重みをおいてパケットを選別する手順を含む第１の関数を用い、また、前記グループ属性情報が、当該グループ属性情報に対応するグループに含まれるピクチャ群によって表される映像の動きが小さい静止画モードを表している場合には、時間階層よりも空間階層に重みをおいてパケットを選別する手順を含む第２の関数を用い、各々の前記グループ属性情報に対応するグループに含まれるパケット群から、送信対象となるパケットを抽出する抽出手段と、前記抽出手段によって抽出されたパケットを、当該パケットの宛先である受信装置に宛てて転送する転送手段とを備えることを特徴とする中継装置を提供する。
【発明の効果】
【００１１】
本発明によれば、受信装置に届けられる映像データの品質の低下を抑制しつつ、処理済のパケット群に関する十分な量の情報を分析することで新たな処理対象のパケット群の選別を行うような技術と比較して、その映像データの送信遅延を小さくすることが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係る映像送信システムの構成を表すブロック図である。
【図２】映像送信装置のハードウェア構成を表すブロック図である。
【図３】映像送信装置の機能構成を表すブロック図である。
【図４】階層と映像品質の関係を表した図である。
【図５】映像データの構成を表した図である。
【図６】階層構造を持つピクチャと時間軸の関係を表した図である。
【図７】ＧＯＰ属性情報を表した図である。
【図８】映像データの多重化を表した図である。
【図９】映像中継装置のハードウェア構成を表したブロック図である。
【図１０】映像中継装置の機能構成を表したブロック図である。
【図１１】抽出部の動作を示すフローチャートである。
【図１２】抽出部の動作を示すフローチャートである。
【図１３】抽出部の動作を示すフローチャートである。
【図１４】抽出部の動作を示すフローチャートである。
【図１５】抽出部の動作を示すフローチャートである。
【図１６】抽出部の動作を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の一実施形態について説明する。
＜実施形態＞
図１は、本発明の実施形態に係る映像送信システム１の構成を示すブロック図である。この映像送信システム１は、映像送信装置１０と、受信装置３０Ａ、３０Ｂ（以下、それぞれを区別しない場合には、受信装置３０という）と、映像送信装置１０と受信装置３０の間の伝送経路に設けられた映像中継装置２０Ａ、２０Ｂ、２０Ｃ（以下、それぞれを区別しない場合には、映像中継装置２０という）とを有している。映像送信装置１０と映像中継装置２０の間、或る映像中継装置２０と他の映像中継装置２０の間、および映像中継装置２０と受信装置３０の間は、通信線とか、ＬＡＮ（Local Area Network）やインターネット或いはケーブルテレビ網などの様々な通信網により接続されている。なお、１台の映像送信装置１０に対する映像中継装置２０および受信装置３０の数は、図１に示した数に限らない。
【００１４】
映像送信装置１０は、映像データを記憶してこれを送信するサーバ装置などのコンピュータである。映像送信装置１０は、映像データを階層符号化したうえでカプセル化し、所定のデータ長の複数のパケットを生成する。映像送信装置１０は、これらのパケットを受信装置３０に宛てて送信する。映像中継装置２０は、例えばルータ装置であり、映像送信装置１０と受信装置３０の間で、伝送経路上のルーティングを行いつつ映像データの中継を行う装置である。この映像中継装置２０は、映像データの宛先である受信装置３０の処理の性能に応じて、必要な場合にはパケットの破棄を行いながら、他の映像中継装置２０にパケットを転送したり、受信装置３０にパケットを転送したりする。
【００１５】
受信装置３０は、映像データを受信してその映像データに応じた映像を表示する装置であり、例えばパーソナルコンピュータ、ＳＤＴＶ、ＨＤＴＶ、または携帯電話機等であり、図１の受信装置３０群には、このように処理の性能が異なる受信装置が混在している。受信装置３０は、受信したパケットをデカプセル化することで映像データを取得して、この映像データに応じた映像を表示する。図１において、映像中継装置２０群は２段のカスケード接続の形態であるが、カスケード接続の段数はこれに限らない。また、受信装置３０が、アナログ方式のテレビジョンのように、デジタルの映像データに対応していない装置の場合、受信装置３０に接続された映像中継装置２０にＤ／Ａ変換を行う変換機能が設けられているか、または、受信装置３０と映像中継装置２０との間にＤ／Ａ変換を行う変換装置が設けられている。
【００１６】
この映像送信システム１において、まず、受信装置３０は、映像送信装置１０に対して、映像データの識別子であるファイル名を含む要求を送信する。各々の映像中継装置２０はこの要求を中継して映像送信装置１０に転送する。映像送信装置１０は、複数の受信装置３０から送信された上記要求を受け取って、これらの受信装置３０に対してどの程度の品質の映像を提供するべきかを判断し、その判断結果に基づいて階層符号化を行う。ここで、映像の品質とは、例えば映像の精細さとか動きの滑らかさなどの、映像に対する評価のことであり、画素数やフレームレートなどの大小に依存する。映像品質が高いとは、例えば１ピクチャあたりの映像の画素数が多いことやフレームレートが大きいことを意味し、映像品質が低いとは、例えば１ピクチャあたりの映像の画素数が少ないことやフレームレートが小さいことを意味する。画素数は、映像が受信装置３０の表示面に表示されるときの総画素数のことであり、例えば１０２４×７６８といった数値で表現されるものである。フレームレートは、単位時間あたりに映像が何回が更新されるかを表す指標である。
【００１７】
映像送信装置１０が受信装置３０群に対してどの程度の品質の映像を提供するべきかを判断する際には、例えば、受信装置３０の通信の性能や、受信装置３０の映像表示機能の性能や、受信装置３０の演算処理能力や、受信装置３０の消費電力や、受信装置３０のユーザ設定などの、様々な条件が考慮されるが、以下では、受信装置３０の通信の性能に基づいた判断の例で説明するが、この通信の性能は、結局、受信装置３０における映像の表示の速さに関する機能に関係している。受信装置３０の通信の性能は、主に、受信装置３０を収容する通信網の伝送レートであり、例えば受信装置３０Ａが携帯電話機である場合、映像中継装置２０Ｂと受信装置３０Ａとの間の伝送経路は携帯通信網で構成されているから、この携帯通信網における伝送レートが受信装置３０Ａの通信の性能の指標となる。また、例えば受信装置３０ＢがＨＤＴＶである場合、映像中継装置２０Ｃと受信装置３０Ｂとの間の伝送経路はＨＤＴＶ網で構成されているから、このＨＤＴＶ網における伝送レートが受信装置３０Ｂの通信の性能の指標となる。映像送信装置１０は、上記のような条件がそれぞれ異なる複数の受信装置３０からの要求に応じて、これらの受信装置３０群に対して最適な最大画素数や符号化のときの階層数等の符号化条件を特定し、この符号化条件にしたがって映像データを階層符号化する。映像中継装置２０は、階層符号化された映像データのパケットを中継する際には、上記の複数の受信装置３０に含まれる各受信装置３０に対し、これらの各々の受信装置３０に応じて、特定の階層に対応するパケットを抽出して、或いは、このような抽出を行わずに全パケットをそのまま宛先へと転送する。
【００１８】
ここで、映像送信装置１０が行う映像データの階層符号化について、その概略を説明する。映像データの階層符号化とは、映像データを、低品質だがその表示にあたっては最低限必要な映像データと、表示時の映像の品質を高めるそれ以外の映像データとに階層化した状態で符号化することである。ここで、Ｌ０，Ｌ１，Ｌ２という３層構造の階層符号化の例を考える。Ｌ０は基本階層データであり、Ｌ１は第１階層データ、Ｌ２は第２階層データであるとする。基本階層データＬ０のみを復号すると、低品質の映像が得られる。そして、基本階層データＬ０および第１階層データＬ１を復号すると中品質の映像が得られ、そして、Ｌ０、第１階層データＬ１および第２階層データＬ２の全てを復号すると高品質の映像が得られる。このとき、基本階層データＬ０のデータは、復号側である受信装置３０において最低限必要とされるデータであるため、必ず受信装置３０に送信されるべきデータである。一方、第１階層データＬ１および第２階層データＬ２は、映像の品質を高めるが、基本階層データＬ０のように必須ではないため、要求される映像品質に応じて、その受信装置３０に送信されるか否かが決定される。
【００１９】
図２は、映像送信装置１０のハードウェア構成を表すブロック図である。映像送信装置１０は、ＣＰＵ（Central Processing Unit）１１、ＲＡＭ（Random Access Memory）１２、記憶部１３および入出力ポート１４を備えており、これらの各部がバスを介して互いに接続されている。ＣＰＵ１１は、記憶部１３に記憶されているプログラムを読み出しＲＡＭ１２にロードして実行することにより、映像送信装置１０の各部を制御して各種の機能を実現する。ＲＡＭ１２は、ＣＰＵ１１がプログラムを実行するときのワークエリアとなる。記憶部１３は、例えば大容量のフラッシュメモリやＨＤＤ（Hard Disk Drive）であり、ＣＰＵ１１が実行するプログラムや、送信対象となる映像データを記憶している。入出力ポート１４は、伝送経路に接続された入出力端子を備えており、映像データのパケットを送信するとともに、受信装置３０から送信されてきた上記要求などを受信する。
【００２０】
図３は、映像送信装置１０の機能構成を表すブロック図である。映像送信装置１０は、ＣＰＵ１１が、記憶部１３に記憶されているプログラムを実行することにより、入力部１０１、階層符号化部１０２、分析部１０３、属性情報生成部１０４、多重化部１０５及び出力部１０６という各機能を実現する。以下の説明において、これらの各部を動作の主体として記載するが、その主体の実態はＣＰＵ１１である。
【００２１】
入力部１０１には、入出力ポート１４が複数の受信装置３０から受信した要求が入力される。入力部１０１は、要求を階層符号化部１０２に供給する。階層符号化部１０２は、上記要求に含まれる映像データのファイル名を参照し、記憶部１３からこのファイル名の映像データを読み出す。また、階層符号化部１０２は、この要求に含まれる受信装置３０の識別子や機種コードなどを参照し、この受信装置３０の通信の性能を特定して、映像データを符号化する際の最大画素数、最小画素数及び階層数を決定する。このため、記憶部１３には、受信装置３０の識別子や機種コード（受信装置３０の属性情報）と、この受信装置３０を収容する通信網における伝送レート（受信装置３０の通信の性能）とが対応付けられて予め記憶されており、入力部１０１はそれを参照する。そして、階層符号化部１０２は、記憶部１３から読み出した映像データを、上記の最大画素数、最小画素数及び階層数にしたがって階層符号化する。階層符号化部１０２は、階層符号化した映像データを分析部１０３に出力する。
【００２２】
ここで、図４は、階層と映像品質の関係を表した図である。映像データの階層符号化における階層の種類には、大きく分けて、空間階層と時間階層とがある。空間階層は、画素数に注目して映像データを階層化するものである。時間階層は、フレームレートに注目して映像データを階層化するものである。空間階層においては、上位階層になる程画素数が多く、下位階層になるに従って画素数が少なくなる。時間階層においては、上位階層になる程フレームレートが大きく、下位階層になるに従ってフレームレートが小さくなる。階層符号化部１０２は、空間階層と時間階層との双方で映像データを階層符号化する。階層符号化部１０２により階層符号化が行われた映像データは、空間階層の階層毎に分割された状態となる。なお、階層符号化部１０２によって映像データの階層符号化が行われる際、空間階層と時間階層の階層数は必ずしも同一ではなく、入力部１０１から入力された符号化する際の階層数によって、各々が異なる階層数を持つこともあり得る。
【００２３】
次に、図５は、映像データの構成を表した図である。階層符号化された映像データは、ＧＯＰ（Group Of Picture）と呼ばれる単位のデータが順序だてて連なることで構成されている。ＧＯＰは、例えば３２ピクチャ／秒といった、一定時間あたりに含まれる予め決められた数のフレームつまりピクチャのまとまりである。このＧＯＰは、図５に表されるように、ＳＣＳＥＩ、ＳＰＳ（Sequence Parameter Set）、ＰＰＳ（Picture Parameter Set）、Ｐｉｃ（Picture）１、Ｐｉｃ２、Ｐｉｃ３、…、ＰｉｃＮという構成からなる。
【００２４】
ＳＣＳＥＩは、ＧＯＰ内での階層構造に関する情報である。ＳＰＳおよびＰＰＳは、それぞれ復号化の際の初期化を行うために必要とされる初期化情報である。ＳＰＳは、ＧＯＰ全体に関わる情報であり、例えばプロファイル、最大参照可能ピクチャ数、映像サイズ等を含む。ＰＰＳは各ピクチャに関わる情報であり、例えば可変長符号化のタイプ、量子化ステップの初期値、参照ピクチャ数等を含む。Ｐｉｃはピクチャであり、ＧＯＰが３２ピクチャ／１秒であれば、１つのＧＯＰ内におけるＰｉｃの数は３２である。図５においては、１つのＧＯＰがＮピクチャであるとしてＰｉｃを表している。
【００２５】
ＧＯＰにおけるＰｉｃには、予測符号化の方式に応じて、Ｉピクチャ（Intra Picture）、Ｐピクチャ（Predictive Picture）、Ｂピクチャ（Bi-directionally predictive Picture）という種類がある。Ｉピクチャ（Intra Picture）は、そのピクチャだけを独立して符号化することによって得られるピクチャである。すなわち、Ｉピクチャにおけるマクロブロック・タイプは全てフレーム内符号化である。ＩピクチャはＧＯＰの独立性を保つものであり、１つのＧＯＰにおいて１つのＩピクチャが先頭に存在している。このＩピクチャのことを、ＧＯＰ内においてキーとなるフレームであることから、以降の説明においてキーフレームと呼び、それ以外のＰピクチャおよびＢピクチャを非キーフレームと呼ぶ。Ｐピクチャは、ピクチャ間の順方向予測符号化によって得られるピクチャである。Ｐピクチャにおけるマクロブロック・タイプは、フレーム内符号化と順方向フレーム間予測符号化とを含んでいる。Ｂピクチャは、過去と未来の双方向からの予測符号化によって得られるピクチャである。Ｂピクチャにおけるマクロブロック・タイプは、フレーム内符号化と、順方向、逆方向および双方向のフレーム間予測符号化とを含んでいる。
【００２６】
図６は、階層構造を持つピクチャと時間軸の関係を表した図である。ここでは、空間階層と時間階層の双方において３層で映像データが階層符号化された場合を例示している。横軸は時刻ｔを表し、右にいくほど時間が経過しているものとする。Ｐｉｃに付された数字は、時系列に沿った各ピクチャの順番である。各Ｐｉｃに付されたアルファベットは、Ｉピクチャ、Ｂピクチャ、Ｐピクチャの別を表している。ＴＩＤ（Temporal ID）は時間階層における各階層を識別するための情報であり、ＤＩＤ（Dependency ID）は空間階層における各階層を識別するための情報である。ＴＩＤおよびＤＩＤ共に、付された数字はその階層数を表し、「０」が下位階層であり、「１」が中位階層、「２」が上位階層である。図６に表されるように、各々の時刻ｔにおける各ピクチャには、ＤＩＤが「０」、「１」および「２」の３階層のデータが存在する。また、各々の時刻ｔにおいて複数のＤＩＤを持つデータからなるピクチャに対しては、同一のＴＩＤが付されている。各々の時刻ｔにおけるピクチャは、図６中の矢印で表された参照関係を持つ。
【００２７】
例えば、時間階層において低品質の映像データを送信する場合には、映像中継装置２０は、受信したパケット群のうち、ＴＩＤ「０」のピクチャに基づくパケットのみを抽出して受信装置３０に宛てて転送する。この場合、受信装置３０においては、図６中のｔ０とｔ４に該当するピクチャに応じた映像が表示されることとなる。つまりフレームレートが小さいため、いわゆるコマ送りのように動きがぎごちない映像となり、その映像品質は低いものとなる。また、時間階層において中品質の映像データを送信する場合には、映像中継装置２０は、受信したパケット群のうち、ＴＩＤが「０」および「１」のピクチャに基づくパケットのみを抽出して受信装置３０に宛てて転送する。さらに、時間階層において高品質の映像データを送信する場合には、映像中継装置２０は、受信したパケット群の全てを受信装置３０に宛てて転送する。この場合には、図６中の各時刻ｔに対応するＴＩＤ「０」、「１」および「２」の全てのピクチャが揃うため、フレームレートが高くなり、動きが滑らかな映像となり、映像品質が高いものとなる。
【００２８】
以上、送信する映像データの映像品質と送信対象データについてＴＩＤを用いて説明したが、ＤＩＤについても考え方は同様である。すなわち、映像中継装置２０は、空間階層において低品質の映像データを送信する場合には、ＤＩＤ「０」のデータに基づくパケットを抽出して受信装置３０に宛てて転送する。この場合、受信装置３０においては、精細度が低くて粗い映像が表示されることになる。また、映像中継装置２０は、空間階層において中品質の映像データを送信する場合には、ＤＩＤ「０」及び「１」のデータに基づくパケットを抽出して受信装置３０に宛てて転送する。また、映像中継装置２０は、空間階層において高品質の映像データを送信する場合には、全てのパケットを受信装置３０に宛てて転送する。この場合、受信装置３０においては、高精細の映像が表示されることになる。
【００２９】
再び図３の説明に戻る。分析部１０３は、階層符号化された映像データについて、ＧＯＰ単位で、シーンチェンジ推定、動き量推定及び精細度推定の３種類の観点から、次のような分析を行う。分析部１０３は、１つのＧＯＰに含まれるＩピクチャ内におけるイントラマクロブロックの絶対値の個数が閾値を超える場合には、シーンチェンジが行われたと推定し、１つのＧＯＰに含まれるＩピクチャ内におけるイントラマクロブロックの絶対値の個数が閾値を超えない場合には、シーンチェンジが行われなかったと推定する。シーンチェンジとは、例えばアングルが変わるなど、映像で表現されたシーンが変化することである。また、分析部１０３は、ある閾値以上をもつ動きベクトルが、隣り合う複数のマクロブロック内に存在する場合に、この隣り合う複数のマクロブロックを一つのオブジェクトとして検出し、この検出したオブジェクトの数を、ＧＯＰにおける動き量を表す指標として特定する。また、分析部１０３は、非キーフレーム間における予測符号化マクロブロックの個数の相対的な変動率を、ＧＯＰにおける動き量を表す指標として特定する。この動き量を表す指標は、前者または後者のみであってもよいし、分析部１０３がこの両者を用いて特定してもよい。さらに、分析部１０３は、フレーム内符号化およびフレーム間予測符号化において、ピクチャ全体の領域に対する量子化後に丸められた領域の割合を、精細度を表す指標として特定する。分析部１０３は、このようなＧＯＰ毎の分析結果を、階層符号化された映像データと共に、属性情報生成部１０４に供給する。
【００３０】
属性情報生成部１０４は、上記のようなＧＯＰ毎の分析結果および階層符号化された映像データから、ＧＯＰ毎に、そのＧＯＰに含まれるピクチャの属性を表すＧＯＰ属性情報なるものを生成する。図７は、ＧＯＰ属性情報の内容を表したものである。ＧＯＰ属性情報は、ＧＯＰの映像特性、ＧＯＰにおけるピクチャ数、ＧＯＰにおける全ピクチャのデータサイズ合計、各ピクチャのデータサイズ総和リスト、およびＤＩＤ毎のデータサイズ総和リストからなる。このうちＧＯＰの映像特性とは、ＧＯＰにおける映像の特徴を表すものである。属性情報生成部１０４は、ＧＯＰ毎の分析結果に基づいて、ＧＯＰの映像特性を、動きの大きい映像であるか（動画モード）または動きの小さい映像であるか（静止画モード）のいずれかに分類する。
【００３１】
ＧＯＰの映像特性は、映像における動きが大きいことを意味する動画モード、又は、映像における動きが小さいこと（動きが無いことを含む）を意味する静止画モードのいずれかを含む。映像中継装置２０は、上述したようなパケットを抽出する抽出処理を行う際に、この映像特定を用いる。属性情報生成部１０４は、ＧＯＰ毎の分析結果において、シーンチェンジが行われたという推定結果であるか、もしくは動き量を表す指標値が一定以上である場合、ＧＯＰの映像特性を動画モードであると判断する。また、属性情報生成部１０４は、ＧＯＰ毎の分析結果において、シーンチェンジが行われていないという推定結果であるか、もしくは動き量を表す指標値が閾値未満であり、且つ、精細度を表す指標値が閾値以上である場合、ＧＯＰの映像特性を静止画モードであると判断する。
【００３２】
また、属性情報生成部１０４は、階層符号化された映像データをＧＯＰ毎に分析し、ＧＯＰにおけるピクチャ数、ＧＯＰにおける全ピクチャのデータサイズ合計、各ピクチャのデータサイズ総和リストおよびＤＩＤ毎のデータサイズ総和リストをＧＯＰ属性情報として生成する。ＧＯＰにおけるピクチャ数は、１つのＧＯＰに含まれるピクチャ数である。ＧＯＰにおける全ピクチャのデータサイズ合計は、１つのＧＯＰに含まれる全ピクチャの全階層を含むデータサイズの合計である。各ピクチャのデータサイズ総和リストは、複数の異なるＤＩＤを持つデータの集合からなる１枚のピクチャにおけるデータサイズの総和を、ピクチャ毎にリスト化したものである。ＤＩＤ毎のデータサイズ総和リストは、ＤＩＤ毎のデータサイズの総和をＤＩＤ毎にリスト化したものである。属性情報生成部１０４は、階層符号化された映像データと共に、生成したＧＯＰ属性情報を多重化部１０５に出力する。
【００３３】
多重化部１０５は、階層別に符号化された映像データを多重化し、その先頭にＧＯＰ属性情報を付加する。ここで映像データの多重化とは、空間階層の階層別に分かれている符号化された映像データを、時間軸において順序だてて一つながりに纏めることをいう。
【００３４】
図８は映像データの多重化を表した図である。ここでは、空間階層と時間階層の双方において３層で映像データが階層符号化された場合を例示している。図８において、ＧｏｐＩｎｆｏとは、上述したＧＯＰ属性情報を表す。また、ＳＣＳＥＩ、ＳＰＳ、ＰＰＳおよびＰｉｃは図４におけるものと同じ内容である。スライスとは、階層化された映像データを構成するデータの単位である。ＳＰＳ、ＰＰＳ、ＴＩＤおよびＤＩＤに付された数字は、所属する階層数を表す。映像データは、多重化部１０５に入力された時点では、ＤＩＤの階層毎に分かれた状態で、時間軸に沿った順番でスライスが並んで構成されている。多重化部１０５は、このＤＩＤの階層毎に分かれた映像データを多重化し、先頭にＧＯＰ属性情報を付加したうえで、出力部１０６に供給する。
【００３５】
出力部１０６は、映像データのパケット群を送信する送信手段として機能するものであり、階層符号化されて、ＧＯＰ属性情報が付加された映像データを、カプセル化して所定のデータ長の複数のパケットに分割する。そして出力部１０６は、これらのパケットを、受信装置３０を宛先として入出力ポート１４を通じて順次伝送経路に出力していく。
【００３６】
次に映像中継装置２０について説明する。
図９は映像中継装置２０のハードウェア構成を表したブロック図である。映像中継装置２０は、ＣＰＵ（Central Processing Unit）２１、揮発性記憶部２２、不揮発性記憶部２３、入力ポート２４および出力ポート２５を備えており、これらの各部がバスを介して互いに接続されている。ＣＰＵ２１は、不揮発性記憶部２３に記憶されているプログラムを読み出し揮発性記憶部２２にロードして実行することにより、映像中継装置２０の各部を制御して各種の機能を実現する。揮発性記憶部２２は、ＣＰＵ２１がプログラムを実行する際のワークエリアとなる。不揮発性記憶部２３は、例えばフラッシュメモリであり、ＣＰＵ２１が実現する映像中継装置２０の各機能に関するプログラムや、パケットのルーティングを行うためのルーティングテーブルを記憶している。入力ポート２４は、伝送経路に接続された入力端子を備えており、映像データのパケットを受信する。出力ポート２５は、伝送経路に接続された出力端子を備えており、パケットを伝送経路に出力する。
【００３７】
図１０は、映像中継装置２０の機能構成を表したブロック図である。映像中継装置２０は、ＣＰＵ２１が、不揮発性記憶部２３に記憶されているプログラムを読み出して実行することにより、入力部２０１、抽出部２０２、および出力部２０４の各機能を実現する。以下の説明において、これらの各部を動作の主体として記載するが、その主体の実態はＣＰＵ２１である。入力部２０１は、映像データのパケット群を受信する受信手段であり、入力ポート２４を通じて接続された伝送経路からパケットを受け取り、このパケットを抽出部２０２に供給する。抽出部２０２は、これらのパケットを予め定められた関数に代入することで、送信対象のパケットのみを抽出し、それ以外を廃棄する。以降の説明において、この関数のことをコスト関数と呼び、これが不揮発性記憶部２３に記憶されている。
【００３８】
抽出部２０２は、抽出したパケットを出力部２０４に供給する。出力部２０４は、抽出されたパケットを受信装置３０に宛てて転送する転送手段であり、このパケットを、後続の伝送経路上に存在する映像中継装置２０あるいは受信装置３０に向けて送信する。ここで、抽出部２０２が供給するパケットのストリームは１つに限ったものではなく、映像中継装置２０に接続された複数の受信装置３０から要求に応じて複数の映像品質に応じた映像データのパケットを供給することが可能である。例えば、或る映像中継装置２０の後続の伝送経路上に、受信装置３０として携帯電話機とＨＤＴＶが存在し、携帯電話機の受信装置３０は低品質の映像データを要求し、ＨＤＴＶの受信装置３０は高品質の映像データを要求した場合を仮定する。この場合、抽出部２０２は、ＨＤＴＶの受信装置３０に対しては、階層符号化データの全階層に対応するパケットを送信対象として抽出し、携帯電話機の受信装置３０に対しては、階層符号化データの低階層に対応するパケットを送信対象として抽出する。
【００３９】
次に、抽出部２０２が、コスト関数とＧＯＰ属性情報を用いてどのようにパケットの抽出を行うかを説明する。コスト関数は、ＧＯＰ属性情報のうちＧＯＰの映像特性が、静止画モードであるかまたは動画モードであるかでその内容が異なる。ＧＯＰの映像特性が静止画モードである場合、コスト関数は、時間階層より空間階層に重点をおいてパケットを抽出するものとなる。つまり、このコスト関数は、空間階層よりも時間階層に重みをおいてパケットを選別する手順を含む第１の関数である。一方、ＧＯＰの映像特性が動画モードである場合、コスト関数は空間階層より時間階層に重点をおいてパケットを抽出するものととなる。つまり、このコスト関数は、時間階層よりも空間階層に重みをおいてパケットを選別する手順を含む第２の関数である。
【００４０】
ここで、図１１〜１６を参照しながら、ＧＯＰの映像特性が静止画モードである場合と動画モードである場合とで、抽出部２０２によるパケット抽出の動作を説明する。以下の説明では、ＧＯＰ属性情報に含まれる各内容（図７）を以下のように表現する。
PicProp // ＧＯＰの映像特性
GopPicNum // ＧＯＰにおけるピクチャ数
Gop#PicTotalSize // ＧＯＰにおける全ピクチャのデータサイズ合計
PicSize[GopPicNum ] // 各ピクチャのデータサイズ総和リスト
GOP#DidSize[ MaxDID+1 ] // ＤＩＤ毎のデータサイズ総和リスト
なお、MaxTIDは、最下位階層を０としたときの、時間階層の最大値であり、MaxDIDDは、最下位階層を０としたときの、空間階層の最大値である。
【００４１】
まず、ＧＯＰの映像特性が静止画モードである場合において、抽出部２０２がコスト関数を用いて、送信対象となるパケットを抽出するときの動作について説明する。
最初に、抽出部２０２は、映像中継装置２０が接続された伝送経路における目標伝送レートをTargetBitRateとして、次式でTargetBufSizeなるものを求める。図１において、例えば受信装置３０Ａが携帯電話機である場合、映像中継装置２０Ｂと受信装置３０Ａとの間の伝送経路は携帯通信網で構成されているから、映像中継装置２０Ｂは、予め決められた携帯通信網の目標伝送レート、又は、定期的に或いは随時計測した携帯通信網の目標伝送レートをTargetBitRateとする。同様に、例えば受信装置３０ＢがＨＤＴＶである場合、映像中継装置２０Ｃと受信装置３０Ｂとの間の伝送経路はＨＤＴＶ網で構成されているから、映像中継装置２０Ｃは、予め決められたＨＤＴＶ網の目標伝送レート、又は、定期的に或いは随時計測したＨＤＴＶ網の目標伝送レートをTargetBitRateとする。
TargetBufSize = TargetBitRate / GopPicNum × FrameRate
なお、FrameRateとは、前述した映像品質に関するフレームレートのことである。
【００４２】
次に、抽出部２０２は、次式で、関数subtotalGopTidSize( TID )なるものを求める。関数subtotalGopTidSize( TID )は、引数の階層のＴＩＤに属するピクチャのデータ量の合計を意味している。
【数１】
2011216986.tif 000003
なお、tid( i )は、先頭から数えてｉ番目のピクチャが属するＴＩＤである。
【００４３】
次に、抽出部２０２は図１１に示す処理を行って、どのＴＩＤの階層まで送信可能か、つまり送信可能な時間階層の階層数を求める。
図１１において、抽出部２０２は、TID毎のピクチャのデータサイズ総和の積算であるTotalTidGopを初期化してTotalTidGop=0とし（ステップＳ１）、さらに、idも初期化してid=0とする（ステップＳ２）。idは、最下位階層を０としたときの各時間階層の値のことであり、その最大値は時間階層の最大値maxTIDである。
次に、抽出部２０２は、tmp = TotalTidGop + subtotalGopTidSize(id)という数式によって、tmpなる値を求める（ステップＳ３）totalTidGopは、NewMaxTID-1までのデータサイズの合計を意味する。ここで、tmpがTargetBufSize以下の場合には（ステップＳ４；Ｎｏ）、抽出部２０２は、totalTidGop = tmpとする（ステップＳ５）。次に、抽出部２０２は、idを１つインクリメントし（ステップＳ６）、そのidが時間階層の最大値maxTID以下であるか否かを判断する（ステップＳ７）。idが最大値maxTID以下であれば（ステップＳ７；Ｙｅｓ）、抽出部２０２の処理は再びステップＳ３に戻る。抽出部２０２は、ステップＳ３〜ステップＳ７の処理を、idが時間階層の最大値maxTIDを超えるまで繰り返し、そのときのidをNewMaxTIDとして（ステップＳ８）、図１１に示す処理を終了する。また、抽出部２０２は、このステップＳ３〜ステップＳ７の処理を行っている過程において、tmpがTargetBufSizeを超えると（ステップＳ４；Ｙｅｓ）、そのときのidをNewMaxTIDとして（ステップＳ８）、図１１に示す処理を終了する。
【００４４】
上記の処理を経た結果、例えばNewMaxTID=0の場合には、最下位階層のうち一部のピクチャしか伝送できないことを意味しており、また、例えばNewMaxTID＝maxTID+1の場合には、全ての時間階層のピクチャが送信可能であることを意味する。また、MaxTID＞＝NewMaxTID＞０の場合には、NewMaxTIDの時間階層を持つピクチャの全てではなくとも一部を送信可能である可能性が高いことを意味している。従って、maxTID＞＝NewMaxTID＞０の場合、抽出部２０２は、NewMaxTIDの時間階層を持つピクチャ群から送信可能なピクチャを選別する。
【００４５】
一般的に、ピクチャの符号化方式が同一である場合、データ量が大きいピクチャであるほど、前後関係と比較して映像の内容の変動が大きいか、あるいは複雑な映像であることを意味している。このような映像は映像品質を大きく影響するから、データ量が大きいピクチャから優先的に送信されることが望ましい。そこで、抽出部２０２は、NewMaxTIDの時間階層を持つピクチャを、各ピクチャのデータ量（PicSize[ i ]）が大きい順番でソートする。そして、抽出部２０２は、ソートした結果を以下の式で表されるテーブルに格納する。
N = GopPicNum + ( 2 ^ ( MaxTID - NewMaxTID) - 1) / ( 2 ^ ( MaxTID - NewMaxTID))
orderは、このテーブル上でPicSizeが大きい方から数えたときのインデックスの値であり、最小値が0で最大値がＮである。ListPicSizeOrder [ order ] . PicNumは、ＧＯＰ内で先頭から数えたピクチャの順番とし、ListPicSizeOrder [ order ] . PicSizeは、該当するピクチャのデータサイズとする。
【００４６】
次に、抽出部２０２は図１２に示す処理を行って、NewMaxTIDの時間階層を持つピクチャから送信可能なピクチャを選別する。
図１２において、まず、抽出部２０２は、時間階層がNewMaxTIDであるピクチャのデータサイズの合計を意味するsubtotalGopTidSize(NewMaxTID)を初期化して、subtotalGopTidSize(NewMaxTID)=0とし（ステップＳ１１）、さらに、orderを初期化してorder=0とする（ステップＳ１２）。orderは、上記のテーブルにおいて、PicSizeが大きい方から数えたときのインデックスの値であり、最小値が0で最大値がＮである。
【００４７】
次に、抽出部２０２は、tmp = totalTidGop + ListPicSizeOrder [ order ].PicSizeという数式に従って、tmpなる値を求める（ステップＳ１３）。ここで、tmpがTargetBufSize以下の場合には（ステップ１４；Ｎｏ）、抽出部２０２は、subtotalGopTidSize(NewMaxTID) = subtotalGopTidSize(NewMaxTID ) + ListPicSizeOrder [ order ].PicSizeとする（ステップＳ１５）。次に、抽出部２０２は、totalTidGop = tmpとし（ステップＳ１６）、orderを１つインクリメントしてから（ステップＳ１７）、そのorderが最大値Ｎ未満であるか否かを判断する（ステップＳ１８）。orderdが最大値Ｎ未満であれば（ステップＳ１８；Ｙｅｓ）、抽出部２０２の処理は再びステップＳ１３に戻る。抽出部２０２は、ステップＳ１３〜ステップＳ１８の処理を、orderが最大値Ｎ以上になるまで繰り返し、そのときのorderの値をorderNumとして確定して（ステップＳ１９）、図１２に示す処理を終了する。また、抽出部２０２は、このステップＳ１３〜ステップＳ１８の処理を行っている過程において、tmpがTargetBufSizeを超えると（ステップＳ１４；Ｙｅｓ）、そのときのorderの値をorderNumとして確定して（ステップＳ１９）、図１２に示す処理を終了する。
【００４８】
抽出部２０２は、上記のようにして、NewMaxTIDの時間階層を持つピクチャのうち送信可能なピクチャを選別すると、図１３に示す処理を行って、ＧＯＰのうち送信対象であるピクチャのリストを作成する。
まず、抽出部２０２は、ｉを初期化してi=0とする（ステップＳ２１）。このｉの最小値は0で最大値がGopPicNumである。次に、抽出部２０２は、tid(i)が NewMaxTID未満であるか否かを判断する（ステップＳ２２）。 tid(i)が NewMaxTID未満であれば（ステップＳ２２；Ｙｅｓ）、抽出部２０２は、SendingPictureList [i] = tid(i)とする（ステップＳ２３）。SendingPictureList [i]は、ＧＯＰのうち送信対象であるピクチャのリストのことである。次に、抽出部２０２は、ｉを１つインクリメントし（ステップＳ２５）、ｉがGopPicNum未満であることを確認してから（ステップＳ２６；Ｙｅｓ）、ステップＳ２２の処理に戻る。なお、ステップＳ２２において、抽出部２０２は、tid(i)が NewMaxTID未満でないと判断すると（ステップＳ２２；Ｎｏ）、SendingPictureList [i] = -1とする（ステップＳ２４）。
【００４９】
さて、ステップＳ２６において、抽出部２０２は、ｉがGopPicNum以上である場合（ステップＳ２６；Ｎｏ）、0 < NewMaxTID && NewMaxTID <= MaxTID という条件が満たされるか否かを判断する（ステップＳ２７）。この条件が満たされる場合には（ステップＳ２７；Ｙｅｓ）、抽出部２０２は、order=0とする（ステップＳ２８）。次に、抽出部２０２は、SendingPictureList [ListPicSizeOrder [ order ] . PicNum ] = NewMaxTIDとする（ステップＳ２９）。そして、抽出部２０２は、orderを１つインクリメントしてから（ステップＳ３０）、そのorderがorderNum未満であるか否かを判断する（ステップＳ３１）。orderがorderNum未満であれば（ステップＳ３１；Ｙｅｓ）、抽出部２０２の処理はステップＳ２９に戻り、orderがorderNum以上になるまでステップＳ２９〜Ｓ３１の処理が繰り返される。なお、ステップＳ２７において、0 < NewMaxTID && NewMaxTID <= MaxTIDという条件が満たされない場合には（ステップＳ２７；Ｎｏ）、抽出部２０２の処理は終了する。
【００５０】
そして、抽出部２０２は、リストにおける配列の値が−１（SendingPictureList [i] = -1）でないピクチャを送信対象として、このピクチャに対応したパケットを抽出して送信する。一方、抽出部２０２は、リストにおける配列の値が−１（SendingPictureList [i] = -1）であるピクチャを送信対象とはせず、破棄する。これにより、時間階層の一部のピクチャは破棄されることになる。
【００５１】
次に、ＧＯＰの映像特性が動画モードである場合に抽出部２０２がコスト関数を用いてパケットを抽出するときの動作について説明する。
抽出部２０２は、次式で、関数subtotalGopDidSize( DID )なるものを求める。関数subtotalGopDidSize( DID )は、引数の階層のDIDに属するピクチャのデータ量の合計を意味している。
【数２】
2011216986.tif 000004
なお、did( i )は、先頭から数えてｉ番目のピクチャが属するDIDである。
【００５２】
次に、抽出部２０２は図１４に示す処理を行って、どのDIDの階層まで送信可能か、つまり送信可能な時間階層の階層数を求める。
図１４において、抽出部２０２は、DID毎のピクチャのデータサイズ総和の積算であるTotalDidGopを初期化してTotalDidGop=0とし（ステップＳ４１）、さらに、idも初期化してid=0とする（ステップＳ４２）。idは、最下位階層を０としたときの各時間階層の値のことであり、その最大値は時間階層の最大値maxDIDである。
【００５３】
次に、抽出部２０２は、tmp = TotalDidGop + subtotalGopDidSize(id)という数式によって、tmpなる値を求める（ステップＳ４３）totalDidGopは、NewMaxDID-1までのデータサイズの合計を意味する。ここで、tmpがTargetBufSize以下の場合には（ステップＳ４４；Ｎｏ）、抽出部２０２は、totalDidGop = tmpとする（ステップＳ４５）。次に、抽出部２０２は、idを１つインクリメントし（ステップＳ４６）、そのidが時間階層の最大値maxDID以下であるか否かを判断する（ステップＳ４７）。idが最大値maxDID以下であれば（ステップＳ４７；Ｙｅｓ）、抽出部２０２の処理は再びステップＳ４３に戻る。抽出部２０２は、ステップＳ４３〜ステップＳ４７の処理を、idが時間階層の最大値maxDIDを超えるまで繰り返し、そのときのidをNewMaxDIDとして（ステップＳ４８）、図１４に示す処理を終了する。また、抽出部２０２は、このステップＳ４３〜ステップＳ４７の処理を行っている過程において、tmpがTargetBufSizeを超えると（ステップＳ４４；Ｙｅｓ）、そのときのidをNewMaxDIDとして（ステップＳ４８）、図１４に示す処理を終了する。
【００５４】
上記の処理を経た結果、例えばNewMaxDID=0の場合には、最下位階層のうち一部のピクチャしか伝送できないことを意味しており、また、例えばNewMaxDID＝maxDID+1の場合には、全ての時間階層のピクチャが送信可能であることを意味する。また、MaxDID＞＝NewMaxDID＞０の場合には、NewMaxDIDの時間階層を持つピクチャの全てではなくとも一部を送信可能である可能性が高い。従って、maxDID＞＝NewMaxDID＞０の場合、抽出部２０２は、NewMaxDIDの時間階層を持つピクチャ群から送信可能なピクチャを選別する。
【００５５】
抽出部２０２は、NewMaxDIDの時間階層を持つピクチャを、各ピクチャのデータ量（PicSize[ i ]）が大きい順番でソートする。そして、抽出部２０２は、ソートした結果を以下の式で表されるテーブルに格納する。
N = GopPicNum + ( 2 ^ ( MaxDID - NewMaxDID) - 1) / ( 2 ^ ( MaxDID - NewMaxDID))
ただし、orderは、このテーブル上でPicSizeが大きい方から数えたときのインデックスの値であり、最小値が0で最大値がＮである。また、ListPicSizeOrder [ order ] . PicNumは、ＧＯＰ内で先頭から数えたピクチャの順番であり、ListPicSizeOrder [ order ] . PicSizeは、該当するピクチャのデータサイズである。
【００５６】
次に、抽出部２０２は図１５に示す処理を行って、NewMaxDIDの時間階層を持つピクチャから送信可能なピクチャを選別する。
図１５において、まず、抽出部２０２は、時間階層がNewMaxDIDであるピクチャのデータサイズの合計を意味するsubtotalGopDidSize(NewMaxDID)を初期化して、subtotalGopDidSize(NewMaxDID)=0とし（ステップＳ５１）、さらに、orderを初期化してorder=0とする（ステップＳ５２）。orderは、上記のテーブルにおいて、PicSizeが大きい方から数えたときのインデックスの値であり、最小値が0で最大値がＮである。
【００５７】
次に、抽出部２０２は、tmp = totalDidGop + ListPicSizeOrder [ order ].PicSizeという数式に従って、tmpなる値を求める（ステップＳ５３）。ここで、tmpがTargetBufSize以下の場合には（ステップ５４；Ｎｏ）、抽出部２０２は、subtotalGopDidSize(NewMaxDID) = subtotalGopDidSize(NewMaxDID ) + ListPicSizeOrder [ order ].PicSizeとする（ステップＳ５５）。次に、抽出部２０２は、totalDidGop = tmpとし（ステップＳ５６）、orderを１つインクリメントしてから（ステップＳ５７）、そのorderが最大値Ｎ未満であるか否かを判断する（ステップＳ５８）。orderdが最大値Ｎ未満であれば（ステップＳ５８；Ｙｅｓ）、抽出部２０２の処理は再びステップＳ５３に戻る。抽出部２０２は、ステップＳ５３〜ステップＳ５８の処理を、orderが最大値Ｎ以上になるまで繰り返し、そのときのorderの値をorderNumとして確定して（ステップＳ５９）、図１５に示す処理を終了する。また、抽出部２０２は、このステップＳ５３〜ステップＳ５８の処理を行っている過程において、tmpがTargetBufSizeを超えると（ステップＳ５４；Ｙｅｓ）、そのときのorderの値をorderNumとして確定して（ステップＳ５９）、図１５に示す処理を終了する。
【００５８】
抽出部２０２は、上記のようにして、NewMaxDIDの時間階層を持つピクチャのうち送信可能なピクチャを選別すると、図１６に示す処理を行って、ＧＯＰのうち送信対象であるピクチャのリストを作成する。
まず、抽出部２０２は、ｉを初期化してi=0とする（ステップＳ６１）。このｉの最小値は0で最大値がGopPicNumである。次に、抽出部２０２は、did(i)が NewMaxDID未満であるか否かを判断する（ステップＳ６２）。 did(i)が NewMaxDID未満であれば（ステップＳ６２；Ｙｅｓ）、抽出部２０２は、SendingPictureList [i] = did(i)とする（ステップＳ６３）。SendingPictureList [i]は、ＧＯＰのうち送信対象であるピクチャのリストのことである。次に、抽出部２０２は、ｉを１つインクリメントし（ステップＳ６５）、ｉがGopPicNum未満であることを確認してから（ステップＳ６６；Ｙｅｓ）、ステップＳ６２の処理に戻る。なお、ステップＳ６２において、抽出部２０２は、did(i)が NewMaxDID未満でないと判断すると（ステップＳ６２；Ｎｏ）、SendingPictureList [i] = -1とする（ステップＳ６４）。
【００５９】
さて、ステップＳ６６において、抽出部２０２は、ｉがGopPicNum以上である場合（ステップＳ６６；Ｎｏ）、0 < NewMaxDID && NewMaxDID <= MaxDID という条件が満たされるか否かを判断する（ステップＳ６７）。この条件が満たされる場合には（ステップＳ６７；Ｙｅｓ）、抽出部２０２は、order=0とする（ステップＳ６８）。次に、抽出部２０２は、SendingPictureList [ListPicSizeOrder [ order ] . PicNum ] = NewMaxDIDとする（ステップＳ６９）。そして、抽出部２０２は、orderを１つインクリメントしてから（ステップＳ７０）、そのorder がorderNum未満であるか否かを判断する（ステップＳ７１）。orderがorderNum未満であれば（ステップＳ７１；Ｙｅｓ）、抽出部２０２の処理はステップＳ６９に戻り、orderがorderNum以上になるまでステップＳ６９〜Ｓ７１の処理が繰り返される。なお、ステップＳ６７において、0 < NewMaxDID && NewMaxDID <= MaxDIDという条件が満たされない場合には（ステップＳ６７；Ｎｏ）、抽出部２０２の処理は終了する。
【００６０】
そして、抽出部２０２は、リストにおける配列の値が−１（SendingPictureList [i] = -1）でないピクチャを送信対象として、このピクチャに対応したパケットを抽出して送信する。一方、抽出部２０２は、リストにおける配列の値が−１（SendingPictureList [i] = -1）であるピクチャを送信対象とはせず、破棄する。これにより、時間階層の一部のピクチャは破棄されることになる。
【００６１】
このように、本実施形態によれば、映像送信装置１０が、階層符号化された映像データを分析することで生成したＧＯＰ属性情報をＧＯＰの先頭に付加する。そして、映像中継装置２０がパケットの抽出を行う際にはコスト関数にＧＯＰ属性情報を代入するだけで良いため、例えば処理対象パケットが映像データ全体においてどのような意味を持つのかを特定するために、それまでに処理済のパケット群に関する情報を分析するような場合と比較して、パケットの抽出処理にかかる時間が短くなる。よって、処理済のパケット群に関する十分な量の情報を分析することで新たな処理対象のパケット群の選別を行うような技術と比較して、映像中継装置２０が多段に接続された場合であってもデータ伝送に関する遅延を抑制することが可能となる。また、映像中継装置２０は、ＧＯＰ属性情報に含まれるＧＯＰの映像特性が動画モードである場合には、空間階層に重点を置いてパケットを抽出し、ＧＯＰの映像特性が静止画モードである場合には、時間階層に重点を置いてパケットを抽出する。このように、映像中継装置２０が、ＧＯＰ毎の映像データの特徴に合わせて、その映像の品質に影響が小さいパケットを破棄するから、そのような影響を考慮せずにパケットを破棄する場合と比べて、受信装置に届けられる映像データの映像品質を高く保つことが可能となる。
【００６２】
＜変形例＞
上記実施形態を次のように変形してもよい。
＜変形例１＞
上記実施形態では映像送信装置１０が受信装置３０群に対してどの程度の品質の映像を提供するべきかを判断するに際して、受信装置３０の通信の性能に基づいてその判断を行っていた。この判断の材料としてはこれ以外にも、受信装置３０の通信の性能や、受信装置３０の映像表示機能の性能や、受信装置３０の演算処理能力や、受信装置３０の消費電力や、受信装置３０のユーザ設定などがある。この場合、これらの判断の材料となる情報や、受信装置３０自身がこの材料を基に判断した映像品質のレベルが、受信装置３０から映像送信装置１０に通知されて、映像送信装置１０はその内容を知ることになる。
【００６３】
＜変形例２＞
上述した実施形態においては、属性情報生成部１０４は、ＧＯＰ毎の分析結果に基づいて、ＧＯＰの映像特性を、動きの大きい映像であるか（動画モード）、精細感が高くかつ動きの少ない映像であるか（静止画モード）を判断していたが、これらのモードのいずれにも属さない中間モードなるものを概念し、これら３つのモードのうちにいずれかに該当すると判断するようにしてもよい。このような中間モードのコスト関数は、時間階層と空間階層との双方を均等に扱ってパケットを抽出するものとなる。
また、実施形態では、分析部１０３は、動画モードに該当する条件として、シーンチェンジ推定及び動き量推定の双方の分析結果を用いていたが、これらのうち少なくともいずれか一方だけを用いるようにしてもよい。
【００６４】
＜変形例３＞
上述した実施形態においては、映像送信装置１０が、その内部に設けられた記憶部１３に映像データを記憶して、そこから送信対象の映像データを読み出すようにしていたが、これに限らず、映像送信装置１０が、自身に接続された外部のＨＤＤやデジタルビデオカメラなどの記憶装置又は撮像装置から映像データを取得するようにしてもよい。
【００６５】
＜変形例４＞
上述した実施形態においては、映像送信装置１０において、階層符号化部１０２と分析部１０３とを別々の機能としていたが、これらを組み合わせて階層符号化分析部とし、映像データの階層符号化を行うと同時に分析処理を行うようにしてもよい。このようにすれば、この階層符号化分析部は、ＧＯＰ毎の分析結果を出力する際に、フレーム間差分の絶対値の累積が設定される閾値を超える場合にシーンチェンジが行われたと推定することが可能となる。また、この階層符号化分析部は、ＧＯＰ毎の分析結果を出力する際に、フレーム内符号化およびフレーム間予測符号化において、ピクチャ全体の領域に対する量子化前の高周波数の領域の符号が占める割合を、精細度を表す指標として算出することも可能となる。
【００６６】
＜変形例５＞
上述した実施形態においては、映像送信装置１０が階層符号化部１０２を備えており、これが映像データの階層符号化を行っていたが、送信対象の映像データが予め階層符号化済みのものであった場合、階層符号化部１０２は、入力された階層符号化済みの映像データをそのまま分析部１０３に出力すればよい。また、映像送信装置１０と、これとは別体の階層符号化器とを接続し、映像送信装置１０が送信対象とする映像データが予め階層符号化済みのものに限られている場合、映像送信装置１０は階層符号化部１０２の機能を実装しなくとも良い。
【００６７】
＜変形例６＞
映像送信装置１０および映像中継装置２０において実行されるプログラムは、磁気記録媒体（磁気テープ、磁気ディスクなど）、光記録媒体（光ディスクなど）、光磁気記録媒体、半導体メモリなどのコンピュータ読み取り可能な記録媒体に記憶した状態で、これらの映像送信装置１０および映像中継装置２０に提供し得る。この場合には、記録媒体からプログラムを読み取るインターフェースを映像送信装置１０および映像中継装置２０に設ければよい。また、ネットワーク経由でプログラムを映像送信装置１０および映像中継装置２０にダウンロードさせることも可能である。
【符号の説明】
【００６８】
１…映像送信システム、１０…映像送信装置、１１，２１…ＣＰＵ、１２…ＲＡＭ、１３…記憶部、１４…入出力ポート，２５…出力ポート、２０，２０Ａ，２０Ｂ，２０Ｃ…映像中継装置、２２…揮発性記憶部、２３…不揮発性記憶部、２４…入力ポート、３０，３０Ａ，３０Ｂ…受信装置、１０１，２０１…入力部、１０２…階層符号化部、１０３…分析部、１０４…属性情報生成部、１０５…多重化部、１０６，２０４…出力部、２０２…抽出部。
【図１】
2011216986.tif 000005
【図２】
2011216986.tif 000006
【図３】
2011216986.tif 000007
【図４】
2011216986.tif 000008
【図５】
2011216986.tif 000009
【図６】
2011216986.tif 000010
【図７】
2011216986.tif 000011
【図８】
2011216986.tif 000012
【図９】
2011216986.tif 000013
【図１０】
2011216986.tif 000014
【図１１】
2011216986.tif 000015
【図１２】
2011216986.tif 000016
【図１３】
2011216986.tif 000017
【図１４】
2011216986.tif 000018
【図１５】
2011216986.tif 000019
【図１６】
2011216986.tif 000020