(57)【要約】【課題】ＯＢＭＣの適用時に必要なメモリバンド幅及び演算回数の増大を抑制する。【解決手段】本発明に係る画像復号装置３０は、ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成する動き補償予測部３４ｂ１と、予測対象ブロックの予測画像信号と、予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、予測対象ブロックの予測画像信号を補正する重複動き補償処理を行う重複動き補償部３４ｂ３と、予測対象ブロックに対して重複動き補償処理を適用するかについて判定する判定部３４ｂ２とを備え、判定部３４ｂ２は、隣接ブロックに片方向予測が適用されている場合、予測対象ブロックに対して重複動き補償処理を適用すると判定する。【選択図】図７
2020108055.tif 000002
【特許請求の範囲】
【請求項１】
複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、
前記判定部は、前記隣接ブロックに片方向予測が適用されている場合、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを特徴とする画像復号装置。
【請求項２】
複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックのサイズに基づいて、前記隣接ブロックに適用されている予測方向の種類を制御して、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備えることを特徴とする画像復号装置。
【請求項３】
複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、
前記判定部は、前記予測対象ブロックのサイズに基づいて、前記隣接ブロックの重複動き補償タップ数又は予測方向の種類の数を制御して、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されていることを特徴とする画像復号装置。
【請求項４】
複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、
前記判定部は、前記隣接ブロックに双方向予測が適用されている場合、所定方法により、前記隣接ブロックに適用されている予測方法を双方向予測から片方向予測に変換するように構成されていることを特徴とする画像復号装置。
【請求項５】
複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、
前記重複動き補償部は、前記隣接ブロックの数又は前記予測対象ブロックのサイズに基づいて、前記加重平均で用いる重み係数マトリクスの重み値を変更するように構成されていることを特徴とする画像復号装置。
【請求項６】
複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、
前記重複動き補償部は、前記重複動き補償予測処理が適用されるか否かに基づいて、デブロッキングフィルタの適用条件を変更するように構成されていることを特徴とする画像復号装置。
【請求項７】
複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、
前記動き補償予測部は、前記予測対象ブロックの動きベクトル及び前記隣接ブロックの動きベクトルが異なる場合、所定の削減手法により前記重複動き補償予測処理に必要な動きベクトル及び参照フレームの数を削減するように構成されていることを特徴とする画像復号装置。
【請求項８】
前記判定部は、前記予測対象ブロックに片方向予測が適用されている場合に、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを特徴とする請求項１〜７のいずれか一項に記載の画像復号装置。
【請求項９】
前記判定部は、前記予測対象ブロックのサイズが所定閾値以上である場合に、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを特徴とする請求項１〜７のいずれか一項に記載の画像復号装置。
【請求項１０】
前記判定部は、前記予測対象ブロックのサイズが第１閾値以上で且つ第２閾値未満である場合で且つ前記隣接ブロックに対して片方向予測が適用されている場合に、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを特徴とする請求項２に記載の画像復号装置。
【請求項１１】
前記判定部は、前記第１閾値未満である場合に、前記予測対象ブロックに対して前記重複動き補償処理を適用しないと判定するように構成されていることを特徴とする請求項１０に記載の画像復号装置。
【請求項１２】
前記判定部は、前記第２閾値以上である場合に、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを特徴とする請求項１０又は１１に記載の画像復号装置。
【請求項１３】
前記判定部は、第１サイズの前記予測対象ブロックに対して適用される前記隣接ブロックの重複動き補償タップ数又は予測方向の種類の数を、前記第１サイズよりも大きい第２サイズの前記予測対象ブロックに対して適用される前記隣接ブロックの重複動き補償タップ数又は予測方向の種類の数よりも小さくするように構成されていることを特徴とする請求項３に記載の画像復号装置。
【請求項１４】
前記判定部は、前記予測対象ブロックの現フレームと前記隣接ブロックの参照フレームのとの間のＰＯＣ差の絶対値が小さい方を選択し、選択した前記隣接ブロックの参照フレームを用いた片方向予測が前記隣接ブロックに適用されていると判定するように構成されていることを特徴とする請求項４に記載の画像復号装置。
【請求項１５】
前記判定部は、前記予測対象ブロックの参照フレームと前記隣接ブロックの参照フレームのとの間のＰＯＣ差の絶対値が小さい方を選択し、選択した前記隣接ブロックの参照フレームを用いた片方向予測が前記隣接ブロックに適用されていると判定するように構成されていることを特徴とする請求項４に記載の画像復号装置。
【請求項１６】
前記判定部は、前記予測対象ブロックの参照フレームと等しい前記隣接ブロックの参照フレームを選択し、選択した前記隣接ブロックの参照フレームを用いた片方向予測が前記隣接ブロックに適用されていると判定するように構成されていることを特徴とする請求項４に記載の画像復号装置。
【請求項１７】
前記判定部は、前記予測対象ブロックのサイズに基づいて、更に前記隣接ブロックの予測方向の種類を制御して、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されていることを特徴とする請求項３に記載の画像復号装置。
【請求項１８】
複数のブロックから構成された画像信号を符号化して符号化データを生成するように構成されている画像符号化装置であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、
前記判定部は、前記隣接ブロックに片方向予測が適用されている場合、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを特徴とする画像符号化装置。
【請求項１９】
複数のブロックから構成された画像信号を復号する画像復号方法であって、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成する工程Ａと、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行う工程Ｂと、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定する工程Ｃとを備え、
前記工程Ｃにおいて、前記隣接ブロックに片方向予測が適用されている場合、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定することを特徴とする画像復号方法。
【請求項２０】
コンピュータを、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置として機能させるプログラムであって、
前記画像復号装置は、
前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、
前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、
前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、
前記判定部は、前記隣接ブロックに片方向予測が適用されている場合、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像復号装置、画像符号化装置、画像復号方法及びプログラムに関する。
【背景技術】
【０００２】
非特許文献１に、重複動き補償予測（ＯＢＭＣ：Ｏｖｅｒｌａｐｐｅｄ  Ｂｌｏｃｋ  Ｍｏｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ）という技術が開示されている。ＯＢＭＣは、動き補償予測の予測画素生成過程において、予測対象ブロック及び隣接ブロックの動きベクトルがそれぞれ指し示す参照画素値を、予め設定した重み係数マトリクスに基づいて加重平均し、最終的な予測画素を生成する技術である。
【０００３】
また、特許文献１には、ＯＭＢＣを適用した場合のメモリバンド幅を低減させるために、予測対象ブロックのサイズや予測方向の種類（片方向予測又は双方向予測）や動きベクトルの精度に基づいて、ＯＢＭＣの適否を判定する技術が記されている。
【０００４】
さらに、特許文献２には、符号化対象ブロック内にある複数の予測対象ブロック間の境界に対してＯＢＭＣを適用する際に、デブロッキングフィルタの強度を判定するパラメータであるｂＳ値を修正する技術が記されている。かかる技術によれば、ＯＢＭＣの適用により予測対象ブロック間の境界に対して平滑化効果が既に施されている場合に、デブロッキングフィルタによる不要なフィルタ効果を回避することができる。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ａｌｇｏｒｉｔｈｍ  Ｄｅｓｃｒｉｐｔｉｏｎ  ｏｆ  Ｊｏｉｎｔ  Ｅｘｐｌｏｒａｔｉｏｎ  Ｔｅｓｔ  Ｍｏｄｅｌ  ７（ＪＥＭ  ７）
【非特許文献２】ＩＴＵ-Ｔ  Ｈ.２６５  Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ
【特許文献】
【０００６】
【特許文献１】特開２０１６-１８４９３６号公報
【特許文献２】特許６１６９０９１号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、非特許文献１に開示されているＯＢＭＣは、予測対象ブロック又は隣接ブロックのサイズや予測方向の種類に関係なく適用されるように構成されているため、ＯＢＭＣの適用時に必要なメモリバンド幅及び演算回数が増大してしまうという問題点があった。
【０００８】
また、特許文献１に開示されているＯＢＭＣでは、かかるＯＢＭＣが適用されている場合に必要なメモリバンド幅及び演算回数が、ＯＢＭＣが適用されていない場合に必要なメモリバンド幅及び演算回数を超えてしまう場合があり、また、ＯＢＭＣが適用されているブロック数が意図しない規模で減少してしまい、符号化性能が低下してしまうことが考えられるという問題点があった。
【０００９】
さらに、特許文献２では、ＯＢＭＣが適用されている場合にデブロッキングフィルタの強度判定に用いるｂＳ値を修正することが開示されているが、ＯＢＭＣの適用対象としているのは符号化対象ブロック内の複数の予測対象ブロック境界のみであるという問題点があった。
【００１０】
そこで、本発明は、上述の課題に鑑みてなされたものであり、ＯＭＢＣの適用条件に、予測対象ブロックのサイズや予測方向の種類や隣接ブロックの予測方向の種類に基づく判定（制限）を加えることで、ＯＢＭＣの適用時に必要なメモリバンド幅及び演算回数の増大を抑制することができ、また、符号化性能の向上を実現することができる画像復号装置、画像符号化装置、画像復号方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の第１の特徴は、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、前記判定部は、前記隣接ブロックに片方向予測が適用されている場合、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを要旨とする。
【００１２】
本発明の第２の特徴は、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックのサイズに基づいて、前記隣接ブロックに適用されている予測方向の種類を制御して、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備えることを要旨とする。
【００１３】
本発明の第３の特徴は、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、前記判定部は、前記予測対象ブロックのサイズに基づいて、前記隣接ブロックの重複動き補償タップ数を制御して、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されていることを要旨とする。
【００１４】
本発明の第４の特徴は、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、前記判定部は、前記隣接ブロックに双方向予測が適用されている場合、所定方法により、前記隣接ブロックに適用されている予測方法を双方向予測から片方向予測に変換するように構成されていることを要旨とする。
【００１５】
本発明の第５の特徴は、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、前記重複動き補償部は、前記隣接ブロックの数又は前記予測対象ブロックのサイズに基づいて、前記加重平均で用いる重み係数マトリクスの重み値を変更するように構成されていることを要旨とする。
【００１６】
本発明の第６の特徴は、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、前記重複動き補償部は、前記重複動き補償予測処理が適用されるか否かに基づいて、デブロッキングフィルタの適用条件を変更するように構成されていることを要旨とする。
【００１７】
本発明の第７の特徴は、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、前記動き補償予測部は、前記予測対象ブロックの動きベクトル及び前記隣接ブロックの動きベクトルが異なる場合、所定の削減手法により前記重複動き補償予測処理に必要な動きベクトル及び参照フレームの数を削減するように構成されていることを要旨とする。
【００１８】
本発明の第８の特徴は、複数のブロックから構成された画像信号を符号化して符号化データを生成するように構成されている画像符号化装置であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、前記判定部は、前記隣接ブロックに片方向予測が適用されている場合、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを要旨とする。
【００１９】
本発明の第９の特徴は、複数のブロックから構成された画像信号を復号する画像復号方法であって、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成する工程Ａと、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行う工程Ｂと、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定する工程Ｃとを備え、前記工程Ｃにおいて、前記隣接ブロックに片方向予測が適用されている場合、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定することを要旨とする。
【００２０】
本発明の第１０の特徴は、コンピュータを、複数のブロックから構成された画像信号を復号するように構成されている画像復号装置として機能させるプログラムであって、前記画像復号装置は、前記ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている動き補償予測部と、前記予測対象ブロックの予測画像信号と、前記予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、前記予測対象ブロックの予測画像信号を補正する重複動き補償処理を行うように構成されている重複動き補償部と、前記予測対象ブロックに対して前記重複動き補償処理を適用するかについて判定するように構成されている判定部とを備え、前記判定部は、前記隣接ブロックに片方向予測が適用されている場合、前記予測対象ブロックに対して前記重複動き補償処理を適用すると判定するように構成されていることを要旨とする。
【発明の効果】
【００２１】
本発明によれば、ＯＭＢＣの適用条件に、予測対象ブロックのサイズや予測方向の種類や隣接ブロックの予測方向の種類に基づく判定（制限）を加えることで、ＯＢＭＣの適用時に必要なメモリバンド幅及び演算回数の増大を抑制することができ、また、符号化性能の向上を実現することができる画像復号装置、画像符号化装置、画像復号方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００２２】
【図１】一実施形態に係る画像処理システム１の構成の一例を示す図である。
【図２】一実施形態に係る画像符号化装置１０の機能ブロックの一例を示す図である。
【図３】一実施形態に係る画像符号化装置１０のインター予測部１１の機能ブロックの一例を示す図である。
【図４】一実施形態に係る画像符号化装置１０のインター予測部１１のＭＣ予測部１１ｃの機能ブロックの一例を示す図である。
【図５】一実施形態に係る画像復号装置３０の機能ブロックの一例を示す図である。
【図６】一実施形態に係る画像復号装置３０のインター予測部３４の機能ブロックの一例を示す図である。
【図７】一実施形態に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂの機能ブロックの一例を示す図である。
【図８】一実施形態に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【図９】一実施形態に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【図１０】一実施形態に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【図１１】一変更例に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【図１２】一変更例で用いられるテーブルの一例を示す図である。
【図１３】一変更例で用いられるテーブルの一例を示す図である。
【図１４】一実施形態に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【図１５】一実施形態で用いられるテーブルの一例を示す図である。
【図１６】一実施形態で用いられるテーブルの一例を示す図である。
【図１７】一変更例で用いられるテーブルの一例を示す図である。
【図１８】一実施形態に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【図１９】一実施形態について説明するための図である。
【図２０】一実施形態について説明するための図である。
【図２１】一実施形態について説明するための図である。
【図２２】一実施形態について説明するための図である。
【図２３】一実施形態について説明するための図である。
【発明を実施するための形態】
【００２３】
以下、図１を参照して、本発明の実施形態に係る画像処理システム１について説明する。図１は、本実施形態に係る画像処理システム１について示す図である。
【００２４】
図１に示すように、本実施形態に係る画像処理システム１は、画像符号化装置１０及び画像復号装置３０を有する。
【００２５】
画像符号化装置１０は、入力画像信号を符号化することによって符号化データを生成するように構成されている。画像復号装置３０は、符号化データを復号することによって出力画像信号を生成するように構成されている。
【００２６】
符号化データは、画像符号化装置１０から画像復号装置３０に対して伝送路を介して送信されてもよい。符号化データは、記憶媒体に格納された上で、画像符号化装置１０から画像復号装置３０に提供されてもよい。
【００２７】
（画像符号化装置１０について）
以下、図２を参照して、本実施形態に係る画像符号化装置１０について説明する。図２は、本実施形態に係る画像符号化装置について示す図である。
【００２８】
図２に示すように、画像符号化装置１０は、インター予測部１１と、イントラ予測部１２と、減算器１３と、加算器１４と、変換・量子化部１５と、逆変換・逆量子化部１６と、符号化部１７と、インループフィルタ１８と、フレームバッファ１９とを有する。
【００２９】
インター予測部１１は、インター予測（フレーム間予測）によって予測画像信号を生成するように構成されている。
【００３０】
具体的には、インター予測部１１は、符号化対象フレーム（以下、対象フレーム）とフレームバッファ１９に格納されている参照フレームとの比較によって、かかる参照フレームに含まれる参照ユニットを特定し、特定された参照ユニットに対する予測対象ブロック（予測ユニット、例えば、ＰＵ：Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ）の動きベクトルを決定するように構成されている。
【００３１】
ここで、かかる参照フレームは、対象フレームとは異なるフレームである。また、かかる参照ユニットは、予測対象ブロックについて参照されるブロックである。
【００３２】
また、インター予測部１１は、予測対象ブロック毎に、予測対象ブロック及び動きベクトルに基づいて、予測画像信号を生成するように構成されている。インター予測部１１は、かかる予測画像信号を減算器１３及び加算器１４に出力するように構成されている。
【００３３】
イントラ予測部１２は、イントラ予測（フレーム内予測）によって予測画像信号を生成するように構成されている。
【００３４】
具体的には、イントラ予測部１２は、対象フレームに含まれる参照ユニットを特定し、特定された参照ユニットに基づいて、予測対象ブロック毎に予測画像信号を生成するように構成されている。また、イントラ予測部１２は、かかる予測画像信号を減算器１３及び加算器１４に出力するように構成されている。
【００３５】
例えば、かかる参照ユニットは、予測対象ブロックに隣接するブロック（隣接ブロック）である。
【００３６】
減算器１３は、入力画像信号から予測画像信号を減算し、入力画像信号と予測画像信号との差分である予測残差信号を生成して変換・量子化部１５に出力するように構成されている。
【００３７】
加算器１４は、逆変換・逆量子化部１６から出力される予測残差信号にインター予測部１１１又はイントラ予測部１１２から出力される予測画像信号を加算してフィルタ前復号信号を生成し、かかるフィルタ前復号信号をイントラ予測部１２及びインループフィルタ１８に出力するように構成されている。
【００３８】
ここで、フィルタ前復号信号は、イントラ予測部１２で用いられる参照ユニットを構成する。
【００３９】
変換・量子化部１５は、入力された予測残差信号に対する変換処理を行い、係数レベル値を取得するように構成されている。さらに、変換・量子化部１５は、かかる係数レベル値の量子化を行うように構成されていてもよい。
【００４０】
ここで、かかる変換処理は、上述の予測残差信号を周波数成分信号に変換する処理である。なお、かかる変換処理では、離散コサイン変換（ＤＣＴ：Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）に対応する基底パターン（変換行列）が用いられてもよく、離散サイン変換（ＤＣＴ：Ｄｉｓｃｒｅｔｅ  Ｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）に対応する基底パターン（変換行列）が用いられてもよい。
【００４１】
逆変換・逆量子化部１６は、変換・量子化部１５から出力された係数レベル値に対する逆変換処理を行うように構成されている。ここで、逆変換・逆量子化部１６は、かかる逆変換処理に先立って、かかる係数レベル値の逆量子化を行うように構成されていてもよい。
【００４２】
ここで、かかる逆変換処理及び逆量子化は、変換・量子化部１５で行われる変換処理及び量子化とは逆の手順で行われる。
【００４３】
符号化部１７は、変換・量子化部１７から出力された係数レベル値を符号化し、符号化データを生成して出力するように構成されている。
【００４４】
例えば、かかる符号化は、かかる係数レベル値の発生確率に基づいて異なる長さの符号を割り当てるエントロピー符号化である。
【００４５】
また、符号化部１７は、かかる係数レベル値に加えて、画像復号装置３０における復号処理で用いられる制御データを符号化するように構成されている。
【００４６】
ここで、かかる制御データは、符号化対象ユニット（ＣＵ：Ｃｏｄｉｎｇ  Ｕｎｉｔ）のサイズや、予測対象ブロックのサイズや、変換ユニット（ＴＵ：Ｔｒａｎｓｆｏｒｍ  Ｕｎｉｔ）のサイズ等のサイズデータを含んでもよい。
【００４７】
インループフィルタ１８は、加算器１４から出力されるフィルタ前復号信号に対してフィルタ処理を行うことでフィルタ後復号信号を生成し、かかるフィルタ後復号信号をフレームバッファ１９に出力するように構成されている。
【００４８】
例えば、かかるフィルタ処理は、ブロック（予測対象ブロック又は変換ユニット）の境界部分で生じる歪みを減少するデブロッキングフィルタ処理である。
【００４９】
フレームバッファ１９は、インター予測部１１で用いられる参照フレームを蓄積するように構成されている。
【００５０】
ここで、かかるフィルタ後復号信号は、インター予測部１１で用いられる参照フレームを構成する。
【００５１】
（インター予測部１１について）
以下、図３を参照して、本実施形態に係る画像符号化装置１０のインター予測部１１について説明する。図３は、本実施形態に係るインター予測部１１について示す図である。
【００５２】
図３に示すように、インター予測部１１は、動き探索部１１ａと、マージ部１１ｂと、動き補償予測部（以下、ＭＣ予測部）１１ｃとを有する。
【００５３】
動き探索部１１ａは、入力画像信号（原画像）やフレームバッファ１９に格納されている参照フレーム（再構成画像）や予測対象ブロックの隣接ブロックの動きベクトルを入力とし、予測対象ブロック毎に動きベクトル及び参照フレームを決定するように構成されている。
【００５４】
例えば、具体的には、動き探索部１１ａは、動き補償（ＭＣ）予測部１１ａ１と、コスト算出部１１ａ２とを有する。
【００５５】
動き補償（ＭＣ）予測部１１ａ１は、予測対象ブロックに対応する入力画像信号に対して、参照フレーム及び参照フレーム内の参照位置を変えながら予測画像信号を生成するように構成されている。
【００５６】
コスト算出部１１ａ２は、動き補償予測部１１ａ１によって生成された予測画像信号と入力画像信号とのコストが最小となり、かつ、隣接ブロックの動きベクトルとの符号量差が最小になる参照位置（すなわち、動きベクトル）及び参照フレームを決定するように構成されている。
【００５７】
ここで、コスト算出部に１１ａ２において用いられるコスト関数として、例えば、二乗誤差和（ＳＳＥ：Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｅｒｒｏｒ）や絶対値誤差和（ＳＡＤ：Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）等が想定され、コスト算出部１１ａ２は、演算負荷に基づいて、適宜、どのコスト関数を用いるべきか選択するように構成されていてもよい。
【００５８】
画像符号化装置１０は、コスト算出部１１ａ２によって決定された動きベクトル及び参照フレームに係る情報を、符号化データに重畳して画像復号装置３０に伝送するように構成されている。
【００５９】
マージ部１１ｂは、入力画像信号とフームバッファ１９に格納されている参照フレームと隣接ブロックの動きベクトルとから、予測対象ブロックに対するマージ候補（動きベクトル）を決定するように構成されている。
【００６０】
画像符号化装置１０は、マージ部１１ｂによって決定されたマージ候補に係る情報を、符号化データに重畳して画像復号装置３０に伝送するように構成されている。
【００６１】
（ＭＣ予測部１１ｃについて）
以下、図４を参照して、本実施形態に係る画像符号化装置１０のインター予測部１１のＭＣ予測部１１ｃについて説明する。図４は、本実施形態に係る画像符号化装置１０のインター予測部１１のＭＣ予測部１１ｃについて示す図である。
【００６２】
図４に示すように、ＭＣ予測部１１ｃは、標準動き補償予測部（標準ＭＣ予測部）１１ｃ１と、ＯＢＭＣ適用判定部１１ｃ２と、ＯＢＭＣ適用部１１ｃ３とを有する。
【００６３】
ここで、ＭＣ予測部１１ｃは、動き探索部１１ａからの動きベクトル及び参照フレームに係る情報（参照画像リスト及び参照画像インデックス）や、マージ部１１ｂからのマージ候補に係る情報に基づいて、予測画像信号（予測画素値）を出力するように構成されている。なお、出力される予測画像信号は、ＯＢＭＣが適用されるか否かによって変わる。
【００６４】
また、画像符号化装置１０からＯＢＭＣ適用判定フラグが送られる場合は、ＭＣ予測部１１ｃは、かかるＯＢＭＣ適用判定フラグに基づいて、ＯＢＭＣの適否について判定するように構成されている。
【００６５】
具体的には、標準ＭＣ予測部１１ｃ１は、ブロック単位の動きベクトル及び参照フレームに基づいて、予測対象ブロックの予測画像信号を生成するように構成されている。
【００６６】
ＯＢＭＣ適用判定部１１ｃ２は、予測対象ブロックに対してＯＢＭＣを適用するか否かについて判定するように構成されている。ここで、ＯＢＭＣを適用しないと判定された場合は、ＯＢＭＣ適用判定部１１ｃ２は、標準ＭＣ予測部１１ｃ１によって生成された予測画像信号をそのまま出力するように構成されている。
【００６７】
一方、ＯＢＭＣを適用すると判定された場合は、ＯＢＭＣ適用部１１ｃ３は、予測対象ブロックに対してＯＢＭＣを適用し、生成された予測画像信号を出力するように構成されている。ここで、ＯＢＭＣが適用される場合には、画像符号化装置１０は、ＯＢＭＣ適用判定フラグを符号化データに重畳して画像復号装置３０に伝送するように構成されている。
【００６８】
なお、具体的なＯＢＭＣを適用するか否かについての判定方法やＯＢＭＣの適用方法については後述する。
【００６９】
（画像復号装置３０について）
以下、図５を参照して、本実施形態に係る画像復号装置３０について説明する。図５は、本実施形態に係る画像復号装置について示す図である。
【００７０】
図５に示すように、画像復号装置３０は、復号部３１と、逆変換・逆量子化部３２と、加算器３３と、インター予測部３４と、イントラ予測部３５と、インループフィルタ３６と、フレームバッファ３７とを有する。
【００７１】
復号部３１は、画像符号化装置１０によって生成された符号化データを復号し、係数レベル値を復号するように構成されている。
【００７２】
ここで、例えば、復号は、画像符号化装置１０の符号化部１７で行われるエントロピー符号化とは逆の手順のエントロピー復号である。
【００７３】
また、復号部３１は、符号化データの復号処理によって制御データを取得するように構成されていてもよい。
【００７４】
上述したように、かかる制御データは、符号化ユニットのサイズや予測対象ブロックのサイズや変換ユニットのサイズ等のサイズデータを含んでもよい。また、かかる制御データは、第２成分の予測サンプルの生成に用いられる入力ソースを示す情報要素を含んでもよい。ここで、第２成分とは、例えば、画像信号を構成する輝度信号以外の色差信号を指す。
【００７５】
逆変換・逆量子化部３２は、復号部３１から出力された係数レベル値に対する逆変換処理を行うように構成されている。なお、逆変換・逆量子化部３２は、かかる逆変換処理に先立って、かかる係数レベル値の逆量子化を行うように構成されていてもよい。
【００７６】
ここで、かかる逆変換処理及び逆量子化は、変換・量子化部１５で行われる変換処理及び量子化とは逆の手順で行われる。
【００７７】
加算器３３は、逆変換・逆量子化部３２から出力された予測残差信号に予測画像信号を加算してフィルタ前復号信号を生成し、かかるフィルタ前復号信号をイントラ予測部３５及びインループフィルタ３６に出力するように構成されている。
【００７８】
ここで、かかるフィルタ前復号信号は、イントラ予測部３５で用いられる参照ユニットを構成する。
【００７９】
インター予測部３４は、画像符号化装置１０のインター予測部１１と同様に、インター予測（フレーム間予測）によって予測画像信号を生成するように構成されている。
【００８０】
具体的には、インター予測部３４は、符号化対象フレームとフレームバッファ３７に格納される参照フレームとの比較によって、かかる参照フレームに含まれる参照ユニットを特定し、特定された参照ユニットに対する予測対象ブロックの動きベクトルを決定するように構成されている。
【００８１】
ここで、インター予測部３４は、予測対象ブロック及び動きベクトルに基づいて、予測対象ブロック毎に予測画像信号を生成するように構成されている。インター予測部３４は、かかる予測画像信号を加算器３３に出力するように構成されている。
【００８２】
イントラ予測部３５は、画像符号化装置１０のイントラ予測部１２と同様に、イントラ予測（フレーム内予測）によって予測画像信号を生成するように構成されている。
【００８３】
具体的には、イントラ予測部３５は、符号化対象フレームに含まれる参照ユニットを特定し、特定された参照ユニットに基づいて、予測対象ブロック毎に予測画像信号を生成するように構成されている。イントラ予測部３５は、かかる予測画像信号を加算器３３に出力するように構成されている。
【００８４】
インループフィルタ３６は、画像符号化装置１０のインループフィルタ１８と同様に、加算器３３から出力されたフィルタ前復号信号に対してフィルタ処理を行うことでフィルタ後復号信号を生成し、かかるフィルタ後復号信号をフレームバッファ３７に出力するように構成されている。
【００８５】
例えば、かかるフィルタ処理は、ブロック（予測対象ブロック又は変換ユニット）の境界部分で生じる歪みを減少するデブロッキングフィルタ処理である。
【００８６】
フレームバッファ３７は、画像符号化装置１０のフレームバッファ１９と同様に、インター予測部３４で用いられる参照フレームを蓄積するように構成されている。
【００８７】
ここで、かかるフィルタ後復号信号は、インター予測部１１で用いられる参照フレームを構成する。
【００８８】
（インター予測部３４について）
以下、図６を参照して、本実施形態に係る画像復号装置３０のインター予測部３４について説明する。図６は、本実施形態に係る画像復号装置３０のインター予測部３４について示す図である。
【００８９】
図６に示すように、インター予測部３４は、動きベクトル復号部３４ａと、動き補償（ＭＣ）予測部３４ｂとを有する。
【００９０】
動きベクトル復号部３４ａは、符号化データに重畳されたブロック毎の動きベクトル及び参照フレームに係る情報（参照画像リスト及び参照画像インデックス）や、マージ候補に係る情報や、ＯＢＭＣ適用判定フラグを復号し、ＭＣ予測部３４ｂに出力するように構成されている。
【００９１】
ＭＣ予測部３４ｂは、動きベクトル復号部３４ａによって復号された動きベクトル及び参照フレームに係る情報やマージ候補に係る情報を入力とし、出力画像信号（予測画素値）を生成して出力するように構成されている。
【００９２】
（ＭＣ予測部３４ｂについて）
以下、図７を参照して、本実施形態に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂについて説明する。図７は、本実施形態に係る画像復号装置３０のインター予測部３４のＭＣ予測部３４ｂについて示す図である。
【００９３】
図７に示すように、ＭＣ予測部３４ｂは、標準動き補償予測部（標準ＭＣ予測部）３４ｂ１と、ＯＢＭＣ適用判定部３４ｂ２と、ＯＢＭＣ適用部３４ｂ３とを有する。
【００９４】
ＭＣ予測部３４ｂは、動きベクトル復号部３４ａからの動きベクトル及び参照フレームに係る情報（参照画像リスト及び参照画像インデックス）やマージ候補に係る情報やＯＢＭＣ適用判定フラグに基づいて、予測画像信号（予測画素値）を生成して出力するように構成されている。なお、出力される予測画像信号は、ＯＢＭＣが適用されるか否かによって変わる。
【００９５】
具体的には、標準ＭＣ予測部３４ｂ１は、ブロック単位の動きベクトル及び参照フレームに係る情報に基づいて、予測対象ブロックの予測画像信号を生成するように構成されている。
【００９６】
ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用するか否かについて判定するように構成されている。ここで、ＯＢＭＣを適用しないと判定された場合は、ＯＢＭＣ適用判定部３４ｂ２は、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力するように構成されている。
【００９７】
一方、ＯＢＭＣを適用すると判定された場合は、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックに対してＯＢＭＣを適用し、生成された予測画像信号を出力するように構成されている。
【００９８】
なお、具体的なＯＢＭＣを適用するか否かについての判定方法やＯＢＭＣの適用方法については後述する。
【００９９】
ＯＢＭＣ適用部３４ｂ３は、ＯＢＭＣ適用判定部３４ｂ２による判定結果に基づいて、すなわち、ＯＢＭＣを適用すると判定された場合に、予測対象ブロックに対してＯＢＭＣを適用するように構成されている。
【０１００】
ここで、ＯＢＭＣは、予測対象ブロックの予測画像信号と、予測対象ブロックの隣接ブロックの動きベクトル及び参照フレームに係る情報に基づいて生成される予測画像信号とを加重平均することによって、予測対象ブロックの予測画像信号を補正する重複動き補償処理である。
【０１０１】
以下、図８〜図２３を参照して、具体的なＯＢＭＣを適用するか否かについての判定方法やＯＢＭＣの適用方法について説明する。以下の例では、画像復号装置３０におけるＭＣ予測部３４ｂについて説明するが、画像符号化装置１０におけるＭＣ予測部１１ｃについても同様の機能を有するものとする。
【０１０２】
また、上述の判定方法及び適用方法は、予測対象ブロックの動きベクトルと隣接ブロックの動きベクトルがそれぞれ異なる場合に適用される。両者の動きベクトルが等しい又はその差分が小さいとみなされる場合には、予測対象ブロックと隣接ブロックとの境界にＯＢＭＣを適用する意味がない。したがって、以下、本明細書では、予測対象ブロックの動きベクトルと隣接ブロックの動きベクトルがそれぞれ異なることを前提として説明する。
【０１０３】
なお、書面簡略化のために、上述の判定方法及び適用方法が予測対象ブロック単位で行われる場合について事例として挙げるが、上述の判定方法及び適用方法は、予測対象ブロックを分割したサブブロック単位で実施されてもよい。
【０１０４】
（第１実施形態）
以下、図８を参照して、本発明の第１実施形態について説明する。図８は、本実施形態におけるインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【０１０５】
本実施形態において、ＭＣ予測部３４ｂのＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの予測方向の種類（片方向予測又は双方向予測）に基づいて、予測対象ブロックに対してＯＢＭＣを適用するかについて判定するように構成されている。
【０１０６】
図８に示すように、ステップＳ１０１において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに片方向予測が適用されているか否かについて判定する。
【０１０７】
予測対象ブロックに片方向予測が適用されていると判定された場合、本手順は、ステップＳ１０２に進み、予測対象ブロックに片方向予測が適用されていないと判定された場合、本手順は、ステップＳ１０３に進む。
【０１０８】
ステップＳ１０２において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用すると判定し、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックに対してＯＢＭＣを適用する。
【０１０９】
ステップＳ１０３において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１１０】
なお、予測対象ブロックに双方向予測が適用されている場合に予測対象ブロックに対してＯＢＭＣを適用する場合、予測対象ブロックに片方向予測が適用されている場合に予測対象ブロックに対してＯＢＭＣを適用する場合と比べて、追加でフェッチが必要なメモリバンド幅と演算回数が増大する。したがって、本実施形態に係る画像符号化装置１０及び画像復号装置３０によれば、予測対象ブロックに片方向予測が適用されている場合に限り予測対象ブロックに対してＯＢＭＣを適用することによって、意図しないメモリバンド幅及び演算回数の増大を防ぐことができる。
【０１１１】
（第２実施形態）
以下、図９を参照して、本発明の第２実施形態について説明する。図９は、本実施形態におけるインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【０１１２】
本実施形態において、ＭＣ予測部３４ｂのＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックのサイズが所定閾値以上である場合に、予測対象ブロックに対してＯＢＭＣを適用すると判定するように構成されている。
【０１１３】
図９に示すように、ステップＳ２０１において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックのサイズが所定閾値以上であるか否かについて判定する。
【０１１４】
予測対象ブロックのサイズが所定閾値以上であると判定された場合、本手順は、ステップＳ２０２に進み、予測対象ブロックのサイズが所定閾値未満であると判定された場合、本手順は、ステップＳ２０３に進む。
【０１１５】
ステップＳ２０２において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用すると判定し、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックに対してＯＢＭＣを適用する。
【０１１６】
ステップＳ２０３において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１１７】
ここで、かかる所定閾値は、例えば、ＯＢＭＣを適用する際に必要なメモリバンド幅及び演算回数が、ＯＢＭＣを適用しない場合の双方向予測におけるメモリバンド幅及び演算回数と比較して、小さくなる値に設定してもよい。
【０１１８】
また、上述の例では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの画素数を用いて予測対象ブロックのサイズを判定しているが、その他の手法として、予測対象ブロックの高さ及び幅を用いて予測対象ブロックのサイズを判定するように構成されていてもよい。
【０１１９】
また、ＯＢＭＣ適用判定部３４ｂ２は、かかる所定閾値ではなく、テーブルを用いて、予測対象ブロックに対してＯＢＭＣを適用すると判定するように構成されていてもよい。
【０１２０】
なお、サイズが比較的小さい予測対象ブロックに対してＯＢＭＣを適用する場合、追加でフェッチが必要なメモリバンド幅と演算回数が増大する。したがって、本実施形態に係る画像符号化装置１０及び画像復号装置３０によれば、予測対象ブロックのサイズに基づいて予測対象ブロックに対してＯＢＭＣを適用するか否かについて制御することによって、意図しないメモリバンド幅及び演算回数の増大を防ぐことができる。
【０１２１】
（第３実施形態）
以下、図１０を参照して、本発明の第１実施形態について説明する。図１０は、本実施形態におけるインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【０１２２】
本実施形態において、ＭＣ予測部３４ｂのＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの隣接ブロックの予測方向の種類（片方向予測又は双方向予測）に基づいて、予測対象ブロックに対してＯＢＭＣを適用するかについて判定するように構成されている。
【０１２３】
図１０に示すように、ステップＳ３０１において、ＯＢＭＣ適用判定部３４ｂ２は、隣接ブロックに片方向予測が適用されているか否かについて判定する。
【０１２４】
隣接ブロックに片方向予測が適用されていると判定された場合、本手順は、ステップＳ３０２に進み、隣接ブロックに片方向予測が適用されていないと判定された場合、本手順は、ステップＳ３０３に進む。
【０１２５】
ステップＳ３０２において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用すると判定し、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックに対してＯＢＭＣを適用する。
【０１２６】
ステップＳ３０３において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１２７】
なお、隣接ブロックに双方向予測が適用されている場合に予測対象ブロックに対してＯＢＭＣを適用する場合、隣接ブロックに片方向予測が適用されている場合に予測対象ブロックに対してＯＢＭＣを適用する場合と比べて、追加でフェッチが必要なメモリバンド幅と演算回数が増大する。したがって、本実施形態に係る画像符号化装置１０及び画像復号装置３０によれば、隣接ブロックに片方向予測が適用されている場合に限り予測対象ブロックに対してＯＢＭＣを適用することによって、意図しないメモリバンド幅及び演算回数の増大を防ぐことができる。
【０１２８】
（変更例１）
以下、図１１を参照して、本発明の変更例１について、上述の第１〜第３実施形態との相違点に着目して説明する。図１１は、本変更例１におけるインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【０１２９】
図１１に示すように、ステップＳ４０１において、ＭＣ予測部３４ｂは、予測対象ブロックに片方向予測が適用されているか否かについて判定する。
【０１３０】
予測対象ブロックに片方向予測が適用されていると判定された場合、本手順は、ステップＳ４０３に進み、予測対象ブロックに片方向予測が適用されていないと判定された場合、本手順は、ステップＳ４０２に進む。
【０１３１】
ステップＳ４０２において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１３２】
ステップＳ４０３において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックのサイズが所定閾値以上であるか否かについて判定する。
【０１３３】
予測対象ブロックのサイズが所定閾値以上であると判定された場合、本手順は、ステップＳ４０５に進み、予測対象ブロックのサイズが所定閾値未満であると判定された場合、本手順は、ステップＳ４０４に進む。
【０１３４】
ステップＳ４０４において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１３５】
ステップＳ４０５おいて、ＭＣ予測部３４ｂは、隣接ブロックに片方向予測が適用されているか否かについて判定する。
【０１３６】
隣接ブロックに片方向予測が適用されていると判定された場合、本手順は、ステップＳ４０６に進み、隣接ブロックに片方向予測が適用されていないと判定された場合、本手順は、ステップＳ４０７に進む。
【０１３７】
ステップＳ４０６において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用すると判定し、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックに対してＯＢＭＣを適用する。
【０１３８】
ステップＳ４０７において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１３９】
上述のように、本変更例１では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用するに際して、第１に、予測対象ブロックに対して片方向予測が適用されているか否かについて判定し、第２に、予測対象ブロックのサイズが所定閾値以上であるか否かについて判定し、第３に、隣接ブロックに対して片方向予測が適用されているか否かについて判定する。
【０１４０】
本変更例１において、予測対象ブロックに対して片方向予測が適用されているか否かについての判定の後に、予測対象ブロックのサイズが所定閾値以上であるか否かについての判定が行われる効果は、以下の通りである。
【０１４１】
上述の第１実施形態によれば、予測対象ブロックに対して片方向予測が適用されている場合には、一律にＯＢＭＣを適用するとしていたが、予測対象ブロックに対して片方向予測が適用されているか否かについての判定の後に予測対象ブロックのサイズに基づく制約を導入することで、ＯＢＭＣ適用時のワーストケースを回避することができるためである。
【０１４２】
かかるワーストケースとは、符号化ツリーブロックが最小の符号化対象ブロック或いは予測対象ブロックで埋め尽くされる場合に発生し得るもので、このときにＯＢＭＣ適用に必要なメモリバンド幅及び演算回数は最大となる。つまり、このワーストケースこそが、ＯＢＭＣ適用時に必要なメモリバンド幅及び演算回数といえる。
【０１４３】
したがって、ＯＢＭＣの適否の判定に予測対象ブロックのサイズを導入することで、例えば、予測対象ブロックに対して片方向予測が適用されており且つＯＢＭＣが適用される場合に必要なメモリバンド幅及び演算回数を、ＯＢＭＣが適用されず且つ予測対象ブロックに対して双方向予測が適用される場合の標準ＭＣに必要なメモリバンド幅及び演算回数と比較して、小さくすることができる。
【０１４４】
また、本変更例１において、予測対象ブロックのサイズが所定閾値以上であるか否かについての判定の後に、隣接ブロックに対して片方向予測が適用されているか否かについての判定が行われる効果は、以下の通りである。
【０１４５】
上述の構成によれば、予測対象ブロックに対して片方向予測が適用されており且つ予測対象ブロックのサイズが所定閾値以上である場合には、一律にＯＢＭＣを適用するとしていたが、かかる場合であっても、隣接ブロックに双方向予測が適用されている場合には、必要なメモリバンド幅及び演算回数がワーストケースを超える可能性がある。
【０１４６】
これに対して、隣接ブロックに対して双方向予測が適用されている場合には、ＯＢＭＣを非適用とすることで、ＯＢＭＣ適用時に必要なメモリバンド幅及び演算回数を、ＯＢＭＣが適用されず且つ予測対象ブロックに対して双方向予測が適用される場合の標準ＭＣに必要なメモリバンド幅及び演算回数と比較して、小さくすることができる。
【０１４７】
ここで、例えば、予測対象ブロック及びＯＢＭＣ関連のパラメータが以下のような値を持つ場合の条件分岐の具体例を示す。
・  符号化ツリーブロック：１２８×１２８
・  予測対象ブロックの最小サイズ：４×４
・  輝度に対する標準動き補償タップ数：８
・  色差に対する標準動き補償タップ数：４
・  輝度に対するＯＢＭＣのタップ数：８
・  色差に対するＯＢＭＣのタップ数：４
・  ＯＢＭＣライン数：４ライン
・  予測対象ブロックでの双方向予測禁止サイズ：４×４
【０１４８】
ここで、図１１の条件分岐に従えば、ＯＢＭＣが適用されるか否かについての判定条件は、以下のように設定される。なお、以下の所定閾値は、ＯＢＭＣが適用されず且つ予測対象ブロックに対して双方向予測が適用される場合の標準ＭＣに必要なメモリバンド幅を超えないように設定されている。ここで、Ｓ及びＬは、予測対象ブロックの高さと横幅とを比較して得られた短辺と長辺を示している（Ｓ≦Ｌ）。
・  予測対象ブロックに対して片方向予測が適用されている場合で、
-（Ｓ＝４且つＬ＜６４）又は（Ｓ＝８且つＬ＝８）⇒ ＯＢＭＣを適用しない。
-（Ｓ＝４且つＬ≧６４）又は（Ｓ＝８且つＬ≧１６）又は（Ｓ≧１６）⇒隣接ブロックに対して片方向予測が適用されている場合にＯＢＭＣを適用する。
・  予測対象ブロックが双方向予測である場合、ＯＢＭＣを適用しない。
【０１４９】
一方で、ＯＢＭＣ適用判定部３４ｂ２は、所定閾値の代わりに、例えば、図１２に示すようなテーブルに基づいて、ＯＢＭＣの適否について判定するように構成されていてもよい。
【０１５０】
図１２の「短辺」及び「長辺」は、予測対象ブロックの高さと横幅とを比較して得られた短辺及び長辺を示しており、図１２の「非適用」は、ＯＢＭＣを適用しないことを示し、図１２の「片方向」は、隣接ブロックに対して片方向予測が適用されている場合にＯＢＭＣを適用することを示す。また、図１２において、図示されていないが、「双方向」は、隣接ブロックに対して片方向予測又は双方向予測が適用されている場合にＯＢＭＣを適用することを意味する。
【０１５１】
上述の例では、メモリバンド幅を超えない値を目安に設定した所定閾値或いはテーブル（図１２）について述べたが、演算回数を目安とした場合には、かかる所定閾値の設定方法が、メモリバンド幅で述べたように、予測対象ブロックのサイズ（高さと横幅）で対称な閾値にはならない。
【０１５２】
何故なら、演算回数は、ＭＣの処理順によって変わるためである。そのため、演算回数を目安としたテーブルは、例えば、図１３に示すように、サイズで非対称な値となり得る。
【０１５３】
実際の所定閾値の設定やテーブルの設計については、上記で挙げたパラメータより、ＯＢＭＣが適用されず且つ予測対象ブロックに対して双方向予測が適用されている場合よりも、メモリバンド幅及び演算回数が小さくなるように設定するが、メモリバンド幅及び演算回数に対してそれぞれ求まる条件のうち、より厳しい条件を設定するようにする。
【０１５４】
（第４実施形態）
以下、図１４及び図１５を参照して、本発明の第４実施形態について説明する。図１４は、本実施形態におけるインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【０１５５】
上述の変更例１では、予測対象ブロックのサイズが所定閾値以上となる場合は、ＯＢＭＣの適用対象となるが、実際に、ＯＢＭＣが適用されるケースは、隣接ブロックに対して片方向予測が適用されている場合に制限されていた。
【０１５６】
しかしながら、予測対象ブロックのサイズによっては、隣接ブロックに対して双方向予測が適用される場合であっても、ＯＢＭＣの適用に必要なメモリバンド幅と演算回数が、ＯＢＭＣが適用されず且つ予測対象ブロックに対して双方向予測が適用されている場合の標準ＭＣに必要なメモリバンド幅及び演算回数よりも小さくできるケースがあり、その場合は、隣接ブロックに対して双方向予測が適用されている場合であっても、ＯＢＭＣを適用した方が、符号化性能が向上する。
【０１５７】
図１４に示すように、ステップＳ５０１において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに片方向予測が適用されているか否かについて判定する。
【０１５８】
予測対象ブロックに片方向予測が適用されていると判定された場合、本手順は、ステップＳ５０３に進み、予測対象ブロックに片方向予測が適用されていないと判定された場合、本手順は、ステップＳ５０２に進む。
【０１５９】
ステップＳ５０２において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１６０】
ステップＳ５０３において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックのサイズについて判定する。
【０１６１】
予測対象ブロックのサイズが閾値ＴＨ１未満であると判定された場合、本手順は、ステップＳ５０４に進み、予測対象ブロックのサイズが閾値ＴＨ１以上閾値ＴＨ２未満であると判定された場合、本手順は、ステップＳ５０６に進み、予測対象ブロックのサイズが閾値ＴＨ以上であると判定された場合、本手順は、ステップＳ５０５に進む。
【０１６２】
ステップＳ５０４において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１６３】
ステップＳ５０５において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用すると判定し、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックに対してＯＢＭＣを適用する。
【０１６４】
ステップＳ５０６において、ＯＢＭＣ適用判定部３４ｂ２は、隣接ブロックに片方向予測が適用されているか否かについて判定する。
【０１６５】
隣接ブロックに片方向予測が適用されていると判定された場合、本手順は、ステップＳ５０７に進み、隣接ブロックに片方向予測が適用されていないと判定された場合、本手順は、ステップＳ５０８７に進む。
【０１６６】
ステップＳ５０７において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用すると判定し、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックに対してＯＢＭＣを適用する。
【０１６７】
ステップＳ５０８において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、標準ＭＣ予測部３４ｂ１によって生成された予測画像信号をそのまま出力する。
【０１６８】
本実施形態では、ＯＢＭＣ適用判定部３４ｂ２は、２つの閾値（ただし、閾値ＴＨ１≦閾値ＴＨ２）を用いるように構成されている。
【０１６９】
そして、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックのサイズが閾値ＴＨ１未満である場合には、予測対象ブロックに対してＯＢＭＣを適用しないと判定し、予測対象ブロックのサイズが閾値ＴＨ１以上且つ閾値ＴＨ２未満である場合には、隣接ブロックに対して片方向予測が適用されているか否かについての判定に移行し、予測対象ブロックのサイズが閾値ＴＨ２以上である場合には、隣接ブロックに対して双方向予測が適用されているか否かに関わらず予測対象ブロックに対してＯＢＭＣを適用すると判定する。
【０１７０】
すなわち、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックのサイズに基づいて、隣接ブロックに適用されている予測方向の種類（片方向予測或いは双方向予測）を制御して、予測対象ブロックに対してＯＢＭＣを適用するかについて判定するように構成されている。
【０１７１】
ここで、例えば、予測対象ブロック及びＯＢＭＣ関連のパラメータが以下のような値を持つ場合の条件分岐の具体例（閾値の設定方法）を示す。
・  符号化ツリーブロック：１２８×１２８
・  予測対象ブロックの最小サイズ：４×４
・  輝度信号に対する標準動き補償タップ数：８
・  色差信号に対する標準動き補償タップ数：４
・  輝度信号に対するＯＢＭＣのタップ数：８
・  色差信号に対するＯＢＭＣのタップ数：４
・  ＯＢＭＣライン数：４ライン
・  予測対象ブロックでの双方向予測禁止サイズ：４×４
【０１７２】
なお、上記は画像信号が輝度信号（Ｙ）と色差信号（ＣｂＣｒ）がそれぞれ４：２：０で構成される事例を示しており、これが他の構成（４：４：４や４：２：２）となる場合は適宜ＯＢＭＣのタップ数などを変更してもよい。
【０１７３】
ここで、ＯＢＭＣが適用されるか否かについての判定条件は、以下のように設定される。なお、以下の閾値は、ＯＢＭＣが適用されず且つ予測対象ブロックに対して双方向予測が適用される場合の標準ＭＣに必要なメモリバンド幅を超えないように設定されている。ここで、Ｓ及びＬは、予測対象ブロックの高さと横幅を比較して得られた短辺と長辺を示している（Ｓ≦Ｌ）。
・  予測対象ブロックに対して片方向予測が適用されている場合で、
-（Ｓ＝４且つＬ＜６４）又は（Ｓ＝８且つＬ＝８）⇒ ＯＢＭＣを適用しない。
-（Ｓ＝４且つ＆Ｌ≧６４）又は（Ｓ＝８且つＬ≧１６）又は（Ｓ≧１６）⇒  隣接ブロックに対して片方向予測が適用されている場合にＯＢＭＣを適用する。
-（Ｓ≧１６）⇒  隣接ブロックに対して双方向予測が適用されている場合であってもＯＢＭＣを適用する。
・  予測対象ブロックが双方向予測である場合、ＯＢＭＣを適用しない。
【０１７４】
一方で、ＯＢＭＣ適用判定部３４ｂ２は、所定閾値の代わりに、例えば、図１５に示すようなテーブルに基づいて、ＯＢＭＣの適否について判定するように構成されていてもよい。なお、図１５のグレーアウトされた箇所は、上述の短辺Ｓと長辺ＬでＳ≧Ｌとなる個所のために、考慮不要である。
【０１７５】
（第５実施形態）
以下、図１６を参照して、本発明の第４実施形態について説明する。
【０１７６】
上述の第４実施形態では、ＯＢＭＣのタップ数（重複動き補償タップ数）が「８」であるケースについて説明したが、ＯＢＭＣのタップ数が「８」から「４」になった場合及びＯＢＭＣのタップ数が「８」から「２」になった場合には、ＯＢＭＣ適用時に必要なメモリバンド幅及び演算回数が小さくなるため、ＯＢＭＣ適用の制約が緩和される。
【０１７７】
例えば、上述の実施形態では、フィルタのタップ数のみを変更した場合に、ＯＢＭＣが適用されるか否かについての判定条件は、以下のように設定される。ただし、以下の閾値は、上述のケースと同様に、ＯＢＭＣが適用されず且つ予測対象ブロックに対して双方向予測が適用される場合の標準ＭＣに必要なメモリバンド幅を超えないように設定されている。
・  予測対象ブロックに対して片方向予測が適用されている場合で、
-（Ｓ＝４且つＬ＝４）⇒ ２タップのＯＢＭＣを適用する（ただし、隣接ブロックには片方向予測が適用されている場合）。
-（Ｓ＝４且つＬ＞４且つＬ＜６４）又は（Ｓ＝８且つＬ＝８）⇒  ４タップのＯＢＭＣを適用する（ただし、隣接ブロックには片方向予測が適用されている場合）。
-（Ｓ＝４且つＨ≦６４）又は（Ｓ＝８且つＬ≧１６）又は（Ｓ≧１６）⇒  ８タップのＯＢＭＣを適用する（ただし、隣接ブロックには片方向予測が適用されている場合）。
・  予測対象ブロックが双方向予測である場合、ＯＢＭＣを適用しない。
【０１７８】
一方で、ＯＢＭＣ適用判定部３４ｂ２は、所定閾値の代わりに、例えば、図１６に示すようなテーブルに基づいて、ＯＢＭＣの適否について判定するように構成されていてもよい。
【０１７９】
ここで、上述の条件で分岐されるタップ数は、下位互換であり、例えば、８タップのＯＢＭＣが使用できる条件では、８タップの代わりに４タップ或いは２タップのＯＢＭＣを使用してもよい。
【０１８０】
さらに、上述のように、予測対象ブロックのサイズに基づいて、隣接ブロックのＯＢＭＣタップ数を制御することにより、サイズの小さな予測対象ブロックに対するＯＢＭＣの適用制約を緩和させてもよい。例えば、上述の例では、図１５でＯＢＭＣが非適用であったサイズの小さな予測対象ブロック（４×４）に対して、タップ数を８タップから２タップに変更することで、当該サイズの予測対象ブロックに対してもＯＢＭＣの適用を可能としている。
【０１８１】
図１６において、「２ｔａｐ」は、２タップのＯＢＭＣを適用する（ただし、隣接ブロックには片方向予測が適用されている場合）ことを示し、「４ｔａｐ」は、４タップのＯＢＭＣを適用する（ただし、隣接ブロックには片方向予測が適用されている場合）ことを示し、「８ｔａｐ」は、８タップのＯＢＭＣを適用する（ただし、隣接ブロックには片方向予測が適用されている場合）ことを示す。ただし、図１６中のタップ数は、下位互換であり、例えば、「４ｔａｐ」の場合には、２タップのＯＢＭＣを適用してもよいし、「８ｔａｐ」の場合には、２タップ又は４タップのＯＢＭＣを適用してもよい。
【０１８２】
ここで、４タップについては、例えば、色差信号向けの標準ＭＣフィルタ（４タップ）を流用してもよい。また、２タップについては、例えば、ｂｉ-ｌｉｎｅａｒフィルタを用いてもよい。なお、４タップにおいて、色差信号向けの標準ＭＣを流用すれば、ハードウェア実装時に追加のフィルタ設計が不要となるという効果が得られる。
【０１８３】
上述のように、本実施形態では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックのサイズに基づいて、ＯＢＭＣのタップ数を制御して、予測対象ブロックに対してＯＢＭＣを適用するかについて判定するように構成されている。
【０１８４】
（変更例２）
ここまでは、予測対象ブロックのサイズに応じた隣接ブロックの予測方向の種類或いはＯＢＭＣのタップ数を制御する方法について述べたが、ＯＢＭＣが適用されず且つ予測対象ブロックに対して双方向予測が適用されている場合の標準ＭＣに必要なメモリバンド幅及び演算回数よりも、ＯＢＭＣ適用時に必要なメモリバンド幅と演算回数が下回り且つ符号化性能向上幅を最大限に狙うために、予測対象ブロックのサイズに応じた隣接ブロックの予測方向の種類及びＯＢＭＣのタップ数の双方を組み合わせて、ＯＢＭＣの適用可否の条件を最大限緩和する手法が考えられる。
【０１８５】
かかる場合、閾値或いはテーブルは、上述と同じ思想で設計される。例えば、閾値については、
・  予測対象ブロックに対して片方向予測が適用されている場合で、
-（Ｓ＝４且つＬ＝４）⇒ ２タップのＯＢＭＣを適用する（ただし、隣接ブロックには片方向予測が適用されている場合）。
-（Ｓ＝４且つＬ＝８）⇒ ２タップのＯＢＭＣを適用する（ただし、隣接ブロックに双方向予測が適用されている場合も許容）。
-（Ｓ＝４且つＬ≧１６）又は（Ｓ＝８且つＬ≧８）⇒  ４タップのＯＢＭＣを適用する（ただし、隣接ブロックに双方向予測が適用されている場合も許容）。
-（Ｓ≧１６）⇒  ８タップのＯＢＭＣを適用する（ただし、隣接ブロックに双方向予測が適用されている場合も許容）。
・  予測対象ブロックが双方向予測である場合、ＯＢＭＣを適用しない。
【０１８６】
ここで、上述の条件で分岐されるＯＢＭＣのタップ数は、下位互換であり、例えば、８タップのＯＢＭＣが使用できる条件では、８タップの代わりに４タップ或いは２タップのＯＢＭＣを使用してもよい。
【０１８７】
また、上述の条件で分岐される隣接ブロックの予測方向について、双方向予測の適用が許容されている条件は、片方向予測を使用してもよい。
【０１８８】
さらに、上述のように、予測対象ブロックのサイズに基づいて、隣接ブロックのＯＢＭＣタップ数又は予測方向の種類を制御することにより、サイズの小さな予測対象ブロックに対するＯＢＭＣの適用制約を緩和させてもよい。
【０１８９】
例えば、上述の例では、図１５でＯＢＭＣが非適用であったサイズの小さな予測対象ブロック（４×４）に対して、タップ数を８タップから２タップに変更することで、当該サイズの予測対象ブロックに対してもＯＢＭＣの適用を可能としている。また、４×８又は８×４の予測対象ブロックに対しては、タップ数を８タップから２タップに変更することで、双方向予測である隣接ブロックに対してもＯＢＭＣを適用しても、ＯＢＭＣを適用せず且つ双方向予測である予測対象ブロックの標準ＭＣに対するメモリバンド幅と演算回数を超えないことから、２タップの隣接双方向予測のＯＢＭＣを可能としている。
【０１９０】
フィルタのタップ数及び予測方向の種類の組み合わせについては、上述の通り、ＯＢＭＣを適用せず且つ予測対象ブロックが双方向予測である場合の標準ＭＣに必要なメモリバンド幅及び演算回数に対して、ＯＢＭＣ適用時に必要なメモリバンド幅及び演算回数が超えないような組み合わせ条件であれば、設計者の意思で自由に設定してもよい。
【０１９１】
一方で、ＯＢＭＣ適用判定部３４ｂ２は、所定閾値の代わりに、例えば、図１７に示すようなテーブルに基づいて、ＯＢＭＣの適否について判定するように構成されていてもよい。
【０１９２】
なお、図１７のテーブルによれば、ＯＢＭＣ適用判定部３４ｂ２は、第１サイズ（例えば、４×４）の予測対象ブロックに対して適用される隣接ブロックのＯＢＭＣのタップ数（「２」）を、第１サイズよりも大きい第２サイズ（例えば、１２８×１２８）の予測対象ブロックに対して適用される隣接ブロックのＯＢＭＣのタップ数（「８」）よりも小さくするように構成されている。
【０１９３】
或いは、図１７のテーブルによれば、ＯＢＭＣ適用判定部３４ｂ２は、第１サイズ（例えば、４×４）の予測対象ブロックに対して適用される隣接ブロックの予測方向の種類（片方向）を、第１サイズよりも大きい第２サイズ（例えば、４×８または８×４）の予測対象ブロックに対して適用される隣接ブロックの予測方向の種類（双方向）よりも少なくするように構成されている。
【０１９４】
ここで、上記隣接ブロックに対するＯＢＭＣフィルタタップ数または予測方向の種類を分岐させる閾値は、図１７に示すように、複数あってもよい。
【０１９５】
（変更例３）
ここまでは、予測対象ブロックのサイズに応じた隣接ブロックの予測方向の種類或いはＯＢＭＣのタップ数を制御する方法について述べたが、ＯＢＭＣ適用時のメモリバンド幅及び演算回数を低減させる同様な手段として、予測対象ブロックのサイズに応じたＯＢＭＣ適用時の隣接ブロックの動きベクトルの精度の変更やＯＢＭＣの適用ライン数の変更が挙げられる。
【０１９６】
動きベクトルの精度の変更に関しては、例えば、予測対象ブロックのサイズが所定閾値よりも小さい場合には、動きベクトルの精度を小数から整数化し、予測対象ブロックのサイズが所定閾値よりも大きい場合には、動きベクトルの精度を小数とするように構成されていてもよい。
【０１９７】
また、予測対象ブロックのサイズが所定閾値よりも小さい場合には、ＯＢＭＣの適用ライン数を減少させ、一方で、予測対象ブロックのサイズが所定閾値よりも大きい場合には、ＯＢＭＣの適用ライン数を増大させるように構成されていてもよい。
【０１９８】
かかる場合における閾値やテーブルの設定方法については、上述の実施形態や変更例のケースと同様であるため、説明を省略する。
【０１９９】
（変更例４）
以下、図１８及び図１９を参照して、本発明の変更例４について、上述の実施形態或いは変更例との相違点に着目して説明する。図１８は、本変更例４におけるインター予測部３４のＭＣ予測部３４ｂの動作の一例を示すフローチャートである。
【０２００】
図１８に示すように、ステップＳ６０１において、ＯＢＭＣ適用判定部３４ｂ２は、隣接ブロックに片方向予測が適用されているか否かについて判定する。
【０２０１】
隣接ブロックに片方向予測が適用されていると判定された場合、本手順は、ステップＳ６０３に進み、隣接ブロックに片方向予測が適用されていないと判定された場合、本手順は、ステップＳ６０２に進む。
【０２０２】
ステップＳ６０２において、ＯＢＭＣ適用判定部３４ｂ２は、所定方法により、隣接ブロックに適用されている予測方法を双方向予測から片方向予測に変換する。
【０２０３】
ステップＳ６０３において、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックに対してＯＢＭＣを適用すると判定し、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックに対してＯＢＭＣを適用する。
【０２０４】
本変更例４によれば、隣接ブロックに対して双方向予測が適用されている場合に、所定方法により、隣接ブロックに対して適用されている予測方法を双方向予測から片方向予測に変換することで、ＯＢＭＣを適用するように構成されている。なお、かかる所定方法については後述する。
【０２０５】
かかる変更例４によれば、隣接ブロックに対して適用されている予測方法を双方向予測から片方向予測に変換することで、ＯＢＭＣが適用される予測対象ブロックの数を増やし且つＯＢＭＣに必要なメモリバンド幅及び演算回数を低減することができる。
【０２０６】
上述のように、ＯＢＭＣ適用判定部３４ｂ２は、隣接ブロックに対して双方向予測が適用されている場合に、所定方法により、前記隣接ブロックに適用されている予測方法を双方向予測から片方向予測に変換するように構成されている。
【０２０７】
以下、図１９及び図２０を参照して、隣接ブロックに対して適用されている予測方法を双方向予測から片方向予測に変換する際に用いられる所定方法について説明する。
【０２０８】
図１９において、「Ｃｐ」は、予測対象ブロックの現フレームであり、「Ｃｎ」は、隣接ブロックの現フレームであり、両者のＰＯＣ（Ｐｉｃｔｕｒｅ  Ｏｒｄｅｒ  Ｃｏｕｎｔ）は、同じ（「５」）である。
【０２０９】
また、「Ｌｐ０」及び「Ｌｐ１」は、予測対象ブロックの２つの参照フレームであり、「Ｌｎ０」及び「Ｌｎ１」は、隣接ブロックの２つの参照フレームをそれぞれ示す。
【０２１０】
なお、図２０のテーブルには、「Ｌｐ０」、「Ｌｐ１」、「Ｌｎ０」及び「Ｌｎ１」は、それぞれ１つのＰＯＣしか記載されていないが、これは、符号化データに重畳された参照画像リストと参照画像インデックスとが指し示すＰＯＣであり、「Ｌｐ０」、「Ｌｐ１」、「Ｌｎ０」及び「Ｌｎ１」のＰＯＣが、必ず１つであるとは限らない。ただし、設計者によって自由に参照フレームの枚数が設定できるが、参照画像リストと参照画像インデックスとによって一意にＰＯＣは決まる。
【０２１１】
ここで、隣接ブロックの予測方向を双方向予測から片方向予測に変換するには、隣接ブロックの参照フレームを一意に選択する必要があるが、以下では、予測対象ブロックの現フレームと予測対象ブロックの参照フレームと隣接ブロックの参照フレームとの相関に応じた手法について説明する。
【０２１２】
（方法１）
方法１では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの現フレームＣｐと隣接ブロックの２つの参照フレームＬｎ０/Ｌｎ１のそれぞれとのＰＯＣの差の絶対値を比較するように構成されている。
【０２１３】
例えば、図１９及び図２０の例のように、予測対象ブロックの現フレームＣｐのＰＯＣが「５」であり、隣接ブロックの参照フレームＬｎ０のＰＯＣが「０」であり、隣接ブロックの参照フレームＬｎ１のＰＯＣが「８」である場合、｜Ｃｐ−Ｌｎ０｜＝５、｜Ｃｐ−Ｌｎ０｜＝３となるため、ＯＢＭＣ適用判定部３４ｂ２は、隣接ブロックの参照フレームＬｎ１を選択する。
【０２１４】
かかる方法は、ＰＯＣの差の絶対値が小さい方が、予測精度が高くなりやすいという考えに基づいている。
【０２１５】
すなわち、方法１では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの現フレームＣｐと隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣ差の絶対値が小さい方を選択し、選択した隣接ブロックの参照フレームＬｎ１を用いた片方向予測が隣接ブロックに適用されていると判定するように構成されている。
【０２１６】
（方法２）
ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照フレームＬｐ０/Ｌｐ１と隣接ブロックの参照フレームＬｎ０/Ｌｎ１とのＰＯＣの差の絶対値を比較するように構成されている。
【０２１７】
例えば、図１９及び図２０の例のように、予測対象ブロックの参照フレームＬｐ０/Ｌｐ１のＰＯＣが「４」/「６」であり、隣接ブロックの参照フレームＬｎ０/Ｌｎ１のＰＯＣが「０」/「８」である場合、｜Ｌｐ０−Ｌｎ０｜＝４、｜Ｌｐ０−Ｌｎ１｜＝４、｜Ｌｐ１−Ｌｎ０｜＝６、｜Ｌｐ１−Ｌｎ１｜＝２となるため、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックが参照フレームＬｐ１を有する場合は、ＰＯＣの差の絶対値が小さい隣接ブロックの参照フレームＬｎ１を選択する。
【０２１８】
ここで、予測対象ブロックが参照フレームＬｐ０を有する場合は、ＰＯＣの差の絶対値が隣接ブロックの参照フレームＬｎ０/Ｌｎ１で等しいため、後述する選択手法で、隣接ブロックの参照フレームを一意に決定する。
【０２１９】
かかる方法は、ＰＯＣの差の絶対値が小さい方が、予測精度が高くなりやすいという考えに基づいている。
【０２２０】
すなわち、方法２では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照フレームＬｐ０/Ｌｐ１と隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣ差の絶対値が小さい方を選択し、選択した隣接ブロックの参照フレームＬｎ１を用いた片方向予測が隣接ブロックに適用されていると判定するように構成されている。
【０２２１】
（方法３）
方法３では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照フレームＬｐ０/Ｌｐ１と隣接ブロックの参照フレームＬｎ０/Ｌｎ１とのＰＯＣの差の絶対値を比較することで選択するように構成されている。
【０２２２】
例えば、図１９及び図２０の例のように、予測対象ブロックの参照フレームＬｐ０/Ｌｐ１のＰＯＣが「４」/「６」であり、隣接ブロックの参照フレームＬｎ０/Ｌｎ１のＰＯＣが「０」/「８」である場合、｜Ｌｐ０−Ｌｎ０｜＝４、｜Ｌｐ０−Ｌｎ１｜＝４、｜Ｌｐ１−Ｌｎ０｜＝６、｜Ｌｐ１−Ｌｎ１｜＝２となるため、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックが参照フレームＬｐ１を有する場合は、ＰＯＣの差の絶対値が大きい隣接ブロックの参照フレームＬｎ０を選択する。
【０２２３】
ここで、予測対象ブロックが参照フレームＬｐ０を有する場合は、ＰＯＣの差の絶対値が隣接ブロックの参照フレームＬｎ０/Ｌｎ１で等しいため、後述する選択手法で、隣接ブロックの参照フレームを一意に大きい方が、予測誤差が生じやすくなり、そのようなブロック（ブロック境界）に対してＯＢＭＣを寧ろ積極的に適用した方がよいという考えに基づいている。
【０２２４】
すなわち、方法３では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照フレームＬｐ０/Ｌｐ１と隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣ差の絶対値が大きい方を選択し、選択した隣接ブロックの参照フレームＬｎ１を用いた片方向予測が隣接ブロックに適用されていると判定するように構成されている。
【０２２５】
（方法４）
方法４では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照画像リスト及び参照画像インデックスが等しい隣接ブロックの参照フレームを選択するように構成されている。
【０２２６】
すなわち、方法４では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照フレームと等しい隣接ブロックの参照フレームを選択し、選択した隣接ブロックの参照フレームを用いた片方向予測が接ブロックに適用されていると判定するように構成されている。
【０２２７】
かかる方法は、予測対象ブロックの参照画像リスト及び参照画像インデックスが等しい方の参照フレームを隣接ブロックで選択した場合に、予測対象ブロック及び隣接ブロックの予測方向が等しくなりやすいため、予測精度を向上させられるという考えに基づいている。
【０２２８】
（方法５）
方法５では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照画像リスト及び参照画像インデックスが異なる隣接ブロックの参照フレームを選択するように構成されている。
【０２２９】
かかる方法は、予測対象ブロックの参照画像リスト及び参照画像インデックスが異なる方の参照フレームを隣接ブロックで選択した場合に、予測対象ブロック及び隣接ブロックの予測方向が異なりやすいため、その影響で生じた予測誤差が生じやすくなり、予測誤差が生じやすくなり、そのようなブロック（ブロック境界）に対してはＯＢＭＣを積極的に適用した方がよいという考えに基づいている。
【０２３０】
（方法６）
方法６では、予測対象ブロックの現フレームＣｐと隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣの差の絶対値の比較において、絶対値が等しくなった場合の選択方法について説明する。
【０２３１】
例えば、予測対象ブロックの現フレームＣｐと隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣの差の絶対値が、|Ｃｐ−Ｌｎ０|＝Ａ、|Ｃｐ−Ｌｎ１|＝Ｂで、Ａ＝Ｂとなる場合、ＯＢＭＣ適用判定部３４ｂ２は、新たに予測対象ブロックの参照フレームＬｐ０/Ｌｐ１と隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣの差の絶対値を比較することで、隣接ブロックの参照フレームを一意に選択するように構成されている。
【０２３２】
例えば、予測対象ブロックが参照フレームＬｐ０を有する場合に、|Ｌｐ０−Ｌｎ０|＝Ｃ、|Ｌｐ０−Ｌｎ１|＝Ｄで、Ｃ＜Ｄとなる場合は、ＯＢＭＣ適用判定部３４ｂ２は、絶対値が小さいＬｎ０を隣接ブロックの参照フレームとして選択するように構成されている。
【０２３３】
（方法７）
方法７では、予測対象ブロックの参照フレームＬｐ０/Ｌｐ１と隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣの差の絶対値の比較において、絶対値が等しくなった場合の選択方法について説明する。
【０２３４】
例えば、予測対象ブロックの参照現フレームＬｐ０/Ｌｐ１と隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣの差の絶対値が、|Ｌｐ０−Ｌｎ０|＝Ｘ、|Ｌｐ０−Ｌｎ１|＝Ｙで、Ｘ＝Ｙとなる場合、ＯＢＭＣ適用判定部３４ｂ２は、新たに予測対象ブロックの現フレームＣｐと隣接ブロックの参照フレームＬｎ０/Ｌｎ１との間のＰＯＣの差の絶対値を比較することで、隣接ブロックの参照フレームを一意に選択するように構成されている。
【０２３５】
例えば、|Ｃｐ−Ｌｎ０|＝Ｕ、|Ｃｐ−Ｌｎ１|＝Ｖで、Ｕ＜Ｖとなる場合は、ＯＢＭＣ適用判定部３４ｂ２は、絶対値が小さいＬｎ０を隣接ブロックの参照フレームとして選択するように構成されている。
【０２３６】
（方法８）
方法８では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照フレームと隣接ブロックの参照フレームとの間のＰＯＣの差の絶対値の比較で、絶対値が等しくなった場合に、隣接ブロックの参照フレームを予め定められたＬｎ０（或いは、Ｌｎ１）に選択するように構成されている。
【０２３７】
また、方法８では、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロックの参照フレームと隣接ブロックの参照フレームとの間のＰＯＣの差の絶対値の比較の結果に関わらず、隣接ブロックの参照フレームを予め定められたＬｎ０（或いは、Ｌｎ１）に選択するように構成されていてもよい。
【０２３８】
（変更例５）
なお、ＯＢＭＣ適用判定部３４ｂ２は、予測対象ブロック単位ではなく、非特許文献１に記載されているように、予測対象ブロックを分割した予測対象サブブロック単位で、ＯＢＭＣを適用するか否かについて判定するように構成されていてもよい。
【０２３９】
図２１及び図２２は、ＯＢＭＣを適用するか否かについての判定及びＯＢＭＣを適用する際の処理単位として、予測対象ブロックを予測対象サブブロックに分割した事例を示している。
【０２４０】
図２１の例では、符号化対象ブロックに２つの予測対象ブロック＃１/＃２（１６×３２単位）が含まれている。ここで、ＯＢＭＣ適用判定部３４ｂ２は、かかる予測対象ブロック＃１/＃２の境界を４×４単位の予測対象サブブロックに分割して、かかる予測対象サブブロックに対してＯＢＭＣを適用するか否かについて判定する。
【０２４１】
ここで、隣接ブロックが予測対象ブロックと異なる動きベクトルを持つ場合は、上述したように、ＯＢＭＣの適否が判定され、ＯＢＭＣが適用されると判定された場合は、予測対象ブロックの境界がＯＢＭＣによって平滑化され、予測誤差を低減し、結果的に、客観性能が向上する。
【０２４２】
図２２の例は、予測対象ブロックが符号化対象ブロック内で異なる動きベクトルを持つケースについて示す。
【０２４３】
予測対象ブロックが符号化対象ブロック内で異なる動きベクトルを持つ場合とは、例えば、非特許文献１で提案されているＡＴＭＶＰ（Ａｌｔｅｒｎａｔｉｖｅ  Ｔｅｍｐｏｒａｌ  Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｐｒｅｄｉｃｔｉｏｎ）モード、ＡＦＦＩＮＥモード、ＦＲＵＣ（Ｆｒａｍｅ-Ｒａｔｅ-Ｕｐ Ｃｏｎｖｅｒｓｉｏｎ）モードが適用された場合等が挙げられる。
【０２４４】
かかる場合、予測対象ブロックに対するＯＢＭＣの適用判定領域は、予測対象ブロック境界のみならず、予測対象サブブロック境界にも及ぶことになる。この場合、予測対象ブロックの境界のみに対してＯＢＭＣを適用する場合に比べて、必要なメモリバンド幅や演算負荷が増大するため、上述の通り、ＯＢＭＣの適用ライン数を減らす等の方法を取ることができる。
【０２４５】
（第６実施形態）
以下、本発明の第６実施形態について、上述の実施形態及び変更例との相違点に着目して説明する。本実施形態では、ＯＢＭＣ適用時に使用する重み係数マトリクスの重み値の決定方法について説明する。
【０２４６】
第１に、重み係数マトリクスのサイズは、予測対象ブロックに対してＯＢＭＣを適用する領域によって決定される。
【０２４７】
例えば、予測対象ブロック境界から４ライン分（４×４予測対象サブブロック単位）でＯＢＭＣが適用される場合は、重み係数マトリクスは、４ライン分（４×４）となる。
【０２４８】
第２に、予測対象ブロックの参照画素値及び隣接ブロックの参照画素値についての重み係数マトリクスの重み値は、予測対象ブロック境界からの距離の比に基づいて決定される。ＯＢＭＣが適用される場合、予測対象ブロックの参照画素値の重み値は、予測対象ブロック境界から近い順に（３/４、７/８、１５/１６、３１/３２）となり、隣接ブロックの参照画素値は、予測対象ブロック境界から近い順に（１/４、１/８、１/１６、１/３２）となる。
【０２４９】
一方で、予測サブブロックの上左或いは上下左右の境界がＯＢＭＣの対象となる場合は、隣接ブロック数に基づいて、重み係数マトリクスの重み値を変えてもよい。
【０２５０】
ただし、隣接ブロックが予測対象サブブロックと同じ動きベクトルと参照フレームをもつ場合はＯＢＭＣが適用されないため、隣接ブロック数にカウントするのは、予測対象サブブロックとは異なる動きベクトル又は参照フレームを持つ隣接ブロックに限定する。  
【０２５１】
例えば、予測対象サブブロックが上左に対してＯＢＭＣの対象となる隣接ブロックを持つ場合、予測対象ブロックの参照画素値の重み値は、予測対象ブロック境界から近い順に（２/４、６/８、１４/１６、３０/３２）となり、上隣接ブロックの参照画素値の重み値は、予測対象ブロック境界から近い順に（１/４、１/８、１/１６、１/３２）となり、左隣接ブロックの参照画素値の重み値は、予測対象ブロック境界から近い順に（１/４、１/８、１/１６、１/３２）となる。
【０２５２】
これは、上隣接ブロックと左隣接ブロックをそれぞれ別々に予測対象ブロックに対して重み値（１/４、１/８、１/１６、１/３２）として加重平均すると、処理の順番によって掛かる重み値が変わってしまうため、処理順によらず、重み値を一定とするためである。
【０２５３】
また、以下、かかる重み値を予測対象ブロックと隣接ブロックのサイズに基づいて決定する方法について説明する。
【０２５４】
重みマトリクスの重み値は、非特許文献１に記載の従来手法では、予測対象ブロック境界からの距離に基づいて重み付けするとされているが、予測対象ブロックのサイズが大きい場合は、平坦な画像である可能性が高いため、ＯＢＭＣで加重平均する際の予測対象ブロックと隣接ブロックの参照画素値との重み付け比は小さいほうが良いと考えられる。
【０２５５】
一方で、予測対象ブロックのサイズが小さい場合は、複雑な模様やエッジを含む画像である可能性が高いため、予測対象ブロックと隣接ブロックとの重み付け比を大きくしてエッジを保存するようにしたほうが良いと考えられる。
【０２５６】
本実施形態では、ＯＢＭＣ適用部３４ｂ３は、隣接ブロックの数又は予測対象ブロックのサイズに基づいて、ＯＢＭＣにおける加重平均で用いる重み係数マトリクスの重み値を変更するように構成されている。
【０２５７】
（第７実施形態）
以下、図２３を参照して、本発明の第７実施形態について、上述の実施形態及び変更例との相違点に着目して説明する。本実施形態では、ＯＢＭＣ適用時にデブロッキングフィルタの適用条件を修正するＭＣ予測部３４ｂについて説明する。
【０２５８】
非特許文献２で採用されているデブロッキングフィルタは、ブロック境界の平滑化効果があることが知られているが、その適用判定の１に、境界強度（ＢＳ値：Ｂｏｕｎｄａｒｙ  Ｓｔｒｅｎｇｔｈ値）が用いられる。
【０２５９】
例えば、ＨＥＶＣでは、図２３に示すように、ＢＳ値は、ブロック境界を挟む２つのブロックの条件ごとに規定されており、ＢＳ値が「０」の場合は、デブロッキングフィルタがブロック境界に適用されず、ＢＳ値が「１」以上のときにブロック境界に対してデブロッキングフィルタが適用されることが知られている。
【０２６０】
ここで、ＯＢＭＣは、上述の通り、予測対象ブロック及び隣接ブロックが異なる動きベクトルを持つ場合に、それぞれの動きベクトルが参照フレーム内で指す参照画素値を加重平均することで、ブロック境界を平滑化するように構成されている。
【０２６１】
そのため、ＯＢＭＣが適用された上で、デブロッキングフィルタを適用すると、ブロック境界が二重で平滑化されることとなるため、意図せず境界付近が平坦になりすぎてしまう可能性がある。
【０２６２】
したがって、ＯＢＭＣが適用された場合に、デブロッキングフィルタによる意図しない二重の平滑化を防ぐため、デブロッキングフィルタの適否を判定するために、図２３に示すように、ＢＳ値を修正する。
【０２６３】
図２３では、ＯＢＭＣが適用される場合において、条件３及び条件４におけるＢＳ値を修正した。
【０２６４】
条件３及び条件４は、ブロック境界に生じるブロック歪の発生起因を、２つのブロックの動きベクトルが異なること、２つのブロックの動き補償の参照画像が異なること、２つのブロックの動きベクトルの数が異なることとしている。
【０２６５】
そのため、本実施形態は、ブロック境界を挟む２つのブロックが異なる動きベクトルを持つ場合に、基本的に適用されるＯＢＭＣが、ブロック境界に対して既に適用されている場合、条件３及び条件４についてはＢＳ値を「０」として、デブロッキングフィルタによる二重の平滑化を禁止してもよいという考えに基づいている。
【０２６６】
すなわち、本実施形態では、ＯＢＭＣ適用部３４ｂ３は、ＯＢＭＣが適用されるか否かに基づいて、デブロッキングフィルタの適用条件を変更するように構成されている。
【０２６７】
（第８実施形態）
以下、本発明の第８実施形態について、上述の実施形態及び変更例との相違点に着目して説明する。本実施形態では、ＯＢＭＣ適用時のメモリバンド幅や演算回数の削減方法として、予測対象ブロックの隣接ブロックが有する動きベクトルが異なる場合、所定の削減手法によりＯＢＭＣに必要な動きベクトル及び参照フレームの数を削減するように構成されているＭＣ予測部３４ｂについて説明する。
【０２６８】
予測対象ブロックの隣接ブロックが異なる動きベクトルを有する場合、予測対象ブロックのＯＢＭＣ適用に必要なメモリバンド幅や演算回数は、隣接ブロックの数だけ増大する。
【０２６９】
そのため、隣接ブロックが異なる動きクトルを有する場合に、ＯＢＭＣ適用に必要な動きベクトル及び参照フレームの数を削として、例えば、以下のような手法が考えられる。
・  異なる動きベクトルを有する隣接ブロックについて所定のブロックサイズにマージする（例えば、４×４の隣接ブロックについては４×８の隣接ブロック又は８×４の隣接ブロックにマージする）方法。
・  異なる動きベクトルを有する隣接ブロックが並ぶ場合、ＯＢＭＣ適用時に用いる隣接ブロックを間引く（例えば、１６×１６の予測対象ブロックの上部に対して、４×４の隣接ブロックが４つ並ぶ場合、ＯＢＭＣ適用時に用いる隣接ブロックとして左端及び左端から数えて３番目の２つを用いる、或いは、左端及び右端の隣接ブロックを用いる等）手法。
【０２７０】
また、上述した隣接ブロックのマージ方法や間引き方法は、閾値を用いて決定されてもよい。
【０２７１】
例えば、異なる動きベクトルを有する隣接ブロックの動きベクトルの差が１画素未満の場合は、同じ動きベクトルを持つ隣接ブロックとして扱う。
【０２７２】
また、かかる動きベクトルの差の閾値は、隣接ブロックに対して片方向予測又は双方向予測が適用されているかに基づいて変更されてもよい。例えば、片方向予測が適用されている場合は、１.５画素未満、双方向予測が適用されている場合は、１画素未満等）。
【０２７３】
すなわち、本実施形態において、ＯＢＭＣ適用部３４ｂ３は、予測対象ブロックの動きベクトル及び隣接ブロックの動きベクトルが異なる場合、所定の削減手法によりＯＢＭＣに必要な動きベクトル及び参照フレームの数を削減するように構成されている。
【０２７４】
また、上述の画像符号化装置１０及び画像復号装置３０は、コンピュータに各機能（各工程）を実行させるプログラムであって実現されていてもよい。
【０２７５】
なお、上記の各実施形態では、本発明を画像符号化装置１０及び画像復号装置３０への適用を例にして説明したが、本発明は、これのみに限定されるものではなく、画像符号化装置１０及び画像復号装置３０の各機能を備えた符号化/復号システムにも同様に適用できる。
【符号の説明】
【０２７６】
１…画像処理システム
１０…画像符号化装置
１１、３４…インター予測部
１１ａ…動き探索部
１１ａ１、３４ｂ…動き補償（ＭＣ）予測部
１１ａ２…コスト算出部
１１ｂ…マージ部
１１ｃ…ＭＣ予測部
１１ｃ１、３４ｂ１…標準動き補償予測部（標準ＭＣ予測部）
１１ｃ２、３４ｂ２…ＯＢＭＣ適用判定部
１１ｃ３、３４ｂ３…ＯＢＭＣ適用部
１２、３５…イントラ予測部
１３…減算器
１４、３３…加算器
１５…変換・量子化部
１６、３２…逆変換・逆量子化部
１７…符号化部
１８、３６…インループフィルタ
１９、３７…フレームバッファ
３０…画像復号装置
３１…復号部
３４ａ…動きベクトル復号部
【図１】
2020108055.tif 000003
【図２】
2020108055.tif 000004
【図３】
2020108055.tif 000005
【図４】
2020108055.tif 000006
【図５】
2020108055.tif 000007
【図６】
2020108055.tif 000008
【図７】
2020108055.tif 000009
【図８】
2020108055.tif 000010
【図９】
2020108055.tif 000011
【図１０】
2020108055.tif 000012
【図１１】
2020108055.tif 000013
【図１２】
2020108055.tif 000014
【図１３】
2020108055.tif 000015
【図１４】
2020108055.tif 000016
【図１５】
2020108055.tif 000017
【図１６】
2020108055.tif 000018
【図１７】
2020108055.tif 000019
【図１８】
2020108055.tif 000020
【図１９】
2020108055.tif 000021
【図２０】
2020108055.tif 000022
【図２１】
2020108055.tif 000023
【図２２】
2020108055.tif 000024
【図２３】
2020108055.tif 000025