(57)【特許請求の範囲】
【請求項１】
映像をブロック単位で符号化する映像符号化装置であって、
符号化対象ブロックの周囲のブロックまたは符号化済みフレームの符号化済みブロックから１つ以上の予測動きベクトル候補を取得する予測動きベクトル取得部と、
前記取得された予測動きベクトル候補を互いに比較して、重複している前記予測動きベクトル候補を検出する重複予測動きベクトル検出部と、
重複している前記予測動きベクトルが検出された場合に、符号化すべき対象を選択して符号化を行う符号化部と、
前記予測動きベクトル候補の信頼度を算出する信頼度算出部と、
を備え、
前記予測動きベクトル取得部は、前記信頼度が所定の条件を満たす前記予測動きベクトル候補のみを取得し、
前記信頼度と前記所定の条件は、前記予測動きベクトル候補の符号量に基づいて決定され、
前記所定の条件は、前記符号量が所定の値以下であるという条件である、
映像符号化装置。
【請求項２】
前記符号化部は、
前記予測動きベクトル候補が全て同じである場合には、予測動きベクトルを特定するインデックス情報を符号化せず、
前記予測動きベクトル候補が全て重複していない場合には、予測動きベクトルを特定するインデックス情報を符号化する請求項１に記載の映像符号化装置。
【請求項３】
前記符号化部は、
前記予測動きベクトル候補が重複している場合に重複が無くなるように予測動きベクトル候補を削除する予測動きベクトル候補削除部と、
削除後の前記予測動きベクトル候補の候補数に基づいて予測動きベクトルインデックスを符号化するインデックス符号化部と
を備える請求項１に記載の映像符号化装置。
【請求項４】
前記予測動きベクトル候補の中にゼロベクトルが無い場合に予測動きベクトル候補にゼロベクトルを追加するベクトル追加部を
さらに備える請求項１から３のいずれか一項に記載の映像符号化装置。
【請求項５】
映像をブロック単位で復号する映像復号装置であって、
復号対象ブロックの周囲のブロックまたは復号済みフレームの復号済みブロックから１つ以上の予測動きベクトル候補を取得する予測動きベクトル取得部と、
前記取得された予測動きベクトル候補を互いに比較して、重複している前記予測動きベクトル候補を検出する重複予測動きベクトル検出部と、
重複している前記予測動きベクトルが検出された場合に、復号すべき対象を選択して復号を行う復号部と、
前記予測動きベクトル候補の信頼度を算出する信頼度算出部と、
を備え、
前記予測動きベクトル取得部は、前記信頼度が所定の条件を満たす前記予測動きベクトル候補のみを取得し、
前記信頼度と前記所定の条件は、前記予測動きベクトル候補の符号量に基づいて決定され、
前記所定の条件は、前記符号量が所定の値以下であるという条件である、
映像復号装置。
【請求項６】
前記復号部は、
前記予測動きベクトル候補が全て同じである場合には、予測動きベクトルを特定するインデックス情報を復号せずに、
前記予測動きベクトル候補が全て重複していない場合には、予測動きベクトルを特定するインデックス情報を復号する請求項５に記載の映像復号装置。
【請求項７】
前記復号部は、
前記予測動きベクトル候補が重複している場合に重複が無くなるように予測動きベクトル候補を削除する予測動きベクトル候補削除部と、
削除後の前記予測動きベクトル候補の候補数に基づいて予測動きベクトルインデックスを復号するインデックス復号部と
を備える請求項５に記載の映像復号装置。
【請求項８】
前記予測動きベクトル候補の中にゼロベクトルが無い場合に予測動きベクトル候補にゼロベクトルを追加するベクトル追加部を
さらに備える請求項５から７のいずれか一項に記載の映像復号装置。
【請求項９】
映像をブロック単位で符号化する映像符号化装置が行う映像符号化方法であって、
符号化対象ブロックの周囲のブロックまたは符号化済みフレームの符号化済みブロックから１つ以上の予測動きベクトル候補を取得する予測動きベクトル取得ステップと、
前記取得された予測動きベクトル候補を互いに比較して、重複している前記予測動きベクトル候補を検出する重複予測動きベクトル検出ステップと、
重複している前記予測動きベクトルが検出された場合に、符号化すべき対象を選択して符号化を行う符号化ステップと、
前記予測動きベクトル候補の信頼度を算出する信頼度算出ステップと、
を有し、
前記予測動きベクトル取得ステップでは、前記信頼度が所定の条件を満たす前記予測動きベクトル候補のみを取得し、
前記信頼度と前記所定の条件は、前記予測動きベクトル候補の符号量に基づいて決定され、
前記所定の条件は、前記符号量が所定の値以下であるという条件である、
映像符号化方法。
【請求項１０】
映像をブロック単位で復号する映像復号装置が行う映像復号方法であって、
復号対象ブロックの周囲のブロックまたは復号済みフレームの復号済みブロックから１つ以上の予測動きベクトル候補を取得する予測動きベクトル取得ステップと、
前記取得された予測動きベクトル候補を互いに比較して、重複している前記予測動きベクトル候補を検出する重複予測動きベクトル検出ステップと、
重複している前記予測動きベクトルが検出された場合に、復号すべき対象を選択して復号を行う復号ステップと、
前記予測動きベクトル候補の信頼度を算出する信頼度算出ステップと、
を有し、
前記予測動きベクトル取得ステップでは、前記信頼度が所定の条件を満たす前記予測動きベクトル候補のみを取得し、
前記信頼度と前記所定の条件は、前記予測動きベクトル候補の符号量に基づいて決定され、
前記所定の条件は、前記符号量が所定の値以下であるという条件である、
映像復号方法。
【請求項１１】
コンピュータを、請求項１から４のいずれか一項に記載の映像符号化装置として機能させるための映像符号化プログラム。
【請求項１２】
コンピュータを、請求項５から８のいずれか一項に記載の映像復号装置として機能させるための映像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像符号化装置、映像復号装置、映像符号化方法、映像復号方法、映像符号化プログラム及び映像復号プログラムに関する。
【背景技術】
【０００２】
映像符号化の標準規格としてＨ．２６４／ＡＶＣやＨ．２６５／ＨＥＶＣと呼ばれる映像符号化方式が策定されている。以下ではＨＥＶＣ（非特許文献１参照、以降従来技術と称する）を例に説明する。ＨＥＶＣでは符号化対象ピクチャがＬＣＵ（Ｌａｒｇｅｓｔ  Ｃｏｄｉｎｇ  Ｕｎｉｔ）と呼ばれるブロックに分割され、ＬＣＵごとに符号化が行われる。ＬＣＵは更に四分木で最大３回まで分割することができる。ＬＣＵは、最大６４画素×６４画素から８画素×８画素までのＣＵ（Ｃｏｄｉｎｇ  Ｕｎｉｔ）と呼ばれるブロックで構成される。以下、ｎ画素×ｎ画素をｎｘｎ（ｎは８，１６，３２，６４のいずれか）と記載する。
【０００３】
ＨＥＶＣでは、ＣＵごとに異なる予測モードの符号化を行うことができ、符号化対象ブロックの隣接符号化済み画素から予測するイントラ予測モード、符号化済みフレームから予測するインター予測モードが規定されている。インター予測モードでは差分動きベクトルを伝送する適応動きベクトル予測符号化と差分動きベクトルを伝送しないマージ符号化の２種類の動き情報符号化モードが採用されている。以下、２つの符号化モードについて説明する。
【０００４】
はじめに、適応動きベクトル予測符号化について説明する。適応動きベクトル予測符号化では参照画像リストと、参照画像インデックスと、２つの予測動きベクトル候補リストを使用する。参照画像リストは、予測方向を特定するものである。参照画像インデックスは、参照先フレームを特定するものである。２つの予測動きベクトル候補リストは符号化対象ブロックの周囲または符号化済みフレームの符号化済みブロックから導出するものである。これらの中から使用する予測動きベクトル候補を特定する予測動きベクトルインデックス、予測動きベクトルとの差分である差分動きベクトルを参照画像リスト（Ｌ０／Ｌ１）ごとにそれぞれ符号化する。
【０００５】
図２３は、符号化対象ブロックに隣接する空間予測動きベクトル候補を示す説明図である。図２４は、符号化済みフレームの時間予測動きベクトル候補を示す説明図である。予測動きベクトル候補リストは図２３に示す符号化対象ブロックに隣接する空間予測動きベクトル候補と図２４に示す符号化済みフレームの時間予測動きベクトル候補、ゼロ予測動きベクトル候補の優先順位でそれぞれ導出される。空間予測動きベクトル候補はブロック群Ａ（Ａ０，Ａ１）、ブロック群Ｂ（Ｂ０，Ｂ１，Ｂ２）からそれぞれ１つずつ導出され、Ａ０⇒Ａ１、Ｂ０⇒Ｂ１⇒Ｂ２の優先順位でそれぞれスキャンされる。
【０００６】
また、候補ブロックがインター予測モードであるか否かを判定し、インター予測モードの場合にのみ導出される。更に符号化対象ブロックの参照画像と同一の参照画像を持つ候補が優先され、参照画像が異なる場合は参照画像間距離によってスケーリングされる。ただし、スケーリングが必要となる候補は予測動きベクトル候補リストに追加される最初の１つのみに限定される。また、各ブロック群の中で同一の動きベクトルが導出された場合は優先順位の高い候補のみを追加し、優先順位の低い候補は追加しない。空間予測動きベクトル候補の合計数が２に満たない場合は時間予測動きベクトル候補が導出される。
【０００７】
時間予測動きベクトル候補はスライスヘッダで指定された符号化済みフレーム（ＣｏｌＰｉｃ）上から導出され、Ｈ⇒Ｃ３の優先順位でスキャンされる（図２４参照）。ここでも同様に候補ブロックがインター予測モードである場合にのみ導出され、動きベクトルは参照画像間距離に応じてスケーリングされる。空間予測動きベクトル候補、時間予測動きベクトル候補の合計数が２に満たない場合はゼロ予測動きベクトル（水平成分、垂直成分が０のベクトル）が２つに満たすまで追加される。
【０００８】
次に、マージ符号化について説明する。マージ符号化では符号化対象ブロックの周囲または符号化済みフレームの符号化済みブロックから導出される最大５つのマージ候補リストの中から使用する候補のインデックスのみを符号化する。マージ候補リストは空間マージ候補、時間マージ候補、結合双予測候補、ゼロマージ候補の優先順位で導出される。空間マージ候補、時間マージ候補の候補ブロックは図２３及び図２４と同一である。空間マージ候補はＡ１⇒Ｂ１⇒Ｂ０⇒Ａ０⇒Ｂ２の優先順位でスキャンされ、候補ブロックがインター予測モードの場合にのみ導出される。ただし、マージ候補リストへの追加において、重複して追加されにくくするために以下の場合には優先順位の高い候補のみを追加し、優先順位の低い候補は追加しない。
・Ｂ１の動き情報＝Ａ１の動き情報
・Ｂ０の動き情報＝Ｂ１の動き情報
・Ａ０の動き情報＝Ａ１の動き情報
・Ｂ２の動き情報＝Ａ１又はＢ１の動き情報
【０００９】
時間マージ候補は適応動きベクトル予測符号化と同一で、参照画像インデックスは０となる。結合双予測候補はＬ０／Ｌ１それぞれの動き情報を異なるマージインデックスの組み合わせで最大２つ導出される。空間マージ候補、予測マージ候補、結合双予測候補の合計が５に満たない場合にはゼロマージ候補（双方向でそれぞれ参照画像インデックスが０で水平成分、垂直成分が０のベクトル）が５つに満たすまで追加される。また、マージインデックスはトランケーテッド・ユーナリー・バイナライゼーションで符号化される。図２５は、マージ候補リスト数を５に設定した場合の符号化される状態を示す説明図である。マージ候補リスト数を５に設定した場合は図２５のように符号化される。すなわち、マージインデックスが「０」である場合、符号化ビット列は「０」となる。以下、同様に、「１」は、「１０」、「２」は、「１１０」、「３」は、「１１１０」、「４」は、「１１１１」となる。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】株式会社インプレスジャパン，”インプレス標準教科書シリーズ  Ｈ．２６５／ＨＥＶＣ教科書，”２０１３年．
【発明の概要】
【発明が解決しようとする課題】
【００１１】
前述したように、従来技術では予測動きベクトル候補リストまたはマージ候補リストに追加される動きベクトル候補が全て同じ動きベクトルになる場合がある。例えば適応動きベクトル予測符号化においてブロック群Ａ及びブロック群Ｂそれぞれの中で動きベクトル候補が重複する場合には動きベクトル候補はリストに追加されない。しかし、ブロック群Ａとブロック群Ｂとの間では追加された動きベクトルが重複するか否かを判定していないため、同じベクトルが追加される可能性がある。また、マージ符号化でも空間マージ候補または時間マージ候補と結合双予測候補との間では同じ動きベクトルが追加されたか否かを判定していないため、同じ動きベクトルが追加される可能性がある。
【００１２】
特に、候補ブロックから予測動きベクトルが参照できない場合、リストには全てゼロベクトルまたはゼロマージ候補が追加されるため、同じ動きベクトルのみが追加されてしまう。同じ動きベクトルが追加されたにも関わらず、リストの中からどの予測動きベクトルを用いるかを表すインデックス情報を冗長に符号化するため、符号化効率が低下してしまうという問題がある。また、一部の動きベクトルが重複した場合も同様で、インデックス情報を冗長に伝送してしまい、符号化効率が低下する。また、従来技術では予測動きベクトル候補が所定の数に満たない場合に、予測動きベクトル候補にゼロベクトルがあったとしてもゼロベクトルが追加される点も冗長となり問題である。
【００１３】
本発明は、このような事情に鑑みてなされたもので、冗長な符号化を削除して、符号化効率を向上させることができる映像符号化装置、映像復号装置、映像符号化方法、映像復号方法、映像符号化プログラム及び映像復号プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の一態様は、映像をブロック単位で符号化する映像符号化装置であって、符号化対象ブロックの周囲のブロックまたは符号化済みフレームの符号化済みブロックから１つ以上の予測動きベクトル候補を取得する予測動きベクトル取得部と、前記取得された予測動きベクトル候補を互いに比較して、重複している前記予測動きベクトル候補を検出する重複予測動きベクトル検出部と、重複している前記予測動きベクトルが検出された場合に、符号化すべき対象を選択して符号化を行う符号化部とを備える映像符号化装置である。
【００１５】
本発明の一態様は、前記映像符号化装置であって、前記符号化部は、前記予測動きベクトル候補が全て同じである場合には、予測動きベクトルを特定するインデックス情報を符号化せず、前記予測動きベクトル候補が全て重複していない場合には、予測動きベクトルを特定するインデックス情報を符号化する。
【００１６】
本発明の一態様は、前記映像符号化装置であって、前記符号化部は、前記予測動きベクトル候補が重複している場合に重複が無くなるように予測動きベクトル候補を削除する予測動きベクトル候補削除部と、削除後の前記予測動きベクトル候補の候補数に基づいて予測動きベクトルインデックスを符号化するインデックス符号化部とを備える。
【００１７】
本発明の一態様は、前記映像符号化装置であって、前記予測動きベクトル候補の中にゼロベクトルが無い場合に予測動きベクトル候補にゼロベクトルを追加するベクトル追加部をさらに備える。
【００１８】
本発明の一態様は、前記映像符号化装置であって、前記予測動きベクトル候補の信頼度を算出する信頼度算出部をさらに備え、前記予測動きベクトル取得部は、前記信頼度が所定の条件を満たす前記予測動きベクトル候補のみを取得する。
【００１９】
本発明の一態様は、前記映像符号化装置であって、前記信頼度と前記所定の条件は、前記予測動きベクトル候補のブロックの予測モードまたは符号量に基づいて決定される。
【００２０】
本発明の一態様は、映像をブロック単位で復号する映像復号装置であって、復号対象ブロックの周囲のブロックまたは復号済みフレームの復号済みブロックから１つ以上の予測動きベクトル候補を取得する予測動きベクトル取得部と、前記取得された予測動きベクトル候補を互いに比較して、重複している前記予測動きベクトル候補を検出する重複予測動きベクトル検出部と、重複している前記予測動きベクトルが検出された場合に、復号すべき対象を選択して復号を行う復号部とを備える映像復号装置である。
【００２１】
本発明の一態様は、前記映像復号装置であって、前記復号部は、前記予測動きベクトル候補が全て同じである場合には、予測動きベクトルを特定するインデックス情報を復号せずに、前記予測動きベクトル候補が全て重複していない場合には、予測動きベクトルを特定するインデックス情報を復号する。
【００２２】
本発明の一態様は、前記映像復号装置であって、前記復号部は、前記予測動きベクトル候補が重複している場合に重複が無くなるように予測動きベクトル候補を削除する予測動きベクトル候補削除部と、削除後の前記予測動きベクトル候補の候補数に基づいて予測動きベクトルインデックスを復号するインデックス復号部とを備える。
【００２３】
本発明の一態様は、前記映像復号装置であって、前記予測動きベクトル候補の中にゼロベクトルが無い場合に予測動きベクトル候補にゼロベクトルを追加するベクトル追加部をさらに備える。
【００２４】
本発明の一態様は、前記映像復号装置であって、前記予測動きベクトル候補の信頼度を算出する信頼度算出部をさらに備え、前記予測動きベクトル導出部は、前記信頼度が所定の条件を満たす前記予測動きベクトル候補のみを取得する。
【００２５】
本発明の一態様は、前記映像復号装置であって、前記信頼度と前記所定の条件は、前記予測動きベクトル候補のブロックの予測モードまたは符号量に基づいて決定される。
【００２６】
本発明の一態様は、映像をブロック単位で符号化する映像符号化装置が行う映像符号化方法であって、符号化対象ブロックの周囲のブロックまたは符号化済みフレームの符号化済みブロックから１つ以上の予測動きベクトル候補を取得する予測動きベクトル取得ステップと、前記取得された予測動きベクトル候補を互いに比較して、重複している前記予測動きベクトル候補を検出する重複予測動きベクトル検出ステップと、重複している前記予測動きベクトルが検出された場合に、符号化すべき対象を選択して符号化を行う符号化ステップとを有する映像符号化方法である。
【００２７】
本発明の一態様は、映像をブロック単位で復号する映像復号装置が行う映像復号方法であって、復号対象ブロックの周囲のブロックまたは復号済みフレームの復号済みブロックから１つ以上の予測動きベクトル候補を取得する予測動きベクトル取得ステップと、前記取得された予測動きベクトル候補を互いに比較して、重複している前記予測動きベクトル候補を検出する重複予測動きベクトル検出ステップと、重複している前記予測動きベクトルが検出された場合に、復号すべき対象を選択して復号を行う復号ステップとを有する映像復号方法である。
【００２８】
本発明の一態様は、コンピュータを、前記映像符号化装置として機能させるための映像符号化プログラムである。
【００２９】
本発明の一態様は、コンピュータを、前記映像復号装置として機能させるための映像復号プログラムである。
【発明の効果】
【００３０】
本発明によれば、冗長な符号化を削除して、符号化効率を向上させることができるという効果が得られる。
【図面の簡単な説明】
【００３１】
【図１】第１の実施形態における映像符号化装置の構成を示すブロック図である。
【図２】第１の実施形態における映像復号装置の構成を示すブロック図である。
【図３】第１の実施形態による映像符号化装置１におけるインター動き情報生成部８の構成を示すブロック図である。
【図４】第１の実施形態による映像復号装置３１におけるインター動き情報生成部３５の構成を示すブロック図である。
【図５】第１の実施形態における予測動きベクトル候補リスト生成部８０２の動作を示すフローチャートである。
【図６】第１の実施形態の映像符号化装置１におけるマージ情報生成部１６の構成を示すブロック図である。
【図７】第１の実施形態の映像復号装置３１におけるマージ情報生成部３６の構成を示すブロック図である。
【図８】第１の実施形態におけるマージ候補リスト生成部１６２の動作を示すフローチャートである。
【図９】第１の実施形態におけるインデックス情報生成判定部１６１の動作を示すフローチャートである。
【図１０】第２の実施形態の映像符号化装置１におけるマージ情報生成部１６の構成を示すブロック図である。
【図１１】第２の実施形態の映像復号装置３１におけるマージ情報生成部３６の構成を示すブロック図である。
【図１２】第２の実施形態のマージ情報生成部１６、３６の動作例を示す説明図である。
【図１３】第３の実施形態における映像符号化装置１のインター動き情報生成部８の構成を示すブロック図である。
【図１４】第３の実施形態における映像復号装置１のインター動き情報生成部３５の構成を示すブロック図である。
【図１５】第３の実施形態における映像符号化装置１のマージ情報生成部１６の構成を示すブロック図である。
【図１６】第３の実施形態における映像復号装置３１のマージ情報生成部３６の構成を示すブロック図である。
【図１７】第３の実施形態における予測動きベクトル候補リスト生成部８０２の動作を示すフローチャートである。
【図１８】第１の実施形態におけるマージ候補リスト生成部１６２の動作を示すフローチャートである。
【図１９】第４の実施形態の映像符号化装置１におけるインター動き情報生成部８の構成を示すブロック図である。
【図２０】第４の実施形態の映像復号装置３１におけるインター動き情報生成部３５の構成を示すブロック図である。
【図２１】第４の実施形態の映像符号化装置１におけるマージ情報生成部１６の構成を示すブロック図である。
【図２２】第４の実施形態の映像復号装置３１におけるマージ情報生成部３６の構成を示すブロック図である。
【図２３】符号化対象ブロックに隣接する空間予測動きベクトル候補を示す説明図である。
【図２４】符号化済みフレームの時間予測動きベクトル候補を示す説明図である。
【図２５】マージ候補リスト数を５に設定した場合の符号化される状態を示す説明図である。
【発明を実施するための形態】
【００３２】
以下、図面を参照して、本発明の一実施形態による映像符号化装置及び映像復号装置を説明する。以下では一例としてＨＥＶＣに準拠した映像符号化装置及び映像復号装置に本発明を適用した場合の実施形態を説明する。なお、説明を簡単にするため、ＬＣＵ及びＣＵサイズは固定（例えば６４ｘ６４）として記載するが、ブロック分割した場合においても各ＣＵに対して同様の処理を行うことで本発明を適用可能である。
【００３３】
＜第１の実施形態＞
図１を参照して、第１の実施形態における映像符号化装置を説明する。図１は第１の実施形態における映像符号化装置の構成を示すブロック図である。映像符号化装置１には符号化対象入力映像の符号化対象ピクチャについてＣＵブロックごとに入力され、当該ブロックに対応する符号化データが出力される。これが符号化対象ピクチャの各ブロックについてラスタスキャン順に繰り返し実行されることで、符号化対象ピクチャが符号化される。
【００３４】
減算器２は映像符号化装置１に入力された入力映像とイントラ予測部３またはインター予測部４から出力される予測画像との差分を直交変換／量子化部５へ出力する。直交変換／量子化部５は減算器２から出力された差分に対して直交変換と量子化を施し、可変長符号化部６と逆量子化／逆直交変換部７へ出力する。可変長符号化部６は直交変換／量子化部５から出力された量子化係数及びインター動き情報生成部８またはマージ情報生成部１６から出力された動き情報を可変長符号化し、符号化データとして映像符号化装置１から出力する。
【００３５】
逆量子化／逆直交変換部７は直交変換／量子化部５から出力された量子化係数に対して逆量子化と逆直交変換を施し、加算器１０へ出力する。加算器１０は逆量子化／逆直交変換部７から出力された画像と予測画像との和をイントラ予測部３及びループフィルタ部１１へ出力する。ループフィルタ部１１は逆量子化／逆直交変換部７から出力された画像とイントラ予測部３またはインター予測部４から出力される予測画像との和にループフィルタを適用し、復号ピクチャメモリ１２へ出力する。
【００３６】
復号ピクチャメモリ１２はループフィルタ部１１の出力を格納し、インター予測部４と動きベクトル検出部１３に入力され、後の符号化対象ブロックのインター予測及び動きベクトル検出時に参照画像として利用される。イントラ予測部３は逆量子化／逆直交変換部７から出力された画像とイントラ予測部３またはインター予測部４から出力される予測画像との和を参照画像として符号化対象ブロックのイントラ予測画像を生成する。
【００３７】
インター予測部４は復号ピクチャメモリ１２の参照画像を用いて符号化対象ブロックのインター予測画像を生成する。イントラ／インター切り替えスイッチ１４は符号化対象ブロックの予測モードに応じてイントラ予測部３またはインター予測部３を切り替え、予測画像を減算器２と加算器１０へ出力する。
【００３８】
動きベクトル検出部１３は入力画像と復号ピクチャメモリ１２から出力される参照画像を用いて動きベクトルを検出し、動きベクトルメモリ１５及びインター動き情報生成部８へ出力する。動きベクトルメモリ１５は動きベクトル検出部１３からの出力を格納し、予測動きベクトル導出時にインター動き情報生成部８とマージ情報生成部１６から参照される。
【００３９】
インター動き情報生成部８は動きベクトル検出部１３と動きベクトルメモリ１５から入力されたデータを基にインター動き情報を生成する。マージ情報生成部１６は動きベクトルメモリ１５から入力されたデータを基にマージ情報を生成する。インター／マージ切り替えスイッチ１７は符号化対象ブロックの予測モードに応じてインター動き情報生成部８またはマージ情報生成部１６を切り替え、インター動き情報またはマージ情報を可変長符号化部６へ出力する。
【００４０】
次に、図２を参照して、第１の実施形態における映像復号装置を説明する。この映像復号装置は図１に示す映像符号化装置１により符号化された符号化データを復号する。図２は第１の実施形態における映像復号装置の構成を示すブロック図である。映像復号装置３１には復号対象入力符号化データが入力され、復号対象ブロック毎に繰り返し復号され、復号信号が出力される。
【００４１】
可変長復号部３２は入力された符号化データを可変長復号し、変換量子化係数及び動き情報を含む復号パラメータを得て、変換量子化係数は逆量子化／逆直交変換部３３へ、動き情報はインター／マージ切替スイッチ３４へ出力される。また、動き情報のインデックス情報はインター動き情報生成部３５またはマージ情報生成部３６から通知されるインデックス情報の判定結果がインデックス情報を復号すると判定された場合のみ復号される。
【００４２】
逆量子化／逆量子化部３３は可変長復号部３２から出力された変換量子化係数を逆量子化／逆直交変換し、復号残差画像を加算器３７に出力する。加算器３７は逆量子化／逆直交変換部３３から出力された復号残差画像とイントラ予測部３８又はインター予測部３９から得られる予測画像との和から復号画像を得て、復号映像として出力すると同時に、ループフィルタ部及びイントラ予測部３８へ出力する。
【００４３】
ループフィルタ部４０は加算器３７から得られる復号画像にループフィルタを適用し、復号ピクチャメモリ４１へ出力する。復号ピクチャメモリ４１はループフィルタ部４０の出力を格納し、インター予測部３９に入力され、後の復号対象ブロックのインター予測時に参照画像として利用される。イントラ予測部３８は加算器３７から出力される復号画像を参照画像として後の復号対象ブロックのイントラ予測画像を生成する。
【００４４】
インター予測部３９は復号ピクチャメモリ４１の参照画像と動きベクトルメモリ４２から得られる動きベクトルを用いて復号対象ブロックのインター予測画像を生成する。イントラ／インター切り替えスイッチ４３は復号対象ブロックの予測モードに応じてイントラ予測部３８またはインター予測部３９を切り替え、予測画像を加算器３７へ出力する。
【００４５】
動きベクトルメモリ４２はインター動き情報生成部３５またはマージ情報生成部３６からの出力を格納し、インター予測部３９での予測及び予測動きベクトル導出時にインター動き情報生成部３５またはマージ情報生成部３６から参照される。インター／マージ切替スイッチ３４は復号対象ブロックの予測モードに応じてインター動き情報生成部３５又はマージ情報生成部３６を切り替え、復号パラメータを各部へ出力する。
【００４６】
インター動き情報生成部３５は可変長復号部３２から入力される動き情報を基にインター予測モードの動き情報を生成し、動きベクトルメモリ４２へ出力する。また、インデックス情報を生成するか否かの判定結果を可変長復号部３２へ通知する。マージ情報生成部３６は動きベクトルメモリ４２から入力される動き情報を基にマージ情報を生成し、動きベクトルメモリ４２へ出力する。また、インデックス情報を生成するか否かの判定結果を可変長復号部３２へ通知する。
【００４７】
次に、図３及び図４を参照して、第１の実施形態におけるインター動き情報生成部８、３５について説明する。図３は第１の実施形態による映像符号化装置１におけるインター動き情報生成部８の構成を示すブロック図である。図３に示す構成が従来技術と比較して異なる点は、インデックス情報生成判定部８０１が追加されている点である。
【００４８】
予測動きベクトル候補リスト生成部８０２は動きベクトルメモリ１５から入力された符号化対象ブロックの周囲または符号化済みフレームの候補ブロックの動きベクトルから予測動きベクトル候補リストを生成し、予測動きベクトル決定部８０３とインデックス情報生成判定部８０１へ出力する。インデックス情報生成判定部８０１は入力された予測動きベクトル候補リストを基に予測動きベクトルインデックスを生成するかを判定し、判定結果を動き情報生成部８０４へ出力する。
【００４９】
予測動きベクトル決定部８０３は予測動きベクトル候補リスト生成部８０２から入力された予測動きベクトル候補リストの中から予測動きベクトルを決定する。予測動きベクトルの決定では対象ブロックの動きベクトルと予測動きベクトル候補リストの各候補との差分動きベクトルを算出し、差分動きベクトルの各成分の符号量の和が最も小さくなる予測動きベクトルインデックス及び予測動きベクトルを決定する。
【００５０】
減算器８０５は動きベクトル検出部１３から入力された動きベクトルと予測動きベクトル決定部８０３で決定された予測動きベクトルの差分動きベクトルを算出し、動き情報生成部８０４へ出力する。動き情報生成部８０４は参照画像リスト、参照画像インデックス、予測動きベクトルインデックス、差分動きベクトルから成る動き情報を生成し、可変長符号化部６へ出力する。ただし、予測動きベクトルインデックスはインデックス情報生成判定部８０１でインデックス情報を生成すると判定された場合のみ生成する。
【００５１】
図４は第１の実施形態による映像復号装置３１におけるインター動き情報生成部３５の構成を示すブロック図である。予測動きベクトル候補リスト生成部３５１は動きベクトルメモリ４２から入力された復号対象ブロックの周囲または復号済みフレームの候補ブロックの動きベクトルから予測動きベクトル候補リストを生成し、予測動きベクトル出力部３５２とインデックス情報生成判定部３５３へ出力する。インデックス情報生成判定部３５３は入力された予測動きベクトル候補リストを基に予測動きベクトルインデックスを復号するか否かを判定し、判定結果を可変長復号部２１及び予測動きベクトル出力部３５２へ通知する。
【００５２】
予測動きベクトル出力部３５２はインデックス情報生成判定部３５３からインデックス情報を復号すると判定された場合は予測動きベクトル候補リスト生成部３５１から入力された予測動きベクトル候補リストの中から可変長復号部３２で復号された予測動きベクトルインデックスに対応する予測動きベクトルを出力する。一方、そうでない場合は可変長復号部３２では予測動きベクトルインデックスは復号せず、予測動きベクトル候補リストの任意の予測動きベクトルを出力する。
【００５３】
ここで、任意というのは予測動きベクトルリストの全ての動きベクトル候補が同一であるためである。加算器３５４は可変長復号部３２から入力された差分動きベクトルと予測動きベクトル出力部３５２から出力された予測動きベクトルの和となる動きベクトルを算出し、動きベクトルメモリ４２へ出力する。
【００５４】
次に、図５を参照して、第１の実施形態における予測動きベクトル候補リスト生成部８０２、３５１の動作を説明する。図５は第１の実施形態における予測動きベクトル候補リスト生成部８０２の動作を示すフローチャートである。予測動きベクトル候補リスト生成部３５１の動作についても同様であるため、ここでは詳細な説明を省略する。
【００５５】
まず、予測動きベクトル候補リスト生成部８０２は、候補ブロックに対して所定の優先順序でスキャンを行う（ステップＳ１）。この処理はステップＳ７までの繰り返し処理となる。候補ブロックは図２３及び図２４に示すブロック群である。また、優先順位は以下の通りとなる。
・Ａ０⇒Ａ１⇒Ｂ０⇒Ｂ１⇒Ｂ２⇒Ｈ（またはＣ３）の優先順位
・対象ブロックの参照画像と同一の参照画像を持つ動きベクトルを優先
【００５６】
次に、予測動きベクトル候補リスト生成部８０２は、予測動きベクトル候補リストの合計数が２に満たないか否かを判定する（ステップＳ２）。この判定の結果、合計数が２以上である場合は処理を終了する。一方、合計数が２に満たない場合、予測動きベクトル候補リスト生成部８０２は、候補ブロックの参照画像が対象ブロックの参照画像と同じか否かを判定し（ステップＳ３）、異なる場合には参照画像間距離に応じてスケーリング処理を行う（ステップＳ４）。
【００５７】
そして、予測動きベクトル候補リスト生成部８０２は、各ブロック群（Ａ０，Ａ１をブロック群Ａ、Ｂ０，Ｂ１，Ｂ２をブロック群Ｂとする）の中で同じ動きベクトルが既にリストに追加されているか否かの重複判定を行い（ステップＳ５）、重複しない場合にのみに候補ブロックの動きベクトルをリストに追加する（ステップＳ６）。
【００５８】
そして、全ての候補ブロックに対してスキャンが終了したら（ステップＳ７）、予測動きベクトル候補リスト生成部８０２は、予測動きベクトル候補リストの合計数が２に満たないか否かを判定し（ステップＳ８）、満たない場合にはリストの残りにゼロベクトルを追加する（ステップＳ９）。
【００５９】
次に、図６及び図７を参照して、第１の実施形態におけるマージ情報生成部１６、３６について説明する。図６は第１の実施形態の映像符号化装置１におけるマージ情報生成部１６の構成を示すブロック図である。図６に示す構成が従来技術と異なる点は、インデックス情報生成判定部１６１が追加されている点である。マージ候補リスト生成部１６２は動きベクトルメモリ１５から入力された符号化対象ブロックの周囲または符号化済みフレームの候補ブロックの動きベクトルからマージ候補リストを生成し、マージベクトル決定部１６３とインデックス情報生成判定部１６１へ出力する。
【００６０】
インデックス情報生成判定部１６１は入力されたマージ候補リストを基にマージインデックスを生成するかを判定し、判定結果をマージインデックス生成部１６４へ出力する。マージベクトル決定部１６３はマージ候補リスト生成部１６２から入力されたマージ候補リストの中からマージベクトルを決定する。マージインデックス生成部はマージインデックスを生成し、可変長符号化部６へ出力する。ただし、マージインデックスはインデックス情報生成判定部１６１でインデックス情報を生成すると判定された場合のみ生成する。
【００６１】
図７は第１の実施形態の映像復号装置３１におけるマージ情報生成部３６の構成を示すブロック図である。マージ候補リスト生成部３６１は動きベクトルメモリ４２から入力された復号対象ブロックの周囲または復号済みフレームの候補ブロックの動きベクトルからマージ候補リストを生成し、マージベクトル出力部３６２とインデックス情報生成判定部３６３に出力する。インデックス情報生成判定部３６３は入力されたマージ候補リストを基にマージインデックスを復号するかを判定し、判定結果を可変長復号部３２及びマージベクトル出力部３６２へ通知する。
【００６２】
マージベクトル出力部３６２はインデックス情報生成判定部３６３からインデックス情報を復号すると判定された場合はマージ候補リスト生成部３６１から入力されたマージ候補リストの中から可変長復号部３２で復号されたマージインデックスに対応するマージベクトルを出力する。一方、そうでない場合は可変長復号部３２ではマージインデックスは復号せず、マージ候補リストの任意のマージベクトルを出力する。ここで、任意というのはマージ候補リストの全てのマージ候補が同一であるためである。
【００６３】
次に、図８を参照して、第１の実施形態におけるマージ候補リスト生成部１６２、３６１の動作を説明する。図８は第１の実施形態におけるマージ候補リスト生成部１６２の動作を示すフローチャートである。マージ候補リスト生成部３６１の動作についても同様であるため、ここでは詳細な説明を省略する。
【００６４】
まず、マージ候補リスト生成部１６２は、空間マージ候補をリストに追加する（ステップＳ１１）。空間マージ候補の候補ブロックは図２３に示すブロック群である。そして、マージ候補リスト生成部１６２は、空間マージ候補を追加してもマージ候補リストの合計数が所定数に満たないか否かを判定する（ステップＳ１２）。この判定の結果、満たない場合、マージ候補リスト生成部１６２は時間マージ候補をリストに追加する（ステップＳ１３）。時間マージ候補の候補ブロックは図２４に示すブロック群である。
【００６５】
次に、マージ候補リスト生成部１６２は、時間マージ候補を追加してもマージ候補リストの合計数が所定数に満たないか否かを判定する（ステップＳ１４）。この判定の結果、満たない場合、マージ候補リスト生成部１６２は結合双予測候補をリストに追加する（ステップＳ１５）。そして、マージ候補リスト生成部１６２は、それでもマージ候補リストの合計数が所定数に満たないか否かを判定する（ステップＳ１６）。この判定の結果、満たない場合、マージ候補リスト生成部１６２は所定数になるまでゼロマージ候補をリストに追加して（ステップＳ１７）、終了する。
【００６６】
次に、図９を参照して、第１の実施形態におけるインデックス情報生成判定部１６１、３６３の動作を説明する。図９は第１の実施形態におけるインデックス情報生成判定部１６１の動作を示すフローチャートである。インデックス情報生成判定部３６３の動作についても同様であるので、ここでは詳細な説明を省略する。
【００６７】
インデックス情報には予測動きベクトル候補リスト又はマージ候補リストが入力される。まず、インデックス情報生成判定部１６１は、リスト中の全ての候補が同じか否かを判定する（ステップＳ２１）。この判定の結果、全ての候補が同じ場合、インデックス情報生成判定部１６１は映像符号化装置１ではインデックス情報を生成しないと判定し、映像復号装置３１ではインデックス情報を復号しないと判定する（ステップＳ２２）。一方、そうでない場合、インデックス情報生成判定部１６１は、映像符号化装置１ではインデックス情報を生成すると判定するとともに、映像復号装置３１ではインデックス情報を復号すると判定する（ステップＳ２３）。
【００６８】
次に、本実施形態と従来技術との違いと本実施形態によって得られる効果について説明する。従来技術では予測動きベクトル候補リストまたはマージ候補リストの中の全ての候補が同じ場合でもインデックス情報を符号化するため、符号量が増大する。特に、予測動きベクトル候補リストまたはマージ候補リストを導出する際に参照できる候補ブロックが１つもない場合にはリストには全てゼロベクトルまたはゼロマージ候補が追加されるため、全ての候補が同じになるケースが発生する。
【００６９】
本実施形態が従来技術と異なるのは、導出されたリストの中の候補が全て同じか否かを判定する点である。判定の結果、インデックス情報を生成しないと判定された場合には符号化する動き情報にインデックス情報を含まないため、符号量を削減することができる。
【００７０】
＜第２の実施形態＞
次に、第２の実施形態における映像符号化装置及び映像復号装置を説明する。本実施形態では第１の実施形態に変更を加えた構成について説明する。第２の実施形態による映像符号化装置または映像復号装置は、図１または図２においてマージ情報生成部の構成及び動作と、可変長符号化部と、可変長復号部の動作を除いて同一である。以下、第１の実施形態と異なる点のみを中心に説明する。
【００７１】
次に、図１０及び図１１を参照して、第２の実施形態におけるマージ情報生成部１６、３６について説明する。図１０は第２の実施形態の映像符号化装置１におけるマージ情報生成部１６の構成を示すブロック図である。第１の実施形態（図６）と異なる点は重複候補除外部１６５と候補数カウント部１６６が新たに追加されている点である。
【００７２】
重複候補除外部１６５はマージ候補リスト生成部１６２で生成されたマージ候補リストの中で、重複するマージベクトル候補があった場合には重複が無くなるようにリストから除外し、再度インデックスを割り当てる。除外されたリストはインデックス情報生成判定部１６１、マージベクトル決定部１６３、候補数カウント部１６６へ出力される。候補数カウント部１６６は除外されたマージ候補リストの候補数をカウントし、可変長符号化部６へ出力する。可変長符号化部６はインデックスを符号化する際、候補数カウント部１６６から出力された候補数に基づいて符号化を行う。
【００７３】
図１１は第２の実施形態の映像復号装置３１におけるマージ情報生成部３６の構成を示すブロック図である。重複候補除外部３６４は図１０に示す重複候補除外部１６５と同様である。候補数カウント部３６５は除外されたマージ候補リストの候補数をカウントし、可変長復号部３２へ候補数を通知する。可変長復号部３２は候補数カウント部３６５から通知される候補数に基づいてマージインデックスを復号する。
【００７４】
ここで、図１２を参照して、第２の実施形態のマージ情報生成部１６、３６の動作例を説明する。図１２は、第２の実施形態のマージ情報生成部１６、３６の動作例を示す説明図である。まず映像符号化装置１での動作を説明する。マージ候補リスト生成部１６２で図１２の左に示すようなマージ候補リストが生成された場合は以下のような動作をとる。マージベクトル候補に示すＬ０及びＬ１はそれぞれＬ０方向及びＬ１方向の動きベクトルをｘ，ｙ方向についてそれぞれ２次元ベクトルで表現したものである。参照画像番号については全て同一とし、省略する。この例ではマージインデックスの０番と３番が重複するため、重複候補除外部１６５で重複する候補（この例では３番）がリストから除外される。
【００７５】
そして、インデックスを振り直し、インデックスが４番のマージベクトル候補は新たに３番が割り当てられる。この時、候補数カウント部１６６でカウントされる候補数は４つになる。可変長符号化部６ではこの候補数に基づいて符号化ビット列を変更する。この例の場合では候補数が４つなので、符号化ビット列を図１２の右に示すように変更する。これは、トランケーテッド・ユーナリー・バイナライゼーションで最大数をカウントした候補数に変更したことによる。マージインデックスの符号化時はこれらの符号化ビット列で可変長符号化を行う。
【００７６】
映像復号装置３１では、同様にマージ候補リストから重複する候補を除外した後、候補数をカウントし、映像符号化装置１と同様にインデックスに対応するビット列を導出する。可変長復号部３２ではこのビット列に対応するようにインデックスを復号することで、映像符号化装置１と同じインデックスを得ることができる。
【００７７】
次に、本実施形態と従来技術との違いと本実施形態によって得られる効果について説明する。従来技術では予めマージベクトルの候補数が決められているため、リスト中に重複する候補が入っていたとしても符号化ビット列が長くなってしまう。
【００７８】
本実施形態ではマージベクトル候補が重複する場合にマージインデックスの大きい方を削除し、インデックスを再度割り当てて、更にマージ候補リストの候補数に応じて符号化及び復号を行う。こうすることで、例えば図１２の例では、従来技術ではインデックスが４番のマージベクトル候補を符号化する場合には「１１１１」とビット長４つを符号化する必要があるが、本実施形態を用いた場合は「１１１」とビット長３つを符号化すれば良いため、符号量を削減することができる。
【００７９】
＜第３の実施形態＞
次に、第３の実施形態における映像符号化装置及び映像復号装置を説明する。本実施形態では第１の実施形態に変更を加えた構成について説明する。第３の実施形態による映像符号化装置または映像復号装置は図１または図２においてインター動き情報生成部とマージ情報生成部の構成及び動作を除いて同一である。以下、第１の実施形態と異なる点を中心に説明する。
【００８０】
次に、図１３を参照して、第３の実施形態における映像符号化装置１のインター動き情報生成部の構成を説明する。図１３は、第３の実施形態における映像符号化装置１のインター動き情報生成部８の構成を示すブロック図である。第１の実施形態（図３）と異なる点は予測動きベクトル候補リスト生成部８０２の動作が変更されている点と、ゼロベクトル追加部８０６が新たに設けられている点である。動作については、後述する。
【００８１】
次に、図１４を参照して、第３の実施形態における映像復号装置３１のインター動き情報生成部の構成を説明する。図１４は、第３の実施形態における映像復号装置１のインター動き情報生成部３５の構成を示すブロック図である。第１の実施形態（図４）と異なる点は予測動きベクトル候補リスト生成部３５１の動作が変更されている点と、ゼロベクトル追加部３５５が新たに設けられている点である。動作については、後述する。
【００８２】
次に、図１５を参照して、第３の実施形態における映像符号化装置１のマージ情報生成部の構成を説明する。図１５は、第３の実施形態における映像符号化装置１のマージ情報生成部１６の構成を示すブロック図である。第１の実施形態（図６）と異なる点はマージ候補リスト生成部１６２の動作が変更されている点と、ゼロマージ候補追加部１６７が新たに設けられている点である。動作については、後述する。
【００８３】
次に、図１６を参照して、第３の実施形態における映像復号装置３１のマージ情報生成部の構成を説明する。図１６は、第３の実施形態における映像復号装置３１のマージ情報生成部３６の構成を示すブロック図である。第１の実施形態（図７）と異なる点はマージ候補リスト生成部１６２の動作が変更されている点と、ゼロマージ候補追加部３６６が新たに設けられている点である。動作については、後述する。
【００８４】
次に、図１７を参照して、第３の実施形態における予測動きベクトル候補リスト生成部８０２、３５１の動作を説明する。図１７は、第３の実施形態における予測動きベクトル候補リスト生成部８０２の動作を示すフローチャートである。予測動きベクトル候補リスト生成部３５１の動作についても同様であるため、ここでは詳細な説明を省略する。
【００８５】
まず、予測動きベクトル候補リスト生成部８０２は、候補ブロックに対して所定の優先順序でスキャンを行う（ステップＳ３１）。この処理はステップＳ３７までの繰り返し処理となる。候補ブロックは図２３及び図２４に示すブロック群である。また、優先順位は以下の通りとなる。
・Ａ０⇒Ａ１⇒Ｂ０⇒Ｂ１⇒Ｂ２⇒Ｈ（またはＣ３）の優先順位
・対象ブロックの参照画像と同一の参照画像を持つ動きベクトルを優先
【００８６】
次に、予測動きベクトル候補リスト生成部８０２は、予測動きベクトル候補リストの合計数が２に満たないか否かを判定する（ステップＳ３２）。この判定の結果、合計数が２以上である場合は処理を終了する。一方、合計数が２に満たない場合、予測動きベクトル候補リスト生成部８０２は、候補ブロックの参照画像が対象ブロックの参照画像と同じか否かを判定し（ステップＳ３３）、異なる場合には参照画像間距離に応じてスケーリング処理を行う（ステップＳ３４）。
【００８７】
そして、予測動きベクトル候補リスト生成部８０２は、各ブロック群（Ａ０，Ａ１をブロック群Ａ、Ｂ０，Ｂ１，Ｂ２をブロック群Ｂとする）の中で同じ動きベクトルが既にリストに追加されているか否かの重複判定を行い（ステップＳ３５）、重複しない場合にのみに候補ブロックの動きベクトルをリストに追加する（ステップＳ３６）。
【００８８】
そして、全ての候補ブロックに対してスキャンが終了するまで繰り返す（ステップＳ７）。すなわち、図１７に示す動作では、処理の最後にゼロベクトルを追加しないように構成されている。そして、ゼロベクトル追加部８０６は予測動きベクトル候補リスト生成部８０２から出力されたリストについて、候補数が所定の値に満たない場合で且つリストの中にゼロベクトルがない場合にのみゼロベクトルをリストに１つ追加する。
【００８９】
次に、図１８を参照して、第３の実施形態におけるマージ候補リスト生成部１６２、３６１の動作を説明する。図１８は第１の実施形態におけるマージ候補リスト生成部１６２の動作を示すフローチャートである。マージ候補リスト生成部３６１の動作についても同様であるため、ここでは詳細な説明を省略する。
【００９０】
まず、マージ候補リスト生成部１６２は、空間マージ候補をリストに追加する（ステップＳ４１）。空間マージ候補の候補ブロックは図２３に示すブロック群である。そして、マージ候補リスト生成部１６２は、空間マージ候補を追加してもマージ候補リストの合計数が所定数に満たないか否かを判定する（ステップＳ４２）。この判定の結果、満たない場合、マージ候補リスト生成部１６２は時間マージ候補をリストに追加する（ステップＳ４３）。時間マージ候補の候補ブロックは図２４に示すブロック群である。
【００９１】
次に、マージ候補リスト生成部１６２は、時間マージ候補を追加してもマージ候補リストの合計数が所定数に満たないか否かを判定する（ステップＳ４４）。この判定の結果、満たない場合、マージ候補リスト生成部１６２は結合双予測候補をリストに追加する（ステップＳ４５）。すなわち、図１８に示す動作では、処理の最後にゼロマージ候補を追加しない構成になっている。そして、ゼロマージ候補追加部１６７はマージ候補リスト生成部１６２から出力されたリストについて、候補数が所定の値に満たない場合で且つリストの中にゼロマージ候補がない場合にのみゼロマージ候補をリストに１つ追加する。
【００９２】
次に、本実施形態と従来技術との違いと本実施形態によって得られる効果について説明する。従来技術においても予測動きベクトル候補リスト生成部またはマージ候補リスト生成部の中で候補数が所定の値に満たない場合にはゼロベクトルまたはゼロマージ候補がリストに追加されるが、これは候補数が所定の値になるように満たすためであり、既にリストの中にゼロベクトルまたはゼロマージ候補が入っていても追加される。
【００９３】
本実施形態の場合は候補リストの中にゼロベクトルまたはゼロマージ候補がない場合にのみ追加するため、冗長にならずにゼロベクトルまたはゼロマージ候補を追加することができるため、符号量を削減することができる。
【００９４】
＜第４の実施形態＞
次に、第４の実施形態における映像符号化装置及び映像復号装置を説明する。本実施形態では第１の実施形態に変更を加えた場合について説明する。第４の実施形態による映像符号化装置または映像復号装置は図１または図２においてインター動き情報生成部とマージ情報生成部の構成及び動作を除いて同一である。以下、第１の実施形態と異なる点のみを説明する。
【００９５】
次に、図１９を参照して、第４の実施形態におけるインター動き情報生成部の構成を説明する。図１９は、第４の実施形態の映像符号化装置１におけるインター動き情報生成部８の構成を示すブロック図である。第１の実施形態（図３）と異なる点は候補ブロック判定部８０７が追加されている点である。候補ブロック判定部８０７は予測動きベクトル候補リスト生成部８０２で参照する各候補ブロックに対して、予測動きベクトル候補リスト生成部８０２で各候補ブロックの動き情報をリストの生成に利用するか否かを判定し、利用しないと判定した候補ブロックは予測動きベクトル候補リスト生成部８０２で利用しない。
【００９６】
次に、図２０を参照して、第４の実施形態におけるインター動き情報生成部の構成を説明する。図２０は、第４の実施形態の映像復号装置３１におけるインター動き情報生成部３５の構成を示すブロック図である。第１の実施形態（図４）と異なる点は候補ブロック判定部３５６が追加されている点である。候補ブロック判定部３５６は予測動きベクトル候補リスト生成部３５１で参照する各候補ブロックに対して、予測動きベクトル候補リスト生成部３５１で各候補ブロックの動き情報をリストの生成に利用するか否かを判定し、利用しないと判定した候補ブロックは予測動きベクトル候補リスト生成部３５１で利用しない。
【００９７】
次に、図２１を参照して、第４の実施形態におけるマージ情報生成部の構成を説明する。図２１は第４の実施形態の映像符号化装置１におけるマージ情報生成部１６の構成を示すブロック図である。第１の実施形態（図６）と異なる点は候補ブロック判定部１６８が追加されている点である。候補ブロック判定部１６８はマージ候補リスト生成部１６２で参照する各候補ブロックに対して、マージ候補リスト生成部１６２で各候補ブロックの動き情報をリストの生成に利用するか否かを判定し、利用しないと判定した候補ブロックはマージ候補リスト生成部１６２で利用しない。
【００９８】
次に、図２２を参照して、第４の実施形態におけるマージ情報生成部の構成を説明する。図２２は第４の実施形態の映像復号装置３１におけるマージ情報生成部３６の構成を示すブロック図である。第１の実施形態（図７）と異なる点は候補ブロック判定部３６７が追加されている点である。候補ブロック判定部３６７はマージ候補リスト生成部３６１で参照する各候補ブロックに対して、マージ候補リスト生成部３６１で各候補ブロックの動き情報をリストの生成に利用するか否かを判定し、利用しないと判定した候補ブロックはマージ候補リスト生成部３６１で利用しない。
【００９９】
ここで、候補ブロック判定部における候補ブロックの判定方法について説明する。
始めに、候補ブロックの予測モードによる候補ブロックの判定について説明する。候補ブロックの予測モードがスキップモードの場合のみ候補として利用する。ただし、候補ブロックの中にスキップモードが１つも含まれない場合は除く。スキップモードとなる候補ブロックは変換係数を伝送しない予測モードであるため、変換係数を伝送しなくてもそのブロックを再現できていると考えることができ、隣接するブロックの動き情報に対する信頼度が高いと考えられるため、信頼度の高い候補ブロックのみを用いてリストを生成することで不要な動き情報を削減することができる。
【０１００】
次に、候補ブロックの符号量による候補ブロックの判定について説明する。候補ブロックの変換係数の符号量が所定の値以下である場合に候補として利用する。候補ブロックの予測モードによる候補ブロックの判定では量子化パラメータが小さい場合など、スキップモードの選択率が小さくなる場合には有効に作用しない可能性がある。そこで、変換係数を符号化する予測モードの場合でも符号量が所定の値よりも小さければ、予測画像が適切である可能性が高く、動き情報の信頼度が高いと考えられるので、この条件を満たす候補ブロックを利用する。
【０１０１】
なお、前述した説明においては、マージ候補として利用することを説明したが、適応ベクトル予測とマージのいずれかを利用することができる。
【０１０２】
次に、本実施形態と従来技術との違いと本実施形態によって得られる効果について説明する。従来技術では候補ブロックの動き情報に対する信頼度を考慮に入れていないため、マージ候補リストに追加される候補が適切でない可能性が高い。
【０１０３】
本実施形態ではリストを作成する際に候補ブロックの信頼度を基にリストとして利用するか否かを判定するため、信頼度の高い候補ブロックのみを用いてリストを作成することができるため、符号化効率を向上させることができる。
【０１０４】
以上説明したように、従来は動き予測を行う際に同一のブロック群内においては動きベクトル候補の重複判断を行っていたが、異なるブロック群間においては重複判断を行っていなかった。このため、同一の動きベクトル候補が重複する場合が発生する。特に動き予測が参照できない場合はゼロベクトルが動きベクトル候補として設定されるため、参照する意義が薄い情報を冗長に符号化してしまうという問題がある。本実施形態ではそのような問題を解決するために、候補リストの比較を行い、候補が同一の場合はインデックスを送らず、重複するものを1 つのみ残す処理を行うようにした。この構成によれば、インター符号化の符号量削減することができる。
【０１０５】
具体的には、予測動きベクトル候補リストの中から重複する予測動きベクトル候補を検出し、全ての予測動きベクトル候補が同一の場合には予測動きベクトルインデックスを伝送しないように構成した。また、予測動きベクトル候補リストの中から重複する予測動きベクトル候補を検出し、重複が無くなるように予測動きベクトル候補を削除し、予測動きベクトル候補の候補数に基づいて予測動きベクトルインデックスを符号化するように構成した。また、予測動きベクトル候補リストの中からゼロベクトルがあるか否かを検出し、ゼロベクトルが無い場合にのみゼロベクトルを追加するように構成した。さらに予測動きベクトル候補のブロックの予測モードまたは符号量に基づく条件を満たす動きベクトル候補のみを予測動きベクトルの導出時に用いるように構成した。
【０１０６】
前述した実施形態における映像符号化装置１及び映像復号装置３１の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、ＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されるものであってもよい。
【０１０７】
以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。
【産業上の利用可能性】
【０１０８】
冗長な符号化を削除して、符号化効率を向上させることが不可欠な用途に適用できる。
【符号の説明】
【０１０９】
１・・・映像符号化装置、２・・・減算器、３・・・イントラ予測部、４・・・インター予測部、５・・・直交変換／量子化部、６・・・可変長符号化部、７・・・逆量子化／逆直交変換部、８・・・インター動き情報生成部、１０・・・加算器、１１・・・ループフィルタ部、１２・・・復号ピクチャメモリ、１３・・・動きベクトル検出部、１４・・・イントラ／インター切替スイッチ、１５・・・動きベクトルメモリ、１６・・・マージ情報生成部、１７・・・インター／マージ切替スイッチ、３１・・・映像復号装置、３２・・・可変長復号部、３３・・・逆量子化／逆直交変換部、３４・・・インター／マージ切替スイッチ、３５・・・インター動き情報生成部、３６・・・マージ情報生成部、３７・・・加算器、３８・・・イントラ予測部、３９・・・インター予測部、４０・・・ループフィルタ部、４１・・・復号ピクチャメモリ、４２・・・動きベクトルメモリ、４３・・・イントラ／インター切替スイッチ、８０１・・・インデックス情報生成判定部、８０２・・・予測動きベクトル候補リスト生成部、８０３・・・予測動きベクトル決定部、８０４・・・動き情報生成部、８０５・・・減算器、３５１・・・予測動きベクトル候補リスト生成部、３５２・・・予測動きベクトル出力部、３５３・・・インデックス情報生成判定部、３５４・・・加算器、１６１・・・インデックス情報生成判定部、１６２・・・マージ候補リスト生成部、１６３・・・マージベクトル決定部、１６４・・・マージインデックス生成部、３６１・・・マージ候補リスト生成部、３６２・・・マージベクトル出力部、３６３・・・インデックス情報生成判定部、１６５・・・重複候補除外部、１６６・・・候補数カウント部、３６４・・・重複候補除外部、３６５・・・候補数カウント部、８０６・・・ゼロベクトル追加部、３５５・・・ゼロベクトル追加部、１６７・・・ゼロマージ候補追加部、３６６・・・ゼロマージ候補追加部、８０７・・・候補ブロック判定部、３５６・・・候補ブロック判定部、１６８・・・候補ブロック判定部、３６７・・・候補ブロック判定部
【図１】
0006495835.tif 000002
【図２】
0006495835.tif 000003
【図３】
0006495835.tif 000004
【図４】
0006495835.tif 000005
【図５】
0006495835.tif 000006
【図６】
0006495835.tif 000007
【図７】
0006495835.tif 000008
【図８】
0006495835.tif 000009
【図９】
0006495835.tif 000010
【図１０】
0006495835.tif 000011
【図１１】
0006495835.tif 000012
【図１２】
0006495835.tif 000013
【図１３】
0006495835.tif 000014
【図１４】
0006495835.tif 000015
【図１５】
0006495835.tif 000016
【図１６】
0006495835.tif 000017
【図１７】
0006495835.tif 000018
【図１８】
0006495835.tif 000019
【図１９】
0006495835.tif 000020
【図２０】
0006495835.tif 000021
【図２１】
0006495835.tif 000022
【図２２】
0006495835.tif 000023
【図２３】
0006495835.tif 000024
【図２４】
0006495835.tif 000025
【図２５】
0006495835.tif 000026