JP5659160B2 - 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法 - Google Patents

動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法 Download PDF

Info

Publication number
JP5659160B2
JP5659160B2 JP2011534438A JP2011534438A JP5659160B2 JP 5659160 B2 JP5659160 B2 JP 5659160B2 JP 2011534438 A JP2011534438 A JP 2011534438A JP 2011534438 A JP2011534438 A JP 2011534438A JP 5659160 B2 JP5659160 B2 JP 5659160B2
Authority
JP
Japan
Prior art keywords
motion compensation
filter coefficient
unit
compensation filter
decoding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2011534438A
Other languages
English (en)
Other versions
JPWO2011111341A1 (ja
Inventor
博史 天野
博史 天野
田中 健
健 田中
橋本 隆
隆 橋本
宙輝 林
宙輝 林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2011534438A priority Critical patent/JP5659160B2/ja
Publication of JPWO2011111341A1 publication Critical patent/JPWO2011111341A1/ja
Application granted granted Critical
Publication of JP5659160B2 publication Critical patent/JP5659160B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法に関し、特に、動画像符号化ストリームを復号するために可変係数動き補償画面間予測で使用するフィルタ係数に関する動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法に関するものである。
近年、広く利用されている動画像圧縮技術の標準規格がある。例えば、ITU−T(国際電気通信連合 電気通信標準化部門)のH.261及びH.263、ISO/IEC(国際標準化機構 国際電気標準会議)のMPEG(Moving Picture Experts Group)−1、MPEG2及びMPEG4など、並びに、ITU−TとMPEGの合同であるJVT(JointVideoTeam)のH.264(MPEG4−AVC)などがある。更に、次世代の動画像圧縮技術がITU−TやISO/IECなどで検討されている。
一般に、動画像圧縮技術の重要な要素として、動画像を構成する連続した複数の画面の持つ時間方向の冗長性を削減することで情報量の圧縮を行う動き補償画面間予測がある。ここで、動き補償画面間予測とは、符号化対象画面内のマクロブロック、または、サブマクロブロック(以下、「マクロブロック等」ともいう)が、符号化対象画面の前方または後方に位置する参照画面内のどの方向にどの程度動いたかを検出して、予測画像の作成を行い、得られた予測画像と符号化対象画面との差分値に対して符号化を行う手法である。なお、符号化対象画面内のマクロブロック等が、符号化対象画面の前方または後方に位置する参照画面内のどの方向にどの程度動いたかを示す情報を動きベクトルという。また、その際、参照される画面を参照画面と呼ぶ。
動き補償画面間予測を用いて符号化された動画像符号化ストリームの復号に際しては、復号した復号画面をフレームメモリに保持し、後の復号画面の復号において参照画面として利用する。
また、動き補償画面間予測で符号化されたマクロブロックの予測画像生成に際しては、以下のとおりである。まず、動画像符号化ストリーム内の動きベクトルを復号し、動きベクトルが指し示す参照画素領域を参照画面が保持されているフレームメモリから取得し、必要に応じて参照画素領域に対しフィルタリング処理を行うことで予測画像を生成する。そして、整数画素以下の予測画像を生成するために、整数画素に対しフィルタリング処理を行う。
例えば、H.264では規格で定義された固定のフィルタ係数を用いた6タップのFIRフィルタ(フィルタ係数:1、−5、20、20、−5、1)を用いて1/2画素精度の予測画像を生成し、次に、規格で定義された固定のフィルタ係数を用いた2タップの平均値フィルタ(フィルタ係数:1/2、1/2)により1/4画素精度の予測画像を生成する。このとき、整数画素以下の予測画像を生成するために利用するフィルタ係数は、画像の特性によらず常に同じ値(固定値)が使用される。
それに対して、より良い符号化効率を実現するために、整数画素以下の予測画像を生成する際のフィルタリングに使用するフィルタ係数を画像の特性などに応じて適応的に変化させる動き補償技術(以下、「可変係数動き補償」ともいう)が提案されている(例えば、非特許文献1、2及び3)。この可変係数動き補償は、ITU−TやISO/IECなどで次世代の動画像圧縮技術、具体的には次世代の動き補償画面間予測技術、として提案されている。
例えば、非特許文献1には、整数画素以下の予測画像を生成するために利用するフィルタ係数を、従来の固定値ではなく、画像の特性などに応じて適応的に変化させる技術について提案されている。また、例えば、非特許文献2には、動きベクトルの小数部の値毎に、符号化ストリームで定義された異なるフィルタ係数を使用して予測画像を生成する際にフィルタリング処理を実施する技術が提案されている。また、例えば、非特許文献3には、同一ピクチャ内であっても、場所によって最適なフィルタ係数が異なることに注目して、マクロブロック単位で動き補償画面間予測のフィルタリングに利用するフィルタ係数を切り替える技術が提案されている。
特開2005−354673号公報
Thomas Wedi著「ADAPTIVE INTERPOLATION FILTER FOR MOTION COMPENSATED HYBRID VIDEO CODING」 Proc. Picture Coding Symposium(PCS2001)、 Seoul、 Korea、 April 2001 Y.Vatis et al著「Two dimensional no−separatable Apdaptive Wiener Interpolation Filter for H.264/AVC」 ITU − Telecommunications Standardization Sector STUDY GROUP 16 Question 6 Video Coding Experts Group(VCEG) document VCEG−Z17、 16 Apr 2005 Kai Zhang et al著「Single−Pass Encoding Using Multiple Adaptive Interpolation Filters」 ITU − Telecommunications Standardization Sector STUDY GROUP 16 Question 6 Video Coding Experts Group(VCEG) document VCEG−AK26、 15−18 Apr 2009
しかしながら、次世代の動画像圧縮技術に提案されている動き補償画面間予測では、非常に多くのフィルタリング係数候補の中から、フィルタリング係数を頻繁に選択し、予測画像を生成するフィルタリング処理に利用することになる。そのため、フィルタリング係数を保持するメモリのメモリ容量やメモリ帯域、メモリアクセスレイテンシは一般的に極めて大きくなると予想される。
ところで、動き補償画面間予測を用いて符号化された動画像符号化ストリームの復号すなわち動き補償を伴う復号において、復号画面をフレームメモリへ格納すること、及び、フレームメモリから参照画素領域を読み出すことが必要である。そのため、次世代の動画像圧縮技術に提案されている動き補償画面間予測を用いた場合、復号画面の格納や参照画素領域の読み出しにより、及び、その表示などのアクセスにより、フレームメモリのメモリ帯域及びメモリアクセスレイテンシも一般的に極めて大きくなると予想される。
それに対して、フレームメモリのメモリ容量、メモリ帯域またはメモリアクセスレイテンシを低減する方法として、これまでに様々な技術が提案されている(例えば特許文献1)。例えば、特許文献1には、動き補償画面間予測を行う場合に、フレームメモリから参照画素領域を複数分局所メモリへまとめて転送した方が効率的なときには、参照画素領域を局所メモリへ一括転送する。それによって複数のブロック間で重複している参照領域をブロック処理ごとに重複して転送する必要がなくなるため、フレームメモリへのアクセス数を減少させることができる。このようにしてフレームメモリのメモリ帯域、メモリアクセスレイテンシ削減及び処理サイクルの削減が実現できる。
しかしながら、特許文献1では、参照画像を格納するフレームメモリのメモリ帯域及びメモリアクセスレイテンシ削減を実現する構成が開示されているに過ぎない。言い換えると、次世代の動画像圧縮技術に提案されている可変係数動き補償画面間予測で使用するフィルタ係数のメモリアクセスについての記載(開示)はない。そのため、特許文献1に開示される構成では、可変係数動き補償画面間予測を用いた場合のフィルタ係数のメモリ帯域及びメモリアクセスレイテンシの低減はできない。
そこで、本発明は、上述の事情を鑑みてなされたもので、可変係数動き補償画面間予測を行う際に使用する動き補償フィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法を提供することを目的とする。
上記従来の課題を解決するために、本発明の動画像復号装置は、動画像が動き補償を用いて符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号装置であって、前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号部と、前記復号部により復号された前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数を保持するためのメモリと、前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、前記フィルタ係数記憶部に保持された動き補償フィルタ係数を用いて動き補償を行う動き補償部と、前記復号部により復号された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に、前記一部の動き補償フィルタ係数を転送する転送制御部とを備える。
本構成によって、可変係数動き補償画面間予測を行う際に使用する動き補償フィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像復号装置を実現することができる。
また、上記従来の課題を解決するために、本発明の動画像符号化装置は、符号化対象画像と参照画像とを用いて、動き補償を伴う符号化である動き補償符号化を行う動画像符号化装置であって、前記動き補償符号化に利用される複数の動き補償フィルタ係数を生成する生成部と、前記生成部より生成された複数の動き補償フィルタ係数を保持するためのメモリと、前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、前記フィルタ係数記憶部に保持されている前記一部の動き補償フィルタ係数を用いて前記符号化対象画像と前記参照画像とから前記動き補償を行って予測画像を生成する動き検出部と、前記生成部により生成された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する転送制御部とを備える。
本構成によって、可変係数動き補償画面間予測を行う際に使用する動き補償フィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像符号化装置を実現することができる。
なお、本発明は、装置として実現するだけでなく、このような装置が備える処理手段を備える集積回路として実現したり、その装置を構成する処理手段をステップとする方法として実現したりすることもできる。
本発明によれば、可変係数動き補償画面間予測を行う際に使用するフィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法を実現することができる。
図1は、本発明の実施の形態1における復号装置の構成を示すブロック図である。 図2Aは、動画像圧縮技術の標準規格に準じて符号化された符号化ストリームの概要を示す図である。 図2Bは、動画像圧縮技術の標準規格に準じて符号化された符号化ストリームの概要を示す図である。 図2Cは、本発明の符号化ストリームの一例を示す図である。 図3は、フィルタ係数記憶状態管理テーブルが保持する情報の一例である。 図4は、本発明の実施の形態1における復号装置の復号処理動作を示すフローチャートである。 図5は、本発明の実施の形態1における復号装置の最小構成を示すブロック図である。 図6は、本発明の実施の形態2における復号装置の構成を示すブロック図である。 図7Aは、本発明のフィルタ係数参照履歴管理テーブルが保持する情報の一例である。 図7Bは、本発明のフィルタ係数参照履歴管理テーブルが保持する情報の一例である。 図8は、本発明の実施の形態2における復号装置の復号処理動作を示すフローチャートである。 図9は、本発明の実施の形態3における復号装置の構成を示すブロック図である。 図10は、フィルタ係数統計情報管理テーブルが保持する情報の一例である。 図11は、フィルタ係数統計情報管理テーブルが保持する情報の一例である。 図12Aは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。 図12Bは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。 図13Aは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。 図13Bは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。 図14は、本発明の実施の形態3における復号装置の復号処理動作を示すフローチャートである。 図15は、本発明の実施の形態3における復号装置の最小構成を示すブロック図である。 図16は、本発明の実施の形態4における復号装置の構成を示すブロック図である。 図17は、本発明の実施の形態4における復号装置の復号処理動作を示すフローチャートである。 図18は、本発明の実施の形態5における符号化装置の構成を示すブロック図である。 図19は、フィルタ係数記憶状態管理テーブルが保持する情報の一例である。 図20は、動き検出部が、動き補償フィルタ係数IDを決定する方法を説明するための図である。 図21は、本発明の実施の形態5における符号化装置の符号化処理動作を示すフローチャートである。 図22は、本発明の実施の形態6における符号化装置の構成を示すブロック図である。 図23は、本発明の実施の形態6における符号化装置の符号化処理動作を示すフローチャートである。 図24は、本発明の実施の形態7における符号化装置の構成を示すブロック図である。 図25は、本発明の実施の形態7における符号化装置の構成を示すフローチャートである。 図26は、コンテンツ配信サービスを実現するコンテンツ供給システムの全体構成図である。 図27は、デジタル放送用システムの全体構成図である。 図28は、テレビの構成例を示すブロック図である。 図29は、光ディスクである記録メディアに情報の読み書きを行う情報再生/記録部の構成例を示すブロック図である。 図30は、光ディスクである記録メディアの構造例を示す図である。 図31は、各実施の形態の動画像符号化方法及び動画像復号方法を実現する集積回路の構成例を示すブロック図である。 図32は、集積回路で実現される各実施の形態の動画像符号化処理を示すブロック図である。 図33は、集積回路で実現される各実施の形態の動画像復号処理を示すブロック図である。
以下、本発明の実施の形態について、図面を参照しながら説明する。
(実施の形態1)
図1は、本発明の実施の形態1における復号装置の構成図である。図2A及び図2Bは、動画像圧縮技術の標準規格に準じて符号化された符号化ストリームの概要を示す図である。図2Cは、本発明の符号化ストリームの一例を示す図である。図3は、フィルタ係数記憶状態管理テーブルが保持する情報の一例である。
図1に示す復号装置100は、動画像が動き補償を用いて符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号装置であって、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109を備える。
復号部101は、符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を少なくとも復号する。具体的には、復号部101は、動画像圧縮技術の標準規格に準じて符号化されたストリームの復号を行い、少なくともヘッダ情報と予測誤差信号とを出力する機能を有する。
ここで、動画像圧縮技術の標準規格に準じて符号化されたストリームについて、図2A及び図2Bを用いて説明する。図2Aに示すように、符号化ストリームにおいて、一連の画像(動画像)は階層的な構成を有している。例えば、複数のピクチャを1まとまりにしたシーケンス(若しくは、GOP(Group Of Pictures)という)がある。シーケンスを構成する各ピクチャはスライスに分割され、さらに16x16画素からなるマクロブロックに分割された構成を有する。なお、ピクチャをスライスに分割しない場合もある。そして、復号装置100は、スライスまたはマクロブロックを単位として復号動作を行う。
また、符号化ストリームでは、図2Bに示すように、これらを階層的に符号化されており、シーケンスを制御するシーケンスヘッダ、ピクチャを制御するピクチャヘッダ、スライスを制御するスライスヘッダ、マクロブロックデータなどから構成されている。マクロブロックデータは、さらに、マクロブロック種別、面内予測(イントラ予測)モード、動きベクトル情報、量子化パラメータなどの符号化情報及び各画素データに対応する係数情報に分けられる。なお、H.264規格では、シーケンスヘッダをSPS(Sequence Parameter Set)、ピクチャヘッダをPPS(Picture Parameter Set)と呼んでいる。
例えば、図2Cに示すような構造でもよい。すなわち、GOP若しくはシーケンス中のそれぞれのピクチャのヘッダ(ピクチャヘッダ)に、そのピクチャ中で動き補償フィルタ係数と復号するスライスまたはマクロブロックを動き補償する際にどの動き補償フィルタ係数を用いるかを特定する(示す)情報(以下、「動き補償フィルタ係数ID」ともいう)とが全て含まれているとする。そして、ピクチャ中のスライスへッダでは、動き補償フィルタ係数IDのみが含まれているとする。なお、動き補償フィルタ係数IDは、本発明における特定情報に相当する。
なお、動き補償フィルタ係数と動き補償フィルタ係数IDとはピクチャ単位ではなく、GOP若しくはシーケンス単位でもよい。また、スライス単位で動き補償フィルタ係数と動き補償フィルタ係数IDとを含むとし、マクロブロック単位でそのマクロブロックに用いらる動き補償フィルタ係数IDを含むとしてもよい。つまり、上述したどの組合せを単位としてもよいし、別の組合せを単位としてもよい。
フィルタ係数転送制御部102は、本発明の転送制御部に相当し、復号部101により復号された複数の動き補償フィルタ係数をメモリ109に書き出し、フィルタ係数記憶部103が動き補償処理に必要な動き補償フィルタ係数を保持していない場合のみ、メモリ109からフィルタ係数記憶部103に、必要な動き補償フィルタ係数を転送する。具体的には、フィルタ係数転送制御部102は、符号化ストリーム中に定義され、動き補償処理に用いるフィルタ係数すなわち動き補償フィルタ係数をメモリ109に書き込む機能を有する。また、フィルタ係数転送制御部102は、復号部101が復号する際の動き補償にどの動き補償フィルタ係数を用いるかを示す情報すなわち、動き補償フィルタ係数IDを元に、フィルタ係数記憶状態管理テーブル104の情報を参照する機能を有する。そして、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104の情報により、動き補償フィルタ係数IDが示す動き補償フィルタ係数がフィルタ係数記憶部103に保持されているかを確認する。
例えば、フィルタ係数転送制御部102は、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部103に保持されていないことを確認した場合、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部103に書き込む(転送する)。一方、フィルタ係数転送制御部102は、動き補償フィルタ係数IDが示す動き補償フィルタ係数がフィルタ係数記憶部103に保持(記憶)されていることを確認した場合は、動き補償フィルタ係数をメモリ109から読み出さない(転送しない)。
なお、フィルタ係数転送制御部102は、動き補償フィルタ係数をメモリ109に書き込む命令のみを復号部101に行い、復号部101が動き補償フィルタ係数をメモリ109に書き込むとしてもよい。同様に、フィルタ係数転送制御部102は、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す命令のみをフィルタ係数記憶部103に行い、フィルタ係数記憶部103がメモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出し、保持するとしてもよい。
フィルタ係数記憶部103は、メモリ109に保持されている複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのものである。具体的には、フィルタ係数記憶部103は、メモリ109から転送された動き補償フィルタ係数を少なくとも2種類以上保持する機能と、動き補償フィルタ係数IDが示す動き補償フィルタ係数を動き補償部107に設定する機能とを有する。
フィルタ係数記憶状態管理テーブル104は、本発明の記憶状態管理部に相当し、動き補償フィルタ係数IDによって特定された動き補償フィルタ係数をフィルタ係数記憶部103が保持しているかどうかを示す情報を管理する。具体的には、フィルタ係数記憶状態管理テーブル104は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部103へ動き補償フィルタ係数IDが示す動き補償フィルタ係数を保持しているか否かの情報を出力する機能を有する。フィルタ係数記憶状態管理テーブル104は、例えば、図3に示すような情報を保持している。すなわち、フィルタ係数記憶状態管理テーブル104は、復号部101が復号する符号化ストリームの例えばシーケンスヘッダやピクチャヘッダなどのヘッダ情報に含まれる動き補償フィルタ係数IDすべてをフィルタ係数IDとして保持している。そして、動き補償フィルタ係数IDそれぞれにより特定される動き補償フィルタ係数がフィルタ係数記憶部103に記憶されているか否かを記憶状態として保持している。
参照画像転送制御部105は、復号部101が出力した動きベクトル及び参照画面情報などを含むヘッダ情報に基づき、動き補償に必要な参照画素をメモリ109から読み出し、参照画像記憶部106に書き込む機能を有する。
なお、参照画像転送制御部105は、復号部101が出力した動きベクトル及び参照画面情報などを含むヘッダ情報に基づき、動き補償に必要な参照画素をメモリ109から読み出す命令のみを参照画像記憶部106に行い、参照画像記憶部106が動き補償に必要な参照画素をメモリ109から読み出し保持するとしてもよい。
参照画像記憶部106は、メモリ109から転送された参照画素を保持する機能を有する。
動き補償部107は、少なくともフィルタ係数記憶部103に保持された動き補償フィルタ係数を用いて動き補償を行う。具体的には、動き補償部107は、復号部101が出力した動きベクトル及び動き補償フィルタ係数IDなどを含むヘッダ情報と、参照画像記憶部106が保持している動きベクトルが指し示す動き補償に必要な参照画素と、フィルタ係数記憶部103が保持している動き補償フィルタ係数IDが示す動き補償フィルタ係数とを取得する機能を有する。そして、動き補償部107は、それらを用いて動き補償処理を行って予測画像生成し、加算器108へ出力する機能を有する。
加算器108は、復号部101が出力した予測誤差信号、及び、動き補償部107が出力した予測画像を加算し、復号画像として出力する機能、並びに、その復号画像をメモリ109へ転送する機能を有する。
メモリ109は、復号部101により復号された符号化ストリームに含まれる複数の動き補償フィルタ係数を少なくとも保持するためのものである。具体的には、メモリ109は、動き補償フィルタ係数と、動き補償部107が参照する参照画面を保持する機能を有する。なお、メモリ109は、動き補償フィルタ係数を保持するだけとしてもよい。その場合、動き補償部107が参照する参照画面を保持するフレームメモリを復号装置100が別途備えればよい。
以上のようにして、復号装置100は構成される。
次に、この復号装置100の復号処理動作について説明する。図4は、本発明の実施の形態1における復号装置の復号処理動作を示すフローチャートである。
図4に示すように、復号装置100において、まず、符号化ストリームを受けた復号部101は、符号化ストリームを構成するヘッダ情報を復号し(S101)、ヘッダ情報として少なくとも動き補償フィルタ係数を出力する。そして、フィルタ係数転送制御部102が、S101において復号部101により復号された動き補償フィルタ係数すべてをメモリ109に書き込む(S102)。
次に、復号部101は、復号対象の画像のピクチャタイプがP若しくはBまたはIであるかを判定する(S103)。復号部101は、復号対象の画像のピクチャタイプが、PまたはBである場合には(S103のP、Bの場合)、動き補償処理が必要と判断して符号化ストリームを構成するヘッダ情報と予測残差信号とを復号し(S104)、ヘッダ情報として少なくとも動き補償フィルタ係数情報ID、動きベクトル情報、予測残差信号を出力する。一方、復号部101は、復号対象の画像のピクチャタイプが、Iである場合には(S103のIの場合)、動き補償処理が不要と判断してS114へ進み、画面内復号を行い、S113へと進む。
次に、フィルタ係数転送制御部102は、S104にて復号された動き補償フィルタ係数IDが示す動き補償フィルタ係数をフィルタ係数記憶部103が保持しているかどうかを、フィルタ係数記憶状態管理テーブル104を参照して調べる(S105)。
フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S105のNの場合)、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部103で例えば最も古くメモリ109から読み出された動き補償フィルタ係数が記憶されている領域に書き込む(S106)。続いて、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104を更新する(S107)。具体的には、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104の読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
一方、フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S105のYの場合)、動き補償フィルタ係数をメモリ109から読み出さず、S108へと進む。
次に、参照画像転送制御部105は、参照画像を取得する(S108)。具体的には、参照画像転送制御部105は、S104にて復号部101が出力した動きベクトル及び参照画面情報などを含むヘッダ情報を元に、メモリ109から動き補償処理に利用する参照画像を読み出す。そして、読み出した参照画像を参照画像記憶部106に書き込む。
次に、動き補償部107は、S104にて復号部101が出力した動きベクトルを設定する(S109)。次いで、S104にて復号部101が出力した動き補償フィルタ係数IDと動きベクトルとから、動き補償に利用する動き補償フィルタ係数を特定し、フィルタ係数記憶部103から読み出す(S110)。そして、動き補償部107は、参照画像記憶部106が保持している参照画像を読み出して、動き補償処理を行って予測画像生成し、加算器108へ出力する(S111)。
次に、加算器108は、S111にて動き補償部107が出力した予測画像と、S104にて復号部101が出力した予測残差信号とを加算し出力する(S112)。
次に、復号部101は、S101で復号した動き補償フィルタ係数を用いて動き補償を行う必要がある動き補償ブロックを全て復号したかを判定し(S113)、そうであるなら(S113のYの場合)、復号を完了する。反対に、まだ、復号していない動き補償ブロックがある場合は(S113のNの場合)、S103に戻り処理を繰り返す。
以上のようにして、復号装置100は復号処理動作を行う。
なお、復号装置100は、シーケンスまたはGOPに含まれる画像(ピクチャ)を復号する最初のときには、S102において、ステップS101において復号部101により復号された動き補償フィルタ係数すべてをメモリ109に書き込まれるものの、フィルタ係数記憶状態管理テーブル104には、書き込まれない。その後、S103〜S113の処理を繰り返すことにより、フィルタ係数記憶部103に動き補償フィルタ係数の一部が保持される。
以上、実施の形態1によれば、フィルタ係数記憶状態管理テーブル104を参照した結果、フィルタ係数記憶部103に動き補償フィルタ係数IDの示す動き補償フィルタが存在する場合には、動き補償フィルタ係数をメモリ109から読み出さない。そのため、メモリ109へのアクセス回数を減らすことが可能となる。これにより、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
なお、上記において、フィルタ係数記憶部103が動き補償フィルタ係数IDが示す動き補償フィルタ係数を保持していない場合、フィルタ係数転送制御部102がメモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部103の最も古くフレームメモリから読み出された動き補償フィルタ係数が記憶されている領域に書き込む場合を説明したが、それに限らない。例えば最も新しくメモリ109から読み出された動き補償フィルタ係数が記憶されている領域に書き込むとしても良いし、フィルタ係数が格納されている領域をランダムに選択して書き込むとしても良い。これは、メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
また、上記では、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを含めたものを動き補償フィルタIDとしても良い。
また、上記では、動き補償部107に動きベクトルを設定するとしたが、動きベクトルの小数部を設定するとしても良い。
また、上記では、復号装置100は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108及びメモリ109を備えるとしたが、それに限られない。図5に示すように、復号装置100の最小構成として、復号装置部10を備えていればよい。すなわち、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、メモリ109及び動き補償部107を有する復号装置部10を備えていればよい。
さらに具体的には、この復号装置部10は、動画像が動き補償を用いて符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号装置であって、符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号部101と、復号部101により復号された符号化ストリームに含まれる複数の動き補償フィルタ係数を保持するためのメモリ109と、メモリ109に保持されている複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部103と、フィルタ係数記憶部103に保持された動き補償フィルタ係数を用いて動き補償を行う動き補償部107と、復号部101により復号された複数の動き補償フィルタ係数をメモリ109に書き出し、フィルタ係数記憶部103が上記必要な動き補償フィルタ係数を保持していない場合のみ、メモリ109からフィルタ係数記憶部103に、上記必要な動き補償フィルタ係数を転送するフィルタ係数転送制御部102とを備えていればよい。
復号装置100は、最小構成として復号装置部10を少なくとも備えることにより、メモリ109に記憶され、動き補償を伴う復号に用いられる動き補償フィルタ係数の少なくとも一部がフィルタ係数転送制御部102によりフィルタ係数記憶部に転送され保持される。それにより、メモリ109へ直接アクセスする回数を低減することができる。
(実施の形態2)
図6は、本発明の実施の形態2における復号装置の構成図である。図7A及び図7Bは、フィルタ係数参照履歴管理テーブルが保持する情報の一例である。図6において、図1と同じ構成要素については同じ符号を用い、説明を省略する。
図6に示す復号装置200は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109、及び、フィルタ係数参照履歴管理テーブル201を備える。図6に示す復号装置200は、実施の形態1に係る復号装置100に対して、フィルタ係数参照履歴管理テーブル201を備えている点で構成が異なる。
フィルタ係数参照履歴管理テーブル201は、本発明の参照管理部に相当し、符号化ストリームに含まれる複数の動き補償フィルタ係数毎の、復号開始から参照された回数を示す利用履歴情報を管理する。具体的には、フィルタ係数参照履歴管理テーブル201は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部103において、動き補償フィルタ係数IDの示す動き補償フィルタ係数が復号開始から参照された回数を出力する機能を有する。フィルタ係数参照履歴管理テーブル201は、例えば、図7Aに示すような情報を保持している。すなわち、フィルタ係数参照履歴管理テーブル201は、復号部101が復号する符号化ストリームの例えばヘッダ情報に含まれる動き補償フィルタ係数IDをフィルタ係数IDとして保持している。そして、動き補償フィルタ係数IDそれぞれによって特定される動き補償フィルタ係数が復号開始から参照された回数をこれまでのストリームでの参照回数として保持している。
なお、フィルタ係数参照履歴管理テーブル201は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部103において、動き補償フィルタ係数IDの示す動き補償フィルタ係数が現在動き補償部107の行っている動き補償処理の何回前に参照されたかの回数を出力する機能を有するとしてもよい。その場合、フィルタ係数参照履歴管理テーブル201は、例えば、図7Bに示すような情報を保持する。すなわち、フィルタ係数参照履歴管理テーブル201は、復号部101が復号する符号化ストリームの例えばヘッダ情報に含まれる動き補償フィルタ係数IDをフィルタ係数IDとして保持している。そして、動き補償フィルタ係数IDの示す動き補償フィルタ係数が現在動き補償部107の行っている動き補償処理の何回前に参照されたかを示す情報(回数)を、何回前に参照されたかとして保持している。
次に、以上のように構成される復号装置200の復号処理動作について説明する。図8は、本発明の実施の形態2における復号装置の復号処理動作を示すフローチャートである。
図8に示すように、復号装置200において、まず、符号化ストリームを受けた復号部101は、符号化ストリームを構成するヘッダ情報を復号し(S201)、ヘッダ情報として少なくとも動き補償フィルタ係数を出力する。そして、フィルタ係数転送制御部102が、復号部101によって復号された動き補償フィルタ係数すべてをメモリ109に書き込む(S202)。
次に、復号部101は、復号対象の画像のピクチャタイプがP若しくはBまたはIであるかを判定する(S203)。復号部101は、復号対象の画像のピクチャタイプが、PまたはBである場合には(S203のP、Bの場合)、動き補償処理が必要と判断して符号化ストリームを構成するヘッダ情報と予測残差信号とを復号し(S204)、ヘッダ情報として少なくとも動き補償フィルタ係数情報ID、動きベクトル情報、予測残差信号を出力する。一方、復号部101は、復号対象の画像のピクチャタイプが、Iである場合には(S203のIの場合)、動き補償処理が不要と判断してS215へ進み、画面内復号を行い、S214へと進む。
次に、フィルタ係数転送制御部102が、S204にて復号された動き補償フィルタ係数IDが示す動き補償フィルタ係数をフィルタ係数記憶部103が保持しているかどうかを、フィルタ係数記憶状態管理テーブル104を参照して調べる(S205)。
フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S205のNの場合)、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部103で例えばこれまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む(S206)。ここで、フィルタ係数転送制御部102は、フィルタ係数参照履歴管理テーブル201を参照し、最も参照回数が少ない動き補償フィルタ係数を特定している。
次いで、フィルタ係数転送制御部102は、フィルタ係数参照履歴管理テーブル201の、参照した動き補償フィルタ係数の参照回数を増やす(S207)。
また、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104を更新する(S208)。具体的には、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104の読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
一方、フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S205のYの場合)、動き補償フィルタ係数をメモリ109から読み出さず、S209へと進む。
次に、参照画像転送制御部105は、参照画像を取得する(S209)。具体的には、参照画像転送制御部105は、S204にて復号部101が出力した動きベクトル及び参照画面情報などを含むヘッダ情報を元に、メモリ109から動き補償処理に利用する参照画像を読み出す。そして、読み出した参照画像を参照画像記憶部106に書き込む。
次に、動き補償部107は、S204にて復号部101が出力した動きベクトルを設定する(S210)。次いで、S204にて復号部101が出力した動き補償フィルタ係数IDと動きベクトルとから、動き補償に利用する動き補償フィルタ係数を特定し、フィルタ係数記憶部103から読み出して設定する(S211)。そして、動き補償部107は、参照画像記憶部106が保持している参照画像を読み出して、動き補償処理を行って予測画像生成し、加算器108へ出力する(S212)。
次に、加算器108は、S212にて動き補償部107が出力した予測画像と、S204にて復号部101が出力した予測残差信号とを加算し出力する(S213)。
次に、復号部101は、S201で復号した動き補償フィルタ係数を用いて動き補償を行う必要がある動き補償ブロックを全て復号したかを判定し(S214)、そうであるなら(S214のYの場合)、復号を完了する。反対に、まだ、復号していない動き補償ブロックがある場合は(S214のNの場合)、S203に戻り処理を繰り返す。
以上のようにして、復号装置200は復号処理動作を行う。
以上、実施の形態2によれば、フィルタ係数参照履歴管理テーブル201を参照することで、最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部102がフィルタ係数記憶部103に書き込む際に、これまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む。それにより、参照される可能性の低い動き補償フィルタ係数はフィルタ係数記憶部103に保持されず、頻繁に参照される可能性の高い動き補償フィルタ係数をフィルタ係数記憶部103で保持することが可能となる。その結果、メモリ109へのアクセス回数を減らすことが可能となる。これにより、動き補償フィルタ係数に関するメモリ帯域及びメモリアクセスレイテンシの低減が可能となる。
なお、上記において、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合、フィルタ係数参照履歴管理テーブル201を参照することで、最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部102がメモリ109から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部103のこれまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込むとしたが、それに限らない。例えば、最近(現在から所定期間の過去)において最も使われていない動き補償フィルタ係数が記憶されている領域に書き込むとしてもよいし、最近において最も使われている動き補償フィルタ係数が記憶されている領域に書き込むとしてもよいし、これまでに最も参照回数が多い動き補償フィルタ係数が記憶されている領域に書き込むとしてもよい。メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
また、上記では、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを含めたものを動き補償フィルタIDとしても良い。
また、上記では、動き補償部107に動きベクトルを設定するとしたが、動きベクトルの小数部を設定するとしても良い。
(実施の形態3)
図9は、本発明の実施の形態3における復号装置の構成を示すブロック図である。図10及び図11は、フィルタ係数統計情報管理テーブルが保持する情報の一例である。図9において、図1と同じ構成要素については同じ符号を用い、説明を省略する。
図9に示す復号装置300は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109、前復号部301、及び、フィルタ係数統計情報管理テーブル302を備える。図9に示す復号装置300は、実施の形態1に係る復号装置100に対して、前復号部301及びフィルタ係数統計情報管理テーブル302を備えている点で構成が異なる。
前復号部301は、復号部101よりも先行して符号化ストリームから、符号化ストリームに含まれる複数の動き補償フィルタ係数の少なくとも一部を復号する。具体的には、前復号部301は、復号部101より少なくとも1ビット以上符号化ストリームを先行して、動画像圧縮技術の標準規格に準じて符号化された符号化ストリームの一部または全ての復号を行う。ここで、前復号部301は、少なくとも動き補償フィルタ係数IDを出力する機能を有する。
なお、前復号部301は、復号装置300が別途備える例えばCABAC(Context−based Adaptive Binary Arithmetic Coding)などの算術符号を復号するCABAC復号部に構成されるとしてもよい。また、復号部101の前段に備えられてもよい。すなわち、前復号部301は、画像までは復号せず、復号部101より少なくとも1ビット以上符号化ストリームを先行して、動き補償フィルタ係数IDを復号し、フィルタ係数統計情報管理テーブル302に出力する構成であればよい。
フィルタ係数統計情報管理テーブル302は、本発明の統計情報管理部に相当し、前復号部301により復号され、かつ、復号部101によりこれから復号される動き補償フィルタ係数毎の利用状況を管理する。具体的には、フィルタ係数統計情報管理テーブル302は、前復号部301が出力した動き補償フィルタ係数IDを入力とし、復号部101がこれから(以後または今後)復号する符号化ストリームに含まれる動き補償フィルタ係数ID毎の動き補償フィルタの利用回数を出力する機能を有する。
フィルタ係数統計情報管理テーブル302は、例えば、図10に示すような情報を保持している。すなわち、フィルタ係数統計情報管理テーブル302は、前復号部301が復号した符号化ストリームのヘッダ情報に含まれる動き補償フィルタ係数IDをフィルタ係数IDとして保持している。また、今後のストリームでの参照回数として、動き補償フィルタ係数IDにより特定される動き補償フィルタ係数が復号部101の復号で参照されるまでの回数が保持されている。また、フィルタ係数統計情報管理テーブル302は、例えば、図11に示すような情報を保持していてもよい。すなわち、フィルタ係数統計情報管理テーブル302は、前復号部301が復号した符号化ストリームのヘッダ情報に含まれる動き補償フィルタ係数IDをフィルタ係数IDとして保持していてもよい。また、今後のストリーム中において何ブロック先で参照されるかを示す情報として、動き補償フィルタ係数IDにより特定される動き補償フィルタ係数が復号部101の復号で参照されるまでの回数が保持されているとしてもよい。
以上のようにして、復号装置300は構成される。具体的には、復号部101がこれから復号する動き補償フィルタ係数IDの出現頻度をフィルタ係数統計情報管理テーブル302で管理することで、これから復号部101が復号する動き補償フィルタ係数IDが出現する確率が予め知ることができる。そのため、フィルタ係数記憶部103にこれからの出現確率が高い動き補償フィルタ係数を保持させ、これからの出現確率が低い動き補償フィルタ係数を破棄させることができる。それにより、メモリ109へのアクセス回数を削減することが可能となるだけでなく、フィルタ係数記憶部103のメモリ帯域の低減が可能となる。
ここで、図10に示される今後のストリーム中において何ブロック先で参照されるかを示す情報と図11に示される今後のストリームでの参照回数を示す情報との効果の違いについて例を挙げて説明する。
図12A及び図12B並びに図13A及び図13Bは、フィルタ係数統計情報管理テーブルに基づいてフィルタ係数記憶部の動き補償フィルタ係数が更新される様子を示す図である。ここで、図13A及び図13Bは、図12A及び図12Bと時間的に連続しており、図12A及び図12Bに比べて1マクロブロック後の復号が復号部101により行われるときの様子を示している。なお、前復号部301は、符号化ストリームに対して復号部101よりも例えば2マクロブロック分先行して復号するとする。また、フィルタ係数記憶部103は、動き補償フィルタ係数を2つしか保持できない構成であるとする。
前復号部301は、図12Aに示すように、符号化ストリームに対して復号部101よりも例えば3マクロブロック分先行して復号し、フィルタ係数統計情報管理テーブル302に図12Bに示す情報を保持している。例えば、フィルタ係数統計情報管理テーブル302は、前復号部301が符号化ストリームに対して今まで復号したフィルタ係数ID(0、1、2)と、それらが今後のストリーム中において何ブロック先で参照されるかを示す情報(∞、2、1)とを保持している。ここで、図12Bにおいて、∞は、前復号部301が復号部101に先んじて復号した2マクロブロック先にはフィルタIDが0のものはないことを示している。それに対して、フィルタ係数IDが1のものは、復号部101がこれから(1ブロック先)復号する際に参照することを示している。同様に、フィルタIDが2のものは、復号部101が2ブロック先で復号する際に参照することを示している。
そのため、フィルタ係数転送制御部102は、フィルタ係数統計情報管理テーブル302と、フィルタ係数記憶状態管理テーブル104とを参照し、フィルタ係数記憶部103に保持されているフィルタ係数ID(0、1)に対応する動き補償フィルタ係数のうち、フィルタ係数IDが0に対応する動き補償フィルタ係数を記憶する領域を変更する。すなわち、フィルタ係数転送制御部102は、フィルタ係数記憶部103に保持されているフィルタ係数ID=0に対応する動き補償フィルタ係数をフィルタ係数ID=2に対応する動き補償フィルタ係数に変更する。
そして、図13A及び図13Bに示す場合も同様である。具体的には、フィルタ係数転送制御部102は、フィルタ係数統計情報管理テーブル302と、フィルタ係数記憶状態管理テーブル104とを参照し、フィルタ係数記憶部103に保持されているフィルタ係数ID(2、1)に対応する動き補償フィルタ係数のうち、どちらを変更すべきかを決定する。ここでは、フィルタ係数統計情報管理テーブル302を参照することにより、フィルタ係数IDが2に対応する動き補償フィルタ係数を記憶する領域を変更するべきと判断できる。しかし、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104を参照することにより、フィルタ係数記憶部103にフィルタ係数ID=1に対応する動き補償フィルタ係数が保持されているのを確認できる。そのため、フィルタ係数転送制御部102は、フィルタ係数記憶部103に対して変更の必要はないと判断し、フィルタ係数記憶部103に対してなにもしない(転送しない)。
このようにして、これから復号部101が復号する動き補償フィルタ係数IDが出現する確率を予め知ることにより、メモリ109へのアクセス回数を削減することが可能となる。
次に、以上のように構成される復号装置300の復号処理動作について説明する。図14は、本発明の実施の形態3における復号装置の復号処理動作を示すフローチャートである。
図14に示すように、復号装置300において、まず、符号化ストリームを受けた復号部101は、符号化ストリームを構成するヘッダ情報を復号し(S301)、ヘッダ情報として少なくとも動き補償フィルタ係数を出力する。そして、フィルタ係数転送制御部102は、S301にて復号部101により復号された動き補償フィルタ係数すべてをメモリ109に書き込む(S302)。次に、復号部101は、復号対象の画像のピクチャタイプがP若しくはB、または、Iであるかを判定する(S303)。前復号部301は、復号部101により復号対象の画像のピクチャタイプが、PまたはBであると判定された場合には(S303のP、Bの場合)、動き補償処理が必要と判断し、復号部101に先行して符号化ストリームの復号を行い(S304)、フィルタ係数統計情報管理テーブル302を更新する(S305)。具体的には、復号部101に先行して、符号化ストリームの復号を行い、復号部101でまだ復号していない符号化ストリーム内にある動き補償フィルタ係数IDの出現頻度をフィルタ係数統計情報管理テーブル302に書き込む。
次いで、復号部101は、符号化ストリームを構成するヘッダ情報と予測残差信号とを復号し、ヘッダ情報として少なくとも動き補償フィルタ係数情報ID、動きベクトル情報及び予測残差信号を出力する(S306)。
なお、復号部101は、復号対象の画像のピクチャタイプが、Iであると判定した場合には(S303のIの場合)、S316へ進み、画面内復号を行い、S315へと進む。
次に、フィルタ係数転送制御部102は、S306で復号部101によって復号された動き補償フィルタ係数IDが示す動き補償フィルタ係数をフィルタ係数記憶部103が保持しているかどうかを、フィルタ係数記憶状態管理テーブル104を参照して調べる(S307)。
フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S307のNの場合)、メモリ109から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部103で例えばこれから最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む(S308)。ここで、フィルタ係数転送制御部102は、フィルタ係数統計情報管理テーブル302を参照し、復号部101が今後復号するうちで最も参照回数が少ない動き補償フィルタ係数を特定している。
次いで、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104を更新する(S309)。具体的には、フィルタ係数転送制御部102は、フィルタ係数記憶状態管理テーブル104の読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
一方、フィルタ係数転送制御部102は、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S307のYの場合)、動き補償フィルタ係数をメモリ109から読み出さず(転送せず)、S310へと進む。
なお、S310〜S315の処理は、S209〜S214と同様であるので説明を省略する。
以上のようにして、復号装置300は復号処理動作を行う。
以上、実施の形態3によれば、前復号部301は復号部101よりも先行してストリームを復号し、復号部101がこれから復号する動き補償フィルタ係数IDの出現頻度をフィルタ係数統計情報管理テーブル302で管理する。それにより、復号部101がこれから復号する動き補償フィルタ係数IDの出現する確率が予め知ることができるようになる。そして、フィルタ係数記憶部103にこれからの出現確率が高い動き補償フィルタ係数を保持することによりメモリ109へのアクセス回数を削減することが可能となり、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
なお、上記において、フィルタ係数記憶部103が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合、フィルタ係数統計情報管理テーブル302を参照することで、今後最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部102がメモリ109から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部103の今後最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込むとしたが、それに限らない。例えば、今後しばらく使われないすなわち、今後所定の期間参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込むとしてもよい。このように、メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
また、上記では、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを含めたものを動き補償フィルタIDとしても良い。
また、上記では、動き補償部107に動きベクトルを設定するとしたが、動きベクトルの小数部を設定するとしても良い。
また、上記では、復号装置300は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、フィルタ係数記憶状態管理テーブル104、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109、前復号部301、及び、フィルタ係数統計情報管理テーブル302を備えるとしたが、それに限られない。図15に示すように、復号装置300の最小構成として、復号装置部350を備えていればよい。すなわち、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、メモリ109及び前復号部を有する復号装置部350を備えていればよい。ここで、図15は、本発明の実施の形態3における復号装置の最小構成を示すブロック図である。
具体的には、この復号装置部350は、符号化ストリームから、動き補償を伴う復号に利用される複数の動き補償フィルタ係数を復号する復号部101と、復号部101よりも先行して、符号化ストリームから複数の動き補償フィルタ係数を復号する前復号部301と、前復号部301により復号された複数の動き補償フィルタ係数を保持するためのメモリ109と、復号部101により復号された複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部103と、前復号部301により復号された動き補償フィルタ係数に基づいて、前記一部の動き補償フィルタ係数をフィルタ係数記憶部103に保持させるフィルタ係数転送制御部102と、を備えていればよい。
復号装置部350は、最小構成として復号装置部10を少なくとも備えることにより、前復号部301により復号された動き補償フィルタ係数により先読み解析を行うことで、動き補償を伴う復号に用いられる動き補償フィルタ係数の一部がフィルタ係数記憶部103に保持される。それにより、フィルタ係数記憶部103に保持されている場合には、フィルタ係数記憶部103に保持されている動き補償フィルタ係数を用いることにより、メモリ109へ直接アクセスする回数を低減することができるという効果を奏する。
(実施の形態4)
図16は、本発明の実施の形態4における復号装置の構成を示すブロック図である。図15において、図1と同じ構成要素については同じ符号を用い、説明を省略する。
図16に示す復号装置400は、復号部101、フィルタ係数転送制御部102、フィルタ係数記憶部103、参照画像転送制御部105、参照画像記憶部106、動き補償部107、加算器108、メモリ109、可逆符号化部401、可逆復号部402を備える。ここで、図16に示す復号装置400は、実施の形態1に係る復号装置100に対して、可逆符号化部401及び可逆復号部402を備え、フィルタ係数記憶状態管理テーブル104を備えていない点で構成が異なる。
可逆符号化部401は、符号化ストリームに含まれる複数の動き補償フィルタ係数を可逆符号化する。具体的には、可逆符号化部401は、復号部101が復号した動き補償フィルタ係数を可逆符号化しメモリ109に書き込む機能を有する。
可逆復号部402は、可逆符号化部401により可逆符号化された複数の動き補償フィルタ係数のうち、動き補償に必要な動き補償フィルタ係数を可逆復号し、可逆復号した動き補償フィルタ係数を、フィルタ係数転送制御部102を介してフィルタ係数記憶部103に書き込む。具体的には、可逆復号部402は、メモリ109に格納された動き補償フィルタ係数を読み出して、可逆復号し、フィルタ係数転送制御部102を介してフィルタ係数記憶部103に書き込む機能を有する。なお、可逆復号部402は、フィルタ係数転送制御部102を介さずに、フィルタ係数記憶部103に書き込むとしてもよい。
次に、以上のように構成される復号装置400の復号処理動作について説明する。図17は、本発明の実施の形態4における復号装置の復号処理動作を示すフローチャートである。
図17に示すように、復号装置400において、まず、符号化ストリームを受けた復号部101は、符号化ストリームを構成するヘッダ情報を復号し(S401)、ヘッダ情報として少なくとも動き補償フィルタ係数を出力する。次いで、可逆符号化部401は、復号部101が復号した動き補償フィルタ係数を可逆符号化する(S402)。次いで、フィルタ係数転送制御部102は、可逆符号化部401により可逆符号化された動き補償フィルタ係数をメモリ109に書き込む(S403)。
次に、復号部101は、復号対象の画像のピクチャタイプがP若しくはBまたはIであるかを判定する(S404)。復号部101は、復号対象の画像のピクチャタイプが、PまたはBである場合には(S404のP、Bの場合)、動き補償処理が必要と判断して符号化ストリームを構成するヘッダ情報と予測残差信号を復号し(S405)、ヘッダ情報として少なくとも動き補償フィルタ係数情報ID、動きベクトル情報、予測残差信号を出力する。一方、復号部101は、復号対象の画像のピクチャタイプが、Iである場合には(S404のIの場合)、動き補償処理が不要と判断してS414へ進み、画面内復号を行い、S413へと進む。
次に、フィルタ係数転送制御部102は、メモリ109から動き補償フィルタ係数IDの示す可逆符号化された動き補償フィルタ係数を読み出す(S406)。続いて、可逆復号部402は、可逆符号化された動き補償フィルタ係数を可逆復号し、フィルタ係数記憶部103に書き込む(S407)。
なお、S408〜S413の処理は、S108〜S112と同様であるので説明を省略する。
以上のようにして、復号装置400は復号処理動作を行う。
以上、実施の形態4によれば、可逆符号化部401により動き補償フィルタ係数を圧縮することで、メモリ109へ格納する動き補償フィルタ係数のデータサイズを小さくすることができる。これにより、動き補償フィルタ係数に関するメモリ容量の削減が可能となる。
なお、図16に示す復号装置400が、上述したフィルタ係数記憶状態管理テーブル104を少なくとも備え、フィルタ係数参照履歴管理テーブル201またはフィルタ係数統計情報管理テーブルを備えるとしてもよい。その場合には、動き補償フィルタ係数に関するメモリ容量の削減だけでなく、上述したように、メモリ帯域の低減及びメモリアクセスレイテンシの低減も可能となり、さらに好ましい。
また、上記において、復号部101で一度動き補償フィルタ係数を復号し、可逆符号化部401で符号化しなおしてメモリ109に格納し、可逆復号部402で復号する場合を説明したが、それに限らない。例えば、復号部101で動き補償フィルタ係数を復号せずに、符号化ストリーム内の動き補償フィルタ係数部分をメモリ109に格納するとし、可逆復号部402で復号するとしても良い。
また、可逆符号化部401で利用する符号化アルゴリズムは、可逆で、かつ、入力サイズより出力サイズが小さくなる符号化方法であれば如何なるものでもよい。
また、上記において、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを含めたものを動き補償フィルタIDとしても良い。
また、上記では、動き補償部107に動きベクトルを設定するとしたが、動きベクトルの小数部を設定するとしても良い。
(実施の形態5)
図18は、本発明の実施の形態5における符号化装置の構成を示すブロック図である。
図18に示す符号化装置500は、符号化対象画像と参照画像とを用いて、動き補償を伴う符号化である動き補償符号化を行う符号化装置であって、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、フィルタ係数記憶状態管理テーブル504、参照画像転送制御部505、参照画像記憶部506、動き検出部507、減算器508、メモリ509及び符号化部510を備える。
フィルタ係数生成部501は、本発明の生成部に相当し、動き補償符号化に利用される複数の動き補償フィルタ係数を生成する。具体的には、フィルタ係数生成部501は、符号化対象画像を入力として、または、符号化対象画像及び参照画像を入力として、可変係数動き補償の動き補償フィルタ係数を生成する機能を有する。典型的には、フィルタ係数生成部501は、符号化部510が符号化する符号化ストリームの例えばGOPまたはシーケンスのピクチャ単位などのヘッダ情報に含めることになる可変係数動き補償に用いるフィルタ係数(動き補償フィルタ係数)を生成する。ここで、動き補償フィルタ係数は、ピクチャ単位だけでなく、GOP単位若しくはシーケンス単位で生成されたとしてもよいし、スライス単位またはマクロブロック単位で生成されたとしてもよい。また、それらを組み合わせたものであっても構わない。
フィルタ係数転送制御部502は、フィルタ係数生成部501により生成された複数の動き補償フィルタ係数をメモリ509に書き出し、フィルタ係数記憶部503が、動き補償処理に必要な動き補償フィルタ係数を保持していない場合のみ、メモリ509からフィルタ係数記憶部503に上記必要な動き補償フィルタ係数を転送する。具体的には、フィルタ係数転送制御部502は、フィルタ係数生成部501で生成された動き補償フィルタ係数をメモリ509に書き込む機能を有する。また、動き検出部507が決定した動き補償にどの動き補償フィルタ係数を用いるかを示す情報(動き補償フィルタ係数ID)を元に、フィルタ係数記憶状態管理テーブル504の情報を参照する機能を有する。フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504の情報により、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部503に保持されているかを確認することができる。
例えば、フィルタ係数転送制御部502は、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部503に保持されていないことを確認した場合、メモリ509から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部503に書き込む(転送する)。一方、フィルタ係数転送制御部502は、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部503に保持されていることを確認した場合は、動き補償フィルタ係数をメモリ509から読み出さない(転送しない)。
なお、フィルタ係数転送制御部502は、動き補償フィルタ係数をメモリ509に書き込む命令のみをフィルタ係数生成部501に行い、フィルタ係数生成部501が動き補償フィルタ係数をメモリ509に書き込むとしてもよい。同様に、フィルタ係数転送制御部502は、メモリ509から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出す命令のみをフィルタ係数記憶部503に行い、フィルタ係数記憶部503がメモリ509から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出し、保持するとしてもよい。
フィルタ係数記憶部503は、メモリ509に保持されている複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのものである。具体的には、フィルタ係数記憶部503は、メモリ509から転送された動き補償フィルタ係数を少なくとも2種類以上保持する機能と、動き補償フィルタ係数IDが示す動き補償フィルタ係数を動き検出部507に設定する機能を有する。
フィルタ係数記憶状態管理テーブル504は、フィルタ係数記憶部503が動き補償フィルタ係数IDにより特定された動き補償フィルタ係数を保持しているかどうかを示す情報を管理する。具体的には、フィルタ係数記憶状態管理テーブル504は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持しているか否かの情報をフィルタ係数転送制御部502に出力する機能を有する。フィルタ係数記憶状態管理テーブル504は、例えば、上述した図3に示すように、動き補償フィルタ係数IDの示す動き補償フィルタ係数がフィルタ係数記憶部503に保持されているか否かを示す記憶状態をテーブル(情報)として保持している。
参照画像転送制御部505は、動き検出に用いる参照画像内の探索領域の位置情報に基づき、動き検出に必要な参照画素をメモリ509から読み出し、参照画像記憶部506に書き込む機能を有する。
なお、参照画像転送制御部505は、動き検出に用いる参照画像内の探索領域の位置情報に基づき、動き検出に必要な参照画素をメモリ509から読み出す命令のみを参照画像記憶部506に行い、参照画像記憶部506が動き補償に必要な参照画素をメモリ509から読み出し保持するとしてもよい。
参照画像記憶部506は、メモリ509から転送された参照画素を保持する機能を有する。
動き検出部507は、フィルタ係数記憶部503に保持されている動き補償に必要な動き補償フィルタ係数を用いて符号化対象画像と前記参照画像とから動き補償を行って予測画像を生成する。具体的には、動き検出部507は、符号化画像、及び、参照画像を入力として、動きベクトルと動き補償に利用する動き補償フィルタ係数の種類を示す動き補償フィルタ係数IDとを決定して符号化部510へ出力する機能を有している。そして、動き検出部507は、決定した動き補償フィルタ係数IDをフィルタ係数転送制御部502へ出力する機能を有している。また、動き検出部507は、参照画像記憶部506が保持している動きベクトルが指し示す動き補償に必要な参照画素と、フィルタ係数記憶部503が保持している動き補償フィルタ係数IDが示す動き補償フィルタ係数とを取得し、それらの情報を用いて動き補償処理を行って予測画像を生成し、減算器508へと出力する機能を有する。
ここで、動き検出部507が動き補償フィルタ係数IDを決定する方法について一例を挙げて説明する。図19は、フィルタ係数記憶状態管理テーブルが保持する情報の一例である。図20は、動き検出部507が、動き補償フィルタ係数IDを決定する方法を説明するための図である。
なお、ここで、図19に示すように、フィルタ係数記憶状態管理テーブルは、動き補償フィルタ係数IDが0〜100と、それらに対応する動き補償フィルタ係数のフィルタ係数記憶部503における記憶状態とを保持しているとする。また、フィルタ係数記憶部503には、動き補償フィルタ係数ID 70〜79に対応する動き補償フィルタ係数が記憶されているとする。さらに、フィルタ係数記憶部503は20個の動き補償フィルタ係数しか保持することができないとする。すなわち、フィルタ係数記憶部503は、図20(a)に示すように動き補償フィルタ係数ID 70〜79に対応する動き補償フィルタ係数を10個保持しており、あと10個の動き補償フィルタ係数を保持可能な領域がある。
この場合において、動き検出部507は、動き補償に利用する動き補償フィルタ係数の種類を示す動き補償フィルタ係数IDを次のように決定する。
まず、動き検出部507は、図20(b)に示すように、フィルタ係数転送制御部502に、動き補償フィルタ係数ID 0〜9に対応する動き補償フィルタ係数をフィルタ係数記憶部503に書き込みさせて、動き補償に利用する補償フィルタ係数IDか否かを確認する。
次に、動き検出部507は、同様に、図20(c)に示すように、フィルタ係数転送制御部502に、動き補償フィルタ係数ID 10〜19に対応する動き補償フィルタ係数をフィルタ係数記憶部503に書き込みさせて、動き補償に利用する補償フィルタ係数IDか否かを確認する。
このように、動き検出部507は、同様にして、動き補償フィルタ係数ID 0〜69および80〜100に対応する動き補償フィルタ係数をフィルタ係数記憶部503に書き込みさせて、動き補償に利用する補償フィルタ係数IDか否かを確認する。
一方、動き補償フィルタ係数ID 70〜79に対応する動き補償フィルタ係数は、予めフィルタ係数記憶部503に保持されている。そのため、フィルタ係数転送制御部502は動き補償フィルタ係数ID 70〜79に対応する動き補償フィルタ係数を転送しない。このようにして、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
なお、動き検出部507が動き補償フィルタ係数IDを決定する方法として上記で説明した方法は、一例であり、その他の方法でもよいのは言うまでもない。
減算器508は、入力された符号化画像と動き検出部507が出力した予測誤差信号とを減算し、予測誤差信号として符号化部510へ出力する機能を有する。
メモリ509は、動き補償フィルタ係数と、動き検出部507が参照する参照画面とを保持する機能を有する。なお、メモリ509は、動き補償フィルタ係数を保持するだけとしてもよい。その場合、動き検出部507が参照する参照画面を保持するフレームメモリを符号化装置500が別途備えればよい。
符号化部510は、少なくとも減算器508が出力した予測誤差信号と動き検出部507が出力した動きベクトル、及び、動き補償フィルタ係数IDを入力とし、それらに対し動画像圧縮技術の標準規格に準じて符号化を行い、符号化ストリームを出力する機能を有する。
以上のようにして、符号化装置500は構成される。
次に、この符号化装置500の符号化処理動作について説明する。図21は、本発明の実施の形態5における符号化装置の符号化処理動作を示すフローチャートである。
図21に示すように、符号化装置500において、まず、符号化対象画像を受けたフィルタ係数生成部501は、以後の符号化に用いる動き補償フィルタ係数を生成し出力する(S501)。そして、フィルタ係数転送制御部502は、S501にてフィルタ係数生成部501により生成されたすべての動き補償フィルタ係数をメモリ509に書き込む(S502)。
次に、符号化装置500は、符号化対象の画像(ブロック)について、S503での画面内予測と、S504〜S511での画面間予測との両方を実施する。画面内予測については、従来の方法を適用すればよいので説明を省略する。以下、S504〜S511での画面間予測の実施について説明する。
S504において、参照画像転送制御部505は、動き検出に用いる参照画像内の探索領域の位置情報に基づき、動き検出に必要な参照画素をメモリ509から読み出し、参照画像記憶部506に書き込む。
次に、動き検出部507は、符号化画像、及び、参照画像を入力として符号化画像と相関の高い参照画像内の画素位置の情報を動きベクトルとして出力し(S505)、更に予測誤差が小さくなるような動き補償フィルタ係数を特定し、動き補償フィルタ係数IDとして出力する。
次に、フィルタ係数転送制御部502は、S506にて特定された動き補償フィルタ係数IDが示す動き補償フィルタ係数をフィルタ係数記憶部503が保持しているかどうかを、フィルタ係数記憶状態管理テーブル504を参照して調べる(S507)。
次に、フィルタ係数転送制御部502は、S507にて、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S507のNの場合)、メモリ509から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部503で例えば最も古くメモリ509から読み出された動き補償フィルタ係数が記憶されている領域に書き込む(S508)。続いて、フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504を更新する(S509)。具体的には、フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504の読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
一方、フィルタ係数転送制御部502は、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S507のYの場合)、動き補償フィルタ係数をメモリ509から読み出さず(転送せず)、S510へと進む。
次に、動き検出部507は、決定した動きベクトルと特定した動き補償フィルタ係数IDとから、動き補償に利用する動き補償フィルタ係数をフィルタ係数記憶部503から読み出して設定する(S510)。そして、参照画像記憶部506の保持している参照画像を読み出して、動き補償処理を行って、予測画像生成し(S511)、減算器508へ出力する。
このように、符号化装置500は、符号化対象の画像(ブロック)について、S503での画面内予測を実施し、S504〜S511での画面間予測を実施する。そして、符号化部510は、実施した画面内予測と画面間予測とから、画面間符号化する場合の符号化効率と画面内符号化する場合の符号化効率とのうち、どちらの符号化モードで符号化する方がより符号化効率が良くなるかを判定する。符号化部510は、符号化効率が良くなると判定した方の符号化モードを符号化対象の画像(ブロック)の符号化モード(マクロブロックタイプ)に決定する(S512)。
次に、減算器508は、S512で決定された符号化対象の画像(ブロック)の符号化モードに従って減算する。具体的には、符号化対象の画像(ブロック)の符号化モードが画面間予測であると決定された場合(S512)、S511にて動き検出部507が出力した予測画像と、符号化対象画像とを減算し(S513)、予測残差(予測誤差)信号を出力する。一方、符号化対象の画像(ブロック)の符号化モードが画面内予測であると決定された場合(S512)、S503で出力された予測画像と、符号化対象画像とを減算し(S513)、減算した予測残渣(誤差)信号を出力する。
次に、符号化部510は、少なくとも減算器508が出力した予測残渣(誤差)信号と、動き検出部507が出力した動きベクトル及び動き補償フィルタ係数IDとを入力とし、それらに対し動画像圧縮技術の標準規格に準じて符号化を行い、符号化ストリームを出力する(S514)。
次に、符号化部510は、動き補償フィルタ係数を用いて動き補償を行う必要がある動き補償ブロックを全て符号化したかを判定し(S515)、そうであるなら(S515のYの場合)、符号化を完了する。反対に、まだ、符号化していない動き補償ブロックがある場合は(S515のNの場合)、S503及びS504に戻り処理を繰り返す。
以上のようにして、符号化装置500は符号化処理動作を行う。
以上、実施の形態5によれば、フィルタ係数記憶状態管理テーブル504を参照した結果、フィルタ係数記憶部503に動き補償フィルタ係数IDの示す動き補償フィルタが存在する場合には、動き補償フィルタ係数をメモリ509から読み出さない(転送しない)。そのため、メモリ509へのアクセス回数を減らすことが可能となる。これにより、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
なお、上記において、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合、フィルタ係数転送制御部502がメモリ509から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出す(転送する)。そして、フィルタ係数記憶部503の最も古くメモリ509から読み出された動き補償フィルタ係数が記憶されている領域に書き込む場合を説明したが、それに限らない。例えば最も新しくメモリ509から読み出された動き補償フィルタ係数が記憶されている領域に書き込むとしても良いし、フィルタ係数が格納されている領域をランダムに選択して書き込むとしても良い。メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
また、上記では、動き補償フィルタ係数IDは動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを動き補償フィルタIDとしても良い。
また、上記では符号化装置500は、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、フィルタ係数記憶状態管理テーブル504、参照画像転送制御部505、参照画像記憶部506、動き検出部507、減算器508、メモリ509及び符号化部510を備えるとしたが、それに限られない。符号化装置500の最小構成として、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、動き検出部507及びメモリ509を備えていればよい。
さらに具体的には、符号化装置500は、符号化対象画像と参照画像とを用いて、動き補償を伴う符号化である動き補償符号化を行う動画像符号化装置であって、動き補償符号化に利用される複数の動き補償フィルタ係数を生成するフィルタ係数生成部501と、フィルタ係数生成部501より生成された複数の動き補償フィルタ係数を保持するためのメモリ509と、メモリ509に保持されている複数の動き補償フィルタ係数のうち、動き補償を行うときに必要な動き補償フィルタ係数を保持するためのフィルタ係数記憶部503と、フィルタ係数記憶部503に保持されている上記必要な動き補償フィルタ係数を用いて符号化対象画像と参照画像とから動き補償を行って予測画像を生成する動き検出部507と、フィルタ係数生成部501により生成された複数の動き補償フィルタ係数をメモリ509に書き出し、フィルタ係数記憶部503が上記必要な動き補償フィルタ係数を保持していない場合のみ、メモリ509からフィルタ係数記憶部503に必要な動き補償フィルタ係数を転送するフィルタ係数転送制御部502とを備えていればよい。
この最小構成により、フィルタ係数記憶部503に動き補償フィルタ係数IDの示す動き補償フィルタが存在する場合には、動き補償フィルタ係数をメモリ509から読み出さないことができる。そのため、メモリ509へのアクセス回数を減らすことが可能となる。これにより、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
(実施の形態6)
図22は、本発明の実施の形態6における符号化装置の構成を示すブロック図である。図22において、図18と同じ構成要素については同じ符号を用い、説明を省略する。
図22に示す符号化装置600は、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、フィルタ係数記憶状態管理テーブル504、参照画像転送制御部505、参照画像記憶部506、動き検出部507、減算器508、メモリ509、符号化部510、フィルタ係数参照履歴管理テーブル601を備える。ここで、図22に示す符号化装置600は、実施の形態5に係る符号化装置500に対して、フィルタ係数参照履歴管理テーブル601を備える点で構成が異なる。
フィルタ係数参照履歴管理テーブル601は、動き補償に利用する動き補償フィルタ係数毎の、動き補償の開始から参照された回数を示す利用履歴情報を管理する。具体的には、フィルタ係数参照履歴管理テーブル601は、動き補償フィルタ係数IDを入力とし、フィルタ係数記憶部503へ動き補償フィルタ係数IDの示す動き補償フィルタが符号化開始から参照された回数を出力する機能を有する。なお、フィルタ係数参照履歴管理テーブル601が保持する情報は、図7A及び図7Bで示した内容と同様であるため、説明を省略する。
次に、以上のように構成された符号化装置600の符号化処理動作について説明する。図23は、本発明の実施の形態6における符号化装置の符号化処理動作を示すフローチャートである。
図23に示すように、符号化装置600において、まず、符号化対象画像を受けたフィルタ係数生成部501は、以後の符号化に用いる動き補償フィルタ係数を生成し出力する(S601)。なお、S602の処理は、S502と同様のため説明を省略する。
次に、符号化装置600は、符号化対象の画像(ブロック)について、S603での画面内予測と、S604〜S612での画面間予測との両方を実施する。画面内予測については、S503と同様に従来の方法を適用すればよいので説明を省略する。以下、S604〜S612での画面間予測の実施について説明する。ここで、S604からS606の処理は、S504〜S506と同様のため説明を省略する。
次に、S607において、フィルタ係数転送制御部502は、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合(S607のNの場合)、メモリ509から動き補償フィルタ係数IDの示す動き補償フィルタ係数を読み出す。そして、フィルタ係数記憶部503で例えばこれまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む(S608)。ここで、フィルタ係数転送制御部502は、フィルタ係数参照履歴管理テーブル601を参照し、最も参照回数が少ない動き補償フィルタ係数を特定している。
次いで、フィルタ係数転送制御部502は、フィルタ係数参照履歴管理テーブル601を更新する(S609)。具体的には、フィルタ係数参照履歴管理テーブル601において参照した動き補償フィルタ係数の参照回数を増やす。
次いで、フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504を更新する(S610)。具体的には、フィルタ係数転送制御部502は、フィルタ係数記憶状態管理テーブル504において、読み出した動き補償フィルタ係数の記憶状態を「保持している」に変更し、消去した動き補償フィルタ係数の記憶状態を「保持していない」に変更する。
一方、フィルタ係数転送制御部502は、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持している場合(S607のYの場合)、動き補償フィルタ係数をメモリ509から読み出さず(転送せず)、S611へと進む。
次に、動き検出部507は、決定した動きベクトルと特定した動き補償フィルタ係数IDとから、動き補償に利用する動き補償フィルタ係数をフィルタ係数記憶部503から読み出して設定する(S611)。なお、S611の処理は、S510と同様のため説明を省略する。
このように符号化装置600は、符号化対象の画像(ブロック)について、S603で画面内予測を実施し、S604〜S612で画面間予測を実施する。そして、符号化部510は、実施した画面内予測と画面間予測とから、画面間符号化する場合の符号化効率と画面内符号化する場合の符号化効率とのうち、どちらの符号化モードで符号化する方がより符号化効率が良くなるかを判定する。符号化部510は、符号化効率が良くなると判定した方の符号化モードを符号化対象の画像(ブロック)の符号化モード(マクロブロックタイプ)に決定する。
以下のS614〜S616の処理は、S513〜S515と同様のため説明を省略する。
以上のようにして、符号化装置600は符号化処理動作を行う。
以上、実施の形態6によれば、フィルタ係数参照履歴管理テーブル601を参照することで、最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部502がフィルタ係数記憶部503に書き込む際に、これまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む。それにより、参照される可能性の低い動き補償フィルタ係数はフィルタ係数記憶部503に保持されず、頻繁に参照される可能性の高い動き補償フィルタ係数がフィルタ係数記憶部503に保持されることになる。その結果、メモリ509へのアクセス回数を減らすことが可能となる。このようにして、動き補償フィルタ係数に関するメモリ帯域の低減及びメモリアクセスレイテンシの低減が可能となる。
なお、上記において、フィルタ係数記憶部503が動き補償フィルタ係数IDの示す動き補償フィルタ係数を保持していない場合、フィルタ係数参照履歴管理テーブル601を参照することで、最も参照回数が少ない動き補償フィルタ係数を特定する。そして、フィルタ係数転送制御部502がメモリ509から動き補償フィルタ係数IDが示す動き補償フィルタ係数を読み出し、フィルタ係数記憶部503のこれまでに最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に書き込む場合を説明としたが、それに限らない。例えば最近最も使われていない動き補償フィルタ係数が記憶されている領域に書き込むとしてもよいし、最近最も使われている動き補償フィルタ係数が記憶されている領域に書き込むとしてもよいし、これまでに最も参照回数が多い動き補償フィルタ係数が記憶されている領域に書き込むとしてもよい。すなわち、メモリ109へのアクセスを低減させることができ、かつ、フィルタ係数記憶部103の容量も低減させることができる方法であればいずれを選択しても良い。
また、上記では、動き補償フィルタ係数IDは動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを動き補償フィルタIDとしても良い。
(実施の形態7)
図24は、本発明の実施の形態7における符号化装置の構成を示すブロック図である。図24において、図18と同じ構成要素については同じ符号を用い、説明を省略する。
図24に示す符号化装置700は、フィルタ係数生成部501、フィルタ係数転送制御部502、フィルタ係数記憶部503、参照画像転送制御部505、参照画像記憶部506、動き検出部507、減算器508、メモリ509、符号化部510、可逆符号化部701、及び、可逆復号部702を備える。ここで、図24に示す符号化装置700は、実施の形態5に係る符号化装置500に対して、フィルタ係数記憶状態管理テーブル504を備えず、可逆符号化部701及び可逆復号部702を備える点で構成が異なる。
可逆符号化部701は、複数の動き補償フィルタ係数を可逆符号化する。具体的には、可逆符号化部701は、フィルタ係数生成部501が生成した動き補償フィルタ係数を可逆符号化し、メモリ509に書き込む機能を有する。
可逆復号部702は、可逆符号化部701により可逆符号化された複数の動き補償フィルタ係数のうち、必要な動き補償フィルタ係数を可逆復号し、可逆復号した動き補償フィルタ係数を、フィルタ係数転送制御部502を介してフィルタ係数記憶部503に書き込む。具体的には、可逆復号部702は、メモリ509に格納された動き補償フィルタ係数を読み出して、可逆復号し、フィルタ係数転送制御部502を介してフィルタ係数記憶部503に書き込む機能を有する。なお、可逆復号部702は、フィルタ係数転送制御部502を介さずに、フィルタ係数記憶部503に書き込むとしてもよい。
次に、以上のように構成された符号化装置700の符号化処理動作について説明する。図25は、本発明の実施の形態7における符号化装置の符号化処理動作を示すフローチャートである。
図25に示すように、符号化装置700において、まず、符号化対象画像を受けたフィルタ係数生成部501は、以後の符号化に用いる動き補償フィルタ係数を生成し出力する(S701)。
次に、可逆符号化部701は、フィルタ係数生成部501が生成した動き補償フィルタ係数を可逆符号化する(S702)。
次に、フィルタ係数転送制御部502は、S702にて可逆符号化部701により可逆符号化された動き補償フィルタ係数をメモリ509に書き込む(S703)。
次に、符号化装置700は、符号化対象の画像(ブロック)について、S704での画面内予測と、S705〜S711での画面間予測との両方を実施する。画面内予測については、S503と同様に従来の方法を適用すればよいので説明を省略する。以下、S705〜S711での画面間予測の実施について説明する。なお、S705からS707の処理は、S504〜S506と同様のため説明を省略する。
次に、S707において、フィルタ係数転送制御部502は、メモリ509から動き補償フィルタ係数IDの示す、可逆符号化された動き補償フィルタ係数を読み出す(S708)。そして、可逆復号部702は、可逆符号化された動き補償フィルタ係数を可逆復号し、フィルタ係数記憶部503に書き込む(S709)。
次に、動き検出部507は、特定した動き補償フィルタ係数IDと決定した動きベクトルから、動き補償に利用する動き補償フィルタ係数をフィルタ係数記憶部503から読み出て設定する(S710)。そして、参照画像記憶部506が保持している参照画像を読み出して、動き補償処理を行って、予測画像生成し(S711)、減算器508へ出力する。
このように符号化装置700は、符号化対象の画像(ブロック)について、S704で画面内予測を実施し、S705〜S711で画面間予測を実施する。そして、符号化部510は、実施した画面内予測と画面間予測とから、画面間符号化する場合の符号化効率と画面内符号化する場合の符号化効率とのうち、どちらの符号化モードで符号化する方がより符号化効率が良くなるかを判定する。符号化部510は、符号化効率が良くなると判定した方の符号化モードを符号化対象の画像(ブロック)の符号化モード(マクロブロックタイプ)に決定する。
なお、以下のS713からS715の処理は、S513〜S515と同様のため説明を省略する。
以上のようにして、符号化装置700は符号化処理動作を行う。
以上、実施の形態7によれば、可逆符号化部701により動き補償フィルタ係数を圧縮することで、メモリ509へ格納する動き補償フィルタ係数のデータサイズを小さくすることができる。これにより、動き補償フィルタ係数に関するメモリ容量の低減が可能となる。
なお、図23に示す符号化装置700が、上述したフィルタ係数記憶状態管理テーブル504を少なくとも備え、フィルタ係数参照履歴管理テーブル601を備えるとしてもよい。その場合には、動き補償フィルタ係数に関するメモリ容量の削減だけでなく、上述したように、メモリ帯域の低減及びメモリアクセスレイテンシの低減も可能となり、さらに好ましい。
また、上記において、復号部101で一度動き補償フィルタ係数を復号し、可逆符号化部401で符号化しなおしてメモリ109に格納し、可逆復号部402で復号する場合を説明したが、それに限らない。例えば、符号化部510で符号化ストリーム内へ符号化した動き補償フィルタ係数部分をメモリ509に格納するとし、可逆復号部702で復号するとしても良い。
また、可逆符号化部701で利用する符号化アルゴリズムは、可逆で、かつ、入力サイズより出力サイズが小さくなるような符号化方法であれば如何なるものでもよい。
また、上記において、動き補償フィルタ係数IDは、動きベクトルとは異なるヘッダ情報として説明したが、それに限られない。例えば動きベクトルを動き補償フィルタ係数IDとしても良いし、動きベクトルとは異なるヘッダ情報だけでなく、動きベクトルを動き補償フィルタIDとしても良い。
以上のように、実施の形態1〜7によれば、可変係数動き補償画面間予測を行う際に使用するフィルタ係数のメモリ帯域の低減及びメモリアクセスレイテンシの低減を可能とする動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法を実現することができる。
なお、 実施の形態1〜7において、メモリ109、メモリ509、フィルタ係数記憶部103及びフィルタ係数記憶部503は、典型的にはDDRで構成されるが、必ずしもDDRで構成される必要はなく、SRAMで構成されていてもよいし、フリップフロップで構成されていても良い。つまり、記憶可能な素子で構成されていれば良い。その際、メモリ109及びメモリ509は、低速な記憶素子から構成され、フィルタ係数記憶部103及びフィルタ係数記憶部503は、高速な記憶素子で構成されるのが好ましい。
(実施の形態8)
上記各実施の形態で説明した動画像符号化装置、動画像復号装置、動画像符号化方法または動画像復号方法は、アプリケーションとしても応用できる。
例えば、上記各実施の形態で示した動画像符号化方法または動画像復号方法を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。なお、記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等のいずれでもよく、プログラムを記録できるものであればよい。
以下、上記各実施の形態で示した動画像符号化方法や動画像復号方法等の応用例とそれを用いたシステムを説明する。
図26は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。図26に示すコンテンツ供給システムex100において、通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex107〜ex110が設置されている。
コンテンツ供給システムex100では、インターネットex101にインターネットサービスプロバイダex102、電話網ex104及び基地局ex107〜ex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114及びゲーム機ex115などの各機器が接続される。
なお、コンテンツ供給システムex100は、図26のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、コンテンツ供給システムex100は、固定無線局である基地局ex107〜ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
例えば、カメラex113は、デジタルビデオカメラ等の動画撮影が可能な機器である。また、カメラex116は、デジタルカメラ等の静止画撮影、動画撮影が可能な機器である。
携帯電話ex114は、GSM(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband−Code Division Multiple Access)方式、若しくはLTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)を用いる携帯電話機またはPHS(Personal Handyphone System)であり、いずれでも構わない。
コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。
具体的には、ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記各実施の形態で説明した符号化処理を行い、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号処理して再生する。
なお、撮影したデータの符号化処理は、カメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、これらが互いに分担して行ってもよい。同様に、配信されたデータの復号処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。
また、カメラex113に限らず、カメラex116で撮影した静止画像データ及び/または動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
これら符号化・復号処理は、一般的にコンピュータex111や各機器が有するLSIex500において処理する。ここで、LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、動画像符号化・復号用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化・復号処理を行うとしてもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは、携帯電話ex114が有するLSIex500で符号化処理されたデータである。
また、ストリーミングサーバex103は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。
このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
なお、上記各実施の形態の少なくとも動画像符号化装置及び動画像復号装置のいずれかが組み込まれる例としてはコンテンツ供給システムex100の例に限られない。図27に示すように、デジタル放送用システムex200にも、組み込むとしてもよい。以下、それを用いて説明する。図27は、デジタル放送用システムex200の全体構成を示す図である。
具体的には、放送局ex201では、映像情報のビットストリームが電波を介して通信または放送衛星ex202に伝送される。このビットストリームは上記各実施の形態で説明した動画像符号化方法により符号化された符号化ビットストリームである。
放送衛星ex202は、これを受けて放送用の電波を発信する。
アンテナex204は、衛星放送の受信が可能な家庭のアンテナであり、放送衛星ex202からの放送用の電波を受信する。
テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置は、アンテナex204から受信した放送用の電波に含まれるビットストリームを、復号して再生する。
リーダ/レコーダex218は、DVD、BD等の記録メディアex215に記録された符号化ビットストリームを読み取って復号することが可能である。また記録メディアex215に映像信号を符号化して書き込むことが可能である。ここで、リーダ/レコーダex218は、上記各実施の形態で示した動画像復号装置または動画像符号化装置を実装する。その場合、リーダ/レコーダex218で再生された映像信号はモニタex219に表示され、符号化ビットストリームが記録された記録メディアex215により他の装置やシステムにおいて映像信号を再生することができる。
なお、セットトップボックスex217は、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続され、自装置内に動画像復号装置を実装し、これをテレビのモニタex219で表示するとしてもよい。また、セットトップボックスex217ではなく、テレビex300内に動画像復号装置を組み込んでもよい。
図28は、テレビex300の構成例を示すブロック図である。
テレビex300は、上記各実施の形態で説明した動画像復号方法及び動画像符号化方法を用いている。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像情報のビットストリームを取得、または出力するチューナex301と、受信した符号化データを復調する、または外部に送信する符号化データに変調する変調/復調部ex302と、復調した映像データ、音声データを分離する、または符号化された映像データ、音声データを多重化する多重/分離部ex303とを備える。また、テレビex300は、音声データ及び映像データそれぞれを復号する、またはそれぞれの情報を符号化する音声信号処理部ex304及び映像信号処理部ex305を有する信号処理部ex306と、復号した音声信号を出力するスピーカex307及び復号した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。
なお、インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313と、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314と、ハードディスク等の外部記録メディアと接続するためのドライバex315と、電話網と接続するモデムex316等とを有していてもよい。また、記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
続いて、まず、テレビex300がアンテナex204等により外部から取得したデータを復号し、再生する構成について説明する。
テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した映像データ、音声データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号し、分離した映像データを映像信号処理部ex305で上記各実施の形態で説明した復号方法を用いて復号する。復号した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。
なお、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から符号化された符号化ビットストリームを読み出してもよい。
次に、テレビex300が音声信号や映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。
テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。なお、バッファex318〜ex321は図示しているように複数備えていてもよいし、1つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302や多重/分離部ex303の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
また、テレビex300は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。
なお、ここではテレビex300は上記の符号化処理、多重化、及び外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号処理、外部出力のみが可能な構成であってもよい。
また、リーダ/レコーダex218で記録メディアから符号化ビットストリームを読み出す、または書き込む場合には、上記復号処理または符号化処理はテレビex300、リーダ/レコーダex218のいずれで行ってもよいし、テレビex300とリーダ/レコーダex218が互いに分担して行ってもよい。
一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を図29に示す。図29は、光ディスクである記録メディアに情報の読み書きを行う情報再生/記録部の構成例を示すブロック図である。
図29に示す情報再生/記録部ex400は、以下に説明する要素ex401〜ex407を備える。
光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。
変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。
再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。
バッファex404は、記録メディアex215に記録するための情報及び記録メディアex215から再生した情報を一時的に保持する。
ディスクモータex405は記録メディアex215を回転させる。
サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。
システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出しや書き込みの処理はシステム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成・追加を行うと共に、変調記録部ex402、再生復調部ex403、サーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
なお、上記では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
図30は、光ディスクである記録メディアの構造例を示す図である。図30には、光ディスクである記録メディアex215の模式図が示されている。
記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報は、データを記録する単位である記録ブロックex231の位置を特定するための情報を含む。記録や再生を行う装置において情報トラックex230を再生し、この番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。
情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した符号化データの読み書きを行う。
なお、上記では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりするなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
また、デジタル放送用システムex200において、アンテナex205を有する車ex210で放送衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば図28に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111や携帯電話ex114等でも考えられる。また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器・復号器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号器のみの受信端末という3通りの実装形式が考えられる。
このように、上記各実施の形態で示した動画像符号化方法あるいは動画像復号方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
(実施の形態9)
上記各実施の形態で示した動画像符号化方法及び装置、動画像復号方法及び装置は、典型的には集積回路であるLSIで実現される。一例として、図31に1チップ化されたLSIex500の構成を示す。ここで、図31は、各実施の形態の動画像符号化方法及び動画像復号方法を実現する集積回路の構成例を示すブロック図である。
LSIex500は、以下に説明する要素ex501〜ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503、ストリームコントローラex504等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117やカメラex113等からAV信号を入力する。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声信号の符号化及び/または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力されたビットストリームは、基地局ex107に向けて送信されたり、または記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
図32は、ここでの符号化処理を簡単に示すブロック図である。すなわち、図32は、集積回路で実現される各実施の形態の動画像符号化処理を示すブロック図である。図32に示すように、まず、入力信号と予測信号との差分である予測誤差信号は変換部ex601で変換され、量子化部ex602で量子化される。量子化係数はエントロピー符号化部ex606でエントロピー符号化され、符号化信号が出力される。この出力は、図28でテレビex300を例に挙げて説明したように、符号化された音声データと多重化するために一旦バッファex508やメモリex511に蓄積される構成であってもよい。逆量子化部ex604、逆変換部ex605、予測部ex608は、対象信号とそれ以前の信号から生成された予測信号の比較を可能とする遅延部として動作する。
なお、LSIex500上では、緩衝材として量子化係数を一端内部のバッファex508やメモリex511に蓄積するなど、処理のオーバフロー、アンダーフローがおきないように調整するとよい。量子化係数以外にも処理量や処理速度に応じて、データを複数に分けて並列に処理をし、内部や外部のメモリ等の記録部に処理中のデータを適宜蓄積しながら処理を調整するとよい。
以上の処理は制御部ex501の制御に基づいて行う。
また、例えば復号処理を行う場合には、LSIex500は、制御部ex501の制御に基づいて、ストリームI/Oex506によって基地局ex107を介して、または記録メディアex215から読み出して得た符号化データを一旦メモリex511等に蓄積する。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声データの復号及び/または映像データの復号が行われる。ここで映像信号の復号処理は上記各実施の形態で説明した復号処理である。さらに、場合により復号された音声信号と復号された映像信号を同期して再生できるようそれぞれの信号を一旦バッファex508等に蓄積するとよい。復号された出力信号はメモリex511等を適宜介しながら、携帯電話ex114、ゲーム機ex115、テレビex300等の各出力部から出力される。
図33は、ここでの復号処理を簡単に示すブロック図である。すなわち、図33は、集積回路で実現される各実施の形態の動画像復号処理を示すブロック図である。
図33に示すように、まず入力された符号化信号はエントロピー復号部ex701でエントロピー復号される。エントロピー復号により得た量子化係数は逆量子化部ex703で逆量子化され、逆変換部ex704で逆変換される。ここでの逆変換とは、復号処理における変換という意味であり、必ずしも符号化処理における変換の逆に限定されるものではない。復号変換入力は、予測信号を加えて復号信号として外部に出力される。メモリex511は、復号信号を蓄積し、後続の符号化信号の復号における参照を可能とする遅延部として動作する。予測部ex705は、メモリex511に蓄積された復号済みの復号信号に基づいて予測信号を生成する。外部への出力の際には図28でテレビex300を例に挙げて説明したように、復号された音声信号と同期して表示するために、一旦バッファex508や外部のメモリex511に蓄積される構成であってもよい。ここでも量子化係数をバッファex508やメモリex511に蓄積するなど、処理のオーバフロー、アンダーフローがおきないように、所定の処理単位に分割しながら並列に処理を行うとよい。以上の処理は制御部ex501の制御に基づいて行う。
なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も1つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
また、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSIまたはウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
以上のように、上記各実施の形態で説明した動画像符号化装置、動画像復号装置、動画像符号化方法または動画像復号方法は、アプリケーションとしても応用できる。
なお、実施の形態1において図1に示される復号装置100を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに復号回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
また、同様に、実施の形態2において図6に示される復号装置200を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに復号回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
また、同様に、実施の形態3において図9に示される復号装置300を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに復号回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
また、同様に、実施の形態4において図16に示される復号装置400を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに復号回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
また、同様に、実施の形態5において図18に示される符号化装置500を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに符号化回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
また、同様に、実施の形態6において図22に示される符号化装置600を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに符号化回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
また、同様に、実施の形態7において図24に示される符号化装置700を構成する各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらはさらに符号化回路、外部メモリのように個別にチップ化されても良いし、一部または全てを含むように1チップ化、つまり単一のLSI内に統合されたシステムとして実現されても良い。
また、実施の形態1〜7において、参照画像と動き補償フィルタ係数をメモリ109、または、メモリ509に格納するとしたが、参照画像と動き補償フィルタ係数は必ずしも同じメモリに格納されていなくても良い。
また、上述したように、実施の形態1〜7において、メモリ109、及び、メモリ509は、典型的にはDDRで構成されるが、必ずしもDDRで構成される必要はなく、SRAMで構成されていてもよいし、フリップフロップで構成されていても良い。つまり、記憶可能な素子で構成されていれば良い。
以上、本発明の動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
本発明は、動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法に利用でき、特に、携帯電話、DVD装置、BD装置、パソコン、テレビ電話、セットトップボックス、デジタルテレビ、自動車及びセキュリティシステムなど動画像を構成するピクチャを復号あるいは表示する機器において有用である。
101 復号部
102、502 フィルタ係数転送制御部
103、503 フィルタ係数記憶部
104、504 フィルタ係数記憶状態管理テーブル
105、505 参照画像転送制御部
106、506 参照画像記憶部
107 動き補償部
108 加算器
109、509 メモリ
201、601 フィルタ係数参照履歴管理テーブル
301 前復号部
302 フィルタ係数統計情報管理テーブル
401、701 可逆符号化部
402、702 可逆復号部
501 フィルタ係数生成部
507 動き検出部
508 減算器
510 符号化部
ex100 コンテンツ供給システム
ex101 インターネット
ex102 インターネットサービスプロバイダ
ex103 ストリーミングサーバ
ex104 電話網
ex106、ex107、ex108、ex109、ex110 基地局
ex111 コンピュータ
ex112 PDA
ex113 カメラ
ex114 携帯電話
ex115 ゲーム機
ex116 カメラ
ex117 マイク
ex200 デジタル放送用システム
ex201 放送局
ex202 放送衛星
ex203 ケーブル
ex204、ex205 アンテナ
ex210 車
ex211 カーナビゲーション
ex212 再生装置
ex213 モニタ
ex215、ex216 記録メディア
ex217 セットトップボックス
ex218 リーダ/レコーダ
ex219 モニタ
ex230 情報トラック
ex231 記録ブロック
ex232 内周領域
ex233 データ記録領域
ex234 外周領域
ex300 テレビ
ex301 チューナ
ex302 変調/復調部
ex303 多重/分離部
ex304 音声信号処理部
ex305 映像信号処理部
ex306 信号処理部
ex307 スピーカ
ex308 表示部
ex309 出力部
ex310 制御部
ex311 電源回路部
ex312 操作入力部
ex313 ブリッジ
ex314 スロット部
ex315 ドライバ
ex316 モデム
ex317 インタフェース部
ex318、ex319 バッファ
ex400 情報再生/記録部
ex401 光ヘッド
ex402 変調記録部
ex403 再生復調部
ex404 バッファ
ex405 ディスクモータ
ex406 サーボ制御部
ex407 システム制御部
ex500 LSI
ex501 制御部
ex502 CPU
ex503 メモリコントローラ
ex504 ストリームコントローラ
ex505 電源回路部
ex506 ストリームI/O
ex507 信号処理部
ex508 バッファ
ex509 AV I/O
ex510 バス
ex511 メモリ
ex601 変換部
ex602 量子化部
ex604 逆量子化部
ex605 逆変換部
ex606 エントロピー符号化部
ex608 予測部
ex701 エントロピー復号部
ex703 逆量子化部
ex704 逆変換部
ex705 予測部

Claims (21)

  1. 動画像が動き補償を用いて符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号装置であって、
    前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号部と、
    前記復号部により復号された前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数を保持するためのメモリと、
    前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、
    前記フィルタ係数記憶部に保持された一部の動き補償フィルタ係数を用いて動き補償を行う動き補償部と、
    前記復号部により復号された複数の動き補償フィルタ係数を前記メモリに書き出し、前記メモリから前記フィルタ係数記憶部に、前記一部の動き補償フィルタ係数を転送する転送制御部とを備える
    動画像復号装置。
  2. 前記転送制御部は、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に、前記一部の動き補償フィルタ係数を転送する
    請求項1に記載の動画像復号装置。
  3. 前記復号部は、前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数と、前記一部の動き補償フィルタ係数を特定する特定情報とを少なくとも復号し、
    前記動画像復号装置は、さらに、
    前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部が保持しているかどうかを示す情報を管理する記憶状態管理部を備え、
    前記転送制御部は、前記記憶状態管理部が管理する情報に基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
    請求項2に記載の動画像復号装置。
  4. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって前記メモリから最も古く転送された動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
    請求項3に記載の動画像復号装置。
  5. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部が保持していない場合のみ、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって前記メモリから最も新しく転送された動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
    請求項3に記載の動画像復号装置。
  6. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域をランダムに選択して、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから選択された前記領域に転送する
    請求項3に記載の動画像復号装置。
  7. 前記動画像復号装置は、さらに、
    前記符号化ストリームに含まれる複数の動き補償フィルタ係数毎の、復号開始から参照された回数を示す利用履歴情報を管理する参照管理部を備え、
    前記転送制御部は、前記記憶状態管理部が管理する情報と前記参照管理部が管理する情報とに基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
    請求項3に記載の動画像復号装置。
  8. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記参照管理部が管理する情報を参照して、前記メモリから前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を転送する
    請求項7に記載の動画像復号装置。
  9. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記参照管理部が管理する情報を参照して、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって現在から所定期間の過去に最も利用されていない動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
    請求項7に記載の動画像復号装置。
  10. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記参照管理部が管理する情報を参照して、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であって現在から所定期間の過去に最も利用されている動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
    請求項7に記載の動画像復号装置。
  11. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記参照管理部が管理する情報を参照して、前記フィルタ係数記憶部の動き補償フィルタ係数が記憶されている領域であってこれまでに最も参照回数が多い動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記メモリから転送する
    請求項7に記載の動画像復号装置。
  12. 前記復号部は、前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数と、前記一部の動き補償フィルタ係数を特定する前記特定情報とを復号し、
    前記動画像復号装置は、さらに、
    前記復号部よりも先行して前記符号化ストリームから、少なくとも前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数の一部を復号する前復号部と、
    前記特定情報によって特定された前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部が保持しているかどうかの情報を管理する記憶状態管理部と、
    前記前復号部により復号され、かつ、前記復号部によりこれから復号される前記動き補償フィルタ係数毎の利用状況を管理する統計情報管理部とを備え、
    前記転送制御部は、
    前記記憶状態管理部が管理する情報と前記統計情報管理部が管理する利用状況とに基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
    請求項2に記載の動画像復号装置。
  13. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記統計情報管理部が管理する利用状況を参照して、前記メモリから前記フィルタ係数記憶部の今後最も参照回数が少ない動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を転送する
    請求項12に記載の動画像復号装置。
  14. 前記転送制御部は、
    前記記憶状態管理部が管理する情報を参照して、前記フィルタ係数記憶部が前記特定情報によって特定された前記一部の動き補償フィルタ係数を保持していない場合のみ、前記統計情報管理部が管理する利用状況を参照して、前記メモリから前記フィルタ係数記憶部の今後の所定の期間参照回数が少ない動き補償フィルタ係数が記憶されている領域に、前記特定情報によって特定された前記一部の動き補償フィルタ係数を転送する
    請求項12に記載の動画像復号装置。
  15. 前記動画像復号装置は、さらに、
    前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数を可逆符号化する可逆符号化部と、
    前記可逆符号化部により可逆符号化された前記複数の動き補償フィルタ係数のうち、前記一部の動き補償フィルタ係数を可逆復号し、可逆復号した前記一部の動き補償フィルタ係数を前記転送制御部を介して前記フィルタ係数記憶部に書き込む可逆復号部とを備える
    請求項2〜14のいずれか1項に記載の動画像復号装置。
  16. 符号化対象画像と参照画像とを用いて、動き補償を伴う符号化である動き補償符号化を行う動画像符号化装置であって、
    前記動き補償符号化に利用される複数の動き補償フィルタ係数を生成する生成部と、
    前記生成部より生成された複数の動き補償フィルタ係数を保持するためのメモリと、
    前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、
    前記フィルタ係数記憶部に保持されている前記一部の動き補償フィルタ係数を用いて前記符号化対象画像と前記参照画像とから前記動き補償を行って予測画像を生成する動き検出部と、
    前記生成部により生成された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する転送制御部とを備える
    動画像符号化装置。
  17. 前記動き検出部は、少なくとも前記動き補償に用いる一部の動き補償フィルタ係数を特定する特定情報を生成し、
    前記動画像符号化装置は、さらに、
    前記フィルタ係数記憶部が前記特定情報により特定された前記一部の動き補償フィルタ係数を保持しているかどうかを示す情報を管理する記憶状態管理部を備え、
    前記転送制御部は、
    前記記憶状態管理部が管理する情報に基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
    請求項16に記載の動画像符号化装置。
  18. 前記動き検出部は、少なくとも前記動き補償に用いる一部の動き補償フィルタ係数を特定する特定情報を生成し、
    前記動画像符号化装置は、さらに、
    動き補償に利用する前記動き補償フィルタ係数毎の、前記動き補償の開始から参照された回数を示す利用履歴情報を管理する参照管理部と、
    前記特定情報により特定された前記一部の動き補償フィルタ係数を前記フィルタ係数記憶部が保持しているかどうかを示す情報を管理する記憶状態管理部とを備え、
    前記転送制御部は、
    前記参照管理部が管理する利用履歴情報と前記記憶状態管理部が管理する情報とに基づいて、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する
    請求項16に記載の動画像符号化装置。
  19. 前記動画像符号化装置は、さらに、
    前記複数の動き補償フィルタ係数を可逆符号化する可逆符号化部と、
    前記可逆符号化部により可逆符号化された複数の動き補償フィルタ係数のうち、前記一部の動き補償フィルタ係数を可逆復号し、可逆復号した前記一部の動き補償フィルタ係数を、前記転送制御部を介して前記フィルタ係数記憶部に書き込む可逆復号部とを備え、
    前記転送制御部は、前記可逆符号化された複数の動き補償フィルタ係数を前記メモリに書き出し、前記メモリから前記一部の動き補償フィルタ係数を読み出し、前記可逆復号部に転送する
    請求項16〜18のいずれか1項に記載の動画像符号化装置。
  20. 動き補償を用いて動画像が符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う集積回路であって、
    前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号部と、
    前記復号部により復号された前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数を保持するためのメモリと、
    前記メモリに保持されている複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数を保持するためのフィルタ係数記憶部と、
    前記フィルタ係数記憶部に保持された一部の動き補償フィルタ係数を用いて動き補償を行う動き補償部と、
    前記復号部により復号された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に前記一部の動き補償フィルタ係数を転送する転送制御部とを備える
    集積回路
  21. 動き補償を用いて動画像が符号化された符号化ストリームに対して動き補償を伴う動き補償復号を行う動画像復号方法であって、
    前記符号化ストリームから、動き補償復号に利用される複数の動き補償フィルタ係数を復号する復号ステップと、
    前記復号ステップにおいて復号された前記符号化ストリームに含まれる前記複数の動き補償フィルタ係数をメモリに保持するためのメモリ保持ステップと、
    前記メモリに保持されている前記複数の動き補償フィルタ係数のうち、前記動き補償を行うときに必要な一部の動き補償フィルタ係数をフィルタ係数記憶部に保持するためのフィルタ係数記憶ステップと、
    前記フィルタ係数記憶部に保持された一部の動き補償フィルタ係数を用いて動き補償を行う動き補償ステップと、
    前記復号ステップにおいて復号された複数の動き補償フィルタ係数を前記メモリに書き出し、前記フィルタ係数記憶部が前記動き補償を行うときに必要な前記一部の動き補償フィルタ係数を保持していない場合のみ、前記メモリから前記フィルタ係数記憶部に前記動き補償を行うときに必要な前記一部の動き補償フィルタ係数を転送する転送制御ステップとを含む
    動画像復号方法。
JP2011534438A 2010-03-09 2011-03-02 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法 Expired - Fee Related JP5659160B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011534438A JP5659160B2 (ja) 2010-03-09 2011-03-02 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2010052370 2010-03-09
JP2010052370 2010-03-09
PCT/JP2011/001234 WO2011111341A1 (ja) 2010-03-09 2011-03-02 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法
JP2011534438A JP5659160B2 (ja) 2010-03-09 2011-03-02 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014243458A Division JP2015080238A (ja) 2010-03-09 2014-12-01 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法

Publications (2)

Publication Number Publication Date
JPWO2011111341A1 JPWO2011111341A1 (ja) 2013-06-27
JP5659160B2 true JP5659160B2 (ja) 2015-01-28

Family

ID=44563177

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2011534438A Expired - Fee Related JP5659160B2 (ja) 2010-03-09 2011-03-02 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法
JP2014243458A Pending JP2015080238A (ja) 2010-03-09 2014-12-01 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2014243458A Pending JP2015080238A (ja) 2010-03-09 2014-12-01 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法

Country Status (4)

Country Link
US (2) US8995530B2 (ja)
JP (2) JP5659160B2 (ja)
CN (1) CN102349299B (ja)
WO (1) WO2011111341A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9154807B2 (en) 2010-06-25 2015-10-06 Qualcomm Incorporated Inclusion of switched interpolation filter coefficients in a compressed bit-stream
JP5570363B2 (ja) * 2010-09-22 2014-08-13 Kddi株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
WO2012137890A1 (ja) * 2011-04-05 2012-10-11 シャープ株式会社 画像フィルタ装置、復号装置、符号化装置、および、データ構造
JP5798375B2 (ja) 2011-05-19 2015-10-21 株式会社トプコン 全周カメラ
US10051289B2 (en) 2011-11-04 2018-08-14 Qualcomm Incorporated Adaptive center band offset filter for video coding
WO2013105458A1 (ja) * 2012-01-12 2013-07-18 ソニー株式会社 画像処理装置および方法
WO2013105457A1 (ja) * 2012-01-12 2013-07-18 ソニー株式会社 画像処理装置および方法
JP6058963B2 (ja) 2012-10-02 2017-01-11 株式会社トプコン 全周カメラ
CN105165011A (zh) * 2013-02-25 2015-12-16 三星电子株式会社 用于考虑存储器带宽和计算量的可伸缩视频编码的装置和方法以及用于可伸缩视频解码的装置和方法
KR101980537B1 (ko) * 2013-07-11 2019-05-22 삼성전자주식회사 영상 처리 유닛, 초음파 영상 장치 및 영상 처리 방법
JP6680633B2 (ja) * 2016-06-27 2020-04-15 日本電信電話株式会社 映像フィルタリング方法、映像フィルタリング装置及び映像フィルタリングプログラム
CN108974488B (zh) * 2018-08-31 2020-08-04 杭州当虹科技股份有限公司 一种动态批量图文包装***及使用方法
RU2767973C1 (ru) 2019-03-08 2022-03-22 ДжейВиСиКЕНВУД Корпорейшн Устройство для кодирования видео, способ кодирования видео, устройство для декодирования видео и способ декодирования видео
CN114222118B (zh) * 2021-12-17 2023-12-12 北京达佳互联信息技术有限公司 编码方法及装置、解码方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004147328A (ja) * 2002-10-22 2004-05-20 Docomo Communications Laboratories Usa Inc 動き補償予測を用いたビデオ符号化のための適応補間フィルタシステム
JP2004165785A (ja) * 2002-11-11 2004-06-10 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラムおよびそのプログラムを記録した記録媒体
WO2008069073A1 (ja) * 2006-11-30 2008-06-12 Ntt Docomo, Inc. 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号化装置、動画像復号化方法及び動画像復号化プログラム
WO2009047917A1 (ja) * 2007-10-11 2009-04-16 Panasonic Corporation 映像符号化方法及び映像復号方法
WO2009126911A1 (en) * 2008-04-10 2009-10-15 Qualcomm Incorporated Prediction techniques for interpolation in video coding
JP2009296154A (ja) * 2008-06-03 2009-12-17 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号化装置、動画像復号化方法及び動画像復号化プログラム
WO2010038858A1 (ja) * 2008-10-03 2010-04-08 ソニー株式会社 画像処理装置および方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06260889A (ja) 1993-03-05 1994-09-16 Sony Corp フィルタ回路
JP3551666B2 (ja) * 1996-03-06 2004-08-11 ソニー株式会社 動画像符号化方法及び動画像符号化装置
US6754371B1 (en) 1999-12-07 2004-06-22 Sony Corporation Method and apparatus for past and future motion classification
KR100929078B1 (ko) 2001-11-29 2009-11-30 파나소닉 주식회사 코딩 왜곡 제거 방법
CA2435757C (en) 2001-11-29 2013-03-19 Matsushita Electric Industrial Co., Ltd. Video coding distortion removal method and apparatus using a filter
KR100973909B1 (ko) * 2001-11-29 2010-08-03 파나소닉 주식회사 코딩 왜곡 제거 반도체
JP4436782B2 (ja) 2004-05-14 2010-03-24 パナソニック株式会社 動き補償装置
US7881376B2 (en) * 2004-05-14 2011-02-01 Panasonic Corporation Motion compensation apparatus
US8411749B1 (en) * 2008-10-07 2013-04-02 Zenverge, Inc. Optimized motion compensation and motion estimation for video coding

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004147328A (ja) * 2002-10-22 2004-05-20 Docomo Communications Laboratories Usa Inc 動き補償予測を用いたビデオ符号化のための適応補間フィルタシステム
JP2004165785A (ja) * 2002-11-11 2004-06-10 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラムおよびそのプログラムを記録した記録媒体
WO2008069073A1 (ja) * 2006-11-30 2008-06-12 Ntt Docomo, Inc. 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号化装置、動画像復号化方法及び動画像復号化プログラム
WO2009047917A1 (ja) * 2007-10-11 2009-04-16 Panasonic Corporation 映像符号化方法及び映像復号方法
WO2009126911A1 (en) * 2008-04-10 2009-10-15 Qualcomm Incorporated Prediction techniques for interpolation in video coding
JP2009296154A (ja) * 2008-06-03 2009-12-17 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号化装置、動画像復号化方法及び動画像復号化プログラム
WO2010038858A1 (ja) * 2008-10-03 2010-04-08 ソニー株式会社 画像処理装置および方法

Also Published As

Publication number Publication date
US20120147959A1 (en) 2012-06-14
JP2015080238A (ja) 2015-04-23
WO2011111341A1 (ja) 2011-09-15
JPWO2011111341A1 (ja) 2013-06-27
CN102349299B (zh) 2015-10-21
US8995530B2 (en) 2015-03-31
US20150172723A1 (en) 2015-06-18
US9641868B2 (en) 2017-05-02
CN102349299A (zh) 2012-02-08

Similar Documents

Publication Publication Date Title
JP5659160B2 (ja) 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法
JP5518069B2 (ja) 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法、プログラムおよび集積回路
JP5485983B2 (ja) 動画像符号化方法、動画像復号方法、動画像符号化装置および動画像復号装置
JP6531924B2 (ja) 動画像復号方法及び動画像復号装置
JP5588438B2 (ja) 画像符号化方法及び画像符号化装置
JP6504478B2 (ja) 符号化復号方法
JP5548294B2 (ja) 画像復号化方法および画像復号化装置
WO2010087157A1 (ja) 画像符号化方法及び画像復号方法
WO2010143427A1 (ja) 画像符号化方法、画像復号方法、およびそれらの装置
WO2014050030A1 (ja) 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
JPWO2010026770A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、システム、プログラム、及び集積回路
JPWO2010109904A1 (ja) 符号化方法、エラー検出方法、復号方法、符号化装置、エラー検出装置及び復号装置
JPWO2010061607A1 (ja) 動画像復号方法、動画像符号化方法、動画像復号装置、動画像符号化装置、プログラム、及び集積回路
JP6587046B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
KR102130046B1 (ko) 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
JP5546044B2 (ja) 画像復号装置、画像符号化装置、画像復号回路及び画像復号方法
WO2012114711A1 (ja) 画像符号化方法および画像復号方法
JP5468604B2 (ja) 画像復号装置、集積回路、画像復号方法及び画像復号システム
WO2015004884A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
KR102142014B1 (ko) 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 장치, 동화상 복호 장치, 및 동화상 부호화 복호 장치
JP2011182132A (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、集積回路およびプログラム
WO2012095930A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140902

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20141008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141014

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141201

R150 Certificate of patent or registration of utility model

Ref document number: 5659160

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees