(57)【要約】【課題】スケーラブルビデオコーディングアルゴリズムを提供する。【解決手段】時間的重複を除去するようにデコーディング順序と同じ順序で時間的フィルタリングを行い、時間的重複が除去されたフレームから変換係数を得てそれを量子化してビットストリームを生成するビデオコーディング方法と、前記過程を実行するための時間的変換部、空間的変換部、量子化部、及びビットストリーム生成部を含むビデオエンコーダ及び、基本的にビデオコーディングと逆順で行うビデオデコーディング方法と、入力されたビットストリームを解釈してビデオデコーディングのために必要な情報を抽出してデコーディングするビデオデコーダを提供する。これにより、エンコーディング側で時間的スケーラビリティを維持可能にしつつも、本発明によって生成されたビットストリームを既存のデコーダがデコーディングしてビデオストリームを再生できる。【選択図】図３
2008079326.tif 000002
【特許請求の範囲】
【請求項１】
ビデオシーケンスを構成する複数のフレームの入力を受け、フレーム間の重複性を除去してビットストリームを生成する方法において、
コーディングしようとする対象フレームより時間的レベルが高いか、または同じであるフレームのうち一つまたは二つ以上のフレームを参照フレームとして選定する段階と、
前記選定された参照フレームを利用して前記対象フレームの重複性を除去する段階と、
前記重複性が除去された除去フレーム及び前記時間的レベルを前記ビットストリームに挿入する段階と、
前記除去フレームより時間的レベルが低いフレームを、新たにコーディングしようとする対象フレームとして選択する段階とを含み、
これらの各段階を複数回実行する
ことを特徴とするビットストリーム生成方法。
【請求項２】
前記時間的レベルは、隣接するフレーム間の距離により定義される
ことを特徴とする請求項１に記載のビットストリーム生成方法。
【請求項３】
前記対象フレームと時間的レベルの同じフレームを参照フレームとして選定する場合、フレームの時間的順序を示すインデックスが前記対象フレームより小さなフレームを、参照フレームとして選定する
ことを特徴とする請求項２に記載のビットストリーム生成方法。
【請求項４】
前記フレームのうち最も高い時間的レベルを有するフレームは、フレームの時間的順序を示すインデックスが最も小さいフレームである
ことを特徴とする請求項２に記載のビットストリーム生成方法。
【請求項５】
時間的重複性が除去され、エンコーディングされた対象フレームを復元するビデオデコーディング方法において、
入力ビットストリームからフレームの時間的レベルを読取る段階と、
前記対象フレームより時間的レベルが高いか、または同じであるフレームのうち一つまたは二つ以上のフレームを参照フレームとして選定する段階と、
前記選定された参照フレームから前記対象フレームを復元する段階と、
復元されたフレームより時間的レベルが低いフレームを、新たに復元しようとする対象フレームとして選択する段階とを含み、
これらの各段階を複数回実行する
ことを特徴とするビデオデコーディング方法。
【請求項６】
前記時間的レベルは、隣接するフレーム間の距離により定義される
ことを特徴とする請求項５に記載のビデオデコーディング方法。
【請求項７】
前記対象フレームと時間的レベルの同じフレームを選定する場合、フレームの時間的順序を示すインデックスが前記対象フレームより小さなフレームを選定することを特徴とする請求項６に記載のビデオデコーディング方法。
【請求項８】
前記フレームのうち最も高い時間的レベルを有するフレームは、フレームの時間的順序を示すインデックスが最も小さいフレームである
ことを特徴とする請求項６に記載のビデオデコーディング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はビデオ圧縮に係り、さらに詳細にはコーディング過程での時間的フィルタリング順序とデコーディング過程での逆時間的フィルタリング順序とが相等しいビデオコーディングアルゴリズムに関する。
【背景技術】
【０００２】
インターネットを含む情報通信技術が発達するにつれて文字、音声だけでなく画像通信が増加しつつある。既存の文字中心の通信方式では消費者の多様な欲求を満たすには足りなく、したがって、文字、映像、音楽など多様な形態の情報を収容できるマルチメディアサービスが増加しつつある。マルチメディアデータはその量がぼう大で大容量の保存媒体を必要とし、転送時に広い帯域幅を必要とする。例えば、“６４０＊４８０”の解像度を持つ２４ビットのトルーカラーのイメージは、１フレーム当り“６４０＊４８０＊２４ビット”の容量、言い換えれば、約７．３７メガビットのデータが必要である。これを秒当たり３０フレームで転送する場合には２２１メガビット／秒の帯域幅を必要とし、上映時間９０分の映画を保存するためには約１２００ギガビットの保存空間を必要とする。したがって、文字、映像、オーディオを含むマルチメディアデータを転送するためには圧縮コーディング技法を使用することが必須である。
【０００３】
データを圧縮する基本的な原理はデータの重複をなくす過程である。イメージで同じ色や客体が反復されるような空間的重複や、動映像フレームで隣接フレームがほとんど変化のない場合や、オーディオで同じ音が反復され続けるような時間的重複、または人間の視覚及び知覚能力が高い周波数に鈍感なことを考慮した心理視覚重複をなくすことによりデータを圧縮できる。データ圧縮は、ソースデータの損失有無と、それぞれのフレームに対する独立的な圧縮如何と、圧縮及び復元に必要な時間の同一如何とによってそれぞれ損失／無損失圧縮、フレーム内／フレーム間圧縮、対称／非対称圧縮に分けられる。その外にも圧縮復元遅延時間が５０ｍｓを超えない場合にはリアルタイム圧縮に分類し、フレームの解像度が多様な場合にはスケーラブル圧縮に分類する。文字データや医学用データなどの場合には無損失圧縮が利用され、マルチメディアデータの場合には主に損失圧縮が利用される。一方、空間的重複を除去するためにはフレーム内圧縮が利用され、時間的重複を除去するためにはフレーム間圧縮が利用される。
【０００４】
マルチメディアを転送するための転送媒体は媒体別にその性能が異なる。現在使われる転送媒体は、秒当たり数十メガビットのデータを転送できる超高速通信網をはじめとして秒当たり３８４キロビットの転送速度を持つ移動通信網まで多様な転送速度を持つ。ＭＰＥＧ−１、ＭＰＥＧ−２、Ｈ．２６３またはＨ．２６４のような従来のビデオコーディングは、モーション補償予測コーディング法に基づいて時間的重複はモーション補償により除去し、空間的重複は変換コーディングにより除去する。このような方法は良好な圧縮率を持っているが、主アルゴリズムで再帰的接近法を使用していてトルースケーラブルビットストリームのための柔軟性を持っていない。これにより、最近にはウェーブレット基盤のスケーラブルビデオコーディングについての研究が活発である。スケーラブルビデオコーディングはスケーラビリティを持つビデオコーディングを意味する。スケーラビリティとは、圧縮された一つのビットストリームから部分デコーディング、すなわち、多様なビデオを再生できる特性を意味する。スケーラビリティは、ビデオの解像度を調節できる性質を意味する空間的スケーラビリティと、ビデオの画質を調節できる性質を意味する信号対雑音比（Ｓｉｇｎａｌ ｔｏ Ｎｏｉｓｅ Ｒａｔｉｏ：ＳＮＲ）スケーラビリティと、フレームレートを調節できる時間的スケーラビリティと、これらそれぞれを組合わせたものとを含む概念である。
【０００５】
ウェーブレット基盤のスケーラブルビデオコーディングに使われている多くの技術のうち、Ｏｈｍにより提案されてＣｈｏｉ及びＷｏｏｄにより改善されたＭＣＴＦ（Ｍｏｔｉｏｎ−Ｃｏｍｐｅｎｓａｔｅｄ Ｔｅｍｐｏｒａｌ Ｆｉｌｔｅｒｉｎｇ）は時間的重複性を除去して時間的に柔軟なスケーラブルビデオコーディングのための核心技術である。ＭＣＴＦではＧＯＰ（Ｇｒｏｕｐ Ｏｆ Ｐｉｃｔｕｒｅ）単位でコーディング作業を行うが、現在フレームと基準フレームとの対は動き方向に時間的フィルタリングされる。これについては図１を参照して説明する。
【０００６】
図１は、ＭＣＴＦ方式のスケーラブルビデオコーディング及びデコーディング過程での時間的分解過程のフローを示す図面である。
【０００７】
図１でＬフレームは、低周波あるいは平均フレームを意味し、Ｈフレームは高周波あるいは差フレームを意味する。図示されたようにコーディングは、低い時間的レベルにあるフレーム対を先ず時間的フィルタリングして低いレベルのフレームを高いレベルのＬフレーム及びＨフレームに転換させ、該転換されたＬフレーム対は再び時間的フィルタリングしてさらに高い時間的レベルのフレームに転換される。エンコーダは最高レベルのＬフレーム一つ及びＨフレームを利用してウェーブレット変換を経てビットストリームを生成する。図面で濃い色で表示されたフレームは、ウェーブレット変換の対象となるフレームを意味する。整理すれば、コーディングする制限された時間的レベルの順序は低いレベルのフレームから高いレベルのフレームを演算する。デコーダは、ウェーブレット逆変換を経た後に得られた濃い色のフレームを高いレベルから低いレベルのフレームの順に演算してフレームを復元する。すなわち、時間的レベル３のＬフレーム及びＨフレームを利用して時間的レベル２のＬフレーム２つを復元し、時間的レベルのＬフレーム２つ及びＨフレーム２つを利用して時間的レベル１のＬフレーム４つを復元する。最終的に時間的レベル１のＬフレーム４つ及びＨフレーム４つを利用してフレーム８つを復元する。元来のＭＣＴＦ方式のビデオコーディングは柔軟な時間的スケーラビリティを持つが、単方向動き推定及び低い時間的レートでの悪い性能などのいくつかの短所を持っている。これに対する改善方法について多くの研究があったが、その中一つがＴｕｒａｇａとＭｉｈａｅｌａにより提案された非拘束ＭＣＴＦ（Ｕｎｃｏｎｓｔｒａｉｎｅｄ ＭＣＴＦ；以下、ＵＭＣＴＦ）である。これについては図２を参照して説明する。
【０００８】
図２は、従来のＵＭＣＴＦ方式のスケーラブルビデオコーディング及びデコーディング過程での時間的分解過程のフローを示す図面である。
【０００９】
ＵＭＣＴＦは、複数の参照フレームと双方向フィルタリングを使用可能にしてさらに一般的なフレーム作業を行えるようにする。またＵＭＣＴＦ構造では、フィルタリングされていないフレーム（Ａフレーム）を適切に挿入して非二分的時間的フィルタリングを行うこともできる。フィルタリングされたＬフレームの代りにＡフレームを使用することによって低い時間的レベルで視覚的な画質がだいぶ改善される。なぜなら、Ｌフレームの視覚的な画質は不正確な動き推定のために時々相当な性能低下につながることもあるからである。多くの実験結果によれば、フレームアップデート過程を省略したＵＭＣＴＦが元来のＭＣＴＦより優秀な性能を示す。このような理由で、たとえ最も一般的な形態のＵＭＣＴＦは低域通過フィルタを適応的に選択できるとしても、アップデート過程を省略した特定形態のＵＭＣＴＦの特定形態が一般的に使われている。
【００１０】
ＭＣＴＦ（またはＵＭＣＴＦ）に基づいたスケーラブルビデオコーディングアルゴリズムで圧縮されたビデオストリームで、デコーディング側では柔軟な時間的スケーラビリティを持つビデオシーケンスを復元できる。例えば、図１（または図２）のデコーディング側では、時間的レベル３のＬ（またはＡ）フレームまでのみデコーディングする場合に１／８フレームレートを持つビデオストリームを復元でき、時間的レベル２のＬ（またはＡ）フレームまでのみデコーディングする場合に１／４フレームレートを持つビデオストリームを復元でき、時間的レベル１のＬ（またはＡ）フレームまでのみデコーディングする場合には１／２フレームレートを持つビデオストリームを復元でき、時間的レベル１のＨフレームもいずれもＬ（またはＡ）フレームで逆時間的フィルタリングして復元する場合には、元のフレームレートを持つビデオストリームを復元できる。
【００１１】
しかし、従来のＭＣＴＦ（またはＵＭＣＴＦ）に基づいたスケーラブルビデオコーディングアルゴリズムでビデオを圧縮しようとする時、エンコーディング側では柔軟な時間的スケーラビリティを持たない。図１（または図２）を参照すれば、従来の方式では、エンコーディング側で時間的レベルの低いフレームから始まって時間的レベルの高いフレームの順に時間的フィルタリングするために、エンコーディング側は時間的スケーラビリティを持たない。なぜなら、デコーディング側で、ビデオシーケンスを復元するためのデコーディング過程で逆時間的フィルタリングを行う時に最も高い時間的レベル（時間的レベル３）のＬ（またはＡ）フレームを基準に他のフレームを復元するためである。従来の方式では、最も高い時間的レベルのフレームはコーディング過程を全部経た時に得られるため、エンコーディング側では演算能力やその他の理由によって時間的フィルタリングを止めることができない。
【００１２】
このような理由で、エンコーディング側でも時間的スケーラビリティを持つビデオコーディングアルゴリズムが必要である。
【００１３】
なお、特許文献１及び特許文献２には、スケイラブル・ビデオ・エンコーディング（ｓｃａｌａｂｌｅ ｖｉｄｅｏ ｅｎｃｏｄｉｎｇ）に関する技術が開示されている。
【特許文献１】国際公開第２００２／０１８８１号パンフレット
【特許文献２】国際公開第２００３／０６１２９４号パンフレット
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明は前述した必要性により案出されたものであり、本発明はエンコーディング側でも時間的スケーラビリティを持つビデオコーディング方法とデコーディング方法及びその装置を提供することをその技術的課題とする。
【課題を解決するための手段】
【００１５】
前記目的を達成するために、本発明によるビデオコーディング方法は、ビデオシーケンスを構成する複数のフレームを入力されて、ＧＯＰ単位で最も高い時間的レベルを持つフレームから時間的レベル順にフレームの時間的重複を除去する（ａ）段階と、前記時間的重複が除去されたフレームから変換係数を得て、それを量子化してビットストリームを生成する（ｂ）段階と、を含む。
【００１６】
望ましくは、前記（ａ）段階で同じ時間的レベルを持つフレームに対しては、フレームインデックスの小さなフレームである時間的に早いフレームからフレームインデックスの大きいフレームである時間的に遅いフレームの順に時間的重複を除去する。
【００１７】
望ましくは、ＧＯＰを構成するフレームのうち最も高い時間的レベルを持つフレームは、ＧＯＰの最も小さなフレームインデックスを持つフレームである。望ましくは、前記（ａ）段階で一つのＧＯＰを構成するフレームの時間的重複を除去する時、最も高い時間的レベルを持つ最初のフレームをＡフレームと設定し、前記最も高い時間的レベルを持つフレームを除外した前記ＧＯＰを構成するフレームに対しては、高い時間的レベルから低い時間的レベル順に、また同じ時間的レベルではフレームインデックスの最も小さなフレームからフレームインデックスが大きくなる順に時間的重複を除去し、前記時間的重複を除去する過程で各フレームが参照できる一つまたはそれ以上のフレームは、自身より時間的レベルが高いか、または自身と同じ時間的レベルを持つフレームのうち自身よりフレームインデックスの大きいフレームである。前記時間的重複を除去する過程で、各フレームが参照するフレームには自身をさらに含むことが望ましい。
【００１８】
前記時間的重複を除去する過程で、各フレームが参照するフレームには、次のＧＯＰに属する自身より時間的レベルの高い一つまたはそれ以上のフレームをさらに含みうる。
前記複数のフレームに対する空間的重複を除去する段階をさらに含み、前記生成するビットストリームには、空間的重複除去及び時間的重複除去の順序に関する情報（重複除去順序）をさらに含むことが望ましい。
【００１９】
前記目的を達成するために、本発明によるビデオエンコーダは、複数のフレームを入力されて、ＧＯＰ単位で最も高い時間的レベルを持つフレームから時間的レベル順にフレームの時間的重複を除去する時間的変換部と、前記フレームに対する時間的重複を除去した以後に得られる変換係数を量子化する量子化部と、前記量子化された変換係数を利用してビットストリームを生成するビットストリーム生成部と、を含む。
【００２０】
望ましくは、前記時間的変換部は、入力された複数のフレームから動きベクトルを求める動き推定部と、前記動きベクトルを利用して前記入力された複数のフレームに対してＧＯＰ単位で時間的フィルタリングを行う時間的フィルタリング部と、を含み、前記時間的フィルタリング部は、ＧＯＰ単位で時間的フィルタリングを行う時、高い時間的レベルから低い時間的レベル順に、また同じ時間的レベルではフレームインデックスの最も小さなフレームからフレームインデックスが大きくなる順に前記フレームに対して時間的フィルタリングを行い、前記時間的フィルタリング部は、既に時間的フィルタリングされたフレームの元のフレームを参照して各フレームを時間的フィルタリングする。
【００２１】
望ましくは、前記時間的フィルタリング部は、時間的フィルタリング中の各フレームに対する時間的重複を除去する時に参照するフレームの中に時間的フィルタリング中の各フレームをさらに含む。
【００２２】
望ましくは、前記複数のフレームに対する空間的重複を除去する空間的変換部をさらに含み、前記ビットストリーム生成部は、前記変換係数を得るための時間的重複を除去する過程及び空間的重複を除去する過程の順序を示す重複除去順序に関する情報を含んで前記ビットストリームを生成する。
【００２３】
前記目的を達成するために、本発明によるビデオデコーディング方法は、ビットストリームを入力され、それを解釈してコーディングされたフレームに関する情報及び重複除去順序を抽出する（ａ）段階と、前記コーディングされたフレームに関する情報を逆量子化して変換係数を得る（ｂ）段階と、前記重複除去順序を参照して、前記コーディングされたフレームの重複除去順序の逆順に前記変換係数を逆空間的変換及び逆時間的変換してフレームを復元する（ｃ）段階と、を含む。
【００２４】
望ましくは、前記（ａ）段階で、前記ビットストリームからＧＯＰ毎にコーディングされたフレーム数に関する情報をさらに抽出する。
【００２５】
前記目的を達成するために、本発明によるビデオデコーダは、入力されたビットストリームを解釈して、コーディングされたフレームに関する情報及び重複除去順序を抽出するビットストリーム解釈部と、前記コーディングされたフレームに関する情報を逆量子化して変換係数を得る逆量子化部と、逆空間的変換過程を行う逆空間的変換部と、逆時間的変換過程を行う逆時間的変換部と、を含み、前記重複除去順序を参照して前記コーディングされたフレームの重複除去順序の逆順に前記変換係数に対する逆空間的変換過程及び逆時間的変換過程を行ってフレームを復元する。
【００２６】
前記目的を達成するために、請求項１から請求項７と請求項１２及び請求項１３のうちのいずれか１項による方法を実行するためのコンピュータ可読プログラムを記録した記録媒体が提供される。
【発明の効果】
【００２７】
本発明によれば、エンコーディング側でも時間的スケーラビリティを持つビデオコーディングが可能である。また、ＧＯＰのあらゆるフレームを全て演算せずに一部のみ演算し終えてもそれをデコーディング側に伝送でき、デコーディング側では伝送された一部フレームに対してもデコーディングを始められるので遅延時間が短縮される。
【発明を実施するための最良の形態】
【００２８】
以下、添付された図面を参照して本発明の望ましい実施例を詳細に説明する。
スケーラブルビデオコーディングアルゴリズムはＧＯＰ（Ｇｒｏｕｐ Ｏｆ Ｐｉｃｔｕｒｅ）単位でフレームを圧縮する。ＧＯＰのサイズ（ＧＯＰを構成するフレームの数）はコーディングアルゴリズムによって別に定めうるが、２ｎ（ｎは自然数）に定めることが望ましい。以下の実施例でＧＯＰは８である場合と説明しているが、これは例示的なものであり、ＧＯＰサイズが異なる場合にも本発明の技術的思想を含んでいる場合には本発明の保護範囲に属すると解釈しなければならない。
【００２９】
図３は、本発明の一実施例によるスケーラブルビデオコーディング及びデコーディング過程での時間的分解過程を示す図面である。
【００３０】
図３を参照して、コーディング及びデコーディング過程の時間的分解（時間的フィルタリング）は、いずれも時間的レベルの高い順から時間的レベルの低い順に行われることが分かる。エンコーディング側で、時間的レベルの高いフレームから時間的レベルの低いフレームの順にフレームを時間的分解することは従来技術と差別される本発明の特徴であり、このような本発明によれば、エンコーディング側でも時間的スケーラビリティを達成できる。
【００３１】
コーディング過程についてさらに詳細に説明する。
【００３２】
図面でＡフレームは、時間的フィルタリング過程でフィルタリングされていないフレームを意味する。すなわち、Ａフレームは予測基盤の時間的フィルタリングが行われていないフレームを意味するといえる。図面でＨフレームは、時間的フィルタリングを経たフレームを意味する。Ｈフレームを構成する各マクロブロックは、参照の対象となるフレーム（以下、参照フレームという）の対応するマクロブロックと比較した差の情報を含んでいる。
【００３３】
まず、時間的レベル３のインデックスが０であるフレーム（以下、０番フレームという）をコーディングする（時間的フィルタリングを行わずに空間的変換過程のみ行ってコーディングする）。そして、バッファにコーディングされていないまま保存されている元の０番フレームを参照して４番フレームを時間的フィルタリングする。時間的フィルタリングされた４番フレームの各ブロックは元の０番フレームの対応するブロックとの差情報を記録している。次いで、時間的レベル２のフレームを時間的フィルタリングする。すなわち、元の０番フレームを参照して２番フレームを時間的フィルタリングし、元の４番フレームを参照して６番フレームを時間的フィルタリングする。同じ方式で、時間的レベル１のフレームを時間的フィルタリングする。すなわち、元の０番、２番、４番、６番フレームを参照してそれぞれ１番、３番、５番、７番フレームを時間的フィルタリングする。時間的フィルタリングされていない０番と時間的フィルタリングされた１番から７番フレーム（濃い色のフレーム）は、空間的変換された後に量子化過程を経て圧縮される。圧縮された情報は、時間的フィルタリング過程で得たモーションベクトルに関する情報と共にその他の必要な情報を付け加えてビットストリーム化され、ビットストリームはデコーディング側へ伝送媒体を通じて伝送される。
【００３４】
デコーディング過程についてさらに詳細に説明する。濃い色のフレームはビットストリームから得られたコーディングされたフレームであり、白色のフレームはデコーディング過程を通じて復元されるフレームを意味する。
【００３５】
まず、時間的レベル３の０番フレームをデコーディングする（逆量子化及び逆空間的変換過程を行って元の０番フレームを復元する）。デコーディングされた元の０番フレームを参照して時間的フィルタリングされた４番フレームを逆時間的フィルタリングし、元の４番フレームを復元する。次いで、時間的レベル２の時間的フィルタリングされたフレームを逆時間的フィルタリングする。復元された元の０番フレームを参照して時間的フィルタリングされた２番フレームを逆時間的フィルタリングし、復元された元の４番フレームを参照して時間的フィルタリングされた６番フレームを逆時間的フィルタリングする。同じ方式で、時間的レベル１の時間的フィルタリングされたフレームを逆時間的フィルタリングする。すなわち、復元された元の０番、２番、４番、６番フレームを参照してそれぞれ時間的フィルタリングされた１番、３番、５番、７番フレームを逆時間的フィルタリングする。
【００３６】
本実施例によれば、既存のＭＣＴＦ方式のスケーラブルビデオデコーダに互換されるビデオストリームを生成できる。ただし、本実施例によってコーディングされたビットストリームが元のＭＣＴＦ方式を使用するスケーラブルビデオデコーダと完全に互換されることを意味するものではない。ここで、互換されるということは、既存のＭＣＴＦ方式でフレーム対を比較して分解した各低周波サブバンドをフレーム対の平均値に更新せず、元のフレームをそのまま時間的フィルタリングされていないままで放置する方式のコーディング方式を使用するＭＣＴＦ方式によりコーディングされたビデオストリーム復元用デコーダと互換できるということを意味する。
【００３７】
デコーディング側の時間的スケーラビリティをまず説明すると、デコーディング側は、コーディングされたフレームを受信すればまず時間的レベル３の０番フレームを復元できる。ここで、デコーディングを止めればフレームレート１／８のビデオシーケンスを得られる。時間的レベル３の０番フレームを復元してから時間的レベル２の４番フレームを復元したままでデコーディングを止めれば、フレームレート１／４のビデオシーケンスを得られる。同じ方式で、フレームレート１／２及び元のフレームレートを持つビデオシーケンスを得られる。
【００３８】
次に、本発明によるエンコーディング側の時間的スケーラビリティを説明する。エンコーディング側で時間的レベル３の０番フレームをコーディングし、コーディング過程を止めた（ＧＯＰ単位で止めることを意味する）ままで前記コーディングされた０番フレームをデコーディング側に伝達すれば、デコーディング側ではフレームレート１／８のビデオシーケンスを復元できる。エンコーディング側で時間的レベル３の０番フレームをコーディングしてから４番フレームを時間的フィルタリングしてコーディングした後、コーディング過程を止めたままで前記コーディングされた０番及び４番フレームをデコーディング側に伝達すれば、デコーディング側ではフレームレート１／４のビデオシーケンスを復元できる。同じく、時間的レベル２の２番及び６番フレームを時間的フィルタリングしてコーディングした後、コーディング過程を止めたままで前記コーディングされた０番、２番、４番、６番フレームをデコーディング側に伝達すれば、デコーディング側ではフレームレート１／２のビデオシーケンスを復元できる。すなわち、本発明によれば、リアルタイムコーディングを必要とするアプリケーションにおいて、エンコーディング側でコーディングのための演算能力が足りないか、またはその他の理由のためにＧＯＰのあらゆるフレームに対するリアルタイム演算が足りない場合にも、コーディングアルゴリズムを修正しないＣＯＤＥＣで一部フレームに対するコーディングのみを行い、それをデコーディング側に伝達するとしても、デコーディング側では、たとえ低いフレームレートを持つビデオシーケンスでも復元できる。
【００３９】
図４は、本発明の他の実施例によるスケーラブルビデオコーディング及びデコーディング過程での時間的分解過程を示す図面である。
【００４０】
本実施例は、本発明によるビデオコーディングアルゴリズムをＵＭＣＴＦ基盤のスケーラブルビデオコーディング過程に適用した例を示す。
【００４１】
図２に図示されたＵＭＣＴＦ基盤のビデオコーディング過程及びデコーディング過程を図４に図示された本実施例と比較すれば、エンコーディング側のコーディング順序が異なることが分かる。すなわち、エンコーディング側での時間的フィルタリングは、時間的レベルの高いフレームから時間的レベルの低いフレームの順に行われる。これをさらに詳細に説明すれば次の通りである。
【００４２】
まず、時間的レベルが最も高い０番フレームを時間的フィルタリングせずにコーディングする。それから、元の０番フレームを参照して４番フレームを時間的フィルタリングする。次に、時間的レベル２の２番フレームは元の０番及び４番フレームを参照して時間的フィルタリングし、６番フレームは元の４番フレームを参照して時間的フィルタリングする。２つのフレームを参照していずれかのフレームを時間的フィルタリングするということは、いわゆる、両方向予測によって前記フレームを時間的フィルタリングするということを意味する。それから、時間的レベル１の１番フレームは元の０番及び２番フレームを参照して時間的フィルタリングし、３番フレームは元の２番及び４番フレームを参照して時間的フィルタリングし、５番フレームは元の４番及び６番フレームを参照して時間的フィルタリングし、７番フレームは元の６番フレームを参照して時間的フィルタリングする。
【００４３】
デコーディング過程は、図３を通じて説明した方式と同じくコーディング過程と同じ順序で逆時間的フィルタリングしてビデオシーケンスを復元する。
【００４４】
本実施例でも、図３の実施例と同じく、デコーディング側でのみならずエンコーディング側でも時間的スケーラビリティを持つことができる。本実施例では、両方向予測に基づいた時間的フィルタリングを使用するため、本実施例によってビデオ圧縮を行う場合に図３の実施例によってビデオ圧縮を行う場合より優秀な圧縮率を持つことができる。
【００４５】
図５は、図４のコーディング過程（またはデコーダ過程）を階層的に表示した図面である。
【００４６】
図４の実施例は、さらに理解しやすく図５のように階層的に図式化できる。
【００４７】
図示されたように、各時間的レベルのあらゆるフレームはノードとして表現される。そして、参照関係は矢印で表示される。コーディング過程と関連して説明すれば、矢印が出発するノードに該当する元のフレームは、他のフレームを時間的フィルタリングするための参照フレームとなるということを意味し、矢印が到着するノードに該当するフレームは、前記矢印が出発したノードの元のフレームを参照して時間的フィルタリングされた高周波サブバンドを意味する。デコーディング過程と関連して説明すれば、矢印が出発するノードに該当する元のフレームは、他のフレームを逆時間的フィルタリングするための参照フレームとなるということを意味し、矢印が到着するノードに該当するフレームは、矢印が出発したノードの元のフレーム（復元されたフレーム）を参照して逆時間的フィルタリングされて元のフレームに復元される予定の高周波サブバンドを意味する。元のフレームという用語の意味は、エンコーディング側では時間的フィルタリングされる前のフレームを意味するが、デコーディング側ではコーディングされたフレームを逆時間的フィルタリングして復元したフレームを意味する。
【００４８】
図示されたように各時間的レベルには必要なフレームのみ位置できる。例えば、最も高い時間的レベルでは、ＧＯＰのフレームのうちのただ一つのフレームが位置することがわかる。本実施例では、０番フレームが最も高い時間的レベルを持つが、これは従来のＵＭＣＴＦとの互換を考慮したためである。もし、最高の時間的レベルを持つフレームのインデックスが０でない場合ならば、エンコーディング側及びデコーディング側の時間的フィルタリング過程の階層的構造は図５に図示された構造と異なる。本実施例のように、ＧＯＰサイズが８である場合に０番フレームを最も高い時間的レベルで時間的フィルタリングされていないＡフレームにコーディングし、４番フレームを次の時間的レベルで０番フレームの元のフレームを参照して高周波サブバンドにコーディングする。それから、２番フレームは０番及び４番の元のフレームを参照して高周波サブバンドにコーディングし、６番フレームは４番の元のフレームを使用して高周波サブバンドにコーディングする。同じく、１、３、５、７フレームを０、２、４、６番フレームを利用して高周波サブバンドにコーディングする。
【００４９】
デコーディング過程は０番フレームをまずデコーディングする。それから、復元された０番フレームを参照して４番フレームをデコーディングする。同じ方式で復元された０番及び４番フレームを参照して２番及び６番フレームをデコーディングする。最後に１、３、５、７フレームを、復元された０、２、４、６番フレームを利用してデコーディングする。
【００５０】
エンコーディング側とデコーディング側いずれも時間的レベルの高いフレームからコーディング（またはデコーディング）するので、従来のＭＣＴＦまたはＵＭＣＴＦ基盤のスケーラブルビデオコーディングアルゴリズムとは違って本実施例に基づいたスケーラブルビデオコーディングアルゴリズムは、デコーディング側で時間的スケーラビリティを持つだけでなくエンコーディング側でも時間的スケーラビリティを持つことができる。
【００５１】
従来のＵＭＣＴＦアルゴリズムの場合には、ＭＣＴＦアルゴリズムとは違って複数の参照フレームを参照してビデオシーケンスを圧縮できた。本発明でもＵＭＣＴＦのこのような特性を持っているが、複数の参照フレームを参照してビデオシーケンスをエンコーディングし、それをデコーディングしてビデオシーケンスを復元しようとする時、エンコーディング側とデコーディング側の両方で時間的スケーラビリティを維持するための条件について説明する。
【００５２】
Ｆ（ｋ）はフレームインデックスがｋであるフレームを意味し、Ｔ（ｋ）はフレームインデックスがｋであるフレームの時間的レベルを意味する。時間的スケーラビリティが成立するためには、いずれかの時間的レベルのフレームをコーディングする時、それより低い時間的レベルを持つフレームを参照してはならない。例えば、４番フレームが２番フレームを参照してはならないが、もし、参照することが許容されるならば、０番及び４番フレームでコーディング過程を止めることができなくなる（すなわち、２番フレームをコーディングして初めて４番フレームをコーディング可能になる）。フレームＦ（ｋ）が参照できる参照フレームの集合Ｒｋは数１により定められる。
【００５３】
【数１】
2008079326.tif 000003
【００５４】
ここで、ｌは参照フレームのインデックスを意味する。
【００５５】
一方、「（Ｔ（ｌ）＝Ｔ（ｋ））ａｎｄ（ｌ＜＝ｋ）」は、フレームＦ（ｋ）は時間的フィルタリング過程で自身を参照して時間的フィルタリングを行うこと（イントラモード）を意味するが、これについては後述する。
【００５６】
数１の条件によって、エンコーディング側とデコーディング側両方でスケーラビリティを維持するための条件を整理すれば次の通りである。
【００５７】
＜エンコーディング過程＞
１．ＧＯＰの最初のフレームを、他のフレームを参照しないフレームにエンコーディングする。望ましくは、時間的フィルタリングされていないフレーム（Ａフレーム）にコーディングする。
２．それから、次の時間的レベルのフレームに対してモーション推定を行い、数１による参照フレームを参照してコーディングする。同じ時間的レベルを持つ場合には、左側から右側に（フレームインデックスの小さなフレームからフレームインデックスの大きいフレーム順に）コーディング過程を行う。
３．ＧＯＰのあらゆるフレームをコーディングし終えるまで２の過程を行ってから、あらゆるフレームに対するコーディングが終わるまでその次のＧＯＰをコーディングする。
【００５８】
＜デコーディング過程＞
１．ＧＯＰの最初のフレームをデコーディングする。
２．次の時間的レベルのフレームを、既にデコーディングされたフレームのうち適当なフレームを参照してデコーディングする。同じ時間的レベルを持つ場合には、左側から右側に（フレームインデックスの小さなフレームからフレームインデックスの大きいフレーム順に）デコーディング過程を行う。
３．ＧＯＰのあらゆるフレームをデコーディングし終えるまで２の過程を行ってから、あらゆるフレームに対するデコーディングが終わるまでその次のＧＯＰをデコーディングする。
【００５９】
図６は、エンコーディング側のスケーラビリティを維持しつつコーディング過程中に参照可能なフレームの連結関係を示す図面である。図６は、数１による条件を満足させる参照可能なフレームの連結関係を示している。
【００６０】
図６で、フレームの内部に表示された文字Ａは、フレームがイントラコーディングされたこと（他のフレームを参照せず）を表示し、文字Ｈは、該当フレームが高周波サブバンドであることを表示する。高周波サブバンドは、一つまたはそれ以上のフレームを参照してコーディングされるフレームを意味する。
【００６１】
一方、図６でＧＯＰのサイズが８である場合にフレームの時間的レベルは０、４、（２、６）、（１、３、５、７）順にしたが、これは例示的なものであり、１、５、（３、７）、（０、２、４、６）の場合もエンコーディング側及びデコーディング側の時間的スケーラビリティは全然問題ない。同じく、時間的レベルの順序が２、６、（０、４）、（１、３、５、７）の場合も可能である。すなわち、エンコーディング側及びデコーディング側の時間的スケーラビリティを満足させるように時間的レベルに位置するフレームは、いかなるインデックスのフレームでも構わない。
【００６２】
図６に図示されたように、一つのフレームは多くのフレームを参照してコーディングされうるが、フレームをコーディングするために多重参照フレームを使用する時は、時間的フィルタリングのためのメモリ使用量を増大させ、プロセシング遅延時間を延長させる傾向がある。したがって、本発明の実施例では、いかなるフレームをコーディングするための参照フレームの数も両方向予測のための２つに限定し、以下の説明で各フレームをコーディングするための参照フレームの数は最大２つに限定した。また、各フレームをコーディングするための参照フレームは、参照が可能なフレームの中で時間的距離が最も近いフレームを使用した。これは、実際に大部分のビデオシーケンスにおいて、遠く離れたフレーム間より近いフレーム間の類似性がかなり大きいためである。
【００６３】
前述したが、本実施例を含む以下の説明で、一つのＧＯＰ内で最も高い時間的レベルを持つフレームは最も少ないフレームインデックスを持つフレームであると説明するが、これは例示的なものであり、最も高い時間的レベルを持つフレームが他のインデックスを持つフレームである場合もあるという点に留意せねばならない。
【００６４】
図７は、本発明の他の実施例によってコーディング効率を高めるために隣接したＧＯＰのフレームを参照した場合を示す図面である。
【００６５】
図示されたように、本発明によるビデオコーディングアルゴリズムは、ＭＣＴＦアルゴリズムとは違って複数のフレームを参照してフレームをコーディングできる。コーディングのために参照する参照フレームは必ずしもＧＯＰ内に限定されるものではない。すなわち、ビデオ圧縮効率を高めるために他のＧＯＰに属するフレームを参照してフレームをコーディングできるが、これをクロスＧＯＰ最適化とする。このようなクロスＧＯＰ最適化は従来のＵＭＣＴＦアルゴリズムの場合にも支援できるが、クロスＧＯＰ最適化が可能な理由は、ＵＭＣＴＦや本発明によるコーディングアルゴリズムはいずれも時間的フィルタリングされたＬフレーム（低周波サブバンド）の代りに時間的フィルタリングされていないＡフレームを使用する構造であるからである。
【００６６】
図６の実施例において、両方向予測で７番フレームを時間的フィルタリングする時は０番、４番、及び６番フレームの元のフレームを参照して時間的フィルタリングする。この時、コーディングされる７番フレームには０番、４番、及び６番参照フレームとの予測エラーが累積される。しかし、図７の実施例のように、７番フレームが次のＧＯＰの０番フレーム（現ＧＯＰで計算すれば８番フレーム）の元のフレームを参照するならば、このような予測エラーの累積現象は確実に減少できる。なぜなら、７番フレームは、時間的フィルタリング過程で時間的に最も近いフレームを参照するからである。さらに、参照フレームである次のＧＯＰの０番フレームは、時間的フィルタリングされていないフレーム（イントラコーディングされるフレーム）であるため、７番フレームの質は明確に改善されうる。すなわち、デコーディング側でコーディングされるフレームをデコーディングする時、クロスＧＯＰ最適化しない場合には０番フレームをデコーディングして復元し、その復元された０番フレームを参照フレームとして４番フレームを逆時間的フィルタリングして復元し、その復元された４番フレームを参照して７番フレームを逆時間的フィルタリングして復元する。この時、復元過程でのエラー（４番フレームの復元時のエラーと６番フレームの復元時のエラー及び７番フレームの復元時のエラー）が累積される。しかし、クロスＧＯＰ最適化を適用した場合に７番フレームを復元する時、既に復元された次のＧＯＰの０番フレーム（８番フレーム）を参照して復元できるが、次のＧＯＰの０番フレームを参照して７番フレームを逆時間的フィルタリングして復元するので、復元過程でのエラーは、次のＧＯＰの０番フレームから７番フレームを復元する時にのみ発生する。図７のような構造の時間的フィルタリング及び逆時間的フィルタリングでフレームに対する演算順序は、０、４、２、１、３、８（次のＧＯＰの０番）、６、５、７の順であることが望ましい。もちろん、演算順序を０、４、８（次のＧＯＰの０番）、２、６、１、３、５、７の順として次のＧＯＰの４、８、２、６、１、３の順でもあり得ると共に、前者の場合には最終遅延時間が３フレーム間隔であるが、後者の場合に最終遅延時間は７フレーム間隔となる。ここで、最終遅延時間とは、コーディング及びデコーディングの演算時間とコーディングされたデータの伝送時間を除いた、アルゴリズム自体に起因して発生する遅延時間を意味する。すなわち、最終遅延時間は、特定のフレームレートのビデオシーケンスを圧縮してデコーディング側に伝達した時、デコーディング側で切れずにビデオ映像を鑑賞可能にするために必要な時間をいう。前者の場合に、０番フレームはビデオ撮影と同時に直ちにコーディングして直ちに伝送でき、１番フレームはビデオ撮影と同時に直ちにコーディングできない。１番フレームをコーディングするためには、順序上まず４番及び２番フレームがコーディングされねばならないので、１番フレームを撮影した以後に２番、３番、４番フレームをいずれも撮影して初めて１番フレームに対するビデオコーディングが可能である。この時、３フレーム間隔の遅延時間が発生する。３番及び４番フレームは直ちにコーディングできる。同じく、後者の場合に１番フレームをコーディングするためには８番フレームが必要なので遅延時間は総７フレーム間隔となる。前者と後者の場合に撮影されたビデオシーケンス入力から復元されたビデオシーケンス出力との時間的関係は表１で整理できる。
【００６７】
【表１】
2008079326.tif 000004
【００６８】
一方、４番フレームをコーディングする時、８番ＧＯＰを参照することもできるが、この場合にも最終遅延時間は７フレーム間隔となる。なぜなら、１番フレームをコーディングするために８番フレームが必要であるからである。
【００６９】
前記の実施例は、基本的に特定の順序（大体の場合には、時間的レベルの高いフレームから低いフレームの順序）でフレームをデコーディングまたは参照できる、フレームに制限があるデコーディングアルゴリズムと互換されつつもエンコーディング側でスケーラビリティを持つコーディング及びデコーディングアルゴリズムを説明した。
【００７０】
本発明の核心的技術的思想は、従来の多様なデコーディング側と互換できつつもエンコーディング側の時間的スケーラビリティを持つことができるものである。一方、エンコーディング側でスケーラビリティを持ちつつも本発明によれば、最大遅延時間を３フレーム間隔とすることもでき、クロスＧＯＰ最適化に支援されてコーディングされた画質を改善することもできる。その他に本発明で支援できる特徴としては、非二分的フレームレートを持つビデオコーディング及びデコーディングと、イントラマクロブロック予測を利用する画質改善などがある。
【００７１】
非二分的フレームレートを持つビデオコーディング及びデコーディングの場合に、既存のＵＭＣＴＦコーディングアルゴリズムをも支援できる。すなわち、ＵＭＣＴＦ基盤のスケーラブルビデオエンコーダでは、ビデオシーケンスを圧縮するに当って近隣のフレームだけでなく離れているフレームを参照して時間的フィルタリングを行うこともできる。例えば、０〜５番フレームで構成されたＧＯＰに対するコーディングにおいて、ＵＭＣＴＦの時間的フィルタリング過程は、０番と３番フレームをＡフレームと設定し、１、２、４、５番フレームをＨフレームで時間的フィルタリングする。次いで、０番フレームと３番フレームとを比較して０番フレームはＡフレームと設定し、３番フレームはＨフレームで時間的フィルタリングを行う。本発明の場合には、ＵＭＣＴＦと同じく非二分的フレームレートを持つビデオコーディングが可能であるが、従来のＵＭＣＴＦと異なる点は、０番フレームをＡフレームにコーディングし、３番フレームを０番フレームの元のフレームを参照してＨフレームにコーディングしてから、１、２、４、５番フレームをＨフレームにコーディングすることである。
【００７２】
イントラマクロブロック予測（以下、イントラ予測という）については図８を参照して説明する。
【００７３】
図８は、順方向予測、逆方向予測、両方向（または加重値のある両方向）予測、及びイントラ予測モードを説明するための図面である。
【００７４】
図８に図示されたように、順方向予測１、逆方向予測２、両方向（または加重値のある両方向）予測３、及びイントラ予測４が支援される。従来は、順方向予測、逆方向予測、及び両方向予測モードがスケーラブルビデオコーディングで既に支援されていたが、圧縮効率を高めるために本実施例では加重値のある両方向予測及びイントラ予測モードを含む。イントラ予測を含んで速い変化があるビデオシーケンスのコーディング効率を改善させた。
【００７５】
まず、インターマクロブロック予測モードの決定について説明する。ＳＴＡＲアルゴリズムは双方向予測及びマルチプル参照フレームを許容するために、順方向予測、逆方向予測、及び双方向予測を容易に具現できる。比としてよく知られたＨＶＢＳＭアルゴリズムを使用することもあるが、本発明の実施例では固定されたブロックサイズモーション推定を使用した。Ｅ（ｋ，−１）をｋ番目の順方向予測での絶対差の和（Ｓｕｍ ｏｆ Ａｂｓｏｌｕｔｅ Ｄｉｆｆｅｒｅｎｃｅ：以下、ＳＡＤ）とし、Ｂ（ｋ，−１）を純方向予測のモーションベクトルを量子化するのに割当てられる総ビットと仮定する。同じく、Ｅ（ｋ，＋１）をｋ番目逆方向予測でのＳＡＤといい、Ｂ（ｋ，＋１）を逆方向予測のモーションベクトルを量子化するのに割当てられる総ビットとし、Ｅ（ｋ，＊）をｋ番目双方向予測でのＳＡＤとし、Ｂ（ｋ，＊）を双方向予測のモーションベクトルを量子化するのに割当てられる総ビットと仮定する。順方向、逆方向、及び双方向予測モードのためのコストは数２で説明できる。
【００７６】
【数２】
2008079326.tif 000005
【００７７】
ここで、Ｃｆ、Ｃｂ、及びＣｂｉはそれぞれ順方向予測、逆方向予測、及び双方向予測モードのためのコストを意味する。
【００７８】
λはラグランジュ係数であるが、モーションとテクスチャー（イメージ）ビット間のバランスを制御するのに使われる。スケーラブルビデオエンコーダで最終ビットレートが分からないので、λは目的アプリケーションで主に使われるビデオシーケンス及びビットレートの特性に対して最適化されねばならない。数２に定義された式により最小コストを計算することによって最も最適化されたインターマクロブロック予測モードを決定できる。
【００７９】
このうち、両方向予測は、あるブロックをコーディングする時、順方向予測での参照ブロックと逆方向予測での参照ブロックとを平均して得た仮想のブロックと、前記コーディングされるブロックとの差を前記コーディングされるブロックに記録してコーディングする。したがって、コーディングされたブロックを復元するためには、エラーに関する情報及び参照対象となるブロックを探すための２つのモーションベクトルを必要とする。
【００８０】
一方、加重値のある両方向予測は、両方向予測とは違って各参照ブロックとコーディングされるブロックとの類似度が相異なるということに基づく。すなわち、加重値のある両方向予測のために、順方向予測での参照ブロックの画素値にＰを乗算し、逆方向予測での参照ブロックの画素値に（１−Ｐ）を乗算して合せた仮想のブロックを参照ブロックとし、コーディングされるブロックをコーディングする。
【００８１】
次にイントラ予測モード決定について説明する。
【００８２】
いくつかのビデオシーケンスでは、場面は非常に速く変化する。極端な場合に、隣接フレームと全く時間的重複性を持たない一つのフレームを見つけることもある。このような問題を克服するために、ＭＣ−ＥＺＢＣ（Ｍｏｔｉｏｎ Ｃｏｍｐｅｎｓａｔｉｏｎ−Ｅｍｂｅｄｄｅｄ ＺｅｒｏＢｌｏｃｋ Ｃｏｄｉｎｇ）で具現されたコーディング方法は“適応的ＧＯＰサイズ特徴”を支援する。適応的ＧＯＰサイズ特徴は連結されていないピクセルの数が既定の基準値（全体ピクセルの３０％程度）より大きい場合に時間的フィルタリングを中断して該当フレームをＬフレームにコーディングする。このような方式を適用する時、コーディング効率は従来のＭＣＴＦ方式をそのまま適用した場合よりよくなる。しかし、これはフレーム単位で一律的に定められるため、本実施例ではさらに柔軟な方式で標準ハイブリッドエンコーダで使われたイントラマクロブロックモードの概念を導入した。一般的に、オープンループＣＯＤＥＣは予測ドリフトのために隣接のマクロブロック情報を使用できない。一方、ハイブリッドＣＯＤＥＣはマルチプルイントラ予測モードを使用できる。したがって、本実施例ではイントラ予測モードのためにＤＣ予測を使用する。このモードであるマクロブロックは自身のＹ、Ｕ、及びＶコンポーネントのためのＤＣ値によりイントラ予測される。もし、イントラ予測モードのコストが前記の最も良いインター予測モードでのコストより小さな場合ならば、イントラ予測モードを選択する。このような場合において、元来のピクセルとＤＣ値の差をコーディングし、モーションベクトルの代りに３つのＤＣ値の差をコーディングする。イントラ予測モードのコストは数３で定義できる。
【００８３】
【数３】
2008079326.tif 000006
【００８４】
ここで、Ｅ（ｋ，０）はｋ番目イントラ予測でのＳＡＤ（元来のルミネセンス値とＤＣ値との差のＳＡＤ）であり、Ｂ（ｋ，０）は３個のＤＣ値をコーディングするための総ビットである。
【００８５】
もし、Ｃｉが数３により計算された値より小さな場合ならば、イントラ予測モードにコーディングする。結論的にいえば、もし、モードマクロブロックが単に一つのＤＣ値のセットでイントラ予測モードにコーディングされた場合ならば、Ｉフレームに変更する。一方、ビデオシーケンスの間で任意の地点を見ようとする時、あるいは自動的にビデオ編集をしようとする時は、ビデオシーケンスにＩフレームの数が多い方が良いが、この場合にＩフレーム変更による方法は一つの良い方法になりうる。
【００８６】
一方、あらゆるマクロブロックがたとえイントラ予測モードにコーディングされていない場合でも、一定の比率（例えば９０％）以上がイントラ予測モードにコーディングされた場合には、Ｉフレームに転換すれば前記任意の地点を見ようとする場合や自動的にビデオ編集しようとする目的はさらに容易に達成される。
【００８７】
図９は、本発明の他の実施例による時間的フィルタリングでいろいろな予測モードを含むフレーム間連結を示す図面である。
【００８８】
Ｉ＋Ｈは、フレームがイントラ予測マクロブロック及びインター予測マクロブロックのいずれもを含んで構成されるということを意味し、Ｉは予測なしにそのフレーム自体でコーディングされたことを意味する。すなわち、Ｉフレームは、イントラ予測されたマクロブロックの比率が基準となるいずれかの値より大きい場合、予測なしにそのフレーム自体でコーディングするように転換されたフレームを意味する。一方、ＧＯＰの開始フレーム（最も高い時間的レベルを持つフレーム）でイントラ予測が使われることもあるが、本実施例はこれを使用しなかった。これは元来のフレームに基づいたウェーブレット変換ほど効率的でないからである。
【００８９】
図１０及び図１１はそれぞれ、変化の激しいビデオシーケンスと、変化がほとんどないビデオシーケンスとで色々なモードで予測した場合の例を示す。％は予測モードの比率を意味する。Ｉはイントラ予測の比率（ただし、ＧＯＰの最初のフレームは予測を使用せず）、ＢＩは双方向予測の比率、Ｆは順方向予測の比率、Ｂは逆方向予測の比率を意味する。
【００９０】
図１０を説明すれば、１番フレームは０番フレームとほぼ類似しているためにＦの比率が７８％で圧倒的であることが分かり、２番フレームは０番と４番との中間程度（すなわち、０番を明るくしたイメージ）に近いのでＢＩが８７％で圧倒的であることが分かる。４番フレームは他のフレームと完全に異なるのでＩに１００％コーディングされ、５番フレームは４番とは全く違って６番と類似しているのでＢが９４％であることが分かる。
図１１を説明すれば、全体的にあらゆるフレームが類似していることが分かるが、実際にほぼ類似したフレームの場合にはＢＩが最も優れた性能を示す。したがって、図１１では全体的にＢＩの比率が高いということが分かる。
【００９１】
図１２は、本発明の一実施例によるスケーラブルビデオエンコーダの構成を示す機能性ブロック図である。
【００９２】
スケーラブルビデオエンコーダは、ビデオシーケンスを構成する複数のフレームを入力されてＧＯＰ単位で圧縮してビットストリームを生成する。そのために、スケーラブルビデオエンコーダは、複数のフレームの時間的重複を除去する時間的変換部１０と、空間的重複を除去する空間的変換部２０と、時間的及び空間的重複が除去されて生成された変換係数を量子化する量子化部３０と、量子化された変換係数及びその他の情報を含んでビットストリームを生成するビットストリーム生成部４０と、を含む。
【００９３】
時間的変換部１０は、フレーム間動きを補償して時間的フィルタリングを行うために、動き推定部１２と時間的フィルタリング部１４とを含む。
【００９４】
まず動き推定部１２は、時間的フィルタリング過程実行中のフレームの各マクロブロックと、それに対応する参照フレームの各マクロブロックとの動きベクトルを求める。動きベクトルに関する情報は時間的フィルタリング部１４に提供され、時間的フィルタリング部１４は、動きベクトルに関する情報を利用して複数のフレームに対する時間的フィルタリングを行う。本発明で時間的フィルタリングは、時間的レベルの高いフレームから時間的レベルの低いフレームの順に進む。同じ時間的レベルのフレームである場合、フレームインデックスの小さなフレーム（時間的に早いフレーム）からフレームインデックスの大きいフレームの順に進む。ＧＯＰを構成するフレームのうち最も高い時間的レベルを持つフレームはフレームインデックスが最も小さなフレームを使用するが、これは例示的なものであり、ＧＯＰ内の他のフレームを最も時間的レベルの高いフレームとして選択することもできる。
【００９５】
時間的重複が除去されたフレーム、すなわち、時間的フィルタリングされたフレームは空間的変換部２０を経て空間的重複が除去される。空間的変換部２０は、空間的変換を利用して時間的フィルタリングされたフレームの空間的重複を除去するが、本実施例ではウェーブレット変換を使用する。現在知られたウェーブレット変換は、一つのフレームを４等分し、全体イメージとほぼ類似した１／４面積を持つ縮少されたイメージ（Ｌイメージ）で前記フレームの１個の４分面を代替し、残りの３個の４分面はＬイメージを通じて全体イメージを復元可能にする情報（Ｈイメージ）で代替する。同じ方式で、Ｌフレームはまた１／４面積を持つＬＬイメージ及びＬイメージを復元するための情報で代替できる。このようなウェーブレット方式を使用するイメージ圧縮法は、ＪＰＥＧ２０００という圧縮方式に適用されている。ウェーブレット変換を通じてフレームの空間的重複を除去でき、またウェーブレット変換は、ＤＣＴ変換とは違って元のイメージ情報が変換されたイメージに縮少された形に保存されているので、縮少されたイメージを利用して空間的スケーラビリティを持つビデオコーディングを可能にする。しかし、ウェーブレット変換方式は例示的なものであり、空間的スケーラビリティを達成しなくてもよい場合ならば、既存のＭＰＥＧ−２のような動映像圧縮方式に広く使われるＤＣＴ方法を使用することもできる。
【００９６】
時間的フィルタリングされたフレームは空間的変換を経て変換係数となるが、これは量子化部３０に伝達されて量子化される。量子化部３０は、実数型係数である変換係数を量子化して整数型変換係数に変える。すなわち、量子化を通じてイメージデータを表現するためのビット量を減らすことができるが、本実施例ではエンベデッド量子化方式を通じて変換係数に対する量子化過程を行う。エンベデッド量子化方式を通じて変換係数に対する量子化を行うことによって量子化に必要な情報量を減らすことができ、かつＳＮＲスケーラビリティを得られる。エンベデッドという言葉は、コーディングされたビットストリームが量子化を含むという意味を指称するのに使われる。言い換えれば、圧縮されたデータは視覚的に重要な順序で生成されるか、または視覚的重要度で表示される。実際量子化（または視覚的重要度）レベルは、デコーダや伝送チャンネルで機能できる。もし、伝送帯域幅、保存容量、ディスプレイリソースが許諾されるならば、イメージは損失なしに復元できる。しかし、そうでない場合ならば、イメージは最も制限されたリソースに要求される程度のみ量子化される。現在公知のエンベデッド量子化アルゴリズムは、ＥＺＷ、ＳＰＩＨＴ、ＥＺＢＣ、ＥＢＣＯＴなどがあり、本実施例では公知のアルゴリズムのうちいかなるアルゴリズムを使用しても構わない。
【００９７】
ビットストリーム生成部４０は、コーディングされたイメージ情報と、動き推定部１２で得た動きベクトルに関する情報（動きベクトルをコーディングして生じたビット）などを含み、ヘッダを付けてビットストリームを生成する。ビットストリームに含められる情報には、一つのＧＯＰ内でコーディングされたフレームの数（またはコーディングされた時間的レベル）などがある。これは、エンコーディング側で時間的スケーラビリティを持つため、デコーディング側でいくつかのＧＯＰを構成するフレームが何個かを知っていなければならないからである。
【００９８】
一方、空間的重複を除去する時にウェーブレット変換を使用する場合、元の変換されたフレームに元のイメージに対する形態が残っているが、これにより、ＤＣＴ基盤の動映像コーディング方法とは違って空間的変換を経て時間的変換をした後に量子化してビットストリームを生成することもある。これについての他の実施例は図１３を通じて説明する。
【００９９】
図１３は、本発明の他の実施例によるスケーラブルビデオエンコーダの構成を示す機能性ブロック図である。
【０１００】
本実施例によるスケーラブルビデオエンコーダは、ビデオシーケンスを構成する複数のフレームに対する空間的重複を除去する空間的変換部６０と、時間的重複を除去する時間的変換部７０と、フレームに対する空間的及び時間的重複を除去して得た変換係数を量子化する量子化部８０と、コーディングされたイメージ情報及びその他の情報を含んでビットストリームを生成するビットストリーム生成部９０と、を含む。
【０１０１】
変換係数という用語と関連して、従来には動映像圧縮で時間的フィルタリングを行った後に空間的変換をする方式が主に利用されたため、変換係数という用語は、主に空間的変換により生成される値を示す。すなわち、変換係数は、ＤＣＴ変換により生成された場合にＤＣＴ係数という用語として使われることもあり、ウェーブレット変換により生成された場合にウェーブレット係数という用語として使われることもある。本発明で変換係数は、フレームに対する空間的及び時間的重複を除去して生成された値であり、量子化（エンベデッド量子化）される前の値を意味する。すなわち、図１２の実施例では、従来と同じく変換係数は、空間的変換を経て生成された係数を意味するが、図１３の実施例で、変換係数は、時間的変換を経て生成された係数を意味することもあるという点に留意せねばならない。
【０１０２】
まず空間的変換部６０は、ビデオシーケンスを構成する複数のフレームの空間的重複を除去する。この場合に空間的変換部は、ウェーブレット変換を使用してフレームの空間的重複を除去する。空間的重複が除去されたフレーム、すなわち、空間的変換されたフレームは時間的変換部７０に伝達される。
【０１０３】
時間的変換部７０は、空間的変換されたフレームに対する時間的重複を除去するが、そのために動き推定部７２と時間的フィルタリング部７４とを含む。本実施例で、時間的変換部７０は図１２の実施例と同じ方式で動作するが、異なる点は、図１２の実施例とは違って入力されるフレームは空間的変換されたフレームであるという点である。また、時間的変換部７０は、空間的変換されたフレームに対して時間的重複を除去した後に量子化のための変換係数を作るという点も異なる点であるといえる。
【０１０４】
量子化部８０は、変換係数を量子化して量子化されたイメージ情報（コーディングされたイメージ情報）を作り、それをビットストリーム生成部９０に提供する。量子化は、図１２の実施例と同じくエンベデッド量子化して最終的に生成されるビットストリームに対するＳＮＲスケーラビリティを得る。
【０１０５】
ビットストリーム生成部９０は、コーディングされたイメージ情報及び動きベクトルに関する情報などを含み、ヘッダを付けてビットストリームを生成する。この時にも、図１２の実施例と同じく一つのＧＯＰ内にコーディングされたフレームの数（またはコーディングされた時間的レベル）に関する情報を含めることができる。
【０１０６】
一方、図１２のビットストリーム生成部４０及び図１３のビットストリーム生成部９０は、図１２の実施例によってビデオシーケンスをコーディングしたか、または図１３の実施例によってビデオシーケンスをコーディングしたかをデコーディング側で分かるように、ビットストリームに時間的重複及び空間的重複を除去した順序に関する情報（以下、重複除去順序という）を含むことができる。重複除去順序をビットストリームに含む方式はいろいろな方式が可能である。いずれか一つの方式を基本として定め、他の方式は別途にビットストリームに表示することもできる。例えば、図１２の方式が基本的な方式である場合に、図１２のスケーラブルビデオエンコーダで生成されたビットストリームには重複除去順序に関する情報を表示せず、図１３のスケーラブルビデオエンコーダにより生成されたビットストリームの場合にのみ重複除去順序を含めることができる。一方、重複除去順序に関する情報を図１２の方式による場合や図１３の方式による場合のいずれにも表示できる。
【０１０７】
図１２の実施例によるスケーラブルビデオエンコーダ及び、図１３の実施例によるスケーラブルビデオエンコーダの機能をいずれも持つスケーラブルビデオエンコーダを具現し、ビデオシーケンスを図１２の方式及び図１３の方式でコーディングし、かつ比較して高効率のコーディングによるビットストリームを生成することもある。このような場合には、ビットストリームに重複除去順序を含めねばならない。この時、重複除去順序はビデオシーケンス単位で決定することもあり、ＧＯＰ単位で決定することもある。前者の場合にはビデオシーケンスヘッダに重複除去順序を含まねばならず、後者の場合にはＧＯＰヘッダに重複除去順序を含まねばならない。
【０１０８】
前記図１２及び図１３の実施例はいずれもハードウェアで具現できるが、ソフトウェアモジュールとそれを実行できるコンピュータ能力を持つ装置でも具現できることに留意せねばならない。
【０１０９】
図１４は、本発明の一実施例によるスケーラブルビデオデコーダの構成を示す機能性ブロック図である。
【０１１０】
スケーラブルビデオデコーダは、入力されるビットストリームを解釈してビットストリームに含まれた各構成部分を抽出するビットストリーム解釈部１００と、図１２の実施例によってコーディングされたイメージを復元する第１デコーディング部２００と、図１３の実施例によってコーディングされたイメージを復元する第２デコーディング部３００と、を含む。
【０１１１】
前記第１及び第２デコーディング部はハードウェアで具現されることもあり、ソフトウェアモジュールで具現されることもある。また、ハードウェアあるいはソフトウェアモジュールで具現される時は図４のように別途に具現されることもあるが、統合されて具現されることもある。統合されて具現された場合に、第１及び第２デコーディング部は、ビットストリーム解釈部１００で得た重複除去順序によって逆重複除去過程の順序のみ異ならせる。
【０１１２】
一方、スケーラブルビデオデコーダは、図１４のように相異なる重複除去順序によってコーディングされたイメージをいずれも復元可能に具現されることもあるが、いずれか一つの重複除去順序によってコーディングされたイメージのみを復元可能に具現されることもあることに留意せねばならない。
【０１１３】
まずビットストリーム解釈部１００は、入力されたビットストリームを解釈してコーディングされたイメージ情報（コーディングされたフレーム）を抽出し、重複除去順序を決定する。重複除去順序が第１デコーディング部２００に該当する場合ならば、第１デコーディング部２００を通じてビデオシーケンスを復元し、重複除去順序が第２デコーディング部３００に該当する場合ならば、第２デコーディング部３００を通じてビデオシーケンスを復元する。また、ビットストリーム解釈部１００は、ビットストリームを解釈して時間的重複させる時、フレームの時間的フィルタリングを行う順序である限定された時間的レベル順序が分かるが、本実施例では、コーディングモードを決定する遅延時間制御パラメータ値を通じて限定された時間的レベル順序が分かる。コーディングされたイメージ情報からビデオシーケンスを復元する過程については、重複除去順序が第１デコーディング部２００に該当する場合をまず説明し、次いで、重複除去順序が第２デコーディング部３００に該当する場合を説明する。
【０１１４】
第１デコーディング部２００に入力されたコーディングされたフレームに関する情報は、逆量子化部２１０により逆量子化されて変換係数に変わる。変換係数は、逆空間的変換部２２０により逆空間的変換される。逆空間的変換は、コーディングされたフレームの空間的変換と関連するが、空間的変換方式がウェーブレット変換である場合に逆空間的変換は逆ウェーブレット変換を行い、空間的変換方式がＤＣＴ変換である場合には逆ＤＣＴ変換を行う。逆空間的変換を経て変換係数は時間的フィルタリングされたＩフレーム及びＨフレームに変換されるが、逆時間的変換部２３０は、限定された時間的レベル順に逆時間的変換してビデオシーケンスを構成するフレームを復元する。限定された時間的レベル順序は、ビットストリーム解釈部１００から入力されたビットストリームを解釈して分かる。逆時間的変換のために、逆時間的フィルタリング部２３０は、ビットストリームを解釈して得たモーションベクトルを利用する。
【０１１５】
第２デコーディング部３００に入力された、コーディングされたフレームに関する情報は、逆量子化部３１０により逆量子化されて変換係数に変わる。変換係数は、逆時間的変換部３２０により逆時間的変換される。逆時間的変換のためのモーションベクトル及び限定された時間的レベル順序は、ビットストリーム解釈部１００がビットストリームを解釈して得た情報から得られる。逆時間的変換を経たコーディングされたイメージ情報は、空間的変換を経たフレーム状態に変換される。空間的変換を経た状態のフレームは、逆空間的変換部３３０で逆空間的変換されてビデオシーケンスを構成するフレームに復元される。逆空間的変換部３３０で使われる逆空間的変換は逆ウェーブレット変換方式である。
【０１１６】
本発明が属する技術分野で当業者ならば本発明がその技術的思想や必須特徴を変更せずとも他の具体的な形に実施されうるということが理解できるであろう。したがって、前述した実施例はあらゆる面で例示的なものであり、限定的なものと理解してはならない。本発明の範囲は前述した詳細な説明よりは特許請求の範囲によって現れ、特許請求の範囲の意味及び範囲、そしてその均等概念から導かれるあらゆる変更または変形された形が本発明の範囲に含まれると解釈せねばならない。
【産業上の利用可能性】
【０１１７】
本発明は、スケーラブルビデオコーディング及びデコーディングのための装置に適用できる。
【図面の簡単な説明】
【０１１８】
【図１】従来のＭＣＴＦ方式のスケーラブルビデオコーディング及びデコーディング過程での時間的分解過程のフローを示す図面である。
【図２】従来のＵＭＣＴＦ方式のスケーラブルビデオコーディング及びデコーディング過程での時間的分解過程のフローを示す図面である。
【図３】本発明の一実施例によるスケーラブルビデオコーディング及びデコーディング過程での時間的分解過程を示す図面である。
【図４】本発明の他の実施例によるスケーラブルビデオコーディング及びデコーディング過程での時間的分解過程を示す図面である。
【図５】図４のコーディング過程（またはデコーデコーディング過程）を階層的に表示した図面である。
【図６】エンコーディング側のスケーラビリティを維持しつつコーディング過程中に参照可能なフレームの連結関係を示す図面である。
【図７】本発明の他の実施例によってコーディング効率を高めるために隣接したＧＯＰのフレームを参照した場合を示す図面である。
【図８】本発明の他の実施例によってコーディング効率を高めるために使用する複数の参照モードを説明するための図面である。
【図９】複数の参照モードを使用する場合のフレームの階層的構造及び種類を示す図面である。
【図１０】変化の激しいビデオシーケンスで図９の実施例によってビデオコーディングした場合の例を示す図面である。
【図１１】変化の少ないビデオシーケンスで図９の実施例によってビデオコーディングした場合の例を示す図面である。
【図１２】本発明の一実施例によるスケーラブルビデオエンコーダの構成を示す機能性ブロック図である。
【図１３】本発明の他の実施例によるスケーラブルビデオエンコーダの構成を示す機能性ブロック図である。
【図１４】本発明の一実施例によるスケーラブルビデオデコーダの構成を示す機能性ブロック図である。
【符号の説明】
【０１１９】
１０    時間的変換部
１２    動き推定部
１４    時間的フィルタリング部
２０    空間的変換部
３０    量子化部
４０    ビットストリーム生成部
６０    空間的変換部
７０    時間的変換部
７２    動き推定部
７４    時間的フィルタリング部
８０    量子化部
９０    ビットストリーム生成部
１００    ビットストリーム解釈部
２００    第１デコーディング部
２１０    逆量子化部
２２０    逆空間的変換部
２３０    逆時間的変換部
３００    第２デコーディング部
３１０    逆量子化部
３２０    逆時間的変換部
３３０    逆空間的変換部
【図１４】
2008079326.tif 000007
【図１】
2008079326.tif 000008
【図２】
2008079326.tif 000009
【図３】
2008079326.tif 000010
【図４】
2008079326.tif 000011
【図５】
2008079326.tif 000012
【図６】
2008079326.tif 000013
【図７】
2008079326.tif 000014
【図８】
2008079326.tif 000015
【図９】
2008079326.tif 000016
【図１０】
2008079326.tif 000017
【図１１】
2008079326.tif 000018
【図１２】
2008079326.tif 000019
【図１３】
2008079326.tif 000020