JP4251291B2 - 動画像符号化装置、動画像符号化方法 - Google Patents

動画像符号化装置、動画像符号化方法 Download PDF

Info

Publication number
JP4251291B2
JP4251291B2 JP2004370808A JP2004370808A JP4251291B2 JP 4251291 B2 JP4251291 B2 JP 4251291B2 JP 2004370808 A JP2004370808 A JP 2004370808A JP 2004370808 A JP2004370808 A JP 2004370808A JP 4251291 B2 JP4251291 B2 JP 4251291B2
Authority
JP
Japan
Prior art keywords
image
frame
unit
information
component
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
JP2004370808A
Other languages
English (en)
Other versions
JP2006180173A (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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan 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 Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2004370808A priority Critical patent/JP4251291B2/ja
Publication of JP2006180173A publication Critical patent/JP2006180173A/ja
Application granted granted Critical
Publication of JP4251291B2 publication Critical patent/JP4251291B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、動画像に対して符号化を行う際に、動画像の時間方向に存在するフレーム間に対して動き補償を行うとともに、フレーム間のサブバンド分割を行う、動き補償時間方向フィルタ処理を行う動画像符号化装置、動画像符号化方法に関する。
最近になり、BSデジタル放送や地上波ディジタル放送などで圧縮符号化された動画像信号が放送されるようになってきた。日本の地上波ディジタル放送の場合は、車載などの移動用と家庭などで行われる固定受信用の放送をセグメント分割されたOFDM(Orthogonal Frequency Division Multiplexing)により送信している。固定受信ではHDTV(High Definition TV)画質により、移動受信では強力な誤り訂正能力により安定度の高い画像が受信できている。
現在の放送に用いられる動画像符号化はMPEG(moving picture experts group)−2によ圧縮符号化されており、最近になりMPEG−4 AVC(Advanced Video Coding)とか、H.264と呼ばれる圧縮符号化方式の採用も検討されている。MPEG−4 AVCでは複数の参照フレームを持つことにより参照フレームの選択に自由度を持たせている。固定フレームレート信号の符号化方式として符号化効率の向上を図っている。
特許文献1や特許文献2には、可変フレームレートで符号化する方式として3次元DCT(discrete cosine transform)や3次元waveletなどに代表されるように、動き補償予測を行いつつ、時間方向の直交変換を行う符号化方式の開示がなされている。
さらに、特許文献3、非特許文献1、及び非特許文献2には、従来の構成とは異なる構成によってフレーム間の符号化を行う動き補償時間方向フィルタ処理(以降、MCTF;Motion Compensated Temporal Filtering)という方法が開示されている。そのMCTFは、複数のフレームによって構成されたGOP(Group of Picture)を単位として処理を行い、そのGOPに対してフレーム間の動き補償、およびフレーム間のサブバンド分割を行うことにより、より効率的な符号化を行おうとしている。
特開平6−141301号公報 特開平6−217291号公報 特表2003−504987号公報 J.-R. Ohm,"Advanced packet-video coding based on layered VQ and SBC techniques"IEEE Trans. Circuits Syst. Video Technol.,VOL.3, JUNE 1993 Seung-Jong Choi , W.Woods,"Motion-Compensated 3-D Subband Coding of Video"IEEE TRANSACTIONS ON IMAGE PROCESSINGVOL.8, NO.2, FEBRUARY 1999
しかしながら、従来法による動き補償時間方向フィルタ処理では、2N番目のフレーム(Nは自然数、以降、2Nフレーム)と、2N+1番目のフレーム(以降、2N+1フレーム)の2フレームを単位として動き推定(以降、ME)や動き補償(以降、MC)を行っている。2Nフレーム内の画素を利用して2N+1フレームの予測フレームとなるようにMEやMCを行うことでMC画像を得る。得られたMC画像と2N+1フレームとの間でフレーム間のサブバンド分割を行う。その後、逆MC及び非結合領域に対する補間処理を行って得られるL(低域)成分フレームに対して、所定のフレーム間サブバンド分割数になるまでMCTF処理を繰り返している。
時間方向のスケーラビリティ(階層化)という点で考えると、MCTF後のL成分フレームを再生動画像として利用することで、MCTFのサブバンド分割の階層が上がるたびに、フレームレートを1/2、1/4、1/8などのように、フレーム間に対して再帰的に2:1ずつ等間隔にデシメーションした結果が得られることになる。例えば、入力された動画像が等間隔の30fps(frames per second:毎秒フレーム数)であるとすると、MCTFのフレーム間サブバンド符号化が1階層進む度に半分のフレームレート、つまり15fps、7.5fpsなどのL成分フレームのフレームレートの画像が得られる。MCTF後のL成分フレームを再生動画像として用いることで、時間方向のスケーラビリティを得ることができる。
しかしながら、従来法におけるMCTFを用いて時間方向のスケーラビリティを実現する場合では、フレームレートを落としていく段階の初期であっても、フレーム間隔が規則的に等間隔とされるデシメーションによっており、視聴上重要な動画像情報を含むフレーム画像が欠落してしまうといった問題が生じる。
また、従来法でのMCTFでは、上記と同様に本来は重要である画像フレームがデシメーションにより次のMCTFで用いられない場合があり、符号化効率の面でもGOP内のフレーム間の相関を十分活かしきれていなく、効率的な符号化がなされていなかった。
そこで、本発明は、上記のような問題点を解消するためになされたもので、動き補償時間方向フィルタ処理を行うに際し、過去のフレーム画像及び未来のフレーム画像に注目することにより、低い周波数のフレームレートに変換された低域成分及び高域成分の画像のうち、低域成分の画像の方に、視覚上必要とされる画像成分を残すようにした、圧縮符号化効率の高いサブバンド符号化出力が得られる動画像符号化装置、動画像符号化方法、動画像復号化装置及び動画像復号化方法を提供することを目的とする。
本願発明における第1の発明は、高速レートで伝送されてくる動画像を低速レート伝送が可能なように圧縮を行う動画像符号化装置において、
前記動画像を並列出力する並列入力部と、
前記並列出力された前記動画像のうちの1つのフレームを第1参照画像、前記第1参照画像の直後の1フレームを第1ターゲット画像とした場合に、前記第1参照画像から前記第1ターゲット画像の動きを推定して順方向の動きベクトル情報を取得する順方向動き推定部と、
前記第1参照画像と前記第1ターゲット画像を入れ替えて、前記第1参照画像を第2ターゲット画像とし、前記第1ターゲット画像を第2参照画像とした場合に、前記第2参照画像から前記第2ターゲット画像の動きを推定して逆方向の動きベクトル情報を取得する逆方向動き推定部と、
前記順方向の動きベクトル情報に基づいて、前記第1参照画像と前記第1ターゲット画像間の動きを補償するための順方向動き補償画像を得る順方向動き補償部と、
前記逆方向の動きベクトル情報に基づいて、前記第2参照画像と前記第2ターゲット画像の動きを補償するための逆方向動き補償画像を得る逆方向動き補償部と、
前記順方向動き補償部で得られた前記順方向動き補償画像と前記第1ターゲット画像との類似度と、前記逆方向動き補償部で得られた前記逆方向動き補償画像と前記第2ターゲット画像との類似度を比較し、前記類似度が高い方はいずれであるかを判定する類似度判定部と、
前記類似度判定部で前記類似度が高いと判定された方の前記順方向動き補償部或いは前記逆方向動き補償部に切り替える切り替え部と、
前記切り替え部で切り替えられた前記順方向動き補償部或いは前記逆方向動き補償部から出力される前記順方向動き補償画像と前記第1ターゲット画像或いは前記逆方向動き補償画像と前記第2ターゲット画像とを加算して前記動画像よりも低レートな圧縮画像を得る一方、前記第1或いは第2参照画像と前記圧縮画像とを減算して前記圧縮画像から前記第1参照画像と前記第1ターゲット画像或いは前記第2参照画像と前記第2ターゲット画像に復元する復元用補助画像を得るフレーム間サブバンド符号化部と、を有することを特徴とする動画像符号化装置を提供する。
第2の発明は、高速レートで伝送されてくる動画像を低速レート伝送が可能なように圧縮を行う動画像符号化方法において、前記動画像を並列出力し、並列出力された前記動画像のうちの1つのフレームを第1参照画像、前記第1参照画像の直後の1フレームを第1ターゲット画像とした場合に、前記第1参照画像から前記第1ターゲット画像の動きを推定して順方向の動きベクトル情報を取得する一方、前記第1参照画像と前記第1ターゲット画像を入れ替えて、前記第1参照画像を第2ターゲット画像とし、前記第1ターゲット画像を第2参照画像とした場合に、前記第2参照画像から前記第2ターゲット画像の動きを推定して逆方向の動きベクトル情報を取得し、前記順方向の動きベクトル情報に基づいて、前記第1参照画像と前記第1ターゲット画像間の動きを補償するための順方向動き補償画像を得ると共に、前記逆方向の動きベクトル情報に基づいて、前記第2参照画像と前記第2ターゲット画像の動きを補償するための逆方向動き補償画像を得、前記順方向動き補償画像と前記第1ターゲット画像との類似度と、前記逆方向動き補償部で得られた前記逆方向動き補償画像と前記第2ターゲット画像との類似度を比較し、前記類似度が高い方はいずれであるかを判定し、前記類似度が高いと判定された方の前記順方向動き補償部或いは前記逆方向動き補償部に切り替え、切り替えられて得られる前記順方向動き補償部或いは前記逆方向動き補償部から出力される、前記順方向動き補償画像と前記第1ターゲット画像或いは前記逆方向動き補償画像と前記第2ターゲット画像とを加算して前記動画像よりも低レートな圧縮画像を得る一方、前記第1或いは第2参照画像と前記圧縮画像とを減算して前記圧縮画像から前記第1参照画像と前記第1ターゲット画像或いは前記第2参照画像と前記第2ターゲット画像に復元する復元用補助画像を得ることを特徴とする動画像符号化方法を提供する。
本発明によれば、動画像を並列出力する並列入力部と、前記並列出力された前記動画像のうちの1つのフレームを第1参照画像、前記第1参照画像の直後の1フレームを第1ターゲット画像とした場合に、前記第1参照画像から前記第1ターゲット画像の動きを推定して順方向の動きベクトル情報を取得する順方向動き推定部と、前記第1参照画像と前記第1ターゲット画像を入れ替えて、前記第1参照画像を第2ターゲット画像とし、前記第1ターゲット画像を第2参照画像とした場合に、前記第2参照画像から前記第2ターゲット画像の動きを推定して逆方向の動きベクトル情報を取得する逆方向動き推定部と、前記順方向の動きベクトル情報に基づいて、前記第1参照画像と前記第1ターゲット画像間の動きを補償するための順方向動き補償画像を得る順方向動き補償部と、前記逆方向の動きベクトル情報に基づいて、前記第2参照画像と前記第2ターゲット画像の動きを補償するための逆方向動き補償画像を得る逆方向動き補償部と、前記順方向動き補償部で得られた前記順方向動き補償画像と前記第1ターゲット画像との類似度と、前記逆方向動き補償部で得られた前記逆方向動き補償画像と前記第2ターゲット画像との類似度を比較し、前記類似度が高い方はいずれであるかを判定する類似度判定部と、前記類似度判定部で前記類似度が高いと判定された方の前記順方向動き補償部或いは前記逆方向動き補償部に切り替える切り替え部と、前記切り替え部で切り替えられた前記順方向動き補償部或いは前記逆方向動き補償部から出力される前記順方向動き補償画像と前記第1ターゲット画像或いは前記逆方向動き補償画像と前記第2ターゲット画像とを加算して前記動画像よりも低レートな圧縮画像を得る一方、前記第1或いは第2参照画像と前記圧縮画像とを減算して前記圧縮画像から前記第1参照画像と前記第1ターゲット画像或いは前記第2参照画像と前記第2ターゲット画像に復元する復元用補助画像を得るフレーム間サブバンド符号化部とを有する格別な構成があるので、動き補償時間方向フィルタ処理を行うに際し、過去のフレーム画像及び未来のフレーム画像に注目することにより、低い周波数のフレームレートに変換された低域成分及び高域成分の画像のうち、低域成分の画像の方に、視覚上必要とされる画像成分を残すようにした、圧縮符号化効率の高いサブバンド符号化出力が得られる動画像符号化装置及び動画像符号化方法を実現できる。
以下に本発明の動画像符号化装置、動画像符号化方法、動画像復号化装置及び動画像復号化方法の実施例に係る動画像符号化装置について図1〜図5を用いて概説する。
図1は、本発明の実施に係る動画像符号化装置の構成例を示すブロック図である。
図2は、本発明の実施に係る動画像符号化装置の符号化の流れを示す図である。
図3は、本発明の実施に係る動画像符号化装置の符号化の方法を示す図である。
図4は、本発明の実施に係る動画像符号化装置の符号化方法の説明図である。
図5は、本発明の実施に係る動画像符号化装置の符号化方法の説明図である。
その動画像符号化装置は動き補償時間方向フィルタ処理を行うに際し、過去のフレーム画像及び未来のフレーム画像に注目することにより、低い周波数のフレームレートに変換された低域成分及び高域成分の画像のうち、低域成分の画像の方に、視覚上必要とされる画像成分を残すようにした、圧縮符号化効率の高いサブバンド符号化出力が得られる動画像符号化装置を実現するという目的を、動画像を並列出力する並列入力部と、前記並列出力された前記動画像のうちの1つのフレームを第1参照画像、前記第1参照画像の直後の1フレームを第1ターゲット画像とした場合に、前記第1参照画像から前記第1ターゲット画像の動きを推定して順方向の動きベクトル情報を取得する順方向動き推定部と、前記第1参照画像と前記第1ターゲット画像を入れ替えて、前記第1参照画像を第2ターゲット画像とし、前記第1ターゲット画像を第2参照画像とした場合に、前記第2参照画像から前記第2ターゲット画像の動きを推定して逆方向の動きベクトル情報を取得する逆方向動き推定部と、前記順方向の動きベクトル情報に基づいて、前記第1参照画像と前記第1ターゲット画像間の動きを補償するための順方向動き補償画像を得る順方向動き補償部と、前記逆方向の動きベクトル情報に基づいて、前記第2参照画像と前記第2ターゲット画像の動きを補償するための逆方向動き補償画像を得る逆方向動き補償部と、前記順方向動き補償部で得られた前記順方向動き補償画像と前記第1ターゲット画像との類似度と、前記逆方向動き補償部で得られた前記逆方向動き補償画像と前記第2ターゲット画像との類似度を比較し、前記類似度が高い方はいずれであるかを判定する類似度判定部と、前記類似度判定部で前記類似度が高いと判定された方の前記順方向動き補償部或いは前記逆方向動き補償部に切り替える切り替え部と、前記切り替え部で切り替えられた前記順方向動き補償部或いは前記逆方向動き補償部から出力される前記順方向動き補償画像と前記第1ターゲット画像或いは前記逆方向動き補償画像と前記第2ターゲット画像とを加算して前記動画像よりも低レートな圧縮画像を得る一方、前記第1或いは第2参照画像と前記圧縮画像とを減算して前記圧縮画像から前記第1参照画像と前記第1ターゲット画像或いは前記第2参照画像と前記第2ターゲット画像に復元する復元用補助画像を得るフレーム間サブバンド符号化部とを有するようにして実現した。
動画像符号化装置の構成について述べる。
図1に示す動画像符号化装置1は、入力管理部12、順方向動き推定部13、逆方向動き推定部14、順方向動き補償部15、逆方向動き補償部16、類似度判定部17、スイッチ18、スイッチ19、フレーム間サブバンド符号化部21、量子化部25、エントロピ符号化部26、及び多重化部27より構成される。入力管理部12には動画像が入力される。多重化部27からは符号化信号が出力される。
動画像符号化装置1の動作について述べる。
まず、入力管理部に入力された動画像は、そこでGOP(Group of Picture)が構成される。ここでは、説明を平易にするために1GOPが8フレームごとの画像に分割される場合について述べる。分割されたフレーム画の入力された順に0〜7の番号が付される。順方向動き推定部13により番号が0番と1番の画像データが取得される。そこでは、0番の画像を参照画像、1番の画像をターゲット画像とし参照画像からターゲット画像を予測するための動きベクトルが検出される。動きベクトルの検出はMPEGなどで行われている動ベクトルの検出方法と同様に行われる。次に、順方向動き補償部15により、0番の画像、1番の画像、及び検出された動きベクトルが取得される。そこでは、検出された動ベクトルを基に動き補償画像が生成される。
逆方向動き推定部14及び逆方向動き補償部16では順方向動き推定部13及び順方向動き補償部15でなされたと同様の動作がなされる。ただし、逆方向動き推定部14及び逆方向動き補償部16での動作は順方向動き推定部13及び順方向動き補償部15での動作に比して、0番の画像がターゲット画像とされ、1番の画像が参照画像とされる点で異なっている。即ち、順方向動き補償部15では順方向動き補償画像が生成されるのに比し、
逆方向動き補償部16では未来の画像を基にして過去の画像が生成されるいわゆる逆方向動き補償画像が生成される。
類似度判定部17では、順方向動き補償部15で生成された動き補償画像と1番のターゲット画像の類似度と、逆方向動き補償部16で生成された動き補償画像と0番のターゲット画像との類似度が比較され、どちらの動き補償部で生成された動き補償画像の方が類似しているかが判定される。判定の方法は、例えば動き補償画像とターゲット画像とのピクセルごとの平均二乗誤差を求め、比較して誤差の少ない方を類似度が高いとして判定する。類似度判定部17でなされた判定結果を基に、スイッチ19は類似度が高い動き画像が得られる方の端子に切り換えられる。
フレーム間サブバンド符号化部21では、スイッチ19を介して参照画像、タ−ゲット画像及び動き補償画像が得られる。入力されるタ−ゲット画像と動き補償画像とが加算されて低域成分画像が生成される。参照画像から低域成分画像が減算されて高域成分画像が生成される。
量子化部25では低域成分画像及び高域成分画像のそれぞれが量子化され、量子化データが得られる。エントロピ符号化部26では量子化データに含まれる冗長度が削減される。視覚上冗長であるとされる符号化データも削減される。
エントロピ符号化部26には順方向動き推定部13で得られた動きベクトル、又は逆方向動き推定部14で得られた動きベクトルのうち、類似度判定部17で類似するとして判定された方の動きベクトルがスイッチ18で切り換えられて入力されて、符号化される。多重化部27では、符号化された低域成分画像、高域成分画像、及び動きベクトルは時分割多重され符号化信号として生成されて出力される。
次に、2番の画像を参照画像、3番の画像をターゲット画像として動き補償画像を求め、及び2番の画像をターゲット画像、3番の画像を参照画像として動き補償画像を求め上記と同様に類似度の判定を行い生成された符号化信号を生成する。同様に4〜5番、及び6〜7番のそれぞれのペアの画像について符号化信号を生成する。
図2を参照して符号化データの階層化について述べる。
同図の(1)において、0番の画像と1番の画像から生成された低域成分画像(以降、L画像と記述することがある。)をL10とし、0番の画像と1番の画像から生成された高域成分画像(以降、H画像と記述することがある。)をH14として表している。2番及び3番の画像よりL11とH15が生成される。同様に、L12、H16、L13、及びH17が生成される。ここで生成されたL10〜L13及びH14〜H17は階層化が1次の画像データである。
L10及びL11を動画像符号化装置1に入力してLL20とLH22を生成できる。L12及びL13からLL21とLH23を生成できる。ここで生成されたデータは2次の階層化画像データである。
生成された2次の階層化画像データを動画像符号化装置1に入力して、LLL30及びLLH31である3次の階層化画像データを生成できる。
図2の(2)に、1次から3次の階層化画像データの伝送方法を示す。
それぞれがパケット構造とされる符号化信号はLLL30、LLH31、LH22、LH23、H14、H15、H16、そしてH17の順に伝送される。ここで、LLL30はフレームレートが1/8の画像信号である。LLL30は特に強力な誤り訂正符号が付されて伝送される。車載などの移動用受信装置はLLL30を受信する。高速に伝播状態の変化する劣悪な伝送路で送信される信号でありながら、伝送レートが低く、且つ強力な誤り訂正符号の付されるデータは正常な受信が可能である。毎秒3.75(30/23)枚の画像で受像される。
一方、家庭に設置される固定の受信装置は伝送されるLLL30〜H17の全ての信号を受信する。画像データH14〜H17には標準的な誤り訂正符号が付され、通常の伝送レートで送信される。地上高を有する固定アンテナにより安定した受信がなされる。
LLL30〜H17の信号を受信した受信機では、LLL30とLLH31を用いてLL20とLL21を復号化する。復号化されたLL20及びLL21と、受信して得られるLH22及びLH23を用いてL10〜L13を復号化する。それに受信されるH14〜H17を用いて画像0〜画像7を復号化する。固定受信においてフレームレートが毎秒30枚の画像で受像される。
図3を参照して順方向及び逆方向の、動き推定部及び動き補償部について説明する。
同図に示す(1)は時間的に過去の方の画像Aを参照画像とし、未来方向の画像Bをターゲット画像として行う順方向動き推定部13及び順方向動き補償部15での動作時間関係を示している。(2)は逆方向動き推定部14及び逆方向動き補償部16での動作の時間関係を示している。順方向及び逆方向の動き予測及び動き補償を行うことにより得られるそれぞれのL画像及びH画像は画面を構成する小画像の動き方により変わる場合と変わらない場合とがある。
図4を参照して参照画像とターゲット画像について説明する。
同図において、画像0が(1a)に示す円が左側にある画像で、画像1が(1b)に示す円が右側にある画像である。L画像は画面(1a)の画像と画面(1b)の画像とを加算して生成する。このままで加算すると円が2つ並んだL画像が得られる。通常の画像の場合では輪郭のぼけた画像となり、好ましくない。そこで(1a)の円を(1b)と重なる位置まで右に移動する。そのときの移動量が動きベクトルであり、動かして生成される画像が動き補償画像である。動き補償画像と(1b)の画像を加算すると劣化の無い画像がL画像として得られる。H画像は参照画像からL画像を減じた画像である。順方向動き予測と動き補償された画像を用いてL画像及びH画像を得るサブバンド符号化がなされた例である。
この動作は(1a)をターゲット画像、(1b)を参照画像とする場合であっても同様にして重なりの無いL画像が得られる。
画像0が(2a)で、画像1が(2b)である場合について述べる。
ここで四角形は両者とも同じ位置にある。四角形の背後にある黒色の三角形は移動している。この場合の四角形の動きベクトルは0であり、三角形の動きベクトルのみが変化する。しかし、動ベクトルの検出としては三角形が移動していると検出されるよりは、新たな黒い三角形が表れているとして検出される。(2a)には小面積の三角形しかなく、それにより大面積の三角形の動き予測を行うことは出来ない。従って、正確な動きベクトルを求めることは出来なく好適な動き補償画像を生成できない。(2a)を参照画像とする場合はターゲット画像(2b)に対する動き補償画像の作成が困難である。
(2b)を参照画像とし、(2a)をターゲット画像とする場合は、(2b)の黒い三角形の一部を用いてターゲット画像(2a)に対する動き補償画像の作成が可能である。即ち、画面上に周囲と異なるテクスチャの画像が出現する場合には、異なるテクスチャの情報を多く有する画像の方を参照画像に選定した方が動き補償画像の作成が容易である。
(3a)はズームアウトしている画像に対し、過去の画像を参照画像として動き補償画像を生成するときに用いられる、ターゲット画像(3b)を予測するために用いられた参照画像の位置を示したものである。(4b)は未来の画像を参照画像とし、過去の(4a)に示す画像をターゲット画像として動き補償画像を生成するときの参照画像の位置を示している。ここで、(3a)及び(4b)において参照されなかった画像の位置を網点で示している。この場合に生成されるH画像の情報量は、網点部分が少ない方を参照画像とした方が少なくなる傾向にある。L画像に多くの情報が取り込まれたことになる。
図5を参照して参照画像とターゲット画像の位置の好ましい関係について更に述べる。
ここで、画像0が(4a)で、画像1が(4b)であるとする。
(5a)は、画像(4a)を参照画像とし、ターゲット画像(4b)に対する動き補償画像を生成するときに用いられる参照画像部分はクロス線で示される領域である。(6a)はその結果得られる動き補償画像である。左下がりの斜線で示される領域は網点の領域とされるべきところが白の領域として生成された誤り領域である。
(5b)は画像(4b)を参照画像、画像(4a)をターゲット画像とする場合に用いられる画像の参照される部分を示している。画像(6b)が動き補償画像として得られる。この画像は、画像(4a)と同一である。即ち、ターゲット画像と同一の動き補償画像が得られている。
以上のように、ターゲット画像に対して誤差の少ない動き補償画像が得られる場合は、その動き補償画像とターゲット画像を加算して歪の少ない低域成分画像(L画像)が得られる。参照画像から低域成分画像を減算して得られる高域成分画像(H画像)のデータ量は、L画像に含まれる歪成分が少ないのに対応して情報量も少なく出来る。サブバンド符号化における符号化効率を高く出来る。
その動画像符号化装置1は、動画像を並列出力する並列入力部12と、前記並列出力された前記動画像のうちの1つのフレームを第1参照画像、前記第1参照画像の直後の1フレームを第1ターゲット画像とした場合に、前記第1参照画像から前記第1ターゲット画像の動きを推定して順方向の動きベクトル情報を取得する順方向動き推定部13と、前記第1参照画像と前記第1ターゲット画像を入れ替えて、前記第1参照画像を第2ターゲット画像とし、前記第1ターゲット画像を第2参照画像とした場合に、前記第2参照画像から前記第2ターゲット画像の動きを推定して逆方向の動きベクトル情報を取得する逆方向動き推定部14と、前記順方向の動きベクトル情報に基づいて、前記第1参照画像と前記第1ターゲット画像間の動きを補償するための順方向動き補償画像を得る順方向動き補償部15と、前記逆方向の動きベクトル情報に基づいて、前記第2参照画像と前記第2ターゲット画像の動きを補償するための逆方向動き補償画像を得る逆方向動き補償部16と、前記順方向動き補償部で得られた前記順方向動き補償画像と前記第1ターゲット画像との類似度と、前記逆方向動き補償部で得られた前記逆方向動き補償画像と前記第2ターゲット画像との類似度を比較し、前記類似度が高い方はいずれであるかを判定する類似度判定部17と、前記類似度判定部で前記類似度が高いと判定された方の前記順方向動き補償部或いは前記逆方向動き補償部に切り替える切り替え部19と、前記切り替え部で切り替えられた前記順方向動き補償部或いは前記逆方向動き補償部から出力される前記順方向動き補償画像と前記第1ターゲット画像或いは前記逆方向動き補償画像と前記第2ターゲット画像とを加算して前記動画像よりも低レートな圧縮画像を得る一方、前記第1或いは第2参照画像と前記圧縮画像とを減算して前記圧縮画像から前記第1参照画像と前記第1ターゲット画像或いは前記第2参照画像と前記第2ターゲット画像に復元する復元用補助画像を得るフレーム間サブバンド符号化部21とを有しているので、動き補償時間方向フィルタ処理を行うに際し、過去のフレーム画像及び未来のフレーム画像に注目することにより、低い周波数のフレームレートに変換された低域成分及び高域成分の画像のうち、低域成分の画像の方に、視覚上必要とされる画像成分を残すようにした、圧縮符号化効率の高いサブバンド符号化出力が得られる動画像符号化装置を実現できる。
≪動画像符号化の詳細説明≫
以下、動画像符号化装置、動画像符号化方法、動画像復号化装置及び動画像復号化方法について図6〜図27を用いて詳述する。
図6から図8は、動き補償時間方向フィルタ処理(以降、MCTF)の処理過程を示した概念図である。
図9は、基本MCTF処理について表したフローチャートである。
図10は、1GOP分の動画像フレームに対する一連のMCTF符号化処理を表したフローチャートである。
まず、MCTF符号化の一連の処理過程について図10を用いて説明する。
始めに、符号化対象となる動画像フレームを取得する(ステップS401)。その後、1GOP分の動画像フレームを蓄積する(ステップS402)。ここで1GOPは、話を簡単にするため8フレームであるものとする。1GOP分の動画像フレームから、MCTFの対象となるフレーム群をセットする(ステップS403)。ここでは、L成分フレームに対するオクターブ分割が行われていないため、1GOPの全てのフレームがMCTFの対象となるフレーム群となる。
このようなフレーム群に対して、基本MCTF処理を行う(ステップS404)。ここで、基本MCTF処理についての詳しい説明は、後述のためここでは割愛する。その後、基本MCTF処理によって得られるL成分フレームを整列し、次のオクターブ分割対象のフレーム群とする(ステップS405)。
MCTFにおいて、所定のオクターブ分割数に達したかを判定する(ステップS406)。
所定のオクターブ分割数に達していない場合には、ステップS403に進み、得られたL成分フレーム群を次のMCTFの対象となるフレーム群として処理を繰り返す。
所定のオクターブ分割数に達している場合には、基本MCTF処理によって得られたL成分フレームとH成分フレームであるサブバンド係数情報に対して量子化を行う(ステップS407)。
量子化後のサブバンド係数情報、およびMCTFのMEによって求められた動きベクトル情報などに対して所定のエントロピー符号化を行い(ステップS408)、得られた符号化出力のMUXを行うことでビットストリームを構成する(ステップS409)ことで、1GOPの動画像入力に対する一連のMCTF符号化処理が完了する。
ここで、MUXの際に、1GOP毎に1GOPを構成する際に必要な情報を格納したGOPヘッダを付加するようにすると良い。GOPヘッダには、少なくとも1GOP内のフレーム数、サブバンド符号化のオクターブ分割数に関する情報を含むようにすると良い。また、GOPヘッダには、さらに後述する順序情報ヘッダを含むようにすると良い。
次に、基本MCTF処理について図9および図6から図8を用いて説明する。
図6は、MCTFのサブバンド分割においてL成分フレームに対して再帰的に行うオクターブ分解の1階分解目の処理過程を示すものである。
基本MCTFの対象となるフレーム群をセットする(ステップS301)ため、図6の601が示すような1GOP分の0フレームから7フレームに対して、図6の602から605のようにそれぞれ2Nフレーム、2N+1フレームの2フレームが処理単位となるようにセットする。ここで、Nは0から始まる正整数であるものとする。通常はサブバンド分割によって得られるL成分のサブバンド係数情報を格納したL成分フレームが対象となるフレーム群となるが、ここではサブバンド分割が初回であるため、1GOP分として蓄積したフレームを対象となるフレーム群としてセットする。
まず、図6の602の2フレームに対して図6の606が示すように、順方向および逆方向に対してそれぞれMEを行い、動きベクトルを求める(ステップS302)。ここで、順方向とは1フレーム側を基準とし、0フレーム側を探索して動きベクトルを求めることを指す。同様に、逆方向とは0フレーム側を基準とし、1フレーム側を探索して動きベクトルを求めることを指す。
順方向および逆方向に対して、それぞれの方向で求めた動きベクトルに基づいてMCを行う(ステップS303)。ここでは、図6の606が示すように、順方向では0フレーム側がMC画像、1フレーム側がME/MCを行う際の基準となっている。逆方向では、1フレーム側がMC画像、0フレーム側がME/MCを行う際の基準となっている。
その後、順方向および逆方向に対して作成したMC画像とMCを行った際の基準となっている対象フレームとの類似度を求める(ステップS304)。ここで類似度を判定するために、一般にMSE(Mean Square Error)を測定し、この値がより小さいことにより類似度を判定する方法がとられる。また類似度の判定には、単純にフレーム間の差分の絶対値の総和をフレーム間の誤差として測定し、この値がより小さいことにより類似度を判定しても良い。類似度は、MCを行った際の非結合領域の画素数を測定し、この値がより小さいことにより類似度を判定してもよい。ここでは誤差の優劣が判定できるものであれば特に限定されるものではないことに注意する。
順方向におけるMC画像と基準となる対象フレームとの類似度と、逆方向におけるMC画像と基準となる対象フレームとの類似度において、どちらの方向がより類似度が高いかを判定する。ここでは類似度が高いのは順方向であるか(ステップS305)を判定する。
順方向の方がより類似度が高いと判定された場合には、順方向のME/MCによって得られたMC画像および動きベクトルを採用し、採用した方向が順方向であることを示す順序情報を出力する(ステップS306)。ここで、順序情報は、図6の606では順方向に対しては1フレーム側の+記号、逆方向に対しては0フレーム側の−記号で表現している。
逆方向の方がより類似度が高いと判定された場合には、逆方向のME/MCによって得られたMC画像および動きベクトルを採用し、採用した方向が逆方向であることを示す順序情報を出力する(ステップS307)。ここでは、図6の607が示すように、逆方向が選択されたものとして話を進める。
その後、選択されたMC画像と基準となった対象フレームを用いてフレーム間サブバンド符号化を行う(ステップS308)。符号化後の出力であるサブバンド係数情報は、順序情報に基づいて格納先が制御される。順序情報が順方向を表すものである場合には、L成分のサブバンド係数情報は0フレーム側、H成分のサブバンド係数情報は1フレーム側に格納するように格納先を制御する。同様に、順序情報が逆方向を表すものである場合には、L成分のサブバンド係数情報は1フレーム側、H成分のサブバンド係数情報は0フレーム側に格納するように格納先を制御する。ここでは順序情報は逆方向を表すものであるため、0フレーム側は対象フレーム、1フレーム側はMC画像であり、この2フレームに対して直交変換であるフレーム間のサブバンド符号化を行い、図6の608が示すように、順序情報に基づいて0フレーム側にH成分のサブバンド係数情報を格納したH成分フレーム、1フレーム側にL成分のサブバンド係数情報を格納したL成分フレームとなるように符号化後のサブバンド係数情報の格納先を制御する。
次に、図6の609が示すように、動きベクトル情報に基づいて逆MCを行う(ステップS309)。利用する動きベクトル情報は順序情報に応じたものであり、ここでは逆方向のMEによって得られた動きベクトル情報を逆方向に利用することで逆MCを行う。また、逆MCを行う対象となるフレームは、L成分フレームであり、ここでは順序情報によって格納先が1フレーム側に制御されたL成分フレームに対して行う。
その後、逆MCで埋めきれなかった画素の補間を行う(ステップS310)。一般に、この逆MCで埋めきれなかった画素の領域は、MEの際に0フレームと1フレームとの間で関係付けられなかった非結合領域である。そこで通常は、この非結合領域の位置と同じ位置にある領域内の画素を元のフレーム、つまりここでは1フレームから取得し、画素の補間を行う。
このようにして得られた逆MC後のL成分フレームが次の基本MCTF処理の候補となる。そして、現在のオクターブ分割において処理対象となるフレームが存在するかを判定する(ステップS311)。現在のオクターブ分割の処理対象となるフレームが存在しない場合には、基本MCTF処理を完了する。ここでは、現在のオクターブ分割において処理対象となるフレームが2フレームから7フレームまで残っているため、ステップS301に戻り、次の基本MCTF処理の対象となるフレーム群である2フレームと3フレームをセットする。
その後、同様に基本MCTF処理が行われ、2フレームと3フレームとの間では、順方向およぴ逆方向の選択において逆方向を選択し、3フレーム側に逆MC後のL成分フレームを生成する。4フレームと5フレームとの間では、順方向および逆方向の選択において順方向を選択し、4フレーム側に逆MC後のL成分フレームを生成する。6フレームと7フレームとの間では、順方向および逆方向の選択において順方向を選択し、6フレーム側に逆MC後のL成分フレームを生成する。
このようにして現在のオクターブ分割の処理対象となるフレームが存在しなくなるまで基本MCTF処理を繰り返し、図6の610、615、620、625のような逆MC後のL成分フレームを得ることで、基本MCTF処理を完了する。ここで、得られたH成分フレーム、動きベクトル情報、順序情報などに対しては、その後の量子化やエントロピー符号化にまわされる。また、この基本MCTF処理によって得られた図6の610、615、620、625が示す逆MC後のL成分フレーム群は、次のMCTFのオクターブ分割の対象となるフレーム群としてセットされる。
ここで、1GOPが本実施例のように8フレームであるものとすると、従来のMCTFでは0、2、4、6番目のフレームもしくは1,3,5,7番目のフレームといったように、フレーム間隔が等間隔になるようにフレームを出力する。しかし、MCTFでは、各サブバンド分割毎に得られる逆MC後のL成分フレーム群は、本実施例において1,3,4,6番目のフレームといったように、フレーム間隔が不等間隔になるようにフレームを出力する。この不等間隔のフレーム出力は、順方向のME/MCと、逆方向のME/MCを行い、それぞれの方向に対して得られたMC画像とMC対象となったフレームとの類似度を求め、この類似度の高かった方向のME/MCの結果を利用してその後のMCTF処理を行うことによって生じる効果である。
図7は、MCTFのサブバンド分割においてL成分フレームに対して再帰的に行うオクターブ分解の2階分解目の処理過程を示すものである。
基本的な処理の流れは、図6が示す基本MCTF処理と同じである。
まず、図7の701が示すように、図6の610、615、620、625が示す逆MC後のL成分フレーム群が、2階分解目のオクターブ分割の対象となるフレーム群としてセットされる。その後、1フレームと3フレーム、4フレームと6フレームを基本MCTF処理の対象となるフレーム群としてセットする。
その後、同様に基本MCTF処理が行われ、1フレームと3フレームとの間では、順方向およぴ逆方向の選択において逆方向を選択し、3フレーム側に逆MC後のL成分フレームを生成する。4フレームと6フレームとの間では、順方向および逆方向の選択において順方向を選択し、4フレーム側に逆MC後のL成分フレームを生成する。
このようにして現在のオクターブ分割の処理対象となるフレームが存在しなくなるまで基本MCTF処理を繰り返し、図7の708、713のような逆MC後のL成分フレームを得ることで、基本MCTF処理を完了する。
図8は、MCTFのサブバンド分割においてL成分フレームに対して再帰的に行うオクターブ分解の3階分解目の処理過程を示すものである。
基本的な処理の流れは、図6および図7が示す基本MCTF処理と同じである。
まず、図8の801が示すように、図7の708、713が示す逆MC後のL成分フレーム群が、3階分解目のオクターブ分割の対象となるフレーム群としてセットされる。その後、3フレームと4フレームを基本MCTF処理の対象となるフレーム群としてセットする。
その後、同様に基本MCTF処理が行われ、3フレームと4フレームとの間では、順方向および逆方向の選択において順方向を選択し、3フレーム側に逆MC後のL成分フレームを生成する。
このようにして現在のオクターブ分割の処理対象となるフレームが存在しなくなるまで基本MCTF処理を繰り返し、図8の807のような逆MC後のL成分フレームを得ることで、基本MCTF処理を完了する。
図15は、基本逆MCTF処理について表したフローチャートである。
図16は、ビットストリームから1GOP分の動画像フレームを得るまでの一連のMCTF復号化処理を表したフローチャートである。
まず、MCTF復号化の一連の処理過程について図16を用いて説明する。
図16では、復号するためのビットストリームを取得する(ステップS601)。
その後、取得したビットストリームに対してDEMUXを行う(ステップS602)ことで、サブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を取得する。
DEMUXによって得られるサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列に対してエントロピー復号化を行う(ステップS603)ことで、L成分およびH成分のサブバンド係数情報、動きベクトル情報、順序情報を得る。
L成分およびH成分のサブバンド係数情報に対して逆量子化を行う(ステップS604)。
1GOPを構成するための情報を蓄積する(ステップS605)。ここでは、1GOPを構成するために必要なL成分フレーム、H成分フレーム、動きベクトル情報、順序情報を逆量子化およびエントロピー復号化から取得する。
基本逆MCTF処理の対象となる情報群をセットする(ステップS606)。
その後、基本MCTF処理を行う(ステップS607)。
その後、所定のオクターブ分割数であるかを判定する(ステップS608)。
所定のオクターブ分割数に達していない場合には、基本逆MCTF処理によって合成されたL成分フレーム群を次の基本逆MCTF処理の対象としてセットした後に基本逆MCTF処理を行うことを所定のオクターブ分割数になるまで繰り返す。
所定のオクターブ分割数に達した場合には、得られたL成分フレーム群を復号動画像として出力する。ここで、オクターブ分割数が0の状態のL成分フレームは、全てのL成分フレームとH成分フレームに対して復号化を行った後の完全な復号動画像となる。
次に、基本逆MCTF処理について図11および図15を用いて説明する。ここでは、順序情報が各H成分フレーム毎に取得できるものとして話を進める。
まず、処理対象となっているフレームに関する順序情報を取得する(ステップS501)。ここでは、順序情報は順方向であるものとする。図11では、順序情報において順方向を「+」、逆方向を「−」で表している。
また、基本逆MCTF処理を行うために、逆MCTFの対象となる情報群をセットする(ステップS502)。ここでは、1GOPは8フレームであり、符号化側で行われたサブバンド符号化のオクターブ分割数は3階分解されているものとする。また、図11の右上のフレーム群が示すようなL3−3,H3−4,H2−1,H2−6,H1−0,H1−2,H1−5,H1−7といった順序で各成分フレームが入力され、オクターブ分割数が高い順に基本逆MCTF処理の処理対象となるようにセットされる。ここで、L3−3は、「L3」がオクターブ分割数が3階分解のL成分フレームであることを表し、「−3」は、符号化時に格納されていた1GOP内のフレーム位置が3フレーム目であったことを表す。また、H3−4は、「H3」がオクターブ分割数が3階分解のH成分フレームであることを表し、「−4」は、符号化時に格納されていた1GOP内のフレーム位置が4フレーム目であったことを表す。以降、H2−1,H2−6,H1−0,H1−2,H1−5,H1−7も同様である。ただし、ここでの復号化側では、順序情報は各H成分フレーム毎に取得するため、復号化が全て完了するまで元の正確なフレーム位置を特定できないことに注意しなければならない。
図11の1101から1121が示す各領域は、復号したフレームをスケーラブル後の再生動画像として表示する際に、1フレームが占めるGOP内の時間間隔を視覚的に示したものである。
時間方向のスケーラビリティとしてL成分フレームを動画像再生とする場合には、図11の101に格納されたL3−3のタイミングで動画像再生を行うことになる。ここでは、まだ格納位置までは特定できないため、図11の1101が示す時間間隔の中央に配置したものとして再生する。
基本逆MCTF処理を行うためのフレーム群のセットは、まずオクターブ分割数が3階分解のフレームに対して復号を行うために、L3−3フレームおよびH3−4フレームを取得する。次に、図11の1102と1103に注目し、順序情報が順方向である場合には、L成分フレームをフレーム位置0フレームに近い方、H成分フレームをフレーム位置7フレームに近いほうに格納する。順序情報が逆方向である場合には、L成分フレームとH成分フレームの位置を逆にした位置に格納する。ここでは、順序情報が順方向であるため、L成分フレームは図11の1102に格納し、H成分フレームは図11の1103に格納する。
その後、順序情報および動きベクトル情報に基づいて、L成分フレームに対してMCを行う(ステップS503)。ここでは、図11の1101のL3−3フレームは、図11の1102に再配置し、その後動きベクトル情報に従ってMCを行うことでMC画像を得る。
順序情報および動きベクトル情報に基づいて作成したMC画像を用いて、図11の1103に格納したH成分フレームとの間でフレーム間サブバンド復号化を行う(ステップS504)。
その後、MC画像側の復号化で得られたL成分フレーム、つまり図11の1104に対して、順序情報および動きベクトル情報に基づいて逆MCを行う(ステップS505)とともに、逆MCで埋めきれなかった画素の補間を行う(ステップS506)。
以上のような処理過程を経ることで、3階分解のL成分フレームとH成分フレームから図11の1104および1105に格納されている2階分解のL成分フレームを得ることができる。
その後、現在のオクターブ分割において処理対象となるフレームが存在するかどうか判定する(ステップS507)。今回は、オクターブ分割の3階分解から2階分解への復号化であり、処理対象となるフレームは存在しないため、基本逆MCTF処理を完了する。
この段階で時間方向のスケーラビリティとしてL成分フレームを動画像再生とする場合には、図11の1104および1105に格納されたL成分フレームのタイミングで動画像再生を行うことになる。ここでは、まだ格納位置までは特定できないため、図11の1104および1105が示す時間間隔の中央に配置したものとして再生する。
次に、オクターブ分割が2階分解のフレームに対して復号を行うために、図11の1104および1105のL成分フレームに注目するとともに、H2−1フレームを取得するとともに、付随する順序情報を取得する。ここで、H2−1フレームに対応する順序情報は逆方向である。また、図11の1104が示す時間間隔を等分し、図11の1106および1107を格納対象となる時間間隔であるものとする。
その後、図11の1104のL成分フレームとH2−1フレームを、順序情報に従って格納する。図11の1104のL成分フレームは、順序情報が逆方向であるため、図11の1104を等分してできた区間である図11の1106と1107のうち、図11の1107側に格納する。対応するH成分フレームであるH2−1フレームは、図11の1106側に格納する。
その後、通常の基本逆MCTF処理である順序情報および動きベクトル情報に基づいたMC、フレーム間サブバンド復号化、逆MC、逆MCで埋めきれなかった画素の補間を行う。
その後、現在のオクターブ分割において処理対象となるフレームが存在するかどうか判定する。今回は、オクターブ分割の2階分解から1階分解への復号化であり、処理対象となる図11の1105のL成分フレームとH成分フレームであるH2−6フレームが存在するため基本逆MCTF処理を継続し、図11の1112及び1113のような復号化後のL成分フレームを取得した時点で、オクターブ分割が2階分解のフレームに対する逆MCTF処理を完了する。
この段階で時間方向のスケーラビリティとしてL成分フレームを動画像再生とする場合には、図11の1110から1113に格納されたL成分フレームのタイミングで動画像再生を行うことになる。ここでは、まだ格納位置までは特定できないため、図11の1110から1113が示す時間間隔の中央に配置したものとして再生する。
同様に、オクターブ分割が1階分解のフレームに対して処理対象のフレームがなくなるまで基本逆MCTF処理を繰り返すことで、最終的な復号フレームを得ることができる。
得られた各L成分フレームのフレーム位置は、図11の1114から1121の時間間隔が元のフレーム間の時間間隔となるため、この段階での再生動画像は、正しい位置および正しいフレームレートで再生される。
このように、逆MCTFにおいて、順序情報を各H成分フレーム毎に取得するような構成の場合、復号化処理自体に問題は生じないが、時間方向のスケーラビリティを実現する際に、符号化時にフレーム間隔を不等間隔で符号化したにもかかわらず、復号化側では本来の復号化フレームの位置ではない、等間隔での表示となる。
そこで符号化側において、各H成分フレームに対応する順序情報を出力する際に、図12に示すような情報に変換することで順序情報ヘッダを生成し、1GOP毎に伝送するようにすると良い。
ここでは図12が示すように、まず各H成分フレームに対応する順序情報に対して、順方向を「0」、逆方向を「1」といった順序情報ビットに変換する。その後、オクターブ分割数が小さい順、つまりオクターブ分割を1階分解した際に得られるH1成分フレームに対応する順序情報ビットから順に、H2成分フレームに対応する順序情報ビット、H3成分フレームに対応する順序情報ビットと整列する。このように整列した順序情報ビット列を順序情報ヘッダとして1GOPのヘッダ内に組み込むことで、1GOPの復号化を行う際に、1GOP全体のフレームに関する順序情報を得ることができるようになる。
次に、符号化側で生成した順序情報ヘッダから、符号化側で不等間隔に符号化した各フレームの位置を特定する方法について図13を用いて説明する。
図13の1301は、1GOPを構成する際に必要な情報が格納されているGOPヘッダから取得した順序情報ヘッダである。また、GOPヘッダからは、1GOPのフレーム数、サブバンド符号化のオクターブ分割数が取得できるものとする。ここでは、1GOPのフレーム数は8フレーム、オクターブ分割数は3階分解であるものとして話を進める。
まず、取得した順序情報ヘッダ内の順序情報ビット列において、各オクターブ分割数の時のH成分フレームに対応する順序情報がそれぞれ何ビット分かを「1GOPのフレーム数/(2^現在のオクターブ分割数)」を計算することによって特定する。ここでは、1GOPのフレーム数が8フレームで、オクターブ分割数が3階分解であることから、図13の1301が示すように、オクターブ分割数が1階分解の時のH成分フレームに対応する順序情報であるH1の順序情報のビット数は、8/(2^1)=4ビットである。同様に、オクターブ分割数が2階分解の時のH成分フレームに対応する順序情報であるH2の順序情報のビット数は、8/(2^2)=2ビット、オクターブ分割数が3階分解の時のH成分フレームに対応する順序情報であるH3の順序情報のビット数は、8/(2^3)=1ビットである。このようにしてH1の順序情報ビット列1306、H2の順序情報ビット列1312、H3の順序情報ビット列1316を順序情報ヘッダ1301に格納されている順序情報ビット列から特定する。
次に、図13の1302から1305が示すように、L0からL3までのフレーム位置を特定するためのフレーム位置特定用メモリを確保する。図13の1302から1305が表すそれぞれのブロックには、1GOPのフレーム位置を示す整数を格納することができるものとする。ここでは、各ブロックには0から7までの正整数を格納することができる。また、各フレーム位置特定用メモリは、「1GOPのフレーム数/(2^現在のオクターブ分割数)」ブロック分確保するものとする。
まず、L0フレームの位置を特定するための情報を取得する。これは、単純に0から7までを図13の1307が示すように格納することで得られる。
その後、H1の順序情報1306の各順序情報ビットを図13の1307が示すように、L0フレーム位置特定用メモリの2ブロック毎に対して順序情報ビットを1ビット毎対応させる。
その後、対応付けた順序情報ビットに応じて、順序情報ビットが「0」であれば対応付けた2ブロックの右側に格納されている値を採用し、順序情報ビットが「1」であれば対応付けた2ブロックの左側に格納されている値を採用する。図13では採用した値が図13の1308から1311に対応する。この値を図13の1313が示すようにL1フレーム位置特定用メモリに格納する。
同様に、L1フレーム位置特定用メモリに対してH2の順序情報1312を適用することで図13の1314、1315を採用し、図13の1317が示すようにL2フレーム位置特定用メモリに格納する。
更に、L2フレーム位置特定用メモリに対してH3の順序情報1316を適用することで図13の1318を採用し、図13の1319が示すようにL3フレーム位置特定用メモリに格納する。
このような過程を経ることで、順序情報ヘッダの順序情報ビット列から、サブバンド復号化の各オクターブ分割数におけるL成分フレームの格納位置をあらかじめ特定することができる。
このような復号時のフレーム格納位置情報を順序情報ヘッダから取得することで、図11で示された復号時のフレーム格納位置は、図14のように確定することができる。
まず、図14の1401では、L3−3フレームをGOP内のフレーム位置に格納するために図13のL3フレーム位置特定用メモリ1319の内容を参照する。ここでは、3であることから、L3−3フレームをGOP内の3フレーム目の位置に格納することができる。また、H3−4フレームを格納する際には、基本逆MCTF処理後のオクターブ分割数は2階分解であることから、図13のL2フレーム位置特定用メモリの2ブロックを参照し、まだ格納されていない4フレーム目にH3−4フレームを格納する。
このように、図13のフレーム位置特定用メモリの内容は、それぞれ図14の1401から1421で示される各フレーム間隔内で格納すべきフレーム位置を示している。つまり、図13のL3フレーム位置特定用メモリ1319の内容は、図14の1401におけるフレーム格納位置を示す。また、図13のL2フレーム位置特定用メモリ1317は、図14の1402と1403および1404と1405におけるフレーム格納位置を示す。さらに、図13のL1フレーム位置特定用メモリ1313の内容は、図14の1406から1409および1410から1413におけるフレーム格納位置を示す。
以上のように、GOPヘッダから順序情報ヘッダを取得できる場合には、符号化時において不等間隔で符号化した際のフレーム位置を、復号化側でも正しいフレーム位置のフレームを正しいフレーム間隔で表示することができるようになる。
図17は、符号化装置の詳細構成である。
図17は、少なくとも、入力管理部1702、順方向ME部1703、逆方向ME部1704、順方向MC部1705、逆方向MC部1706、類似度判定部1707、スイッチ1(1708)、スイッチ2(1709)、制御部1710、フレーム間サブバンド符号化部1711、逆MC部1712、画素補間部1713、フレーム間サブバンド符号化管理部1714、量子化部1715、エントロピー符号化部1716、MUX部1717により構成される。
入力管理部1702は、入力される動画像フレームの管理を行う機能を有する。一般に、この入力管理部1702は、GOPを構成するために必要なフレーム数を入力される動画像フレームから取得し、後述する順方向ME部1703、逆方向ME部1704、順方向MC部1705、逆方向MC部1706、類似度判定部1707、フレーム間サブバンド符号化部1711、逆MC部1712、画素補間部1713に対して処理対象となるフレームを通知する機能を有する。
順方向ME部1703は、入力管理部1702によって管理されているGOP内のフレームから処理対象となる少なくとも2枚のフレーム,2Nフレーム、2N+1フレームを取得する機能を有する。ここで、Nは0から始まる正整数であるものとする。順方向ME部1703は、入力管理部1702から取得した少なくとも2枚のフレーム、2Nフレーム、2N+1フレームに対して順方向のMEを行い、動きベクトル情報を取得する機能を有する。順方向のMEは、2Nフレーム側を動きベクトルを特定するために探索される側のフレームであるものとし、2N+1フレーム側はMEを行う際の基準となるフレームであるものとして処理を行う。また、順方向ME部1703は、順方向MC部1705に対して少なくとも取得した動きベクトル情報を通知する機能を有する。さらに、スイッチ1(1708)を介して逆MC部1712、エントロピー符号化部1716に取得した動きベクトル情報を通知する機能を有する。
逆方向ME部1704は、入力管理部1702によって管理されているGOP内のフレームから処理対象となる少なくとも2枚のフレーム,2Nフレーム、2N+1フレームを取得する機能を有する。ここで、Nは0から始まる正整数であるものとする。逆方向ME部1704は、入力管理部1702から取得した少なくとも2枚のフレーム、2Nフレーム、2N+1フレームに対して逆方向のMEを行い、動きベクトル情報を取得する機能を有する。逆方向のMEは、2N+1フレーム側を動きベクトルを特定するために探索される側のフレームであるものとし、2Nフレーム側はMEを行う際の基準となるフレームであるものとして処理を行う。また、逆方向ME部1704は、逆方向MC部1706に対して少なくとも取得した動きベクトル情報を通知する機能を有する。さらに、スイッチ1(1708)を介して逆MC部1712、エントロピー符号化部1716に取得した動きベクトル情報を通知する機能を有する。
順方向MC部1705は、入力管理部1702によって管理されているGOP内のフレームから処理対象となる少なくとも2枚のフレーム,2Nフレーム、2N+1フレームを取得する機能を有する。また、順方向ME部1703から順方向MEによって得られた動きベクトル情報を取得する機能を有する。順方向MC部1705は、取得した動きベクトル情報に基づいて、2Nフレーム、2N+1フレームに対して順方向のMCを行い、順方向のMC画像を取得する機能を有する。順方向のMCは、2Nフレーム側を動きベクトル情報に基づいてMCを行うことでMC画像を取得する側のフレームであるものとし、2N+1フレーム側はMEを行う際の基準となったフレームであるものとして処理を行う。取得した順方向のMC画像は、類似度判定部1707に通知する機能を有する。また、スイッチ2(1709)を介して順方向のMC画像をフレーム間サブバンド符号化部1711に通知する機能を有する。
逆方向MC部1706は、入力管理部1702によって管理されているGOP内のフレームから処理対象となる少なくとも2枚のフレーム,2Nフレーム、2N+1フレームを取得する機能を有する。また、逆方向ME部1704から逆方向MEによって得られた動きベクトル情報を取得する機能を有する。逆方向MC部1706は、取得した動きベクトル情報に基づいて、2Nフレーム、2N+1フレームに対して逆方向のMCを行い、逆方向のMC画像を取得する機能を有する。逆方向のMCは、2N+1フレーム側を動きベクトル情報に基づいてMCを行うことでMC画像を取得する側のフレームであるものとし、2Nフレーム側はMEを行う際の基準となったフレームであるものとして処理を行う。取得した逆方向のMC画像は、類似度判定部1707に通知する機能を有する。また、スイッチ2(1709)を介して逆方向のMC画像をフレーム間サブバンド符号化部1711に通知する機能を有する。
類似度判定部1707は、入力管理部1702によって管理されているGOP内のフレームから処理対象となる少なくとも2枚のフレーム,2Nフレーム、2N+1フレームを取得する機能を有する。また、順方向MC部1705から順方向のMC画像、逆方向MC部1706から逆方向のMC画像を取得する機能を有する。類似度判定部1707は、順方向のMC画像と2N+1フレームとの間から順方向の類似度を求める機能を有する。また、2Nフレームと逆方向のMC画像との間から逆方向の類似度を求める機能を有する。ここで、類似度の測定は、一般にMSE(Mean Square Error)を測定し、この値がより小さいことにより類似度を判定する方法がとられる。また類似度の判定には、単純にフレーム間の差分の絶対値の総和をフレーム間の誤差として測定し、この値がより小さいことにより類似度を判定しても良い。類似度は、MCを行った際の非結合領域の画素数を測定し、この値がより小さいことにより類似度を判定してもよい。ここでは誤差の優劣が判定できるものであれば特に限定されるものではないことに注意する。さらに、類似度判定部1707は、測定した順方向の類似度と逆方向の類似度を比較し、より類似度の高いMC画像を特定する機能を有する。また、特定したMC画像の方向が順方向であれば、スイッチ1(1708)およびスイッチ2(1709)をそれぞれの端子a側に切り替え、特定したMC画像の方向が逆方向であれば、スイッチ1(1708)およびスイッチ2(1709)をそれぞれの端子b側に切り替える機能を有する。類似度判定部1707は、選択したMC画像が順方向によるものか逆方向によるものかを示すための順序情報を、制御部1710、エントロピー符号化部1716に通知する機能を有する。
スイッチ1(1708)は、順方向ME部1703および逆方向ME部1704から通知される動きベクトル情報を類似度判定部1707に応じて選択するためのものである。
スイッチ2(1709)は、順方向MC部1705および逆方向MC部1706から通知される動きベクトル情報を類似度判定部1707に応じて選択するためのものである。
制御部1710は、類似度判定部1707から選択したMC画像が順方向によるものか逆方向によるものかを示すための順序情報を取得する機能を有する。また、少なくともフレーム間サブバンド符号化部1711、逆MC部1712、画素補間部1713、フレーム間サブバンド符号化管理部1714の動作を制御する機能を有する。逆MC部1712に対しては、逆MCする際の各基準領域の重なり順序情報を通知する機能を有しても良い。ただし、ここでは以後の説明を簡単にするため、各規準領域の重なり順序情報は、あらかじめ符号化装置および復号化装置で決められた所定の順序であるものとし、各基準領域の重なり順序情報の授受に関しては言及する必要がないものとする。ここでの所定の順序は、左上に配置された基準領域から右下に向かってラスタ順に処理を行うものとする。制御部1710は、画素補間部1713に対して画素を補間する方法を切り替えるための画素補間モード情報を通知する機能を有しても良い。ただし、ここでは以後の説明を簡単にするため、画素補間モード情報は、あらかじめ符号化装置および復号化装置で決められた所定の画素補間方法であるものとし、画素補間モード情報の授受に関しては言及する必要がないものとする。ここでの画素補間方法は、類似度判定部1707から取得した順序情報に基づいて補間元のフレームを特定し、補間元のフレームの補間対象となる位置の画素を用いるものとする。制御部1710は、現在処理しているフレームのGOP内の位置とフレーム間の帯域分割の状態から、処理後のフレームの格納位置を管理する機能を有する。また、制御部1710は、フレーム間サブバンド符号化管理部1714に対して、帯域分割の状態を示す帯域分割状態情報、フレーム格納位置情報を通知する機能を有する。制御部1710は、少なくともフレーム間サブバンド符号化部1711、逆MC部1712、画素補間部1713、フレーム間サブバンド符号化管理部1714の動作を制御する際に、類似度判定部1707から取得した順序情報を通知する機能を備えると良い。
フレーム間サブバンド符号化部1711は、入力管理部1702によって管理されているGOP内のフレームから処理対象となる少なくとも2枚のフレーム,2Nフレーム、2N+1フレームを取得できる機能を有する。ここで、制御部1710から得られる順序情報に基づいて、2Nフレーム、2N+1フレームのうちMCの対象となったフレームの方を選択的に取得するような機能を備えても良い。また、スイッチ2(1709)を介してMC画像を取得する機能を有する。フレーム間サブバンド符号化部1711は、取得した順序情報から、2Nフレーム、2N+1フレームのうちどちらがMC画像を作成する際の対象フレームであったかを特定する機能を備えるとともに、MC画像とMC画像を作成する際の対象となった対象フレームとの間で所定のフレーム間のサブバンド符号化を行う機能を有する。また、得られるサブバンド係数情報のL成分をMC画像側に格納することでL成分フレームとし、得られるサブバンド係数情報のH成分を順序情報によって特定した対象フレーム側に格納することでH成分フレームとする機能を有する。生成したL成分フレームを逆MC部1712に通知するとともに、生成したH成分フレームをフレーム間サブバンド符号化管理部1714に通知する機能を有する。
逆MC部1712は、制御部1710から順序情報を取得する機能を有する。フレーム間サブバンド符号化部1711からL成分フレームを取得する機能を有する。スイッチ1(1708)を介して動きベクトル情報を取得する機能を有する。取得した動きベクトル情報を逆方向に適用して動き補償を行う機能、つまり逆MCを行い、逆MC後のL成分フレームを生成する機能を有する。逆MC部1712は、生成した逆MC後のL成分フレームを画素補間部1713に通知する機能を有する。逆MCによって画素が埋められていない領域に対しては、画素補間部1713に対して画素補間領域情報を通知する機能を有しても良い。ここでは、処理を簡単にするために、画素補間領域情報は、逆MC後のL成分フレームに補間が必要であることを示す値、例えば「−1」の値を格納し、画素補間部1713では、この情報を元にして画素補間領域情報を取得することとする。後述において、この画素補間領域情報の授受に関しては言及する必要がないものとする。
画素補間部1713は、制御部1710から順序情報を取得する機能を有する。逆MC部1712から逆MC後のL成分フレームを取得する機能を有する。入力管理部1702によって管理されているGOP内のフレームから処理対象となる少なくとも2枚のフレーム,2Nフレーム、2N+1フレームを処理前のフレームとして取得できる機能を有する。ここで、制御部1710から得られる順序情報に基づいて、2Nフレーム、2N+1フレームのうちMCが行われるフレームの方を処理前のフレームとして選択的に取得するような機能を備えても良い。画素補間部1713では、取得した逆MC後のL成分フレームにおいて、逆MCによって画素が埋められていない領域に関する情報である画素補間領域情報に基づいて画素の補間を行う機能を有する。画素が埋められていない領域の判定は、通常、制御部1710から取得する。もしくは逆MC部1712から画素補間領域情報を取得する機能を有しても良い。処理を簡単にするために、ここで画素補間領域情報は、逆MC後のL成分フレームに補間が必要であることを示す値、例えば「−1」の値が格納されるものとし、この情報を元にして画素補間領域情報を取得することとする。後述において、この画素補間領域情報の授受に関しては言及する必要がないものとする。画素補間後のL成分フレームは、フレーム間サブバンド符号化管理部1714に通知する機能を有する。
フレーム間サブバンド符号化管理部1714は、フレーム間サブバンド符号化部1711からH成分フレーム、画素補間部1713から画素補間を行ったL成分フレームを取得する機能を有する。また、制御部1710から帯域分割状態情報、フレーム格納位置情報を取得する機能を有する。帯域分割状態情報、フレーム格納位置情報に基づいて、L成分フレーム、H成分フレームを正しい位置へ格納および通知する機能を有する。各フレームの通知先は、帯域分割状態情報に基づいて決定し、GOP内のフレーム間に対して帯域分割を行う必要がある場合には、再度入力フレームとして入力管理部1702に通知し、帯域分割を行う必要がない場合には、出力フレームとして量子化部1715に通知する機能を有する。
量子化部1715は、フレーム間サブバンド符号化管理部1714から取得するサブバンド係数情報であるL成分フレーム、H成分フレームに対して所定の量子化を行う機能を有する。量子化後のサブバンド係数情報を後述のエントロピー符号化部1716に通知する機能を有する。
エントロピー符号化部1716は、少なくとも量子化部1715から取得するL成分フレーム、H成分フレームといったサブバンド係数情報と、スイッチ1(1704)を介して取得する動きベクトル情報と、類似度判定部1707から取得する順序情報に対して所定のエントロピー符号化を行い、サブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を生成する機能を有する。生成したサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を後述のMUX部1717に通知する機能を有する。
MUX部1717は、取得したサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列と、復号時に必要となる各種の制御情報を多重化してビットストリームを生成し、符号化出力する機能を有する。
次に、図9および図10のフローチャートが示す各ステップを交えて、図17が示す符号化装置における動作を以下に説明する。
まず入力管理部1702は、符号化対象となる動画像フレーム1701を取得し(ステップS401)、1GOP分の動画像フレームを蓄積する(ステップS402)。ここでは、話を簡単にするため、1GOPは8フレームで構成されるものとする。
次に、MCTFを行う際のサブバンド符号化のオクターブ分割において、フレーム間のサブバンド符号化対象となるフレーム群をセットする(ステップS403)。ここでは、サブバンド分割は初回であるため、処理対象となるフレーム群は処理後のL成分フレームではなく、取得した1GOP分の動画像フレームを適用する。次回以降は、フレーム間サブバンド符号化管理部1714から取得する処理後のL成分フレーム群を処理対象となるフレーム群として適用する。その後、基本MCTF処理を行う(ステップS404)ため、基本MCTF処理の対象となるフレーム群をセットする(ステップS301)。ここでは、入力管理部1702から、基本MCTF処理の対象となるフレーム群である1GOP内の2フレームである2Nフレーム、2N+1フレームを順方向ME部1703、逆方向ME部1704、順方向MC部1705、逆方向MC部1706、類似度判定部1707、フレーム間サブバンド符号化部1711、画素補間部1713が取得できるように入力管理部1702はセットする。
順方向ME部1703は、入力管理部1702から処理対象となるフレーム群である2Nフレーム、2N+1フレームを取得し、順方向に対してMEを行うことで順方向の動きベクトル情報を求める。その後、順方向MC部1705に求めた動きベクトル情報を通知するとともに、スイッチ1(1708)を介して逆MC部1712、エントロピー符号化部1716に通知する。逆方向ME部1704は、入力管理部1702から処理対象となるフレーム群である2Nフレーム、2N+1フレームを取得し、逆方向に対してMEを行うことで逆方向の動きベクトル情報を求める。その後、逆方向MC部1706に動きベクトル情報を通知するとともに、スイッチ1(1708)を介して逆MC部1712、エントロピー符号化部1716に通知する。このような過程を経ることで、順方向/逆方向に対してMEを行い、動きベクトルを求める(ステップS302)ことができる。
その後、順方向MC部1705は、順方向ME部1703から順方向の動きベクトル情報を取得する。また、入力管理部1702から順方向MCを行う側のフレームである2Nフレームを取得する。この順方向の動きベクトル情報と2Nフレームから順方向のMCを行い、順方向のMC画像を生成する。生成した順方向のMC画像は、類似度判定部1707に通知するとともに、スイッチ2(1709)を介してフレーム間サブバンド符号化部1711に通知する。逆方向MC部1706は、逆方向ME部1704から逆方向の動きベクトル情報を取得する。また、入力管理部1702から逆方向MCを行う側のフレームである2N+1フレームを取得する。この逆方向の動きベクトル情報と2N+1フレームから逆方向のMCを行い、逆方向のMC画像を生成する。生成した逆方向のMC画像は、類似度判定部1707に通知するとともに、スイッチ2(1709)を介してフレーム間サブバンド符号化部1711に通知する。このような過程を経ることで、順方向/逆方向に対して動きベクトル情報に基づいてMCを行う(ステップS303)ことができる。
各方向のMC画像が求まると、類似度判定部1707は、順方向MC部1705から順方向のMC画像を取得し、入力管理部1702から順方向のMC画像を作成する際に基準とした対象フレームである2N+1フレームを取得する。この順方向のMC画像と2N+1フレームとの間で順方向の類似度を求める。また、逆方向MC部1706から逆方向のMC画像を取得し、入力管理部1702から逆方向のMC画像を作成する際に基準とした対象フレームである2Nフレームを取得する。この逆方向のMC画像と2Nフレームとの間で逆方向の類似度を求める。このような過程を経ることで、順方向/逆方向に対して作成したMC画像とMCを行った際の対象フレームとの類似度を求める(ステップS304)ことができる。
その後、順方向の類似度と逆方向の類似度とを比較して(ステップS305)、より類似度が高い方、つまり誤差が少ない方のMC画像を採用する。また、採用した方向を示すための順序情報を生成し、制御部1710およびエントロピー符号化部1716に通知する(ステップS306、またはステップS307)。採用した方向のMC画像および動きベクトル情報を各部に通知するため、類似度判定部1707は、スイッチ1(1708)、スイッチ2(1709)を切り替える。順方向のMC画像を選択した場合には、スイッチ1(1708)、スイッチ2(1709)ともにa端子側にスイッチを切り替える。逆方向のMC画像を選択した場合には、スイッチ1(1708)、スイッチ2(1709)ともにb端子側にスイッチを切り替える。
類似度判定部1707が、スイッチ1(1708)、スイッチ2(1709)を切り替えた後、制御部1710は、類似度判定部1707から順序情報を取得する。
制御部1710は、帯域分割の状態を示す帯域分割状態情報、フレーム格納位置情報に基づいて、フレーム間サブバンド符号化部1711に対して符号化要求を行うとともに、順序情報を通知する。
フレーム間サブバンド符号化部1711は、制御部1710から順序情報を取得する。また、スイッチ2(1709)を介してMC画像を取得する。順序情報から取得したMC画像が順方向によるものか逆方向によるものかを特定し、MCの基準となった対象フレームを入力管理部1702から取得する。取得したMC画像および対象フレームに対して、フレーム間のサブバンド符号化を行い(ステップS308)、L成分のサブバンド係数情報をMC画像側のフレーム位置としてL成分フレームを生成し、H成分のサブバンド係数情報を対象フレーム側のフレーム位置としてH成分フレームを生成する。生成したL成分フレームは,逆MC部1712に通知する。また、H成分フレームは、フレーム間サブバンド符号化管理部1714に通知する。
その後、制御部1710は、逆MC部1712に対して逆MC要求を行うとともに、順序情報を通知する。
逆MC部1712は、フレーム間サブバンド符号化部1711から符号化後のL成分フレームを取得する。また、スイッチ1(1708)を介して動きベクトル情報を取得する。その後、取得した動きベクトル情報を逆方向に適用して動き補償を行う機能、つまり逆MCを行い(ステップS309)、逆MC後のL成分フレームを画素補間部1713に通知する。
その後、制御部1710は、画素補間部1713に対して、画素の補間要求を行うとともに、順序情報を通知する。
画素補間部1713は、逆MC部1712から逆MC後のL成分フレームを取得する。また、制御部1710から順序情報を取得する。取得した順序情報から、逆MC後のL成分フレームと同じ位置のフレーム、つまりMCされる側の符号化処理前の補間元となるフレームを入力管理部1702から取得する。その後、画素補間領域情報に基づいて対応する画素補間領域の画素を補間元となるフレームから特定し、逆MC後のL成分フレームに対して、逆MCで埋めきれなかった画素の補間を行い(ステップS310)、画素補間後のL成分フレームをフレーム間サブバンド符号化管理部1714に通知する。
フレーム間サブバンド符号化管理部1714は、画素補間部1713からL成分フレーム、フレーム間サブバンド符号化部1711からH成分フレームを取得する。その後、現在のオクターブ分割において処理対象となっているフレームが存在するかどうかを判定する(ステップS311)。オクターブ分割が所定の分割数に達していない場合には、L成分フレームを再度入力管理部1702に通知する。所定のオクターブ分割数に達した場合には、L成分フレームおよび今まで取得した各オクターブ分割で生成したH成分フレーム群をサブバンド符号化後のサブバンド係数情報として量子化部1715に通知する。
量子化部1715では、L成分フレームおよび各オクターブ分割で生成したH成分フレーム群に対して量子化を行い(ステップS407)、量子化後のサブバンド係数情報を後述のエントロピー符号化部1716に通知する。
エントロピー符号化部1716は、少なくとも量子化部1715から取得するL成分フレーム、H成分フレームといったサブバンド係数情報と、スイッチ1(1704)を介して取得する動きベクトル情報と、類似度判定部1707から取得する順序情報に対して所定のエントロピー符号化を行い(ステップS408)、サブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を生成する。生成したサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を後述のMUX部1717に通知する。
MUX部1717は、取得したサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列と、復号時に必要となる各種の制御情報を多重化してビットストリームを構成し(ステップS409)、符号化出力する。
以上のような処理を行うことで、一連の符号化装置の動作を完了することができる。
≪符号化装置の応用例≫
図18は、符号化装置の応用例における構成である。図17が示す符号化装置との違いは、重なり判定部1801、誤差補正部1802を新たに備えることにある。
以下、機能的に変更がある部、および新たに追加した部について説明する。
入力管理部1702は、処理対象となるフレームを重なり特定部1802に通知する機能を新たに備える。
制御部1710は、重なり特定部1801、誤差補正部1802の制御を行う機能を新たに備える。また、重なり特定部1801、誤差補正部1802に対して順序情報を通知する機能を新たに備える。
フレーム間サブバンド符号化部1711は、H成分フレームを通知する機能の通知先を誤差補正部1802に変更する。
フレーム間サブバンド符号化管理部1714は、フレーム間サブバンド符号化部1711からH成分フレームを取得する機能を誤差補正部1802からH成分フレームを取得するように変更する。
重なり特定部1801は、制御部1710から順序情報を取得する。重なり特定部1801は、入力管理部1702から2Nフレーム、2N+1フレーム、スイッチ1(1708)を介して動きベクトル情報を取得する機能を有する。取得した順序情報に基づいて、取得した動きベクトル情報と基準領域の形状情報から、動き補償を行った際に多重参照される領域(以降、多重参照領域とする)を特定し、多重参照領域情報を生成する機能を有する。帯域分割後のL成分フレームに対して、取得した動きベクトル情報を逆方向に適用して動き補償、つまり逆動き補償(以降、逆MC)を行った際に、どの基準領域が、どの多重参照領域に逆MCされるかを特定し、対応する多重参照領域と複数の基準領域との関連を表すための情報である多重参照領域−基準領域関係情報を生成する機能を有する。更に、多重参照領域に逆MCされる各基準領域において、各基準領域内におけるどの部分が多重参照領域に関与しているかを特定し、後述する誤差補正部1802が誤差を補正する対象となる部分を示すための情報として誤差補正対象領域情報を生成する機能を有する。重なり特定部1801は、多重参照領域情報、多重参照領域−基準領域関係情報、誤差補正対象領域情報を誤差補正部1802に通知する機能を有する。
誤差補正部1802は、重なり判定部1801から多重参照領域情報、多重参照領域−基準領域関係情報、誤差補正対象領域情報を取得する機能を有する。誤差補正部208は、取得した情報からH成分フレームの多重参照領域と関係している基準領域中の誤差補正対象領域に対して、誤差を補正するための誤差情報を算出する機能を有する。算出した誤差情報を、フレーム間サブバンド符号化部1711から取得したH成分フレームの誤差補正が必要な領域に対して付加する機能を有する。誤差補正を行ったH成分フレームをフレーム間サブバンド符号化管理部1714に通知する機能を有する。
以上のような各部の機能を備えることで、従来の復号化装置において問題となっていた復号化処理の依存関係を排除し、復号化装置の構成を容易にすることができる。
次に、図25および図10のフローチャートが示す各ステップを交えて、図18が示す符号化装置の応用例における動作を以下に説明する。ただし、図10が示す動作に関しては、図17のに示した構成と同じであるため、ここでは省略する。また、図10のステップS404は、図25に対応する。
図18において、図25のステップS701からステップS707までの動作は、図17の動作と同じであるため、ここでは省略する。
類似度判定部1707による処理が完了すると、制御部1710は、図17の構成と同様にフレーム間サブバンド符号化部1711に対して符号化要求を行い、フレーム間サブバンド符号化部1711は、取得した各フレーム間でサブバンド符号化を行う(ステップS708)。生成したL成分フレームは逆MC部1712に通知し、H成分フレームは、誤差補正部1802に通知する。
その後、制御部1710は、重なり特定部1801に対して順序情報を通知する。
重なり特定部1801は、制御部1710から順序情報を取得する。また、スイッチ1(1708)を介して動きベクトル情報を取得する。更に、順序情報に基づいて、入力管理部1702から2Nフレーム、2N+1フレームを取得する。取得した動きベクトル情報と基準領域の形状情報から、多重参照領域情報を生成する(ステップS709)。帯域分割後のL成分フレームに対して、取得した動きベクトル情報を逆方向に適用して動き補償、つまり逆動き補償(以降、逆MC)を行った際に、どの基準領域が、どの多重参照領域に逆MCされるかを特定し、対応する多重参照領域と複数の基準領域との関連を表すための情報である多重参照領域−基準領域関係情報を生成する。更に、多重参照領域に逆MCされる各基準領域において、各基準領域内におけるどの部分が多重参照領域に関与しているかを特定し、後述する誤差補正部1802が誤差を補正する対象となる部分を示すための情報として誤差補正対象領域情報を生成する。このような過程を経た後に、重なり特定部1801は、多重参照領域情報、多重参照領域−基準領域関係情報、誤差補正対象領域情報を誤差補正部1802に通知する。
誤差補正部1802は、重なり判定部1801から多重参照領域情報、多重参照領域−基準領域関係情報、誤差補正対象領域情報を取得する。また、フレーム間サブバンド符号化部1711からH成分フレームを取得する。取得した多重参照領域情報、多重参照領域−基準領域関係情報、誤差補正対象領域情報からH成分フレームの多重参照領域と関係している基準領域中の誤差補正対象領域に対して、誤差を補正するための誤差情報を算出する。算出した誤差情報を、取得したH成分フレームの誤差補正が必要な領域に対して付加する。誤差補正を行ったH成分フレームをフレーム間サブバンド符号化管理部1714に通知する。このような処理を経ることで、多重参照領域内の画素に対して誤差成分の補正を行う(ステップS710)。
その後、図17の構成と同様に、逆MC部1712により動きベクトル情報に基づいて逆MC(ステップS711)、画素補間部1713により逆MCで埋めきれなかったがその補間を行う(ステップS712)。
その後、フレーム間サブバンド符号化管理部1714は、画素補間部1713からL成分フレーム、誤差補正部1802からH成分フレームを取得する。そして、現在のオクターブ分割において処理対象となっているフレームが存在するかどうかを判定する(ステップS713)。オクターブ分割が所定の分割数に達していない場合には、L成分フレームを再度入力管理部1702に通知する。所定のオクターブ分割数に達した場合には、L成分フレームおよび今まで取得した各オクターブ分割で生成したH成分フレーム群をサブバンド符号化後のサブバンド係数情報として量子化部1715に通知する。
以後の処理は、図17と同様であるため省略する。
以上のような処理を行うことで、本発明の一連の符号化装置の動作を完了することができる。
なお、本発明は、上記の符号化装置の機能を図19に示すコンピュータである中央処理制御装置1903に実現させるためのプログラムを含むものである。このプログラムは、記録媒体から読み取られて中央処理制御装置1903に取り込まれても良いし、通信ネットワークを介して伝送され中央処理制御装置1903に取り込まれても良い。
≪復号化装置≫
次に、MCTF復号化装置の構成について説明するため、まず従来のMCTF復号化装置の構成について以下に説明する。
図20は、従来の一般的な逆MCTFを用いた復号化装置の構成例を示した機能ブロック図である。
図20は、少なくとも、DEMUX部2002、エントロピー復号化部2003、逆量子化部2004、入力管理部2005、対応関係特定部2006、第1フレーム間復号化部2007、第2フレーム間復号化部2008、画素補間部2009、フレーム間復号化管理部2010により構成される。
DEMUX部2002は、取得したビットストリームを多重化分離(以後、DEMUX)して、サブバンド分割後の係数情報ビット列(以後、サブバンド係数情報ビット列)、動きベクトル情報ビット列と、復号時に必要となる各種の制御情報を生成し、サブバンド係数情報ビット列、動きベクトル情報ビット列を後述するエントロピー復号化部2003に通知する機能を有する。
エントロピー復号化部2003は、DEMUX部2002から通知されるサブバンド係数情報ビット列、動きベクトル情報ビット列を取得する機能を有する。取得したサブバンド係数情報ビット列、動きベクトル情報ビット列に対してエントロピー復号化を行い、サブバンド分割後の係数情報(以後、サブバンド係数情報)、動きベクトル情報を生成する機能を有する。生成したサブバンド係数情報を後述する逆量子化部2004に通知する機能を有する。また、生成した動きベクトル情報を対応関係特定部2006に通知する機能を有する。
逆量子化部2004は、エントロピー復号化部2003からサブバンド係数情報を取得する機能を有する。取得したサブバンド係数情報に対して所定の逆量子化を行う機能を有する。逆量子化後のサブバンド係数情報を後述の入力管理部2005に通知する機能を有する。
入力管理部2005は、逆量子化部2004から逆量子化後のサブバンド係数情報を取得する機能を有する。取得した逆量子化後のサブバンド係数情報は、サブバンド分割後のL成分情報を含むL成分フレームとH成分情報を含むH成分フレームとするとともに、各成分フレームを復号後のGOP内のフレーム位置に対応付けて管理する機能を有する。一般に、この入力管理部2005は、GOPを再構成するために必要なフレーム数を構成できるだけのサブバンド係数情報を逆量子化部2004から取得し、後述する対応関係特定部2006、画素補間部2009に対して処理対象となるフレームを通知する機能を有する。
対応関係特定部2006は、エントロピー復号化部2003から動きベクトル情報を取得する機能を有する。また、入力管理部2005から復号対象となるサブバンド分割後のL成分のサブバンド係数情報が格納されているL成分フレームと、H成分のサブバンド係数情報が格納されているH成分フレームを取得する機能を有する。ここで、L成分フレームは復号後の2Nフレーム側の位置に対応し、H成分フレームは復号後の2N+1フレーム側の位置に対応しているものとする。取得した動きベクトル情報を利用してH成分フレーム内の各H成分のサブバンド係数情報が、L成分フレーム内のどのL成分のサブバンド係数情報と対応関係にあるかを特定し、サブバンド係数対応関係情報を生成する機能を有する。ここで、サブバンド係数対応関係情報には、各L成分のサブバンド係数情報がL成分フレーム内の空間位置を保持することで、復号後のサブバンド係数情報の格納位置を特定できるようにする。同様に、対応関係にある各H成分のサブバンド係数情報がH成分フレーム内の空間位置を保持することで、復号後のサブバンド係数情報の格納位置を特定できるようにする。また、ある特定のL成分のサブバンド係数情報が複数のH成分のサブバンド係数情報との間に多重参照関係がある場合には、所定の方法に基づいて最初に復号すべきL成分のサブバンド係数情報とH成分のサブバンド係数情報を特定し、サブバンド係数対応関係情報に復号化を行う際の優先順位を反映する機能を有する。対応関係特定部2006は、取得したL成分フレーム、H成分フレームおよび生成したサブバンド係数対応関係情報を第1フレーム間復号化部2007に通知する機能を有する。
第1フレーム間復号化部2007は、対応関係特定部2006から2Nフレーム側のL成分フレーム、2N+1フレーム側のH成分フレームおよび生成したサブバンド係数対応関係情報を取得する機能を有する。取得したサブバンド係数対応関係情報から最初に復号すべきL成分のサブバンド係数情報と、2N+1フレーム側のH成分のサブバンド係数情報を特定し、所定のサブバンド合成によって帯域合成を行うとともに、帯域合成によって得られる時間方向に異なる2つのL成分のサブバンド係数情報を、サブバンド係数対応関係情報に基づいて2Nフレーム側、2N+1フレーム側の対応する空間位置に格納する機能を有する。帯域合成後の2Nフレーム側および2N+1フレーム側に格納したL成分のサブバンド係数情報、帯域合成を行っていないサブバンド係数情報、サブバンド係数対応関係情報を第2フレーム間復号化部2008に通知する機能を有する。
第2フレーム間復号化部2008は、第1フレーム間復号化部2007から帯域合成後の2Nフレーム側および2N+1フレーム側に格納したL成分のサブバンド係数情報、帯域合成を行っていないサブバンド係数情報、サブバンド係数対応関係情報を取得する機能を有する。第1フレーム間復号化部2007によって既に復号した2Nフレーム側のL成分のサブバンド係数情報と、第1フレーム間復号化部2007で復号対象とならなかったH成分のサブバンド係数情報との対応関係をサブバンド係数対応関係情報から特定し、所定のサブバンド合成によって帯域合成を行うとともに、帯域合成によって得られる時間方向に異なる2つのL成分のサブバンド係数情報を、サブバンド係数対応関係情報に基づいて2Nフレーム側、2N+1フレーム側の対応する空間位置に格納する機能を有する。帯域合成後の2Nフレーム側に格納したL成分のサブバンド係数情報を、画素補間部2009に通知する機能を有する。2N+1フレーム側に格納したL成分のサブバンド係数情報をフレーム間復号化管理部2010に通知する機能を有する。
画素補間部2009は、第2フレーム間復号化部2008から2Nフレーム側に格納したL成分のサブバンド係数情報を取得する機能を有する。画素補間部2009は、2Nフレーム内においてサブバンド合成による復号が行われていない画素補間領域を特定し、所定の画素補間方法に基づいて画素を補間する機能を有する。生成した2Nフレームをフレーム間復号化管理部2010に通知する機能を有する。
フレーム間復号化管理部2010は、画素補間部2009から画素補間を行った2Nフレームを取得する機能を有する。第2フレーム間復号化部2008から2N+1フレームを取得する機能を有する。フレーム間復号化管理部2010は、帯域合成を継続するかどうか判定し、GOP内のフレーム間に対して帯域合成を行う必要がある場合には、2Nフレーム、2N+1フレームを再度GOP内の入力フレームとして扱うために入力管理部2005に通知し、帯域合成を行う必要がない場合には復号結果として動画像フレームを出力する機能を有する。
図26は、図20に示す従来の一般的な逆MCTFを用いた復号化装置の動作を表すフローチャートである。以下に図26を用いて図20に示す従来の一般的な逆MCTFを用いた復号化装置の動作を説明する。
まず、DEMUX部2002は、入力されるビットストリームを取得する(ステップS801)。取得したビットストリームに対してDEMUXを行い(ステップS802)、生成したサブバンド係数情報ビット列、動きベクトル情報ビット列をエントロピー復号化部2003に通知する。
次に、エントロピー復号化部2003は、DEMUX部2002からサブバンド係数情報ビット列、動きベクトル情報ビット列を取得し、それぞれの情報に対して所定のエントロピー復号化を行う(ステップS803)。その後、エントロピー符号化後に得られるサブバンド係数情報を逆量子化部2004に通知する。また、動きベクトル情報を対応関係特定部2006に通知する。
その後、逆量子化部2004は、エントロピー復号化部2003から取得したサブバンド係数情報に対して逆量子化を行う(ステップS804)。逆量子化後のサブバンド係数情報は、入力管理部2005に通知する。
入力管理部2005は、逆量子化部2004から逆量子化後のサブバンド係数情報を取得し、サブバンド分割後のL成分情報を含むL成分フレームとH成分情報を含むH成分フレームとするとともに、これらのフレームを1GOP分の情報として蓄積する(ステップS805)ことで、各成分フレームを復号後のGOP内のフレーム位置に対応付けて管理する。その後、対応関係特定部2006、画素補間部2009に対して処理対象となるフレームを通知する(ステップS806)。
その後、対応関係特定部2006は、エントロピー復号化部2003から動きベクトル情報を取得する。また、入力管理部2005から復号対象となるサブバンド分割後のL成分のサブバンド係数情報が格納されているL成分フレームと、H成分のサブバンド係数情報が格納されているH成分フレームを取得する。取得した動きベクトル情報を利用してH成分フレーム内の各H成分のサブバンド係数情報が、L成分フレーム内のどのL成分のサブバンド係数情報と対応関係にあるかを特定し(ステップS807)、サブバンド係数対応関係情報を生成する。ここで、サブバンド係数対応関係情報には、各L成分のサブバンド係数情報がL成分フレーム内の空間位置を保持することで、復号後のサブバンド係数情報の格納位置を特定できるようにする。同様に、対応関係にある各H成分のサブバンド係数情報がH成分フレーム内の空間位置を保持することで、復号後のサブバンド係数情報の格納位置を特定できるようにする。また、ある特定のL成分のサブバンド係数情報が複数のH成分のサブバンド係数情報との間に多重参照関係がある場合には、所定の方法に基づいて最初に復号すべきL成分のサブバンド係数情報とH成分のサブバンド係数情報を特定し、サブバンド係数対応関係情報に復号化を行う際の優先順位を反映する。対応関係特定部2006は、取得したL成分フレーム、H成分フレームおよび生成したサブバンド係数対応関係情報を第1フレーム間復号化部2007に通知する。
次に、第1フレーム間復号化部2007は、対応関係特定部2006から2Nフレーム側のL成分フレーム、2N+1フレーム側のH成分フレームおよび生成したサブバンド係数対応関係情報を取得する。取得したサブバンド係数対応関係情報から最初に復号すべきL成分のサブバンド係数情報と、2N+1フレーム側のH成分のサブバンド係数情報を特定し、所定のサブバンド合成によって帯域合成を行うことで、第1のフレーム間復号化を行う(ステップS808)とともに、帯域合成によって得られる時間方向に異なる2つのL成分のサブバンド係数情報を、サブバンド係数対応関係情報に基づいて2Nフレーム側、2N+1フレーム側の対応する空間位置に格納する。帯域合成後の2Nフレーム側および2N+1フレーム側に格納したL成分のサブバンド係数情報、帯域合成を行っていないサブバンド係数情報、サブバンド係数対応関係情報を第2フレーム間復号化部2008に通知する。
そして、第2フレーム間復号化部2008は、第1フレーム間復号化部2007から帯域合成後の2Nフレーム側および2N+1フレーム側に格納したL成分のサブバンド係数情報、帯域合成を行っていないサブバンド係数情報、サブバンド係数対応関係情報を取得する。第1フレーム間復号化部2007によって既に復号した2Nフレーム側のL成分のサブバンド係数情報と、第1フレーム間復号化部2007で復号対象とならなかったH成分のサブバンド係数情報との対応関係をサブバンド係数対応関係情報から特定し、所定のサブバンド合成によって帯域合成を行うことで、第1のフレーム間復号化の結果を利用して第2のフレーム間復号化を行う(ステップS809)とともに、帯域合成によって得られる時間方向に異なる2つのL成分のサブバンド係数情報を、サブバンド係数対応関係情報に基づいて2Nフレーム側、2N+1フレーム側の対応する空間位置に格納する。その後、帯域合成後の2Nフレーム側に格納したL成分のサブバンド係数情報を、画素補間部2009に通知する。また、2N+1フレーム側に格納したL成分のサブバンド係数情報をフレーム間復号化管理部2010に通知する。
次に、画素補間部2009は、第2フレーム間復号化部2008から2Nフレーム側に格納したL成分のサブバンド係数情報を取得する。画素補間部2009は、2Nフレーム内においてサブバンド合成による復号が行われていない画素補間領域を特定し、所定の画素補間方法に基づいて画素を補間することで、第1のフレーム間復号化で埋めきれなかった画素の補間を行う(ステップS810)。生成した2Nフレームをフレーム間復号化管理部2010に通知する。
その後、フレーム間復号化管理部2010は、画素補間部2009から画素補間を行った2Nフレームを取得するとともに、第2フレーム間復号化部2008から2N+1フレームを取得する。フレーム間復号化管理部2010は、帯域合成を継続するかどうか判定し、GOP内のフレーム間に対して帯域合成を行う必要がある場合には、2Nフレーム、2N+1フレームを再度GOP内の入力フレームとして扱うために入力管理部2005に通知し、帯域合成を行う必要がない場合には復号結果として動画像フレームを出力する。
以上のような処理を行うことで、一連の逆MCTFを用いた復号化処理が完了する。
次に、MCTF復号化装置の構成について説明する。
図21が示すMCTF復号化装置は、図20が示す従来のMCTF復号化装置の構成に対して、さらに少なくとも、順序情報解析部2101を備えることで実現する。
順序情報解析部2101は、エントロピー復号化部2003から順序情報ヘッダを取得する機能を有する。もしくは、順序情報ヘッダが取得できない場合には、各H成分フレーム毎に付加された順序情報を取得するようにしても良い。この順序情報から、図13に示すような解析を行うことで、各オクターブ分割毎での1GOP内における復号後のL成分フレームの順序関係およびフレーム格納位置を特定するためのフレーム格納位置特定情報を生成する機能を有する。生成したフレーム格納位置情報は、対応関係特定部2006、フレーム間復号化管理部2010に通知する機能を有する。
対応関係特定部2006は、更に順序情報解析部2101からフレーム格納位置特定情報を取得する機能を有する。取得したフレーム格納位置特定情報に基づいて、入力管理部2005から復号対象となるサブバンド分割後のL成分のサブバンド係数情報が格納されているL成分フレームと、H成分のサブバンド係数情報が格納されているH成分フレームを取得する機能を有する。ここで、取得したフレーム格納位置情報から現在処理しようとしているフレームが順方向のME/MCをされたものであるか、逆方向のME/MCをされたものであるかを特定する機能を有する。順方向の場合は、L成分フレームは復号後の2Nフレーム側の位置に対応し、H成分フレームは復号後の2N+1フレーム側の位置に対応しているものとする。逆方向であれば、L成分フレームは復号後の2N+1フレーム側の位置に対応し、H成分フレームは復号後の2Nフレーム側の位置に対応しているものとする。取得した動きベクトル情報を利用してH成分フレーム内の各H成分のサブバンド係数情報が、L成分フレーム内のどのL成分のサブバンド係数情報と対応関係にあるかを特定し、サブバンド係数対応関係情報を生成する機能を有する。ここで、サブバンド係数対応関係情報には、各L成分のサブバンド係数情報がL成分フレーム内の空間位置を保持することで、復号後のサブバンド係数情報の格納位置を特定できるようにする。同様に、対応関係にある各H成分のサブバンド係数情報がH成分フレーム内の空間位置を保持することで、復号後のサブバンド係数情報の格納位置を特定できるようにする。また、ある特定のL成分のサブバンド係数情報が複数のH成分のサブバンド係数情報との間に多重参照関係がある場合には、所定の方法に基づいて最初に復号すべきL成分のサブバンド係数情報とH成分のサブバンド係数情報を特定し、サブバンド係数対応関係情報に復号化を行う際の優先順位を反映する機能を有する。対応関係特定部2006は、取得したL成分フレーム、H成分フレームおよび生成したサブバンド係数対応関係情報を第1フレーム間復号化部2007に通知する機能を有する。
図27は、図21に示す逆MCTFを用いた復号化装置の動作を表すフローチャートである。以下に図27を用いて図21に示す復号化装置の動作を説明する。
まず、DEMUX部2002は、入力されるビットストリームを取得する(ステップS901)。取得したビットストリームに対してDEMUXを行い(ステップS902)、生成したサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列をエントロピー復号化部2003に通知する。
次に、エントロピー復号化部2003は、DEMUX部2002からサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を取得し、それぞれの情報に対して所定のエントロピー復号化を行う(ステップS903)。その後、エントロピー符号化後に得られるサブバンド係数情報を逆量子化部2004に通知する。また、動きベクトル情報を対応関係特定部2006に通知する。順序情報ビット列は、順序情報解析部2101に通知する。
その後、逆量子化部2004は、エントロピー復号化部2003から取得したサブバンド係数情報に対して逆量子化を行う(ステップS904)。逆量子化後のサブバンド係数情報は、入力管理部2005に通知する。
入力管理部2005は、逆量子化部2004から逆量子化後のサブバンド係数情報を取得し、サブバンド分割後のL成分情報を含むL成分フレームとH成分情報を含むH成分フレームとするとともに、これらのフレームを1GOP分の情報として蓄積する(ステップS905)ことで、各成分フレームを復号後のGOP内のフレーム位置に対応付けて管理する。
順序情報解析部2101は、エントロピー復号化部2003から順序情報ヘッダの内容である順序情報ビット列を取得する(ステップS906)。取得した順序情報ビット列に対して図13に示すような解析を行うことで、各オクターブ分割毎での1GOP内における復号後のL成分フレームの順序関係およびフレーム格納位置を特定するためのフレーム格納位置特定情報を生成する。生成したフレーム格納位置情報は、対応関係特定部2006、フレーム間復号化管理部2010に通知する。
その後、入力管理部2005は、対応関係特定部2006、画素補間部2009に対して処理対象となるフレームを通知する(ステップS907)。
その後、対応関係特定部2006は、エントロピー復号化部2003から動きベクトル情報を取得する。また、順序情報解析部2101からフレーム格納位置特定情報を取得する。取得したフレーム格納位置特定情報に基づいて、入力管理部2005から復号対象となるサブバンド分割後のL成分のサブバンド係数情報が格納されているL成分フレームと、H成分のサブバンド係数情報が格納されているH成分フレームを取得する。ここで、取得したフレーム格納位置情報から現在処理しようとしているフレームが順方向のME/MCをされたものであるか、逆方向のME/MCをされたものであるかを特定する。順方向の場合は、L成分フレームは復号後の2Nフレーム側の位置に対応し、H成分フレームは復号後の2N+1フレーム側の位置に対応しているものとする。逆方向であれば、L成分フレームは復号後の2N+1フレーム側の位置に対応し、H成分フレームは復号後の2Nフレーム側の位置に対応しているものとする。取得した動きベクトル情報を利用してH成分フレーム内の各H成分のサブバンド係数情報が、L成分フレーム内のどのL成分のサブバンド係数情報と対応関係にあるかを特定し(ステップS908)、サブバンド係数対応関係情報を生成する。ここで、サブバンド係数対応関係情報には、各L成分のサブバンド係数情報がL成分フレーム内の空間位置を保持することで、復号後のサブバンド係数情報の格納位置を特定できるようにする。同様に、対応関係にある各H成分のサブバンド係数情報がH成分フレーム内の空間位置を保持することで、復号後のサブバンド係数情報の格納位置を特定できるようにする。また、ある特定のL成分のサブバンド係数情報が複数のH成分のサブバンド係数情報との間に多重参照関係がある場合には、所定の方法に基づいて最初に復号すべきL成分のサブバンド係数情報とH成分のサブバンド係数情報を特定し、サブバンド係数対応関係情報に復号化を行う際の優先順位を反映する。対応関係特定部2006は、取得したL成分フレーム、H成分フレームおよび生成したサブバンド係数対応関係情報を第1フレーム間復号化部2007に通知する。
次に、第1フレーム間復号化部2007は、対応関係特定部2006から、順方向であれば、2Nフレーム側のL成分フレーム、2N+1フレーム側のH成分フレームおよび生成したサブバンド係数対応関係情報を取得する。逆方向であれば、2N+1フレーム側のL成分フレーム、2Nフレーム側のH成分フレームおよび生成したサブバンド係数対応関係情報を取得する。取得したサブバンド係数対応関係情報から最初に復号すべきL成分のサブバンド係数情報と、順方向であれば2N+1フレーム側、逆方向であれば2Nフレーム側のH成分のサブバンド係数情報を特定し、所定のサブバンド合成によって帯域合成を行うことで、第1のフレーム間復号化を行う(ステップS909)とともに、帯域合成によって得られる時間方向に異なる2つのL成分のサブバンド係数情報を、サブバンド係数対応関係情報に基づいて2Nフレーム側、2N+1フレーム側の対応する空間位置に格納する。帯域合成後の2Nフレーム側および2N+1フレーム側に格納したL成分のサブバンド係数情報、帯域合成を行っていないサブバンド係数情報、サブバンド係数対応関係情報を第2フレーム間復号化部2008に通知する。
そして、第2フレーム間復号化部2008は、第1フレーム間復号化部2007から帯域合成後の2Nフレーム側および2N+1フレーム側に格納したL成分のサブバンド係数情報、帯域合成を行っていないサブバンド係数情報、サブバンド係数対応関係情報を取得する。第1フレーム間復号化部2007によって既に復号した、順方向であれば2Nフレーム側、逆方向であれば2N+1フレーム側のL成分のサブバンド係数情報と、第1フレーム間復号化部2007で復号対象とならなかったH成分のサブバンド係数情報との対応関係をサブバンド係数対応関係情報から特定し、所定のサブバンド合成によって帯域合成を行うことで、第1のフレーム間復号化の結果を利用して第2のフレーム間復号化を行う(ステップS910)とともに、帯域合成によって得られる時間方向に異なる2つのL成分のサブバンド係数情報を、サブバンド係数対応関係情報に基づいて2Nフレーム側、2N+1フレーム側の対応する空間位置に格納する。その後、帯域合成後の順方向であれば2Nフレーム側、逆方向であれば2N+1フレーム側に格納したL成分のサブバンド係数情報を、画素補間部2009に通知する。また、順方向であれば2N+1フレーム側、逆方向であれば2Nフレーム側に格納したL成分のサブバンド係数情報をフレーム間復号化管理部2010に通知する。
次に、画素補間部2009は、第2フレーム間復号化部2008から順方向であれば2Nフレーム側、逆方向であれば2N+1フレーム側に格納したL成分のサブバンド係数情報を取得する。画素補間部2009は、順方向であれば2Nフレーム、逆方向であれば2N+1フレーム内においてサブバンド合成による復号が行われていない画素補間領域を特定し、所定の画素補間方法に基づいて画素を補間することで、第1のフレーム間復号化で埋めきれなかった画素の補間を行う(ステップS911)。生成した順方向であれば2Nフレーム、逆方向であれば2N+1フレームをフレーム間復号化管理部2010に通知する。
その後、フレーム間復号化管理部2010は、画素補間部2009から画素補間を行った順方向であれば2Nフレーム、逆方向であれば2N+1フレームを取得するとともに、第2フレーム間復号化部2008から順方向であれば2N+1フレーム、逆方向であれば2Nフレームを取得する。また、順序情報解析部2101からフレーム格納位置情報を取得する機能を有する。取得したフレーム格納位置情報を用いて、取得した2Nフレーム、2N+1フレームを1GOP内のフレーム格納位置に格納する機能を有する。フレーム間復号化管理部2010は、帯域合成を継続するかどうか判定し、GOP内のフレーム間に対して帯域合成を行う必要がある場合には、2Nフレーム、2N+1フレームを再度GOP内の入力フレームとして扱うために入力管理部2005に通知し、帯域合成を行う必要がない場合には復号結果として動画像フレームを出力する。
以上のような処理を行うことで、一連の逆MCTFを用いた復号化処理が完了する。
なお、本発明は、上記の復号化装置の機能を図22に示すコンピュータである中央処理制御装置2203に実現させるためのプログラムを含むものである。このプログラムは、記録媒体から読み取られて中央処理制御装置2203に取り込まれても良いし、通信ネットワークを介して伝送され中央処理制御装置2203に取り込まれても良い。
≪復号化装置の応用例≫
図23は、MCTF復号化装置の応用例において、ビットストリームの入力から復号化後の動画像フレームを出力するまでを示した機能ブロック図である。以下に、図23に示す各ブロックの機能を示す。
復号化装置の応用例は、図23に示すように、DEMUX部2002、エントロピー復号化部2003、逆量子化部2004、入力管理部2301、MC部2302、フレーム間サブバンド復号化部2303、重なり順序制御部2304、逆MC部2305、画素補間部2306、フレーム間サブバンド復号化管理部2307、順序情報解析部3208によって少なくとも構成される。
DEMUX部2002は、取得したビットストリームを多重化分離(以後、DEMUX)して、サブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列と、復号時に必要となる各種の制御情報を生成し、サブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を後述するエントロピー復号化部2003に通知する機能を有する。
エントロピー復号化部2003は、DEMUX部2002から通知されるサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を取得する機能を有する。取得したサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列に対してエントロピー復号化を行い、サブバンド係数情報、動きベクトル情報、順序情報を生成する機能を有する。生成したサブバンド係数情報を後述する逆量子化部2004に通知する機能を有する。また、生成した動きベクトル情報を後述するMC部2302、逆MC部2305に通知する機能を有する。さらに、生成した順序情報を順序情報解析部2308に通知する機能を有する。
逆量子化部2004は、エントロピー復号化部2003からサブバンド係数情報を取得する機能を有する。取得したサブバンド係数情報に対して所定の逆量子化を行う機能を有する。逆量子化後のサブバンド係数情報を後述の入力管理部2301に通知する機能を有する。
入力管理部2301は、逆量子化部2004から逆量子化後のサブバンド係数情報を取得する機能を有する。取得した逆量子化後のサブバンド係数情報は、サブバンド分割後のL成分情報を含むL成分フレームとH成分情報を含むH成分フレームとして管理する機能を有する。一般に、この入力管理部2301は、GOPを再構成するために必要なフレーム数を構成できるだけのサブバンド係数情報を逆量子化部2004から取得し、後述するMC部2302、フレーム間サブバンド復号化部2303、画素補間部2306に対して処理対象となるフレームを通知する機能を有する。
MC部2302は、順序情報解析部2308からフレーム格納位置特定情報を取得する機能を有する。取得したフレーム格納位置特定情報に基づいて、入力管理部2301から復号対象となるサブバンド分割後のL成分のサブバンド係数情報が格納されているL成分フレームと、H成分のサブバンド係数情報が格納されているH成分フレームを取得する機能を有する。ここで、取得したフレーム格納位置情報から現在処理しようとしているフレームが順方向のME/MCをされたものであるか、逆方向のME/MCをされたものであるかを特定する機能を有する。順方向の場合は、L成分フレームは復号後の2Nフレーム側の位置に対応し、H成分フレームは復号後の2N+1フレーム側の位置に対応しているものとする。逆方向であれば、L成分フレームは復号後の2N+1フレーム側の位置に対応し、H成分フレームは復号後の2Nフレーム側の位置に対応しているものとする。順方向であれば、2Nフレームは符号化側において、動き推定を行う際に動きベクトル探索される側のフレームであるものとする。また、2N+1フレームは符号化側において、動き推定を行う際の基準となるフレームであるものとする。逆方向であれば、2N+1フレームは符号化側において、動き推定を行う際に動きベクトル探索される側のフレームであるものとする。また、2Nフレームは符号化側において、動き推定を行う際の基準となるフレームであるものとする。MC部2302は、通常、順方向であれば2Nフレーム、逆方向であれば2N+1フレームに対応するL成分フレーム対して領域外参照を許容するためにフレームの外側の領域を拡張するための所定のパディング処理を行う機能を有する。ここで、符号化側において領域外参照を禁止した場合には、MC部2302において領域外参照を禁止するようにしてもよい。領域外参照を禁止した場合には、必ずしも所定のパディング処理を行わなくてもよい。MC部2302は、エントロピー復号化部2003から動きベクトル情報を取得する機能を有する。MC部2302は、パディング後のL成分フレーム、対応する領域の形状情報、動きベクトル情報に基づいて動き補償フレーム(以降、MCフレーム)を生成する機能を有する。ここで、MCを行う際に利用する基準領域の形状情報は、符号化側の動き推定部(以降、ME部とする)において、順方向であれば2N+1フレーム、逆方向であれば2Nフレームを所定の領域分割方法に基づいて各領域間が重複しないように複数の基準領域に分割するため、この基準領域の形状情報を取得する必要がある。ただし、ここでは以後の説明を簡単にするため、基準領域の形状はあらかじめ符号化装置および復号化装置で決められた所定の4×4のブロック形状であるものとし、基準領域の形状情報の授受に関しては言及する必要がないものとする。MC部2302は、フレーム間サブバンド復号化部2303に対してL成分フレームを元に生成したMCフレームを通知する機能を有する。
フレーム間サブバンド復号化部2303は、入力管理部2301から復号化時の順方向であれば2N+1フレーム、逆方向であれば2Nフレームに対応するH成分フレーム、MC部2302からL成分フレームに対してMCを行ったMCフレームを取得する機能を有する。取得したMCフレームとH成分フレームに対して、所定のサブバンド合成によって帯域合成を行うとともに、帯域合成によって得られる時間方向に異なる2フレームのL成分フレームを対応する2Nフレーム、2N+1フレームに格納する機能を有する。順方向であれば2Nフレーム、逆方向であれば2N+1フレームを後述する逆MC部2305に通知するとともに、順方向であれば2N+1フレーム、逆方向であれば2Nフレームを後述するフレーム間サブバンド復号化管理部2307に通知する機能を有する。
重なり順序制御部2304は、逆MC部2305に対して、逆MCする際の各基準領域の重なり順序情報を通知する機能を有する。ただし、ここでは以後の説明を簡単にするため、各基準領域の重なり順序情報は、あらかじめ符号化装置および復号化装置で決められた所定の順序であるものとし、各基準領域の重なり順序情報の授受に関しては言及する必要がないものとする。ここでの所定の順序は、左上に配置された基準領域から右下に向かってラスタ順に処理を行うようにすることで、重なり順序制御部2304は逆MC部2305を制御するものとする。
逆MC部2305は、エントロピー復号化部2003から動きベクトル情報、フレーム間サブバンド復号化部2303から順方向であれば2Nフレーム、逆方向であれば2N+1フレームを取得する機能を有する。取得した動きベクトル情報、基準領域の形状情報から、帯域合成後の順方向であれば2Nフレーム、逆方向であれば2N+1フレームに対して、所定の各基準領域の重なり順序に基づいて制御する重なり順序制御部2304の制御に応じて、取得した動きベクトル情報を逆方向に適用して動き補償を行う機能、つまり逆MCを行い、逆MC後の順方向であれば2Nフレーム、逆方向であれば2N+1フレームを生成する機能を有する。逆MC部2305は、生成した逆MC後の順方向であれば2Nフレーム、逆方向であれば2N+1フレームを画素補間部2306に通知する機能を有する。逆MCによって画素が埋められていない領域に対しては、画素補間部2306に対して画素補間領域情報を通知する機能を有してもよい。ここでは、処理を簡単にするために、画素補間領域情報は、逆MC後の順方向であれば2Nフレーム、逆方向であれば2N+1フレームに補間が必要であることを示す値、例えば「−1」の値を格納し、画素補間部2306では、この情報を元にして画素補間領域情報を取得することとする。後述において、この画素補間領域情報の授受に関しては言及する必要がないものとする。
画素補間部2306は、入力管理部2301から復号前の順方向であれば2Nフレーム、逆方向であれば2N+1フレームに対応するL成分フレーム、逆MC部2305から逆MC後の順方向であれば2Nフレーム、逆方向であれば2N+1フレームを取得する機能を有する。画素補間部2306は、取得した逆MC後の順方向であれば2Nフレーム、逆方向であれば2N+1フレームにおいて、逆MCによって画素が埋められていない領域に関する情報である画素補間領域情報に基づいて画素の補間を行う機能を有する。画素が埋められていない領域の判定は、逆MC部2305から画素補間領域情報を取得する機能を有してもよい。処理を簡単にするために、ここで画素補間領域情報は、逆MC後の順方向であれば2Nフレーム、逆方向であれば2N+1フレームに補間が必要であることを示す値、例えば「−1」の値が格納されるものとし、この情報を元にして画素補間領域情報を取得することとする。後述において、この画素補間領域情報の授受に関しては言及する必要がないものとする。画素補間後の順方向であれば2Nフレーム、逆方向であれば2N+1フレームは、フレーム間サブバンド復号化管理部2307に通知する機能を有する。
フレーム間サブバンド復号化管理部2307は、画素補間部2306から画素補間を行った順方向であれば2Nフレーム、逆方向であれば2N+1フレームを取得する機能を有する。また、フレーム間サブバンド復号化部2303から順方向であれば2N+1フレーム、逆方向であれば2Nフレームを取得する機能を有する。また、順序情報解析部2308からフレーム格納位置情報を取得する機能を有する。取得したフレーム格納位置情報を用いて、取得した2Nフレーム、2N+1フレームを1GOP内のフレーム格納位置に格納する機能を有する。フレーム間サブバンド復号化管理部2307は、帯域合成を継続するかどうか判定し、GOP内のフレーム間に対して帯域合成を行う必要がある場合には、2Nフレーム、2N+1フレームを再度GOP内の入力フレームとして扱うために入力管理部2301に通知し、帯域合成を行う必要がない場合には復号結果として動画像フレームを出力する機能を有する。
順序情報解析部3208は、エントロピー復号化部2003から順序情報ヘッダを取得する機能を有する。もしくは、順序情報ヘッダが取得できない場合には、各H成分フレーム毎に付加された順序情報を取得するようにしても良い。この順序情報から、図13に示すような解析を行うことで、各オクターブ分割毎での1GOP内における復号後のL成分フレームの順序関係およびフレーム格納位置を特定するためのフレーム格納位置特定情報を生成する機能を有する。生成したフレーム格納位置情報は、MC部2302、フレーム間サブバンド復号化管理部2307に通知する機能を有する。
図15および図16は、図23に示す復号化装置の応用例の動作を表すフローチャートである。以下に図15、図16を用いて図23に示す復号化装置の動作を説明する。
まず、DEMUX部2002は、入力されるビットストリームを取得する(ステップS601)。その後、取得したビットストリームに対してDEMUXを行う(ステップS602)ことで、サブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列と、復号時に必要となる各種の制御情報を生成し、サブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を後述するエントロピー復号化部2003に通知する。
エントロピー復号化部2003は、DEMUX部2002から通知されるサブバンド係数情報ビット列、動きベクトル情報ビット列、順序情報ビット列を取得し、各情報に対してエントロピー復号化を行う(ステップS603)。エントロピー復号化により生成したサブバンド係数情報は、逆量子化部2004に通知し、生成した動きベクトル情報はMC部2302、逆MC部2305に通知する。さらに、生成した順序情報は、順序情報解析部2308に通知する。
その後、逆量子化部2004において、エントロピー復号化部2003からサブバンド係数情報を取得し、逆量子化を行う(ステップS604)。逆量子化後のサブバンド係数情報は、入力管理部2301に通知する。
入力管理部2301は、逆量子化部2004から逆量子化後のサブバンド係数情報を取得し、サブバンド分割後のL成分情報を含むL成分フレームとH成分情報を含むH成分フレームとして管理する。また、入力管理部2301は、GOPを再構成するために必要なフレーム数を構成できるだけのサブバンド係数情報を逆量子化部2004から取得することで、1GOPを構成するための情報を蓄積する(ステップS605)。その後、MC部2302、フレーム間サブバンド復号化部2303、逆MC部2305、画素補間部2306に対して逆MCTFの処理対象となるフレームを通知する(ステップS606)。
順序情報解析部3208は、エントロピー復号化部2003から順序情報ヘッダを取得する(ステップS501)。もしくは、順序情報ヘッダが取得できない場合には、各H成分フレーム毎に付加された順序情報を取得するようにしても良い。この順序情報から、図13に示すような解析を行うことで、各オクターブ分割毎での1GOP内における復号後のL成分フレームの順序関係およびフレーム格納位置を特定するためのフレーム格納位置特定情報を生成する。生成したフレーム格納位置情報は、MC部2302、フレーム間サブバンド復号化管理部2307に通知する。
入力管理部2301は、基本逆MCTF処理を行うために、逆MCTFの対象となる情報群をセットする(ステップS502)。ここでは、基本逆MCTF処理の対象となるL成分フレームとH成分フレームを特定し、セットする。
MC部2302は、順序情報解析部2308からフレーム格納位置特定情報を取得する。取得したフレーム格納位置特定情報に基づいて、入力管理部2301から復号対象となるサブバンド分割後のL成分のサブバンド係数情報が格納されているL成分フレームと、H成分のサブバンド係数情報が格納されているH成分フレームを取得する。ここで、取得したフレーム格納位置情報から現在処理しようとしているフレームが順方向のME/MCをされたものであるか、逆方向のME/MCをされたものであるかを特定する。順方向の場合は、L成分フレームは復号後の2Nフレーム側の位置に対応し、H成分フレームは復号後の2N+1フレーム側の位置に対応しているものとする。逆方向であれば、L成分フレームは復号後の2N+1フレーム側の位置に対応し、H成分フレームは復号後の2Nフレーム側の位置に対応しているものとする。順方向であれば、2Nフレームは符号化側において、動き推定を行う際に動きベクトル探索される側のフレームであるものとする。また、2N+1フレームは符号化側において、動き推定を行う際の基準となるフレームであるものとする。逆方向であれば、2N+1フレームは符号化側において、動き推定を行う際に動きベクトル探索される側のフレームであるものとする。また、2Nフレームは符号化側において、動き推定を行う際の基準となるフレームであるものとする。MC部2302は、通常、順方向であれば2Nフレーム、逆方向であれば2N+1フレームに対応するL成分フレーム対して領域外参照を許容するためにフレームの外側の領域を拡張するための所定のパディング処理を行う。ここで、符号化側において領域外参照を禁止した場合には、MC部2302において領域外参照を禁止するようにしてもよい。領域外参照を禁止した場合には、必ずしも所定のパディング処理を行わなくてもよい。MC部2302は、エントロピー復号化部2003から動きベクトル情報を取得する。MC部2302は、パディング後のL成分フレーム、対応する領域の形状情報、動きベクトル情報に基づいて動き補償フレーム(以降、MCフレーム)を生成する(ステップS503)。ここで、MCを行う際に利用する基準領域の形状情報は、符号化側の動き推定部(以降、ME部とする)において、順方向であれば2N+1フレーム、逆方向であれば2Nフレームを所定の領域分割方法に基づいて各領域間が重複しないように複数の基準領域に分割するため、この基準領域の形状情報を取得する必要がある。ただし、ここでは以後の説明を簡単にするため、基準領域の形状はあらかじめ符号化装置および復号化装置で決められた所定の4×4のブロック形状であるものとし、基準領域の形状情報の授受に関しては言及する必要がないものとする。MC部2302は、フレーム間サブバンド復号化部2303に対してL成分フレームを元に生成したMCフレームを通知する。
フレーム間サブバンド復号化部2303は、入力管理部2301から復号化時の順方向では2N+1フレーム、逆方向では2Nフレームに対応するH成分フレーム、MC部2302からL成分フレームに対してMCを行ったMCフレームを取得する。取得したMCフレームとH成分フレームに対して、所定のサブバンド合成によってフレーム間サブバンド復号化を行い(ステップS504)、生成した時間方向に異なる2フレームのL成分フレームを対応する2Nフレーム、2N+1フレームに格納する。順方向では2Nフレーム、逆方向では2N+1フレームを逆MC部2305に通知するとともに、順方向では2N+1フレーム、逆方向では2Nフレームをフレーム間サブバンド復号化管理部2307に通知する。
逆MC部2305は、エントロピー復号化部2003から動きベクトル情報、フレーム間サブバンド復号化部2303から順方向では2Nフレーム、逆方向では2N+1フレームを取得する。取得した動きベクトル情報、基準領域の形状情報から、帯域合成後の順方向では2Nフレーム、逆方向では2N+1フレームに対して、所定の各基準領域の重なり順序に基づいて制御する重なり順序制御部2304の制御に応じて、取得した動きベクトル情報を逆方向に適用して逆MCを行い(ステップS505)、逆MC後の順方向では2Nフレーム、逆方向では2N+1フレームを生成する。生成した逆MC後の順方向では2Nフレーム、逆方向では2N+1フレームを画素補間部2306に通知する。逆MCによって画素が埋められていない領域に対しては、画素補間部2306に対して画素補間領域情報を通知する機能を有してもよい。ここでは、処理を簡単にするために、画素補間領域情報は、逆MC後の順方向では2Nフレーム、逆方向では2N+1フレームに補間領域を示す値、例えば「−1」の値を格納し、画素補間部2306では、この情報を元にして画素補間領域情報を取得することとする。後述において、この画素補間領域情報の授受に関しては言及する必要がないものとする。
画素補間部2306は、入力管理部2301から復号前の順方向では2Nフレーム、逆方向では2N+1フレームに対応するL成分フレーム、逆MC部2305から逆MC後の順方向では2Nフレーム、逆方向では2N+1フレームを取得する。取得した逆MC後の順方向では2Nフレーム、逆方向では2N+1フレームにおいて、逆MCによって画素が埋められていない領域に関する情報である画素補間領域情報に基づいて画素の補間を行う(ステップS506)。画素が埋められていない領域の判定は、逆MC部2305から画素補間領域情報を取得する機能を有してもよい。処理を簡単にするために、ここで画素補間領域情報は、逆MC後の順方向では2Nフレーム、逆方向では2N+1フレームに、補間領域を示す値、例えば「−1」の値が格納されるものとし、この情報を元にして画素補間領域情報を取得することとする。後述において、この画素補間領域情報の授受に関しては言及する必要がないものとする。画素補間後の順方向では2Nフレーム、逆方向では2N+1フレームは、フレーム間サブバンド復号化管理部2307に通知する。
フレーム間サブバンド復号化管理部2307は、画素補間部2306から画素補間を行った順方向では2Nフレーム、逆方向では2N+1フレームを取得するとともに、フレーム間サブバンド復号化部2303から順方向では2N+1フレーム、逆方向では2Nフレームを取得する。
その後、現在のオクターブ分割数において処理対象となるフレームが存在するかを判定する(ステップS507)。処理対象となるフレームが存在する場合には、Nを更新して現在のオクターブ分割数における次の処理対象となるフレーム群をセットして処理を繰り返す。処理対象となるフレームが存在しない場合には、所定のオクターブ分割数であるかを、取得したフレームの位置から特定して帯域合成を継続するかどうか判定し(ステップS608)、GOP内のフレーム間に対して帯域合成を行う必要がある場合には、処理後のL成分フレーム群を再度GOP内の入力フレームとして扱うために入力管理部2301に通知し、ステップS606からの処理を繰り返す。帯域合成を行う必要がない場合には復号結果として動画像フレームを出力することで一連の復号化処理が完了する。
以上のようなステップからなる方法に基づいて動作する、図23のような構成を備えた復号化装置を提供することで、復号時に係数間の依存関係を排除し、効率の良い復号化が可能となる。
なお、本発明は、上記の復号化装置の応用例の機能を図24に示すコンピュータである中央処理制御装置2403に実現させるためのプログラムを含むものである。このプログラムは、記録媒体から読み取られて中央処理制御装置2403に取り込まれても良いし、通信ネットワークを介して伝送され中央処理制御装置2403に取り込まれても良い。
また、サブバンド符号化の演算は従来から用いられている加算方法及び減算方法により実現する方法により説明を行った。その演算方法はターゲット画像から動き補償された参照画像を減算した後に、減算して得られた画像に更新されたターゲット画像を加算するようにして低域成分画像(L画像)及び高域成分画像(H画像)を得るような演算方法によっても実現できる。その場合であっても、参照画像とターゲット画像の配置を順方向又は逆方向とし、動き予測が困難な要素(テクスチャ)を多く含む画像情報を参照画像の方に配置することによりH画像のデータ量を少なく出来ると共に、L画像に多くの画像情報を含ませることが出来るものである。
以上のように、本実施例で示した動画像符号化装置は、動画像を並列出力する入力管理部1702と、前記並列出力された前記動画像のうちの1つのフレームを第1参照画像、前記第1参照画像の直後の1フレームを第1ターゲット画像とした場合に、前記第1参照画像から前記第1ターゲット画像の動きを推定して順方向の動きベクトル情報を取得する順方向動き推定部1703と、前記第1参照画像と前記第1ターゲット画像を入れ替えて、前記第1参照画像を第2ターゲット画像とし、前記第1ターゲット画像を第2参照画像とした場合に、前記第2参照画像から前記第2ターゲット画像の動きを推定して逆方向の動きベクトル情報を取得する逆方向動き推定部1704と、前記順方向の動きベクトル情報に基づいて、前記第1参照画像と前記第1ターゲット画像間の動きを補償するための順方向動き補償画像を得る順方向動き補償部1705と、前記逆方向の動きベクトル情報に基づいて、前記第2参照画像と前記第2ターゲット画像の動きを補償するための逆方向動き補償画像を得る逆方向動き補償部1706と、前記順方向動き補償部で得られた前記順方向動き補償画像と前記第1ターゲット画像との類似度と、前記逆方向動き補償部で得られた前記逆方向動き補償画像と前記第2ターゲット画像との類似度を比較し、前記類似度が高い方はいずれであるかを判定する類似度判定部1707と、前記類似度判定部で前記類似度が高いと判定された方の前記順方向動き補償部或いは前記逆方向動き補償部に切り替える切り替え部1709と、前記切り替え部で切り替えられた前記順方向動き補償部或いは前記逆方向動き補償部から出力される前記順方向動き補償画像と前記第1ターゲット画像或いは前記逆方向動き補償画像と前記第2ターゲット画像とを加算して前記動画像よりも低レートな圧縮画像を得る一方、前記第1或いは第2参照画像と前記圧縮画像とを減算して前記圧縮画像から前記第1参照画像と前記第1ターゲット画像或いは前記第2参照画像と前記第2ターゲット画像に復元する復元用補助画像を得るフレーム間サブバンド符号化部1711とを有しているので、動き補償時間方向フィルタ処理を行うに際し、過去のフレーム画像及び未来のフレーム画像に注目することにより、低い周波数のフレームレートに変換された低域成分及び高域成分の画像のうち、低域成分の画像の方に、視覚上必要とされる画像成分を残すようにし、且つフレーム間隔を不等間隔にした圧縮符号化効率の高いサブバンド符号化出力が得られる動画像符号化装置を実現できる。
また、MCTFを行う際に順方向および逆方向のME/MCの結果から重要なフレームを選択できることから、従来法において問題となっていたMCTFを用いて時間方向のスケーラビリティを実現しようとした場合、MCTFのフレーム間サブバンド符号化の過程で生じる等間隔のデシメーションの結果、生成されたL成分フレームに対して動きとして重要なフレームが十分反映させるようにした符号化を行える。符号化効率も、GOP内のフレーム間の相関を十分活かし、効率の高い符号化を行える。
さらに、時間方向のスケーラビリティによってフレームレートを変更した際のフレーム間隔を不等間隔にすることで、従来のMCTFによる同じフレームレートの動画像よりも自然な動画像再生を得ることができる。
動画像符号化装置で符号化に使用したフレーム画像の並び順及び動きベクトル情報を多重化して符号化信号を生成するため、特に視聴上重要な画像情報を含む低フレームレートの動画像を再生する動画像再生方法を提供できると共に、動画像再生装置を実現できる。コンピュータにより駆動されて動作する動画像再生装置用のコンピュータプログラムを提供できる。
本発明は、動画像の時間方向にフレーム間のサブバンド分割を行う動画像符号化装置、及びその復号化装置に適用できる。
本発明の実施に係る動画像符号化装置の構成例を示すブロック図である。 本発明の実施に係る動画像符号化装置の符号化の流れを示す図である。 本発明の実施に係る動画像符号化装置の符号化の方法を示す図である。 本発明の実施に係る動画像符号化装置の符号化方法の説明図である。 本発明の実施に係る動画像符号化装置の符号化方法の説明図である。 本発明のMCTF符号化のサブバンド分解の過程を示すための図である。 本発明のMCTF符号化のサブバンド分解の過程を示すための図である。 本発明のMCTF符号化のサブバンド分解の過程を示すための図である。 本発明の基本MCTF処理の過程を示すためのフローチャートである。 本発明のMCTF処理の過程を示すためのフローチャートである。 本発明のMCTF復号化において、復号化時のフレーム位置が確定しない場合の処理過程を示すための図である。 本発明のMCTF符号化および復号化において、順序情報ヘッダを構成する際の手順について示すための図である。 本発明のMCTF復号化において、順序情報ヘッダから復号時のフレーム位置を確定するための情報を生成する過程を示すための図である。 本発明のMCTF復号化において、順序情報ヘッダから復号時のフレーム位置を確定した場合の処理過程を示すための図である。 本発明の基本逆MCTF処理の過程を示すためのフローチャートである。 本発明の逆MCTF処理の過程を示すためのフローチャートである。 本発明のMCTF符号化装置構成を示すためのブロック図である。 本発明のMCTF符号化装置における応用例の構成を示すためのブロック図である。 本発明のMCTF符号化プログラムを実行する情報処理装置を表す機能ブロック図である。 従来のMCTF復号化装置の構成を示すためのブロック図である。 本発明のMCTF復号化装置の構成を示すためのブロック図である。 本発明のMCTF復号化プログラムを実行する情報処理装置を表す機能ブロック図である。 本発明のMCTF復号化装置の応用例の構成を示すためのブロック図である。 本発明のMCTF復号化プログラムを実行する情報処理装置を表す機能ブロック図である。 本発明の基本MCTF処理の過程を示すためのフローチャートである。 従来の一般的な逆MCTFを用いたMCTF復号化装置の動作を表すフローチャートである。 本発明のMCTF復号化装置の動作を表すフローチャートである。
符号の説明
1 動画像符号化装置
12 入力管理部
13 順方向動き推定部
14 逆方向動き推定部
15 順方向動き補償部
16 逆方向動き補償部
17 類似度判定部
18、19 スイッチ
21 フレーム間サブバンド符号化部
25 量子化部
26 エントロピ符号化部
27 多重化部
101 動画像フレーム
102 入力管理部
103 MCTF部
104 量子化部
105 エントロピー符号化部
106 MUX部
107 ビットストリーム
1700 MCTF部
1701 動画像フレーム
1702 入力管理部
1703 順方向ME部
1704 逆方向ME部
1705 順方向MC部
1706 逆方向MC部
1707 類似度判定部
1708 スイッチ1
1709 スイッチ2
1710 制御部
1711 フレーム間サブバンド符号化部
1712 逆MC部
1713 画素補間部
1714 フレーム間サブバンド符号化管理部
1715 量子化部
1716 エントロピー符号化部
1717 MUX部
1718 ビットストリーム
1801 重なり特定部
1802 誤差補正部
1900 情報処理装置
1901 入力装置
1902 出力装置
1903 中央処理制御装置
1904 外部記憶装置
1905 一時記憶装置
1906 通信装置
2000 逆MCTF部
2001 ビットストリーム
2002 DEMUX部
2003 エントロピー復号化部
2004 逆量子化部
2005 入力管理部
2006 対応関係特定部
2007 第1フレーム間復号化部
2008 第2フレーム間復号化部
2009 画素補間部
2010 フレーム間復号化管理部
2011 動画像フレーム
2101 順序情報解析部
2200 情報処理装置
2201 入力装置
2202 出力装置
2203 中央処理制御装置
2204 外部記憶装置
2205 一時記憶装置
2206 通信装置
2300 逆MCTF部
2301 入力管理部
2302 MC部
2303 フレーム間サブバンド復号化部
2304 重なり順序制御部
2305 逆MC部
2306 画素補間部
2307 フレーム間サブバンド復号化管理部
2308 順序情報解析部
2400 情報処理装置
2401 入力装置
2402 出力装置
2403 中央処理制御装置
2404 外部記憶装置
2405 一時記憶装置
2406 通信装置

Claims (2)

  1. 高速レートで伝送されてくる動画像を低速レート伝送が可能なように圧縮を行う動画像符号化装置において、
    前記動画像を並列出力する並列入力部と、
    前記並列出力された前記動画像のうちの1つのフレームを第1参照画像、前記第1参照画像の直後の1フレームを第1ターゲット画像とした場合に、前記第1参照画像から前記第1ターゲット画像の動きを推定して順方向の動きベクトル情報を取得する順方向動き推定部と、
    前記第1参照画像と前記第1ターゲット画像を入れ替えて、前記第1参照画像を第2ターゲット画像とし、前記第1ターゲット画像を第2参照画像とした場合に、前記第2参照画像から前記第2ターゲット画像の動きを推定して逆方向の動きベクトル情報を取得する逆方向動き推定部と、
    前記順方向の動きベクトル情報に基づいて、前記第1参照画像と前記第1ターゲット画像間の動きを補償するための順方向動き補償画像を得る順方向動き補償部と、
    前記逆方向の動きベクトル情報に基づいて、前記第2参照画像と前記第2ターゲット画像の動きを補償するための逆方向動き補償画像を得る逆方向動き補償部と、
    前記順方向動き補償部で得られた前記順方向動き補償画像と前記第1ターゲット画像との類似度と、前記逆方向動き補償部で得られた前記逆方向動き補償画像と前記第2ターゲット画像との類似度を比較し、前記類似度が高い方はいずれであるかを判定する類似度判定部と、
    前記類似度判定部で前記類似度が高いと判定された方の前記順方向動き補償部或いは前記逆方向動き補償部に切り替える切り替え部と、
    前記切り替え部で切り替えられた前記順方向動き補償部或いは前記逆方向動き補償部から出力される前記順方向動き補償画像と前記第1ターゲット画像或いは前記逆方向動き補償画像と前記第2ターゲット画像とを加算して前記動画像よりも低レートな圧縮画像を得る一方、前記第1或いは第2参照画像と前記圧縮画像とを減算して前記圧縮画像から前記第1参照画像と前記第1ターゲット画像或いは前記第2参照画像と前記第2ターゲット画像に復元する復元用補助画像を得るフレーム間サブバンド符号化部と、
    を有することを特徴とする動画像符号化装置。
  2. 高速レートで伝送されてくる動画像を低速レート伝送が可能なように圧縮を行う動画像符号化方法において、
    前記動画像を並列出力し、並列出力された前記動画像のうちの1つのフレームを第1参照画像、前記第1参照画像の直後の1フレームを第1ターゲット画像とした場合に、前記第1参照画像から前記第1ターゲット画像の動きを推定して順方向の動きベクトル情報を取得する一方、前記第1参照画像と前記第1ターゲット画像を入れ替えて、前記第1参照画像を第2ターゲット画像とし、前記第1ターゲット画像を第2参照画像とした場合に、前記第2参照画像から前記第2ターゲット画像の動きを推定して逆方向の動きベクトル情報を取得し、
    前記順方向の動きベクトル情報に基づいて、前記第1参照画像と前記第1ターゲット画像間の動きを補償するための順方向動き補償画像を得ると共に、前記逆方向の動きベクトル情報に基づいて、前記第2参照画像と前記第2ターゲット画像の動きを補償するための逆方向動き補償画像を得、
    前記順方向動き補償画像と前記第1ターゲット画像との類似度と、前記逆方向動き補償部で得られた前記逆方向動き補償画像と前記第2ターゲット画像との類似度を比較し、前記類似度が高い方はいずれであるかを判定し、
    前記類似度が高いと判定された方の前記順方向動き補償部或いは前記逆方向動き補償部に切り替え、切り替えられて得られる前記順方向動き補償部或いは前記逆方向動き補償部から出力される、前記順方向動き補償画像と前記第1ターゲット画像或いは前記逆方向動き補償画像と前記第2ターゲット画像とを加算して前記動画像よりも低レートな圧縮画像を得る一方、前記第1或いは第2参照画像と前記圧縮画像とを減算して前記圧縮画像から前記第1参照画像と前記第1ターゲット画像或いは前記第2参照画像と前記第2ターゲット画像に復元する復元用補助画像を得ることを特徴とする動画像符号化方法。
JP2004370808A 2004-12-22 2004-12-22 動画像符号化装置、動画像符号化方法 Expired - Fee Related JP4251291B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004370808A JP4251291B2 (ja) 2004-12-22 2004-12-22 動画像符号化装置、動画像符号化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004370808A JP4251291B2 (ja) 2004-12-22 2004-12-22 動画像符号化装置、動画像符号化方法

Related Child Applications (3)

Application Number Title Priority Date Filing Date
JP2008314298A Division JP4404157B2 (ja) 2008-12-10 2008-12-10 動画像符号化装置および動画像符号化方法
JP2008314300A Division JP4870143B2 (ja) 2008-12-10 2008-12-10 動画像符号化装置、動画像符号化方法、動画像復号装置、動画像復号方法
JP2008314299A Division JP4403565B2 (ja) 2008-12-10 2008-12-10 動画像復号装置および動画像復号方法

Publications (2)

Publication Number Publication Date
JP2006180173A JP2006180173A (ja) 2006-07-06
JP4251291B2 true JP4251291B2 (ja) 2009-04-08

Family

ID=36733853

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004370808A Expired - Fee Related JP4251291B2 (ja) 2004-12-22 2004-12-22 動画像符号化装置、動画像符号化方法

Country Status (1)

Country Link
JP (1) JP4251291B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8811481B2 (en) 2007-05-29 2014-08-19 Nec Corporation Moving picture transcoding apparatus, moving picture transcoding method, and moving picture transcoding program
JP4894018B2 (ja) * 2008-02-08 2012-03-07 株式会社Jvcケンウッド 画像処理装置、画像処理方法、および画像処理プログラム
US8724712B1 (en) 2011-07-07 2014-05-13 Google Inc. Apparatus and method for encoding at non-uniform intervals
WO2013173292A1 (en) 2012-05-14 2013-11-21 Motorola Mobility Llc Scalable video coding with enhanced base layer
US10356406B2 (en) 2016-01-19 2019-07-16 Google Llc Real-time video encoder rate control using dynamic resolution switching

Also Published As

Publication number Publication date
JP2006180173A (ja) 2006-07-06

Similar Documents

Publication Publication Date Title
JP4494789B2 (ja) 動的フィルタのコーディング
KR100703740B1 (ko) 다 계층 기반의 모션 벡터를 효율적으로 부호화하는 방법및 장치
KR100703788B1 (ko) 스무딩 예측을 이용한 다계층 기반의 비디오 인코딩 방법,디코딩 방법, 비디오 인코더 및 비디오 디코더
KR100888963B1 (ko) 영상 신호의 스케일러블 인코딩 및 디코딩 방법
KR100893868B1 (ko) 영상 신호의 인코딩 및 디코딩 방법
US20060209961A1 (en) Video encoding/decoding method and apparatus using motion prediction between temporal levels
EP1737243A2 (en) Video coding method and apparatus using multi-layer based weighted prediction
KR20060105409A (ko) 영상 신호의 스케일러블 인코딩 및 디코딩 방법
KR20060088461A (ko) 영상신호의 엔코딩/디코딩시에 영상블록을 위한 모션벡터를베이스 레이어 픽처의 모션벡터로부터 유도하는 방법 및장치
KR20060109249A (ko) 영상신호의 엔코딩/디코딩시에 베이스 레이어 픽처의모션벡터를 사용하여 영상블록을 위한 모션벡터를 예측하는방법 및 장치
WO2011121942A1 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、ならびに動画像復号装置、動画像復号方法及び動画像復号プログラム
JP4565392B2 (ja) 映像信号階層復号化装置、映像信号階層復号化方法、及び映像信号階層復号化プログラム
KR20060063613A (ko) 영상 신호의 스케일러블 인코딩 및 디코딩 방법
KR100703746B1 (ko) 비동기 프레임을 효율적으로 예측하는 비디오 코딩 방법 및장치
US20060146937A1 (en) Three-dimensional wavelet video coding using motion-compensated temporal filtering on overcomplete wavelet expansions
US20060159173A1 (en) Video coding in an overcomplete wavelet domain
JP4404157B2 (ja) 動画像符号化装置および動画像符号化方法
JP4251291B2 (ja) 動画像符号化装置、動画像符号化方法
KR20060069227A (ko) 영상신호의 엔코딩/디코딩시에 영상블록을 위한 모션벡터를베이스 레이어 픽처의 모션벡터로부터 유도하는 방법 및장치
KR20060059774A (ko) 시간적 분해레벨이 다른 픽처의 모션벡터를 이용하는영상신호의 엔코딩/디코딩 방법 및 장치
JP4870143B2 (ja) 動画像符号化装置、動画像符号化方法、動画像復号装置、動画像復号方法
JP4565393B2 (ja) 映像信号階層符号化装置、映像信号階層符号化方法、及び映像信号階層符号化プログラム
JP4403565B2 (ja) 動画像復号装置および動画像復号方法
KR20060059770A (ko) 영상신호의 엔코딩/디코딩시에 영상블록을 위한 모션벡터를베이스 레이어 픽처의 모션벡터로부터 유도하는 방법 및장치
JP5304708B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081210

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: 20081225

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090107

R151 Written notification of patent or utility model registration

Ref document number: 4251291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120130

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120130

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees