(57)【要約】【課題】  非イントラスライスに含まれるブロックを符号化する場合には、インター予測符号化モード、イントラ予測符号化モード、及びイントラブロックコピーイング予測符号化モードのうちのいずれかの予測符号化モードを選択するための処理負荷が大きい。【解決手段】  予測符号化手段を決定する決定手段は、スライスタイプがイントラスライスの場合に第１の予測符号化手段、第２の予測符号化手段、又は第３の予測符号化手段のいずれか一つを決定し、スライスタイプが非イントラスライスの場合に前記第１の予測符号化手段以外の予測符号化手段を用いる。【選択図】  図１
2016001859.tif 000002
【特許請求の範囲】
【請求項１】
動画像を構成する符号化対象の第１の画像を取得する第１の取得手段と、
前記動画像を構成する画像であって、前記第１の画像を符号化する前に符号化された少なくとも１つの第２の画像を取得する第２の取得手段と、
前記第１の画像を、それぞれ複数の画素を含む複数のブロックに分割する分割手段と、
前記分割された複数のブロックを含むスライスを設定し、符号化対象のブロックを含むスライスのスライスタイプを設定する設定手段と、
前記第１の画像の内の符号化済みである部分に対応する第３の画像に含まれる第１の予測ブロックを決定し、当該第１の予測ブロックと前記符号化対象のブロックとの差分に対応する第１のベクトルと第１の予測誤差とを特定して符号化する第１の予測符号化手段と、
前記第２の画像に含まれる第２の予測ブロックを決定し、当該第２の予測ブロックと前記符号化対象のブロックとの差分に対応する第２のベクトルと第２の予測誤差を特定して符号化する第２の予測符号化手段と、
前記第３の画像の内の前記符号化対象のブロックの周辺の画素を参照してイントラ予測によって第３の予測誤差を特定して符号化する第３の予測符号化手段と、
前記スライスタイプに基づいて、前記第１の予測符号化手段、前記第２の予測符号化手段又は前記第３の予測符号化手段の少なくともいずれかを選択候補として、前記符号化対象のブロックを符号化する場合に用いる予測符号化手段を決定する決定手段とを有し、
前記決定手段は、前記スライスタイプとして第１のスライスタイプが設定された場合に前記第１の予測符号化手段、前記第２の予測符号化手段及び前記第３の予測符号化手段を選択候補とし、前記スライスタイプとして前記第１のスライスタイプとは異なる第２のスライスタイプが設定された場合に前記第１の予測符号化手段を選択候補から外すことを特徴とする画像符号化装置。
【請求項２】
動画像を構成する符号化対象の第１の画像を取得する第１の取得手段と、
前記動画像を構成する画像であって、前記第１の画像を符号化する前に符号化された少なくとも１つの第２の画像を取得する第２の取得手段と、
前記第１の画像を、それぞれ複数の画素を含む複数のブロックに分割する分割手段と、
前記分割された複数のブロックを含むスライスであって符号化対象のブロックを含むスライスに対応する、スライスタイプを設定する設定手段と、
前記第１の画像の内の符号化済みである部分に対応する第３の画像に含まれる第１の予測ブロックを決定し、当該第１の予測ブロックと前記符号化対象のブロックとの差分に対応する第１のベクトルと第１の予測誤差とを特定して符号化する第１の予測符号化手段と、
前記第２の画像に含まれる第２の予測ブロックを決定し、当該第２の予測ブロックと前記符号化対象のブロックとの差分に対応する第２のベクトルと第２の予測誤差を特定して符号化する第２の予測符号化手段と、
前記第３の画像の内の前記符号化対象のブロックの周辺の画素を参照してイントラ予測によって第３の予測誤差を特定して符号化する第３の予測符号化手段と、
前記スライスタイプに基づいて、前記符号化対象のブロックを符号化する場合に用いる予測符号化手段として、前記第１の予測符号化手段、前記第２の予測符号化手段又は前記第３の予測符号化手段の少なくともいずれかを決定する決定手段とを有し、
前記決定手段は、前記スライスタイプとして第１のスライスタイプが設定された場合に前記第１の予測符号化手段、前記第２の予測符号化手段又は前記第３の予測符号化手段のいずれか一つを選択し、前記スライスタイプとして前記第１のスライスタイプとは異なる第２のスライスタイプが設定された場合に前記第２の予測符号化手段又は前記第３の予測符号化手段のいずれか一つを選択することを特徴とする画像符号化装置。
【請求項３】
前記第１のスライスタイプがイントラ符号化を行うＩ＿ｓｌｉｃｅであり、前記第２のスライスタイプが動き補償を用いた符号化とイントラ符号化を行うＰ＿ｓｌｉｃｅ又はＢ＿ｓｌｉｃｅであることを特徴とする請求項１又は請求項２に記載の画像符号化装置。
【請求項４】
さらに、
前記スライスタイプ及び前記予測符号化手段を示す情報を含むヘッダの情報を符号化するヘッダ符号化手段と、
前記決定手段による決定に従って前記第１の予測符号化手段、前記第２の予測符号化手段、又は前記第３の予測符号化手段のいずれかで符号化された符号化データ及び前記ヘッダ符号化手段で符号化された符号化データを統合する統合手段と
を備えることを特徴とする請求項１乃至請求項３のいずれか一項に記載の画像符号化装置。
【請求項５】
前記第１の予測符号化手段はイントラブロックコピーイングを行うことにより前記第１のベクトル及び前記第１の予測誤差の符号化データを特定し、前記ヘッダ符号化手段は、前記スライスタイプに基づいて、前記イントラブロックコピーイングの実行の要否を特定するためのイントラブロックコピーフラグの符号を生成することを特徴とする請求項４に記載の画像符号化装置。
【請求項６】
動画像を構成するブロック単位で符号化された画像を復号する画像復号装置であって、
前記動画像を構成する画像の復号対象のブロックを含むスライスのスライスタイプを示す情報を取得する取得手段と、
前記復号対象のブロックを含む第１の画像と当該第１の画像の復号済み画像である第２の画像との差分に対応する第１のベクトルに基づいて、前記第２の画像を参照して前記復号対象のブロックの第１の予測ブロックを特定する第１の予測手段と、
前記第１の画像と前記動画像を構成する少なくとも１つの復号済みの第３の画像との差分に対応する第２のベクトルに基づいて、前記第３の画像を参照して前記復号対象のブロックの第２の予測ブロックを特定する第２の予測手段と、
イントラ予測モードに基づいて、前記第２の画像を参照して前記復号対象のブロックの第３の予測ブロックを特定するイントラ予測手段と、
前記取得手段で取得した情報が第１のスライスタイプを表す場合に第１の予測手段、前記第２の予測手段及び前記第３の予測手段を前記復号対象のブロックの復号の際に用いる予測手段の選択候補とするよう決定し、前記取得手段で取得した情報が前記第１のスライスタイプとは異なる第２のスライスタイプを表す場合に前記第１の予測手段を前記復号対象のブロックの復号の際に用いる予測手段の選択候補から外すよう決定する決定手段とを有することを特徴とする画像復号装置。
【請求項７】
動画像を構成するブロック単位で符号化された画像を復号する画像復号装置であって、
前記動画像を構成する画像の復号対象のブロックを含むスライスに対応するスライスタイプを示す情報を取得する取得手段と、
前記復号対象のブロックを含む第１の画像と当該第１の画像の復号済み画像である第２の画像との差分に対応する第１のベクトルに基づいて、前記第２の画像を参照して前記復号対象のブロックの第１の予測ブロックを特定する第１の予測手段と、
前記第１の画像と前記動画像を構成する少なくとも１つの復号済みの第３の画像との差分に対応する第２のベクトルに基づいて、前記第３の画像を参照して前記復号対象のブロックの第２の予測ブロックを特定する第２の予測手段と、
イントラ予測モードに基づいて、前記第２の画像を参照して前記復号対象のブロックの第３の予測ブロックを特定するイントラ予測手段と、
前記取得手段で取得した情報が第１のスライスタイプを表す場合に第１の予測手段、前記第２の予測手段又は前記第３の予測手段のいずれか一つを、前記復号対象のブロックの復号の際に用いる予測手段として決定し、前記取得手段で取得した情報が前記第１のスライスタイプとは異なる第２のスライスタイプを表す場合に前記第２の予測符号化手段又は前記第３の予測符号化手段のいずれか一つを、前記復号対象のブロックの復号の際に用いる予測手段として決定する決定手段と
を有することを特徴とする画像復号装置。
【請求項８】
前記第１のスライスタイプがイントラ符号化が行われたＩ＿ｓｌｉｃｅであり、前記第２のスライスタイプが動き補償を用いた符号化とイントラ符号化が行われたＰ＿ｓｌｉｃｅ又はＢ＿ｓｌｉｃｅあることを特徴とする請求項６又は請求項７に記載の画像復号装置。
【請求項９】
さらに、
前記決定手段により決定された予測手段により特定された予測ブロックの予測誤差の符号データを復号して予測誤差を取得する復号手段と、
前記予測誤差と前記決定手段により決定された予測手段とから前記第１の画像の復号画像を生成する再構成手段を備えることを特徴とする請求項６乃至請求項８のいずれか一項に記載の画像復号装置。
【請求項１０】
前記第１の予測手段はイントラブロックコピーイングを行うことにより前記第１のベクトルを特定し、前記決定手段は、前記スライスタイプに応じて、前記イントラブロックコピーイングの実行の要否を特定するためのイントラブロックコピーフラグの符号を取得することを特徴とする請求項９に記載の画像復号装置。
【請求項１１】
動画像を構成する符号化対象の第１の画像を取得する第１の取得工程と、
前記動画像を構成する画像であって、前記第１の画像を符号化する前に符号化された少なくとも１つの第２の画像を取得する第２の取得工程と、
前記第１の画像を、それぞれ複数の画素を含む複数のブロックに分割する分割工程と、
前記分割された複数のブロックを含むスライスを設定し、符号化対象のブロックを含むスライスのスライスタイプを設定する設定工程と、
前記第１の画像の内の符号化済みである部分に対応する第３の画像に含まれる第１の予測ブロックを決定し、当該第１の予測ブロックと前記符号化対象のブロックとの差分に対応する第１のベクトルと第１の予測誤差とを特定して符号化する第１の予測符号化工程と、
前記第２の画像に含まれる第２の予測ブロックを決定し、当該第２の予測ブロックと前記符号化対象のブロックとの差分に対応する第２のベクトルと第２の予測誤差を特定して符号化する第２の予測符号化工程と、
前記第３の画像の内の前記符号化対象のブロックの周辺の画素を参照してイントラ予測によって第３の予測誤差を特定して符号化する第３の予測符号化工程と、
前記スライスタイプに基づいて、前記第１の予測符号化工程、前記第２の予測符号化工程又は前記第３の予測符号化工程の少なくともいずれかを選択候補として、前記符号化対象のブロックを符号化する場合に用いる予測符号化工程を決定する決定工程とを有し、
前記決定工程は、前記スライスタイプとして第１のスライスタイプが設定された場合に前記第１の予測符号化工程、前記第２の予測符号化工程及び前記第３の予測符号化工程を選択候補とし、前記スライスタイプとして前記第１のスライスタイプとは異なる第２のスライスタイプが設定された場合に前記第１の予測符号化工程を選択候補から外すことを特徴とする画像符号化方法。
【請求項１２】
動画像を構成する符号化対象の第１の画像を取得する第１の取得工程と、
前記動画像を構成する画像であって、前記第１の画像を符号化する前に符号化された少なくとも１つの第２の画像を取得する第２の取得工程と、
前記第１の画像を、それぞれ複数の画素を含む複数のブロックに分割する分割工程と、
前記分割された複数のブロックを含むスライスであって符号化対象のブロックを含むスライスに対応する、スライスタイプを設定する設定工程と、
前記第１の画像の内の符号化済みである部分に対応する第３の画像に含まれる第１の予測ブロックを決定し、当該第１の予測ブロックと前記符号化対象のブロックとの差分に対応する第１のベクトルと第１の予測誤差とを特定して符号化する第１の予測符号化工程と、
前記第２の画像に含まれる第２の予測ブロックを決定し、当該第２の予測ブロックと前記符号化対象のブロックとの差分に対応する第２のベクトルと第２の予測誤差を特定して符号化する第２の予測符号化工程と、
前記第３の画像の内の前記符号化対象のブロックの周辺の画素を参照してイントラ予測によって第３の予測誤差を特定して符号化する第３の予測符号化工程と、
前記スライスタイプに基づいて、前記符号化対象のブロックを符号化する場合に用いる予測符号化工程として、前記第１の予測符号化工程、前記第２の予測符号化工程又は前記第３の予測符号化工程の少なくともいずれかを決定する決定工程とを有し、
前記決定工程は、前記スライスタイプとして第１のスライスタイプが設定された場合に前記第１の予測符号化工程、前記第２の予測符号化工程又は前記第３の予測符号化工程のいずれか一つを選択し、前記スライスタイプとして前記第１のスライスタイプとは異なる第２のスライスタイプが設定された場合に前記第２の予測符号化工程又は前記第３の予測符号化工程のいずれか一つを選択することを特徴とする画像符号化方法。
【請求項１３】
前記第１のスライスタイプがイントラ符号化を行うＩ＿ｓｌｉｃｅであり、前記第２のスライスタイプが動き補償を用いた符号化とイントラ符号化を行うＰ＿ｓｌｉｃｅ又はＢ＿ｓｌｉｃｅであることを特徴とする請求項１１又は請求項１２に記載の画像符号化方法。
【請求項１４】
さらに、
前記スライスタイプ及び前記予測符号化手段を示す情報を含むヘッダの情報を符号化するヘッダ符号化工程と、
前記決定手段による決定に従って前記第１の予測符号化工程、前記第２の予測符号化工程、又は前記第３の予測符号化工程のいずれかで符号化された符号化データ及び前記ヘッダ符号化手段で符号化された符号化データを統合する統合工程と
を備えることを特徴とする請求項１１乃至請求項１３のいずれか一項に記載の画像符号化方法。
【請求項１５】
前記第１の予測符号化手段はイントラブロックコピーイングを行うことにより前記第１のベクトル及び前記第１の予測誤差の符号化データを特定し、前記ヘッダ符号化工程は、前記スライスタイプに基づいて、前記イントラブロックコピーイングの実行の要否を特定するためのイントラブロックコピーフラグを生成することを特徴とする請求項１４に記載の画像符号化方法。
【請求項１６】
動画像を構成するブロック単位で符号化された画像を復号する画像復号方法であって、
前記動画像を構成する画像の復号対象のブロックを含むスライスのスライスタイプを示す情報を取得する取得工程と、
前記復号対象のブロックを含む第１の画像と当該第１の画像の復号済み画像である第２の画像との差分に対応する第１のベクトルに基づいて、前記第２の画像を参照して前記復号対象のブロックの第１の予測ブロックを特定する第１の予測工程と、
前記第１の画像と前記動画像を構成する少なくとも１つの復号済みの第３の画像との差分に対応する第２のベクトルに基づいて、前記第３の画像を参照して前記復号対象のブロックの第２の予測ブロックを特定する第２の予測工程と、
イントラ予測モードに基づいて、前記第２の画像を参照して前記復号対象のブロックの第３の予測ブロックを特定するイントラ予測工程と、
前記取得工程で取得した情報が第１のスライスタイプを表す場合に第１の予測工程、前記第２の予測工程及び前記第３の予測工程を前記復号対象のブロックの復号の際に用いる予測工程の選択候補とするよう決定し、前記取得工程で取得した情報が前記第１のスライスタイプとは異なる第２のスライスタイプを表す場合に前記第１の予測工程を前記復号対象のブロックの復号の際に用いる予測工程の選択候補から外すよう決定する決定工程とを有することを特徴とする画像復号方法。
【請求項１７】
動画像を構成するブロック単位で符号化された画像を復号する画像復号方法であって、
前記動画像を構成する画像の復号対象のブロックを含むスライスに対応するスライスタイプを示す情報を取得する取得工程と、
前記復号対象のブロックを含む第１の画像と当該第１の画像の復号済み画像である第２の画像との差分に対応する第１のベクトルに基づいて、前記第２の画像を参照して前記復号対象のブロックの第１の予測ブロックを特定する第１の予測工程と、
前記第１の画像と前記動画像を構成する少なくとも１つの復号済みの第３の画像との差分に対応する第２のベクトルに基づいて、前記第３の画像を参照して前記復号対象のブロックの第２の予測ブロックを特定する第２の予測工程と、
イントラ予測モードに基づいて、前記第２の画像を参照して前記復号対象のブロックの第３の予測ブロックを特定するイントラ予測工程と、
前記取得工程で取得した情報が第１のスライスタイプを表す場合に第１の予測工程、前記第２の予測工程又は前記第３の予測工程のいずれか一つを、前記復号対象のブロックの復号の際に用いる予測工程として決定し、前記取得工程で取得した情報が前記第１のスライスタイプとは異なる第２のスライスタイプを表す場合に前記第２の予測符号化工程又は前記第３の予測符号化工程のいずれか一つを、前記復号対象のブロックの復号の際に用いる予測工程として決定する決定工程と
を有することを特徴とする画像復号方法。
【請求項１８】
前記第１のスライスタイプがイントラ符号化を行ったＩ＿ｓｌｉｃｅであり、前記第２のスライスタイプが動き補償を用いた符号化とイントラ符号化を行ったＰ＿ｓｌｉｃｅ又はＢ＿ｓｌｉｃｅであることを特徴とする請求項１６又は請求項１７に記載の画像復号方法。
【請求項１９】
さらに、
前記決定工程により決定された予測工程により特定された予測ブロックの予測誤差の符号データを復号して予測誤差を取得する復号工程と、
前記予測誤差と前記決定工程により決定された予測工程とから前記第１の画像の復号画像を生成する再構成工程を備えることを特徴とする請求項１３に記載の画像復号方法。
【請求項２０】
前記第１の予測工程はイントラブロックコピーイングを行うことにより前記第１のベクトルを特定し、前記決定工程は、前記スライスタイプに応じて、前記イントラブロックコピーイングの実行の要否を特定するためのイントラブロックコピーフラグの符号を取得することを特徴とする請求項１５に記載の画像復号方法。
【請求項２１】
コンピュータを、請求項１乃至請求項５のいずれか一項に記載の画像符号化装置の各手段として機能させるためのプログラム。
【請求項２２】
コンピュータを、請求項６乃至請求項１０のいずれか一項に記載の画像復号装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像の符号化技術及び復号技術に関する。特に動画像において、画像を複数のブロックに分割し、ブロックごとに符号化及び復号を行う技術に関する。
【背景技術】
【０００２】
近年、動画像の圧縮記録の符号化方式であるＨ．２６４／ＭＰＥＧ−４  ＡＶＣ（以下Ｈ．２６４）の後継として、さらに高効率な符号化方式の国際標準化を行う活動が開始された。この活動は、ＩＳＯ／ＩＥＣとＩＴＵ−Ｔの間で設立されたＪＣＴ−ＶＣ（Ｊｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）によって開始された。そして、ＪＣＴ−ＶＣでは、Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（以下、ＨＥＶＣ）の標準化が進められている。ＨＥＶＣは、ＩＴＵ−Ｔでは２０１３年４月にＨ．２６５符号化方式としてとして承認された。ＨＥＶＣの標準化にあたっては、引き続き、階層符号化、レンジ拡張、スクリーンコンテント符号化といった機能の追加を検討している。
【０００３】
ＨＥＶＣにおいては符号化効率を向上させるために、インター予測（画面間予測、動き補償予測）を行うインター予測符号化モードと、イントラ予測（画面内予測）を行うイントラ予測符号化モードとが採用されている。インター予測符号化モードは、符号化対象のピクチャの他のピクチャを参照して動きベクトルを求め、動きベクトルの指し示すブロックである予測ブロックと符号化対象のブロックとの予測誤差を求め、求めた予測誤差と動きベクトルとを符号化するものである。尚、ここでは動画像の１フレーム分の画像をピクチャと称す。また、イントラ予測符号化モードは、符号化対象のピクチャ内の符号化対象のブロックの周辺の復号済みの画素と符号化対象のブロックとの相関関係を利用して予測を行うことにより予測残差を生成し、生成した予測残差を符号化するものである。
【０００４】
これに加えて、ＨＥＶＣレンジ拡張機能の検討では、符号化対象のピクチャ内の符号化済みのデータから符号化対象のブロックに類似したブロックを予測に用いる方式が提案されている。この方式はイントラブロックコピーイング（ｉｎｔｒａ  ｂｌｏｃｋ  ｃｏｐｙｉｎｇ）予測符号化モード（以下、ＩＢＣ予測符号化モード）と呼ばれている。ＩＢＣ予測符号化モードは、カメラ等で撮影された自然画像以外の画像、符号化対象のピクチャ内の、符号化対象のブロックと同じ値のブロックをコピーすることで符号化効率を向上させようとしたものである（非特許文献１）。ここで、自然画像以外の画像とは、例えばアニメーションやコンピュータの画面のような人工の画像等が挙げられる。ＩＢＣ予測符号化モードでは、符号化対象のピクチャ内の符号化済みの画像を再生した画像を参照してコピーベクトルを求める。そして求めたコピーベクトルの指し示すブロックを予測ブロックとし、符号化対象のブロックと予測ブロックとの予測誤差を求め、求めたコピーベクトルと予測誤差とを符号化するものである。ここでは、インター予測符号化モードで生成される動きベクトルと区別するために、ＩＢＣ予測符号化モードで生成されるベクトルをコピーベクトルと称す。
【０００５】
非特許文献１において、ＩＢＣ予測符号化モードは符号化対象のブロックがイントラ符号化モードであれば使用することができる。図２（ａ）に各予測符号化モードの選択の様子を示す。図２（ａ）に示すように、スライスとしてイントラスライス（スライスタイプがＩ＿ｓｌｉｃｅ）か、非イントラスライス（スライスタイプがＰ＿ｓｌｉｃｅ又はＢ＿ｓｌｉｃｅ）を選択できる。ここで、スライスとは動画像の１ピクチャを分割した単位である。
【０００６】
そして、符号化対象のブロックを含むスライスがイントラスライスの場合、符号化対象のブロックを符号化するために用いられるブロック符号化モードは、符号化対象のピクチャ内の画素を用いて符号化するイントラ符号化モードとなる。さらに、ブロック符号化モードがイントラ符号化モードの場合、イントラブロックコピーイングが可能かどうかに基づいて、次のように予測符号化モードを決定する。即ち、ブロック符号化モードがイントラ符号化モードの場合、符号化対象のブロックの周辺の復号済みの画素を用いて予測するイントラ予測符号化モードか、イントラブロックコピーイングを用いるＩＢＣ予測符号化モードのいずれかを選択できる。
【０００７】
一方、スライスが非イントラスライスの場合、符号化対象のブロックのブロック符号化モードは、上述したイントラ符号化モードか、符号化対象のピクチャの他のピクチャの画素を用いて符号化するインター符号化モードのいずれかを選択する。ブロック符号化モードがイントラ符号化モードの場合、周辺の復号済みの画素からブロックを予測するイントラ予測符号化モードか、ピクチャ内の符号化済みのデータから類似したブロックを予測に用いるＩＢＣ予測符号化モードのいずれかを選択できる。また、ブロック符号化モードがインター符号化モードの場合、インター予測符号化モードとなる。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】ＪＣＴ−ＶＣ  寄書  ＪＣＴＶＣ−Ｐ１００５−ｖ４  インターネット＜  ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｎｔ−ｅｖｒｙ．ｆｒ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／１６＿Ｓａｎ％２０Ｊｏｓｅ／ｗｇ１１／  ＞
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述したように、非イントラスライスに含まれるブロックを符号化する場合には、インター予測符号化モード、イントラ予測符号化モード、及びＩＢＣ予測符号化モードのうちのいずれかの予測符号化モードを選択する必要がある。
【００１０】
そして、予測符号化モードを選択するために、各予測符号化モードに対応する予測誤差、インター予測符号化モードに係る動きベクトルの探索、ＩＢＣ予測符号化モードに係るコピーベクトルの探索をする必要がある。そして、特に動きベクトルの探索やコピーベクトルの探索には非常に大規模な演算処理が必要であり、非イントラスライスにおいて両方のベクトルの探索を行うことは負荷が大きい。
【課題を解決するための手段】
【００１１】
上述の課題を解決するため、本発明の画像符号化装置は、以下の構成を有する。即ち、動画像を構成する符号化対象の第１の画像を取得する第１の取得手段と、前記動画像を構成する画像であって、前記第１の画像を符号化する前に符号化された少なくとも１つの第２の画像を取得する第２の取得手段と、前記第１の画像を、それぞれ複数の画素を含む複数のブロックに分割する分割手段と、前記分割された複数のブロックを含むスライスを設定し、符号化対象のブロックを含むスライスのスライスタイプを設定する設定手段と、前記第１の画像の内の符号化済みである部分に対応する第３の画像に含まれる第１の予測ブロックを決定し、当該第１の予測ブロックと前記符号化対象のブロックとの差分に対応する第１のベクトルと第１の予測誤差とを特定して符号化する第１の予測符号化手段と、前記第２の画像に含まれる第２の予測ブロックを決定し、当該第２の予測ブロックと前記符号化対象のブロックとの差分に対応する第２のベクトルと第２の予測誤差を特定して符号化する第２の予測符号化手段と、前記第３の画像の内の前記符号化対象のブロックの周辺の画素を参照してイントラ予測によって第３の予測誤差を特定して符号化する第３の予測符号化手段と、前記スライスタイプに基づいて、前記第１の予測符号化手段、前記第２の予測符号化手段又は前記第３の予測符号化手段の少なくともいずれかを選択候補として、前記符号化対象のブロックを符号化する場合に用いる予測符号化手段を決定する決定手段とを有し、前記決定手段は、前記スライスタイプとして第１のスライスタイプが設定された場合に前記第１の予測符号化手段、前記第２の予測符号化手段及び前記第３の予測符号化手段を選択候補とし、前記スライスタイプとして前記第１のスライスタイプとは異なる第２のスライスタイプが設定された場合に前記第１の予測符号化手段を選択候補から外すことを特徴とする画像符号化装置。
【００１２】
また、本発明の画像復号装置は、以下の構成を有する。即ち、動画像を構成するブロック単位で符号化された画像を復号する画像復号装置であって、前記動画像を構成する画像の復号対象のブロックを含むスライスのスライスタイプを示す情報を取得する取得手段と、前記復号対象のブロックを含む第１の画像と当該第１の画像の復号済み画像である第２の画像との差分に対応する第１のベクトルに基づいて、前記第２の画像を参照して前記復号対象のブロックの第１の予測ブロックを特定する第１の予測手段と、前記第１の画像と前記動画像を構成する少なくとも１つの復号済みの第３の画像との差分に対応する第２のベクトルに基づいて、前記第３の画像を参照して前記復号対象のブロックの第２の予測ブロックを特定する第２の予測手段と、イントラ予測モードに基づいて、前記第２の画像を参照して前記復号対象のブロックの第３の予測ブロックを特定するイントラ予測手段と、前記取得手段で取得した情報が第１のスライスタイプを表す場合に第１の予測手段、前記第２の予測手段及び前記第３の予測手段を前記復号対象のブロックの復号の際に用いる予測手段の選択候補とするよう決定し、前記取得手段で取得した情報が前記第１のスライスタイプとは異なる第２のスライスタイプを表す場合に前記第１の予測手段を前記復号対象のブロックの復号の際に用いる予測手段の選択候補から外すよう決定する決定手段とを有することを特徴とする画像復号装置。
【発明の効果】
【００１３】
スライスタイプに基づいて、使用する予測符号化モードの選択候補を減らすことができる。
【図面の簡単な説明】
【００１４】
【図１】実施形態１における画像符号化装置の構成を示すブロック図
【図２】ブロック符号化モードの選択を表す図
【図３】実施形態１及び実施形態２におけるビットストリームの一部のシンタックスの例を表す図
【図４】実施形態１における動画像全体の画像符号化処理を表すフローチャート
【図５】実施形態１におけるブロックの画像符号化処理を表すフローチャート
【図６】実施形態２における画像復号装置の構成を示すブロック図
【図７】実施形態２における動画像全体の画像復号処理を表すフローチャート
【図８】実施形態２におけるブロックの画像復号処理を表すフローチャート
【図９】画像符号化装置及び画像復号装置に適用可能なコンピュータのハードウェアの構成例を示すブロック図
【図１０】イントラ予測符号化モードの画素の参照の一例を表す図
【図１１】ＩＢＣ予測符号化モードのコピーベクトルの一例を表す図
【発明を実施するための形態】
【００１５】
以下、添付の図面を参照して、本願発明をその好適な実施形態に基づいて詳細に説明する。尚、以下の実施形態において示す構成は一例に過ぎず、図示された構成に限定されるものではない。
【００１６】
［実施形態１］
以下、図１を用いて本実施形態に係る画像符号化装置を構成する各処理部の概要を説明する。図１は、本実施形態の画像符号化装置１００の構成を示すブロック図である。尚、図１の各処理部は１つの物理的な回路によって構成されていてもよいし、複数の回路で構成されていてもよい。
【００１７】
図１において、１０１は１以上のピクチャ（１フレーム分の画像）を含む動画像の画像データを入力する入力部である。尚、本実施形態において、１以上のピクチャを含む動画像をシーケンスと称し、入力部１０１はシーケンスの画像データをピクチャ単位で入力する。１０２はスライス設定部である。ピクチャは１以上（１又は複数）のスライスに分割することができ、スライス設定部１０２はピクチャや予め決められたタイミング等に応じてピクチャのスライスのサイズ、位置等を決定し、各スライスのスライスタイプを設定する。１０３はＩＢＣ可否設定部であり、イントラブロックコピーイングを行うか否か（即ち、イントラブロックコピーイングの実行の要否）を表すイントラブロックコピーイング可否情報（以下、ＩＢＣ可否情報）を設定する。尚、イントラブロックコピーイングを行うか否かの決定方法については限定されず、ビットストリームを生成する画像符号化装置１００又は符号化されたビットストリームを入力して復号する画像復号装置の機能に基づいて設定しても構わない。また、ユーザによって指定された情報に基づいて設定しても構わない。
【００１８】
１０４はピクチャバッファであり、入力部１０１から入力された動画像をピクチャ（フレーム）単位で格納するバッファとして使用される。１０５はブロック分割部であり、ピクチャバッファ１０４から入力された１ピクチャ分の画像（複数の画素を含む）を１以上（１又は複数）のブロックに分割したブロック単位で後段の処理部に出力する。尚、ブロック分割部１０５は、１ピクチャ分の画像を分割したブロックを、必要に応じてさらにサブブロック等に分割してもよい。また、以下、ブロック分割部１０５によって出力されたブロック又はサブブロックを、後段の処理部における処理の単位として単にブロックと称する。スライス設定部１０２が決定する１つのスライスにはブロック分割部１０５が分割した１以上（１又は複数）のブロックが含まれる。
【００１９】
１０６はイントラブロックコピーイングを行うＩＢＣ予測部である。ＩＢＣ予測部１０６は、符号化対象のピクチャ内の符号化済みである部分に対応する画像に含まれる予測ブロックを決定（特定）し、決定した予測ブロックと符号化対象のブロックとの差分に対応するベクトルと予測誤差とを取得（算出）する。ここで、予測ブロックと符号化対象のブロックとの差分に対応するベクトルは、符号化対象のピクチャ内の符号化済みの画像であって、再構成された画像である再生画像（再構成画像）を参照して算出したコピーベクトルである。そしてＩＢＣ予測部１０６は、取得したコピーベクトルに基づいて符号化対象のブロック（符号化対象ブロック）の予測画像となるイントラブロックコピー予測ブロックデータ（以下、ＩＢＣ予測ブロックデータ）を生成する。図１１にその様子を表す。１１０１はピクチャを分割したブロックの様子を表しており、符号化対象のブロックをブロックＸとする。ブロックＸに対して、符号化対象のピクチャ内の所定の探索範囲の符号化済みの部分の画像データを参照して、最も類似するブロックの位置を決定する。例えば、所定の探索範囲の符号化済みの画像データの内、点線で表したブロック１１０２やブロック１１０３がブロックＸと最も類似するブロックである場合、矢印１１０４及び矢印１１０５が算出されたコピーベクトルとなる。尚、探索範囲については例えば、符号化対象のピクチャ内の符号化済みの全ての画像データを参照しても良いし、同じブロックラインの符号化済みの画像データを参照しても良い。前者ではコピーベクトル１１０４が算出でき、後者ではコピーベクトル１１０５を算出できる。また、ＨＥＶＣでは直前に符号化されたＬＣＵ（Ｌａｒｇｅ  Ｃｏｄｉｎｇ  Ｕｎｉｔ）の画像データと符号化中のＬＣＵで符号化済みの画像データにその探索範囲を限定しても構わない。尚、ＬＣＵは、ピクチャ内の最も大きいＣＵ（Ｃｏｄｉｎｇ  Ｕｎｉｔ）を示す。さらに、ＩＢＣ予測部１０６は、生成したＩＢＣ予測ブロックデータと、符号化対象のブロックの画像データとの差分に対応するイントラブロックコピー予測誤差ブロックデータ（以下、ＩＢＣ予測誤差ブロックデータ）を生成し、後段の処理部へ出力する。
【００２０】
１０７はインター予測（画面間予測、動き補償予測）を行うインター予測部である。インター予測部１０７は、符号化対象のピクチャより前に符号化済みのピクチャ内の再生画像に含まれる予測ブロックを決定（特定）し、当該予測ブロックと符号化対象のブロックとの差分に対応する動きベクトルと予測誤差とを取得（算出）する。インター予測部１０７は、取得した動きベクトルに基づいて、符号化対象のブロックの予測画像となるインター予測ブロックデータを算出する。さらに、インター予測部１０７は、生成したインター予測ブロックデータと、符号化対象のブロックの画像データとの差分に対応するインター予測誤差ブロックデータを生成し、後段の処理部へ出力する。
【００２１】
１０８はイントラ予測（画面内予測）を行うイントラ予測部である。イントラ予測部１０８は、符号化対象のピクチャ内の符号化済みである部分に対応する画像の内の、符号化対象のブロックの周辺の画素を参照して、イントラ予測によって予測誤差を取得（算出）する。即ちイントラ予測部１０８は、符号化対象のピクチャ内の符号化対象のブロックの周辺に位置する符号化済みの画像であって、再構成された画像である再生画像の画素値をイントラ予測における予測モードに基づいて参照し、最適な予測モードを決定する。尚、本実施形態においてイントラ予測における予測モードをイントラ予測モードと称す。
【００２２】
図１０（ａ）にイントラ予測モードの一例を表す。１００１はブロックを表す。ここでは８画素×８画素のブロックを例にとって説明するが、ブロックのサイズはこれに限定されない。同図において、ｚ０、ａ０１、ａ０２、・・・ａ１５、ｂ０１、ｂ０２、・・・ｂ１５は符号化済みの画素を表す。図１０（ｂ）は水平方向に周囲の復号済み画素から予測する様子を表す。図１０（ｃ）は垂直方向に周囲の復号済み画素から予測する様子を表す。図１０（ｄ）は斜め右下方向に周囲の復号済み画素から予測する様子を表す。図１０（ｅ）は斜め左下方向に周囲の復号済み画素から予測する様子を表す。イントラ予測モードとはこれらのように予測する方向等に関するモードであり、ＨＥＶＣにおいては輝度画素において各予測ブロックのサイズ毎に３５個のモード、色差画素においては輝度画素におけるモードに基づいて５個のモードが定義されている。ここでは、各モードの説明については省略する。
【００２３】
さらにイントラ予測部１０８は、決定された最適なイントラ予測モードに基づいて符号化対象のブロックの予測画像となるイントラ予測ブロックデータを算出する。そしてイントラ予測部１０８は、生成したイントラ予測ブロックデータと符号化対象のブロックの画像データとの差分に対応するイントラ予測誤差ブロックデータを生成し、後段の処理部へ出力する。
【００２４】
１１３は予測符号化モード判定部であり、最適な予測符号化モードを選択する。予測符号化モード判定部１１３は、ＩＢＣ予測部１０６、インター予測部１０７、及びイントラ１０８予測部１０８によって生成された予測誤差ブロックデータをそれぞれ入力する。そして、予測符号化モード判定部１１３は、入力された各予測誤差ブロックデータに基づいて、次のモードのうち最適な予測符号化モードを選択し、後段の処理部へ出力する。即ち、予測符号化モード判定部１１３は、ＩＢＣ予測符号化モード（第１の予測符号化モード）、インター予測符号化モード（第２の予測符号化モード）、及びイントラ予測符号化モード（第３の予測符号化モード）のうちから選択する。ここで、ＩＢＣ予測符号化モードはイントラブロックコピーイングを行うモードである。そしてＩＢＣ予測符号化モードでは、符号化対象のピクチャの符号化済みの画素を再生した画像を参照してコピーベクトルを算出し、コピーベクトルが指し示す予測ブロックと符号化対象のブロックとの予測誤差を求め、コピーベクトルと予測誤差を符号化する。また、本実施形態における予測符号化モード判定部１１３は、入力された各予測誤差ブロックデータに基づいて、各予測符号化モードで符号化した場合の符号量等に基づいて最適な予測符号化モードを選択する。
【００２５】
１０９はコピーベクトル符号化部であり、予測符号化モード判定部１１３によってＩＢＣ予測符号化モードが選択された場合に、ＩＢＣ予測部１０６によって取得されたコピーベクトルを符号化する。１１０はコピーベクトルメモリであり、符号化時にコピーベクトルの予測を行う際に参照するために、コピーベクトル符号化部１０９によって符号化済みのコピーベクトルを格納する。１１１は動きベクトル符号化部であり、予測符号化モード判定部１１３によってインター予測符号化モードが選択された場合に、インター予測部１０７によって取得された動きベクトルを符号化する。１１２は動きベクトルメモリであり、符号化時に動きベクトルの予測を行う際に参照するために、動きベクトル符号化部１１１によって符号化済みの動きベクトルを格納する。
【００２６】
１１４はヘッダ符号化部であり、シーケンスヘッダ、ピクチャヘッダ、スライスヘッダ、及びブロックヘッダ等の符号データを生成し、後段の処理部へ出力する。ヘッダ符号化部１１４は特にシーケンスヘッダの符号化において、シーケンス単位でイントラブロックコピーイングを行うか否かを示す、ｉｎｔｒａ＿ｂｌｏｃｋ＿ｃｏｐｙ＿ｅｎａｂｌｅｄ＿ｆｌａｇ符号を符号化する。またヘッダ符号化部１１４はスライスヘッダの符号化において、スライスの符号化モード（スライスタイプ）を表すｓｌｉｃｅ＿ｔｙｐｅ符号を符号化する。またヘッダ符号化部１１４はブロックヘッダの符号化において、ブロック符号化モードを表すｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号やイントラブロックコピーフラグを表すｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号、イントラ予測モードを表す符号を符号化する。
【００２７】
１１５は変換・量子化部であり、予測符号化モード判定部１１３で決定されたブロック符号化モードに基づいて、ＩＢＣ予測部１０６、インター予測部１０７、及びイントラ予測部１０８から出力される予測誤差ブロックデータを選択して入力する。さらに、変換・量子化部１１５は入力された予測誤差ブロックデータに基づいて、符号化対象のブロックと予測ブロックとの予測誤差を算出する。そして、変換・量子化部１１５は算出した予測誤差に対して直交変換を行うことにより直交変換係数を算出し、さらに直交変換係数を所定の手続きによって量子化することにより量子化係数を算出し、後段の処理部へ出力する。
【００２８】
１２０は符号化部であり、変換・量子化部１１５から出力された量子化係数を符号化することにより、予測残差の符号化データを生成し、後段の処理部へ出力する。１２１は統合部であり、ヘッダ符号化部１１４、コピーベクトル符号化部１０９、動きベクトル符号化部１１１、符号化部１２０から入力された符号データからビットストリームを構成し、出力する。１２２は出力部であり、統合部１２１によって統合されたビットストリームを画像符号化装置１００外部へ出力する。
【００２９】
また、１１６は逆量子化・逆変換部であり、変換・量子化部１１５から入力された量子化係数を逆量子化して直交変換係数を再生し、さらに逆直交変換を施すことにより、符号化対象のブロックの復号された予測誤差を生成する。１１７は再構成部であり、逆量子化・逆変換部１１６によって生成された予測誤差と、予測符号化モード判定部１１３によって決定されたブロック符号化モードに基づく予測ブロックデータとを入力し、復号された再生画像を生成する。１１８はカレントピクチャメモリであり、再構成部１１７によって再生された符号化対象のピクチャの再生画像を格納する。１１９はピクチャメモリであり、符号化対象のピクチャの以前に符号化されたピクチャの再生画像を格納する。さらに、１２３は、画像符号化装置１００全体を制御する制御部である。
【００３０】
次に、上記画像符号化装置１００における画像の符号化動作について、図４、及び図５に示したフローチャートを用いて説明する。
【００３１】
図４は符号化動作の全体を表すフローチャートである。ステップＳ４０１においてＩＢＣ可否設定部１０３は、イントラブロックコピーイングを行うか否かを表すＩＢＣ可否情報を設定する。本実施形態においてＩＢＣ可否設定部１０３は、符号化対象のシーケンスでイントラブロックコピーイングを行う場合にはＩＢＣ可否情報を１に、行わない場合は０に設定する。尚、ＩＢＣ可否設定情報の設定方法については、ユーザによって指定された情報に基づいて設定しても構わないし、画像符号化装置１００の構成によって設定する等しても構わない。次にステップＳ４０２においてヘッダ符号化部１１４は、ステップＳ４０１で設定されたＩＢＣ可否情報をｉｎｔｒａ＿ｂｌｏｃｋ＿ｃｏｐｙ＿ｅｎａｂｌｅｄ＿ｆｌａｇ符号として符号化し、シーケンスヘッダの符号データに挿入する。尚、生成されたシーケンスの符号データは統合部１２１に入力され、ビットストリームに成形されて出力部１２２から画像符号化装置１００外部に出力される。
【００３２】
ステップＳ４０３以降で、各ピクチャの符号化処理を行う。ステップＳ４０３にて、入力部１０１は符号化対象のピクチャの画像データを入力し、ピクチャバッファ１０４に格納する。ステップＳ４０４にて、スライス設定部１０２は、入力された画像データのスライス分割の構成を決定し、各スライスのスライスタイプを決定する。尚、スライス分割の構成の決定方法については、ピクチャを等分割したり、画像の特性に基づいて異なるサイズで分割したりする方法を用いることができる。また、スライスタイプの決定方法について、ピクチャ毎にスライスタイプを決定しても構わないし、スライス内部の画像データの特性に基づいて決定しても構わない。
【００３３】
ステップＳ４０５以降で、各スライスの符号化処理を行う。ステップＳ４０５においてヘッダ符号化部１１４は、ステップＳ４０４で決定されたスライス分割の構成に基づいてスライスヘッダの符号化を行う。スライスヘッダの符号化において、スライスの符号化モードを表すｓｌｉｃｅ＿ｔｙｐｅ符号を符号化する。ｓｌｉｃｅ＿ｔｙｐｅ符号にはイントラスライスを表すＩ＿ｓｌｉｃｅ、非イントラスライスであるＰ＿ｓｌｉｃｅ、及びＢ＿ｓｌｉｃｅがある。ステップＳ４０６にて、ブロック分割部１０５はスライス内部をブロックに分割する。例えば、ＨＥＶＣではまずＬＣＵに分割し、さらにＬＣＵ内部を必要に応じてＣＵに分割する。本実施形態では説明を簡易にするため、ＬＣＵ及びＣＵそれぞれを単にブロックと称する。ステップＳ４０７において画像符号化装置１００はブロック単位で画像を符号化する。
【００３４】
ここで、図５を用いてステップＳ４０７におけるブロック毎の符号化処理について説明する。図５は符号化対象のブロックの符号化動作を表すフローチャートである。ステップＳ５０１においてスライス設定部１０２は、自身が設定したスライスタイプに基づく判定を行い、設定したスライスタイプがＩ＿ｓｌｉｃｅである場合にステップＳ５０２へ進み、Ｉ＿ｓｌｉｃｅでない場合にステップＳ５１６へ進む。
【００３５】
まず、ステップＳ５０１においてスライス設定部１０２がスライスタイプとしてＩ＿ｓｌｉｃｅを設定した場合（ステップＳ５０１のＹＥＳ）について説明する。ステップＳ５０２において、予測符号化モード判定部１１３はブロック符号化モードとしてイントラ予測符号化モードを設定する。次にステップＳ５０３においてＩＢＣ予測部１０６は、ステップＳ４０１で設定されたＩＢＣ可否情報を判定し、ＩＢＣ可否情報が１（イントラブロックコピーイングを行う場合）であればステップＳ５０９に進む。また、ステップＳ４０１においてＩＢＣ予測部１０６が判定したＩＢＣ可否情報が０（イントラブロックコピーイングを行わない場合）であればステップＳ５０４に進む。
【００３６】
まず、ステップＳ５０３においてＩＢＣ可否情報が１である場合（イントラブロックコピーイングを行う場合）について説明する。この場合、ステップＳ５０９においてＩＢＣ予測部１０６は、カレントピクチャメモリ１１８に格納されている符号化対象のピクチャの符号化済みのブロックの再生画像を参照し、コピーベクトルを算出する。さらに、ＩＢＣ予測部１０６は算出されたコピーベクトルに基づいて、符号化対象のブロックの予測画像であるＩＢＣ予測ブロックデータを生成する。そして、ＩＢＣ予測部１０６は、生成されたＩＢＣ予測ブロックデータと符号化対象のブロックの画像データとからＩＢＣ予測誤差ブロックデータを生成する。ＩＢＣ予測部は、算出したコピーベクトルをコピーベクトル符号化部１０９及び再構成部１１７に出力し、ＩＢＣ予測誤差ブロックデータを予測符号化モード判定部１１３及び変換・量子化部１１５に出力する。
【００３７】
ステップＳ５１０においてイントラ予測部１０８は、カレントピクチャメモリ１１８に格納されている符号化対象のピクチャ内の、符号化対象のブロックの周辺の再生画像を参照し、イントラ予測モードを決定する。またイントラ予測部１０８は、決定されたイントラ予測モードに基づいて、符号化対象のブロックの予測画像であるイントラ予測ブロックデータを生成する。さらに、イントラ予測部１０８は、生成されたイントラ予測ブロックデータと符号化対象のブロックの画像データとからイントラ予測誤差ブロックデータを生成する。そして、イントラ予測部１０８は、算出されたイントラ予測モードをヘッダ符号化部１１４及び再構成部１１７に出力し、イントラ予測誤差ブロックデータを予測符号化モード判定部１１３及び変換・量子化部１１５に出力する。
【００３８】
ステップＳ５１１において予測符号化モード判定部１１３は、符号化対象のブロックの符号化において用いる予測符号化モードとして、イントラ予測符号化又はＩＢＣ予測符号化のどちらを用いるかを判定する。尚、符号化モードの判定方法は特に限定されない。例えば、予測符号化モード判定部１１３が取得した各予測誤差（イントラ予測誤差ブロックデータ及びＩＢＣ予測誤差ブロックデータ）から符号化コストを推定し、その大小比較によって判定してもよい。そして、ステップＳ５１１において予測符号化モード判定部１１３が符号化モードとしてイントラ予測符号化モードを用いると判定した場合はステップＳ５０５に進み、ＩＢＣ予測符号化モードを用いる判定した場合はステップＳ５１２に進む。
【００３９】
まず、ステップＳ５１１でＩＢＣ予測符号化モードと判定された場合について説明する。ステップＳ５１２においてヘッダ符号化部１１４は、イントラブロックコピーフラグに１を設定する。さらに、ステップＳ５１３においてヘッダ符号化部１１４は、これをｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号として符号化し、ｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号の符号データを統合部１２１に入力する。そして統合部１２１は、入力されたｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号の符号データをビットストリームに成形し、生成したビットストリームを、出力部１２２を介して画像符号化装置１００から外部に出力する。
【００４０】
次に、ステップＳ５１４においてコピーベクトル符号化部１０９は、ステップＳ５０９においてＩＢＣ予測部１０６によって生成されたコピーベクトルを符号化し、コピーベクトル符号データを生成して統合部１２１に出力する。尚、コピーベクトルの符号化は、例えば、コピーベクトルメモリ１１０に格納されている、符号化対象のブロックの周辺の符号化済みのブロックのコピーベクトルからコピーベクトルの予測ベクトルを生成し、ベクトルの予測誤差を符号化するようにしてもよい。さらに、コピーベクトル符号化部１０９は入力されたコピーベクトルをコピーベクトルメモリ１１０に格納する。またコピーベクトル符号化部１０９は、生成したコピーベクトル符号データを統合部１２１に入力し、統合部１２１は入力されたコピーベクトル符号データをビットストリームに成形して出力部１２２を介して画像符号化装置１００外部に出力する。
【００４１】
ステップＳ５１５において変換・量子化部１１５は、ＩＢＣ予測部１０６によって生成されたＩＢＣ予測誤差ブロックデータを入力し、入力したＩＢＣ予測誤差ブロックデータに直交変換及び量子化を施し、量子化係数を算出する。さらに、変換・量子化部１１５は算出した量子化係数を符号化部１２０及び逆量子化・逆変換部１１６に入力する。そして、逆量子化・逆変換部１１６は、入力された量子化係数に逆量子化及び逆変換を施し、ＩＢＣ予測誤差ブロックデータを再生する。また再構成部１１７は、コピーベクトルに基づいてカレントピクチャメモリ１１８からＩＢＣ予測ブロックデータを算出し、ＩＢＣ予測誤差ブロックデータを用いて符号化対象のブロックの復号画像の再生画像を算出する。さらに再構成部１１７は、算出した再生画像をカレントピクチャメモリ１１８に格納する。また符号化部１２０は、逆量子化・逆変換部１１６から出力されたＩＢＣ予測誤差ブロックデータを符号化することにより予測誤差の符号データを生成し、統合部１２１に入力する。そして統合部１２１は入力された予測誤差の符号データをビットストリームに成形し、出力部１２２を介して画像符号化装置１００の外部に出力する。その後、符号化対象のブロックの符号化処理を終了する。
【００４２】
次に、ステップＳ５１１でイントラ予測符号化モードと判定された場合について説明する。この場合、ステップＳ５０５においてヘッダ符号化部１１４は、イントラブロックコピーフラグに０を設定する。次にステップＳ５０６においてヘッダ符号化部１１４は、ＩＢＣ可否情報を判定する。ステップＳ５０６においてＩＢＣ可否情報が１であればステップＳ５０７へ進み、ＩＢＣ可否情報が０であればステップＳ５０８へ進む。
【００４３】
まず、ステップＳ５０７においてヘッダ符号化部１１４は、イントラブロックコピーフラグをｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号として符号化し、ｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号の符号データを統合部１２１に入力する。この時、ステップＳ５０５における設定によって、必ずｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号の値は０である。さらに統合部１２１は、入力されたｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号の符号データをビットストリームに成形し、形成したビットストリームを、出力部１２２を介して画像符号化装置１００外部に出力する。
【００４４】
また、ステップＳ５０８において変換・量子化部１１５は、イントラ予測誤差ブロックデータに直交変換及び量子化を施し、量子化係数を算出する。そして変換・量子化部１１５は、算出した量子化係数を符号化部１２０及び逆量子化・逆変換部１１６に入力する。そして逆量子化・逆変換部１１６は、入力された量子化係数を逆量子化及び逆変換を施し、イントラ予測誤差ブロックデータを再生し、再構成部１１７及び符号化部１２０へ出力する。再構成部１１７はイントラ予測符号化モードに基づいてカレントピクチャメモリ１１８からイントラ予測ブロックデータを算出する。そして再構成部１１７は、逆量子化・逆変換部１１６から入力されたイントラ予測誤差ブロックデータを用いて符号化対象のブロックの復号画像の再生画像を算出する。そして再構成部１１７は算出した再生画像をカレントピクチャメモリ１１８に格納する。また、符号化部１２０は逆量子化・逆変換部１１６から入力されたイントラ予測誤差ブロックデータを符号化することにより、予測誤差の符号データを生成し、統合部１２１に入力する。統合部１２１は入力された予測補佐の符号データをビットストリームに成形し、形成されたビットストリームを、出力部１２２を介して画像符号化装置１００外部へ出力する。
【００４５】
その後、符号化対象のブロックの符号化処理を終了する。以上、ステップＳ５０３においてＩＢＣ可否情報が１であった場合（イントラブロックコピーイングを行う）場合についての処理を説明した。
【００４６】
次に、ステップＳ５０３でＩＢＣ可否情報が０であった場合（イントラブロックコピーイングを行わない場合）について説明する。この場合、ステップＳ５０４においてイントラ予測部１０８は、ステップＳ５１０と同様に、カレントピクチャメモリ１１８に格納されている符号化対象のピクチャ内の、符号化対象のブロックの周辺の再生画像を参照してイントラ予測モードを決定する。さらに、イントラ予測部１０８は決定したイントラ予測モードに基づいてイントラ予測誤差ブロックデータを生成する。ステップＳ５０４の処理の後は、ステップＳ５０５〜Ｓ５０８の処理を行うが、前述したためここでは省略する。
【００４７】
ここまで、ステップＳ５０１においてスライス設定部がスライスタイプとしてＩ＿ｓｌｉｃｅを設定した場合（ステップＳ５０１のＹＥＳ）について説明した。以下、ステップＳ５０１においてスライス設定部１０２が、スライスタイプとしてＰ＿ｓｌｉｃｅ乃至Ｂ＿ｓｌｉｃｅを設定した場合（ステップＳ５０１のＮＯ）について説明する。
【００４８】
ステップＳ５１６においてヘッダ符号化部１１４は、イントラブロックコピーフラグに０を設定する。このステップＳ５１６におけるヘッダ符号化部１１４の処理により、非イントラスライスの符号化処理においてはイントラブロックコピーイングの処理（ＩＢＣ予測符号化モードの使用）を禁止することができる。これにより、非イントラスライスにおいては、ＩＢＣ予測符号化モード以外のモード（イントラ予測符号化モード又はインター予測符号化モード）から選択するため、コピーベクトルの探索処理を省略することができる。このため、符号化モードを選択するための予測誤差ブロックデータの生成処理を削減することができる。
【００４９】
次に、ステップＳ５１７においてインター予測部１０７は、ピクチャメモリ１１９に格納されている、符号化対象のピクチャより前に符号化された符号化済みのピクチャの再生画像を参照し、動きベクトルを算出する。さらにインター予測部１０７は、算出した動きベクトルに基づいて、符号化対象のブロックに対応する予測画像であるインター予測ブロックデータを生成する。そしてインター予測部１０７は、生成したインター予測ブロックデータと符号化対象のブロックの画像データとからインター予測誤差ブロックデータを生成する。インター予測部１０７は、算出した動きベクトルを動きベクトル符号化部１１１及び再構成部１１７に出力し、生成したインター予測誤差ブロックデータを予測符号化モード判定部１１３及び変換・量子化部１１５に出力する。
【００５０】
次に、ステップＳ５１８においてイントラ予測部１０８は、ステップＳ５０４及びＳ５１０と同様に、カレントピクチャメモリ１１８に格納されている符号化対象のピクチャ内の符号化対象のブロックの周辺の再生画像を参照してイントラ予測モードを決定する。さらにイントラ予測部１０８は、決定したイントラ予測モードに基づいてイントラ予測誤差ブロックデータを生成する。
【００５１】
ステップＳ５１９において、予測符号化モード判定部１１３はブロック符号化モードを判定する。尚、ブロック符号化モードの判定の方法は、例えば、使用可能なブロック符号化モードについて各モードに対応する予測誤差から符号化コストを推定し、その大小比較によって使用するブロック符号化モードを判定するようにしてもよい。本実施形態では、使用可能なブロック符号化モードはイントラ符号化モード又はインター符号化モードとし、イントラ符号化モードであればステップＳ５２０に進み、インター符号化モードであればステップＳ５２２に進む。
【００５２】
まず、ステップＳ５１９においてイントラ予測符号化モードと判定された場合について説明する。ステップＳ５２０において予測符号化モード判定部１１３は、ステップＳ５０２と同様に、ブロック符号化モードにイントラ符号化モード（ＭＯＤＥ＿ＩＮＴＲＡ）を設定する。次に、ステップＳ５２１においてヘッダ符号化部１１４は、ブロック符号化モードとしてイントラ符号化モード（ＭＯＤＥ＿ＩＮＴＲＡ）をｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号として符号化する。ヘッダ符号化部１１４は符号化したｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号の符号データを統合部１２１に入力する。統合部１２１は、入力されたｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号の符号データをビットストリームに成形し、成形されたビットストリームを、出力部１２２を介して画像符号化装置１００外部へ出力する。その後、ステップＳ５０８においてイントラ予測符号化モードの符号化を行い、符号化対象のブロックの符号化処理を終了する。
【００５３】
次に、ステップＳ５１９においてインター予測符号化モードと判定された場合について説明する。ステップＳ５２２において予測符号化モード判定部１１３は、ブロック符号化モードにインター符号化モード（ＭＯＤＥ＿ＩＮＴＥＲ）を設定する。ステップＳ５２３においてヘッダ符号化部１１４は、スキップフラグに０を設定し、スキップフラグをｃｕ＿ｓｋｉｐ＿ｆｌａｇ符号として符号化する。スキップフラグは当該ブロックをスキップ符号化するか否かを表す。スキップ符号化はインター予測符号化モードにおいて用いられる処理であり、予測されたブロックのデータをそのまま復号された再生画像とする符号化である。即ち、動きベクトル以外には予測誤差ブロックデータ等のデータを送らないという符号化である。またヘッダ符号化部１１４は、ブロック符号化モードをｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号として符号化する。そしてヘッダ符号化部１１４は、符号化したｃｕ＿ｓｋｉｐ＿ｆｌａｇ符号の符号データ及びｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号の符号データを統合部１２１に出力する。統合部１２１は入力された各符号データをビットストリームに成形して出力部１２２を介して画像符号化装置１００外部へ出力する。
【００５４】
ステップＳ５２４において動きベクトル符号化部１１１は、ステップＳ５１７でインター予測部１０７によって算出された動きベクトルを、動きベクトルメモリ１１２に格納されている符号化済みのブロックの動きベクトルを参照して符号化する。そして動きベクトル符号化部１１１は、符号化された動きベクトルの符号データを統合部１２１へ出力する。統合部１２１は、符号化された動きベクトルの符号データを入力し、ビットストリームに成形して、出力部１２２を介して画像符号化装置１００外部へ出力する。また動きベクトル符号化部１１１は、算出した動きベクトルを動きベクトルメモリ１１２に格納する。
【００５５】
ステップＳ５２５において変換・量子化部１１５は、ステップＳ５１７においてインター予測部１０７によって生成されたインター予測誤差ブロックデータに直交変換及び量子化を施し、量子化係数を算出する。変換・量子化部１１５は算出した量子化係数を符号化部１２０及び逆量子化・逆変換部１１６に入力する。逆量子化・逆変換部１１６は、変換・量子化部１１５から入力された量子化係数に逆量子化及び逆変換を施し、インター予測誤差ブロックデータを再生する。また、再構成部１１７はステップＳ５１７で算出された動きベクトルに基づいてピクチャメモリ１１９からインター予測ブロックデータを算出する。そして再構成部１１７は、逆量子化・逆変換部１１６によって再生されたインター予測誤差ブロックデータと、再構成部１１７によって算出されたインター予測ブロックデータとを用いて、符号化対象のブロックの復号画像の再生画像を算出する。再構成部１１７は、算出した再生画像をカレントピクチャメモリ１１８に格納する。また、符号化部１２０は変換・量子化部１１５によって算出されたインター予測誤差ブロックデータの量子化係数を符号化し、予測誤差の符号データを生成し、統合部１２１に出力する。統合部１２１は入力された予測誤差の符号データをビットストリームに成形し、出力部１２２を介して画像符号化装置１００外部に出力する。その後、符号化対象のブロックの符号化処理を終了する。
【００５６】
図４に戻り、ステップＳ４０８において、画像符号化装置１００全体を制御する制御部１２３は、符号化対象のスライス内の全てのブロックの符号化が終了したか否かを判定する。全てのブロックの符号化が終了している場合はステップＳ４０９に進み、そうでない場合はブロックのスキャン順に次のブロックの符号化をステップＳ４０７に戻って行う。ステップＳ４０９において制御部１２３は、符号化対象のピクチャ内の全てのスライスの符号化が終了したか否かを判定する。全てのスライスの符号化が終了している場合はステップＳ４１０に進み、そうでない場合はステップＳ４０５に戻り、次のスライスの符号化処理を行う。ステップＳ４１０において制御部１２３は、符号化対象のシーケンス内の全てのピクチャの符号化が終了したか否かを判定する。全てのピクチャの符号化が終了している場合は符号化動作を終了し、そうでない場合はステップＳ４０３に進み、次のピクチャの符号化処理を行う。また、ステップＳ４１０において制御部１２３は、符号化対象のピクチャの再生画像の画像データをカレントピクチャメモリ１１８からピクチャメモリ１１９に移動させる。尚、ピクチャメモリ１１９は必要に応じて、参照されることが無くなる画像データを消去する。
【００５７】
上記の構成と動作によって生成されたビットストリームの内、ブロックの符号化に関するシンタックスの例を図３に示す。図３はブロックの符号化のシンタックスを表したものである。図３において、太字が符号を表している。本シンタックスは非特許文献２のシンタックスに改良を施したものであり、従来のシンタックスとは５行目が異なっている。従来はｉｆ（ｉｎｔｒａ＿ｂｌｏｃｋ＿ｃｏｐｙ＿ｅｎａｂｌｅｄ＿ｆｌａｇ  ）
となっていたが、本実施形態においては
Ｉｆ（  ｓｌｉｃｅ＿ｔｙｐｅ    ＝＝    Ｉ    ＆＆  ｉｎｔｒａ＿ｂｌｏｃｋ＿ｃｏｐｙ＿ｅｎａｂｌｅｄ＿ｆｌａｇ  ）
と改良されている。
【００５８】
即ち、スライスタイプがＩ＿ｓｌｉｃｅでない場合はｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号が現れず、現れない場合にはイントラブロックコピーフラグは０になる。従って、非イントラスライスであれば、必ずイントラブロックコピーフラグは０になるため、イントラブロックコピーイングは行われない（選択候補から外される）ことになる。すなわち、図２（ｂ）に本実施形態における各予測符号化モードの選択の様子を示す。スライスがイントラスライス（スライスタイプがＩ＿ｓｌｉｃｅ）か、非イントラスライス（スライスタイプがＰ＿ｓｌｉｃｅ乃至Ｂ＿ｓｌｉｃｅ）を選択できる。スライスがイントラスライスの場合、ブロック符号化モードはイントラ符号化モードとなる。さらに、予測符号化モードはイントラブロックコピーイングが可能か否かで選択が可能であり、イントラブロックコピーイングを使用しないイントラ予測符号化モードか、イントラブロックコピーイングを使用するＩＢＣ予測符号化モードのいずれかを選択できる。スライスが非イントラスライスの場合、ブロック符号化モードはイントラ符号化モードかインター符号化モードかを選択できる。ブロック符号化モードがイントラ符号化モードの場合、イントラブロックコピーイングを使用しないイントラ予測符号化モードとなる。また、ブロック符号化モードがインター符号化モードであればインター予測符号化モードとなる。
【００５９】
以上説明した画像符号化装置１００の構成及び符号化方法により、非イントラスライス（Ｐ＿ｓｌｉｃｅ乃至Ｂ＿ｓｌｉｃｅ）においてイントラブロックコピーイングを禁止することで、コピーベクトルの探索等の処理を省略することができる。即ち、画像符号化装置１００側の処理によって、非イントラスライスにおいて、イントラブロックコピーイングを禁止したビットストリームを符号化することができる。これにより、非イントラスライスにおいて動きベクトルとコピーベクトルの両方を探索する必要がなくなる。そして、本実施形態における画像符号化装置１００で生成されたビットストリームを入力した画像復号装置において非イントラスライスでの処理を簡略化することができる。
【００６０】
また本実施形態により、ハードウェアにおいては、Ｐ＿ｓｌｉｃｅ及びＢ＿ｓｌｉｃｅでは、ＩＢＣ予測部１０６、コピーベクトル符号化部１０９及びコピーベクトルメモリ１１０の動作を停止させることで各処理部の消費電力、発熱を抑えることができる。また、ソフトウェアにおいては、コピーベクトルの探索を始めとする処理を省略し、演算装置の負荷を低減することで処理の高速化（処理時間の短縮）を図ることができる。
【００６１】
また、本実施形態の画像符号化装置は、特にスクリーンコンテントのような文字やテクスチャなど同じ画面に同様なパターンが繰り返し使用されることが多い画像において、ＩＢＣ予測符号化モードの使用を禁止しても、従来よりも画質が劣化する可能性は低い。ここで、同じ画面に同様なパターンが繰り返し使用されることが多い画像においては、符号化対象ピクチャより前に符号化されたピクチャにも同じようなパターンが発生していることが多い。このため、イントラ予測符号化モードでもＩＢＣ予測符号化モードでも、同じような効果が得られる可能性が高く、従来よりも画質が劣化する可能性は低い。従って、本実施形態の処理は符号化対象の画像がスクリーンコンテント（自然画以外の人工画像）であることが分かっている場合に実行するようにしてもよい。即ち、制御部１２３が、符号化対象の画像がスクリーンコンテントであるか否か判断し、スクリーンコンテントである場合に本実施形態の処理を実行する。
【００６２】
尚、本実施形態においては図５に示すように、ＩＢＣ予測、インター予測及び、イントラ予測を順次処理するフローチャートで説明したが、これに限定されるものではない。例えば、これらの処理をマルチタスクで並列に行っても構わない。また、イントラ予測をブロック符号化処理の先頭で行っても構わない。さらに、ステップＳ５０９及びＳ５１０の処理はどちらを先に行っても構わないし、ステップ５１６〜Ｓ５１８の処理の処理もそれぞれ処理順序に限定されない。
【００６３】
さらに、本実施形態においては、シンタックスを変更せずに、画像符号化装置を上述した図４及び図５の処理のように動作させてもよい。即ち、本実施形態の画像符号化装置１００で生成されたビットストリームを復号する画像復号装置が、従来のように非イントラスライスにでもＩＢＣ予測符号化モードを選択可能な画像復号装置であっても、新たな処理部を設ける必要はない。
【００６４】
また、各符号データの生成に用いる符号化方式は特に限定されない。例えば、算術符号化方式やハフマン符号化方式などを使用することができる。
【００６５】
また、本実施形態において、画像符号化装置１００外部から、画像データをピクチャ単位で入力したが、これに限定されず、スライス単位やブロック単位で入力してももちろん構わない。
【００６６】
また、本実施形態における図４のステップＳ４０８〜Ｓ４１０の処理を制御部１２３が行ったがこれに限定されない。例えば、ブロック分割部１０５がステップＳ４０８〜Ｓ４１０の処理を行っても構わない。
【００６７】
尚、本実施形態のＩＢＣ予測部１０６は、図１１に示すように符号化対象のピクチャ内の所定の探索範囲の符号化済みの画像データを参照して、最も類似するブロックに基づいてＩＢＣ予測符号化を行うとしたが、これに限定されない。即ち、参照対象である所定の範囲については特に限定されず、例えば、符号化対象のピクチャ内の符号化済みの全ての画像データを参照しても良いし、同じブロックラインの符号化済みの画像データを参照しても良い。前者ではコピーベクトル１１０４が算出でき、後者ではコピーベクトル１１０５を算出できる。また、ＨＥＶＣでは直前に符号化されたＬＣＵの画像データと符号化中のＬＣＵで符号化済みの画像データにその探索範囲を限定しても構わない。さらに、予測ブロックは最も類似するブロックに限定されず、例えば所定以上の類似度を持つブロックであっても構わないし、類似度が所定番目のブロックであっても構わない。
【００６８】
［実施形態２］
以下、図６を用いて本実施形態に係る画像復号装置を構成する各処理部の概要を説明する。図６は、本実施形態の画像復号装置６００の構成を示すブロック図である。尚、図６の各処理部は１つの物理的な回路によって構成されていてもよいし、複数の回路で構成されていてもよい。
【００６９】
図６において、６０１はビットストリームを入力する入力部である。本実施形態において、説明を簡易にするため、本実施形態において画像復号装置６００に入力されるビットストリームは、実施形態１における画像符号化装置１００で生成されたビットストリームとする。６０２は符号バッファであり、入力部６０１から出力されるビットストリームを格納する。６０３は分離部であり、入力されたビットストリームから各符号データを取り出し、それらを処理する後段の各復号部等に出力する。
【００７０】
６０４はヘッダ復号部であり、シーケンスヘッダ、ピクチャヘッダ、スライスヘッダ、ブロックヘッダの符号データを復号し、必要な情報を処理各部に出力する。特に、シーケンスヘッダの復号においてヘッダ復号部６０４は、復号対象のシーケンスでイントラブロックコピーイングを行っているか否かを示す、ｉｎｔｒａ＿ｂｌｏｃｋ＿ｃｏｐｙ＿ｅｎａｂｌｅｄ＿ｆｌａｇ符号を復号し、ＩＢＣ可否情報を取得する。スライスヘッダの復号化においてヘッダ復号部６０４は、復号対象のスライスの符号化モード（スライスタイプ）を表すｓｌｉｃｅ＿ｔｙｐｅ符号を復号する。ブロックヘッダの復号においては、復号対象のブロック（復号対象ブロック）のブロック符号化モードを表すｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号、ＩＢＣ予測符号化モードを表すｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号、イントラ予測モードを表す符号等を復号する。
【００７１】
６０５はコピーベクトル復号部であり、コピーベクトルに関する符号データを、コピーベクトルメモリ６０６に格納されているコピーベクトルを参照して復号し、復号対象のブロックと予測対象のブロックとの差分に対応するコピーベクトルを再生する。６０６はコピーベクトルメモリであり、コピーベクトル復号部６０５によって復号済みのコピーベクトルを格納する。コピーベクトルメモリ６０６に格納された復号済みのコピーベクトルは、後に復号するブロックにおいてコピーベクトルの予測を行う際に参照するために用いられる。６０７は動きベクトル復号部であり、動きベクトルに関する符号データを、動きベクトルメモリ６０８に格納されている動きベクトルを参照して復号し、復号対象のブロックと予測対象のブロックとの差分に対応する動きベクトルを再生する。６０８は動きベクトルメモリであり、動きベクトル復号部６０７によって復号済みの動きベクトルを格納する。動きベクトルメモリ６０８に格納された復号済みの動きベクトルは、後に復号するブロックにおいて動きベクトルの予測を行う際に参照するために用いられる。
【００７２】
６０９はＩＢＣ予測部であり、コピーベクトル復号部６０５によって復号されたコピーベクトルを用いて、復号対象のピクチャの復号済みで得られている再生画像を参照して、復号対象のブロックの予測画像となるＩＢＣ予測ブロックデータを算出する。さらに、ＩＢＣ予測部６０９は、算出したＩＢＣ予測ブロックデータを後段の再構成部６１４に出力する。６１０はインター予測部であり、動きベクトル復号部６０７によって復号された動きベクトルを用いて、復号対象のピクチャより前に復号されたピクチャの再生画像を参照して、復号対象のブロックの予測画像となるインター予測ブロックデータを算出する。そしてインター予測部６１０は、算出したインター予測ブロックデータを後段の再構成部６１４に出力する。６１１はイントラ予測部であり、分離部６０３から入力されたイントラ予測モードの符号データを復号してイントラ予測モードを再生する。さらにイントラ予測部６１１は、再生したイントラ予測モードに基づいて、復号対象のピクチャ内の、復号対象のブロックの周辺の、復号済みの画素値を用いてイントラ予測ブロックデータを算出する。そして、イントラ予測部６１１は算出したイントラ予測ブロックデータを後段の再構成部６１４に出力する。
【００７３】
６１２は復号部であり、符号バッファ６０２から分離部６０３を介して入力された量子化係数に関する符号データを復号して量子化係数を再生する。６１３は逆量子化・逆変換部であり、復号部６１２から入力された量子化係数を逆量子化して直交変換係数を再生し、さらに再生した直交変換係数に逆直交変換を施し、復号対象のブロックの予測誤差を生成する。６１４は再構成部であり、逆量子化・逆変換部６１３で再生された予測誤差と、ヘッダ復号部６０４で復号されたブロック符号化モード、ＩＢＣ予測モードに基づいて予測ブロックデータを選択して入力する。即ち、再構成部６１４は、ＩＢＣ予測部６０９、インター予測部６１０、及びイントラ予測部６１１から出力される予測ブロックデータを選択して入力する。そして再構成部６１４は、選択した予測ブロックデータと、復号部６１２及び逆量子化・逆変換部６１３の処理によって復号された予測誤差とから、復号対象のピクチャの再生画像を生成する。
【００７４】
６１５はカレントピクチャメモリであり、再構成部６１４によって生成された復号対象のピクチャの再生画像を格納する。６１６はピクチャメモリであり、復号対象のピクチャ以前に復号されたピクチャの再生画像を格納する。６１７は出力部であり、再構成部６１４によって再生された再生画像の画像データを画像復号装置６００外部に出力する。そして、６１８は画像復号装置６００全体を制御する制御部である。
【００７５】
次に、上記画像復号装置６００における画像の復号動作について、図７、及び８に示したフローチャートを用いて説明する。
【００７６】
図７は復号動作の全体を表すフローチャートである。フローチャートでは特に言及しないが、順次、入力部６０１からビットストリームが入力され、符号バッファ６０２に格納されるものとする。ステップＳ７０１においてヘッダ復号部６０４は、分離部６０３を介してシーケンスヘッダの符号データを入力し、復号する。ヘッダ復号部６０４は、そのシーケンスヘッダの中のｉｎｔｒａ＿ｂｌｏｃｋ＿ｃｏｐｙ＿ｅｎａｂｌｅｄ＿ｆｌａｇ符号を復号し、ＩＢＣ可否情報を復号する。尚、本実施形態においてＩＢＣ可否情報は、復号対象のシーケンスでイントラブロックコピーイングが行われている場合には値として１が、行われていない場合は０が再生される。ステップＳ７０２以降で、各ピクチャの復号処理を行う。
【００７７】
ステップＳ７０２以降で、各スライスの復号処理を行う。ステップＳ７０２においてヘッダ復号部６０４は、分離部６０３を介して符号バッファ６０２から入力された、復号対象のスライスに対応するスライスヘッダの符号データを復号する。ここで、スライスヘッダの符号データの復号においてヘッダ復号部６０４は、復号対象のスライスの符号化モード（スライスタイプ）を表すｓｌｉｃｅ＿ｔｙｐｅ符号の符号データを復号する。続いて、ステップＳ７０３において、各ブロックの復号を行う。
【００７８】
ここで、図８を用いてステップＳ４０７におけるブロック毎の復号処理について説明する。図８は復号対象のブロックの復号動作を表すフローチャートである。尚、分離部６０３におけるブロックに関する符号データの入力に関しては後述する。
【００７９】
ステップＳ８０１でヘッダ復号部６０４は、ステップＳ７０２で復号したスライスヘッダに含まれるｓｌｉｃｅ＿ｔｙｐｅ符号を参照し、スライスタイプがＩ＿ｓｌｉｃｅであればステップＳ８０３に進み、Ｉ＿ｓｌｉｃｅでなければステップＳ８０２に進む。
【００８０】
まず、ステップＳ８０１においてスライスタイプがＩ＿ｓｌｉｃｅでないと判定された場合について説明する。ステップＳ８０２においてヘッダ復号部６０４は、ステップＳ７０１で復号したＩＢＣ可否情報を判定する。そしてステップＳ８０２において、ＩＢＣ可否情報が、イントラブロックコピーイングが可能であることを示す場合はステップＳ８０４に進み、可能でないことを示す場合はステップＳ８０３に進む。ステップＳ８０３においてヘッダ復号部６０４は、ｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号の符号データを復号し、その値をイントラブロックコピーフラグに設定する。ステップＳ８０４にてヘッダ復号部６０４は、イントラブロックコピーフラグに０を設定する。
【００８１】
ステップＳ８０５においてヘッダ復号部６０４は、ステップＳ８０１と同様に、ステップＳ７０２で復号したｓｌｉｃｅ＿ｔｙｐｅ符号を参照してスライスタイプを判定する。そして、ステップＳ８０５においてスライスタイプがＩ＿ｓｌｉｃｅの場合はステップＳ８０６に進み、Ｉ＿ｓｌｉｃｅでなければステップＳ８０７に進む。
【００８２】
ステップＳ８０６においてヘッダ復号部６０４は、ブロック符号化モードをイントラ符号化モード（ＭＯＤＥ＿ＩＮＴＲＡ）に設定する。ステップＳ８０７においてヘッダ復号部６０４は、ｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号の符号データを復号し、ブロック符号化モードとして再生する。ステップＳ８０８においてヘッダ復号部６０４は、ステップＳ８０７において再生したブロック符号化モードを判定する。ステップＳ８０８においてブロック符号化モードがイントラ符号化モード（ＭＯＤＥ＿ＩＮＴＲＡ）であればステップＳ８０９に進み、インター符号化モード（ＭＯＤＥ＿ＩＮＴＥＲ）であればステップＳ８１４に進む。
【００８３】
まず、ステップＳ８０８においてブロック符号化モードがイントラ符号化モードであった場合について説明する。ステップＳ８０９においてヘッダ復号部６０４は、イントラブロックコピーフラグを判定する。イントラブロックコピーフラグが１であればステップＳ８１０に進み、０であればステップＳ８１２に進む。
【００８４】
ステップＳ８０９でイントラブロックコピーフラグが１であった場合について説明する。ステップＳ８１０において分離部６０３は、入力されたコピーベクトルに関する符号データをコピーベクトル復号部６０７に出力する。そして、コピーベクトル復号部６０７はコピーベクトルメモリ６０６に格納されているコピーベクトルを参照して、符号バッファ６０３から分離部６０３を介して入力したコピーベクトルに関する符号データを復号し、コピーベクトルを再生する。さらにコピーベクトル復号部６０７は、再生したコピーベクトルをコピーベクトルメモリ６０６に格納し、さらにＩＢＣ予測部６０９に出力する。次に、ステップＳ８１１においてＩＢＣ予測部６０９は、コピーベクトル復号部６０８から入力されたコピーベクトルに基づいて、カレントピクチャメモリ６１５に格納された復号対象のピクチャの再生画像の画像データからＩＢＣ予測ブロックデータを算出する。そして、ＩＢＣ予測部６０９は、算出したＩＢＣ予測ブロックデータを再構成部６１４に入力する。
【００８５】
次に、ステップＳ８１６において復号部６１２は、分離部６０３を介して予測誤差の量子化係数の符号データを入力し、これを復号して量子化係数を再生する。そして復号部６１２は、再生した量子化係数を逆量子化・逆変換部６１３に出力する。逆量子化・逆変換部６１３は、復号部６１２から入力された量子化係数を逆量子化して直交変換係数を再生し、さらに再生した直交変換係数に逆直交変換を施し、復号対象のブロックの復号されたＩＢＣ予測誤差ブロックデータを生成する。そして逆量子化・逆変換部６１３は、生成したＩＢＣ予測誤差ブロックデータを再構成部６１４に出力する。再構成部６１４は、ステップＳ８１１でＩＢＣ予測部６０９が生成したＩＢＣ予測ブロックデータと、ステップＳ８１６で逆量子化・逆変換部６１３が生成したＩＢＣ予測誤差ブロックデータとを用いて、復号対象のブロックの再生画像の画像データを算出する。そして再構成部６１４は、算出した復号対象のブロックの再生画像の画像データを、カレントピクチャメモリ６１５に出力する。その後、復号対象のブロックの復号処理を終了する。
【００８６】
次に、ステップＳ８０９でイントラブロックコピーフラグが０であった場合について説明する。ステップＳ８１２において分離部６０３は、入力されたイントラ予測モードに関する符号データをイントラ予測部６１１に出力する。そして、イントラ予測部６１１は入力されたイントラ予測モードに関する符号データを復号して、イントラ予測モードを再生する。ステップＳ８１３においてイントラ予測部６１１は、再生したイントラ予測モードに基づいて、カレントピクチャメモリ６１５に格納された復号対象のピクチャ内の、復号対象のブロックの周辺の復号済みの画素値からイントラ予測ブロックデータを算出する。そしてイントラ予測部６１１は、算出したイントラ予測ブロックデータを再構成部６１４に入力する。
【００８７】
次に、ステップＳ８１６において復号部６１２は、分離部６０３を介して入力した予測誤差の量子化係数の符号データを復号して量子化係数を再生し、再生した量子化係数を逆量子化・逆変換部６１３に出力する。逆量子化・逆変換部６１３は、復号部６１２から入力された量子化係数に逆量子化と逆直交変換の処理を施し、復号対象のブロックの復号されたイントラ予測誤差ブロックデータを生成する。そして逆量子化・逆変換部６１３は、生成したイントラ予測誤差ブロックデータを再構成部６１４に出力する。再構成部６１４は、ステップＳ８１３でイントラ予測部６１１が生成したイントラ予測ブロックデータとステップＳ８１６で逆量子化・逆変換部６１３が生成したイントラ予測誤差ブロックデータとを用いて、復号対象のブロックの復号画像の再生画像を算出する。そして再構成部６１４は、算出した復号対象のブロックの再生画像の画像データを、カレントピクチャメモリ６１５に出力する。その後、復号対象のブロックの復号処理を終了する。
【００８８】
次に、ステップＳ８０８においてブロック符号化モードがインター符号化モードであった場合について説明する。ステップＳ８１４において動きベクトル復号部６０７は、分離部６０３を介して動きベクトルに関する符号データを入力し、動きベクトルメモリ６０８に格納されている動きベクトルを参照して、入力された動きベクトルに関する符号データを復号する。そして動きベクトル復号部６０７は、復号して得られた動きベクトルを動きベクトルメモリ６０８に格納し、さらにインター予測部６１０に入力する。ステップＳ８１５においてインター予測部６１０は、以下の処理を行う。インター予測部６１０は、動きベクトル復号部６０７から入力された動きベクトルに基づいて、ピクチャメモリ６１６に格納されている復号対象のピクチャ以前に復号されたピクチャの再生画像を参照してインター予測ブロックデータを生成する。インター予測部６１０は、生成したインター予測ブロックデータを再構成部６１４に入力する。
【００８９】
次に、ステップＳ８１６において復号部６１２は、分離部６０３を介して入力した予測誤差の量子化係数の符号データを復号して量子化係数を再生し、再生した量子化係数を逆量子化・逆変換部６１３に出力する。逆量子化・逆変換部６１３は、復号部６１２から入力された量子化係数に逆量子化と逆直交変換の処理を施し、復号対象のブロックの復号されたインター予測誤差ブロックデータを生成する。そして逆量子化・逆変換部６１３は、生成したインター予測誤差ブロックデータを再構成部６１４に出力する。再構成部６１４は、ステップＳ８１５でインター予測部６１０が生成したインター予測ブロックデータとステップＳ８１６で逆量子化・逆変換部６１３が生成したインター予測誤差ブロックデータとを用いて、復号対象のブロックの復号画像の再生画像を算出する。そして再構成部６１４は、算出した復号対象のブロックの再生画像の画像データを、カレントピクチャメモリ６１５に出力する。その後、復号対象のブロックの復号処理を終了する。
【００９０】
図７に戻り、ステップＳ７０４において、画像復号装置６００全体を制御する制御部６１８は、復号対象のスライス内の全てのブロックの復号が終了したか否かを判定する。全てのブロックの復号が終了している場合、ステップＳ７０５に進み、そうでない場合はブロックのスキャン順に次のブロックの復号をステップＳ７０３に戻って行う。ステップＳ７０５において制御部６１８は、復号対象のピクチャ内の全てのスライスの復号が終了したか否かを判定する。全てのスライスの復号が終了している場合はステップＳ７０６に進み、そうでない場合はステップＳ７０２に戻り、次のスライスの復号処理を行う。
【００９１】
ステップＳ７０６において制御部６１８は、カレントピクチャメモリ６１５に格納された再生画像の画像データをピクチャメモリ６１６に移動させる。そしてピクチャメモリ６１６は、カレントピクチャメモリ６１５から移動された再生画像の画像データを用いて記録されたデータを更新する。また、制御部６１８は、カレントピクチャメモリ６１５に格納された再生画像の画像データを、出力部６１７を介して画像復号装置６００の外部に出力する。次に、ステップ７０７において制御部６１８は、復号対象のシーケンス内の全てのピクチャの復号が終了したか否かを判定する。全てのピクチャの復号が終了していない場合、ステップＳ７０２に進み、次のピクチャの復号処理を行う。終了している場合は全ての復号動作を終了する。
【００９２】
上記の構成と動作によって生成されたビットストリームの内、分離部６０３におけるブロックの符号データの入力に関して、図３のシンタックスを用いて説明する。ｃｏｄｉｎｇ＿ｕｎｉｔ（  ｘ０、  ｙ０、  ｌｏｇ２ＣｂＳｉｚｅ  ）はブロックのシンタックスを表す。
【００９３】
スライスタイプがＩ＿ｓｌｉｃｅでかつＩＢＣ可否情報が１の場合に、分離部６０３はｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号を入力し、ヘッダ復号部６０４に出力する。この条件を満たさない場合、即ちスライスタイプが非イントラスライス（Ｐ＿ｓｌｉｃｅまたはＢ＿ｓｌｉｃｅ）である場合、ｉｎｔｒａ＿ｂｃ＿ｆｌａｇ符号は出現しないので、ヘッダ復号部１０４はイントラブロックコピーフラグの値を０に設定する。続いて、スライスが非イントラスライス（Ｐ＿ｓｌｉｃｅまたはＢ＿ｓｌｉｃｅ）でかつイントラブロックコピーフラグが０の場合に分離部６０３はｐｒｅｄ＿ｍｏｄｅ＿ｆｌａｇ符号を入力し、ヘッダ復号部６０４に出力する。この時、スライスタイプがＩ＿ｓｌｉｃｅの場合とイントラブロックコピーフラグの値が１の場合にブロック符号化モード（ＣｕＰｒｅｄＭｏｄｅ［  ｘ０  ］［  ｙ０  ］）は自動的にイントラ符号化モード（ＭＯＤＥ＿ＩＮＴＲＡ）となる。このようにすることで、図３の９行目の
ｉｆ（  ＣｕＰｒｅｄＭｏｄｅ［  ｘ０  ］［  ｙ０  ］    ＝  ＝    ＭＯＤＥ＿ＩＮＴＲＡ  ）  ｛
においても、同図の１２行目の
｝  ｅｌｓｅ  ｉｆ（  ｉｎｔｒａ＿ｂｃ＿ｆｌａｇ［  ｘ０  ］［  ｙ０  ］  ）  ｛
以下のＩＢＣ予測符号化モードの復号はスライスタイプがＩ＿ｓｌｉｃｅでありかつＩＢＣ可否情報が１の場合にのみ行われることになる。即ち、非イントラスライス（Ｐ＿ｓｌｉｃｅまたはＢ＿ｓｌｉｃｅ）のブロック符号化モード（ＣｕＰｒｅｄＭｏｄｅ［  ｘ０  ］［  ｙ０  ］）がイントラ符号化モード（ＭＯＤＥ＿ＩＮＴＲＡ）であっても、イントラブロックコピーフラグの値は０である。したがってＩＢＣ予測符号化モードの復号は行われない（ＩＢＣ予測符号化モードの復号は復号処理の選択候補から外される）。
【００９４】
以上説明した画像復号装置６００の構成及び方法により、符号化側で非イントラスライス（Ｐ＿ｓｌｉｃｅ乃至Ｂ＿ｓｌｉｃｅ）においてイントラブロックコピーイングを禁止して符号化されたビットストリームを復号することができる。これによって、画像復号装置６００において非イントラスライスでの処理を簡略化することができる。尚、復号対象の画像がスクリーンコンテントであることが分かっている場合に本実施形態の処理を実行するようにしてもよい。即ち、制御部６１８が、復号対象の画像がスクリーンコンテントであるか否か判断し、スクリーンコンテントである場合に本実施形態の処理を実行する。
【００９５】
また本実施形態により、ハードウェアにおいては、Ｐ＿ｓｌｉｃｅ及びＢ＿ｓｌｉｃｅでは、ＩＢＣ予測部６０９、コピーベクトル復号部６０５及びコピーベクトルメモリ６０６の動作を停止させることで各処理部の消費電力、発熱を抑えることができる。
【００９６】
さらに、本実施形態においては、実施形態１の画像符号化装置でシンタックスを変更せずに符号化したビットストリームでも、画像復号装置を上述した図７及び図８の処理のように動作させても本発明を適用できる。また、各符号データの生成に用いる符号化方式は特に限定されない。例えば、算術符号化方式やハフマン符号化方式を用いて復号することができる。
【００９７】
また、本実施形態において、画像復号装置６００外部へ、再生画像の画像データをピクチャ単位で出力したが、スライス単位やブロック単位で外部に出力しても構わない。
【００９８】
［実施形態３］
図１、図６に示した各処理部はハードウェアでもって構成しているものとして上記実施形態では説明した。しかし、これらの図に示した各処理部で行う処理をコンピュータプログラムでもって構成しても良い。以下、図９を用いて本実施形態について説明する。図９は、上記各実施形態に係る画像符号化装置及び画像復号装置に適用可能なコンピュータのハードウェアの構成例を示すブロック図である。
【００９９】
ＣＰＵ９０１は、ＲＡＭ９０２やＲＯＭ９０３に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、上記各実施形態に係る画像符号化装置ないし画像復号装置が行うものとして上述した各処理を実行する。即ち、ＣＰＵ９０１は、図１、図６に示した各処理部として機能することになる。
【０１００】
ＲＡＭ９０２は、外部記憶装置９０６からロードされたコンピュータプログラムやデータ、Ｉ／Ｆ（インターフェース）９０７を介して外部から取得したデータなどを一時的に記憶するためのエリアを有する。更に、ＲＡＭ９０２は、ＣＰＵ９０１が各種の処理を実行する際に用いるワークエリアを有する。即ち、ＲＡＭ９０２は、例えば、ピクチャメモリとして割り当てたり、その他の各種のエリアを適宜提供したりすることができる。
【０１０１】
ＲＯＭ９０３には、本コンピュータの設定データや、ブートプログラムなどが格納されている。操作部９０４は、キーボードやマウスなどにより構成されており、本コンピュータのユーザが操作することで、各種の指示をＣＰＵ９０１に対して入力することができる。表示部９０５は、ＣＰＵ９０１による処理結果を表示する。また表示部９０５は例えば液晶ディスプレイで構成される。
【０１０２】
外部記憶装置９０６は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置９０６には、ＯＳ（オペレーティングシステム）や、図１、図６に示した各部の機能をＣＰＵ９０１に実現させるためのコンピュータプログラムが保存されている。更には、外部記憶装置９０６には、処理対象としての各画像データが保存されていても良い。
【０１０３】
外部記憶装置９０６に保存されているコンピュータプログラムやデータは、ＣＰＵ９０１による制御に従って適宜、ＲＡＭ９０２にロードされ、ＣＰＵ９０１による処理対象となる。Ｉ／Ｆ９０７には、ＬＡＮやインターネット等のネットワーク、投影装置や表示装置などの他の機器を接続することができ、本コンピュータはこのＩ／Ｆ９０７を介して様々な情報を取得したり、送出したりすることができる。９０８は上述の各部を繋ぐバスである。
【０１０４】
上述の構成からなる作動は前述のフローチャートで説明した処理をＣＰＵ９０１が中心となってその制御を行う。
【０１０５】
以上述べたような種々の実施形態により、非イントラスライスにおいて、動きベクトルとコピーベクトルの両方の探索を行う必要がなくなり、符号化及び復号処理を削減できる。このため、ハードウェアにおいては消費電力の抑制、ソフトウェアにおいては処理時間の短縮に繋がる。
【０１０６】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１０７】
１０１  入力部
１０２  スライス設定部
１０３  ＩＢＣ可否設定部
１０５  ブロック分割部
１０６  ＩＢＣ予測部
１０７  インター予測部
１０８  イントラ予測部
１０９  コピーベクトル符号化部
１１１  動きベクトル符号化部
１１３  予測符号化モード判定部
１１４  ヘッダ符号化部
１１８、６１５  カレントピクチャメモリ
１１９、６１６  ピクチャメモリ
１２０  符号化部
１２１  統合部
１２２、６１７  出力部
１２３、６１８  制御部
６０４  ヘッダ復号部
６０５  コピーベクトル復号部
６０７  動きベクトル復号部
６０９  ＩＢＣ予測部
６１０  インター予測部
６１１  イントラ予測部
６１２  復号部
６１４  再構成部
【図１】
2016001859.tif 000003
【図２】
2016001859.tif 000004
【図３】
2016001859.tif 000005
【図４】
2016001859.tif 000006
【図５】
2016001859.tif 000007
【図６】
2016001859.tif 000008
【図７】
2016001859.tif 000009
【図８】
2016001859.tif 000010
【図９】
2016001859.tif 000011
【図１０】
2016001859.tif 000012
【図１１】
2016001859.tif 000013