(57)【要約】オープン・ループ・システム(12)及び圧縮ビデオ・データのストリーム(10)を所要低ビット・レート(26)にトランスコード化する方法。本発明は：該ストリームにおけるマクロブロック群毎に動きベクトルを検査する工程；該動きベクトルに基づいて該マクロブロック群各々の重みを判定する工程(16)；及び該マクロブロック群におけるDCTブロックをビット・レートを低減するよう選択的に修正する工程(20)；を有し、各DCTブロックに対する該修正は該マクロブロックの該判定重みに基づくものである。高係数破棄又は再量子化を利用し得る。
2005525027.tif 000002
【特許請求の範囲】
【請求項１】
圧縮ビデオ・データのストリームを所要低ビット・レートに変換するシステムであって：
該ストリームにおけるマクロブロック群各々の重みを判定するシステム；及び
該マクロブロック群における離散コサイン変換（DCT）ブロックを各マクロブロックの該判定重みに基づいて選択的にビット・レート・トランスコード化するシステム；
を有することを特徴とするシステム。
【請求項２】
請求項１記載のシステムであって、該選択的にビット・レート・トランスコード化するシステムが更に、所要ビット・レート低減量に基づくものであることを特徴とするシステム。
【請求項３】
請求項１記載のシステムであって、各マクロブロックの該重みが、対象マクロブロックで、該対象マクロブロックに対して該マクロブロック各々が基準マクロブロックとして用いられたもの、の数に基づくものであることを特徴とするシステム。
【請求項４】
請求項３記載のシステムであって、各マクロブロックの該重みが該データのストリームにおける動きベクトルを検査することによって得られることを特徴とするシステム。
【請求項５】
請求項４記載のシステムであって、該選択的にビット・レート・トランスコード化するシステムが低減ビット・レートを、高周波係数を該DCTブロックから該マクロブロックの該重みに基づいて廃棄することによって、実現することを特徴とするシステム。
【請求項６】
請求項５記載のシステムであって、該選択的にビット・レート・トランスコード化するシステムが、重みの大きいマクロブロックの該DCTブロックからの高周波係数を破棄する数が、重みの小さいマクロブロックの該DCTブロックからの高周波係数を破棄する数に対して多いことを特徴とするシステム。
【請求項７】
請求項５記載のシステムであって、特定マクロブロックにおけるDCTブロックから廃棄される高周波係数の数が該特定マクロブロックの重みに反比例することを特徴とするシステム。
【請求項８】
請求項４記載のシステムであって、該選択的にビット・レート・トランスコード化するシステムがビット・レートを特定マクロブロックにおけるDCTブロックからのDCT係数を再量子化することによって低減することを特徴とするシステム。
【請求項９】
請求項８記載のシステムであって、該DCTブロックに適用される再量子化の量が該特定マクロブロックの重みに基づくものであることを特徴とするシステム。
【請求項１０】
請求項８記載のシステムであって、小さい重みを有するマクロブロックほど大きな量の再量子化が与えられることを特徴とするシステム。
【請求項１１】
請求項１記載のシステムであって、該重みを判定するシステムが：
Pフレーム解析システム；
を有し、該Pフレーム解析システムは、先行Bフレーム並びに後続Bフレームからの動きベクトル、及び、後続Pフレームが存在する場合には、該後続Pフレームからの動きベクトル、を検査して、現行Pフレームにおける各マクロブロックが基準マクロブロックとしての役割を果たす頻度を判定することを特徴とするシステム。
【請求項１２】
請求項１１記載のシステムであって、該重みを判定するシステムが、更に：
間接解析システム；
を有し、該間接解析システムは、該後続Pフレームにおいてマクロブロックが別のビデオ・フレームによって参照される頻度を判定することを特徴とするシステム。
【請求項１３】
請求項１記載のシステムであって、該重みを判定するシステムが：
Iフレーム解析システム；
を有し、該Iフレーム解析システムは、先行Bフレーム並びに後続Bフレームからの動きベクトル、及び、後続Pフレームからの動きベクトル、を検査して、現行Iフレームにおける各マクロブロックが基準マクロブロックとしての役割を果たす頻度を判定することを特徴とするシステム。
【請求項１４】
請求項１３記載のシステムであって、該重みを判定するシステムが、更に：
間接解析システム；
を有し、該間接解析システムは、該後続Pフレームにおける対象マクロブロックが基準マクロブロックとしての役割を果たす頻度を判定することを特徴とするシステム。
【請求項１５】
請求項１１記載のシステムであって、更に：
部分的マクロブロック解析システム；
を有し、該部分的マクロブロック解析システムは、現行マクロブロックと基準マクロブロックとの間の重複を算定し、重み値を該重複に基づいてスケール化することを特徴とするシステム。
【請求項１６】
請求項１記載のシステムであって、更に：
残余解析システム；
を有し、該残余解析システムは更に、各マクロブロックの該重みを該マクロブロックの複数残余離散コサイン変換（DCT）係数の値に基づいて判定することを特徴とするシステム。
【請求項１７】
記録可能媒体上に格納されて、圧縮ビデオ・データのストリームを所要低ビット・レートにビット・レート・トランスコード化する、プログラム・プロダクトであって：
該ストリームにおけるマクロブロック群各々の重みを判定する手段；及び
該マクロブロック群が有する離散コサイン変換（DCT）ブロックを選択的に修正してビット・レートを低減する手段；
を有し、各DCTブロックに対する該修正が該マクロブロックの該判定重みに基づくものであることを特徴とするプログラム・プロダクト。
【請求項１８】
圧縮ビデオ・データのストリームを所要低ビット・レートにトランスコード化する方法であって：
該ストリームにおけるマクロブロック群各々に対する動きベクトルを検査する工程；
該マクロブロック群各々の重みを該動きベクトルに基づいて判定する工程；及び
該マクロブロック群における離散コサイン変換（DCT）ブロックを選択的に修正してビット・レートを低減する工程；
を有し、各DCTブロックに対する該修正が該マクロブロックの該判定重みに基づくものであることを特徴とする方法。
【請求項１９】
請求項18記載の方法であって、更に：
Bフレーム・データに最低の相対的重みを割り当てる工程；
を有することを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的に、圧縮データ・ストリームのトランスコーディングに関し、特に、オープン・ループ・システム、及び、動き情報を用いてMPEGデータのビット・レート・トランスコーディングを行う方法に関する。
【背景技術】
【０００２】
MPEG-2、MPEG-4、H.261、H.263などのような、圧縮データ標準を利用するシステムの普及が拡大し続けるにつれて、圧縮データを効率的に処理し、通信する機能は積年の課題となっている。特に、１つの課題が生じるのは、圧縮データのストリームのビット・レートを低減することを、例えば、新たな伝送チャネルの所要帯域幅を充足するために、要する場合である。ビット・レートを低減する処理をトランスコーディングと呼び、特に、ビット・レート・トランスコーディングと呼ぶ。
【０００３】
圧縮ビデオ・データの各フレーム内部では、画像情報が、マクロブロックで、１６ｘ１６の画素ブロックを有し、多数の８ｘ８のDCT（離散コサイン変換）を有するもの、に格納される。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
現行の技術では、MPEGストリームを低ビット・レートにトランスコード化するオープン・ループ・システム及びクローズド・ループ・システムが存在する。クローズド・ループ・システムはビットストリームを、復号化して（又は部分的に復号化して）、更に、低レートで再符号化することによって、動作する。クローズド・ループ・システムは一般に、良好な品質を備えるが、実施するには計算量が大きいものとなる。したがって、クローズド・ループ・システムは通常、多くのアプリケーションには費用がかかり過ぎるものとなる。
【０００５】
オープン・ループ・システムはビット・レート・トランスコーディングを完全に元のストリームを復号化することなく行う。むしろ、オープン・ループ・システムは圧縮データを操作して低ビット・レートを可能にする。公知のトランスコーディング手法でビット・レートを削減するものは：（1）離散コサイン変換（DCT）係数を大きな量子化装置によって再量子化する手法；及び（2）1つ又は複数の高周波係数を廃棄する手法；を有する。これらの手法は両方とも計算量の観点からはいくぶん単純であり、したがってクローズド・ループ・システムに対する、費用対効果を有する、代替策を備える。しかしながら、オープン・ループは、例えば、MPEG標準によって用いられる、動き補償符号化によるかなりのエラー・ドリフトを結果として生じ得る。特に、上記のオープン・ループ・ビット・レート低減方法で、基準フレームにおいて行われるもの、によってもたらされる如何なるエラーも別のフレームに伝播する。
【０００６】
したがって、オープン・ループ・トランスコーディングと通常関係するエラー・ドリフトを低減するオープン・ループ・ビット・レート・トランスコーディング・システムに対する必要性が存在する。
【課題を解決するための手段】
【０００７】
本発明は、上記の課題、更には別のものを、動き情報（例えば、動きベクトル）を検査して各マクロブロックの重みを判断するオープン・ループ・トランスコーディング・システムを備えることによって、解決するものである。重み情報は更に、エラー伝播を低減するために各マクロブロックにトランスコーディング・アルゴリズムを選択的に適用するのに用いられる。第１の特徴では、本発明は圧縮ビデオ・データのストリームを所要低ビット・レートに変換するシステムを備え、該システムは：該ストリームにおけるマクロブロック群各々の重みを判定するシステム；及び該マクロブロック群におけるDCTブロックを、各マクロブロックの判定重みに基づいて、選択的にビット・レート・トランスコード化するシステム；を有する。
【０００８】
第２の特徴では、本発明は、記録可能媒体上に格納されたプログラム・プロダクトで、圧縮ビデオ・データのストリームを所要低ビット・レートにビット・レート・トランスコード化するもの、を備え、該プログラム・プロダクトは：該ストリームにおけるマクロブロック群各々の重みを判定する手段；及び該マクロブロック群が有するブロックにおけるDCT係数を選択的に修正してビット・レートを低減する手段；を有し、各マクロブロックに対する修正がマクロブロックの判定重みに基づくものである。
【０００９】
第３の特徴では、本発明はマクロブロック・データのストリームを所要低ビット・レートにトランスコード化する方法を備え、該方法は：該ストリームにおけるマクロブロック群各々に対する動きベクトルを検査する工程；該マクロブロック群各々の重みを動きベクトルに基づいて判定する工程；及び該マクロブロック群が有するブロックにおけるDCT係数を選択的に修正してビット・レートを削減する工程；を有し、各マクロブロックに対する修正がマクロブロックの判定重みに基づくものである。
【発明を実施するための最良の形態】
【００１０】
本発明のこれら及び別の特徴は、本発明の種々の特徴の以下の詳細説明、更には添付図面、から容易に分かるものである。
【実施例】
【００１１】
まず、添付図面を参照すれば、図１は、MPEGデータ１０の入力ストリームのビット・レートを、入力ストリームの高ビット・レートから、低ビット・レートを有する出力ストリーム１４に、低減するビット・レート・トランスコーディング・システム１２に表す。例えば、ビット・レート・トランスコーディング・システム１２はビット・レートを４メガビット/秒から２メガビット/秒で低減させ得るものであり、該ビット・レートは５０％削減されるものである。ビット・レート低減量は所要ビット・レート低減量２６で、如何なる方法でも入力/判定し得るもの、によって判定される、例えば、所要量２６は所定レベルに設定し得るものであり、システム状態等に基づいて動的に変動し得る。本発明は如何なる種類の動き補償ベースのデータ・ストリームで、MPEG-2、MPEG-4、H.261、H.263などを有するもの、にも適用し得ることが分かる。
【００１２】
トランスコーディング・システム１２は、入力マクロブロックの重みを、例えば動き情報に基づいて判定するマクロブロック重みシステム１６を有する。特に、マクロブロック重みシステム１６は入力MPEGストリーム１０における動きベクトルを検査して各入力基準フレーム（すなわち、Pフレーム及びIフレーム）中の各マクロブロックの重みを算定するシステムを有し得る。重みは対象マクロブロックで、該対象マクロブロックに対して現行のマクロブロックが基準ブロックとして用いられるもの、の数を判定することによって算定される。マクロブロックは基準ブロックとして頻繁に用いられるほど、重みが大きいものとして識別される。例示的実施例では、各マクロブロックは重み係数が割り当てられ得る。
【００１３】
マクロブロック重みシステム１６は重み係数をそのようなマクロブロック各々に対して如何なる所望の方法においても割り当て得る。単純な場合には、重み係数は現行のマクロブロックを参照する対象マクロブロックの数に等しいものであり得る。したがって、例えば、入力マクロブロックが基準マクロブロックとして4回用いられた場合、入力マクロブロックは４の重み係数が与えられる。代替として、入力マクロブロックは、範囲、例えば、低、中、高、が、該入力マクロブロックがどの程度頻繁に基準マクロブロックとして用いられたかに基づいて、割り当てられ得る。したがって、例えば、入力マクロブロックが基準マクロブロックとしてゼロ(0)回用いられた場合、該入力マクロブロックは低重み係数が割り当てられ得る；入力マクロブロックが基準ブロックとして１又は２回用いられた場合、該入力マクロブロックは中重み係数が割り当てられ得る；更に、入力マクロブロックが基準ブロックとして3回以上用いられた場合、該入力マクロブロックは高重み係数が割り当てられ得る。明らかに、別の変形を用い得る。
【００１４】
マクロブロック重みシステム１６はPフレーム解析システム２１；Iフレーム解析システム２３；部分的マクロブロック解析システム２５；間接解析システム２７；及び残余解析システム２９；を有し得る。Pフレーム解析システム２１及びIフレーム解析システム２３はPフレーム及びIフレーム各々にあるマクロブロックを検査してマクロブロック・データの相対的重みを判定する。特に、Pフレーム又はIフレームが解析された場合、システム２１又は２３が各マクロブロックを検査し、相対的重み係数がマクロブロック毎に算定される。上記のように、重みは現行マクロブロックが基準マクロブロック又は部分的基準ブロックとしての役割を果たす頻度に基づくものである。（本発明の目的で、本明細書及び特許請求の範囲の原文記載の語「reference  macroblock」は完全な基準ブロック又は部分的な基準ブロックを有し得ることを特筆する。）
Pフレーム及びIフレームは前方予測及び後方予測に用いられるため、Pフレーム解析システム２１及びIフレーム解析システム２３は先行Bフレーム並びに後続Bフレーム、及び（該当する場合）後続Pフレームの動きベクトルを解析して、PフレームとIフレームとの何れかにおける現行マクロブロックが基準マクロブロックとして役割を果たす頻度を判定する。重み係数はPフレームとIフレームとの何れかにおける現行マクロブロックを参照する対象マクロブロックの数（すなわち、予測数）に基づいて判定される。この処理の例は図２及び３を参照して以下に表す（特定のPフレームにはIフレームが後続し、したがって、解析する後続Pフレームを有しないことを特筆する。）。
【００１５】
マクロブロック重みシステム１６は、個々のマクロブロックをそれらの相対的な重みについて解析し得るか、マクロブロック群（例えば、フレーム全体又は画像群のようなフレーム群）を解析し得ることが分かる。マクロブロック群がそれらの重みについて解析される場合、マクロブロック重みシステム１６は第１に、マクロブロック群を一緒に、所定の手法に基づいて、グループ化する。該群の重み係数は更に、該群におけるマクロブロック各々の重み係数を合成（すなわち、加算、重み付け、など）することによって判定される。優先度がこのように、例えば、群毎におけるマクロブロックの累積重みに基づいて判定される。
【００１６】
マクロブロック重みシステム１６は更に、基準マクロブロックが、解析する現行マクロブロックと厳密に一致しない場合（すなわち、現行マクロブロックが部分的基準ブロックとしての役割を果たす場合）にマクロブロック重みを解析する部分的マクロブロック解析システム２５を有し得る。特に、現行のマクロブロックの一部分のみが基準マクロブロックとして用いられる場合、部分的マクロブロック解析システム２５は現行マクロブロックと基準マクロブロックとの間の重複を（画素換算で）計算する。例えば、256画素のうちの128の重複があった場合、重み係数は５０％だけ縮小される。この例は図５に関して以下に表す。
【００１７】
Pフレームにおけるマクロブロックの重み係数を算定する例示的アルゴリズムは以下：
現行マクロブロックを読み取る(read)；
（該現行マクロブロックの）重み_値(importance_value)=0  に設定する(set)；
Bフレーム及び後続Pフレームにおける対象マクロブロックで、現行マクロブロックを参照するもの、を識別する(identify)；
識別対象マクロブロック各々について(for)
相当する参照マクロブロックを検査する（examine）；
該参照マクロブロックが厳密に該現行マクロブロックと一致する場合(if)、
その場合は(then)、重み＿値(importance_value)＝重み＿値(importance_value)＋１とする：
さもなければ(else)
画素重複（最大値は１６ｘ１６＝２５６である。）を算定する：
重み＿値(importance_value)＝重み＿値(importance_value)＋（画素重複/256）とする：
終わり(end)
の通りになる。
【００１８】
代替的実施例として、マクロブロック重みシステム１６は更に、重みを判定するのに後の間接予測を検査する間接解析システム２７を有し得る。間接解析システム２７は、計算コストがかかる反面、高精度の評価手法を備える。例えば、MPEG符号化においては、IフレームにおけるマクロブロックはPフレーム・マクロブロックを「直接」予測するのに用いられ、該Pフレーム・マクロブロックは同様に、後続Pフレーム・マクロブロック及びBフレーム・マクロブロックを「間接的に」予測するのに用いられる、などとなる。このようにIフレーム・マクロブロック又はPフレーム・マクロブロックの重みを計算するうえで、マクロブロック重みシステム１６は直接予測を検査するのみならず、後の間接予測を検査するのにも用い得る。したがって、IマクロブロックがPフレームにおけるマクロブロックに対する動き予測の基準としての役割を果たし（直接予測）、後に、Pフレーム・マクロブロックが後続Pピクチャ及びBピクチャにおける別のマクロブロックの基準としての役割を果たす（間接予測）場合、間接予測の重み係数を付加し得るものであるか、さもなければ、間接予測の重み係数を直接予測の重み係数が該直接予測の重み係数の１つとして有することになる。したがって、IフレームとPフレームとの両方におけるマクロブロック間の相対的重みを算定し得るものであり、優先度付けはそのような結果に基づくものであり得る。
【００１９】
更に別の実施例として、重み係数を残余解析システム29によって離散コサイン変換（ＤＣＴ）残余値に基づいて、算定し得る（又は更に算定し得る）。残余は対象マクロブロックと基準マクロブロックとの間の差異である。したがって、残余が小さいほど、対象マクロブロックと基準マクロブロックとの照合度は近くなり、重みは大きくなる。したがって、残余解析システム２９は識別対象マクロブロック各々の残余を検査し得るものであり、各残余の関数（例えば、係数の絶対和又は加重和）を算定し得る。現行マクロブロックの重み係数は更に、例えば、各対象マクロブロックからの残余算定の累積値に基づいて算定し得る。この実施例は本明細書及び特許請求の範囲記載の別の実施例と組み合わせ得るか、該実施例からは別個に用い得る。
【００２０】
例示的実施例では、Bフレームが予測符号化において基準として用いられないため、Bフレームにおけるマクロブロックは最低の重みが割り当てられる。Pフレームにおけるマクロブロックは更に、比較的高い重みが割り当てられ、個々のPフレーム・マクロブロック・データは上記の方法で評価される。最後に、Iフレームにおけるマクロブロックは最高の重みが割り当てられ、この場合もまた、マクロブロック・データは上記の方法に基づいて評価される。
【００２１】
次に図２を参照すれば、Pフレーム・マクロブロックに対する重み値を算定する方法の例を表す。MPEGビデオ・データ32のストリームで、一連のフレーム（P,B,B,P,B,B,P）を有するもの、を表す。上記の方法によって、Pフレーム３３にあるマクロブロック・データがその重みについて解析される。特に、現行マクロブロック３１が（矢印で表すように）検査されて、該現行マクロブロック３１が、先行並びに後続Bフレーム７０における対象マクロブロック、及び後続Pフレーム３４における対象マクロブロック、の基準マクロブロックとしての役割を果たす頻度を判定する。現行マクロブロック３１は（対角線のある正方形として表す）９つの対象マクロブロックの基準マクロブロックとしての役割を果たすことが分かる。対象マクロブロックは隣接フレーム70及び３４における１６ｘ１６ブロック（図示せず）の何れか1つであり得る。現行マクロブロック３１と相当する基準マクロブロックとの間に厳密な一致があると仮定すれば、マクロブロックは９の重み値が割り当てられる。したがって、マクロブロック３１は、この値に基づいた相対的な優先度で、Pフレーム３３における別のマクロブロックと比較したもの、が割り当てられる。この場合には、後続Pフレーム３４はPフレーム33に後続することを特筆する。別の場合（図示せず）では、Pフレーム３３にIフレームが後続し、その場合には、後続Iフレームは対象マクロブロックについて解析されるものでない。
【００２２】
次に図3を参照すれば、重み値をIフレーム・マクロブロックについて算定する方法の同様な例を表す。この場合には、フレーム３８のストリーム（P,B,B,I,B,B,P）を表し、Iフレーム36のマクロブロック・データが解析されてIフレーム36における各マクロブロックの相対的優先度が判定される。この場合もまた、対象マクロブロックが、後続Pフレーム及び隣接Bフレームにおける動きベクトルを検査することによって識別される。この場合には、現行マクロブロックによって予測される対象マクロブロックは８つある。現行マクロブロック３５と相当する基準マクロブロックとの間の厳密な一致があると仮定すれば、８の重み値が現行マクロブロック３５に割り当てられる。
【００２３】
次に、図4を参照すれば、重み値が、間接解析システム２７を利用する別の実施例について、算定される例を表す。特に、フレーム40のストリーム(P,B,B,P,B,B,P)を表し、Pフレーム42におけるマクロブロック・データは相対的優先度を判定するよう解析される。現行マクロブロック４１はBフレーム４４とPフレーム46との両方における合計５つの対象マクロブロックに対する基準マクロブロックとしての役割を果たすことが分かる。更に、Pフレーム46における対象マクロブロック43は更に、Bフレーム48及びPフレーム50における合計５つの対象マクロブロックの基準マクロブロックとして役割を果たすことが分かる。更に、Pフレーム４６における対象マクロブロック４３は更に、Bフレーム48及びPフレーム５０における計６つの間接対象マクロブロックの「間接」基準マクロブロックとしての役割を果たす。Pフレーム４６における別の対象マクロブロックがないと仮定すれば、Pフレーム42の現行マクロブロック４１に対する重み値は１１となる。図示していないが、計算量の多い一連の間接算定を利用し得る。例えば、Pフレーム50における対象マクロブロックを、該対象マクロブロックが基準マクロブロックなどとしての役割を果たす頻度を判定するよう、更に、検査し得る。
【００２４】
次に図５を参照して、部分的基準ブロックが部分的マクロブロック解析システム２５によって考慮される方法の例を表す。特に、フレーム５２（例えば、I又はP）は現行マクロブロック５４で、重みについて解析されるもの、現行マクロブロック54と厳密には一致しない基準マクロブロック５６、及びマクロブロック５４と基準マクロブロック５６が一致する部分を表す重複部分６０を有する。この例では、現行マクロブロック５４における画素の２５％のみが別のフレームにおける対象マクロブロックの基準マクロブロックとして用いられる。したがって、この特定のマクロブロックに対する重み値が（例えば、２５％だけ）縮小されて該重複を補う。
【００２５】
重み係数が判定されれば、トランスコーディング・アルゴリズム２０が入力ストリーム１０の有効ビットレートを低減するよう1つ又は複数のマクロブロックに選択的に適用し得る。トランスコーディング・アルゴリズム２０によって適用されるビット・レート低減量は一般に、マクロブロックに割り当てられる重み係数に反比例するか関連する。したがって、例えば、マクロブロックが高い重み係数を有する場合、マクロブロックにはビット・レート低減はほとんど適用されないか全く適用されない。代替として、マクロブロックが低い重み係数を有する場合、マクロブロックには高い量のビット・レート低減が適用され得る。
【００２６】
マクロブロック毎のビット・レート低減の実際量は更に、所要入力ビット・レート低減量２６によってかわってくる。例えば、2メガビット/秒の所要ビット・レート低減量は１メガビット/秒の所要ビット・レート低減量よりも各マクロブロックに対する所要低減量が大きくなる。したがって、各マクロブロックに適用されるビット・レート低減量はマクロブロックに割り当てられる重み係数とMPEG入力ストリーム１０をトランスコード化するのに要する所要ビット・レート低減量２６との関数になる。
【００２７】
単純な例として、図6に表す４つのマクロブロックの場合を検討する。図6に表すように、マクロブロック８２、８４、８６、88を有する群８０が存在する。マクロブロック８２は重み係数I=1（比較的低い）が割り当てられたものであり；マクロブロック８４は重み係数I=２が割り当てられたものであり；マクロブロック８６は重み係数I=３が割り当てられたものであり；マクロブロック８８は重み係数I=４（比較的高い）が割り当てられたものである；と仮定する。更に、マクロブロック群８０に適用される所要ビット・レート低減量「N」が入力されたものと仮定する。マクロブロック重みに比例する選択的方法でビット・レート低減を実現するよう、トランスコーディング・アルゴリズム２０は、該低減の４０％をマクロブロック82から来るものにさせ得るものであり；該低減の３０％をマクロブロック84から来るものにさせ得るものであり；該低減の２０％をマクロブロック8６から来るものにさせ得るものであり；該低減の１０％をマクロブロック８８から来るものにさせ得るものである。明らかに、実際の実施、例えば、群８０におけるマクロブロック数、ビット・レート低減率の配分など、は本発明の範囲から逸脱することなく如何なる方法によっても実施し得る。更に、マクロブロック毎のビット・レート低減を割り当てる割合の利用は単に、例示が目的であり、マクロブロックの中でビット・レート低減を割り当てる如何なる機構、測定、又は算定をも利用し得ることを認識するものである。
【００２８】
マクロブロック毎にビット・レート低減量が判定されると、トランスコーディング・アルゴリズム２０は該マクロブロック・データが有するDCTブロックを如何なる方法においても、該低減を実現するよう、修正し得る。２つの例示的低減システムで、マクロブロック・データを修正するもの、は：(1)係数廃棄システム２２；及び(2)再量子化装置２４；である。係数廃棄システム２２は高周波係数をマクロブロックから廃棄させて、マクロブロックの、容量、更にはしたがって所要帯域幅、を削減する。再量子化装置２４はDCT係数を、例えば、大きな量子化装置によって、再量子化させる。既知のように、該量子化装置が増大される場合、DCT係数の精度、更にはしたがって所要帯域幅、が低減される。
【００２９】
該低減は選択的に適用される（すなわち、大きなビット・レート低減が重みの小さいマクロブロックに適用される）ので、オープン・ループ・トランスコーディングに関するエラー・ドリフトが大いに削減される。特に、基準マクロブロックとして最も頻繁に用いられるマクロブロックは低い量の削減を受けるので、エラー伝播の場合は少なくなる。
【００３０】
本明細書及び特許請求の範囲記載のシステム、機能、機構、方法、及びモジュールはハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせにおいて実施し得ることが分かる。それらは本明細書及び特許請求の範囲記載の方法を実施するよう形成された如何なる種類のコンピュータ・システム又は別の装置によっても実施し得る。通常のハードウェアとソフトウェアとの組み合わせは、汎用コンピュータ・システムで、ロードされ、実行された場合、本明細書及び特許請求の範囲記載の方法を実施するように、該コンピュータ・システムを制御するコンピュータ・プログラムを有するもの、である。代替として、特定用途向コンピュータで、本発明の機能的タスクの1つ又は複数を実施する専用ハードウェアを有するもの、を利用し得る。本発明は更に、コンピュータ・プログラム・プロダクトに組み込み得るものであり、該コンピュータ・プログラム・プロダクトは本明細書及び特許請求の範囲記載の方法及び機能の実施を可能にする全ての特徴を有し、コンピュータ・プログラムにロードされた場合に、これらの方法及び機能を実行することが可能である。本明細書及び特許請求の範囲記載の、コンピュータ・プログラム、ソフトウェア・プログラム、プログラム、プログラム・プロダクト、又はソフトウェアは、情報処理機能を有するシステムに特定の機能を、直接か、以下：(a)別の言語、コード又は表記への変換；並びに/若しくは(b)異なる材質形態における再生；の、何れか若しくは両方、の後か、の何れかに、行わせることを意図する命令群の如何なる言語、コード又は表記における、如何なる表現をも表すものである。
【００３１】
本発明の上記好適実施例の上記記載は例示及び説明の目的で示している。それらは網羅的であることを意図するものでも、開示されたまさにその形態に本発明を限定することを意図するものでもなく、明らかに多くの修正及び変形が上記開示内容に鑑みて考えられる。そのような修正及び変形で、当業者に明らかなもの、は添付図面規定の本発明の範囲内に収まることを意図するものである。
【図面の簡単な説明】
【００３２】
【図１】本発明によるトランスコーディング・システムを表す図である。
【図２】本発明によるPフレーム解析を表す図である。
【図３】本発明によるIフレーム解析を表す図である。
【図４】本発明による間接解析を表す図である。
【図５】本発明による部分的基準ブロック解析を表す図である。
【図６】マクロブロック群での低減の例示的割り当てを表す図である。
【図１】
2005525027.tif 000003
【図２】
2005525027.tif 000004
【図３】
2005525027.tif 000005
【図４】
2005525027.tif 000006
【図５】
2005525027.tif 000007
【図６】
2005525027.tif 000008
【国際調査報告】
2005525027.tif 000009
2005525027.tif 000010
2005525027.tif 000011
2005525027.tif 000012