"Pスライス内の処理対象ブロックの動きベクトルと、前記処理対象ブロックの隣接ブロックの動きベクトルとを用いて所定の条件を満たすか否かを判定する判定部と、前記所定の条件を満たすと判定された処理対象ブロックの数をカウントするカウント部と、カウントされた処理対象ブロックの数を用いて時間ダイレクトモード又は空間ダイレクトモードのいずれかを選択する選択部と、選択された時間ダイレクトモード又は空間ダイレクトモードを用いて、前記Pスライス以降のBスライスの処理対象ブロックを符号化する符号化部と、を備える動画像符号化装置。前記処理対象ブロックの動きベクトルと前記隣接ブロックの動きベクトルとの第1差分が、前記処理対象ブロックの動きベクトルと既に符号化されたピクチャ内の前記処理対象ブロックと同一位置にあるブロックの動きベクトルとの第2差分以上であることが、前記所定の条件である場合、前記カウント部は、前記所定の条件を満たさない処理対象ブロックの数をさらにカウントし、前記選択部は、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数以上である場合、前記時間ダイレクトモードを選択し、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数未満である場合、前記空間ダイレクトモードを選択する請求項1記載の動画像符号化装置。前記隣接ブロックの動きベクトルが示す参照画像を用いる第1予測コストが、既に符号化されたピクチャ内の前記処理対象ブロックと同一位置にあるブロックの動きベクトルが示す参照画像を用いる第2予測コスト以上であることが、前記所定の条件である場合、前記カウント部は、前記所定の条件を満たさない処理対象ブロックの数をさらにカウントし、前記選択部は、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数以上である場合、前記時間ダイレクトモードを選択し、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数未満である場合、前記空間ダイレクトモードを選択する請求項1記載の動画像符号化装置。前記処理対象ブロックの動きベクトルと前記隣接ブロックの動きベクトルとの差分が第1閾値以上であることが、前記所定の条件である場合、前記カウント部は、前記所定の条件を満たさない処理対象ブロックの数をさらにカウントし、前記選択部は、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数以上である場合、前記時間ダイレクトモードを選択し、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数未満である場合、前記空間ダイレクトモードを選択する請求項1記載の動画像符号化装置。前記処理対象ブロックの動きベクトルと前記隣接ブロックの動きベクトルとの差分が0であり、前記処理対象ブロックのサイズが16×16であり、予測画像と前記処理対象ブロックとの差分画像の符号化データが0であることが、前記所定の条件である場合、前記選択部は、前記カウントされた処理対象ブロックの数が第2閾値以上である場合、前記空間ダイレクトモードを選択し、前記カウントされた処理対象ブロックの数が第2閾値未満である場合、前記時間ダイレクトモードを選択する請求項1記載の動画像符号化装置。前記判定部は、インター予測されるブロックに対して判定処理を行う請求項2又は5に記載の動画像処理装置。前記判定部は、インター予測されるブロックであり、前記インター予測の符号化モードに対応する予測コストが第3閾値未満であるブロックに対して判定処理を行う請求項2又は5に動画像符号化装置。Pスライス内の処理対象ブロックの動きベクトルと、前記処理対象ブロックの隣接ブロックの動きベクトルとを用いて所定の条件を満たすかを判定し、前記所定の条件を満たすと判定された処理対象ブロックの数をカウントし、カウントされた処理対象ブロックの数を用いて時間ダイレクトモード又は空間ダイレクトモードのいずれかを選択し、選択された時間ダイレクトモード又は空間ダイレクトモードを用いて、前記Pスライス以降のBスライスの処理対象ブロックを符号化する処理をコンピュータが実行する動画像符号化方法。Pスライス内の処理対象ブロックの動きベクトルと、前記処理対象ブロックの隣接ブロックの動きベクトルとを用いて所定の条件を満たすかを判定し、前記所定の条件を満たすと判定された処理対象ブロックの数をカウントし、カウントされた処理対象ブロックの数を用いて時間ダイレクトモード又は空間ダイレクトモードのいずれかを選択し、選択された時間ダイレクトモード又は空間ダイレクトモードを用いて、前記Pスライス以降のBスライスの処理対象ブロックを符号化する処理をコンピュータに実行させる動画像符号化プログラム。従来技術では、処理対象フレームと参照フレームが似ているかどうかの相関に基づいて時間ダイレクトモードか空間ダイレクトモードかを選択している。しかし、フレーム間の相関を求めるのに用いた動きベクトルと、時間ダイレクトモードで用いる動きベクトルとは同じであるとは限らない。よって、フレーム間の相関は、空間ダイレクトモードと時間ダイレクトモードの選択には直接的には関係が無いため、フレーム間の相関を用いるダイレクトモードの選択の精度は良くない。また、量子化処理後の係数を符号化したときの符号量の大小に基づいて時間ダイレクトモードか、空間ダイレクトモードかを選択する場合も、ダイレクトモードの選択の精度は良くない。例えば、係数の符号量の大小は、量子化スケールの大小により変わる。あるフレームを大きな量子化スケールで量子化すれば符号量は小さくなり、同じフレームを小さな量子化スケールで量子化すれば符号量は多くなる。よって、符号量の大小は、空間ダイレクトモードと時間ダイレクトモードとの選択には直接的には関係が無いため、符号量の大小を用いるダイレクトモードの選択は精度が良くない。また、隣接ブロックが大きな動きの場合は空間ダイレクトを選択し、そうでない場合は時間ダイレクトを選択する場合も、ダイレクトモードの選択の精度は良くない。例えば、隣接するブロックが大きな動きの場合でも、隣接するブロックと処理対象マクロブロックとが異なる動きの場合、隣接するブロックから動きを予測することはできない。また、隣接するブロックが小さな動きの場合でも、大きなオブジェクトが映っているフレームでは隣接するブロックから動きを予測する空間ダイレクトの方が有利になる。そのため、従来技術では、Bスライスで使うダイレクトモードを適切に選択することができていなかった。そこで、開示の技術は、空間又は時間ダイレクトモードのいずれかを用いることが可能なスライスに対して適切なダイレクトモードを選択することができる動画像符号化装置、動画像符号化方法及び動画像符号化プログラムを提供することを目的とする。開示の一態様における動画像符号化装置は、Pスライス内の処理対象ブロックの動きベクトルと、前記処理対象ブロックの隣接ブロックの動きベクトルとを用いて所定の条件を満たすか否かを判定する判定部と、前記所定の条件を満たすと判定された処理対象ブロックの数をカウントするカウント部と、カウントされた処理対象ブロックの数を用いて時間ダイレクトモード又は空間ダイレクトモードのいずれかを選択する選択部と、選択された時間ダイレクトモード又は空間ダイレクトモードを用いて、前記Pスライス以降のBスライスの処理対象ブロックを符号化する符号化部と、を備える。開示の技術によれば、空間又は時間ダイレクトモードのいずれかを用いることが可能なスライスに対して適切なダイレクトモードを選択し、符号化効率を良くすることができる。まず、時間ダイレクトモードの動きベクトル、空間ダイレクトモードの動きベクトルの傾向について説明する。時間ダイレクトモードの動きベクトルは、時間的に未来のフレームにおいて、処理対象のマクロブロックと同一位置にあるブロックの動きベクトルを用いて導出される。よって、過去のフレーム、処理対象フレーム、未来のフレームにおいて、同一位置のマクロブロックが似ている動きとなる場合に時間ダイレクトモードの予測コストが小さくなる傾向がある。予測コストは、符号化コストとも呼ばれる。空間ダイレクトモードの動きベクトルは、処理対象のマクロブロックに隣接するブロックのうち、すでに符号化処理が完了しているブロックの動きベクトルを用いて導出される。処理対象のマクロブロックに隣接するブロックは、周辺ブロック又は隣接ブロックともいう。よって、周辺ブロックと似ている動きとなるマクロブロックが多い場合に空間ダイレクトモードの予測コストが小さくなる傾向がある。以上の性質から、大きなオブジェクトが映っている動画像の場合、オブジェクト内のマクロブロックは同じ動きとなり、周辺ブロックから動きが予想できる。よって、この場合は、空間ダイレクトモードを選択した方が符号化効率の面で有利である。一方、異なる動きを含む複数のオブジェクトがそれぞれ数フレーム時間の間に渡って一定の速度で動いている動画像の場合、周辺ブロックから動きを予測できず、未来フレームの同一位置のマクロブロックから動きを予測した方が適切な予測ができる。よって、この場合は、時間ダイレクトモードを選択した方が符号化効率の面で有利である。次に、実施例の前提となる技術について説明する。図1は、フレーム、スライス、マクロブロックの関係を示す図である。図1に示したように、一つのスライスは、少なくとも一つのマクロブロックを含む画像の領域である。一つのフレームは、少なくとも一つのスライスを含む。動画像符号化装置は、動画像に含まれる各スライスを、入力順に従って、Iスライス、Pスライス又はBスライスのいずれかに割り当てる。Iスライスに含まれるマクロブロックでは、予測モードとしてイントラ予測のみを使用する。イントラ予測とは、画面内予測であり、符号化済みである周辺ブロックの画素値から予測画像を生成する予測方式で、複数の予測モードが存在する。処理対象のマクロブロックは、予測画像との間で各画素の差分値で算出される予測誤差画像が計算される。処理対象のマクロブロックは、処理対象ブロックとも呼ぶ。計算された予測誤差画像は、直交変換処理、量子化処理、エントロピー符号化処理が行われる。これにより、動画像符号化装置の出力データであるビットストリームが生成される。予測誤差画像の符号化と合わせて、どのイントラ予測モードを使用したかの情報についてもエントロピー符号化処理が行われ、ビットストリームとして出力される。Pスライスに含まれるマクロブロックでは、予測モードとしてイントラ予測の他にインター予測を使用することができる。インター予測とは、画面間予測であり、すでに符号化処理が完了した別のスライスの画像データから矩形状の画像ブロックを切り出し、それを予測画像とする予測モードである。切り出す画像ブロックの位置は、動きベクトルを用いて特定される。Iスライスの場合と同様に、予測誤差画像が計算され、直交変換処理、量子化処理、エントロピー符号化処理が行われる。これにより、ビットストリームが生成される。予測誤差画像の符号化と合わせて、どの予測モードを使用したかの情報、インター予測の場合、差分動きベクトルの情報についてもエントロピー符号化処理が行われ、ビットストリームとして出力される。差分動きベクトルとは、処理対象ブロックの動きベクトルと、符号化済みである周辺ブロックの動きベクトルから計算される予測動きベクトルとの差で計算されるベクトルである。インター予測では、マクロブロックを16×8、8×16、8×8などのサイズの複数のサブブロックに分割し、サブブロック毎に異なる動きベクトルを与え、予測画像を生成する予測モードを選択することができる。Pスライスに含まれるマクロブロックについて、ブロックサイズが16×16、動きベクトルが予測動きベクトルに一致し、予測誤差画像を直交変換処理、量子化処理を行った後、すべての係数が0となる場合がある。この場合、エントロピー符号化すべき係数が存在しないことなり、このマクロブロックは、P_Skipマクロブロックと呼ばれる。P_Skipマクロブロックでは、予測モードとしてP_Skipモードを選択したという情報のみがエントロピー符号化される。Bスライスに含まれるマクロブロックでは、Pスライスで使用することができるイントラ予測、P_Skipを除くインター予測に加えて、インター予測の種類である双予測とダイレクト予測を用いることができる。双予測は、すでに符号化処理が完了した別の2つのスライスにおける画像データから、それぞれ矩形状の画像ブロックを切り出し、画像ブロックの各画素の平均値で計算される画像ブロックを予測画像とする予測モードである。双予測の場合、2つのスライスに対して画像ブロックを切り出す位置を指定するため、動きベクトルは2つ必要となる。予測誤差画像については、直交変換処理、量子化処理、エントロピー符号化処理が行われる。これにより、ビットストリームが生成される。予測モードとして双予測を選択したことと、2つの差分動きベクトルについてもエントロピー符号化され、ビットストリームが生成される。ダイレクト予測は、2つの参照画像から切り出した画像ブロックの平均値として得られる画像を予測画像として、処理対象ブロックとの差分画像を求める双予測モードの一種である。ここでの処理対象ブロックは、例えば符号化対象のマクロブロックである。H.264/AVCは、それぞれ異なる方法で動きベクトルを算出する2種類のダイレクトモードを規定している。時間ダイレクトモードは、一方の参照画像において符号化対象のマクロブロックに対応する位置にあるマクロブロックについて、他方の参照画像に対して算出した動きベクトルから処理対象ブロックの動きベクトルを算出するモードである。一方、空間ダイレクトモードは、周辺ブロックについて得られた動きベクトルに基づいて、処理対象ブロックの動きベクトルを算出するモードである。空間ダイレクトモード及び時間ダイレクトモードのいずれの場合も、処理対象ブロックの動きベクトルは、符号化済みのマクロブロックについて得られた動きベクトルに基づいて算出することができる。以降、説明を簡単にするため、1つのフレームは、1つのスライスのみを含むものとして説明する。図2は、各フレームのスライスタイプと順序の例を示す図である。図2Aは、撮像装置で撮影され、動画像符号化装置に入力される画像の順序と入力順序に対するIスライス、PスライスおよびBスライスの割り当て例を示す。動画像符号化装置に入力されたフレームのデータは、一旦フレームメモリに蓄積される。図2Bは、画像の符号化順を示す。図2Bに示した順序で、フレームメモリから画像を読み出し、順次符号化処理が行われる。例えば、B4、B5、P6の順で動画像符号化装置に入力されたスライスは、P6、B4、B5の順で符号化処理が行われる。開示の技術では、例えば、P6スライスの符号化処理時に、B4、B5スライスで選択するダイレクトモードを決定する。同様に、P9スライスの符号化処理時に、B7、B8スライスで選択するダイレクトモードを決定する。B4、B5スライスでは、P6フレームの符号化処理時に選択したダイレクトモードを適用して符号化処理を行い、B7、B8スライスでは、P9スライスの符号化処理時に選択したダイレクトモードを適用して符号化処理を行う。以上を踏まえ、添付図面を参照しながら実施例について詳細に説明する。[実施例]<構成>図3は、実施例における動画像符号化装置1の構成の一例を示すブロック図である。実施例における動画像符号化装置1は、符号化部10と、モード選択部20と、外部メモリ30とを備える。動画像符号化装置1は、例えば、プロセッサやDSPおよびメモリなどで構成されるコンピュータを、インストールしたプログラムで動作させることにより実現される。または、動画像符号化装置1は、ハードワイヤードロジックにより構成された専用の回路やマッピング情報により回路構成が変更されるFPGAFieldProgrammableGateArrayなどにより実現される。図3に示す符号化部10は、符号化規格に準拠した符号化を行う。符号化部10は、例えば、H.264エンコーダである。符号化部10は、イントラ予測符号化部101と、イントラコスト算出部102と、インター予測符号化部103と、インターコスト算出部104と、モード決定部105と、直交変換量子化部106と、エントロピー符号化部107と、復号画像生成部108とを備える。符号化部10は、入力端子Pinを介して入力される動画像に含まれる各フレームの画像を、マクロブロック毎に符号化する。符号化部10は、符号化結果であるビットストリームを、出力端子Poutを介して出力する。イントラ予測符号化部101は、処理対象ブロックに対して画面内予測モードに含まれる各種のイントラ予測モードで符号化する。イントラ予測符号化部101は、符号化結果をモード決定部105及びイントラコスト算出部102に出力する。また、イントラ予測符号化部101は、生成した予測画像を復号画像生成部108に出力する。イントラコスト算出部102は、各種のイントラ予測モードに対する符号化結果に基づき、画面内予測モードに含まれる各種類の予測モードについて、それぞれの予測コストを算出する。算出した予測コストは、モード決定部105に出力される。インター予測符号化部103は、処理対象ブロックに対して画面間予測モードに含まれる各種のインター予測モードで符号化する。インター予測符号化部103は、符号化結果をインターコスト算出部104及びモード決定部105に出力する。また、インター予測符号化部103は、生成した予測画像を復号画像生成部108に出力する。インターコスト算出部104は、各種の画面間予測モードに含まれる各種類のインター予測モードについて、それぞれの予測コストを算出する。算出した予測コストは、モード決定部105に出力される。インターコスト算出部104は、マクロブロックを16×16、16×8、8×16、8×8に分割する各モードそれぞれに最適な動きベクトルと、最適な動きベクトルにおける予測コストを算出する。予測コストは、予測画像と処理対象マクロブロックとの間の類似度と予測モードの情報をエントロピー符号化した際に想定されるビットストリームのサイズとから計算される。ここで、ダイレクトモードにおける予測コストの算出について図4及び図5を用いて説明する。図4は、時間ダイレクトモードの予測コストを算出する処理を説明する図である。なお、図4及び図5に示す符号MBxは、符号化対象のマクロブロックを示す。図4において、符号P3,P6は、符号B4で示したBフレームを挟む2枚のPフレームを示す。P3フレームは、符号化対象のB4フレームより前に入力された前方向参照フレームである。一方、P6フレームは、符号化対象のB4フレームより後に入力された後方向参照フレームである。また、P6フレームに含まれるマクロブロックMBL1は、符号化対象のマクロブロックMBxに対応する位置にあるマクロブロックである。そして、このマクロブロックMBL1の左上の頂点を始点とするベクトルmvcolは、P6フレームを符号化した際に、マクロブロックMBL1について得られた動きベクトルである。P3フレームにおいて、符号Ref-colで示した矩形は、マクロブロックMBL1の符号化に用いられた参照画像である。符号化対象のマクロブロックMBxの前方向参照フレームに対する動きベクトルmvL0は、2つのPフレーム間の時間間隔tdとP3フレームと、B4フレームとの間の時間間隔tbと、上述したベクトルmvcolとを用いて、式のように表される。mvL0=mvcol×tb/td式1そして、符号化対象のマクロブロックMBxの後方向参照フレームに対する動きベクトルmvL1は、この動きベクトルmvL0とベクトルmvcolとを用いて、式のように表される。mvL1=mvL0-mvcol式2図4に示す符号Ref-L0,Ref-L1で示した矩形は、このようにして算出した動きベクトルmvL0,mvL1に基づいて、P3フレームおよびP6フレームからそれぞれ求めた参照画像である。この2つの参照画像を平均化した画像と、符号化対象のマクロブロックとの差分画像を求めることにより、インターコスト算出部104は、予測コストを算出することができる。以上により、インターコスト算出部104は、上述した式、を用いて前方向参照フレームおよび後方向参照フレームに対する動きベクトルmvL0,mvL1を算出する。つまり、インターコスト算出部104は、復号画像保持部301に保持された前方向参照フレームおよび後方向参照フレームからそれぞれ動きベクトルmvL0,mvL1で示される前方参照画像と後方参照画像とをそれぞれ抽出する。そして、インターコスト算出部104は、前方参照画像と後方参照画像とを平均した参照画像と符号化対象のマクロブロックとの差分画像を算出する。このようにして求めた差分画像のデータ量およびダイレクトモードを示すタイプ情報のデータ量の和が、時間ダイレクトモードの予測コストとなる。図5は、空間ダイレクトモードの予測コストを算出する処理を説明する図である。図5において、符号MBa,MBb,MBcは、符号化対象のマクロブロックMBxの周辺に位置する符号化済みのマクロブロックを示す。符号mv0a、mv1aで示すベクトルは、マクロブロックMBaの符号化の際に得られた前方向参照フレームおよび後方向参照フレームに対する動きベクトルである。同様に、符号mv0b、mv1bで示すベクトルは、マクロブロックMBbの符号化の際に得られた前方向参照フレームおよび後方向参照フレームに対する動きベクトルである。また、符号mv0c、mv1cで示すベクトルは、マクロブロックMBcの符号化の際に得られた前方向参照フレームおよび後方向参照フレームに対する動きベクトルである。空間ダイレクトモードを適用する場合に、符号化対象のマクロブロックMBxの前方向参照フレームに対する動きベクトルmvL0は、上述した3つのマクロブロックの前方向参照フレームに対する動きベクトルmv0a、mv0b、mv0cのメジアンmedianとして求めることができる。同様に、符号化対象のマクロブロックMBxの後方向参照フレームに対する動きベクトルmvL1は、上述した3つのマクロブロックの後方向参照フレームに対する動きベクトルmv1a、mv1b、mv1cのメジアンmedianとして求めることができる。このようにして求めた動きベクトルmvL0,mvL1に基づいて、前方向参照フレームおよび後方向参照フレームからそれぞれ求めた参照画像を平均化した画像とマクロブロックMBxとの差分を求める点は、時間ダイレクトモードと同様である。この差分を用いて、インターコスト算出部104は、空間ダイレクトモードの予測コストを算出することができる。図3に戻り、モード決定部105は、イントラコスト算出部102とインターコスト算出部104によって算出された予測コストに基づいて、予測コストが最小となるモードを予測モードとして選択する。直交変換量子化部106は、モード決定部105が選択した予測モードを用いて生成した予測画像と、処理対象ブロックとの間で算出される予測誤差画像について、直交変換処理と量子化処理を行い、量子化後の係数を算出する。エントロピー符号化部107は、量子化後の係数を可変長符号化や算術符号化などのエントロピー符号化処理を行い、出力データであるビットストリームを生成する。また、エントロピー符号化部107は、選択された予測モードや差分動きベクトルの情報についてもエントロピー符号化する。復号画像生成部108は、直交変換量子化部106が出力する量子化後の係数と、モード決定部105が決定した予測モードに基づいて生成された予測画像とから、復号画像を生成する。予測画像は、イントラ予測符号化部101又はインター予測符号化部103から取得される。復号画像は、外部メモリ30に含まれる復号画像保持部301に蓄積され、別のスライスの符号化処理において、インター予測処理での予測画像として用いられる。イントラコスト算出部102、インターコスト算出部104で算出された各予測モードの予測コスト、モード決定部105で選択された予測モードは、予測モード保持部202に保存される。評価部201は、Pスライスの符号化処理時に、以降に符号化するBスライスのダイレクトモードを空間ダイレクトモード又は時間ダイレクトモードのどちらにしたら良いかを評価する。評価部201は、図6を用いて説明する。予測モード保持部202は、イントラコスト算出部102、インターコスト算出部104で算出された各予測モードの予測コスト、モード決定部105により選択された予測モード、評価部201により選択されたダイレクトモードなどを保持する。図6は、評価部201の機能の一例を示すブロック図である。図6に示す評価部201は、判定部211、カウント部212、選択部213を有する。判定部211は、モード決定部105から取得したPスライス内の処理対象ブロックの動きベクトルと、この処理対象ブロックに隣接するブロックの動きベクトルとを用いて所定の条件を満たすかを判定する。所定の条件については、後述する。カウント部212は、Pスライス内で、判定部211により所定の条件を満たすと判定された処理対象ブロックの数をカウントする。選択部213は、カウント部212によりカウントされたカウント値に基づいて、時間ダイレクトモード又は空間ダイレクトモードのいずれかを選択する。選択部213は、選択したダイレクトモードを予測モード保持部202に記憶する。記憶されたダイレクトモードは、以降のBスライスで用いられる。ここで、評価部201による評価方法としては、例えば以下の6つが挙げられる。以下に示す例では、図2に示すP6スライスの符号化情報に基づき、B4,B5のダイレクトモードを選択する場合を示す。方法1判定部211は、モード決定部105から16×16サイズブロック向けに算出された動きベクトルmv_currを取得する。また、判定部211は、予測モード保持部202から、処理対象ブロックの周辺MBa、MBb、MBcの位置にあるマクロブロックの16×16サイズブロック向けに算出された動きベクトルmv_a、mv_b、mv_cを取得する。また、判定部211は、予測モード保持部202から、P3スライスの同一位置のMBマクロブロックで算出された16×16サイズブロック向けの動きベクトルmv_oldを取得する。判定部211は、取得したこれらの情報を用いて、所定の条件である式3の関係を満たすかどうかを判定する。|mv_curr-mv_old|≦|mv_curr-medianmv_a,mv_b,mv_c|式3|mv|は、ベクトルの大きさを表し、√ベクトルの水平成分の2乗ベクトルの垂直成分の2乗で計算される。medianは、3つのベクトルに対し、水平成分が3つのベクトルの水平成分の中間値を表し、垂直成分が3つのベクトルの垂直成分の中間値を表すベクトルである。図7は、判定に用いるブロックと動きベクトルとの関係を示す図である。図7に示すMBxは、処理対象ブロックを示し、MBa,MBb,MBcは、MBxに隣接するブロック隣接ブロックともいうを示す。mv_currは、MBxの動きベクトルを示し、mv_a,mv_b,mv_cは、MBa,MBb,MBcそれぞれの動きベクトルを示す。mv_oldは、P6スライス以前のP3スライス内で、MBxに対応する位置にあるブロックMBxの動きベクトルを示す。図7に示す動きベクトルを用いて、判定部211は、式3を満たすか否かを判定する。図6に戻り、カウント部212は、P6スライスに含まれ、式3を満たすマクロブロックの個数をカウントする。カウント部212は、例えば、式3を満たす場合、count_temporal初期値0をインクリメントし、式3を満たさない場合、count_spatial初期値0をインクリメントする。選択部213は、count_temporalとcount_spatialの大小を比較し、count_temporalがcount_spatial以下の場合、空間ダイレクトモードを選択する、選択部213は、そうでない場合、時間ダイレクトモードを選択する。方法1を用いる判定部211は、式3を用いた判定により、時間的に相関が高い動きベクトルを持つマクロブロックが多いか、空間的に相関が高い動きベクトルを持つマクロブロックが多いかを判定している。P6スライスでB4,B5スライスに適切なダイレクトモードを判定しているが、動画像符号化装置に入力される各フレームは、時間的な相関が高いため、P6スライスで時間的な相関の高いマクロブロックが多い場合、B4、B5スライスでも同様な傾向であることが多い。したがって、上記の手順でBスライスにおける適切なダイレクトモードを選択することができる。方法2判定部211は、モード決定部105からmv_currを、予測モード保持部202からmv_a、mv_b、mv_cを取得する。判定部211は、取得した情報を用いて、所定の条件である式4を満たすかどうかを判定する。Th2≦|mv_curr-medianmv_a,mv_b,mv_c|式4閾値Th2は、実験により適切な値が設定される。例えばTh2=1画素とする。H.264/AVCでは、動きベクトルは0.25画素精度で設定できる。よって、例えば以下の条件の場合、式4の右辺は1.50となり式4を満たさない。mv_currの水平成分,mv_currの垂直成分=0.00,0.25medianmv_a,mv_b,mv_cの水平成分,medianmv_a,mv_b,mv_cの垂直成分=-0.25,1.50カウント部212は、P6スライスに含まれ、式4を満たすマクロブロックの個数をカウントする。カウント部212は、例えば、式4を満たす場合、count_temporal初期値0をインクリメントし、式4を満たさない場合、count_spatial初期値0をインクリメントする。選択部213は、count_temporalとcount_spatialの大小を比較し、count_temporalがcount_spatial以下の場合、空間ダイレクトモードを選択する。選択部213は、そうでない場合、時間ダイレクトモードを選択する。方法2の場合、mv_oldを取得する処理が不要になるため、処理量を削減し、動画像符号化装置の構成が簡単になるというメリットがある。方法3判定部211は、モード決定部105により、選択されたモードを取得する。判定部211は、所定の条件である処理対象ブロックがP_Skipであるか否かを判定する。カウント212は、P6スライスに含まれ、P_Skipであるブロックの数をカウントする。選択部213は、カウント部212によるカウント値が、閾値Th3以下の場合は時間ダイレクトモードを選択し、Th3より大きい場合は空間ダイレクトモードを選択する。例えば、1920×1088画素からなるFullHD画像の場合、8160個のマクロブロックを含むが、例としてTh3=3000とする。P_Skipのブロックは、ブロックサイズが16×16、動きベクトルがmedianmv_a,mv_b,mv_c、差分画像に関する符号化データが全くないマクロブロックを示す。P_Skipとなるマクロブロックが多い、つまり、処理対象ブロックの動きベクトルがmedianmv_a,mv_b,mv_cと同じであることが多いということは、空間的に相関の高い動きをするマクロブロックが多いことを表す。よって、P_skipの数により、ダイレクトモードの選択を行うことができる。方法4判定部211は、モード決定部105からmv_currを、予測モード保持部202からmv_a、mv_b、mv_c、mv_oldを取得する。判定部211は、空間的な相関から求めた動きベクトルmedianmv_a,mv_b,mv_cと時間的な相関から求めた動きベクトルmv_oldとで、実際に予測コストを計算する。判定部211は、動きベクトルmedianmv_a,mv_b,mv_cでの予測コストをcost_spatialとし、動きベクトルmv_oldでの予測コストをcost_temporalとする。判定部211は、所定の条件である式5を満たすか否かを判定する。cost_temporal≦cost_spatial式5カウント部212は、P6スライスに含まれ、式5を満たすマクロブロックの個数をカウントする。カウント部212は、例えば、式5を満たす場合、count_temporal初期値0をインクリメントし、式5を満たさない場合、count_spatial初期値0をインクリメントする。選択部213は、count_temporalとcount_spatialの大小を比較し、count_temporalがcount_spatial以下の場合、空間ダイレクトモードを選択する。選択部213は、そうでない場合、時間ダイレクトモードを選択する。これにより、各動きベクトルでの予測コストを実際に計算するため、ダイレクトモードの選択の精度が高まる。なお、カウント部212は、P6フレームに含まれるすべてのマクロブロックについて、cost_temporal、cost_spatialそれぞれの予測コストを合算してもよい。この場合、カウント部212は、mv_oldによる予測コストの合算をcost_tmporalとし、medianmv_a,mv_b,mv_cによる予測コストの合算をcost_spatialとする。選択部213は、cost_temporalとcost_spatialとを比較し、cost_temporalがcost_spatial以下であれば、時間ダイレクトモードを選択する。選択部213は、cost_temporalがcost_spatialより大きければ空間ダイレクトモードを選択する。これにより、各動きベクトルでの予測コストを計算し、フレーム全体の予測コストの累積に基づいて選択するため、ダイレクトモードの選択の精度が高まる。予測コストの累積は、符号化した際のビットストリームのサイズに相関性がある。方法5方法5は、方法1又は方法3との組み合わせで用いる。方法5では、Pスライス内の全てのマクロブロックに対して判定をするのではなく、インター予測が選択されたブロックのみをカウント対象とする。判定部211は、モード決定部105により決定された符号化モードを取得し、処理対象ブロックが、インター予測であるかを判定する。判定部211は、インター予測が選択された処理対象ブロックのみに対し、方法1又は方法3の所定の条件を満たすかの判定を行う。以降の処理は、方法1又は方法3と同様である。よって、カウント部212は、インター予測が選択された処理対象ブロックのみをカウント対象とする。インター予測が選択されない、すなわち、イントラ予測が選択されたマクロブロックは、他のスライスから適切な予測画像を見つけることができなかったマクロブロックである。例えば、イントラ予測が選択されたマクロブロックは、別スライスでは他のオブジェクトの後ろに隠れていたり、画面外にあって見えていなかったりするオブジェクト、又は別スライスから著しく形やテクスチャが変化するオブジェクトなどを含むマクロブロックである。この場合、適切な予測画像が得られず、モード決定部105でイントラ予測が選択される。イントラ予測が選択されるマクロブロックは、適切な予測画像が存在しないので、算出された動きベクトルは適切ではない。不適切な動きベクトルを判定部211による判定に含めると、選択部213で選択するダイレクトモードの選択結果に悪影響を与える可能性がある。よって、不適切な動きベクトルを判定対象から除外することで、選択部213によるダイレクトモードの選択精度を向上させることができる。方法6方法6は、方法5に加え、さらに、インター予測が選択された場合でも予測コストが閾値Th4以上のマクロブロックについても判定対象から除外する。閾値Th4は、実験により適切な値が設定される。判定部211は、モード決定部105から、決定された符号化モード、その予測コストを取得する。判定部211は、処理対象ブロックがイントラ予測の場合、又はインター予測であり予測コストが閾値Th4以下である場合に、その処理対象ブロックを判定対象から除外する。その他の処理は、方法1又は方法3と同様である。ダイレクトモードが意味を持つのは、ダイレクトモードの予測画像と処理対象ブロックが似ている場合である。ダイレクトモードの予測画像と、処理対象ブロックとが似ているとは、予測誤差画像に関するビットストリームのサイズが小さいことを意味する。予測コストが小さい、例えば、予測画像と処理対象ブロックとの類似度が高いほど、B4、B5スライスにおいても同一位置のマクロブロックの予測誤差画像の符号化データが0になりやすいと考えられる。よって、判定部211は、ダイレクトモードになりそうなマクロブロックのみを判定に用いることで、ダイレクトモードの選択精度を向上させることができる。これにより、動画像符号化装置1は、空間又は時間ダイレクトモードのいずれかを用いることが可能なスライスに対して適切なダイレクトモードを選択することができる。<動作>次に、実施例における動画像符号化装置1の動作について説明する。図8は、実施例における動画像符号化処理の一例を示すフローチャートである。図8に示す符号化処理は、例えば図2に示すP6のPスライスを符号化する処理を示す。ステップS100で、動画像符号化装置1は、パラメータの初期化を行う。ここでは、カウント部212で用いるパラメータを初期化する。ステップS101で、イントラコスト算出部102、インターコスト算出部104は、処理対象ブロックMBについて、Pスライスで適用される全てのイントラ予測モード及び全てのインター予測モードの予測コストを算出する。例えば、Pスライスに含まれるマクロブロックのインター予測モードには、マクロブロックを16×16、16×8、8×16、8×8に分割したモードがある。インターコスト算出部104は、予測モード毎に適切な動きベクトルと、この動きベクトルにおける予測コストとを算出する。予測コストは、予測画像と処理対象ブロックとの間の類似度と予測モードの情報をエントロピー符号化した際に想定されるビットストリームのサイズとから計算される。ステップS102で、モード決定部105は、各予測モードについて算出された予測コストに基づいて、処理対象ブロックの符号化に用いる予測モードを決定する。例えば、モード決定部105は、最も予測コストが小さい予測モードを、このマクロブロックに適用する予測モードとして選択する。ステップS103で、符号化部10は、決定された予測モードを用いて、処理対象ブロックの符号化を行う。このとき、処理を実行する符号化部10は、直交変換量子化部106、エントロピー符号化部107である。ステップS104で、評価部201は、処理対象ブロックと同一位置にあるP3スライスのマクロブロックの予測モード情報などを予測モード保持部301から読み出す。予測モード情報は、動きベクトルや予測コストを含む。ステップS105で、評価部201は、空間又は時間の2種類のダイレクトモードについて、上記方法1~6の何れかの方法を用いてMBへの適合度を評価する。各方法についての適合度の評価処理の詳細は後述する。ステップS106で、符号化部10は、現在の処理対象ブロックについて、予測モードに関する情報を予測モード保持部202に書き出す。書き出す内容は、モード決定部105で選択された予測モード、16×16~8×8分割ブロック毎に算出された動きベクトル、及び種々のインター予測モードの予測コストである。ステップS107で、動画像符号化装置1は、符号化対象のスライスに含まれるすべてのマクロブロックについての符号化処理が完了したか否かを判定する。スライス内の全てのMBで符号化処理が完了していればステップS107-YESステップS108に進み、符号化処理が完了していなければステップS107-NOステップS101に戻り、次のMBについて符号化処理が行われる。ステップS108で、評価部201は、ステップS105で算出した適合度に基づき、フレーム全体での適合度を評価する。ステップS109で、評価部201は、適合度に基づき、B4スライス、B5スライスに適応することが望ましいダイレクトモードを選択する。評価部201は、選択したダイレクトモードを予測モード保持部202に記憶する。これで、P6スライスの符号化処理が終了する。次に、ステップS105に対応する評価処理について、前述した方法1~6を説明する。方法1図9は、評価方法1における処理の一例を示すフローチャートである。図9に示す処理の場合、ステップS100で、count_temporalと、count_spatialとが0に初期化される。ステップ201で、判定部211は、処理対象ブロックの周辺MBa、MBb、MBcの位置にあるマクロブロックの動きベクトルmv_a、mv_b、mv_cからmedianmv_a,mv_b,mv_cを計算する。ステップS202で、判定部211は、予測モード保持部202から、動きベクトルmv_oldを読み出す。ステップS203で、判定部211は、取得したこれらの情報を用いて、所定の条件である式3の関係を満たすかどうかを判定する。|mv_curr-mv_old|≦|mv_curr-medianmv_a,mv_b,mv_c|式3式3を満たす場合ステップS203-YESはステップS204に進み、式3を満たさない場合ステップS203-NOはステップS205に進む。ステップS204で、カウント部212は、count_temporalをインクリメントする。ステップS205で、カウント部212は、count_spatialをインクリメントする。図8に示すステップS109では、選択部213は、count_temporalとcount_spatialとの大小を比較する。選択部213は、count_temporalがcount_spatial以下の場合、空間ダイレクトモードを選択し、そうでない場合、時間ダイレクトモードを選択する。これにより、空間的に、又は時間的に相関が高い動きベクトルを有するマクロブロックの数に応じて、Bスライスに適応する適切なダイレクトモードを選択することができる。方法2図10は、評価方法2における処理の一例を示すフローチャートである。図10に示す処理の場合、ステップS100で、count_temporalと、count_spatialとが0に初期化される。ステップS301で、判定部211は、処理対象ブロックの周辺MBa、MBb、MBcの位置にあるマクロブロックの動きベクトルmv_a、mv_b、mv_cからmedianmv_a,mv_b,mv_cを計算する。ステップS302で、判定部211は、計算したmedianmv_a,mv_b,mv_cと、モード決定部105から取得したmv_currとを用いて、所定の条件である式4を満たすかどうかを判定する。Th2≦|mv_curr-medianmv_a,mv_b,mv_c|式4式4を満たす場合ステップS302-YESはステップS303に進み、式4を満たさない場合ステップS302-NOはステップS304に進む。ステップS303で、カウント部212は、count_temporalをインクリメントする。ステップS304で、カウント部212は、count_spatialをインクリメントする。図8に示すステップS109では、選択部213は、count_temporalとcount_spatialの大小を比較する。選択部213は、count_temporalがcount_spatial以下の場合、空間ダイレクトモードを選択し、そうでない場合、時間ダイレクトモードを選択する。これにより、mv_oldを取得する処理が不要になるため、処理量を削減し、動画像符号化装置の構成が簡単になるというメリットがある。方法3図11は、評価方法3における処理の一例を示すフローチャートである。図11に示す処理の場合、ステップS100で、count_pskipが0に初期化される。ステップS401で、判定部211は、ステップS102で決定された予測モードがP_Skipであるか否かを判定する。決定された予測モードがP_Skipである場合ステップS401-YESは、ステップS402に進み、決定された予測モードがP_Skipでない場合ステップS401-NOは、カウント対象から除外される。ステップS402で、カウント部212は、count_pskipをインクリメントする。図8に示すステップS109では、選択部213は、count_pskipが閾値Th3以下の場合は時間ダイレクトモードを選択し、Th3より大きい場合は空間ダイレクトモードを選択する。これにより、空間的に相関が高いことを示すP_Skipを用いて、Bスライスに適応する適切なダイレクトモードを簡易に選択することができる。方法4図12は、評価方法4における処理の一例を示すフローチャートである。図12に示す処理の場合、ステップS100で、count_temporalと、count_spatialとが0に初期化される。ステップS501で、判定部211は、処理対象ブロックの周辺MBa、MBb、MBcの位置にあるマクロブロックの動きベクトルmv_a、mv_b、mv_cからmedianmv_a,mv_b,mv_cを計算する。判定部211は、動きベクトルmedianmv_a,mv_b,mv_cでの予測コストを算出する。ステップS502で、カウント部212は、動きベクトルmedianmv_a,mv_b,mv_cでの予測コストをcost_spatialとする。ステップS503で、判定部211は、予測モード保持部202から動きベクトルmv_oldを読み出す。判定部211は、動きベクトルmv_oldでの予測コストを算出する。ステップS504で、カウント部212は、動きベクトルmv_oldでの予測コストをcost_temporalとする。なお、S501、S502の処理と、S503、S504の処理とは順不同である。ステップS505で、判定部211は、算出したこれらの情報を用いて、所定の条件である式5の関係を満たすかどうかを判定する。cost_temporal≦cost_spatial式5式5を満たす場合ステップ505-YESはステップS506に進み、式5を満たさない場合ステップS505-NOはステップS507に進む。ステップS506で、カウント部212は、count_temporalをインクリメントする。ステップS507で、カウント部212は、count_spatialをインクリメントする。図8に示すS109では、選択部213は、count_temporalとcount_spatialとを比較する。選択部213は、count_temporalがcount_spatial以下であれば、空間ダイレクトモードを選択し、count_temporalがcount_spatialより大きければ時間ダイレクトモードを選択する。これにより、予測コストに基づいて、ダイレクトモードを選択するため、Bスライスにおけるダイレクトモードの選択精度を向上させることができる。方法5図13は、評価方法5における処理の一例を示すフローチャートである。図13に示す処理で、図8に示す処理と同様の処理を行うものは同じ符号を付し、その説明を省略する。ステップS601で、判定部211は、処理対象ブロックがインター予測されたか否かを判定する。処理対象ブロックがインター予測された場合ステップS601-YESはステップS104に進み、処理対象ブロックがイントラ予測された場合ステップS601-NOはステップS106に進む。ステップS105の処理は、方法1又は方法3の処理を行う。これにより、ダイレクトモードの選択に悪影響を及ぼす可能性があるイントラ予測を、判定対象から除外することで、Bスライスにおけるダイレクトモードの選択精度を向上させることができる。方法6図14は、評価方法6における処理の一例を示すフローチャートである。図14に示す処理で、図8及び図13に示す処理と同様の処理を行うものは同じ符号を付し、その説明を省略する。ステップS701で、判定部211は、処理対象ブロックのインター予測時の予測コストが閾値Th4よりも小さいかを判定する。予測コストがTh4より小さい場合ステップS701-YESステップS104に進み、予測コストがTh4以上である場合ステップS701-NOステップS106に進む。これにより、ダイレクトモードになりそうなマクロブロックのみを判定に用いることで、Bスライスにおけるダイレクトモードの選択精度を向上させることができる。Bスライスの符号化処理次に、Bスライスの符号化処理について説明する。以下に符号化処理は、例えばB4,B5スライスにおける符号化処理である。図15は、Bスライスにおける符号化処理の一例を示すフローチャートである。図15に示すステップS801で、モード決定部105は、P6スライスの符号化処理で選択されたダイレクトモードを、予測モード保持部202から取得する。モード決定部105は、取得したダイレクトモードをインター予測符号化部103、インターコスト算出部104に通知する。ステップS802で、イントラコスト算出部102、インターコスト算出部104は、処理対象ブロックMBについて、Bスライスで適用される全てのイントラ予測モード及び全てのインター予測モードの予測コストを算出する。このとき、ダイレクトモードは、モード決定部105から通知されたダイレクトモードを用いる。ステップS803で、モード決定部105は、各予測モードについて算出された予測コストに基づいて、処理対象ブロックの符号化に用いる予測モードを決定する。例えば、モード決定部105は、最も予測コストが小さい予測モードを、このマクロブロックに適用する予測モードとして選択する。ステップS804で、符号化部10は、決定された予測モードを用いて、処理対象ブロックの符号化を行う。このとき、処理を実行する符号化部10は、直交変換量子化部106、エントロピー符号化部107である。ステップS805で、動画像符号化装置1は、符号化対象のスライスに含まれるすべてのマクロブロックについての符号化処理が完了したか否かを判定する。スライス内の全てのMBで符号化処理が完了していればステップS805-YESBスライスの符号化処理を終了し、符号化処理が完了していなければステップS805-NOステップS802に戻り、次のMBについて符号化処理が行われる。これにより、Bスライスでは、以前に符号化されたPスライスの符号化処理で選択された適切なダイレクトモードを用いることができる。これにより、Bスライスの符号化効率を高めることができる。以上、実施例によれば、空間又は時間ダイレクトモードのいずれかを用いることが可能なスライスに対して適切なダイレクトモードを選択することができる。[変形例]上記実施例では、説明を簡単にするため、1つのフレームに1つのスライスのみを含む場合で説明した。しかし、図16に示すように、1つのフレームに複数のスライスを含む場合でも、上記実施例を適用することができる。図16は、1つのフレームに複数のフレームを含む場合の例を示す図である。図16に示すPスライス301における符号化処理で、Bスライス302で適用するダイレクトモードを選択するようにしてもよい。また、Bスライス302で適用するダイレクトモードを選択するのに、他のフレームのPスライスを用いてもよい。図17は、動画像符号化装置2のハードウェアその1の一例を示すブロック図である。図17に示す例では、既存の符号化部10及び外部メモリ30に対し、プロセッサ401、メモリ402を含むモード選択部20を追加することで、上記実施例を実施可能とする例である。これら各構成は、バスを介して相互にデータ送受信可能に接続されている。図17に示す例では、予測モード保持部202は、外部メモリ30に含まれる。符号化部10は、例えばH.264エンコーダである。プロセッサ401は、モード決定部105、イントラコスト算出部102、インターコスト算出部104が計算した予測モード、各イントラ予測モードの予測コスト、各インター予測モードの予測コストを取得する。また、プロセッサ401は、予測モード保持部202に保存されている、以前に符号化処理したPスライスの予測モード、各イントラ予測モードの予測コスト、各インター予測モードの予測コストを読み出す。プロセッサ401は、上記方法1~6のいずれかの方法により、所定の条件を満たすマクロブロックの数などをカウントする。すべてのマクロブロックについてカウントが終わった場合、プロセッサ401は、以降に符号化するBスライスに適用するダイレクトモードとして、適切なダイレクトモードを選択し、メモリ402に保存する。以降に符号化されるBスライスの符号化時には、符号化部10は、メモリ402に保存されたダイレクトモードを用いて符号化処理を行う。なお、モード選択部20は、符号化部10と別の構成にしたが、モード選択部20と符号化部10とは、1つの構成で実装されてもよい。図18は、動画像符号化装置3のハードウェアその2の一例を示すブロック図である。図18に示す例では、上記実施例の処理を動画像符号化プログラムとし、動画像符号化装置3の制御部501で動画像符号化プログラムを読み取らせ、上記実施例の処理を実行させる。図18に示す動画像符号化装置3は、制御部501、主記憶部502、補助記憶部503、ドライブ装置504、ネットワークI/F部507、入力部508、表示部509を含む。これら各構成は、バスを介して相互にデータ送受信可能に接続されている。制御部501は、コンピュータの中で、各装置の制御やデータの演算、加工を行うCPUである。また、制御部501は、主記憶部502や補助記憶部503に記憶された動画像符号化プログラムを実行する演算装置であり、入力部508や記憶装置からデータを受け取り、演算、加工した上で、表示部509や記憶装置などに出力する。主記憶部502は、ROMReadOnlyMemoryやRAMRandomAccessMemoryなどであり、制御部501が実行する基本ソフトウェアであるOSやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。補助記憶部503は、HDDHardDiskDriveなどであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。ドライブ装置504は、記録媒体505、例えばフレキシブルディスクからプログラムを読み出し、記憶装置にインストールする。また、記録媒体505に、所定のプログラムを格納し、この記録媒体505に格納されたプログラムはドライブ装置504を介して動画像符号化装置3にインストールされる。インストールされた所定のプログラムは、動画像符号化装置3により実行可能となる。ネットワークI/F部507は、有線及び/又は無線回線などのデータ伝送路により構築されたLANLocalAreaNetwork、WANWideAreaNetworkなどのネットワークを介して接続された通信機能を有する周辺機器と動画像符号化装置3とのインターフェースである。入力部508は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、表示部508の表示画面上でキーの選択等を行うためのマウスやスライスパット等を有する。また、入力部508は、ユーザが制御部501に操作指示を与えたり、データを入力したりするためのユーザインターフェースである。表示部509は、CRTCathodeRayTubeやLCDLiquidCrystalDisplay等を含み、制御部501から入力される表示データに応じた表示が行われる。例えば、復号画像保持部301、予測モード保持部202は、主記憶部502や補助記憶部503などにより実現されうる。例えば、符号化部10、評価部201は、制御部501やワークメモリとしての主記憶部503などにより実現されうる。このように、上記実施例で説明した動画像符号化処理は、コンピュータに実行させるためのプログラムとして実現されてもよい。このプログラムをサーバ等からインストールしてコンピュータに実行させることで、前述した動画像符号化処理を実現することができる。例えば、前述した動きベクトル検出処理は、プログラムとして実現されてもよい。また、この動画像符号化プログラムを記録媒体505に記録し、このプログラムが記録された記録媒体505をコンピュータや携帯端末に読み取らせて、前述した動画像符号化処理を実現させることも可能である。なお、記録媒体505は、CD-ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。また、前述した実施例で説明した各処理部は、1つ又は複数の処理部を1つ又は複数の集積回路に実装されてもよい。なお、上記実施例では、H.264以外にも、Bスライスで、空間又は時間ダイレクトモードのいずれか一方を用いる符号化技術においても適用可能である。以上、実施例について詳述したが、この実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記実施例や変形例以外にも種々の変形及び変更が可能である。なお、以上の実施例に関し、さらに以下の付記を開示する。付記1Pスライス内の処理対象ブロックの動きベクトルと、前記処理対象ブロックの隣接ブロックの動きベクトルとを用いて所定の条件を満たすか否かを判定する判定部と、前記所定の条件を満たすと判定された処理対象ブロックの数をカウントするカウント部と、カウントされた処理対象ブロックの数を用いて時間ダイレクトモード又は空間ダイレクトモードのいずれかを選択する選択部と、選択された時間ダイレクトモード又は空間ダイレクトモードを用いて、前記Pスライス以降のBスライスの処理対象ブロックを符号化する符号化部と、を備える動画像符号化装置。付記2前記処理対象ブロックの動きベクトルと前記隣接ブロックの動きベクトルとの第1差分が、前記処理対象ブロックの動きベクトルと既に符号化されたピクチャ内の前記処理対象ブロックと同一位置にあるブロックの動きベクトルとの第2差分以上であることが、前記所定の条件である場合、前記カウント部は、前記所定の条件を満たさない処理対象ブロックの数をさらにカウントし、前記選択部は、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数以上である場合、前記時間ダイレクトモードを選択し、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数未満である場合、前記空間ダイレクトモードを選択する付記1記載の動画像符号化装置。付記3前記隣接ブロックの動きベクトルが示す参照画像を用いる第1予測コストが、既に符号化されたピクチャ内の前記処理対象ブロックと同一位置にあるブロックの動きベクトルが示す参照画像を用いる第2予測コスト以上であることが、前記所定の条件である場合、前記カウント部は、前記所定の条件を満たさない処理対象ブロックの数をさらにカウントし、前記選択部は、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数以上である場合、前記時間ダイレクトモードを選択し、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数未満である場合、前記空間ダイレクトモードを選択する付記1記載の動画像符号化装置。付記4前記処理対象ブロックの動きベクトルと前記隣接ブロックの動きベクトルとの差分が第1閾値以上であることが、前記所定の条件である場合、前記カウント部は、前記所定の条件を満たさない処理対象ブロックの数をさらにカウントし、前記選択部は、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数以上である場合、前記時間ダイレクトモードを選択し、前記所定の条件を満たす処理対象ブロックの数が前記所定の条件を満たさない処理対象ブロックの数未満である場合、前記空間ダイレクトモードを選択する付記1記載の動画像符号化装置。付記5前記処理対象ブロックの動きベクトルと前記隣接ブロックの動きベクトルとの差分が0であり、前記処理対象ブロックのサイズが16×16であり、予測画像と前記処理対象ブロックとの差分画像の符号化データが0であることが、前記所定の条件である場合、前記選択部は、前記カウントされた処理対象ブロックの数が第2閾値以上である場合、前記空間ダイレクトモードを選択し、前記カウントされた処理対象ブロックの数が第2閾値未満である場合、前記時間ダイレクトモードを選択する付記1記載の動画像符号化装置。付記6前記判定部は、インター予測されるブロックに対して判定処理を行う付記2又は5に記載の動画像処理装置。付記7前記判定部は、インター予測されるブロックであり、前記インター予測の符号化モードに対応する予測コストが第3閾値未満であるブロックに対して判定処理を行う付記2又は5に動画像符号化装置。付記8Pスライス内の処理対象ブロックの動きベクトルと、前記処理対象ブロックの隣接ブロックの動きベクトルとを用いて所定の条件を満たすかを判定し、前記所定の条件を満たすと判定された処理対象ブロックの数をカウントし、カウントされた処理対象ブロックの数を用いて時間ダイレクトモード又は空間ダイレクトモードのいずれかを選択し、選択された時間ダイレクトモード又は空間ダイレクトモードを用いて、前記Pスライス以降のBスライスの処理対象ブロックを符号化する処理をコンピュータが実行する動画像符号化方法。付記9Pスライス内の処理対象ブロックの動きベクトルと、前記処理対象ブロックの隣接ブロックの動きベクトルとを用いて所定の条件を満たすかを判定し、前記所定の条件を満たすと判定された処理対象ブロックの数をカウントし、カウントされた処理対象ブロックの数を用いて時間ダイレクトモード又は空間ダイレクトモードのいずれかを選択し、選択された時間ダイレクトモード又は空間ダイレクトモードを用いて、前記Pスライス以降のBスライスの処理対象ブロックを符号化する処理をコンピュータに実行させる動画像符号化プログラム。"