(57)【要約】【課題】フレームマクロブロックモード，フィールドマクロブロックモードを適応的に選択し，符号化効率を低下させずに，計算量またはハードウェアの規模の削減を図る。【解決手段】動き探索部１０１では，フレームマクロブロックおよびフィールドマクロブロックのそれぞれに対して動き探索を行い，動きベクトルとそれぞれの探索コストを算出する。動きベクトル評価値算出部１０２では，動きベクトルの大きさの評価値を求め，動きベクトル閾値判定部１０３において所定の閾値と比較することにより，対象領域が動領域か静止領域かを決定する。対象領域が動領域の場合，探索コストの大小比較でフレーム／フィールドマクロブロックモードを決定する。対象領域が静止領域の場合，フレームマクロブロックとフィールドマクロブロックの垂直方向隣接画素間差分絶対値和の大小によって，フレーム／フィールドマクロブロックモードを決定する。【選択図】図７
2008098796.tif 000002
【特許請求の範囲】
【請求項１】
２つのフィールドで１つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮し，ビットストリームを出力する映像符号化方法において，
符号化対象領域の水平Ｍ画素，垂直２Ｍ画素の矩形を，水平Ｍ画素と垂直Ｍ画素の２つの矩形のフレームマクロブロックに分割し，２つのフレームマクロブロックのそれぞれに対して動き探索を行い，動きベクトルとその動きベクトルを用いたときの符号化コストであるフレーム探索コストとを算出する第１の過程と，
前記水平Ｍ画素，垂直２Ｍ画素の矩形を，水平Ｍ画素で奇数行の垂直Ｍ画素の領域と，水平Ｍ画素で偶数行の垂直Ｍ画素の領域の２つの矩形のフィールドマクロブロックに分割し，２つのフィールドマクロブロックのそれぞれに対して動き探索を行い，動きベクトルとその動きベクトルを用いたときの符号化コストであるフィールド探索コストとを算出する第２の過程と，
前記第１の過程および前記第２の過程における動き探索により決定された動きベクトルの大きさの評価値を算出する第３の過程と，
前記第３の過程で算出した動きベクトルの大きさの評価値が所定の閾値より大きい場合，前記第１の過程で算出したフレーム探索コストと，前記第２の過程で算出したフィールド探索コストとを比較し，値の小さい方のコストを選択する第４の過程と，
前記第４の過程でフレーム探索コストが選択された場合，当該符号化対象領域をフレームマクロブロックモードとして符号化を行う第５の過程と，
前記第４の過程でフィールド探索コストが選択された場合，当該符号化対象領域をフィールドマクロブロックモードとして符号化を行う第６の過程と，
前記第３の過程で算出した動きベクトルの大きさの評価値が所定の閾値以下であった場合，フレームマクロブロックの垂直方向隣接画素間差分絶対値和を算出してフレーム画素コストとし，フィールドマクロブロックの垂直方向隣接画素間差分絶対値和を算出してフィールド画素コストとし，値の小さい方のコストを選択する第７の過程と，
前記第７の過程でフレーム画素コストが選択された場合，当該符号化対象領域をフレームマクロブロックモードとして符号化を行う第８の過程と，
前記第７の過程でフィールド画素コストが選択された場合，当該符号化対象領域をフィールドマクロブロックモードとして符号化を行う第９の過程とを有する
ことを特徴とする映像符号化方法。
【請求項２】
請求項１記載の映像符号化方法において，
前記動きベクトルの大きさの評価値は，前記フレームマクロブロック，前記フィールドマクロブロックまたはそれらを分割したブロック単位に算出された動きベクトルの水平成分および垂直成分それぞれの絶対値の中の最大値または最小値または平均値である
ことを特徴とする映像符号化方法。
【請求項３】
請求項１記載の映像符号化方法において，
前記動きベクトルの大きさの評価値は，前記フレームマクロブロック，前記フィールドマクロブロックまたはそれらを分割したブロック単位に算出された動きベクトルのマンハッタン距離の中の最大値または最小値または平均値である
ことを特徴とする映像符号化方法。
【請求項４】
請求項１記載の映像符号化方法において，
前記動きベクトルの大きさの評価値は，前記フレームマクロブロック，前記フィールドマクロブロックまたはそれらを分割したブロック単位に算出された動きベクトルの長さの中の最大値または最小値または平均値である
ことを特徴とする映像符号化方法。
【請求項５】
２つのフィールドで１つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮し，ビットストリームを出力する映像符号化装置において，
符号化対象領域の水平Ｍ画素，垂直２Ｍ画素の矩形を，水平Ｍ画素と垂直Ｍ画素の２つの矩形のフレームマクロブロックに分割し，２つのフレームマクロブロックのそれぞれに対して動き探索を行い，動きベクトルとその動きベクトルを用いたときの符号化コストであるフレーム探索コストとを算出するともに，前記水平Ｍ画素，垂直２Ｍ画素の矩形を，水平Ｍ画素で奇数行の垂直Ｍ画素の領域と，水平Ｍ画素で偶数行の垂直Ｍ画素の領域の２つの矩形のフィールドマクロブロックに分割し，２つのフィールドマクロブロックのそれぞれに対して動き探索を行い，動きベクトルとその動きベクトルを用いたときの符号化コストであるフィールド探索コストとを算出する動き探索手段と，
前記動き探索手段による動き探索により決定された動きベクトルの大きさの評価値を算出する動きベクトル評価値算出手段と，
前記動きベクトル評価値算出手段が算出した動きベクトルの大きさの評価値が所定の閾値より大きい場合に前記符号化対象領域を動領域とし，所定の閾値以下の場合に前記符号化対象領域を静止領域と判定する動きベクトル閾値判定手段と，
前記符号化対象領域が動領域であると判定された場合に，前記フレーム探索コストと前記フィールド探索コストとを比較し，前記フレーム探索コストのほうが小さい場合に当該符号化対象領域をフレームマクロブロックモードとし，前記フィールド探索コストのほうが小さい場合に当該符号化対象領域をフィールドマクロブロックモードとする第１のフレーム／フィールド判定手段と，
前記フレームマクロブロックの垂直方向隣接画素間差分絶対値和を算出してフレーム画素コストとし，前記フィールドマクロブロックの垂直方向隣接画素間差分絶対値和を算出してフィールド画素コストとする隣接画素間差分絶対値和算出手段と，
前記符号化対象領域が静止領域であると判定された場合に，前記フレームマクロブロックに対して算出されたフレーム画素コストと前記フィールドマクロブロックに対して算出されたフィールド画素コストとを比較し，前記フレーム画素コストのほうが小さい場合に当該符号化対象領域をフレームマクロブロックモードとし，前記フィールド画素コストのほうが小さい場合に当該符号化対象領域をフィールドマクロブロックモードとする第２のフレーム／フィールド判定手段と，
前記第１のフレーム／フィールド判定手段または前記第２のフレーム／フィールド判定手段がフレームマクロブロックモードと判定した領域を，フレームマクロブロックモードで符号化するフレームマクロブロック符号化手段と，
前記第１のフレーム／フィールド判定手段または前記第２のフレーム／フィールド判定手段がフィールドマクロブロックモードと判定した領域を，フィールドマクロブロックモードで符号化するフィールドマクロブロック符号化手段とを備える
ことを特徴とする映像符号化装置。
【請求項６】
請求項１から請求項４までのいずれか１項に記載された映像符号化方法を，コンピュータに実行させるための映像符号化プログラム。
【請求項７】
請求項１から請求項４までのいずれか１項に記載された映像符号化方法を，コンピュータに実行させるための映像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，２つのフィールドで１つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮し，ビットストリームを出力する映像符号化方式に関するものである。
【背景技術】
【０００２】
従来，２つのフィールドで１つのフレームが構成される映像データの符号化では，フレームマクロブロックモード，フィールドマクロブロックモード双方で符号化を行い，発生ビット量を比較してモード決定を行っている。また，特許文献１に記載されている「映像符号化方法，映像符号化装置，および映像符号化プログラムを記録した記録媒体」のように符号化過程を二重にし，第１過程の結果からモード決定を行う手法も提案されている。
【特許文献１】特開平１１−２９８９０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の映像符号化方式では，フレーム／フィールドマクロブロックモードの判定を行う場合に，以下のような問題が生じる。
【０００４】
通常の映像符号化器では，フレームマクロブロックモード，フィールドマクロブロックモード双方のモードで符号化を行い，効率の良い方式を選択している。この場合，符号化処理を複数回行う必要があるため，ソフトウェアによって処理する場合には，ＣＰＵ負荷が増大し，膨大な処理時間が必要となる。また，ハードウェアによって実現する場合には，チップ面積や消費電力が増大し，実現が困難となる。
【０００５】
本発明は，上記問題点を解決し，矩形領域の映像データを符号化する場合に，入力画像または動き予測を行った結果からフレームマクロブロックモード，フィールドマクロブロックモードを適応的に選択し，符号化効率を低下させずに，計算量あるいはハードウェアの規模を削減することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は，上記課題を解決するため，２つのフィールドで１つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮し，ビットストリームを出力する映像符号化方式において，以下の手段を用いる。
（ａ）水平Ｍ画素，垂直２Ｍ画素の矩形を，水平Ｍ画素と垂直Ｍ画素の矩形２つに分割し，２つの矩形それぞれに対し動き探索を行い，符号化コスト（以下，フレーム探索コストと呼ぶ），および動きベクトルを算出する第１の手段。
（ｂ）水平Ｍ画素，垂直２Ｍ画素の矩形を，水平Ｍ画素で奇数行の垂直Ｍ画素の領域と，水平Ｍ画素で偶数行の垂直Ｍ画素の領域とに分割し，２つの矩形それぞれに対し動き探索を行い，符号化コスト（以下，フィールド探索コストと呼ぶ），および動きベクトルを算出する第２の手段。
（ｃ）第１の手段および第２の手段の動き探索により決定された動きベクトルの大きさの評価値を算出する第３の手段。
（ｄ）第３の手段で算出した動きベクトルの大きさの評価値が所定の閾値より大きい場合，第１の手段で算出したフレーム探索コストと，第２の手段で算出したフィールド探索コストとを比較し，値の小さい方を選択する第４の手段。
（ｅ）第４の手段でフレーム探索コストが選択された場合，当該マクロブロックをフレームマクロブロックモードとして符号化を行う第５の手段。
（ｆ）第４の手段でフィールド探索コストが選択された場合，当該マクロブロックをフィールドマクロブロックモードとして符号化を行う第６の手段。
（ｇ）第３の手段で算出した動きベクトルの大きさの評価値が所定の閾値以下であった場合，フレームマクロブロック，フィールドマクロブロックのそれぞれにおいて垂直方向隣接画素間差分絶対値和を算出し，値の小さい方を選択する第７の手段。
（ｈ）第７の手段でフレーム画素コストが選択された場合，当該マクロブロックをフレームマクロブロックモードとして符号化を行う第８の手段。
（ｉ）第７の手段でフィールド画素コストが選択された場合，当該マクロブロックをフィールドマクロブロックモードとして符号化を行う第９の手段。
【０００７】
動きベクトルの大きさの評価値としては，フレームマクロブロック，フィールドマクロブロックまたはそれらを分割したブロック単位に算出された動きベクトルの水平，垂直成分それぞれの絶対値の中の最大値または最小値または平均値を用いることができる。
【０００８】
また，動きベクトルの大きさの評価値として，フレームマクロブロック，フィールドマクロブロックまたはそれらを分割したブロック単位に算出された動きベクトルのマンハッタン距離の中の最大値または最小値または平均値を用いることもできる。
【０００９】
また，動きベクトルの大きさの評価値として，フレームマクロブロック，フィールドマクロブロックまたはそれらを分割したブロック単位に算出された動きベクトルの長さの中の最大値または最小値または平均値を用いることもできる。
【００１０】
本発明は，以上の手段により，フレームマクロブロックモード／フィールドマクロブロックモードを選択し，演算量やメモリ転送量を削減することを特徴とする。
【発明の効果】
【００１１】
本発明は，２つのフィールドで１つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮し，ビットストリームを出力する映像符号化方式において，フレームマクロブロックモードで符号化するか，あるいは，フィールドマクロブロックモードで符号化するかを，動き探索結果および入力画像情報から判断する手段を持ち，その判断結果により，フレームマクロブロックモードによる符号化またはフィールドマクロブロックモードによる符号化を行うので，以下に示すような利点が生じる。
・本発明に係る映像符号化方式をソフトウェアによって実現する場合，ＣＰＵ負荷を軽減し，処理時間を削減することができる。
・本発明に係る映像符号化方式をハードウェアによって実現する場合，より小さなチップ面積や消費電力で実現が可能となる。
【発明を実施するための最良の形態】
【００１２】
以下，本発明の実施の形態を図面を参照して，詳細に説明する。また，本実施例では，マクロブロックサイズのサイズがＭ×Ｍ画素（Ｍ＝１６）である場合の例について説明する。
【００１３】
図１は，以下で説明する実施例における１つのフレームから切り出される符号化対象ブロックの例を示している。図中の１は，入力画像フレームを表しており，符号化対象の映像データ（以下，符号化対象領域という）２は，入力画像フレーム１を，図１に示すようにＭ×２Ｍの矩形に分割したものである。
【００１４】
図２は，本発明で用いるフレームマクロブロックの説明図である。図２に示す符号化対象領域２のＭ×２Ｍ（Ｍ＝１６）の符号化対象ブロックに対し，垂直方向にそれぞれＭ×Ｍの２つのブロックに分割したものをフレームマクロブロックと呼ぶ。図中の３がフレームマクロブロックを表している。
【００１５】
図３は，本発明で用いるフィールドマクロブロックの説明図である。図３に示す符号化対象領域２のＭ×２Ｍ（Ｍ＝１６）の符号化対象ブロックに対し，これを偶数行で構成されるＭ×Ｍのブロックと，奇数行で構成されるＭ×Ｍのブロックとに分割したものをフィールドマクロブロックと呼ぶ。図中の４がフィールドマクロブロックを表している。
【００１６】
図４は，本発明の第１の実施例によるフレームマクロブロックモード／フィールドマクロブロックモード判定手法を用いた映像符号化方法のフローチャートである。
【００１７】
図中の１１は第１の手段を示しており，符号化対象の入力画像から抽出したフレームマクロブロックに対して動き探索処理を行い，算出された動きベクトルをＭＶ＿ｆｒｍ，符号化コストをＭｃｏｓｔ＿ｆｒｍとする。図中の１２は第２の手段を示しており，符号化対象の入力画像から抽出したフィールドマクロブロックに対して動き探索処理を行い，算出された動きベクトルをＭＶ＿ｆｌｄ，符号化コストをＭｃｏｓｔ＿ｆｌｄとする。ここで行う動き探索処理は，映像のおおまかな動きを検出するものなので，整数画素精度程度の粗い探索でよい。
【００１８】
図中の１３は第３の手段を示しており，第１の手段１１および第２の手段１２で算出した全てまたは一部の動きベクトルの水平，垂直成分の中から絶対値の最大値（以下，ＭＶ＿ｍａｘとする）を算出する。なお，最大値ではなく，最小値または平均値を動きベクトルの大きさの評価値として用いてもよい。
【００１９】
図中の１４は第４の手段を示しており，第３の手段１３で算出されたＭＶ＿ｍａｘと閾値Ｔの大小を比較する。閾値Ｔは，対象領域が静止領域か動領域かを判定するパラメータであり，１／３０秒当たり１画素を目安に設定する。なお，この閾値設定は目安であり，任意に設定可能である。ＭＶ＿ｍａｘが閾値Ｔよりも大きい場合，対象領域は動領域と判断され，第１の手段１１および第２の手段１２で算出された符号化コストＭｃｏｓｔ＿ｆｒｍ，Ｍｃｏｓｔ＿ｆｌｄを比較し，コストの小さい方のマクロブロックモードを採用する。
【００２０】
図中の１５は第５の手段を示しており，第４の手段１４でＭｃｏｓｔ＿ｆｒｍが小さいと判断された場合，フレームマクロブロックモードで対象領域を符号化する。図中の１６は第６の手段を示しており，第４の手段１４でＭｃｏｓｔ＿ｆｌｄが小さいと判断された場合，フィールドマクロブロックモードで対象領域を符号化する。
【００２１】
図中の１７は第７の手段を示しており，第４の手段１４でＭＶ＿ｍａｘが閾値Ｔよりも大きくなく，静止領域と判断された場合，フレームマクロブロック，フィールドマクロブロックそれぞれにおいて垂直方向隣接画素間差分絶対値和（以下，それぞれをＰｃｏｓｔ＿ｆｒｍ，Ｐｃｏｓｔ＿ｆｌｄとする）を算出し，２つの値の大小を比較する。
【００２２】
図中の１８は第８の手段を示しており，第７の手段１７でＰｃｏｓｔ＿ｆｒｍが小さいと判断された場合，フレームマクロブロックモードで対象領域を符号化する。図中の１９は第９の手段を示しており，第７の手段１７でＰｃｏｓｔ＿ｆｌｄが小さいと判断された場合，フィールドマクロブロックモードで対象領域を符号化する。
【００２３】
図５は，本発明の第２の実施例によるフレームマクロブロックモード／フィールドマクロブロックモード判定手法を用いた映像符号化方法のフローチャートである。
【００２４】
図中の２１は第１の手段を示しており，符号化対象の入力画像から抽出したフレームマクロブロックに対して動き探索処理を行い，算出された動きベクトルをＭＶ＿ｆｒｍ，符号化コストをＭｃｏｓｔ＿ｆｒｍとする。図中の２２は第２の手段を示しており，符号化対象の入力画像から抽出したフィールドマクロブロックに対して動き探索処理を行い，算出された動きベクトルをＭＶ＿ｆｌｄ，符号化コストをＭｃｏｓｔ＿ｆｌｄとする。ここで行う動き探索処理は，映像のおおまかな動きを検出するものなので，整数画素精度程度の粗い探索でよい。
【００２５】
図中の２３は第３の手段を示しており，第１の手段２１および第２の手段２２で算出した全てまたは一部の動きベクトルのマンハッタン距離の最小値（以下，ＭＶ＿ｍｉｎとする）を算出する。なお，最小値ではなく，最大値または平均値を動きベクトルの大きさの評価値として用いてもよい。
【００２６】
図中の２４は第４の手段を示しており，第３の手段２３で算出されたＭＶ＿ｍｉｎと閾値Ｔの大小を比較する。閾値Ｔは，対象領域が静止領域か動領域かを判定するパラメータであり，１／３０秒当たり１画素を目安に設定する。なお，この閾値設定は目安であり，任意に設定可能である。ＭＶ＿ｍｉｎが閾値Ｔよりも大きい場合，対象領域は動領域と判断され，第１の手段２１および第２の手段２２で算出された符号化コストＭｃｏｓｔ＿ｆｒｍ，Ｍｃｏｓｔ＿ｆｌｄを比較し，コストの小さい方のマクロブロックモードを採用する。
【００２７】
図中の２５は第５の手段を示しており，第４の手段２４でＭｃｏｓｔ＿ｆｒｍが小さいと判断された場合，フレームマクロブロックモードで対象領域を符号化する。図中の２６は第６の手段を示しており，第４の手段２４でＭｃｏｓｔ＿ｆｌｄが小さいと判断された場合，フィールドマクロブロックモードで対象領域を符号化する。
【００２８】
図中の２７は第７の手段を示しており，第４の手段２４でＭＶ＿ｍｉｎが閾値Ｔよりも大きくなく，静止領域と判断された場合，フレームマクロブロック，フィールドマクロブロックそれぞれにおいて垂直方向隣接画素間差分絶対値和（以下，それぞれをＰｃｏｓｔ＿ｆｒｍ，Ｐｃｏｓｔ＿ｆｌｄとする）を算出し，２つの値の大小を比較する。
【００２９】
図中の２８は第８の手段を示しており，第７の手段２７でＰｃｏｓｔ＿ｆｒｍが小さいと判断された場合，フレームマクロブロックモードで対象領域を符号化する。図中の２９は第９の手段を示しており，第７の手段２７でＰｃｏｓｔ＿ｆｌｄが小さいと判断された場合，フィールドマクロブロックモードで対象領域を符号化する。
【００３０】
図６は，本発明の第３の実施例によるフレームマクロブロックモード／フィールドマクロブロックモード判定手法を用いた映像符号化方法のフローチャートである。
【００３１】
図中の３１は第１の手段を示しており，符号化対象の入力画像から抽出したフレームマクロブロックに対して動き探索処理を行い，算出された動きベクトルをＭＶ＿ｆｒｍ，符号化コストをＭｃｏｓｔ＿ｆｒｍとする。図中の３２は第２の手段を示しており，符号化対象の入力画像から抽出したフィールドマクロブロックに対して動き探索処理を行い，算出された動きベクトルをＭＶ＿ｆｌｄ，符号化コストをＭｃｏｓｔ＿ｆｌｄとする。ここで行う動き探索処理は，映像のおおまかな動きを検出するものなので，整数画素精度程度の粗い探索でよい。
【００３２】
図中の３３は第３の手段を示しており，第１の手段３１および第２の手段３２で算出した全てまたは一部の動きベクトルの長さの平均値（以下，ＭＶ＿ａｖｅとする）を算出する。なお，平均値ではなく，最小値または最大値を動きベクトルの大きさの評価値として用いてもよい。
【００３３】
図中の３４は第４の手段を示しており，第３の手段３３で算出されたＭＶ＿ａｖｅと閾値Ｔの大小を比較する。閾値Ｔは，対象領域が静止領域か動領域かを判定するパラメータであり，１／３０秒当たり１画素を目安に設定する。なお，この閾値設定は目安であり，任意に設定可能である。ＭＶ＿ａｖｅが閾値Ｔよりも大きい場合，対象領域は動領域と判断され，第１の手段３１および第２の手段３２で算出された符号化コストＭｃｏｓｔ＿ｆｒｍ，Ｍｃｏｓｔ＿ｆｌｄを比較し，コストの小さい方のマクロブロックモードを採用する。
【００３４】
図中の３５は第５の手段を示しており，第４の手段３４でＭｃｏｓｔ＿ｆｒｍが小さいと判断された場合，フレームマクロブロックモードで対象領域を符号化する。図中の３６は第６の手段を示しており，第４の手段３４でＭｃｏｓｔ＿ｆｌｄが小さいと判断された場合，フィールドマクロブロックモードで対象領域を符号化する。
【００３５】
図中の３７は第７の手段を示しており，第４の手段３４でＭＶ＿ａｖｅが閾値Ｔよりも大きくなく，静止領域と判断された場合，フレームマクロブロック，フィールドマクロブロックそれぞれにおいて垂直方向隣接画素間差分絶対値和（以下，それぞれをＰｃｏｓｔ＿ｆｒｍ，Ｐｃｏｓｔ＿ｆｌｄとする）を算出し，２つの値の大小を比較する。
【００３６】
図中の３８は第８の手段を示しており，第７の手段３７でＰｃｏｓｔ＿ｆｒｍ，が小さいと判断された場合，フレームマクロブロックモードで対象領域を符号化する。図中の３９は第９の手段を示しており，第７の手段３７でＰｃｏｓｔ＿ｆｌｄが小さいと判断された場合，フィールドマクロブロックモードで対象領域を符号化する。
【００３７】
図７は，本発明に係る映像符号化装置の構成例を示す図である。
【００３８】
図７において，動き探索部１０１は，図４ないし図６における第１の手段１１，２１，３１および第２の手段１２，２２，３２に相当し，動きベクトル評価値算出部１０２は，第３の手段１３，２３，３３に相当し，動きベクトル閾値判定部１０３およびＭｃｏｓｔフレーム／フィールド判定部１０４は，第４の手段１４，２４，３４に相当し，隣接画素間差分絶対値和算出部１０５およびＰｃｏｓｔフレーム／フィールド判定部１０６は，第７の手段１７，２７，３７に相当し，フレームマクロブロック符号化部１０７は，第５の手段１５，２５，３５および第８の手段１８，２８，３８に相当し，フィールドマクロブロック符号化部１０８は，第６の手段１６，２６，３６および第９の手段１９，２９，３９に相当する。
【００３９】
動き探索部１０１は，フレームマクロブロック，フィールドマクロブロックのそれぞれに対して動き探索処理を行い，算出された動きベクトルをＭＶ＿ｆｒｍ，ＭＶ＿ｆｌｄ，符号化コストをＭｃｏｓｔ＿ｆｒｍ，Ｍｃｏｓｔ＿ｆｌｄとする。ここで行う動き探索処理は，映像のおおまかな動きを検出するものなので，整数画素精度程度の粗い探索でよい。
【００４０】
動きベクトル評価値算出部１０２は，動き探索部１０１で算出した全てまたは一部の動きベクトルの大きさの評価値ＭＶ＿ｅｖａを算出する。なお，第１の実施例では，この評価値ＭＶ＿ｅｖａとして，動きベクトルの水平，垂直成分の中から絶対値の最大値ＭＶ＿ｍａｘを算出しており，第２の実施例では，この評価値ＭＶ＿ｅｖａとして，動きベクトルのマンハッタン距離の中から最小値ＭＶ＿ｍｉｎを算出しており，第３の実施例では，この評価値ＭＶ＿ｅｖａとして，動きベクトルの長さの平均値ＭＶ＿ａｖｅを算出している。
【００４１】
動きベクトル閾値判定部１０３は，動きベクトル評価値算出部１０２で算出されたＭＶ＿ｅｖａと，対象領域が静止領域か動領域かを判定するための所定の閾値Ｔとの大小を比較する。比較結果は，Ｍｃｏｓｔフレーム／フィールド判定部１０４およびＰｃｏｓｔフレーム／フィールド判定部１０６に通知される。
【００４２】
ＭＶ＿ｅｖａが閾値Ｔよりも大きく，対象領域が動領域と判定された場合，Ｍｃｏｓｔフレーム／フィールド判定部１０４は，動き探索部１０１で算出された符号化コストＭｃｏｓｔ＿ｆｒｍ，Ｍｃｏｓｔ＿ｆｌｄを比較し，符号化コストＭｃｏｓｔ＿ｆｒｍのほうが小さければ，フレームマクロブロックモードと決定し，フレームマクロブロック符号化部１０７にフレームマクロブロックモードで対象領域を符号化するように指示する。フレームマクロブロック符号化部１０７は，フレームマクロブロックモードで対象領域を符号化し，その符号化ストリームを出力する。
【００４３】
符号化コストＭｃｏｓｔ＿ｆｌｄのほうが小さい場合，Ｍｃｏｓｔフレーム／フィールド判定部１０４は，フィールドマクロブロックモードと決定し，フィールドマクロブロック符号化部１０８にフィールドマクロブロックモードで対象領域を符号化するように指示する。フィールドマクロブロック符号化部１０８は，フィールドマクロブロックモードで対象領域を符号化し，その符号化ストリームを出力する。
【００４４】
一方，隣接画素間差分絶対値和算出部１０５は，フレームマクロブロックの垂直方向隣接画素間差分絶対値和Ｐｃｏｓｔ＿ｆｒｍおよびフィールドマクロブロックの垂直方向隣接画素間差分絶対値和Ｐｃｏｓｔ＿ｆｌｄをそれぞれ算出する。
【００４５】
動きベクトル閾値判定部１０３においてＭＶ＿ｅｖａが閾値Ｔよりも大きくなく，対象領域が静止領域と判定された場合，Ｐｃｏｓｔフレーム／フィールド判定部１０６は，Ｐｃｏｓｔ＿ｆｒｍとＰｃｏｓｔ＿ｆｌｄの２つの値の大小を比較する。Ｐｃｏｓｔ＿ｆｒｍのほうが小さければ，フレームマクロブロックモードと決定し，フレームマクロブロック符号化部１０７にフレームマクロブロックモードで対象領域を符号化するように指示する。フレームマクロブロック符号化部１０７は，フレームマクロブロックモードで対象領域を符号化し，その符号化ストリームを出力する。また，Ｐｃｏｓｔ＿ｆｌｄのほうが小さい場合，フィールドマクロブロックモードと決定し，フィールドマクロブロック符号化部１０８にフィールドマクロブロックモードで対象領域を符号化するように指示する。フィールドマクロブロック符号化部１０８は，フィールドマクロブロックモードで対象領域を符号化し，その符号化ストリームを出力する。
【００４６】
動き探索部１０１は，フレームマクロブロック，フィールドマクロブロックのそれぞれに対して動き探索処理を行い，動きベクトルを算出するともとに，符号化コストとして，フレーム探索コストＭｃｏｓｔ＿ｆｒｍとフレーム探索コストＭｃｏｓｔ＿ｆｌｄを算出するが，これらの探索コストとして，例えば以下の２つの値の和を算出して用いることができる。
・当該ブロックと動きベクトルが示す参照ブロックのそれぞれの画素値の差分値の絶対値または差分値の二乗の値の合計値。
・当該ブロックの動きベクトルと，その周囲の符号化済みの動きベクトルから算出される予測ベクトルとの差分に応じたコスト値。
【００４７】
図８は，動き探索部１０１において動き探索を行うときのブロック分割の例を示している。動き探索部１０１は，１６×１６画素のマクロブロックを，例えば図８に示すようなブロックに分割して，各ブロックについて動き探索を行う。図８（Ａ）に示す１６×１６画素のマクロブロックに対し，図８（Ｂ）に示すように垂直方向に２分割した８×１６ブロック，図８（Ｃ）に示すように水平方向に２分割した１６×８ブロック，図８（Ｄ）に示すように４分割した８×８ブロックがあり，さらに８×８ブロックの場合には，図８（Ｅ）〜（Ｈ）に示すように，それぞれのブロックに対して８×８，４×８，８×４，４×４の４種類の分割を選択することができる。１マクロブロック当りの動きベクトルの本数が最大になるのは，全て４×４ブロックが選択された場合であり，その場合の動きベクトルの本数は１６本である。
【００４８】
動きベクトル評価値算出部１０２において，動きベクトルの大きさの評価値の算出方法としては，以下の方法を用いることができる。
（１）動きベクトルの水平，垂直成分それぞれの絶対値の中から最大値または最小値または平均値を求めて，評価値とする。
（２）動きベクトルのマンハッタン距離の中から最大値または最小値または平均値を求めて，評価値とする。
【００４９】
マンハッタン距離＝（水平成分絶対値）＋（垂直成分絶対値）
（３）動きベクトルの長さ，またはその二乗の中から最大値または最小値または平均値を求めて，評価値とする。
【００５０】
動きベクトルの長さの二乗＝（水平成分）2 ＋（垂直成分）2 
図９は，隣接画素間差分絶対値和算出部１０５が算出する隣接画素間差分絶対値和の説明図である。
【００５１】
隣接画素間差分絶対値和算出部１０５は，図２で説明したフレームマクロブロック３または図３で説明したフィールドマクロブロック４のそれぞれに対して，式（１）に示すように隣接行間の差分絶対値の和（以下，Ｓ＿ｆｒｍ０，Ｓ＿ｆｒｍ１，Ｓ＿ｆｌｄ０，Ｓ＿ｆｌｄ１とする）を算出する。ここで，ＡＢＳ（ａ）はａの絶対値を示しており，ｉm,n はマクロブロック内の（ｍ，ｎ）成分（ｍ＝１，…，１６，ｎ＝１，…，１６）を表している。
【００５２】
【数１】
2008098796.tif 000003
【００５３】
その後，式（２），式（３）に示すように，各マクロブロック毎の差分絶対値の和（以下，それぞれをＰｃｏｓｔ＿ｆｒｍ，Ｐｃｏｓｔ＿ｆｌｄとする）を算出して，Ｐｃｏｓｔフレーム／フィールド判定部１０６へ送る。Ｐｃｏｓｔフレーム／フィールド判定部１０６は，２つの値の比較を行い，フレームマクロブロックモード／フィールドマクロブロックモードの判定を行う。
【００５４】
Ｐｃｏｓｔ＿ｆｒｍ＝Ｓ＿ｆｒｍ０＋Ｓ＿ｆｒｍ１                      （２）
Ｐｃｏｓｔ＿ｆｌｄ＝Ｓ＿ｆｌｄ０＋Ｓ＿ｆｌｄ１                      （３）
以上説明した映像符号化の処理は，ハードウェアまたはファームウェアによって実現することができるとともに，コンピュータとソフトウェアプログラムとによっても実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも，ネットワークを通して提供することも可能である。
【図面の簡単な説明】
【００５５】
【図１】本発明で用いる符号化対象領域の説明図である。
【図２】本発明で用いるフレームマクロブロックの説明図である。
【図３】本発明で用いるフィールドマクロブロックの説明図である。
【図４】本発明の第１の実施例を示すフローチャートである。
【図５】本発明の第２の実施例を示すフローチャートである。
【図６】本発明の第３の実施例を示すフローチャートである。
【図７】本発明に係る映像符号化装置の構成例を示す図である。
【図８】ブロック分割の例を示す図である。
【図９】本発明で用いる隣接画素間差分絶対値和の説明図である。
【符号の説明】
【００５６】
１    入力画像フレーム
２    符号化対象領域
３    フレームマクロブロック
４    フィールドマクロブロック
１０１    動き探索部
１０２    動きベクトル評価値算出部
１０３    動きベクトル閾値判定部
１０４    Ｍｃｏｓｔフレーム／フィールド判定部
１０５    隣接画素間差分絶対値和算出部
１０６    Ｐｃｏｓｔフレーム／フィールド判定部
１０７    フレームマクロブロック符号化部
１０８    フィールドマクロブロック符号化部
【図１】
2008098796.tif 000004
【図２】
2008098796.tif 000005
【図３】
2008098796.tif 000006
【図４】
2008098796.tif 000007
【図５】
2008098796.tif 000008
【図６】
2008098796.tif 000009
【図７】
2008098796.tif 000010
【図８】
2008098796.tif 000011
【図９】
2008098796.tif 000012