(57)【要約】【課題】  画像の符号化効率を向上させる。【解決手段】時間的に先行する過去参照画像に対する、符号化対象の画像の動きベクトルである順方向動きベクトルと、時間的に後行する未来参照画像に対する、符号化対象の画像の動きベクトルである逆方向動きベクトルとが検出され、順方向動きベクトルまたは逆方向動きベクトルにしたがってそれぞれ得られる予測画像に対する残差ＥｆまたはＥｂの大小関係に対応して、予測モードが選択される。この場合において、双方向予測符号化モードは、残差ＥｆまたはＥｂが所定値以上となるときにのみ、選択され得るようになされており、その所定値は、順方向動きベクトルまたは逆方向動きベクトルに対応して設定されるようになされている。【選択図】  図４
2005012838.tif 000002
【特許請求の範囲】
【請求項１】
時間的に先行する過去参照画像に対する、符号化対象の画像の動きベクトルである順方向動きベクトルと、時間的に後行する未来参照画像に対する、符号化対象の画像の動きベクトルである逆方向動きベクトルとを検出する動きベクトル検出手段と、
前記過去参照画像または未来参照画像それぞれに対する、符号化対象の画像の予測残差に基づいて、符号化対象の画像の予測モードを順方向予測符号化モード、逆方向予測符号化モード、または双方向予測符号化モードのいずれかに決定する予測モード決定手段と、
前記予測モードに対応する動き補償を行うことにより、予測画像を生成する動き補償手段と、
符号化対象の画像と、前記予測画像との差分値を演算する差分値演算手段と、
前記差分値を符号化する符号化手段とを備え、
前記予測モード決定手段は、
前記順方向動きベクトルまたは逆方向動きベクトルの大きさが大きいほどに双方向予測符号化モードが決定されにくくし、
前記過去参照画像または未来参照画像それぞれに対する予測残差をＥｆまたはＥｂとするとともに、α，β，γ，δを所定の定数とする場合において（但し、α，β，γ，δは実数であり、γ＜β）、
式Ｅｂ＞α×ＥｆかつＥｂ＞β×Ｅｆ＋（１−α×β）×δが成り立つとき、前記過去参照画像のみから予測画像を生成する順方向予測符号化モードに、前記予測モードを決定し、
式Ｅｂ≦α×ＥｆかつＥｂ＜γ×Ｅｆ＋（１−α×γ）×δが成り立つとき、前記未来参照画像のみから予測画像を生成する逆方向予測符号化モードに、前記予測モードを決定し、
式γ×Ｅｆ＋（１−α×γ）×δ≦ＥｂかつＥｂ≦β×Ｅｆ＋（１−α×β）×δが成り立つとき、前記過去参照画像および未来参照画像の両方から予測画像を生成する双方向予測符号化モードに、前記予測モードを決定し、
前記順方向動きベクトルまたは逆方向動きベクトルに対応して、前記所定の定数を設定する
ことを特徴とする画像符号化装置。
【請求項２】
前記予測モード決定手段は、前記順方向動きベクトルまたは逆方向動きベクトルに対応して、前記所定の定数δを設定する
ことを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記予測モード決定手段は、前記順方向動きベクトルまたは逆方向動きベクトルに対応して、前記所定の定数αとβを設定する
ことを特徴とする請求項１に記載の画像符号化装置。
【請求項４】
前記予測モード決定手段は、前記過去参照画像または未来参照画像に対する、符号化対象の画像の予測残差が所定値以上となる場合にのみ、前記過去参照画像および未来参照画像の両方から予測画像を生成する双方向予測符号化モードに、前記予測モードを決定する
ことを特徴とする請求項１に記載の画像符号化装置。
【請求項５】
前記予測モード決定手段は、前記順方向動きベクトルまたは逆方向動きベクトルに対応して、前記所定値を設定する
ことを特徴とする請求項４に記載の画像符号化装置。
【請求項６】
前記予測モード決定手段は、前記順方向動きベクトルおよび逆方向動きベクトルのｘ成分どうしの差と、ｙ成分どうしの差とに対応して、前記予測モードを決定する
ことを特徴とする請求項１に記載の画像符号化装置。
【請求項７】
前記予測モード決定手段は、符号化対象の画像と、前記過去参照画像または未来参照画像それぞれとの間の距離にも対応して、前記予測モードを決定する
ことを特徴とする請求項１に記載の画像符号化装置。
【請求項８】
時間的に先行する過去参照画像に対する、符号化対象の画像の動きベクトルである順方向動きベクトルと、時間的に後行する未来参照画像に対する、符号化対象の画像の動きベクトルである逆方向動きベクトルとを検出し、
前記順方向動きベクトルまたは逆方向動きベクトルに対応して、符号化対象の画像の予測モードを決定し、
前記予測モードに対応する動き補償を行うことにより、予測画像を生成し、
符号化対象の画像と、前記予測画像との差分値を演算し、
前記差分値を符号化し、
前記順方向動きベクトルまたは逆方向動きベクトルの大きさが大きいほどに双方向予測符号化モードが決定されにくくし、
前記過去参照画像または未来参照画像それぞれに対する予測残差をＥｆまたはＥｂとするとともに、α，β，γ，δを所定の定数とする場合において（但し、α，β，γ，δは実数であり、γ＜β）、
式Ｅｂ＞α×ＥｆかつＥｂ＞β×Ｅｆ＋（１−α×β）×δが成り立つとき、前記過去参照画像のみから予測画像を生成する順方向予測符号化モードに、前記予測モードを決定し、
式Ｅｂ≦α×ＥｆかつＥｂ＜γ×Ｅｆ＋（１−α×γ）×δが成り立つとき、前記未来参照画像のみから予測画像を生成する逆方向予測符号化モードに、前記予測モードを決定し、
式γ×Ｅｆ＋（１−α×γ）×δ≦ＥｂかつＥｂ≦β×Ｅｆ＋（１−α×β）×δが成り立つとき、前記過去参照画像および未来参照画像の両方から予測画像を生成する双方向予測符号化モードに、前記予測モードを決定し、
前記順方向動きベクトルまたは逆方向動きベクトルに対応して、前記所定の定数を設定する
ことを特徴とする画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化装置および画像符号化方法に関し、特に、例えば、動画像を、光磁気ディスクや磁気テープなどの記録媒体に記録したり、テレビ会議システムや、テレビ電話システム、放送用機器などにおいて、動画像を、伝送路を介して、送信側から受信側に伝送する場合などに用いて好適な画像符号化装置および画像符号化方法に関する。
【背景技術】
【０００２】
例えば、動画像をディジタル化して記録したり、伝送する場合においては、そのデータ量が膨大であることから、従来より、画像データを圧縮符号化することが行われている。動画像の代表的な符号化方式としては、動き補償予測符号化などがある。
【０００３】
動き補償予測符号化は、画像の時間軸方向の相関を利用する符号化方法で、図１３に示すように、参照する画像（参照画像）（参照フレーム）に対する、符号化対象の画像（符号化対象画像）（現フレーム）の動きベクトルを検出し、その動きベクトルにしたがって、既に符号化されて復号化された参照画像を動き補償することにより、予測画像を生成する。そして、この予測画像に対する、符号化対象画像の予測残差を求め、この予測残差と動きベクトルを符号化することにより、動画像の情報量が圧縮される。
【０００４】
動き補償予測符号化の具体的なものとしては、ＭＰＥＧ（Moving Picture Experts Group）符号化がある。これは、ＩＳＯ（国際標準化機構）とＩＥＣ（国際電気標準会議）のＪＴＣ（Joint Technical Committee）１のＳＣ（Sub Committee）９のＷＧ（Working Group）１１においてまとめられた動画像符号化方式の通称である。
【０００５】
ＭＰＥＧでは、１フレームまたは１フィールドが、１６ライン×１６画素で構成されるマクロブロックに分割され、このマクロブロック単位で、動き補償予測符号化が行われる。
【０００６】
ここで、動き補償予測符号化には、大別して、イントラ符号化と、インター符号化（非イントラ符号化）の２つの符号化方式がある。イントラ符号化では、符号化対象のマクロブロックに関して、自身の情報がそのまま符号化され、インター符号化では、他の時刻のフレーム（またはフィールド）を参照画像として、その参照画像から生成される予測画像と、自身の情報との差分が符号化される。
【０００７】
ＭＰＥＧでは、各フレームが、Ｉピクチャ（Intra coded picture）、Ｐピクチャ（Predictive coded picture）、またはＢピクチャ（Bidirectionally predictive picture）のうちのいずれかとして符号化される。また、ＭＰＥＧでは、ＧＯＰ（Group Of Picture）単位で処理が行われる。
【０００８】
即ち、ＭＰＥＧにおいては、ＧＯＰは、例えば、図１４に示すように、１７フレームで構成される。そして、いま、このＧＯＰを構成するフレームを、その先頭から、Ｆ１，Ｆ２，・・・，Ｆ１７とするとき、例えば、同図に示すように、フレームＦ１はＩピクチャとして、フレームＦ２はＢピクチャとして、フレームＦ３はＰピクチャとして処理される。その後のフレームＦ４乃至Ｆ１７は、交互に、ＢピクチャまたはＰピクチャとして処理される。
【０００９】
Ｉピクチャはイントラ符号化されるが、ＰおよびＢピクチャは、基本的に、インター符号化される。即ち、Ｐピクチャは、図１４（Ａ）に矢印で示すように、基本的には、その直前のＩまたはＰピクチャを参照画像として用いて、インター符号化される。Ｂピクチャは、図１４（Ｂ）に矢印で示すように、基本的には、その直前のＩまたはＰピクチャと、その直後のＰピクチャとの両方、あるいは、そのいずれか一方を参照画像として用いて、インター符号化される。
【００１０】
より具体的には、図１５に示すように、まず、フレームＦ１がＩピクチャとして処理される。即ち、そのすべてのマクロブロックはイントラ符号化され（ＳＰ１）、伝送データＦ１Ｘとして、伝送路を介して伝送される。
【００１１】
次に、時間的に後行する画像（未来の画像）を参照画像とする可能性のあるＢピクチャであるフレームＦ２をスキップして、ＰピクチャであるフレームＦ３が先に処理される。フレームＦ３については、その直前のＩピクチャであるフレームＦ１を参照画像として、その参照画像から生成される予測画像に対する予測残差が求められ（順方向予測符号化され）（ＳＰ３）、これが、フレームＦ１に対する動きベクトルｘ３とともに、伝送データＦ３Ｘとして伝送される。あるいは、また、フレームＦ３は、フレームＦ１と同様にイントラ符号化され（ＳＰ１）、伝送データＦ３Ｘとして伝送される。Ｐピクチャを、イントラ符号化するか、または順方向予測符号化するかは、マクロブロック単位で切り換えることができる。
【００１２】
フレームＦ３の符号化後は、ＢピクチャであるフレームＦ２が処理される。Ｂピクチャは、イントラ符号化、順方向予測符号化、逆方向予測符号化、または双方向予測符号化される。
【００１３】
即ち、イントラ符号化では、フレームＦ２は、フレームＦ１と同様に、そのデータがそのまま伝送データＦ２Ｘとして伝送される（ＳＰ１）。
【００１４】
順方向予測符号化では、フレームＦ２は、その直前の（時間的に先行する）ＩまたはＰピクチャであるフレームＦ１を参照画像として、その参照画像から生成される予測画像に対する予測残差が求められ（順方向予測符号化され）（ＳＰ３）、これが、フレームＦ１に対する動きベクトルｘ１とともに、伝送データＦ２Ｘとして伝送される。
【００１５】
逆方向予測符号化では、フレームＦ２は、その直後の（時間的に後行する）ＩまたはＰピクチャであるフレームＦ３を参照画像として、その参照画像から生成される予測画像に対する予測残差が求められ（逆方向予測符号化され）（ＳＰ２）、これが、フレームＦ３に対する動きベクトルｘ２とともに、伝送データＦ２Ｘとして伝送される。
【００１６】
双方向予測符号化では、フレームＦ２は、フレームＦ１とＦ３を参照画像として、その参照画像から生成される予測画像の平均値などに対する予測残差が求められ（双方向予測符号化され）（ＳＰ４）、これが、フレームＦ１とＦ３に対する動きベクトルｘ１とｘ２とともに、伝送データＦ２Ｘとして伝送される。
【００１７】
なお、Ｂピクチャを、イントラ符号化、順方向予測符号化、逆方向予測符号化、または双方向予測符号化のうちのいずれで符号化するかも、Ｐピクチャと同様に、マクロブロック単位で切り換えることができる。
【００１８】
また、イントラ符号化に対して、順方向予測符号化、逆方向予測符号化、および双方向予測符号化が、インター符号化（非イントラ符号化）と呼ばれる。
【００１９】
ここで、以下、適宜、時間的に先行または後行する参照画像を、過去参照画像または未来参照画像という。
【００２０】
また、本件出願人は、Ｂピクチャから過去参照画像または未来参照画像それぞれまでの距離を考慮して、予測モードを決定することにより、過去参照画像と未来参照画像との間に、２枚以上のＢピクチャが配置されていても、画像を効率良く符号化することが可能な方法を、先に提案している（例えば、特許文献１参照）。
【特許文献１】特願平７−２１０６６５号公報
【発明の開示】
【発明が解決しようとする課題】
【００２１】
画像符号化装置には、Ｂピクチャのマクロブロックを符号化させる際に、イントラ符号化、順方向予測符号化、逆方向予測符号化、または両方向予測符号化のうちの、最も符号化効率の良い予測モードを選択させるのが望ましい。
【００２２】
そこで、Ｂピクチャを、上述の４つの予測モードそれぞれで符号化し、その結果得られるデータ量の最も少ないものを選択する方法がある。
【００２３】
しかしながら、この方法では、４つの予測モードそれぞれで符号化する必要があるため、処理に時間を要し、あるいは、装置規模が大きくなる。
【００２４】
そこで、過去参照画像に対する、符号化対象の画像の動きベクトルである順方向動きベクトルと、未来参照画像に対する、符号化対象の画像の動きベクトルである逆方向動きベクトルとを検出（ＭＥ（Motion Estimation））し、順方向動きベクトルまたは逆方向動きベクトルに対応して過去参照画像または未来参照画像をそれぞれ動き補償することにより予測画像を求め、それぞれの予測画像に対する、符号化対象の画像の予測残差（ME Error）（以下、適宜、動きベクトル推定残差ともいう）に対応して、Ｂピクチャの予測モードを決定する方法（正確には、３種類のインター符号化（順方向予測符号化、逆方向予測符号化、および両方向予測符号化）のうちの１つを選択する方法））を、本件出願人は先に提案している。
【００２５】
この方法（以下、適宜、第１の方法という）においては、まず最初に、例えば、符号化対象のマクロブロックと、参照画像を動き補償して得られる予測マクロブロックとの、各画素値の差分の絶対値和が、動きベクトル推定残差として求められる。
【００２６】
そして、過去参照画像または未来参照画像に対する動きベクトル推定残差を、それぞれＥｆまたはＥｂとするとき、インター符号化の中のどれを用いるかが、例えば、図１６に示すように決定される。
【００２７】
即ち、式Ｅｂ＞ｊ×Ｅｆが成り立つ場合、順方向予測符号化が選択され、式Ｅｂ＜ｋ×Ｅｆが成り立つ場合、逆方向予測符号化が選択される。そして、これら以外の場合、即ち、式ｋ×Ｅｆ≦Ｅｂ≦ｊ×Ｅｆが成り立つ場合、双方向予測符号化が選択される。
【００２８】
なお、０＜ｋ＜ｊで、図１６においては、ｊ＝２，ｋ＝１／２としてある。
【００２９】
ここで、本明細書中において、記号＜，＞は、記号≦，≧としても良い。同様に、記号≦，≧は、記号＜，＞としても良い。
【００３０】
従って、順方向動きベクトルによる予測残差Ｅｆが、逆方向動きベクトルによる予測残差Ｅｂに比べ、比較的小さい場合（図１６では、１／２未満（以下）である場合）、順方向予測符号化が選択される。また、逆方向動きベクトルによる予測残差Ｅｂが、順方向動きベクトルによる予測残差Ｅｆに比べ、比較的小さい場合（図１６では、１／２未満（以下）である場合）、逆方向予測符号化が選択される。さらに、予測残差ＥｆとＥｂとの比がそれほど大きなものおよび小さなものでない場合（図１６では、Ｅｆ／Ｅｂが１／２以上（より大きく）、かつ２以下（未満）の場合）、双方向予測が選択される。
【００３１】
ところで、画像のシーケンスが、図１４に示したように、ＩまたはＰピクチャの間に、１枚（フレームまたはフィールド）のＢピクチャが配置されて構成されている場合においては、Ｂピクチャに対する過去参照画像または未来参照画像それぞれとなるＩあるいはＰピクチャ（Ｉ／Ｐピクチャ）から、そのＢピクチャまでの時間的な距離が、いずれも同一であるから、第１の方法によって、符号化効率の向上を図ることができる。
【００３２】
しかしながら、画像のシーケンスが、ＩまたはＰピクチャの間に、２枚以上のＢピクチャが配置されて構成されている場合、即ち、例えば、図１７に示すように、２枚のＢピクチャが配置されて構成されている場合においては、インター符号化の中で、順方向予測符号化または逆方向予測符号化が、最も符号化効率が高いのにも拘らず、双方向予測符号化が選択されることがあった。
【００３３】
なお、このことは、本件発明者が行ったシミュレーションにより確認している。
【００３４】
これは、図１７に示すように、Ｂピクチャから、その過去参照画像または未来参照画像それぞれとなるＩ／Ｐピクチャまでの距離が異なることに起因する。
【００３５】
即ち、２枚のＢピクチャが配置されている場合においては、１枚目のＢピクチャについては、未来参照画像までの距離の方が、過去参照画像までの距離より遠くなり、２枚目のＢピクチャについては、その逆に、過去参照画像までの距離の方が、未来参照画像までの距離より遠くなる。従って、１枚目のＢピクチャについては、逆方向動きベクトルによる予測精度が劣化し、２枚目のＢピクチャについては、順方向動きベクトルによる予測精度が劣化する。
【００３６】
そこで、本件出願人は、Ｂピクチャから過去参照画像または未来参照画像それぞれまでの距離を考慮して、予測モードを決定することにより、過去参照画像と未来参照画像との間に、２枚以上のＢピクチャが配置されていても、画像を効率良く符号化することが可能な方法（以下、適宜、第２の方法という）を、先に提案している（例えば、特許文献１参照）。
【００３７】
この第２の方法では、符号化対象のＢピクチャが、過去参照画像または未来参照画像のうちのいずれに近いかによって、インター符号化の中から１つを選択する条件が変更されるようになされている。
【００３８】
即ち、符号化対象のＢピクチャが、過去参照画像に近い場合（例えば、図１７におけるフレームＦ２や、Ｆ５，Ｆ８，・・・）、図１８（Ａ）に示すように、式Ｅｂ＞ａ×Ｅｆが成り立つとき、順方向予測符号化が選択され、式Ｅｂ＜ｂ×Ｅｆが成り立つとき、逆方向予測符号化が選択される。また、式ｂ×Ｅｆ≦Ｅｂ≦ａ×Ｅｆが成り立つとき、双方向予測符号化が選択される。
【００３９】
但し、０＜ｂ＜ａで、また、ａは、図１６におけるｊより小さい値である。図１８（Ａ）においては、ａ＝４／３，ｂ＝１／２としてある。
【００４０】
一方、符号化対象のＢピクチャが、未来参照画像に近い場合（例えば、図１７におけるフレームＦ３や、Ｆ６，Ｆ９，・・・）、図１８（Ｂ）に示すように、式Ｅｂ＞ｃ×Ｅｆが成り立つとき、順方向予測符号化が選択され、式Ｅｂ＜ｄ×Ｅｆが成り立つとき、逆方向予測符号化が選択される。また、式ｄ×Ｅｆ≦Ｅｂ≦ｃ×Ｅｆが成り立つとき、双方向予測符号化が選択される。
【００４１】
但し、０＜ｄ＜ｃで、また、ｄは、図１６におけるｋより大きい値である。図１８（Ｂ）においては、ｃ＝２，ｄ＝３／４としてある。
【００４２】
以上のようにすることで、符号化対象のＢピクチャが、過去参照画像に近い場合には、その過去参照画像のみを用いる順方向予測符号化が選択され易くなり、また、未来参照画像に近い場合には、その未来参照画像のみを用いる逆方向予測符号化が選択され易くなる。従って、予測精度が高い参照画像だけを用いて予測符号化され易くなり、その結果、符号化効率を向上させることができる。
【００４３】
しかしながら、第２の方法によれば、例えば、動きの遅い画像、あるいは、物体が、水平方向にパンしているなど、一定の単純な動きをしている画像などを符号化対象とすると、符号化効率が若干低下する場合があった。
【００４４】
即ち、動きの遅い画像や、一定の単純な動きをしている画像については、順方向予測符号化または逆方向予測符号化するより、双方向予測符号化する方が予測精度が高くなり、従って、符号化効率も高くなる。しかしながら、第２の方法では、図１８に示したように、図１６における場合に比較して、双方向予測符号化が選択される範囲を狭くして、順方向予測符号化または逆方向予測符号化が選択される範囲を広くしている。これにより、第２の方法によれば、動きの遅い画像や、一定の単純な動きをしている画像を符号化する場合においても、双方向予測符号化より、順方向予測符号化または逆方向予測符号化が選択され易く、その結果、符号化効率が劣化する。
【００４５】
一方、従来においては、動きベクトルの伝送に必要なビット量を考慮せずに、インター符号化の選択（順方向予測符号化、逆方向予測符号化、または双方向予測符号化のうちのいずれか１つの選択）を行っていた。
【００４６】
即ち、従来においては、基本的に、順方向予測符号化、逆方向予測符号化、または双方向予測符号化のうちの、予測残差が最も小さいものが選択されるようになされていた。
【００４７】
しかしながら、例えば、順方向予測符号化、逆方向予測符号化、および双方向予測符号化についてのいずれの予測残差も小さい場合においては、そのうちの双方向予測符号化についてのものが最も小さくても、動きベクトルの伝送に要するビット量をも考慮すると、双方向予測符号化よりも、順方向予測符号化または逆方向予測符号化の方が、符号化効率が良くなることがあった。
【００４８】
なお、このようなケースは、例えば、動きの速い画像を符号化する場合に生じることが多かった。
【００４９】
本発明は、このような状況に鑑みてなされたものであり、画像の符号化効率を、より向上させることができるようにするものである。
【課題を解決するための手段】
【００５０】
本発明の画像符号化装置は、時間的に先行する過去参照画像に対する、符号化対象の画像の動きベクトルである順方向動きベクトルと、時間的に後行する未来参照画像に対する、符号化対象の画像の動きベクトルである逆方向動きベクトルとを検出する動きベクトル検出手段と、過去参照画像または未来参照画像それぞれに対する、符号化対象の画像の予測残差に基づいて、符号化対象の画像の予測モードを順方向予測符号化モード、逆方向予測符号化モード、または双方向予測符号化モードのいずれかに決定する予測モード決定手段と、予測モードに対応する動き補償を行うことにより、予測画像を生成する動き補償手段と、符号化対象の画像と、予測画像との差分値を演算する差分値演算手段と、差分値を符号化する符号化手段とを備え、予測モード決定手段は、順方向動きベクトルまたは逆方向動きベクトルの大きさが大きいほどに双方向予測符号化モードが決定されにくくし、過去参照画像または未来参照画像それぞれに対する予測残差をＥｆまたはＥｂとするとともに、α，β，γ，δを所定の定数とする場合において（但し、α，β，γ，δは実数であり、γ＜β）、式Ｅｂ＞α×ＥｆかつＥｂ＞β×Ｅｆ＋（１−α×β）×δが成り立つとき、過去参照画像のみから予測画像を生成する順方向予測符号化モードに、予測モードを決定し、式Ｅｂ≦α×ＥｆかつＥｂ＜γ×Ｅｆ＋（１−α×γ）×δが成り立つとき、未来参照画像のみから予測画像を生成する逆方向予測符号化モードに、予測モードを決定し、式γ×Ｅｆ＋（１−α×γ）×δ≦ＥｂかつＥｂ≦β×Ｅｆ＋（１−α×β）×δが成り立つとき、過去参照画像および未来参照画像の両方から予測画像を生成する双方向予測符号化モードに、予測モードを決定し、順方向動きベクトルまたは逆方向動きベクトルに対応して、所定の定数を設定することを特徴とする。
【００５１】
前記予測モード決定手段には、順方向動きベクトルまたは逆方向動きベクトルに対応して、所定の定数δを設定させるようにすることができる。
【００５２】
前記予測モード決定手段には、順方向動きベクトルまたは逆方向動きベクトルに対応して、所定の定数αとβを設定させるようにすることができる。
【００５３】
前記予測モード決定手段には、過去参照画像または未来参照画像に対する、符号化対象の画像の予測残差が所定値以上となる場合にのみ、過去参照画像および未来参照画像の両方から予測画像を生成する双方向予測符号化モードに、予測モードを決定させるようにすることができる。
【００５４】
前記予測モード決定手段には、順方向動きベクトルまたは逆方向動きベクトルに対応して、所定値を設定させるようにすることができる。
【００５５】
前記予測モード決定手段には、順方向動きベクトルおよび逆方向動きベクトルのｘ成分どうしの差と、ｙ成分どうしの差とに対応して、予測モードを決定させるようにすることができる。
前記予測モード決定手段には、符号化対象の画像と、過去参照画像または未来参照画像それぞれとの間の距離にも対応して、予測モードを決定させるようにすることができる。
【００５６】
本発明の画像符号化方法は、時間的に先行する過去参照画像に対する、符号化対象の画像の動きベクトルである順方向動きベクトルと、時間的に後行する未来参照画像に対する、符号化対象の画像の動きベクトルである逆方向動きベクトルとを検出し、順方向動きベクトルまたは逆方向動きベクトルに対応して、符号化対象の画像の予測モードを決定し、予測モードに対応する動き補償を行うことにより、予測画像を生成し、符号化対象の画像と、予測画像との差分値を演算し、差分値を符号化し、順方向動きベクトルまたは逆方向動きベクトルの大きさが大きいほどに双方向予測符号化モードが決定されにくくし、過去参照画像または未来参照画像それぞれに対する予測残差をＥｆまたはＥｂとするとともに、α，β，γ，δを所定の定数とする場合において（但し、α，β，γ，δは実数であり、γ＜β）、式Ｅｂ＞α×ＥｆかつＥｂ＞β×Ｅｆ＋（１−α×β）×δが成り立つとき、過去参照画像のみから予測画像を生成する順方向予測符号化モードに、予測モードを決定し、式Ｅｂ≦α×ＥｆかつＥｂ＜γ×Ｅｆ＋（１−α×γ）×δが成り立つとき、未来参照画像のみから予測画像を生成する逆方向予測符号化モードに、予測モードを決定し、式γ×Ｅｆ＋（１−α×γ）×δ≦ＥｂかつＥｂ≦β×Ｅｆ＋（１−α×β）×δが成り立つとき、過去参照画像および未来参照画像の両方から予測画像を生成する双方向予測符号化モードに、予測モードを決定し、順方向動きベクトルまたは逆方向動きベクトルに対応して、所定の定数を設定することを特徴とする。
【００５７】
本発明の画像符号化装置および方法においては、時間的に先行する過去参照画像に対する、符号化対象の画像の動きベクトルである順方向動きベクトルと、時間的に後行する未来参照画像に対する、符号化対象の画像の動きベクトルである逆方向動きベクトルとが検出され、過去参照画像または未来参照画像それぞれに対する、符号化対象の画像の予測残差に基づいて、符号化対象の画像の予測モードが順方向予測符号化モード、逆方向予測符号化モード、または双方向予測符号化モードのいずれかに決定され、予測モードに対応する動き補償が行なわれることにより、予測画像が生成され、符号化対象の画像と、予測画像との差分値が演算され、差分値が符号化され、順方向動きベクトルまたは逆方向動きベクトルの大きさが大きいほどに双方向予測符号化モードが決定されにくくされ、過去参照画像または未来参照画像それぞれに対する予測残差がＥｆまたはＥｂとされるとともに、α，β，γ，δを所定の定数とする場合において（但し、α，β，γ，δは実数であり、γ＜β）、式Ｅｂ＞α×ＥｆかつＥｂ＞β×Ｅｆ＋（１−α×β）×δが成り立つとき、過去参照画像のみから予測画像を生成する順方向予測符号化モードに、予測モードが決定され、式Ｅｂ≦α×ＥｆかつＥｂ＜γ×Ｅｆ＋（１−α×γ）×δが成り立つとき、未来参照画像のみから予測画像を生成する逆方向予測符号化モードに、予測モードが決定され、式γ×Ｅｆ＋（１−α×γ）×δ≦ＥｂかつＥｂ≦β×Ｅｆ＋（１−α×β）×δが成り立つとき、過去参照画像および未来参照画像の両方から予測画像を生成する双方向予測符号化モードに、予測モードが決定され、順方向動きベクトルまたは逆方向動きベクトルに対応して、所定の定数が設定される。
【００５８】
本発明の画像符号化装置は、独立した装置であっても良いし、画像符号化処理を行うブロックであっても良い。
【発明の効果】
【００５９】
本発明の画像符号化装置および方法によれば、画像の動きに基づいて、効率的な符号化を行うことが可能となる。
【発明を実施するための最良の形態】
【００６０】
以下に、本発明の実施の形態を説明するが、その前に、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態（但し、一例）を付加して、本発明の特徴を記述すると、次のようになる。
【００６１】
即ち、請求項１に記載の画像符号化装置は、時間的に先行する過去参照画像に対する、符号化対象の画像の動きベクトルである順方向動きベクトルと、時間的に後行する未来参照画像に対する、符号化対象の画像の動きベクトルである逆方向動きベクトルとを検出する動きベクトル検出手段（例えば、図６に示す動きベクトル推定回路６など）と、順方向動きベクトルまたは逆方向動きベクトルに対応して、符号化対象の画像の予測モードを決定する予測モード決定手段（例えば、図７に示す予測モード決定回路２１など）と、予測モードに対応する動き補償を行うことにより、予測画像を生成する動き補償手段（例えば、図７に示す動き補償回路２０など）と、符号化対象の画像と、予測画像との差分値を演算する差分値演算手段（例えば、図７に示す演算部１１など）と、差分値を符号化する符号化手段（例えば、図７に示すＤＣＴ回路１２や、量子化回路１３、可変長符号化回路１５など）とを備えることを特徴とする。
【００６２】
なお、勿論この記載は、各手段を上記したものに限定することを意味するものではない。
【００６３】
次に、本発明の原理について説明する。
【００６４】
動画像においては、一般に、画像どうしの時間軸方向の相関は、その画像どうしの距離（間隔）が大きくなるほど小さくなる。
【００６５】
従って、例えば、図１４と同一の図１に示すような、Ｉ／Ｐピクチャの間に１枚のＢピクチャが配置されたシーケンスにおいては、Ｂピクチャと、過去参照画像または未来参照画像それぞれとの相関は等しく、その結果、過去参照画像および未来参照画像に対する動きベクトル推定残差Ｅｆ，Ｅｂについての統計的な性質も等しくなる。
【００６６】
一方、例えば、図１７と同一の図２に示すような、Ｉ／Ｐピクチャの間に２枚以上のＢピクチャが配置されたシーケンスにおいては、Ｂピクチャと、過去参照画像または未来参照画像それぞれとの相関は、その距離に対応して変化する。
【００６７】
このため、例えば、図３に示すように、ＰピクチャＰnとＰn+4との間に、３枚のＢピクチャＢn+1，Ｂn+2，Ｂn+3が配置されている場合において、この３枚のＢピクチャＢn+1，Ｂn+2，Ｂn+3を、ＰピクチャＰnまたはＰn+4それぞれを過去参照画像または未来参照画像として予測符号化すると、過去参照画像Ｐnに対するＢピクチャＢn+1，Ｂn+2，Ｂn+3それぞれの動きベクトル残差Ｅf1，Ｅf2，Ｅf3は、一般に、Ｅf1＜Ｅf2＜Ｅf3の関係になる。
【００６８】
同様に、未来参照画像Ｐn+4に対するＢピクチャＢn+1，Ｂn+2，Ｂn+3それぞれの動きベクトル残差Ｅb1，Ｅb2，Ｅb3は、一般に、Ｅb1＞Ｅb2＞Ｅb3の関係になる。
【００６９】
以上のように、Ｉ／Ｐピクチャの間に、２枚以上のＢピクチャが配置されている場合には、各Ｂピクチャについて、過去参照画像または未来参照画像それぞれまでの距離が異なるため、その相関も異なる。その結果、過去参照画像または未来参照画像に対する動きベクトル残差それぞれの統計的性質も、各Ｂピクチャによって異なり、従って、符号化効率を向上させるには、各Ｂピクチャを符号化する際の予測モードの決定方法を、その統計的性質に応じて変える必要がある。
【００７０】
次に、双方向予測符号化による予測精度は、一般に、画像の動きが速いほど低下する。このため、双方向予測符号化による場合には、順方向動きベクトルと逆方向動きベクトルとの両方を伝送しなければならないことをも考慮すると、画像の動きが速い場合には、双方向予測符号化による予測残差が最も小さいときであっても、符号化対象のＢピクチャから時間的に最も近い参照画像のみを用いて予測符号化を行う方が、発生する全体のデータ量が少なくなることが多い。
【００７１】
一方、画像の動きの速さは、例えば、動きベクトルをＭＶと表し、そのｘ成分（水平方向の成分）をｖxと、ｙ成分（垂直方向の成分）をｖyと表すとき、動きベクトルの大きさ｜ＭＶ｜＝（ｖx2＋ｖy2）1/2で表すことができる。
【００７２】
そこで、Ｉ／Ｐピクチャの間に、例えば、図２に示したように、２枚のＢピクチャが配置されている場合においては、動きベクトルの大きさ｜ＭＶ｜に対応して、次のように予測モードを設定することにより、符号化効率を向上させることができる。
【００７３】
即ち、いま、符号化対象のＢピクチャから、過去参照画像または未来参照画像までのフレーム数を、それぞれＤｆまたはＤｂとすると、Ｄｆ＝１およびＤｂ＝２の場合（符号化対象のＢピクチャからの距離が、過去参照画像の方が近い場合）、例えば、図４（Ａ）に示すように、式Ｅｂ＞ｐ×ＥｆかつＥｂ＞ｑ×Ｅｆ＋（１−ｐ×ｑ）×Ｔiが成り立つとき、順方向予測符号化を選択し、式Ｅｂ≦ｐ×ＥｆかつＥｂ＜ｒ×Ｅｆ＋（１−ｐ×ｒ）×Ｔiが成り立つとき、逆方向予測符号化を選択する。また、式ｒ×Ｅｆ＋（１−ｐ×ｒ）×Ｔi≦ＥｂかつＥｂ≦ｑ×Ｅｆ＋（１−ｐ×ｑ）×Ｔiが成り立つとき、双方向予測符号化を選択する。
【００７４】
ここで、Ｔiは０以上の定数で、０＜ｒ＜ｑであり、また、ｑは、図１６におけるｊより小さい値である。図４（Ａ）においては、ｑ＝５／４，ｒ＝３／４となっている。また、ｐ＝１となっている。
【００７５】
この場合、予測残差ＥｆがＴi未満（以下）か、または予測誤差Ｅｂがｐ×Ｔi未満となるときは、双方向予測符号化は選択されない。即ち、この場合、双方向予測符号化は、予測残差ＥｆがＴi以上となる（より大きくなる）か、または予
測誤差Ｅｂがｐ×Ｔi以上となるときに限り選択され得る。
【００７６】
従って、この場合、動きベクトルの大きさ｜ＭＶ｜が大きくなるにつれて、定数Ｔiを大きな値に設定することにより、双方向予測符号化が選択され難くなる
。
【００７７】
即ち、Ｔ1＜Ｔ2＜・・・＜Ｔn＜Ｔn+1、および０＜ｍｖ0＜ｍｖ1＜・・・＜ｍｖn-1＜ｍｖnとする場合において、動きベクトルの大きさ｜ＭＶ｜が、ｍｖ0以上ｍｖ1未満のときは、ＴiをＴ1に、ｍｖ1以上ｍｖ2未満のときは、ＴiをＴ2に、・・・、ｍｖn-1以上ｍｖn未満のときは、ＴiをＴnに、ｍｖn以上のときは、ＴiをＴn+1に設定する。このようにすることで、画像の動きが速いほど、予測精度の低下し、動きベクトルに割り当てるビット量が大きく増加する双方向予測符号化が選択され難くなり、その結果、符号化効率を向上させることができる。
【００７８】
また、この場合、符号化対象のＢピクチャが、過去参照画像に近いことから、その過去参照画像のみを用いる順方向予測符号化が選択され易くなっているので、この点からも、符号化効率を向上させることができる。
【００７９】
一方、Ｄｆ＝２およびＤｂ＝１の場合（符号化対象のＢピクチャからの距離が、未来参照画像の方が近い場合）、例えば、図４（Ｂ）に示すように、式Ｅｂ＞ｓ×ＥｆかつＥｂ＞ｔ×Ｅｆ＋（１−ｓ×ｔ）×Ｔiが成り立つとき、順方向予測符号化を選択し、式Ｅｂ≦ｓ×ＥｆかつＥｂ＜ｕ×Ｅｆ＋（１−ｓ×ｕ）×Ｔiが成り立つとき、逆方向予測符号化を選択する。また、式ｕ×Ｅｆ＋（１−ｓ×ｕ）×Ｔi≦ＥｂかつＥｂ≦ｔ×Ｅｆ＋（１−ｓ×ｔ）×Ｔiが成り立つとき、双方向予測符号化を選択する。
【００８０】
ここで、０＜ｕ＜ｔであり、また、ｕは、図１６におけるｋより大きい値である。図４（Ｂ）においては、ｔ＝４／３，ｕ＝４／５となっている。また、ｓ＝１となっている。
【００８１】
この場合も、予測残差ＥｆがＴi未満か、または予測誤差Ｅｂがｓ×Ｔi未満となるときは、双方向予測符号化は選択されない。即ち、この場合、双方向予測符号化は、予測残差ＥｆがＴi以上となるか、または予測誤差Ｅｂがｓ×Ｔi以上となるときに限り選択され得る。
【００８２】
従って、上述の場合と同様に、動きベクトルの大きさ｜ＭＶ｜が大きくなるにつれて、定数Ｔiを大きな値に設定することにより、双方向予測符号化が選択さ
れ難くなり、その結果、符号化効率を向上させることができる。
【００８３】
また、この場合、符号化対象のＢピクチャが、未来参照画像に近いことから、その未来参照画像のみを用いる逆方向予測符号化が選択され易くなっているので、この点からも、符号化効率を向上させることができる。
【００８４】
なお、画像の動きが遅い場合には、前述したように、双方向予測符号化の予測精度が高く、また、発生符号量も少なくなるので、双方向予測符号化が選択されるのが望ましい。そこで、動きベクトルの大きさ｜ＭＶ｜が所定の値ｍｖ0未満
となった場合には、例えば、図１６と同一の図５に示すように、式Ｅｂ＞ｊ×Ｅｆが成り立つときは、順方向予測符号化を選択し、式Ｅｂ＜ｋ×Ｅｆが成り立つときは、逆方向予測符号化を選択し、式ｋ×Ｅｆ≦Ｅｂ≦ｊ×Ｅｆが成り立つときは、双方向予測符号化を選択するようにする。
【００８５】
即ち、図４において、例えば、ｔ＝ｑ＝ｊ，ｒ＝ｕ＝ｋ，Ｔi＝０とする。
【００８６】
このようにすることで、動きベクトルの大きさ｜ＭＶ｜がｍｖ0未満となった場合には、予測精度の高い双方向予測符号化が選択され易くなり、その結果、符号化効率を向上させることができる。
【００８７】
なお、画像の動きの速さは、動きベクトルの大きさ｜ＭＶ｜の他、例えば、動きベクトルＭＶのｘ成分の絶対値とｙ成分の絶対値との和｜ｘ｜＋｜ｙ｜などにも反映される。そこで、上述の定数Ｔiは、この成分の絶対値和｜ｘ｜＋｜ｙ｜
に対応して設定することも可能である。
【００８８】
次に、双方向予測符号化による予測精度は、画像の動きの速さの他、その複雑さによっても変化する。即ち、双方向予測符号化による予測精度は、基本的に、画像の動きが、物体が、水平方向にパンしているなど、一定の単純なものであるときは高くなり、複雑になるほど低下する。
【００８９】
このため、双方向予測符号化による場合には、順方向動きベクトルと逆方向動きベクトルとの両方を伝送しなければならないことをも考慮すると、画像の動きが複雑な場合には、双方向予測符号化による予測残差が最も小さいときであっても、符号化対象のＢピクチャから時間的に最も近い参照画像（過去参照画像または未来参照画像までの距離が等しい場合には、そのうちのいずれか一方）のみを用いて予測符号化を行う方が、発生する全体のデータ量が少なくなることが多い。
【００９０】
一方、例えば、物体が平行移動している画像においては、その順方向動きベクトルと逆方向動きベクトルの方向は逆になる。即ち、順方向動きベクトルのｘ成分またはｙ成分の符号と、逆方向動きベクトルのｘ成分またはｙ成分の符号とは（ｘ成分どうしの符号とｙ成分どうしの符号は）、それぞれ異なるものとなる。
【００９１】
逆に、物体が複雑な動きをしている場合、ｘ成分どうしの符号またはｙ成分どうしの符号のうちの少なくとも一方は同一となる。
【００９２】
従って、例えば、いま、順方向動きベクトルのｘ成分またはｙ成分をそれぞれＦｘまたはＦｙとするとともに、逆方向動きベクトルのｘ成分またはｙ成分をそれぞれＢｘまたはＢｙとすると、次式で表されるＳＭＶは、画像の動きの複雑さを反映したものとなる。
【００９３】
ＳＭＶ＝｜Ｆｘ＋Ｂｘ｜＋｜Ｆｙ＋Ｂｙ｜
【００９４】
なお、このＳＭＶは、画像の動きの複雑さに対応して変化する他、順方向予測符号化および逆方向予測符号化の両方の予測精度が高い場合には小さくなり、いずれか一方の予測精度が低い場合には大きくなる傾向がある。
【００９５】
そこで、Ｉ／Ｐピクチャの間に、例えば、図２に示したように、２枚のＢピクチャが配置されている場合においては、ＳＭＶに対応して、次のように予測モードを設定することによっても、符号化効率を向上させることができる。
【００９６】
即ち、まず、Ｄｆ＝１およびＤｂ＝２の場合、例えば、図４（Ａ）に示したように、式Ｅｂ＞ｐ×ＥｆかつＥｂ＞ｑ×Ｅｆ＋（１−ｐ×ｑ）×Ｔiが成り立つ
とき、順方向予測符号化を選択し、式Ｅｂ≦ｐ×ＥｆかつＥｂ＜ｒ×Ｅｆ＋（１−ｐ×ｒ）×Ｔiが成り立つとき、逆方向予測符号化を選択する。また、式ｒ×
Ｅｆ＋（１−ｐ×ｒ）×Ｔi≦ＥｂかつＥｂ≦ｑ×Ｅｆ＋（１−ｐ×ｑ）×Ｔiが成り立つとき、双方向予測符号化を選択する。
【００９７】
この場合、上述したように、予測残差ＥｆがＴi未満か、または予測誤差Ｅｂがｐ×Ｔi未満となるときは、双方向予測符号化は選択されない。即ち、この場合、双方向予測符号化は、予測残差ＥｆがＴi以上となるか、または予測誤差Ｅｂがｐ×Ｔi以上となるときに限り選択され得る。
【００９８】
従って、この場合、ＳＭＶが大きくなるにつれて、定数Ｔiを大きな値に設定することにより、双方向予測符号化が選択され難くなる。
【００９９】
即ち、０＜ＭＶ0＜ＭＶ1＜・・・＜ＭＶn-1＜ＭＶnとする場合において、ＳＭＶが、ＭＶ0以上ＭＶ1未満のときは、ＴiをＴ1に、ＭＶ1以上ＭＶ2未満のときは、ＴiをＴ2に、・・・、ＭＶn-1以上ＭＶn未満のときは、ＴiをＴnに、ＭＶn以
上のときは、ＴiをＴn+1に設定する。このようにすることで、画像の動きが複雑なほど、予測精度の低下する双方向予測符号化が選択され難くなり、その結果、符号化効率を向上させることができる。
【０１００】
また、この場合、符号化対象のＢピクチャが、過去参照画像に近いことから、その過去参照画像のみを用いる順方向予測符号化が選択され易くなっているので、この点からも、符号化効率を向上させることができる。
【０１０１】
一方、Ｄｆ＝２およびＤｂ＝１の場合、例えば、図４（Ｂ）に示したように、式Ｅｂ＞ｓ×ＥｆかつＥｂ＞ｔ×Ｅｆ＋（１−ｓ×ｔ）×Ｔiが成り立つとき、順方向予測符号化を選択し、式Ｅｂ≦ｓ×ＥｆかつＥｂ＜ｕ×Ｅｆ＋（１−ｓ×ｕ）×Ｔiが成り立つとき、逆方向予測符号化を選択する。また、式ｕ×Ｅｆ＋（１−ｓ×ｕ）×Ｔi≦ＥｂかつＥｂ≦ｔ×Ｅｆ＋（１−ｓ×ｔ）×Ｔiが成り立つとき、双方向予測符号化を選択する。
【０１０２】
この場合も、予測残差ＥｆがＴi未満か、または予測誤差Ｅｂがｓ×Ｔi未満となるときは、双方向予測符号化は選択されない。即ち、この場合、双方向予測符号化は、予測残差ＥｆがＴi以上となるか、または予測誤差Ｅｂがｓ×Ｔi以上となるときに限り選択され得る。
【０１０３】
従って、やはり、上述の場合と同様に、ＳＭＶが大きくなるにつれて、定数Ｔiを大きな値に設定することにより、双方向予測符号化が選択され難くなり、その結果、符号化効率を向上させることができる。
【０１０４】
また、この場合、符号化対象のＢピクチャが、未来参照画像に近いことから、その未来参照画像のみを用いる逆方向予測符号化が選択され易くなっているので、この点からも、符号化効率を向上させることができる。
【０１０５】
なお、画像の動きが非常に単純な場合、即ち、例えば、物体が、一定方向に平行移動しているような場合には、ＳＭＶは非常に小さな値となる（理想的には、０となる）。また、この場合、前述したように、双方向予測符号化の予測精度が高く、また、発生符号量も少なくなるので、双方向予測符号化が選択されるのが望ましい。そこで、ＳＭＶが所定の値ＭＶ0未満となった場合には、例えば、図
１６と同一の図５に示すように、式Ｅｂ＞ｊ×Ｅｆが成り立つときは、順方向予測符号化を選択し、式Ｅｂ＜ｋ×Ｅｆが成り立つときは、逆方向予測符号化を選択し、式ｋ×Ｅｆ≦Ｅｂ≦ｊ×Ｅｆが成り立つときは、双方向予測符号化を選択するようにする。
【０１０６】
即ち、図４において、例えば、ｔ＝ｑ＝ｊ，ｒ＝ｕ＝ｋ，Ｔi＝０とする。
【０１０７】
このようにすることで、ＳＭＶがＭＶ0未満となった場合には、予測精度の高い双方向予測符号化が選択され易くなり、その結果、符号化効率を向上させることができる。
【０１０８】
また、画像の動きが非常に単純な場合の例として、ビデオカメラをパンして撮影した画像があるが、この場合、動きベクトルのｘ成分が、そのｙ成分に比較して非常に大きくなる。そこで、例えば、ｇを所定の定数（１より大きい値である、例えば４など）として、式｜ｘ｜＞ｇ｜ｙ｜が成り立つときにも、上述のように、双方向予測符号化が選択され易くするようにすることが可能である。なお、このことは、式ｇ｜ｘ｜＜｜ｙ｜が成り立つときについても同様である。
【０１０９】
以上のように、画像の動きの速さや複雑さに対応して、適応的に、予測モードを選択（決定）するようにすることで、符号化効率を、従来より向上させることができる。
【０１１０】
なお、上述の場合においては、Ｉ／Ｐピクチャの間に、２枚のＢピクチャが配置されているとしたが、その間に、１枚だけまたは３枚以上のＢピクチャが配置されている場合についても同様のことがいえる。
【０１１１】
次に、図６および図７は、本発明を適用した画像符号化装置の一実施の形態の構成を示している。
【０１１２】
この画像符号化装置は、上述した、例えば、画像の動きの複雑さを反映するＳＭＶに対応して予測モードを決定し、画像を、動き補償とＤＣＴ（Discrete Cosine Transform）とを組み合わせたハイブリッド符号化するようになされている
。
【０１１３】
即ち、符号化すべき画像データは、例えば、フレーム（またはフィールド）単位で、画像符号化タイプ指定回路３に供給される。画像符号化タイプ指定回路３は、そこに入力されるフレームを、Ｉ，Ｐ、またはＢピクチャ（以下、適宜、これらをまとめてピクチャタイプという）のいずれとして処理するのかを指定する。
【０１１４】
具体的には、画像符号化タイプ指定回路３は、例えば、図８（Ａ）に示すように、そこに入力される１６フレームの画像Ｆ１乃至Ｆ１６を１ＧＯＰのデータとして処理し、同図（Ｂ）に示すように、最初のフレームＦ１をＩピクチャとして、２番目および３番目のフレームＦ２およびＦ３をＢピクチャとして、４番目のフレームＦ４をＰピクチャとして指定する。さらに、画像符号化タイプ指定回路３は、５番目および６番目のフレームＦ５およびＦ６をＢピクチャとして、７番目のフレームＦ７をＰピクチャとして指定し、以下、同様にして、残りのフレームＦ８乃至Ｆ１６を、ＢまたはＰピクチャとして指定する。
【０１１５】
なお、図８（Ｂ）（同図（Ｃ）についても同様）において、Ｉ，Ｐ，Ｂに付してある下付けの数字は、ＭＰＥＧにおけるテンポラルリファレンス（temporal referencd）に相当し、各フレームの表示順を表す。
【０１１６】
画像符号化タイプ指定回路３においてピクチャタイプの指定されたフレームは、画像符号化順序替え回路４に出力される。画像符号化順序替え回路４では、フレームの並びが符号化順に並び替えられる。即ち、Ｂピクチャは、受信側において、自己が表示された後に表示される画像を参照画像（未来参照画像）として用いて復号化される場合があるため、その未来参照画像が既に復号化されていないと、Ｂピクチャを復号化することができない。そこで、画像符号化順序替え回路４では、未来参照画像となるフレームが、Ｂピクチャより先に符号化されるように、ＧＯＰを構成するフレームの並びが替えられる。
【０１１７】
具体的には、例えば、図８（Ｃ）に示すように並び替えられる。
【０１１８】
画像符号化順序替え回路４で並びの替えられたフレームのシーケンスは、スキャンコンバータ５に供給される。スキャンコンバータ５では、ラスタスキャンで入力されるフレームがブロックフォーマットの信号に変換される。
【０１１９】
即ち、スキャンコンバータ５には、例えば、Ｈドットで構成されるラインを、Ｖラインだけ集めたフレームフォーマットの画像データが入力される。そして、スキャンコンバータ５は、この画像データを、図９（Ａ）に示すように、１６ラインで構成されるＮ個のスライスに区分し（従って、ここでは、Ｖ＝１６×Ｎ）、さらに、同図（Ｂ）に示すように、各スライスを、１６ドットごとに区分することで、Ｍ個のマクロブロックに分割する（従って、ここでは、Ｈ＝１６×Ｍ）。
【０１２０】
従って、各マクロブロックは、１６×１６ドットに対応する輝度信号で構成される。なお、マクロブロックは、図９（Ｃ）に示すように、８×８ドットに対応する輝度信号Ｙ［１］乃至Ｙ［４］に区分され、さらに、マクロブロックには、８×８ドットに対応する色差信号Ｃｂ［５］とＣｒ［６］が対応付けられる。後述するＤＣＴ回路１２（図７）では、この８×８ドットのブロック単位で、ＤＣＴ処理が施される。
【０１２１】
以上のようにして、スキャンコンバータ５で得られたマクロブロックは、図７の演算部１１に供給される。
【０１２２】
図６に戻り、カウンタ９は、画像符号化順序替え回路４が出力するフレーム同期信号をカウントしている。
【０１２３】
即ち、画像符号化順序替え回路４は、スキャンコンバータ５に、並び替えたフレームを出力するタイミングで、フレーム同期信号を、カウンタ９に出力している。さらに、画像符号化順序替え回路４は、スキャンコンバータ５に出力するフレームのピクチャタイプＴＹＰＥを検出し、動きベクトル推定回路６、カウンタ９、および図７の予測モード決定回路２１に出力している。
【０１２４】
カウンタ９は、画像符号化順序替え回路４が出力するフレーム同期信号をカウントし、そのカウント値ＣＮＴを、画像間距離発生回路１０に出力する。なお、カウンタ９は、画像符号化順序替え回路４が出力するピクチャタイプＴＹＰＥがＩまたはＰピクチャのとき、そのカウント値ＣＮＴを、例えば０にリセットするようになされている。
【０１２５】
従って、カウンタ９が出力するカウント値ＣＮＴは、ＩまたはＰピクチャの間に配置されたＢピクチャの数を表す。
【０１２６】
ここで、本実施の形態では、図８（Ｂ）に示したように、ＩまたはＰピクチャの間に、２枚のＢピクチャが配置されているので、カウンタ９が出力するカウント値ＣＮＴは、同図（Ｄ）に示すように、０，１、または２となる。
【０１２７】
画像間距離発生回路１０は、カウンタ９からのカウント値ＣＮＴに基づいて、Ｂピクチャから、その予測符号化（インター符号化）に用いられる過去参照画像または未来参照画像それぞれまでの距離（フレーム数）ＤｆまたはＤｂを算出し、図７の予測モード決定回路２１に出力する。
【０１２８】
即ち、画像間距離発生回路１０は、過去参照画像までの距離Ｄｆとして、図８（Ｅ）に示すように、カウント値ＣＮＴと同一の値を出力し、また、未来参照画像までの距離Ｄｂとして、図８（Ｆ）に示すように、カウント値ＣＮＴを逆に並べた値を出力する。
【０１２９】
一方、動きベクトル推定回路６では、順方向動きベクトルＭＶｆおよび逆方向動きベクトルＭＢｂが検出（推定）され、さらに、その順方向動きベクトルＭＶｆまたは逆方向動きベクトルＭＶｂそれぞれに対する予測残差（動きベクトル推定残差）ＥｆまたはＥｂが算出される。
【０１３０】
即ち、動きベクトル推定回路６には、画像符号化順序替え回路４から、ピクチャタイプＴＹＰＥが指定されたフレームと、そのピクチャタイプＴＹＰＥが供給されるようになされている。
【０１３１】
動きベクトル推定回路６は、画像符号化順序替え回路４から供給されるフレームを、そのピクチャタイプＴＹＰＥにしたがって、記憶部７を構成する過去参照画像記憶部７Ａ、現在画像記憶部７Ｂ、または未来参照画像記憶部７Ｃのうちのいずれかに記憶させ、現在画像記憶部７Ｂに記憶された画像を対象に、その動きベクトルを検出する。
【０１３２】
具体的には、動きベクトル推定回路６は、例えば、図８に示した場合において、Ｉ1を過去参照画像記憶部７Ａに記憶させ、Ｐ4を現在画像記憶部７Ｂに記憶させ、これにより、Ｉ1を過去参照画像として、Ｐ4の動きベクトル（順方向動きベクトル）ＭＶｆを検出し、その予測残差Ｅｆを求める。次に、現在画像記憶部７Ｂに記憶されていたＰ4を未来参照画像記憶部７Ｃに転送し、Ｂ2を現在画像記憶部７Ｂに記憶させ、これにより、Ｉ1またはＰ4を、それぞれ過去参照画像または未来参照画像として、Ｂ2の順方向動きベクトルＭＶｆまたは逆方向動きベクト
ルＭＶｂを検出し、それぞれの予測残差ＥｆまたはＥｂを求める。
【０１３３】
続いて、Ｂ3を現在画像記憶部７Ｂに記憶させ、これにより、上述した場合と同様に、Ｂ3の順方向動きベクトルＭＶｆまたは逆方向動きベクトルＭＶｂを検出し、それぞれの予測残差ＥｆまたはＥｂを求める。
【０１３４】
その後、未来参照画像記憶部７Ｃに記憶されていたＰ4を、過去参照画像記憶部７Ａに転送して記憶させる（上書きする）とともに、Ｐ7を現在画像記憶部７Ｂに記憶させ、これにより、Ｐ4を過去参照画像として、Ｐ7の動きベクトルＭＶｆを検出し、その予測残差Ｅｆを求める。
【０１３５】
次に、現在画像記憶部７Ｂに記憶されていたＰ7を未来参照画像記憶部７Ｃに転送し、Ｂ5を現在画像記憶部７Ｂに記憶させ、これにより、Ｐ4またはＰ7を、それぞれ過去参照画像または未来参照画像として、Ｂ5の順方向動きベクトルＭＶｆまたは逆方向動きベクトルＭＶｂを検出し、それぞれの予測残差ＥｆまたはＥｂを求める。以下、同様にして、動きベクトルの検出と、予測残差の算出が行われていく。
【０１３６】
ここで、予測誤差ＥｆおよびＥｂの算出方法について説明する。
【０１３７】
いま、あるマクロブロックを注目マクロブロックとし、その注目マクロブロックを構成する左からｉ番目で、上からｊ番目の画素の画素値をＡijと表すとともに、注目マクロブロックに最も近似する過去参照画像の１６×１６の範囲を構成する、左からｉ番目で、上からｊ番目の画素の画素値をＦijと表す。この場合、予測誤差Ｅｆは、例えば、次式にしたがって算出される。
【０１３８】
Ｅｆ＝Σ｜Ａij−Ｆij｜
なお、上式において、Σは、ｉ，ｊを１乃至１６に変えてのサメーションを表す。
【０１３９】
また、注目マクロブロックに最も近似する未来参照画像の１６×１６の範囲を構成する、左からｉ番目で、上からｊ番目の画素の画素値をＢijと表すと、予測誤差Ｅｂは、例えば、次式にしたがって算出される。
【０１４０】
Ｅｂ＝Σ｜Ａij−Ｂij｜
なお、上式においても、Σは、ｉ，ｊを１乃至１６に変えてのサメーションを表す。
【０１４１】
以上のようにして求められた動きベクトルＭＶｆ，ＭＢｂ、予測誤差Ｅｆ，Ｅｂは、図７の予測モード決定回路２１に供給される。また、動きベクトルＭＶｆ，ＭＢｂは、図７の可変長符号化回路１５および動き補償回路２０にも供給される。さらに、Ｂピクチャについての動きベクトルＭＶｆ，ＭＢｂは、動き量算出回路８にも供給される。
【０１４２】
動き量算出回路８では、動きベクトルＭＶｆ，ＭＢｂから、上述したＳＭＶが算出され、図７の予測モード決定回路２１に供給される。
【０１４３】
図７の予測モード決定回路２１では、距離Ｄｆ，Ｄｂ、動きベクトルＭＶｆ，ＭＶｂ、ピクチャタイプＴＹＰＥ、およびＳＭＶに基づいて、マクロブロックの予測モードが決定される。
【０１４４】
即ち、ピクチャタイプＴＹＰＥがＩピクチャである場合、即ち、符号化対象のマクロブロックがＩピクチャである場合、予測モード決定回路２１は、予測モードを、イントラ符号化モードに決定する。
【０１４５】
また、ピクチャタイプＴＹＰＥがＰピクチャである場合、即ち、符号化対象のマクロブロックがＰピクチャである場合、予測モード決定回路２１は、次のようにして、予測モードを、イントラ符号化モードまたは順方向予測符号化モードのうちのいずれかに決定する。
【０１４６】
即ち、この場合、予測モード決定回路２１は、まず、イントラ符号化時の予測残差として、例えば、次式で定義されるＥintraを算出する。
【０１４７】
Ｅintra＝Σ｜Ａij−Ａav｜
なお、上式において、Ａijは、符号化対象のマクロブロックを構成する左からｉ番目で、上からｊ番目の画素の画素値を表し、Ａavは、その平均値を表す。また、Σは、ｉ，ｊを１乃至１６に変えてのサメーションを表す。
【０１４８】
そして、予測モード決定回路２１は、イントラ符号化時の予測残差Ｅintraが、順方向予測符号化における予測残差Ｅｆより小さいとき（以下のとき）、予測モードを、イントラ符号化モードに決定する。また、イントラ符号化時の予測残差Ｅintraが、順方向予測符号化における予測残差Ｅｆ以上のとき（より大きい
とき）、予測モードを、順方向予測符号化モードに決定する。
【０１４９】
次に、ピクチャタイプＴＹＰＥがＢピクチャである場合、即ち、符号化対象のマクロブロックがＢピクチャである場合、予測モード決定回路２１は、次のようにして、予測モードを、イントラ符号化モード、順方向予測符号化モード、逆方向予測符号化モード、または双方向予測符号化モードのうちのいずれかに決定する。
【０１５０】
即ち、まず、予測モード決定回路２１は、インター符号化、つまり、順方向予測符号化モード、逆方向予測符号化モード、または双方向予測符号化モードのうちの１つを選択（決定）する。
【０１５１】
この選択は、ＳＭＶ、予測残差Ｅｆ，Ｅｂ、距離Ｄｆ，Ｄｂ、および動きベクトルＭＶｆ，ＭＶｂに基づいて行われる。
【０１５２】
即ち、まず、ＳＭＶに対応して、図４で説明した定数Ｔiが設定される。そして、距離ＤｆおよびＤｂに対応して、図４（Ａ）または図４（Ｂ）のうちのいずれか一方が選択され、その選択された方において、予測残差ＥｆとＥｂとの上述したような大小関係に基づいて、順方向予測符号化モード、逆方向予測符号化モード、または双方向予測符号化モードの中から１つが選択される。
【０１５３】
なお、ＳＭＶが所定値ＭＶ0以下の場合や、動きベクトルＭＶｆ，ＭＶｂのｘ
成分またはｙ成分の絶対値のうちのいずれか一方が、他方に比較して充分大きい場合などには、上述したように、図５で説明した予測残差ＥｆとＥｂとの大小関係に基づいて、順方向予測符号化モード、逆方向予測符号化モード、または双方向予測符号化モードの中から１つが選択される。
【０１５４】
そして、インター符号化の中から選択された予測モードに対応する予測残差が、インター符号化についての予測残差Ｅinterとされる。なお、双方向予測符号化モードが選択された場合、予測残差Ｅinterは、例えば、予測残差ＥｆとＥｂの平均値とされる。従って、順方向予測符号化モード、逆方向予測符号化モード、または双方向予測符号化モードが選択された場合、予測残差Ｅinterは、それぞれＥｆ，Ｅｂ、または（Ｅｆ＋Ｅｂ）／２とされる。
【０１５５】
さらに、予測モード決定回路２１では、上述した場合と同様にして、イントラ符号化時の予測残差Ｅintraが算出される。そして、予測モード決定回路２１は、イントラ符号化時の予測残差Ｅintraが、インター符号化の中から選択したものの予測残差Ｅinterより小さいとき、予測モードを、イントラ符号化モードに決定する。また、イントラ符号化時の予測残差Ｅintraが、予測残差Ｅinter以上のとき、予測モードを、インター符号化の中から選択したものに決定する。
【０１５６】
従って、Ｂピクチャについては、画像の動き複雑さ、さらには、参照画像までの距離に対応して、その予測モードが適応的に決定されるので、その符号化効率を、より向上させることが可能となる。
【０１５７】
以上のようにして決定された予測モードは、予測モード決定部２１から、演算部１１、可変長符号化回路１５、および動き補償回路２０に供給される。
【０１５８】
演算部１１には、予測モード決定回路２１から供給される予測モードで予測符号化すべきマクロブロック（符号化対象のマクロブロック）が、図６のスキャンコンバータ５から供給される。演算部１１は、演算器１１Ａ乃至１１ＣおよびスイッチＳＷを有しており、予測モードに対応して、スイッチＳＷが切り換えられる。
【０１５９】
即ち、演算部１１にＩピクチャのマクロブロックが入力される場合においては、予測モードはイントラ符号化モードとなっている。この場合、スイッチＳＷは端子ａを選択する。端子ａには、符号化対象のマクロブロックが、そのまま供給されるようになされており、従って、このマクロブロックは、端子ａを介して、ＤＣＴ回路１２に供給される。
【０１６０】
ＤＣＴ回路１２では、演算部１１からのマクロブロックがＤＣＴ処理され、これにより、ＤＣＴ係数に変換される。このＤＣＴ係数は、量子化回路１３に供給され、そこで、所定の量子化ステップで量子化された後、可変長符号化回路１５に供給される。
【０１６１】
可変長符号化回路１５には、量子化回路１３から量子化されたＤＣＴ係数が供給される他、同じく量子化回路１３から量子化ステップが、予測モード決定回路２１から予測モードが、図６の動きベクトル推定回路６から動きベクトルＭＶｆ，ＭＶｂが、それぞれ供給されるようになされている。可変長符号化回路１５は、適宜、これらのデータを、例えば、ハフマン符号などの可変長符号に変換し、送信バッファ１４に出力する。
【０１６２】
送信バッファ１４は、可変長符号化回路１５からの可変長符号を一時記憶し、例えば、一定のデータレートにして出力する。送信バッファ１４から出力される可変長符号は、例えば、光ディスクや、光磁気ディスク、磁気ディスク、光カード、磁気テープ、相変化ディスクなどの記録媒体３１に記録され、あるいは、衛星回線、地上波、ＣＡＴＶ網、インターネットなどの伝送路３２を介して伝送される。
【０１６３】
なお、送信バッファ１４は、そのデータの蓄積量を量子化回路１３に供給（フィードバック）するようになされている。量子化回路１３は、この蓄積量に基づいて、量子化ステップを設定するようになされている。即ち、量子化回路１３は、送信バッファ１４がオーバーフローしそうなとき、量子化ステップを大きくし、これにより、データ発生量を減少させる。また、量子化回路１３は、送信バッファ１４がアンダーフローしそうなとき、量子化ステップを小さくし、これにより、データ発生量を増加させる。以上のようにして、送信バッファ１４のオーバーフローおよびアンダーフローを防止するようになされている。
【０１６４】
一方、量子化回路１３が出力する量子化されたＤＣＴ係数と量子化ステップとは、可変長符号化回路１５の他、逆量子化回路１６にも供給される。逆量子化回路１６は、量子化回路１３からの量子化されたＤＣＴ係数を、同じく量子化回路１３からの量子化ステップで逆量子化し、その結果得られるＤＣＴ係数を、ＩＤＣＴ回路１７に出力する。
【０１６５】
ＩＤＣＴ回路１７では、逆量子化回路１６からのＤＣＴ係数が逆ＤＣＴ処理され、これにより、演算部１１の出力とほぼ同一の値の画像データが復元され、演算器１８に供給される。演算器１８は、そこに入力される画像データが、イントラ符号化されるものである場合には、特に処理を行わず、その画像データを、そのままフレームメモリ１９に出力して記憶させる。
【０１６６】
なお、フレームメモリ１９は、未来参照画像または過去参照画像として用いられる画像を記憶する未来参照画像記憶回路１９Ａおよび過去参照画像記憶回路１９Ｂを有しており、最初に符号化され、復号化されたＩピクチャは、過去参照画像記憶回路１９Ｂに記憶される。
【０１６７】
次に、演算部１１に入力されたマクロブロックがＰピクチャである場合において、予測モードがイントラ符号化モードであるときには、スイッチＳＷは端子ａを選択する。従って、この場合、Ｐピクチャのマクロブロックは、上述のＩピクチャにおける場合と同様に符号化され、また、ローカルデコードされて、フレームメモリ１９に供給される。なお、Ｉピクチャの次に符号化され、復号化されたＰピクチャは、未来参照画像記憶回路１９Ａに記憶される。
【０１６８】
一方、演算部１１に入力されたマクロブロックがＰピクチャである場合において、予測モードが順方向予測符号化モードであるときには、スイッチＳＷは、端子ｂを選択する。端子ｂには、演算器１１Ａの出力が供給されるようになされており、また、演算器１１Ａには、符号化対象のマクロブロックと、動き補償回路２０の出力とが供給されるようになされている。
【０１６９】
動き補償回路２０は、予測モードが順方向予測符号化モードの場合、過去参照画像記憶回路１９Ｂに記憶されている画像（いまの場合、Ｉピクチャ）を過去参照画像として読み出し、動きベクトルＭＶｆにしたがって動き補償を施すことにより予測画像を生成する。即ち、動き補償回路２０は、符号化対象のマクロブロックに対応する位置から、動きベクトルＭＶｆに対応する分だけずらしたアドレスのデータを、過去参照画像記憶回路１９Ｂから読み出し、これを予測画像として演算器１１Ａに供給する。
【０１７０】
演算器１１Ａは、符号化対象のマクロブロックを構成する各画素値から、予測画像を構成する、対応する画素値を減算し、その減算値（差分値）を出力する。従って、この場合、演算部１１からは、符号化対象のマクロブロックと、過去参照画像から得られた予測画像との差分値が、ＤＣＴ回路１２に供給される。この差分値は、イントラ符号化における場合と同様に符号化されて出力される。
【０１７１】
さらに、この差分値は、上述した場合と同様に、ＤＣＴ回路１２、量子化回路１３、逆量子化回路１６、およびＩＤＣＴ回路１７を介することで、元の値とほぼ同一の値に復元され、演算器１８に供給される。
【０１７２】
この場合、演算器１８には、動き補償回路２０から、演算器１１Ａに供給される予測画像と同一のデータが供給されており、演算器１８では、復元された差分値と、その予測画像とが加算され、これにより、Ｐピクチャがローカルデコードされる。このローカルデコードされたＰピクチャは、フレームメモリ１９に供給されて記憶される。
【０１７３】
なお、Ｉピクチャの次に符号化され、復号化されたＰピクチャは、上述したように、未来参照画像記憶回路１９Ａに記憶される。
【０１７４】
次に、演算部１１に入力されたマクロブロックがＢピクチャである場合において、予測モードがイントラ符号化モードまたは順方向予測符号化モードであるときには、スイッチＳＷは端子ａまたはｂをそれぞれ選択する。従って、この場合、Ｂピクチャのマクロブロックは、上述した場合と同様に符号化される。
【０１７５】
一方、演算部１１に入力されたマクロブロックがＢピクチャである場合において、予測モードが逆方向予測符号化モードであるときには、スイッチＳＷは、端子ｃを選択する。端子ｃには、演算器１１Ｂの出力が供給されるようになされており、また、演算器１１Ｂには、符号化対象のマクロブロックと、動き補償回路２０の出力とが供給されるようになされている。
【０１７６】
動き補償回路２０は、予測モードが逆方向予測符号化モードの場合、未来参照画像記憶回路１９Ａに記憶されている画像（いまの場合、Ｐピクチャ）を未来参照画像として読み出し、動きベクトルＭＶｂにしたがって動き補償を施すことにより予測画像を生成する。即ち、動き補償回路２０は、符号化対象のマクロブロックに対応する位置から、動きベクトルＭＶｂに対応する分だけずらしたアドレスのデータを、未来参照画像記憶回路１９Ａから読み出し、これを予測画像として演算器１１Ｂに供給する。
【０１７７】
演算器１１Ｂは、符号化対象のマクロブロックを構成する各画素値から、予測画像を構成する、対応する画素値を減算し、その減算値（差分値）を出力する。従って、この場合、演算部１１からは、符号化対象のマクロブロックと、未来参照画像から得られた予測画像との差分値が、ＤＣＴ回路１２に供給される。この差分値は、イントラ符号化における場合と同様に符号化されて出力される。
【０１７８】
また、演算部１１に入力されたマクロブロックがＢピクチャである場合において、予測モードが双方向予測符号化モードであるときには、スイッチＳＷは、端子ｄを選択する。端子ｄには、演算器１１Ｃの出力が供給されるようになされており、また、演算器１１Ｃには、符号化対象のマクロブロックと、動き補償回路２０の出力とが供給されるようになされている。
【０１７９】
動き補償回路２０は、予測モードが双方向予測符号化モードの場合、過去参照画像記憶回路１９Ｂに記憶されている画像（いまの場合、Ｉピクチャ）を過去参照画像として読み出し、動きベクトルＭＶｆにしたがって動き補償を施すことにより予測画像（以下、適宜、過去予測画像という）を生成するとともに、未来参照画像記憶回路１９Ａに記憶されている画像（いまの場合、Ｐピクチャ）を未来参照画像として読み出し、動きベクトルＭＶｂにしたがって動き補償を施すことにより予測画像（以下、適宜、未来予測画像という）を生成する。この過去予測画像および未来予測画像は、演算器１１Ｃに供給される。
【０１８０】
演算器１１Ｃは、まず、動き補償回路２０より供給される過去予測画像および未来予測画像の、例えば平均値（以下、適宜、平均予測画像という）を演算する。そして、演算器１１Ｃは、符号化対象のマクロブロックを構成する各画素値から、平均予測画像を構成する、対応する画素値を減算し、その減算値（差分値）を出力する。従って、この場合、演算部１１からは、符号化対象のマクロブロックと、平均予測画像との差分値が、ＤＣＴ回路１２に供給される。この差分値は、イントラ符号化における場合と同様に符号化されて出力される。
【０１８１】
なお、本実施の形態においては、Ｂピクチャは、他の画像を符号化する際に、参照画像として用いられないため、ローカルデコードされない（する必要がない）。また、過去参照画像記憶回路１９Ａおよび未来参照画像記憶回路１９Ｂは、必要に応じてバンク切り換えすることができるようになされており、これにより、過去参照画像記憶回路１９Ａおよび未来参照画像記憶回路１９Ｂに記憶されている画像データを、過去参照画像および未来参照画像のいずれとしても用いることができるようになされている。さらに、上述の処理は、輝度信号Ｙおよび色差信号Ｃｂ，Ｃｒのすべてに施される。但し、色差信号Ｃｂ，Ｃｒについては、例えば、輝度信号Ｙを処理するときに用いた動きベクトルの大きさを１／２にしたものが、その動きベクトルとして用いられる。
【０１８２】
次に、図１０のフローチャートを参照して、図７の予測モード決定回路２１の処理（予測モード決定処理）について、さらに説明する。
【０１８３】
予測モード決定回路２１では、図１０のフローチャートにしたがった処理が、マクロブロックごとに行われる。
【０１８４】
即ち、予測モード決定回路２１では、まず最初に、ステップＳ１において、ＳＭＶが、閾値ＭＶ0未満かどうかが判定される。ステップＳ１において、ＳＭＶが、閾値ＭＶ0未満であると判定された場合、ステップＳ２に進み、以下、図５で説明したようにして、インター符号化の中の１つが選択される。
【０１８５】
即ち、ステップＳ２では、予測残差Ｅｂが、予測残差Ｅｆのｊ倍（ｊ×Ｅｆ）より大きいかどうかが判定される。ステップＳ２において、Ｅｂがｊ×Ｅｆより大きいと判定された場合、ステップＳ３に進み、インター符号化として、順方向予測符号化が選択され、処理を終了する。
【０１８６】
その後は、上述したように、選択されたインター符号化についての予測残差と、イントラ符号化についての予測残差との大小関係に基づいて、最終的な予測モードが決定される。
【０１８７】
一方、ステップＳ２において、Ｅｂがｊ×Ｅｆより大きくないと判定された場合、ステップＳ４に進み、予測残差Ｅｂが、予測残差Ｅｆのｋ倍（ｋ×Ｅｆ）未満であるかどうかが判定される。ステップＳ４において、Ｅｂがｋ×Ｅｆ未満であると判定された場合、ステップＳ５に進み、インター符号化として、逆方向予測符号化が選択され、処理を終了する。
【０１８８】
また、ステップＳ４において、Ｅｂがｋ×Ｅｆ未満でないと判定された場合、即ち、Ｅｂが、ｋ×Ｅｆ以上かつｊ×Ｅｆ以下である場合、ステップＳ６に進み、インター符号化として、双方向予測符号化が選択され、処理を終了する。
【０１８９】
なお、予測モード決定回路２１は、ステップＳ１の処理を行う前に、順方向動きベクトルＭＶｆまたは逆方向動きベクトルＭＶｂのｘ成分およびｙ成分について、例えば、式｜ｘ｜＞ｇ｜ｙ｜または｜ｙ｜＞ｇ｜ｘ｜が成り立つかどうかを判定し、成り立つ場合には、ＳＭＶを、０などのＭＶ0未満の値に、強制的に設
定するようになされている。従って、例えば、物体が、ほぼ水平または垂直方向に移動しているような画像については、図５で説明したように、双方向予測符号化が選択され易い条件の下で、インター符号化の選択が行われる。
【０１９０】
一方、ステップＳ１において、ＳＭＶがＭＶ0未満でないと判定された場合、ステップＳ７1に進み、以下、図４で説明したようにして、インター符号化の選択が行われる。
【０１９１】
即ち、ステップＳ７1では、ＳＭＶが、ＭＶ0以上ＭＶ1未満であるかどうかが判定される。ステップＳ７1において、ＳＭＶが、ＭＶ0以上ＭＶ1未満であると判定された場合、ステップＳ８1に進み、定数ＴｉがＴ1に設定され、ステップＳ９に進む。
【０１９２】
また、ステップＳ７1において、ＳＭＶが、ＭＶ0以上ＭＶ1未満でないと判定された場合、ステップＳ７2に進み、ＳＭＶが、ＭＶ1以上ＭＶ2未満であるかどうかが判定される。
【０１９３】
以下、同様に、ステップＳ７cでは、ＳＭＶが、ＭＶc-1以上ＭＶc未満であるかどうかが判定され、ＳＭＶが、ＭＶc-1以上ＭＶc未満である場合には、ステップＳ８cに進み、定数ＴｉがＴcに設定され、ステップＳ９に進む。また、ＳＭＶが、ＭＶc-1以上ＭＶc未満でない場合には、ステップＳ７c+1に進む。
【０１９４】
そして、ステップＳ７nにおいて、ＳＭＶが、ＭＶn-1以上ＭＶn未満でないと判定された場合、即ち、ＳＭＶがＭＶn以上の場合、ステップＳ８n+1に進み、定数ＴｉがＴn+1に設定され、ステップＳ９に進む。
【０１９５】
ステップＳ９では、距離Ｄｆ，Ｄｂに対応した画像間距離判定処理が行われ、処理を終了する。
【０１９６】
次に、図１１のフローチャートは、図１０のステップＳ９における画像間距離判定処理の詳細を示している。なお、図１１においては、ＩまたはＰピクチャの間に、１または２枚のＢピクチャが配置されていることを前提としている。
【０１９７】
画像間距離判定処理では、まず最初に、ステップＳ１１において、Ｄｆが１で、かつＤｂが２であるかどうかが判定される。ステップＳ１１において、Ｄｆが１で、かつＤｂが２であるかと判定された場合、ステップＳ１２に進み、以下、図４（Ａ）で説明したようにして、インター符号化が選択される。
【０１９８】
即ち、ステップＳ１２では、Ｅｂが、ｑ×Ｅｆ＋（１−ｐ×ｑ）×Ｔｉより大きく、かつｐ×Ｅｆより大きいかどうかが判定される。ステップＳ１２において、Ｅｂが、ｑ×Ｅｆ＋（１−ｐ×ｑ）×Ｔｉより大きく、かつｐ×Ｅｆより大きいと判定された場合、ステップＳ１３に進み、順方向予測符号化が選択され、リターンする。また、ステップＳ１２において、Ｅｂが、ｑ×Ｅｆ＋（１−ｐ×ｑ）×Ｔｉより大きくないか、またはｐ×Ｅｆより大きくないと判定された場合、ステップＳ１４に進み、Ｅｂが、ｒ×Ｅｆ＋（１−ｐ×ｒ）×Ｔｉ未満で、かつｐ×Ｅｆ未満であるかどうかが判定される。
【０１９９】
ステップＳ１４において、Ｅｂが、ｒ×Ｅｆ＋（１−ｐ×ｒ）×Ｔｉ未満で、かつｐ×Ｅｆ未満であると判定された場合、ステップＳ１５に進み、逆方向予測符号化が選択され、リターンする。また、ステップＳ１４において、Ｅｂが、ｒ×Ｅｆ＋（１−ｐ×ｒ）×Ｔｉ未満でないか、またはｐ×Ｅｆ未満でないと判定された場合、ステップＳ１６に進み、双方向予測符号化が選択され、リターンする。
【０２００】
一方、ステップＳ１１において、Ｄｆが１でないか、またはＤｂが２でないと判定された場合、ステップＳ１７に進み、Ｄｆが２で、かつＤｂが１であるかどうかが判定される。
【０２０１】
ステップＳ１７において、Ｄｆが２で、かつＤｂが１であると判定された場合、ステップＳ１８に進み、以下、図４（Ｂ）で説明したようにして、インター符号化が選択される。
【０２０２】
即ち、ステップＳ１８では、Ｅｂが、ｔ×Ｅｆ＋（１−ｓ×ｔ）×Ｔｉより大きく、かつｓ×Ｅｆより大きいかどうかが判定される。ステップＳ１８において、Ｅｂが、ｔ×Ｅｆ＋（１−ｓ×ｔ）×Ｔｉより大きく、かつｓ×Ｅｆより大きいと判定された場合、ステップＳ１９に進み、順方向予測符号化が選択され、リターンする。また、ステップＳ１８において、Ｅｂが、ｔ×Ｅｆ＋（１−ｓ×ｔ）×Ｔｉより大きくないか、またはｓ×Ｅｆより大きくないと判定された場合、ステップＳ２０に進み、Ｅｂが、ｕ×Ｅｆ＋（１−ｓ×ｕ）×Ｔｉ未満で、かつｓ×Ｅｆ未満であるかどうかが判定される。
【０２０３】
ステップＳ２０において、Ｅｂが、ｕ×Ｅｆ＋（１−ｓ×ｕ）×Ｔｉ未満で、かつｓ×Ｅｆ未満であると判定された場合、ステップＳ２１に進み、逆方向予測符号化が選択され、リターンする。また、ステップＳ２０において、Ｅｂが、ｕ×Ｅｆ＋（１−ｓ×ｕ）×Ｔｉ未満でないか、またはｓ×Ｅｆ未満でないと判定された場合、ステップＳ２２に進み、双方向予測符号化が選択され、リターンする。
【０２０４】
一方、ステップＳ１７において、Ｄｆが２でないか、またはＤｂが１でないと判定された場合、ステップＳ２３に進み、以下、図５で説明したようにして、インター符号化の中の１つが選択される。即ち、ステップＳ２３乃至Ｓ２７において、図１０のステップＳ２乃至Ｓ６における場合とそれぞれ同様の処理が行われ、これにより、インター符号化の選択が行われる。
【０２０５】
以上のように、画像の動きの複雑さを表すＳＭＶに対応して、予測モードを決定するようにしたので、その符号化効率を、従来より向上させることが可能となる。
【０２０６】
即ち、画像の動きが複雑な場合は、予測精度、さらには、動きベクトルの伝送に必要なデータ量を考慮して、双方向予測符号化モードが選択され難くし、その逆に、画像の動きが単純な場合は、双方向予測符号化モードが選択され易くしたので、効率的な符号化を行うことが可能となる。
【０２０７】
なお、画像の動きの複雑さの他、上述したように、画像の動きの速さ、さらには、その両方などに対応して、予測モードを決定するようにすることなども可能である。
【０２０８】
また、本実施の形態では、画像の動きの複雑さを、上述のＳＭＶで表すようにしたが、その他の物理量によって表すようにすることも可能である。
【０２０９】
さらに、本実施の形態においては、画像の動きの速さを、動きベクトルの大きさや、そのｘ成分およびｙ成分の絶対値の和によって表現するようにしたが、やはり、その他の物理量により表すことも可能である。
【０２１０】
また、本実施の形態では、双方向予測符号化モードを選択され易くする場合、図５で説明した条件の下で、インター符号化の選択を行うようにしたが、その他、例えば、図１８と同様の図１２に示すような条件の下で、インター符号化の選択を行うようにすることにより、双方向予測符号化モードを選択され易くすることも可能である。但し、この場合、図１８における場合よりも、定数ａおよびｃは大きくし、または定数ｂおよびｄは小さくするのが望ましい。
【０２１１】
なお、本件発明者が行ったシミュレーションによれば、図４におけるｑまたはｔは、図１２におけるａまたはｃそれぞれより小さい方が、また、図４におけるｒまたはｕは、図１２におけるｂまたはｄそれぞれより大きい方が、符号化効率が向上することが確認されている。さらに、予測誤差ＥｂおよびＥｆが小さい場合には、双方向予測符号化モードを用いないようにする方が、符号化効率が向上することも確認されている。
【図面の簡単な説明】
【０２１２】
【図１】ＧＯＰを示す図である。
【図２】ＧＯＰを示す図である。
【図３】ＩまたはＰピクチャとの距離によって、Ｂピクチャの予測残差が異なることを説明するための図である。
【図４】予測モードを選択する条件を説明するための図である。
【図５】双方向予測符号化モードが選択され易くする場合の、予測モードを選択する条件を示す図である。
【図６】本発明を適用した画像符号化装置の一実施の形態の構成を示すブロック図である。
【図７】図６に続くブロック図である。
【図８】図６および図７の画像符号化装置の処理を説明するための図である。
【図９】図６のスキャンコンバータ５の処理を説明するための図である。
【図１０】図７の予測モード決定回路２１の処理を説明するためのフローチャートである。
【図１１】図１０におけるステップＳ９の画像間距離判定処理の詳細を説明するためのフローチャートである。
【図１２】双方向予測符号化モードが選択され易くする場合の、予測モードを選択する条件を示す図である。
【図１３】動き補償予測符号化を説明するための図である。
【図１４】ＧＯＰを示す図である。
【図１５】ＭＰＥＧ符号化を説明するための図である。
【図１６】予測モードを選択する条件を示す図である。
【図１７】ＧＯＰを示す図である。
【図１８】予測モードを選択する条件を示す図である。
【符号の説明】
【０２１３】
３  画像符号化タイプ指定回路，  ４  画像符号化順序替え回路，  ５  スキャンコンバータ，  ６  動きベクトル推定回路，  ７  記憶部，  ７Ａ  過去参照画像記憶部，  ７Ｂ  現在画像記憶部，  ７Ｃ  未来参照画像記憶部，  ８  動き量算出回路，  ９  カウンタ，  １０  画像間距離発生算出回路，  １１  演算部，  １１Ａ乃至１１Ｃ  演算器，  １２  ＤＣＴ回路，  １３  量子化回路，  １４  送信バッファ，  １５  可変長符号化回路，  １６  逆量子化回路，  １７  ＩＤＣＴ回路，  １８  演算器，  １９  フレームメモリ，  １９Ａ  未来参照画像記憶回路，  １９Ｂ  過去参照画像記憶回路，  ２０  動き補償回路，  ２１  予測モード決定回路，  ３１  記録媒体，  ３２  伝送路
【図１】
2005012838.tif 000003
【図２】
2005012838.tif 000004
【図３】
2005012838.tif 000005
【図４】
2005012838.tif 000006
【図５】
2005012838.tif 000007
【図６】
2005012838.tif 000008
【図７】
2005012838.tif 000009
【図８】
2005012838.tif 000010
【図９】
2005012838.tif 000011
【図１０】
2005012838.tif 000012
【図１１】
2005012838.tif 000013
【図１２】
2005012838.tif 000014
【図１３】
2005012838.tif 000015
【図１４】
2005012838.tif 000016
【図１５】
2005012838.tif 000017
【図１６】
2005012838.tif 000018
【図１７】
2005012838.tif 000019
【図１８】
2005012838.tif 000020