(57)【要約】【課題】  動きベクトル検出時に生じる色差成分のミスマッチングを効率よく回避して、高品質の符号化処理を行う。【解決手段】  動きベクトル検出部１１は、インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する。動き補償部１２は、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める。【選択図】  図１
2006041943.tif 000002
【特許請求の範囲】
【請求項１】
画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置において、
インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、
検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部と、
を有することを特徴とする動きベクトル検出・補償装置。
【請求項２】
前記動きベクトル検出部は、動きベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、原画像の処理ブロックと、４ｎ＋０の位置の参照画像のブロックとの差分絶対値和のオフセットはゼロに設定し、原画像の処理ブロックと、４ｎ＋１、４ｎ＋２、４ｎ＋３の位置の参照画像のブロックとの差分絶対値和のオフセットは、伝送ビットレート、量子化パラメータ、色差エッジ状態、色差成分の予測誤差の少なくとも１つにもとづいて、適応的に設定することを特徴とする請求項１記載の動きベクトル検出・補償装置。
【請求項３】
前記動きベクトル検出部は、伝送ビットレートが低く、色差エッジの変化が大きい場合には、４ｎ＋０のブロックの画素平均値と、４ｎ＋１または４ｎ＋３のブロックの画素平均値との差分が１以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋１または４ｎ＋３側に設定し、または４ｎ＋０のブロックの画素平均値と、４ｎ＋２のブロックの画素平均値との差分が２以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋２側に設定し、伝送ビットレートが高い場合には、４ｎ＋０のブロックの選択されやすさを少なくすべき値の低いオフセットを４ｎ＋１、４ｎ＋２、４ｎ＋３側に設定することを特徴とする請求項２記載の動きベクトル検出・補償装置。
【請求項４】
前記動き補償部で、色差成分に関する原画像から予測画像の差分を求める処理で得られたＣｂ、Ｃｒの差分値に対して、前記動き補償部は、あらたにＣｂ差分値及びＣｒ差分値それぞれの色差差分絶対値和を求め、前記動きベクトル検出部は、輝度成分による輝度差分絶対値和をVdiff、前記色差差分絶対値和をCdiff、補正係数をαとした場合に、α×Cdiff＞Vdiffとなるならば、４ｎ＋１、４ｎ＋３のオフセットOfsAは、iを４ｎ＋１、４ｎ＋３となるブロックの識別子、ｎをブロックの個数とした際に、
【数２】
2006041943.tif 000012
で求め、
４ｎ＋２のオフセットOfsBは、iを４ｎ＋２となるブロックの識別子、ｎをブロックの個数とした際に、
【数３】
2006041943.tif 000013
で求めることを特徴とする請求項２記載の動きベクトル検出・補償装置。
【請求項５】
前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする請求項１記載の動きベクトル検出・補償装置。
【請求項６】
画像信号の符号化処理を行う画像符号化装置において、
４：２：２フォーマットのデジタル画像信号を４：２：０フォーマットに変換する画像入力処理部と、
インタレース走査で４：２：０フォーマットの画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求め、予測誤差に再生予測誤差を加算して、ローカルデコード画像を生成する動き補償部と、から構成される動きベクトル検出・補償部と、
予測誤差をＤＣＴ変換して変換係数を求めるＤＣＴ部と、変換係数を量子化して量子化値を求める量子化部と、量子化値を可変長符号化を施して、符号化データを生成する可変長符号化部と、から構成される符号化部と、
量子化値を逆量子化して逆量子化値を求める逆量子化部と、逆量子化値をＩＤＣＴ変換して前記再生予測誤差を求めるＩＤＣＴ部と、から構成されるローカルデコーダと、
複数フレームの画像信号を格納するフレームメモリと、
から構成される画像符号化装置。
【請求項７】
画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置において、
インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで動きベクトルを検出する際に、フレーム予測で検出した動きベクトルであるフレームベクトルに対し、フレームベクトルがとりうる垂直成分に応じて、使用する動きベクトルとして、フレームベクトルまたはフィールド予測に切り替えてフィールド予測で検出した動きベクトルであるフィールドベクトルのいずれかを選択する動きベクトル補正を行うことで、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、
検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部と、
を有することを特徴とする動きベクトル検出・補償装置。
【請求項８】
前記動きベクトル検出部は、フレームベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、４ｎ＋０の場合は動きベクトルとしてフレームベクトルを使用し、４ｎ＋１、４ｎ＋２、４ｎ＋３の場合はフィールド予測に切り替えてフィールドベクトルを検出して、フィールドベクトルを動きベクトルとして使用することを特徴とする請求項７記載の動きベクトル検出・補償装置。
【請求項９】
処理ブロック内で、色差成分のミスマッチングが生じる色差エッジが存在するか否かを判別する色差エッジ検出部をさらに有し、前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかで、かつ色差エッジが検出された場合に、フィールド予測に切り替えることを特徴とする請求項８記載の動きベクトル検出・補償装置。
【請求項１０】
前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとし、フレームベクトルの垂直成分が４ｎ＋２の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをBottomフィールドとし、フレームベクトルの垂直成分が４ｎ＋３の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋２及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとすることを特徴とすることを特徴とする請求項７記載の動きベクトル検出・補償装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動きベクトル検出・補償装置に関し、特にインタレース（飛び越し）走査で色差成分が間引かれたフォーマットを持つ画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置に関する。
【背景技術】
【０００２】
近年、ＤＶＤやデジタルＴＶ放送などの分野では、膨大な画像データを高いクオリティで記録・伝送するために、ＭＰＥＧ（Moving Picture Experts Group）による圧縮・符号化技術が広く用いられている。
【０００３】
また、ＭＰＥＧの画像フォーマットにはＹＣｂＣｒが用いられる。ＹＣｂＣｒとは、輝度信号（Ｙ）、輝度信号と青色成分の差（Ｃｂ）、輝度信号と赤色成分の差（Ｃｒ）の３つの情報で画像を表す形式である。人間の目が色の変化よりも明るさの変化に敏感な性質を利用して、輝度信号により多くのデータ量を割り当てる。
【０００４】
ＹＣｂＣｒフォーマットは、サブサンプリング（輝度の画質劣化は明確に識別できるが、色の画質劣化は判断しづらいために、色情報に対しては削減して平均化される。この処理をサブサンプリングと呼ぶ）を行う際の色差成分の間引き方によって、数種類に分類され、代表的なフォーマットに４：２：２フォーマット、４：２：０フォーマットがある。
【０００５】
図５０は４：２：２フォーマットを示す図である。４：２：２は、水平方向４画素に対して、輝度は画素ごとに８bitでサンプリングし、色差は２画素ごとに８bitのサブサンプリング（平均化）を行う。すなわち、元はＹ、Ｃｂ、Ｃｒで表す１つの画素に対して、水平方向の隣接する２画素をまとめてＣｂ、Ｃｒを割り当てる。
【０００６】
したがって、１画素あたりの平均情報量は１６（＝｛Ｙ（８）＋Ｃｂ（８）｝ or ｛Ｙ（８）＋Ｃｒ（８）｝）bitとなり、２つのＹに１つのＣｂＣｒが割り当てられるので、色差情報は輝度情報の１／２となる。
【０００７】
図５１は４：２：０フォーマットを示す図である。４：２：０は、４：２：２でサンプリングした後、輝度情報はそのまま残し，色差情報を垂直方向にも２画素分サブサンプリングする。すなわち、水平・垂直各方向に隣接する２画素（計４画素）をまとめてＣｂ、Ｃｒを割り当てる。
【０００８】
したがって、１画素あたりの平均情報量は１２（＝｛Ｙ（８）×４＋Ｃｂ（８）＋Ｃｒ（８）｝÷４）bitとなり、４つのＹに１つのＣｂＣｒが割り当てられるので、色差情報は輝度情報の１／４となる。
【０００９】
通常、デジタルＴＶ放送やビデオエンコードなどの画像入力に対し、入力部ではＩＴＵ−Ｒ規格の４：２：２フォーマットが対応しており、内部でMPEG2 Main Profileで規定される４：２：０フォーマットに変換している。そして、４：２：０フォーマットの画像信号に対して、動きベクトル検出・補償やＤＣＴ（Discrete Cosine Transform）といった符号化処理を施して、符号化データを生成する。
【００１０】
ここで、動きベクトルの検出を行う際は、マクロブロックと呼ばれる１６画素×１６ラインの矩形領域単位で検出処理が行われる。具体的には、フレームメモリからマクロブロック単位の原画像（これから動きベクトルを探索しようとする画像）と、それより大きな領域の参照画像（動きベクトルの探索範囲となる画像）とを読み出し、原画像のマクロブロックに対して、各画素の差分絶対値和が最も小さくなる参照画像領域上の位置を算出して動きベクトルを検出する。その後、検出した動きベクトルを元に、原画像マクロブロックに対する予測画像が生成される。
【００１１】
図５２は動きベクトル検出のイメージを示す図である。現フレームＦｒ２（原画像）のブロックｍｂ２（原画像マクロブロック）に対して、前フレームＦｒ１（参照画像）の中から似た画素を探す推定処理を行い、その分だけ位置をシフトした画素値を予測値とし、マクロブロックに対して水平成分と垂直成分を持つ動きベクトルを求める。
【００１２】
まず、現フレームＦｒ２のブロックｍｂ２と、前フレームＦｒ１の点線ブロックｍｂ１（ブロックｍｂ２に対応する位置にあるブロックである）との周囲を比較する。そして、現在のブロックｍｂ２の画素（絵柄）に近い部分を点線ブロックｍｂ１の周囲の画素から探す。すなわち、差分絶対値和の最小値を探索する。図の場合、ブロックｍｂ２の画素値和とブロックｍｂ１−１の画素値和との差分が最小値とすると（すなわち、差分絶対値和が最小値）、動きベクトルＶが求まる。
【００１３】
図５３は動き補償のイメージを示す図である。動きベクトルを検出した後、参照画像から動きベクトル分ずらしたブロックの予測画像を生成し、予測画像と原画像との差分を求める処理を動き補償と呼ぶ。ブロックｍｂ１−１の絵柄に対して、動きベクトルＶだけずらした予測画像ｍｂ１−２を生成し、原画像ｍｂ２との差分を求める。
【００１４】
ここで、例えば、飛行機のような剛体の平行移動なら、シフトした画像の値は変化しないので、動きベクトルＶだけ移動して生成した予測画像と、原画像との差分はゼロとなる。このとき符号化すべき情報は、水平・垂直成分の動きベクトル情報と、差分がゼロを示す情報となる。
【００１５】
また、予測画像と原画像との差分がゼロでない場合は（例えば、鳥がはばたいて移動して絵柄が変化している場合など）、その差分画像を予測誤差とし、予測誤差にＤＣＴ演算を施して変換係数を求める。その後に、量子化、可変長符号化の順に符号化処理を行って、符号化データを生成することになる。
【００１６】
一方、動きベクトル検出の計算量は巨大であるため、計算量削減の工夫が必要である。従来では、輝度に対して差分絶対値和が最小となれば、色差も概ね一致すると考えられるので（輝度の動きベクトルと、色差の動きベクトルは揃っているとみなして）、輝度で動きベクトルが検出されれば、色差に対する動きベクトル検出の計算処理を省略することで、全体の計算量の削減を図っている。色差成分の計算を省略することで、演算回路規模が低減し、フレームメモリから色差の原画像及び参照画像を読み込む処理なども省略でき、処理負荷の軽減が可能になる。
【００１７】
動きベクトル検出の従来技術として、フレーム予測時の動きベクトル検出範囲から、垂直成分が４ｎ＋２となる動きベクトルを除外して、色情報の劣化を改善する技術が提案されている（例えば、特許文献１）。
【特許文献１】特開２００１−２３８２２８号公報（段落番号〔００３２〕〜〔００４７〕，第１図）
【発明の開示】
【発明が解決しようとする課題】
【００１８】
通常、デジタルＴＶ放送などでは、インタレース走査（奇数ライン、偶数ラインを交互に飛び越し走査して１画面を作る描写方式）の４：２：０フォーマットである画像に対して、動きベクトル検出・補償やＤＣＴによる符号化処理を行っている。
【００１９】
なお、インタレース走査では、１つのフレームは、２つのフィールドから構成されており、一方のフィールドをTopフィールド、他方のフィールドをBottomフィールドと呼ぶ。
図５１で上述したように、４：２：０では色差情報が間引かれているが、このようなフォーマットに対して、動きベクトル検出処理を行うと、従来では輝度成分だけで差分絶対値和を求めて動きベクトル検出を行っているので、動きを持つ画像に対しては、色差成分に劣化が生じるといった問題があった。
【００２０】
すなわち、符号化しようとする画像に動きがほとんどない場合は、輝度成分によるベクトル探索結果にもとづく予測に対して、色差成分が大きくずれることはない。しかし、符号化しようとする画像に動きがある場合には、原画像の色差成分と、輝度成分から得られた動きベクトルによって対応する参照画像の色差成分とにミスマッチングが生じる可能性がある。
【００２１】
色差成分のミスマッチングが生じると、動き補償時に、予測画像と原画像との差分を計算した際、予測誤差が大きくなり、この結果、符号化データの情報量が増えるか、または一定データ量に伝送量を抑える場合には、画質劣化が生じてしまうといった問題があった。
【００２２】
また、従来技術（特開２００１−２３８２２８号公報）では、色差成分の大きなミスマッチングが生じるときの垂直成分を持つ動きベクトルを完全に除外することで、上記の問題に対処しているが、その他の垂直成分の動きベクトルについては何ら考慮されていないため、画質劣化が高品質に改善されたとはいえず、必ずしも最適な対策方法とはいえない。
【００２３】
本発明はこのような点に鑑みてなされたものであり、回路規模及び処理負荷を大きく増大させずに、色差成分のミスマッチングを効率よく回避して、高品質の動きベクトル検出・補償を行う動きベクトル検出・補償装置を提供することを目的とする。
【課題を解決するための手段】
【００２４】
本発明では上記課題を解決するために、図１に示すような、画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置１０において、インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部１１と、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部１２と、を有することを特徴とする動きベクトル検出・補償装置１０が提供される。
【００２５】
ここで、動きベクトル検出部１１は、インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する。動き補償部１２は、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める。
【発明の効果】
【００２６】
本発明の動きベクトル検出・補償装置は、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出し、検出した動きベクトルを用いて、動き補償を行う構成とした。これにより、回路規模及び処理負荷を大きく増大させることなく、動きベクトル検出・補償時に生じる色差成分のミスマッチングを効率よく回避することができ、高品質の符号化処理を行うことが可能になる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態を図面を参照して説明する。図１は本発明の動きベクトル検出・補償装置の原理図である。第１の実施の形態の動きベクトル検出・補償装置１０は、動きベクトル検出部１１と動き補償部１２から構成される。
【００２８】
動きベクトル検出部１１は、インタレース走査で、色差成分が間引かれたフォーマット（以下、４：２：０フォーマットとする）を持つ画像信号に対し、輝度成分だけで、原画像の処理ブロックと参照画像とにより、画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行う。なお、本発明でいうブロックとは、１６画素×１６ラインのマクロブロックとする。
【００２９】
そして、参照画像上で、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックの対応位置との位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する。
【００３０】
なお、動きベクトルの垂直成分は、具体的には、４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）となる。オフセットの設定としては、原画像の処理ブロックＢと、４ｎ＋０の位置の参照画像のブロックＢ０との差分絶対値和のオフセットはゼロに設定し、原画像の処理ブロックＢと、４ｎ＋１、４ｎ＋２、４ｎ＋３の位置の参照画像のブロックＢ１、Ｂ２、Ｂ３との差分絶対値和のオフセットは適応的に設定する。
【００３１】
適応的に設定するとは、伝送ビットレート、量子化パラメータ（量子化のステップサイズ、量子化精度のこと）、色差エッジ状態、色差成分の予測誤差の少なくとも１つにもとづいて設定を行うということである（詳細は後述）。また、動き補償部１２は、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める。
【００３２】
次に本発明の詳細動作を説明する前に、動きベクトル検出の基本的動作も含めて、本発明が解決すべき問題点について詳しく説明する。図２、図３は矩形画像が左上から右下に向かって移動する様子を示す図である。図２は輝度成分に対する参照画像のTopフィールド、Bottomフィールドを２次元画面イメージで示したもので、図３は輝度成分に対する原画像のTopフィールド、Bottomフィールドを２次元画面イメージで示したものである（TopフィールドとBottomフィールドは、いずれかが奇数ライン、偶数ラインを含むので、１ラインずらして示している）。
【００３３】
図中、画像の動きを黒の矩形で示している。図２の参照画像と図３の原画像とを見比べると、矩形が左上から右下に向かって移動していることがわかる。また、図２の参照画像だけを見ても、Topフィールドの矩形とBottomフィールドの矩形とが、１フィールド時間の間に移動しており、図３の原画像もTopフィールドの矩形とBottomフィールドの矩形とが、１フィールド時間の間に移動している。
【００３４】
図４、図５は４：２：２フォーマットと４：２：０フォーマットの関係を示す図である。図４は図２の参照画像に対して、水平ｘ１点で見た４：２：２と４：２：０の対応関係を示しており、図５は図３の原画像に対して、水平ｘ２点で見た４：２：２と４：２：０の対応関係を示している。なお、白四角黒四角は輝度成分を、白三角黒三角は色差成分を表しており、左側の数字はライン番号である。
【００３５】
４：２：２→４：２：０の変換では、色差成分の間引きが行われる。図４で説明すると、例えば、４：２：２の色差成分ａ１、ａ２から、４：２：０の色差成分ａ３が生成される。
【００３６】
この場合、色差成分ａ３は、色差成分ａ１から垂直下方向に２ライン間隔の２／８の位置、または色差成分ａ２から垂直上方向に２ライン間隔の６／８の位置に配置されるので、色差成分ａ１、ａ２の値の加重平均をとった値が色差成分ａ３の値（ａ３＝（６×ａ１＋２×ａ２）／８）となる（色差成分ａ１は、白三角と黒三角の加重平均から得られるので、図中わかりやすいように灰色の三角で示した）。
【００３７】
同様に、４：２：２の色差成分ｂ１、ｂ２から、４：２：０の色差成分ｂ３が生成される。色差成分ｂ３は、色差成分ｂ１から垂直下方向に２ライン間隔の６／８の位置、または色差成分ｂ２から垂直上方向に２ライン間隔の２／８の位置に配置されるので、色差成分ｂ１、ｂ２の値の加重平均をとった値が色差成分ｂ３の値（ｂ３＝（２×ｂ１＋６×ｂ２）／８）となる。なお、図５の原画像に対しても、同様な色差成分の間引きが行われて、４：２：２→４：２：０のフォーマットになる。
【００３８】
縦方向（垂直方向）に図４、図５を見れば、４：２：２→４：２：０では、輝度成分に対して色差成分は半分に間引かれることがわかる。なお、色差成分を間引く際は、実際には、間引きに使われる色差成分は上記で示した数以上の成分が使われる。すなわち、色差成分ａ３を求める場合、色差成分ａ１、ａ２だけでなく、さらにその周辺の色差成分も用いて計算されるが（色差成分ｂ３を求める場合も同様、なお選択される周辺の色差成分の数は仕様により任意）、上記では簡単な例で説明した。
【００３９】
図６、図７と図８、図９は、矩形移動画像を輝度と色差に分けた４：２：０フォーマットを２次元画面イメージで表した図である。図６、図７はそれぞれ４：２：０の参照画像の輝度成分、色差成分のTop／Bottomフィールドを表し、図８、図９はそれぞれ４：２：０の原画像の輝度成分、色差成分のTop／Bottomフィールドを表す。
【００４０】
４：２：０フォーマットでは、輝度の水平２画素、垂直２画素の計４画素分が、色差の１画素成分に対応することになる。図６、図７を見れば例えば、輝度Ｙ１〜Ｙ４の４つの画素に対して、１つの色差成分ＣｂＣｒが対応する（なお、色差成分ＣｂＣｒは、白の輝度Ｙ１、Ｙ２と、黒の輝度Ｙ３、Ｙ４に対応する色差なので、図中わかりやすいように灰色で示した）。
【００４１】
一方、図８の領域Ｒ１は、参照画像Topフィールドの黒の矩形部分、領域Ｒ２は参照画像Bottomフィールドの黒の矩形部分を示したもので、図中の矢印はTopフィールド、Bottomフィールドのそれぞれの動きベクトルを示している。Top、Bottom両方とも、動きベクトルとしては揃っているため、フレーム予測として、動きベクトルを水平＋２画素、垂直＋２ラインで表すことができる。
【００４２】
図１０、図１１は４：２：０フォーマットの動きベクトルを示す図である。図１０は図６、図８を水平ｘ１、ｘ２点で見た輝度の動きベクトル（以下、輝度ベクトルとも呼ぶ）を示している。図１１は図７、図９を水平ｘ１、ｘ２点で見た色差の動きベクトル（以下、色差ベクトルとも呼ぶ）を示している。なお、図中の白四角は、矩形領域外の輝度成分、黒四角は矩形領域内の輝度成分、白三角は矩形領域外の色差成分、黒三角は矩形領域内の色差成分を示している。
【００４３】
輝度成分で得られた輝度ベクトルをＶａとする。図１０に示す輝度ベクトルＶａの矢印の垂直方向に注目すると、垂直下方に２ライン下がれば、参照画像の画素値と、原画像の画素値が一致することがわかる。
【００４４】
例えば、参照画像Topの画素ｙ１ａは、２ライン下がれば、原画像Topの画素ｙ１ｂにくる。このように、輝度成分に対しては、すべての画素に輝度は存在するので、どのような動きベクトルであっても、原画像の輝度成分に対応する参照画像の輝度成分は存在することになる。
【００４５】
一方、図１１に対し、４：２：０フォーマットにより、色差成分に対しては間引き処理が行われるので、間引きのない輝度成分から生成した動きベクトルを色差成分にも適用すると、参照画像の色差成分と、原画像の色差成分との対応関係がずれることになる。
【００４６】
例えば、原画像Topのライン２の色差成分ｃ１は、矩形領域内（黒で示した領域）の色差情報であるが、動きベクトルＶａによると、対応する参照画像Topの色差成分はｃ２となるはずである。
【００４７】
しかし、色差が間引かれている４：２：０フォーマットの場合、色差成分ｃ２は存在しないので、この場合、参照画像Bottom側のライン１の色差成分ｃ３が動き補償で使われることになる。このｃ３は、図で見ればわかるように、矩形領域外（白で示した領域）の色差成分であるため、予測誤差が大きくなってしまう。
【００４８】
すなわち、ｃ２を動きベクトルＶａで移動すればｃ１となるので、ｃ２が予測画素となるはずが、ｃ２は存在しないので、従来では近傍位置のBottom側のｃ３を使用して予測画素を生成している（使用する画素がTopとBottomで入れ替わり、矩形領域内の色差成分と矩形領域外の色差成分との逆転現象が生じる）。すると、ｃ３はｃ１の画素値と大きく異なるので（ｃ３は矩形領域外、ｃ１は矩形領域内）、このときの予測画素と原画素との差分には大きな誤差が生じてしまうことになる。
【００４９】
同様にして、原画像Bottomのライン３の色差成分ｃ４は、矩形領域外の色差成分であるが、対応する参照画像は、本来、参照画像Bottomのｃ５の位置にあるはずだが存在しないので、参照画像Top側のライン２の色差情報ｃ６が動き補償で使われることになる。このｃ６は、矩形領域内の色差成分であるため、予測誤差が大きくなってしまう。
【００５０】
このように、４：２：０フォーマットにより色差情報が間引かれているため、輝度成分だけで差分絶対値和を求めて生成した動きベクトルを、色差成分にも適用して予測画像を生成しようとすると、本来は、原画像Topの色差成分と、参照画像Topの色差成分との差分をとるべきところが、参照画像Bottomの色差成分と差分をとることになったり、または、原画像Bottomの色差成分と、参照画像Bottomの色差成分との差分をとるべきところが、参照画像Topの色差成分と差分をとることになったりするため、対応関係にミスマッチングが発生してしまう。
【００５１】
すると、動き補償時には、予測誤差が大きくなり、符号化データの情報量の増大や画質劣化を引き起こすといった問題があった。このため、輝度成分に対する差分絶対値和の計算を、色差成分に対しても同様に行って、色差成分の差分絶対値和も含めての動きベクトルの検出を行えば、色差の大きなミスマッチを防ぐことは可能となるのだが、計算量がその分増えることになり、回路規模及び処理負荷の増大を招くことになる。
【００５２】
ここで、上記の問題点を一般化して表してみる。図１２〜図１６は問題点の一般化を説明するための図である。図１２は矩形画像が水平方向のみに動いたときの動きベクトルの様子を示している。垂直成分＋０の予測における輝度ベクトルＶ０を色差ベクトルとして使用してもミスマッチは起こらないことがわかる。
【００５３】
次に図１６を見ると、この図は矩形画像が垂直方向に＋４動いたときの動きベクトルの様子を示している。この場合も、垂直成分＋４の予測における輝度ベクトルＶ４を色差ベクトルとして使用してもミスマッチは起こらない。
【００５４】
次に図１３を見ると、この図は矩形画像が垂直方向に＋１動いたときの動きベクトルの様子を示している。垂直成分＋１の予測における輝度ベクトルＶ１を色差ベクトルとして使用すると、対応する画素が存在しないことがわかる。このような場合には、ハーフペル（半画素）補完を行って予測画素を生成する。
【００５５】
例えば、色差成分ｄ１は、垂直成分＋１の輝度ベクトルＶ１では、対応する画素が存在しないので、周辺の色差成分として、ｄ２、ｄ３から上述したような加重平均を求めて、色差成分ｄ１を補完する。同様に、色差成分ｄ４は、垂直成分＋１の輝度ベクトルＶ１では、対応する画素が存在しないので、周辺の色差成分として、ｄ３、ｄ５から加重平均を求めて、色差成分ｄ４を補完する。
【００５６】
図１４は矩形画像が垂直方向に＋２動いたときの動きベクトルの様子を示している。図１０、図１１で上述した内容と同じ現象であり、垂直成分＋２の予測における輝度ベクトルＶ２を色差ベクトルとして使用すると、矩形領域内外の画素値が逆転する現象が生じる。
【００５７】
図１５は矩形画像が垂直方向に＋３動いたときの動きベクトルの様子を示している。この場合、垂直成分＋３の予測による輝度ベクトルＶ３を色差ベクトルとして使用すると、図１３と同様に対応する画素が存在しない。このときもハーフペル補完を行って予測画素を生成する。
【００５８】
例えば、色差成分ｅ１は、垂直成分＋３の輝度ベクトルＶ３では、対応する画素が存在しないので、周辺の色差成分として、ｅ２、ｅ３から加重平均を求めて、色差成分ｅ１を補完する。同様に、色差成分ｅ４は、垂直成分＋３の輝度ベクトルＶ３では、対応する画素が存在しないので、周辺の色差成分として、ｅ３、ｅ５から加重平均を求めて、色差成分ｅ４を補完する。
【００５９】
以上、まとめると、動きベクトルの垂直成分に対して、＋０はミスマッチングが起きず、＋１〜＋３でミスマッチングが起きることになり、再び＋４でミスマッチングが起きなくなる。すなわち、垂直方向４ｎ＋０のとき、ミスマッチングは起こらず、垂直方向４ｎ＋１、４ｎ＋２、４ｎ＋３のときミスマッチングが生じることになる（ｎは整数）。
【００６０】
また、矩形領域内外の画素値の逆転現象が生じ、最も大きなミスマッチングが生じて、予測誤差が大きくなるのは、４ｎ＋２の場合である。４ｎ＋１、４ｎ＋３の場合は、Topの色差成分とBottomの色差成分との間のハーフペル補完を行ったものとなり、４ｎ＋２と比べると大きな誤差になる可能性は低いが、それでもある程度の予測誤差が生じてしまう。
【００６１】
ここで、従来技術（特開２００１−２３８２２８号公報）では、最もエラーが大きくなる垂直方向４ｎ＋２となる動きベクトルは完全に除外することで、予測誤差の低減化を図っている。しかし、上記で示したように、動きベクトル検出時には、４ｎ＋１、４ｎ＋３の場合においても予測誤差は発生するので、４ｎ＋１、４ｎ＋３で生じる予測誤差についても考慮した誤差低減化のための制御を行わなければ、符号化処理全体における画質向上にはつながらない。
【００６２】
また、伝送ビットレートが高く、伝送量に余裕があるなら、ある程度大きな予測誤差であっても伝送できる（受信側で復号化可能）。ところが、従来技術ではこういった伝送状態に関係なく、単に４ｎ＋２となる動きベクトルの除外を行っているので、このような場合にはかえって、画質劣化を引き起こす可能性がある。
【００６３】
したがって、本発明では、単に４ｎ＋２となる動きベクトルの除外を行うのではなく、回路規模及び処理負荷を大きく増大させずに、動きベクトル垂直成分の４ｎ＋１、４ｎ＋２、４ｎ＋３に対する予測誤差の低減化を図る制御を行い、動きベクトル検出・補償時に生じる色差成分のミスマッチを効率よく回避して、高品質の符号化処理を行う動きベクトル検出・補償装置及び画像符号化装置を提供するものである。
【００６４】
次に本発明の第１の実施の形態の動きベクトル検出・補償装置１０において、動きベクトル検出部１１の動作について詳しく説明する。図１７はオフセット設定テーブルを示す図である。動きベクトルの垂直成分が４ｎ＋０のときは、上述のように、色差成分のミスマッチングは発生しないので、オフセットはゼロとする。
【００６５】
また、４ｎ＋１、４ｎ＋２、４ｎ＋３のときは、ミスマッチングが発生するが、４ｎ＋１と４ｎ＋３及び４ｎ＋２を比べると、４ｎ＋２の誤差は特に大きな値となり、４ｎ＋１、４ｎ＋３はどちらも同じような誤差となると考えられるので、４ｎ＋１、４ｎ＋３には同じオフセット値OfsAとし、４ｎ＋２はオフセット値OfsBを設定する。
【００６６】
次にオフセットの決め方について説明する。動きベクトル検出部１１は、オフセットOfsA、OfsBを、伝送ビットレート、量子化パラメータ、色差エッジ状態（色差エッジが大きいか否か）、色差成分の予測誤差の少なくとも１つにもとづいて、適応的に設定する。オフセットOfsA、OfsBは、基本的には、量子化パラメータに応じて調整するが、伝送ビットレートや画像の色状態に応じて決定することもできる。
【００６７】
図１８、図１９は伝送ビットレートまたは色差エッジ状態に応じてのオフセット決定を説明するための図である。原画像のマクロブロックＭ１の予測ブロックを探索する場合を考える。
【００６８】
図１８に対し、マクロブロックＭ１の画素平均値（２５６個ある画素値の合計を２５６で割った１画素あたりの平均値）を１０とする。また、参照画像上において、動きベクトル垂直成分４ｎ＋０の位置のブロックＭ１ａの画素平均値が１１、４ｎ＋１の位置のブロックＭ１ｂの画素平均値が１０であったとする。
【００６９】
ここで、マクロブロックＭ１の予測ブロックを求める場合、マクロブロックＭ１と、ブロックＭ１ａ、Ｍ１ｂそれぞれとの差分絶対値和が最小値となる方のブロックが予測ブロックとなるが、伝送ビットレートが低く、色差エッジが大きくて色差成分のミスマッチングの影響が大きくでると予想される場合には（量子化によって予測誤差の歪みが大きくでると予想される場合には）、たとえマクロブロックＭ１と４ｎ＋１のブロックＭ１ｂとの差分絶対値和の方が、マクロブロックＭ１と４ｎ＋０のブロックＭ１ａとの差分絶対値和よりも小さい値であっても、４ｎ＋０のブロックＭ１ａが選択されるようにオフセットOfsAを決定する。
【００７０】
この場合、例えばOfsA＝２５７と設定して、マクロブロックＭ１と、ブロックＭ１ａ、Ｍ１ｂそれぞれとの画素平均値を用いての差分絶対値和を計算すると、マクロブロックＭ１と４ｎ＋１のブロックＭ１ｂとの差分絶対値和dif1は、｜マクロブロックＭ１の画素平均値−ブロックＭ１ｂの画素平均値｜×２５６＋OfsA＝｜１０−１０｜×２５６＋２５７＝２５７となる。
【００７１】
また、マクロブロックＭ１と４ｎ＋０のブロックＭ１ａの差分絶対値和dif0は、｜マクロブロックＭ１の画素平均値−ブロックＭ１ａの画素平均値｜×２５６＋０（４ｎ＋０のオフセットはゼロ）＝｜１０−１１｜×２５６＝２５６となる。
【００７２】
計算結果を比較すると、dif0（４ｎ＋０との差分絶対値和）＜dif1（４ｎ＋１との差分絶対値和）⇔２５６＜２５７となるので、実際の差分絶対値和の値は４ｎ＋１の方が小さいにもかかわらず、４ｎ＋１が選ばれないようにオフセットOfsAをあらかじめ加えておくことで、４ｎ＋０の方が差分絶対値和が小さくなり、こちらが選ばれるようになる。
【００７３】
すなわち、伝送ビットレートが低く、画像の色変化が大きい場合、４ｎ＋１の差分絶対値和の方が最小値となるような場合でも、４ｎ＋０のブロックの画素平均値と、４ｎ＋１（または４ｎ＋３でも同様）のブロックの画素平均値との差分が１以下程度であるならば、４ｎ＋０のブロックを選んでも輝度成分の誤差として顕著な画質劣化を与えないので、色差成分のミスマッチングが生じる４ｎ＋１を選ぶのではなく、４ｎ＋０のブロックが選ばれるようなオフセットOfsAを設定する。
【００７４】
同様に図１９に対し、マクロブロックＭ１の画素平均値を１０、参照画像上の動きベクトル垂直成分４ｎ＋０のブロックＭ１ａの画素平均値が１２、４ｎ＋２のブロックＭ１ｃの画素平均値が１０であったとする。
【００７５】
この場合、例えばOfsB＝５１３と設定して、マクロブロックＭ１と、ブロックＭ１ａ、Ｍ１ｃそれぞれとの画素平均値を用いての差分絶対値和を計算すると、マクロブロックＭ１と４ｎ＋２のブロックＭ１ｃとの差分絶対値和dif2は、｜マクロブロックＭ１の画素平均値−ブロックＭ１ｃの画素平均値｜×２５６＋OfsB＝｜１０−１０｜×２５６＋５１３＝５１３となる。また、マクロブロックＭ１と４ｎ＋０のブロックＭ１ａとの差分絶対値和dif0は、｜１０−１２｜×２５６＝５１２となる。
【００７６】
計算結果を比較すると、dif0（４ｎ＋０との差分絶対値和）＜dif2（４ｎ＋２との差分絶対値和）⇔５１２＜５１３となるので、実際の差分絶対値和の値は４ｎ＋２の方が小さいにもかかわらず、４ｎ＋２が選ばれないようにオフセットOfsBをあらかじめ加えておくことで、４ｎ＋０の方が差分絶対値和は小さくなり、こちらが選ばれるようになる。
【００７７】
すなわち、伝送ビットレートが低く、画像の色変化が大きい場合、４ｎ＋２の差分絶対値和の方が最小値となるような場合でも、４ｎ＋０のブロックの画素平均値と、４ｎ＋２のブロックの画素平均値との差分が２以下程度であるならば、色差成分のミスマッチングが生じる４ｎ＋２を選ぶよりも、輝度成分の誤差として２以下の４ｎ＋０のブロックを選んだ方が顕著な画質劣化を与えないものとして、４ｎ＋０のブロックが選ばれるようにオフセットOfsBを設定する。
【００７８】
一方、ある程度伝送ビットレートも高く、多少予測誤差が大きくても予測差分を受信側へ送りきることができる場合は、４ｎ＋０のブロックの選択されやすさを少なくすべき値の低いオフセット（例えば、OfsA＝３２、OfsB＝６４）を４ｎ＋１、４ｎ＋２、４ｎ＋３側に設定し、４ｎ＋０の動きベクトルの選ばれやすさを少な目にすることもできる。
【００７９】
次に動きベクトル検出処理の具体的なプログラムについて説明する。図２０は動きベクトル検出処理のプログラム例を示す図である。通常のＴＶ放送などに適用される７２０画素×４８０ラインの映像を例にとると、４：２：０フォーマットとしてフレームメモリに格納されるため、１フレームあたりのデータは、輝度成分で７２０画素×４８０ラインとなる。
【００８０】
また、原画像の輝度成分のデータをYo[y][x]（x=0〜719, y=0〜479）、参照画像の輝度成分のデータをYr[y][x]（x=0〜719, y=0〜479）とし、各成分の値が0〜255の範囲の値とすると、原画像のあるマクロブロック座標(Mx,My)に対しての差分絶対値和が最小となるフレーム予測動きベクトルVx,Vyは、例えば、図に示すようなプログラムの処理により求めることができる（ただし、Mx=0〜44、My=0〜29であり、abs(v)は、vの絶対値をとる関数とする）。
【００８１】
〔Ｓ１〕宣言文である。Rx、Ryはそれぞれ、参照画像上の水平方向、垂直方向の画素を示す。x、yは、原画像上の水平方向、垂直方向の画素を示す。Vx,Vyはそれぞれ、動きベクトルの水平成分、垂直成分を表す。また、ここでのVdiffは、差分絶対値和がとりえない値となるように、１６×１６個の各画素がすべて最大値２５５となった値に１を加算して、初期値として設定する。diffはオフセット値または差分絶対値和の計算結果を示す。
【００８２】
〔Ｓ２〕Ryを０〜（４７９−１６）まで＋１ずつ繰り返し、Rxを０〜（７１９−１６）まで＋１ずつ繰り返す。
〔Ｓ３〕参照画像上のブロックが存在するRyから、動きベクトルの垂直成分Myを引いた値を４で割って余りを求める。そして、余り０ならオフセット値としてdiff=0、余り１ならオフセット値としてdiff=OfsA、余り２ならオフセット値としてdiff=OfsB、余り３ならオフセット値としてdiff=OfsAとする。
【００８３】
〔Ｓ４〕yを０〜１６まで＋１ずつ繰り返し、xを０〜１６まで＋１ずつ繰り返し、原画像のマクロブロックと、参照画像のマクロブロックとの差分絶対値和を求める（図２１で後述）。
【００８４】
〔Ｓ５〕前の差分絶対値和Vdiffと、計算で求めた差分絶対値和diffとを比較し、Vdiff＞diffならば、diffをVdiffに置き換える。また、このときの画素のRx、RyをそれぞれVx、Vyとする。すなわち、ここでは、最小値の更新を行っている。
【００８５】
〔Ｓ６〕Vx−MxをVxに、Vy−MyをVyにして、Vx、Vyをベクトル表現に書き直す。
図２１は差分絶対値和を求める際の画素探索の様子を示す図である。図２０のステップＳ４から、原画像における任意の画素は、Yo[My*16+y] [Mx*16+x]であり、参照画像における任意の画素は、Yr[Ry+y] [Rx+x]で表せる。
【００８６】
原画像のマクロブロックＭ１と参照画像のブロックＭ２との差分絶対値和を求めるとする。マクロブロックＭ１は、マクロブロック座標（My,Mx）＝（0,1）であるので、マクロブロックＭ１内の任意の画素は、Yo[My*16+y] [Mx*16+x]＝Yo[0*16+y] [1*16+x]＝Yo[y] [16+x]で表せる。
【００８７】
また、参照画像のブロックＭ２は、探索すべき最初の画素位置が１６ライン目の１６画素目に位置するので、ブロックＭ２内の任意の画素は、Yr[Ry+y] [Rx+x]＝Yr[16+y] [16+x]で表せる。
【００８８】
ここで、xとyを０〜１５まで増やすことで、ブロック内において、ステップＳ４で示した差分絶対値和の計算が実行される。例えば、x＝０、y＝０ならば、マクロブロックＭ１の画素Yo[y] [16+x]＝Yo[0] [16]と、ブロックＭ２の画素Yr[16] [16]との差分の絶対値が計算される。また、x＝１５、y＝１５ならば、マクロブロックＭ１の画素Yo[y] [16+x]＝Yo[15] [31]と、ブロックＭ２の画素Yr[31] [31]との差分の絶対値が計算される（このような計算が２５６回行われて差分絶対値和を求める）。
【００８９】
なお、上記のプログラム・ステップにおいて、ステップＳ３が本発明により追加した部分であり、その他のステップは、従来の動きベクトル検出処理で使用されている部分である。このように、本発明の機能は、動きベクトルの垂直成分によってオフセットを設定するプログラミングと、そのための回路を付加するだけで実行することができるので、回路規模及び処理負荷を大きく増大させずに、色差成分のミスマッチングを効率よく回避することが可能になる。
【００９０】
次に図２２〜図３５を用いて、図２、図３で上述したような、矩形が移動している場合の映像を、Ｔｏｐ／Ｂｏｔｔｏｍフィールドを組み合わせたフレーム形式で見た場合の、参照画像と原画像で、背景の輝度値を２００、矩形内部の輝度値を１５０とした場合に、動きベクトルの垂直成分の関係と、差分画像（検出した動きベクトルで画素を移動して生成した予測画像と、原画像との差分で求めた画像）の関係について説明する。
【００９１】
図２２は動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図であり、図２３はその差分画像を示す図である。図２４は動きベクトルの垂直成分が４ｎ＋１の場合の参照画像と原画像を示す図であり、図２５はその差分画像を示す図である。
【００９２】
また、図２６は動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図であり、図２７はその差分画像を示す図である。図２８は動きベクトルの垂直成分が４ｎ＋３の場合の参照画像と原画像を示す図であり、図２９はその差分画像を示す図である。
【００９３】
図２２に対し、本来の図形の垂直方向の動きは＋２であるため、図２３の差分画像は完全に一致して全画素ともに差分０となり、差分絶対値和も０となるが、他の場合は差分が発生している。
【００９４】
図２４に示す例の４ｎ＋１の場合は、図２５で差分絶対値和は２３００（＝５０×４６）となる。図２６に示す例の４ｎ＋０の場合は、図２７で差分絶対値和は６００（＝５０×１２）となる。図２８に示す例の４ｎ＋３の場合は、図２９で差分絶対値和は２１００（＝５０×４２）となる。
【００９５】
このような場合、従来の方式では、差分絶対値和が最も小さくなる図２２に示す動きベクトルが選択されることになるが、本発明ではオフセット量としてOfsBを例えば、６００以上にすることで、本来の差分絶対値和が最小となる動きベクトルの垂直成分＋２に代わって、垂直成分＋０の動きベクトル（図２６）を選択させることができる。
【００９６】
また、図３０は動きベクトルの垂直成分が４ｎ＋１の場合の参照画像と原画像を示す図であり、図３１はその差分画像を示す図である。図３２は動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図であり、図３３はその差分画像を示す図である。図３４は動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図であり、図３５はその差分画像を示す図である。
【００９７】
ここで、図３０に対して、図形の垂直方向の動きが＋１の場合、図３１に示す差分絶対値和は０となるが、図３２に示すように４ｎ＋０では、図３３で差分絶対値和が２５００となっており、図３４に示すように４ｎ＋２では、図３５で差分絶対値和が２３００となっている。
【００９８】
このような場合も、従来方式では、差分絶対値和が最も小さくなる図３０の動きベクトルが選択されることになるが、本発明によりオフセット量としてOfsAを例えば、２５００以上にすることで、本来の差分絶対値和が最小となるベクトル＋１に代わって、垂直成分＋０の動きベクトル（図３２）を選択させることができる。
【００９９】
次に矩形内部が一様な値でない場合について図３６〜図３９を用いて説明する。図３６は動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図であり、図３７はその差分画像を示す図である。図３８は動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図であり、図３９はその差分画像を示す図である。
【０１００】
図３６の例は、図形の垂直方向の動きが＋２の場合であるが、矩形内部が一様な値でなく、輝度値が水平方向に４０のラインと水平方向に１６０のラインがある。
この場合、図３７の差分画像は０となるが、図３８、図３９に示すように、垂直ベクトルを４ｎ＋０とした場合の差分絶対値和が９１２０（＝１６０×１２＋１２０×６×１０）と大きな値となっている。この場合でも、OfsBを９１２０以上にすれば、＋２のベクトルではなく、＋０のベクトルを選択させることが可能であるが、９１２０という値は、事実上、動き検出が当たっていない状態に近く、色差ミスマッチを防ぐために４ｎ＋０を選んだとしても、今度は輝度データのミスマッチが大きすぎて画質的に劣化が目立つようになる。このため、仮に色差ミスマッチが発生したとしても４ｎ＋２のベクトルを選択した方が、画質的には良いと考えられる。
【０１０１】
極端に言えば、輝度成分の差分絶対値和の理論上の最大値である２５５×２５６＝６５２８０をOfsAやOfsBに設定すれば、色差のミスマッチの可能性のある４ｎ＋１、４ｎ＋３や４ｎ＋２のベクトルをすべて排除することが可能だが、輝度のミスマッチが極端に大きくなる場合は得策ではない。したがって、本発明では、OfsAやOfsBを適切に決めることで、輝度のミスマッチ量とバランスさせながら、色差のミスマッチの発生の可能性がある４ｎ＋１、４ｎ＋３や４ｎ＋２の動きベクトルの発生を抑制するものである。
【０１０２】
次に色差成分の予測誤差にもとづいて、オフセットを決める方法について説明する。OfsA及びOfsBの値としては、ビットレートや絵柄に応じて適切な固定値を決めてもよいが、以下に述べるように、色差差分の予測誤差から適応的にOfsAまたはOfsBを算出することも可能である。
【０１０３】
まず、動き補償部１２において、色差成分に関する原画像から予測画像の差分を求める処理で得られたＣｂ、Ｃｒの差分値に対して、あらたにＣｂ差分値及びＣｒ差分値それぞれの絶対値の和Cdiffを求める機能を追加する。
【０１０４】
図４０はＣｂ差分値及びＣｒ差分値それぞれの絶対値和Cdiffを求めるプログラムを示す図である。色差の動き補償後の差分画像データをdiff CB[][]、diff CR[][]とする。もともと、動き補償処理として、参照画像と原画像の差分を計算する処理は存在するため、Cdiffを求めるためのプログラムは、図中、下線を引いた部分だけである。
【０１０５】
ここで、各マクロブロックについて、輝度成分による動き検出処理により求められた差分絶対値和Vdiffと、動き補償部１２にあらたに設けた回路により求められた色差成分の差分絶対値和Cdiffとの関係は、輝度成分が１６×１６＝２５６データであるのに対し、色差成分は４：２：０変換によりＣｂとＣｒ各々８×８＝６４データで、CdiffはＣｂとＣｒの差分絶対値和の合算で１２８データ分に相当するため、Vdiff：Cdiff ＝２：１の関係と考えられる。このため、色差ミスマッチが発生していない理想状態では、以下の式（１）の関係となる。
【０１０６】
【数１】
2006041943.tif 000003
【０１０７】
垂直ベクトルが４ｎ＋１、４ｎ＋３や４ｎ＋２の場合に、色差ミスマッチが発生していなければ、概ね上記の関係を満たすが、色差ミスマッチが発生すると、Cdiffの値が大きくなる（２×Cdiff＞Vdiff）。このため、オフセットOfsA、OfsBは以下の式（２）、式（３）で設定してよい。
【０１０８】
【数２】
2006041943.tif 000004
【０１０９】
ただし、iは垂直ベクトルが４ｎ＋１、４ｎ＋３となるマクロブロックの識別子で、ｎはマクロブロックの個数とする。
【０１１０】
【数３】
2006041943.tif 000005
【０１１１】
ただし、iは垂直ベクトルが４ｎ＋２となるマクロブロックの識別子で、ｎはマクロブロックの個数とする。
なお、この処理では、OfsA、OfsBが極端に大きな値になって、そもそも、垂直ベクトルとして、４ｎ＋１、４ｎ＋３や４ｎ＋２が全くでなくなってしまう問題があるため、実際の処理では、OfsA、OfsBが大きくなり過ぎないよう、上限を設けたり、処理が進むにしたがって、OfsA、OfsBを徐々に下げていくような処理を加えたり、またはシーンが大きく変わるような場合は、初期値に戻すなどすることで、OfsA及びOfsBが適切な値に収束するようにする必要がある。
【０１１２】
また、ここでは本発明の本質的な原理説明のために、CdiffとVdiffの関係を式（１）のような簡略式としているが、実際には、輝度と色差ではダイナミックレンジが異なるし、モノクロに近い映像とカラフルな映像では輝度と色差のバランスが異なるために、これらのことを考慮して、本来は、以下の式（４）とする方がよい。
【０１１３】
【数４】
2006041943.tif 000006
【０１１４】
ただしαは補正係数で、これは、システムのＡ／Ｄコンバータの特性など多くの要因が関係するため、ここでは方式を限定しないが、式（５）のように色差ミスマッチが発生していない状態でのVdiffとCdiffの関係を数画面分に渡って統計をとることで求めることも可能である。
【０１１５】
【数５】
2006041943.tif 000007
【０１１６】
ただし、iはVdiff(i)＜OfsAかつVdiff(i)＜OfsBとなるマクロブロックの識別子で、ｎはマクロブロックの個数である。ここで、Vdiffに条件をつけているのは、OfsA、OfsBによりベクトルが強制的に４ｎ＋０の選択になっている場合の影響を避けるためである。
【０１１７】
次に本発明の第２の実施の形態について説明する。第１の実施の形態では、色差ミスマッチングを起こす可能性のあるフレーム予測で求めた動きベクトルの垂直成分４ｎ＋１、４ｎ＋３及び４ｎ＋２に対して、オフセットOfsA、OfsBを適応的に決めて、差分絶対値和にオフセットを加算しておくことで、４ｎ＋１、４ｎ＋３、４ｎ＋２の予測ブロックを選ばれにくくして、色差成分のミスマッチングを回避する構成とした。
【０１１８】
一方、本発明の第２の実施の形態では、オフセットを加算するのではなく、フレーム予測と、フィールド予測とを適応的に切り替えることで、色差成分のミスマッチングを回避するものである。
【０１１９】
図４１は第２の実施の形態の原理図を示す図である。動きベクトル検出・補償装置２０は、動きベクトル検出部２１、動き補償部２２から構成される。動きベクトル検出部２１は、インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで動きベクトルを検出する際に、フレーム予測で検出した動きベクトル（以下、フレームベクトルとも呼ぶ）に対し、フレームベクトルがとりうる垂直成分に応じて、使用する動きベクトルを選択する。
【０１２０】
具体的には、フレームベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、４ｎ＋０の場合は動きベクトルとしてフレームベクトルをそのまま使用する。
【０１２１】
また、フレーム予測を行った結果、フレームベクトルが４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかになった場合は、フィールド予測に切り替えて再度動きベクトルを検出する（フィールド予測で検出した動きベクトルを以下、フィールドベクトルとも呼ぶ）。そして、フィールドベクトルを動きベクトルとして使用する。
【０１２２】
動き補償部２２は、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める。このように、フレームベクトルまたはフィールドベクトルのいずれかを選択することで、色差成分のミスマッチングを抑制する。
【０１２３】
なお、ＭＰＥＧ２の符号化処理における動きベクトル検出では、マクロブロックの処理毎に、フレーム予測またはフィールド予測のどちらで動きベクトルを検出するかを決めることができる。通常、Topフィールド及びBottomフィールド共に、動きベクトルが揃っているような場合には、フレーム予測を行って動きベクトルを求めるが、TopフィールドとBottomフィールドの動きベクトルが揃っていないような場合には、フィールド予測を行って動きベクトルを求めることになる。
【０１２４】
また、フレーム予測で動きベクトルを検出した場合、動きベクトルの情報は、参照画像から原画像へ向かう１つのベクトルの水平・垂直成分となる。また、フィールド予測で動きベクトルを検出した場合の動きベクトルの情報は、２本の動きベクトルが存在することになるので、それぞれのベクトルの水平・垂直成分と、参照画像のフィールドを示すフィールドセレクトとになる。
【０１２５】
例えば、図４１のフレーム予測の動きベクトルＶｂの情報は、ベクトルＶｂの水平・垂直成分となる。また、フィールド予測の動きベクトルＶｃの情報は、フィールドセレクトがTopで、かつベクトルＶｃの水平・垂直成分となる。また、動きベクトルＶｄは、フィールドセレクトがBottomで、かつベクトルＶｄの水平・垂直成分となる。
【０１２６】
次にフレームベクトルの垂直成分が４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかになったときに、フィールド予測に切り替えてフレームベクトルを検出することで、色差成分のミスマッチングが回避できる理由について説明する。
【０１２７】
図４２はフィールド予測における色差成分のミスマッチング回避を説明するための図である。図１１で上述したように、フレームベクトルが４ｎ＋２の場合、例えば、原画像のTopフィールドの色差成分ｃ１に対して、本来は参照画像のTopフィールドの画素に対応すべきｃ２が、その位置に存在しないので、Bottomフィールドからの色差成分ｃ３を用いて予測画素を生成していた。このために大きなミスマッチングが生じていたが、フィールド予測にすると、たとえ対応すべき位置に色差成分の画素ｃ２が存在しなくても、同じフィールド内の最も近傍の画素ｃ６を選ぶことになる。
【０１２８】
すなわち、フレーム予測では、例えば、Topに対応する画素がなければ、近傍画素としてBottom側に位置する画素を持ってきてしまうので、誤差が大きくなったが、フィールド予測では、たとえTopに対応する画素がなくても、同じTopのフィールドの中から画素を補完するので（フィールド予測ではフィールドセレクトという情報があるため、同じフィールド内で補完可能である）、大きな誤差が生じなくなり、フレーム予測で生じていたような大きなミスマッチングが起きなくなる。
【０１２９】
このように、第２の実施の形態では、輝度成分による動きベクトル検出処理時に、色差ミスマッチを起こす可能性のあるフレーム予測でベクトルの垂直成分４ｎ＋２、４ｎ＋１及び４ｎ＋３となった場合は、フレーム予測にせず、フィールド予測にすることで、色差のミスマッチが回避可能である。
【０１３０】
しかし、フィールド予測はフレーム予測に対して、動きベクトルの情報量が大きくなるため、ベクトルデータのオーバーヘッドが大きくなる。よって、これを回避するため、マクロブロック内の色差エッジを検出する回路（色差エッジ検出部）を追加し、色差ミスマッチの影響が大きい場合に限って、フィールド予測に切り替えるようにする。
【０１３１】
色差のミスマッチにより予測誤差が大きくなるのは、矩形画像内と矩形画像外の色差成分が大きく異なる場合である（なお、矩形内が黒で、矩形外が白であるような映像では色差エッジはない。なぜなら黒も白もＣｂ、Ｃｒは同じ値であり、輝度値だけで白、黒が表現されるからである（ちなみに白のＹは0xffで、黒はのＹは0x00である））。
【０１３２】
例えば、矩形外が赤系の色（Ｃｂ＜１２７、Ｃｒ＞１２８）で、矩形内が青（Ｃｂ＞１２８、Ｃｒ＜１２７）といった場合、色差のミスマッチの影響が大きいが、矩形の内外が共に赤や青など、色差成分が似ていて、輝度成分のみが異なるというような場合は、例え色差のミスマッチが発生していても影響が少ない。
【０１３３】
このように色差のミスマッチが発生しても、色差成分がもともと似ているなら影響は少なく、実際に、人物や風景などの映像の場合、色成分が大きく変化するのは稀であり、このような場合は、フレーム予測のままでも色差ミスマッチによる予測誤差の増大の影響はあまりない。一方、看板や字幕のエッジなど、色成分が大きく変化する場合に色差ミスマッチがおきると、看板や字幕の色が周囲の画像に滲み出たような見苦しい映像となるため、このような状態を判断するために、色差のエッジ判定回路を追加する。
【０１３４】
次にフィールドベクトルの設定について説明する。図４３はフレームベクトルとフィールドベクトルの垂直成分の対応表を示す図である。動き検出部からの動きベクトルが、フレーム予測で垂直成分４ｎ＋２、４ｎ＋１及び４ｎ＋３のいずれかであり、かつ色差エッジ検出部の結果が色差エッジありと判定された場合には、予測タイプをフィールド予測に切り替えて、図のテーブルに示すようなフィールドベクトルを検出する。
【０１３５】
次に図４４〜図４６を用いて、図４３に示したフィールドベクトルを図示して説明する。図４４はフレームベクトル４ｎ＋２となったときのフィールドベクトルを示す図である。フレームベクトルが４ｎ＋２となったとき、フィールド予測にすると、フィールドベクトルは、Topの参照画像→Topの原画像へ向かう動きベクトルとして、Top側のフィールドベクトルの垂直成分は２ｎ＋１及びフィールドセレクトはTop、Bottomの参照画像→Bottomの原画像へ向かう動きベクトルとして、Bottom側のフィールドベクトルの垂直成分は２ｎ＋１及びフィールドセレクトはBottomとなる。
【０１３６】
なお、輝度で２ｎ＋１のベクトルは、色差ではその半分の（ｎ＋０．５）のベクトルとなる。０．５の部分はハーフペル補完処理が行われ、近傍画素の平均として求められる。図の場合、色差成分ｆ１、ｆ２はそれぞれ(Ct(n)+Ct(n+1))/2、(Cb(n)+Cb(n+1))/2により求まる。
【０１３７】
なお、フィールド予測のときに行われるハーフペル補完は、フレーム予測の４ｎ＋１、４ｎ＋３のときに行ったハーフペル補完と比べると誤差は少ない。なぜなら、フィールド予測のときに行われるハーフペル補完は、同一フィールド上（TopとTopまたはBottomとBottom）で行われるのに対し、フレーム予測のときに行われるハーフペル補完は、異なるフィールド上（TopとBottom）で行われるからである。
【０１３８】
図４５はフレームベクトル４ｎ＋１となったときのフィールドベクトルを示す図である。フレームベクトルが４ｎ＋１となったとき、フィールド予測にすると、フィールドベクトルは、Bottomの参照画像→Topの原画像へ向かう動きベクトルとして、Top側のフィールドベクトルの垂直成分は２ｎ及びフィールドセレクトはBottom、Topの参照画像→Bottomの原画像へ向かう動きベクトルとして、Bottom側のフィールドベクトルの垂直成分は２ｎ＋１及びフィールドセレクトはTopとなる。
【０１３９】
なお、輝度で、２ｎ、２ｎ＋１のベクトルは、色差ではその半分のｎ、（ｎ＋０．５）のベクトルとなる。また、色差成分ｇ１は、ｇ２とｇ３から補完される。
図４６はフレームベクトル４ｎ＋３となったときのフィールドベクトルを示す図である。フレームベクトルが４ｎ＋３となったとき、フィールド予測にすると、フィールドベクトルは、Bottomの参照画像→Topの原画像へ向かう動きベクトルとして、Top側のフィールドベクトルの垂直成分は２ｎ＋２及びフィールドセレクトはBottom、Topの参照画像→Bottomの原画像へ向かう動きベクトルとして、Bottom側のフィールドベクトルの垂直成分は２ｎ＋１及びフィールドセレクトはTopとなる。
【０１４０】
なお、輝度で、２ｎ＋２、２ｎ＋１のベクトルは、色差ではその半分のｎ＋１、（ｎ＋０．５）のベクトルとなる。また、色差成分ｈ１は、ｈ２とｈ３から補完される。
次に動きベクトル補正の機能をＯＦＦすることについて説明する。インタレース走査された画像信号の動きベクトル検出を行うと、色差成分のミスマッチングが生じるので、第１の実施の形態ではオフセットの加算、第２の実施の形態ではフィールド予測への切り替えといった動きベクトル補正を行うことで、ミスマッチングの回避を行ったが、処理対象の画像信号がインタレース走査でないプログレッシブ（ノンインタレース）画像の場合には、色差ミスマッチングがそもそも発生しない。したがって、このような画像信号が入力した場合には、第１、第２の実施の形態は共に、上述したような動きベクトル補正は不要であり、動きベクトル検出部において、動きベクトル補正機能をＯＦＦにする。
【０１４１】
ただし、映画をＴＶ放送などに合わせるため２：３プルアップと呼ばれる処理によってインタレース走査に変換した場合、本来は１つの映像を、時間的にTOP画像とBOTTOM画像に分けて入力されることになる。この場合は、インタレース走査ではあるものの、本来は同時刻であるTOP画像とBOTTOM画像を組みとしてフレーム化したものであるので、フレーム間では色差ミスマッチが発生しない。このような入力画像においては、画像入力処理の段階で、３：２プルダウンを行うが、３：２プルダウンを施してプログレッシブ化可能な映像に対しても、動きベクトルの補正機能はＯＦＦとする。
【０１４２】
図４７は２：３プルアップ及び３：２プルダウンの処理を示す図である。映画素材の画像信号をＴＶ放送のフォーマットに変換する場合、映画素材は１秒間に２４コマ、ＴＶは１秒間に３０コマなので、２４→３０にコマ数を変換する必要がある。映画素材のフォーマットからＴＶのフォーマットに変換する処理を２：３プルアップ（またはテレシネ）と呼ぶ。
【０１４３】
ここで、１フレームが１／２４秒の映画素材のフレームＡ〜Ｄを、１フレームが１／３０秒のＴＶのコマ数に変換すると、フレームＡは、TopフィールドＡT、BottomフィールドＡB、TopフィールドＡTに変換され、フレームＢは、BottomフィールドＢB、TopフィールドＢTに変換され、フレームＣは、BottomフィールドＣB、TopフィールドＣT、BottomフィールドＣBに変換され、フレームＤは、TopフィールドＤT、BottomフィールドＤBに変換される。
【０１４４】
すなわち、１フレームが１／２４秒の４枚のフレーム（（１／２４）×４＝１／６）が、１フィールドが１／６０秒の１０枚のフィールド（（（１／６０）×１０＝１／６）に変換される。
【０１４５】
ＴＶ放送のフォーマットに変換された画像信号に、ＭＰＥＧのエンコード処理を施す場合には、２：３プルアップで生成されたフィールドに、先に３：２プルダウンを施してからエンコードを行う。ここでの３：２プルダウンでは、符号化に無駄な重複しているフィールドＦ３、Ｆ８を省くことで、エンコード入力画像を生成する。
【０１４６】
エンコード入力画像に対し、TopフィールドＡTと、BottomフィールドＡBは、元々１つの映画素材のフレームＡから生成したものなので、これらのフィールド間に動きはない。他のフレームＢ〜Ｄに関するフィールドも同様である。したがって、TopとBottomからなるフレームであっても、３：２プルダウン後の画像信号にはフィールド間で動きがないので、このような画像信号の符号化を行う際には動きベクトル補正機能をＯＦＦすることになる。
【０１４７】
次に本発明の動きベクトル検出・補償装置を適用した、ＭＰＥＧ２等に使用される画像符号化装置について説明する。図４８は第１の実施の形態の動きベクトル検出・補償装置１０を含む画像符号化装置の構成を示す図である。
【０１４８】
画像符号化装置３０−１は、Ａ／Ｄ部３１、画像入力部３２、動きベクトル検出・補償部１０ａ、符号化部３３、ローカルデコーダ３４、フレームメモリ３５、全体制御部３６から構成される。また、符号化部３３はＤＣＴ部３３ａ、量子化部３３ｂ、可変長符号化部３３ｃから構成され、ローカルデコーダ３４は逆量子化部３４ａ、逆ＤＣＴ部３４ｂから構成される。
【０１４９】
Ａ／Ｄ部３１は、ＴＶ放送などのアナログ画像信号をデジタル信号に変換して輝度色差フォーマットとして、４：２：２フォーマットのデジタル画像信号を生成する。
画像入力部３２は、４：２：２フォーマットの画像信号を４：２：０フォーマットの画像信号に変換する。４：２：０の画像信号は、フレームメモリ３５に格納される。なお、全体制御部３６は、フレームメモリ３５内のフレーム画像の管理や各構成要素同士のインタフェース制御等を行う。
【０１５０】
動きベクトル検出・補償部１０ａは、第１の実施の形態で上述した機能を有し、動きベクトル検出部１１は、フレームメモリ３５からマクロブロック単位の原画像とそれより大きな領域の参照画像を読み出し、原画像のマクロブロックに対して、オフセット加算によって求めた各画素の差分絶対値和が最も小さくなる、参照画像領域上の位置を動きベクトルとして算出する。
【０１５１】
動き補償部１２は、フレームメモリ３５から画像信号を読み出し、検出された動きベクトルを用いて、原画像マクロブロックと参照画像の該当動きベクトル位置から予測画像を生成し、その差分を予測誤差としてＤＣＴ部３３ａに送信する。
【０１５２】
ＤＣＴ部３３ａは、予測誤差をＤＣＴ変換し、変換係数を量子化部３３ｂに送信する。量子化部３３ｂは、全体制御部３６により指示された量子化パラメータにより変換係数を量子化し、逆量子化部３４ａ及び可変長符号化部３３ｃに送信する。可変長符号化部３３ｃは、ハフマン符号化などの符号化処理を行って符号化データを生成し出力する。
【０１５３】
逆量子化部３４ａは、量子化されたデータを、量子化パラメータにしたがって逆量子化し、逆ＤＣＴ部３４ｂに送信し、逆ＤＣＴ部３４ｂは、逆ＤＣＴ変換して再生予測誤差を生成し、動き補償部１２に送信する。動き補償部１２では、予測画像に再生予測誤差を加算することで、ローカルデコード画像（次の処理で用いられる参照画像となる）を生成し、フレームメモリ３５に出力する。
【０１５４】
図４９は第２の実施の形態の動きベクトル検出・補償装置２０を含む画像符号化装置の構成を示す図である。画像符号化装置３０−２は、図４８で示した画像符号化装置３０−１と基本的な構成は同じである。異なる箇所は、第２の実施の形態の機能を含む動きベクトル検出・補償部２０ａと、フレーム予測とフィールド予測を切り替えて動きベクトルを検出する際に、マクロブロック内の色差エッジを検出する色差エッジ検出部３７とを含む点である。
【０１５５】
色差エッジ検出部３７は、画像入力部３２から出力された画像信号をマクロブロック単位で色差エッジを検出し、フレームメモリ３５に格納する。動きベクトル検出部２１は、フレームメモリ３５から読み出した原画像、参照画像及び色差エッジ情報にもとづいて動きベクトル検出を行う。その他の動作は同様なので説明は省略する。
【０１５６】
以上説明したように、本発明の第１の実施の形態では、オフセット加算によって求めた各画素の差分絶対値和が最も小さくなる、参照画像領域上の位置を動きベクトルとして検出することで、従来の動き検出回路の構成に対して、簡単な機能追加だけで色差ミスマッチを抑止する効果が得られる。また、第２の実施の形態では、色差エッジの検出回路の追加により、色差ミスマッチが発生していてもほとんど予測誤差に影響ない場合は、動きベクトル補正を行わず、予測誤差に影響がある場合にのみ予測タイプをフレーム予測からフィールド予測に切り替えることで、符号化データの増大を最小限にすることができる。
【０１５７】
なお、上記では、第１、第２の実施の形態を独立して示したが、両方を使って第１の実施の形態で緩くベクトルの制約を与え、第２の実施の形態では、第１の実施の形態で制限しきれなかったものをケアするといったことも可能である。
【０１５８】
（付記１）  画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置において、
インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、
検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部と、
を有することを特徴とする動きベクトル検出・補償装置。
【０１５９】
（付記２）  前記動きベクトル検出部は、動きベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、原画像の処理ブロックと、４ｎ＋０の位置の参照画像のブロックとの差分絶対値和のオフセットはゼロに設定し、原画像の処理ブロックと、４ｎ＋１、４ｎ＋２、４ｎ＋３の位置の参照画像のブロックとの差分絶対値和のオフセットは、伝送ビットレート、量子化パラメータ、色差エッジ状態、色差成分の予測誤差の少なくとも１つにもとづいて、適応的に設定することを特徴とする付記１記載の動きベクトル検出・補償装置。
【０１６０】
（付記３）  前記動きベクトル検出部は、伝送ビットレートが低く、色差エッジの変化が大きい場合には、４ｎ＋０のブロックの画素平均値と、４ｎ＋１または４ｎ＋３のブロックの画素平均値との差分が１以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋１または４ｎ＋３側に設定し、または４ｎ＋０のブロックの画素平均値と、４ｎ＋２のブロックの画素平均値との差分が２以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋２側に設定し、伝送ビットレートが高い場合には、４ｎ＋０のブロックの選択されやすさを少なくすべき値の低いオフセットを４ｎ＋１、４ｎ＋２、４ｎ＋３側に設定することを特徴とする付記２記載の動きベクトル検出・補償装置。
【０１６１】
（付記４）  前記動き補償部で、色差成分に関する原画像から予測画像の差分を求める処理で得られたＣｂ、Ｃｒの差分値に対して、前記動き補償部は、あらたにＣｂ差分値及びＣｒ差分値それぞれの色差差分絶対値和を求め、前記動きベクトル検出部は、輝度成分による輝度差分絶対値和をVdiff、前記色差差分絶対値和をCdiff、補正係数をαとした場合に、α×Cdiff＞Vdiffとなるならば、４ｎ＋１、４ｎ＋３のオフセットOfsAは、iを４ｎ＋１、４ｎ＋３となるブロックの識別子、ｎをブロックの個数とした際に、
【０１６２】
【数２】
2006041943.tif 000008
【０１６３】
で求め、
４ｎ＋２のオフセットOfsBは、iを４ｎ＋２となるブロックの識別子、ｎをブロックの個数とした際に、
【０１６４】
【数３】
2006041943.tif 000009
【０１６５】
で求めることを特徴とする付記２記載の動きベクトル検出・補償装置。
（付記５）  前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする付記１記載の動きベクトル検出・補償装置。
【０１６６】
（付記６）  画像信号の符号化処理を行う画像符号化装置において、
４：２：２フォーマットのデジタル画像信号を４：２：０フォーマットに変換する画像入力処理部と、
インタレース走査で４：２：０フォーマットの画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求め、予測誤差に再生予測誤差を加算して、ローカルデコード画像を生成する動き補償部と、から構成される動きベクトル検出・補償部と、
予測誤差をＤＣＴ変換して変換係数を求めるＤＣＴ部と、変換係数を量子化して量子化値を求める量子化部と、量子化値を可変長符号化を施して、符号化データを生成する可変長符号化部と、から構成される符号化部と、
量子化値を逆量子化して逆量子化値を求める逆量子化部と、逆量子化値をＩＤＣＴ変換して前記再生予測誤差を求めるＩＤＣＴ部と、から構成されるローカルデコーダと、
複数フレームの画像信号を格納するフレームメモリと、
を有することを特徴とする画像符号化装置。
【０１６７】
（付記７）  前記動きベクトル検出部は、動きベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、原画像の処理ブロックと、４ｎ＋０の位置の参照画像のブロックとの差分絶対値和のオフセットはゼロに設定し、原画像の処理ブロックと、４ｎ＋１、４ｎ＋２、４ｎ＋３の位置の参照画像のブロックとの差分絶対値和のオフセットは、伝送ビットレート、量子化パラメータ、色差エッジ状態、色差成分の予測誤差の少なくとも１つにもとづいて、適応的に設定することを特徴とする付記６記載の画像符号化装置。
【０１６８】
（付記８）  前記動きベクトル検出部は、伝送ビットレートが低く、色差エッジの変化が大きい場合には、４ｎ＋０のブロックの画素平均値と、４ｎ＋１または４ｎ＋３のブロックの画素平均値との差分が１以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋１または４ｎ＋３側に設定し、または４ｎ＋０のブロックの画素平均値と、４ｎ＋２のブロックの画素平均値との差分が２以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋２側に設定し、伝送ビットレートが高い場合には、４ｎ＋０のブロックの選択されやすさを少なくすべき値の低いオフセットを４ｎ＋１、４ｎ＋２、４ｎ＋３側に設定することを特徴とする付記７記載の画像符号化装置。
【０１６９】
（付記９）  前記動き補償部で、色差成分に関する原画像から予測画像の差分を求める処理で得られたＣｂ、Ｃｒの差分値に対して、前記動き補償部は、あらたにＣｂ差分値及びＣｒ差分値それぞれの色差差分絶対値和を求め、前記動きベクトル検出部は、輝度成分による輝度差分絶対値和をVdiff、前記色差差分絶対値和をCdiff、補正係数をαとした場合に、α×Cdiff＞Vdiffとなるならば、４ｎ＋１、４ｎ＋３のオフセットOfsAは、iを４ｎ＋１、４ｎ＋３となるブロックの識別子、ｎをブロックの個数とした際に、
【０１７０】
【数２】
2006041943.tif 000010
【０１７１】
で求め、
４ｎ＋２のオフセットOfsBは、iを４ｎ＋２となるブロックの識別子、ｎをブロックの個数とした際に、
【０１７２】
【数３】
2006041943.tif 000011
【０１７３】
で求めることを特徴とする付記７記載の動きベクトル検出・補償装置。
（付記１０）  前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする付記６記載の画像符号化装置。
【０１７４】
（付記１１）  画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置において、
インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで動きベクトルを検出する際に、フレーム予測で検出した動きベクトルであるフレームベクトルに対し、フレームベクトルがとりうる垂直成分に応じて、使用する動きベクトルとして、フレームベクトルまたはフィールド予測に切り替えてフィールド予測で検出した動きベクトルであるフィールドベクトルのいずれかを選択する動きベクトル補正を行うことで、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、
検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部と、
を有することを特徴とする動きベクトル検出・補償装置。
【０１７５】
（付記１２）  前記動きベクトル検出部は、フレームベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、４ｎ＋０の場合は動きベクトルとしてフレームベクトルを使用し、４ｎ＋１、４ｎ＋２、４ｎ＋３の場合はフィールド予測に切り替えてフィールドベクトルを検出して、フィールドベクトルを動きベクトルとして使用することを特徴とする付記１１記載の動きベクトル検出・補償装置。
【０１７６】
（付記１３）  処理ブロック内で、色差成分のミスマッチングが生じる色差エッジが存在するか否かを判別する色差エッジ検出部をさらに有し、前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかで、かつ色差エッジが検出された場合に、フィールド予測に切り替えることを特徴とする付記１２記載の動きベクトル検出・補償装置。
【０１７７】
（付記１４）  前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとし、フレームベクトルの垂直成分が４ｎ＋２の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをBottomフィールドとし、フレームベクトルの垂直成分が４ｎ＋３の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋２及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとすることを特徴とすることを特徴とする付記１２記載の動きベクトル検出・補償装置。
【０１７８】
（付記１５）  前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする付記１１記載の動きベクトル検出・補償装置。
【０１７９】
（付記１６）  画像信号の符号化処理を行う画像符号化装置において、
４：２：２フォーマットのデジタル画像信号を４：２：０フォーマットに変換する画像入力処理部と、
インタレース走査で４：２：０フォーマットの画像信号に対し、輝度成分だけで動きベクトルを検出する際に、フレーム予測で検出した動きベクトルであるフレームベクトルに対し、フレームベクトルがとりうる垂直成分に応じて、使用する動きベクトルとして、フレームベクトルまたはフィールド予測に切り替えてフィールド予測で検出した動きベクトルであるフィールドベクトルのいずれかを選択する動きベクトル補正を行うことで、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求め、予測誤差に再生予測誤差を加算して、ローカルデコード画像を生成する動き補償部と、から構成される動きベクトル検出・補償部と、
予測誤差をＤＣＴ変換して変換係数を求めるＤＣＴ部と、変換係数を量子化して量子化値を求める量子化部と、量子化値を可変長符号化を施して、符号化データを生成する可変長符号化部と、から構成される符号化部と、
量子化値を逆量子化して逆量子化値を求める逆量子化部と、逆量子化値をＩＤＣＴ変換して前記再生予測誤差とするＩＤＣＴ部と、から構成されるローカルデコーダと、
複数フレームの画像信号を格納するフレームメモリと、
を有することを特徴とする画像符号化装置。
【０１８０】
（付記１７）  前記動きベクトル検出部は、フレームベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、４ｎ＋０の場合は動きベクトルとしてフレームベクトルを使用し、４ｎ＋１、４ｎ＋２、４ｎ＋３の場合はフィールド予測に切り替えてフィールドベクトルを検出して、フィールドベクトルを動きベクトルとして使用することを特徴とする付記１６記載の画像符号化装置。
【０１８１】
（付記１８）  処理ブロック内で、色差成分のミスマッチングが生じる色差エッジが存在するか否かを判別する色差エッジ検出部をさらに有し、前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかで、かつ色差エッジが検出された場合に、フィールド予測に切り替えることを特徴とする付記１７記載の画像符号化装置。
【０１８２】
（付記１９）  前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとし、フレームベクトルの垂直成分が４ｎ＋２の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをBottomフィールドとし、フレームベクトルの垂直成分が４ｎ＋３の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋２及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとすることを特徴とすることを特徴とする付記１７記載の画像符号化装置。
【０１８３】
（付記２０）  前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする付記１６記載の画像符号化装置。
【図面の簡単な説明】
【０１８４】
【図１】本発明の動きベクトル検出・補償装置の原理図である。
【図２】矩形画像が左上から右下に向かって移動する様子を示す図である。
【図３】矩形画像が左上から右下に向かって移動する様子を示す図である。
【図４】４：２：２フォーマットと４：２：０フォーマットの関係を示す図である。
【図５】４：２：２フォーマットと４：２：０フォーマットの関係を示す図である。
【図６】矩形移動画像を輝度と色差に分けた４：２：０フォーマットを示す図である。
【図７】矩形移動画像を輝度と色差に分けた４：２：０フォーマットを示す図である。
【図８】矩形移動画像を輝度と色差に分けた４：２：０フォーマットを示す図である。
【図９】矩形移動画像を輝度と色差に分けた４：２：０フォーマットを示す図である。
【図１０】４：２：０フォーマットの動きベクトルを示す図である。
【図１１】４：２：０フォーマットの動きベクトルを示す図である。
【図１２】問題点の一般化を説明するための図である。
【図１３】問題点の一般化を説明するための図である。
【図１４】問題点の一般化を説明するための図である。
【図１５】問題点の一般化を説明するための図である。
【図１６】問題点の一般化を説明するための図である。
【図１７】オフセット設定テーブルを示す図である。
【図１８】伝送ビットレートまたは色差エッジ状態に応じてのオフセット決定を説明するための図である。
【図１９】伝送ビットレートまたは色差エッジ状態に応じてのオフセット決定を説明するための図である。
【図２０】動きベクトル検出処理のプログラム例を示す図である。
【図２１】差分絶対値和を計算する際の画素探索の様子を示す図である。
【図２２】動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図である。
【図２３】４ｎ＋２のときの差分画像を示す図である。
【図２４】動きベクトルの垂直成分が４ｎ＋１の場合の参照画像と原画像を示す図である。
【図２５】４ｎ＋１のときの差分画像を示す図である。
【図２６】動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図である。
【図２７】４ｎ＋０のときの差分画像を示す図である。
【図２８】動きベクトルの垂直成分が４ｎ＋３の場合の参照画像と原画像を示す図である。
【図２９】４ｎ＋３のときの差分画像を示す図である。
【図３０】動きベクトルの垂直成分が４ｎ＋１の場合の参照画像と原画像を示す図である。
【図３１】４ｎ＋１のときの差分画像を示す図である。
【図３２】動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図である。
【図３３】４ｎ＋０のときの差分画像を示す図である。
【図３４】動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図である。
【図３５】４ｎ＋２のときの差分画像を示す図である。
【図３６】動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図である。
【図３７】４ｎ＋２のときの差分画像を示す図である。
【図３８】動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図である。
【図３９】４ｎ＋０のときの差分画像を示す図である。
【図４０】Ｃｂ差分値及びＣｒ差分値それぞれの絶対値和Cdiffを求めるプログラムを示す図である。
【図４１】第２の実施の形態の原理図を示す図である。
【図４２】フィールド予測における色差成分のミスマッチング回避を説明するための図である。
【図４３】フレームベクトルとフィールドベクトルの垂直成分の対応表を示す図である。
【図４４】フレームベクトル４ｎ＋２となったときのフィールドベクトルを示す図である。
【図４５】フレームベクトル４ｎ＋１となったときのフィールドベクトルを示す図である。
【図４６】フレームベクトル４ｎ＋３となったときのフィールドベクトルを示す図である。
【図４７】２：３プルアップ及び３：２プルダウンの処理を示す図である。
【図４８】第１の実施の形態の動きベクトル検出・補償装置を含む画像符号化装置の構成を示す図である。
【図４９】第２の実施の形態の動きベクトル検出・補償装置を含む画像符号化装置の構成を示す図である。
【図５０】４：２：２フォーマットを示す図である。
【図５１】４：２：０フォーマットを示す図である。
【図５２】動きベクトル検出のイメージを示す図である。
【図５３】動き補償のイメージを示す図である。
【符号の説明】
【０１８５】
１０  動きベクトル検出・補償装置
１１  動きベクトル検出部
１２  動き補償部
Ｂ  原画像の処理ブロック
Ｂ０  動きベクトル垂直成分４ｎ＋０のブロック
Ｂ１  動きベクトル垂直成分４ｎ＋１のブロック
Ｂ２  動きベクトル垂直成分４ｎ＋２のブロック
Ｂ３  動きベクトル垂直成分４ｎ＋３のブロック
【図１】
2006041943.tif 000014
【図２】
2006041943.tif 000015
【図３】
2006041943.tif 000016
【図４】
2006041943.tif 000017
【図５】
2006041943.tif 000018
【図６】
2006041943.tif 000019
【図７】
2006041943.tif 000020
【図８】
2006041943.tif 000021
【図９】
2006041943.tif 000022
【図１０】
2006041943.tif 000023
【図１１】
2006041943.tif 000024
【図１２】
2006041943.tif 000025
【図１３】
2006041943.tif 000026
【図１４】
2006041943.tif 000027
【図１５】
2006041943.tif 000028
【図１６】
2006041943.tif 000029
【図１７】
2006041943.tif 000030
【図１８】
2006041943.tif 000031
【図１９】
2006041943.tif 000032
【図２０】
2006041943.tif 000033
【図２１】
2006041943.tif 000034
【図２２】
2006041943.tif 000035
【図２３】
2006041943.tif 000036
【図２４】
2006041943.tif 000037
【図２５】
2006041943.tif 000038
【図２６】
2006041943.tif 000039
【図２７】
2006041943.tif 000040
【図２８】
2006041943.tif 000041
【図２９】
2006041943.tif 000042
【図３０】
2006041943.tif 000043
【図３１】
2006041943.tif 000044
【図３２】
2006041943.tif 000045
【図３３】
2006041943.tif 000046
【図３４】
2006041943.tif 000047
【図３５】
2006041943.tif 000048
【図３６】
2006041943.tif 000049
【図３７】
2006041943.tif 000050
【図３８】
2006041943.tif 000051
【図３９】
2006041943.tif 000052
【図４０】
2006041943.tif 000053
【図４１】
2006041943.tif 000054
【図４２】
2006041943.tif 000055
【図４３】
2006041943.tif 000056
【図４４】
2006041943.tif 000057
【図４５】
2006041943.tif 000058
【図４６】
2006041943.tif 000059
【図４７】
2006041943.tif 000060
【図４８】
2006041943.tif 000061
【図４９】
2006041943.tif 000062
【図５０】
2006041943.tif 000063
【図５１】
2006041943.tif 000064
【図５２】
2006041943.tif 000065
【図５３】
2006041943.tif 000066
【手続補正書】
【提出日】平成17年1月20日(2005.1.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置において、
インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、
検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部と、
を有することを特徴とする動きベクトル検出・補償装置。
【請求項２】
前記動きベクトル検出部は、動きベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、原画像の処理ブロックと、４ｎ＋０の位置の参照画像のブロックとの差分絶対値和のオフセットはゼロに設定し、原画像の処理ブロックと、４ｎ＋１、４ｎ＋２、４ｎ＋３の位置の参照画像のブロックとの差分絶対値和のオフセットは、伝送ビットレート、量子化パラメータ、色差エッジ状態、色差成分の予測誤差の少なくとも１つにもとづいて、適応的に設定することを特徴とする請求項１記載の動きベクトル検出・補償装置。
【請求項３】
前記動きベクトル検出部は、伝送ビットレートが低く、色差エッジの変化が大きい場合には、４ｎ＋０のブロックの平均差分絶対値と、４ｎ＋１または４ｎ＋３のブロックの平均差分絶対値との差分が第１の閾値以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋１または４ｎ＋３側に設定し、または４ｎ＋０のブロックの平均差分絶対値と、４ｎ＋２のブロックの平均差分絶対値との差分が第１の閾値より大きい第２の閾値以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋２側に設定し、伝送ビットレートが高い場合には、４ｎ＋０のブロックの選択されやすさを少なくすべき値の低いオフセットを４ｎ＋１、４ｎ＋２、４ｎ＋３側に設定することを特徴とする請求項２記載の動きベクトル検出・補償装置。
【請求項４】
前記動き補償部で、色差成分に関する原画像から予測画像の差分を求める処理で得られたＣｂ、Ｃｒの差分値に対して、前記動き補償部は、あらたにＣｂ差分値及びＣｒ差分値それぞれの色差差分絶対値和を求め、前記動きベクトル検出部は、輝度成分による輝度差分絶対値和をVdiff、前記色差差分絶対値和をCdiff、補正係数をαとした場合に、α×Cdiff＞Vdiffとなるならば、４ｎ＋１、４ｎ＋３のオフセットOfsAは、iを４ｎ＋１、４ｎ＋３となるブロックの識別子、ｎをブロックの個数とした際に、
【数６】
2006041943.tif 000067
で求め、
４ｎ＋２のオフセットOfsBは、iを４ｎ＋２となるブロックの識別子、ｎをブロックの個数とした際に、
【数７】
2006041943.tif 000068
で求めることを特徴とする請求項２記載の動きベクトル検出・補償装置。
【請求項５】
前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする請求項１記載の動きベクトル検出・補償装置。
【請求項６】
画像信号の符号化処理を行う画像符号化装置において、
４：２：２フォーマットのデジタル画像信号を４：２：０フォーマットに変換する画像入力処理部と、
インタレース走査で４：２：０フォーマットの画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求め、予測画像に再生予測誤差を加算して、ローカルデコード画像を生成する動き補償部と、から構成される動きベクトル検出・補償部と、
予測誤差をＤＣＴ変換して変換係数を求めるＤＣＴ部と、変換係数を量子化して量子化値を求める量子化部と、量子化値を可変長符号化を施して、符号化データを生成する可変長符号化部と、から構成される符号化部と、
量子化値を逆量子化して逆量子化値を求める逆量子化部と、逆量子化値をＩＤＣＴ変換して前記再生予測誤差を求めるＩＤＣＴ部と、から構成されるローカルデコーダと、
複数フレームの画像信号を格納するフレームメモリと、
から構成される画像符号化装置。
【請求項７】
画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置において、
インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで動きベクトルを検出する際に、フレーム予測で検出した動きベクトルであるフレームベクトルに対し、フレームベクトルがとりうる垂直成分に応じて、使用する動きベクトルとして、フレームベクトルまたはフィールド予測に切り替えてフィールド予測で検出した動きベクトルであるフィールドベクトルのいずれかを選択する動きベクトル補正を行うことで、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、
検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部と、
を有することを特徴とする動きベクトル検出・補償装置。
【請求項８】
前記動きベクトル検出部は、フレームベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、４ｎ＋０の場合は動きベクトルとしてフレームベクトルを使用し、４ｎ＋１、４ｎ＋２、４ｎ＋３の場合はフィールド予測に切り替えてフィールドベクトルを検出して、フィールドベクトルを動きベクトルとして使用することを特徴とする請求項７記載の動きベクトル検出・補償装置。
【請求項９】
処理ブロック内で、色差成分のミスマッチングが生じる色差エッジが存在するか否かを判別する色差エッジ検出部をさらに有し、前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかで、かつ色差エッジが検出された場合に、フィールド予測に切り替えることを特徴とする請求項８記載の動きベクトル検出・補償装置。
【請求項１０】
前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとし、フレームベクトルの垂直成分が４ｎ＋２の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをBottomフィールドとし、フレームベクトルの垂直成分が４ｎ＋３の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋２及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとすることを特徴とする請求項７記載の動きベクトル検出・補償装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動きベクトル検出・補償装置に関し、特にインタレース（飛び越し）走査で色差成分が間引かれたフォーマットを持つ画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置に関する。
【背景技術】
【０００２】
近年、ＤＶＤやデジタルＴＶ放送などの分野では、膨大な画像データを高いクオリティで記録・伝送するために、ＭＰＥＧ（Moving Picture Experts Group）による圧縮・符号化技術が広く用いられている。
【０００３】
また、ＭＰＥＧの画像フォーマットにはＹＣｂＣｒが用いられる。ＹＣｂＣｒとは、輝度信号（Ｙ）、輝度信号と青色成分の差（Ｃｂ）、輝度信号と赤色成分の差（Ｃｒ）の３つの情報で画像を表す形式である。人間の目が色の変化よりも明るさの変化に敏感な性質を利用して、輝度信号により多くのデータ量を割り当てる。
【０００４】
ＹＣｂＣｒフォーマットは、サブサンプリング（輝度の画質劣化は明確に識別できるが、色の画質劣化は判断しづらいために、色情報に対しては削減して平均化される。この処理をサブサンプリングと呼ぶ）を行う際の色差成分の間引き方によって、数種類に分類され、代表的なフォーマットに４：２：２フォーマット、４：２：０フォーマットがある。
【０００５】
図５０は４：２：２フォーマットを示す図である。４：２：２は、水平方向４画素に対して、輝度は画素ごとに８bitでサンプリングし、色差は２画素ごとに８bitのサブサンプリング（平均化）を行う。すなわち、元はＹ、Ｃｂ、Ｃｒで表す１つの画素に対して、水平方向の隣接する２画素をまとめてＣｂ、Ｃｒを割り当てる。
【０００６】
したがって、１画素あたりの平均情報量は１６（＝｛Ｙ（８）＋Ｃｂ（８）｝ or ｛Ｙ（８）＋Ｃｒ（８）｝）bitとなり、２つのＹに１つのＣｂＣｒが割り当てられるので、色差情報は輝度情報の１／２となる。
【０００７】
図５１は４：２：０フォーマットを示す図である。４：２：０は、４：２：２でサンプリングした後、輝度情報はそのまま残し，色差情報を垂直方向にも２画素分サブサンプリングする。すなわち、水平・垂直各方向に隣接する２画素（計４画素）をまとめてＣｂ、Ｃｒを割り当てる。
【０００８】
したがって、１画素あたりの平均情報量は１２（＝｛Ｙ（８）×４＋Ｃｂ（８）＋Ｃｒ（８）｝÷４）bitとなり、４つのＹに１つのＣｂＣｒが割り当てられるので、色差情報は輝度情報の１／４となる。
【０００９】
通常、デジタルＴＶ放送やビデオエンコードなどの画像入力に対し、入力部ではＩＴＵ−Ｒ規格の４：２：２フォーマットが対応しており、内部でMPEG2 Main Profileで規定される４：２：０フォーマットに変換している。そして、４：２：０フォーマットの画像信号に対して、動きベクトル検出・補償やＤＣＴ（Discrete Cosine Transform）といった符号化処理を施して、符号化データを生成する。
【００１０】
ここで、動きベクトルの検出を行う際は、マクロブロックと呼ばれる１６画素×１６ラインの矩形領域単位で検出処理が行われる。具体的には、フレームメモリからマクロブロック単位の原画像（これから動きベクトルを探索しようとする画像）と、それより大きな領域の参照画像（動きベクトルの探索範囲となる画像）とを読み出し、原画像のマクロブロックに対して、各画素の差分絶対値和が最も小さくなる参照画像領域上の位置を算出して動きベクトルを検出する。その後、検出した動きベクトルを元に、原画像マクロブロックに対する予測画像が生成される。
【００１１】
図５２は動きベクトル検出のイメージを示す図である。現フレームＦｒ２（原画像）のブロックｍｂ２（原画像マクロブロック）に対して、前フレームＦｒ１（参照画像）の中から似た画素を探す推定処理を行い、その分だけ位置をシフトした画素値を予測値とし、マクロブロックに対して水平成分と垂直成分を持つ動きベクトルを求める。
【００１２】
まず、現フレームＦｒ２のブロックｍｂ２と、前フレームＦｒ１の点線ブロックｍｂ１（ブロックｍｂ２に対応する位置にあるブロックである）との周囲を比較する。そして、現在のブロックｍｂ２の画素（絵柄）に近い部分を点線ブロックｍｂ１の周囲の画素から探す。すなわち、差分絶対値和の最小値を探索する。図の場合、ブロックｍｂ２とブロックｍｂ１−１の対応する各画素値の絶対値の総和が最小値とすると（すなわち、差分絶対値和が最小値）、動きベクトルＶが求まる。
【００１３】
図５３は動き補償のイメージを示す図である。動きベクトルを検出した後、参照画像から動きベクトル分ずらしたブロックの予測画像を生成し、予測画像と原画像との差分を求める処理を動き補償と呼ぶ。ブロックｍｂ１−１の絵柄に対して、動きベクトルＶだけずらした予測画像ｍｂ１−２を生成し、原画像との差分を求める。
【００１４】
ここで、例えば、飛行機のような剛体の平行移動なら、シフトした画像の値は変化しないので、動きベクトルＶだけ移動して生成した予測画像と、原画像との差分はゼロとなる。このとき符号化すべき情報は、水平・垂直成分の動きベクトル情報と、差分がゼロを示す情報となる。
【００１５】
また、予測画像と原画像との差分がゼロでない場合は（例えば、鳥がはばたいて移動して絵柄が変化している場合など）、その差分画像を予測誤差とし、予測誤差にＤＣＴ演算を施して変換係数を求める。その後に、量子化、可変長符号化の順に符号化処理を行って、符号化データを生成することになる。
【００１６】
一方、動きベクトル検出の計算量は巨大であるため、計算量削減の工夫が必要である。従来では、輝度に対して差分絶対値和が最小となれば、色差も概ね一致すると考えられるので（輝度の動きベクトルと、色差の動きベクトルは揃っているとみなして）、輝度で動きベクトルが検出されれば、色差に対する動きベクトル検出の計算処理を省略することで、全体の計算量の削減を図っている。色差成分の計算を省略することで、演算回路規模が低減し、フレームメモリから色差の原画像及び参照画像を読み込む処理なども省略でき、処理負荷の軽減が可能になる。
【００１７】
動きベクトル検出の従来技術として、フレーム予測時の動きベクトル検出範囲から、垂直成分が４ｎ＋２となる動きベクトルを除外して、色情報の劣化を改善する技術が提案されている（例えば、特許文献１）。
【特許文献１】特開２００１−２３８２２８号公報（段落番号〔００３２〕〜〔００４７〕，第１図）
【発明の開示】
【発明が解決しようとする課題】
【００１８】
通常、デジタルＴＶ放送などでは、インタレース走査（奇数ライン、偶数ラインを交互に飛び越し走査して１画面を作る描写方式）の４：２：０フォーマットである画像に対して、動きベクトル検出・補償やＤＣＴによる符号化処理を行っている。
【００１９】
なお、インタレース走査では、１つのフレームは、２つのフィールドから構成されており、一方のフィールドをTopフィールド、他方のフィールドをBottomフィールドと呼ぶ。
図５１で上述したように、４：２：０では色差情報が間引かれているが、このようなフォーマットに対して、動きベクトル検出処理を行うと、従来では輝度成分だけで差分絶対値和を求めて動きベクトル検出を行っているので、動きを持つ画像に対しては、色差成分に劣化が生じるといった問題があった。
【００２０】
すなわち、符号化しようとする画像に動きがほとんどない場合は、輝度成分によるベクトル探索結果にもとづく予測に対して、色差成分が大きくずれることはない。しかし、符号化しようとする画像に動きがある場合には、原画像の色差成分と、輝度成分から得られた動きベクトルによって対応する参照画像の色差成分とにミスマッチングが生じる可能性がある。
【００２１】
色差成分のミスマッチングが生じると、動き補償時に、予測画像と原画像との差分を計算した際、予測誤差が大きくなり、この結果、符号化データの情報量が増えるか、または一定データ量に伝送量を抑える場合には、画質劣化が生じてしまうといった問題があった。
【００２２】
また、従来技術（特開２００１−２３８２２８号公報）では、色差成分の大きなミスマッチングが生じるときの垂直成分を持つ動きベクトルを完全に除外することで、上記の問題に対処しているが、その他の垂直成分の動きベクトルについては何ら考慮されていないため、画質劣化が高品質に改善されたとはいえず、必ずしも最適な対策方法とはいえない。
【００２３】
本発明はこのような点に鑑みてなされたものであり、回路規模及び処理負荷を大きく増大させずに、色差成分のミスマッチングを効率よく回避して、高品質の動きベクトル検出・補償を行う動きベクトル検出・補償装置を提供することを目的とする。
【課題を解決するための手段】
【００２４】
本発明では上記課題を解決するために、図１に示すような、画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置１０において、インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部１１と、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部１２と、を有することを特徴とする動きベクトル検出・補償装置１０が提供される。
【００２５】
ここで、動きベクトル検出部１１は、インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する。動き補償部１２は、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める。
【発明の効果】
【００２６】
本発明の動きベクトル検出・補償装置は、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出し、検出した動きベクトルを用いて、動き補償を行う構成とした。これにより、回路規模及び処理負荷を大きく増大させることなく、動きベクトル検出・補償時に生じる色差成分のミスマッチングを効率よく回避することができ、高品質の符号化処理を行うことが可能になる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態を図面を参照して説明する。図１は本発明の動きベクトル検出・補償装置の原理図である。第１の実施の形態の動きベクトル検出・補償装置１０は、動きベクトル検出部１１と動き補償部１２から構成される。
【００２８】
動きベクトル検出部１１は、インタレース走査で、色差成分が間引かれたフォーマット（以下、４：２：０フォーマットとする）を持つ画像信号に対し、輝度成分だけで、原画像の処理ブロックと参照画像とにより、画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行う。なお、本発明でいうブロックとは、１６画素×１６ラインのマクロブロックとする。
【００２９】
そして、参照画像上で、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックの対応位置との位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する。
【００３０】
なお、動きベクトルの垂直成分は、具体的には、４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）となる。オフセットの設定としては、原画像の処理ブロックＢと、４ｎ＋０の位置の参照画像のブロックＢ０との差分絶対値和のオフセットはゼロに設定し、原画像の処理ブロックＢと、４ｎ＋１、４ｎ＋２、４ｎ＋３の位置の参照画像のブロックＢ１、Ｂ２、Ｂ３との差分絶対値和のオフセットは適応的に設定する。
【００３１】
適応的に設定するとは、伝送ビットレート、量子化パラメータ（量子化のステップサイズ、量子化精度のこと）、色差エッジ状態、色差成分の予測誤差の少なくとも１つにもとづいて設定を行うということである（詳細は後述）。また、動き補償部１２は、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める。
【００３２】
次に本発明の詳細動作を説明する前に、動きベクトル検出の基本的動作も含めて、本発明が解決すべき問題点について詳しく説明する。図２、図３は矩形画像が左上から右下に向かって移動する様子を示す図である。図２は輝度成分に対する参照画像のTopフィールド、Bottomフィールドを２次元画面イメージで示したもので、図３は輝度成分に対する原画像のTopフィールド、Bottomフィールドを２次元画面イメージで示したものである（TopフィールドとBottomフィールドは、いずれかが奇数ライン、偶数ラインを含むので、１ラインずらして示している）。
【００３３】
図中、画像の動きを黒の矩形で示している。図２の参照画像と図３の原画像とを見比べると、矩形が左上から右下に向かって移動していることがわかる。また、図２の参照画像だけを見ても、Topフィールドの矩形とBottomフィールドの矩形とが、１フィールド時間の間に移動しており、図３の原画像もTopフィールドの矩形とBottomフィールドの矩形とが、１フィールド時間の間に移動している。
【００３４】
図４、図５は４：２：２フォーマットと４：２：０フォーマットの関係を示す図である。図４は図２の参照画像に対して、水平ｘ１点で見た４：２：２と４：２：０の対応関係を示しており、図５は図３の原画像に対して、水平ｘ２点で見た４：２：２と４：２：０の対応関係を示している。なお、白四角黒四角は輝度成分を、白三角黒三角は色差成分を表しており、左側の数字はライン番号である。
【００３５】
４：２：２→４：２：０の変換では、色差成分の間引きが行われる。図４で説明すると、例えば、４：２：２の色差成分ａ１、ａ２から、４：２：０の色差成分ａ３が生成される。
【００３６】
この場合、色差成分ａ３は、色差成分ａ１から垂直下方向に２ライン間隔の２／８の位置、または色差成分ａ２から垂直上方向に２ライン間隔の６／８の位置に配置されるので、色差成分ａ１、ａ２の値の加重平均をとった値が色差成分ａ３の値（ａ３＝（６×ａ１＋２×ａ２）／８）となる（色差成分ａ３は、白三角と黒三角の加重平均から得られるので、図中わかりやすいように灰色の三角で示した）。
【００３７】
同様に、４：２：２の色差成分ｂ１、ｂ２から、４：２：０の色差成分ｂ３が生成される。色差成分ｂ３は、色差成分ｂ１から垂直下方向に２ライン間隔の６／８の位置、または色差成分ｂ２から垂直上方向に２ライン間隔の２／８の位置に配置されるので、色差成分ｂ１、ｂ２の値の加重平均をとった値が色差成分ｂ３の値（ｂ３＝（２×ｂ１＋６×ｂ２）／８）となる。なお、図５の原画像に対しても、同様な色差成分の間引きが行われて、４：２：２→４：２：０のフォーマットになる。
【００３８】
縦方向（垂直方向）に図４、図５を見れば、４：２：２→４：２：０では、輝度成分に対して色差成分は半分に間引かれることがわかる。なお、色差成分を間引く際は、実際には、間引きに使われる色差成分は上記で示した数以上の成分が使われる。すなわち、色差成分ａ３を求める場合、色差成分ａ１、ａ２だけでなく、さらにその周辺の色差成分も用いて計算されるが（色差成分ｂ３を求める場合も同様、なお選択される周辺の色差成分の数は仕様により任意）、上記では簡単な例で説明した。
【００３９】
図６、図７と図８、図９は、矩形移動画像を輝度と色差に分けた４：２：０フォーマットを２次元画面イメージで表した図である。図６、図７はそれぞれ４：２：０の参照画像の輝度成分、色差成分のTop／Bottomフィールドを表し、図８、図９はそれぞれ４：２：０の原画像の輝度成分、色差成分のTop／Bottomフィールドを表す。
【００４０】
４：２：０フォーマットでは、輝度の水平２画素、垂直２画素の計４画素分が、色差の１画素成分に対応することになる。図６、図７を見れば例えば、輝度Ｙ１〜Ｙ４の４つの画素に対して、１つの色差成分ＣｂＣｒが対応する（なお、色差成分ＣｂＣｒは、白の輝度Ｙ１、Ｙ２と、黒の輝度Ｙ３、Ｙ４に対応する色差なので、図中わかりやすいように灰色で示した）。
【００４１】
一方、図８の領域Ｒ１は、参照画像Topフィールドの黒の矩形部分、領域Ｒ２は参照画像Bottomフィールドの黒の矩形部分を示したもので、図中の矢印はTopフィールド、Bottomフィールドのそれぞれの動きベクトルを示している。Top、Bottom両方とも、動きベクトルとしては揃っているため、フレーム予測として、動きベクトルを水平＋２画素、垂直＋２ラインで表すことができる。
【００４２】
図１０、図１１は４：２：０フォーマットの動きベクトルを示す図である。図１０は図６、図８を水平ｘ１、ｘ２点で見た輝度の動きベクトル（以下、輝度ベクトルとも呼ぶ）を示している。図１１は図７、図９を水平ｘ１、ｘ２点で見た色差の動きベクトル（以下、色差ベクトルとも呼ぶ）を示している。なお、図中の白四角は、矩形領域外の輝度成分、黒四角は矩形領域内の輝度成分、白三角は矩形領域外の色差成分、黒三角は矩形領域内の色差成分を示している。
【００４３】
輝度成分で得られた輝度ベクトルをＶａとする。図１０に示す輝度ベクトルＶａの矢印の垂直方向に注目すると、垂直下方に２ライン下がれば、参照画像の画素値と、原画像の画素値が一致することがわかる。
【００４４】
例えば、参照画像Topの画素ｙ１ａは、２ライン下がれば、原画像Topの画素ｙ１ｂにくる。このように、輝度成分に対しては、すべての画素に輝度は存在するので、どのような動きベクトルであっても、原画像の輝度成分に対応する参照画像の輝度成分は存在することになる。
【００４５】
一方、図１１に対し、４：２：０フォーマットにより、色差成分に対しては間引き処理が行われるので、間引きのない輝度成分から生成した動きベクトルを色差成分にも適用すると、参照画像の色差成分と、原画像の色差成分との対応関係がずれることになる。
【００４６】
例えば、原画像Topのライン２の色差成分ｃ１は、矩形領域内（黒で示した領域）の色差情報であるが、動きベクトルＶａによると、対応する参照画像Topの色差成分はｃ２となるはずである。
【００４７】
しかし、色差が間引かれている４：２：０フォーマットの場合、色差成分ｃ２は存在しないので、この場合、参照画像Bottom側のライン１の色差成分ｃ３が動き補償で使われることになる。このｃ３は、図で見ればわかるように、矩形領域外（白で示した領域）の色差成分であるため、予測誤差が大きくなってしまう。
【００４８】
すなわち、ｃ２を動きベクトルＶａで移動すればｃ１となるので、ｃ２が予測画素となるはずが、ｃ２は存在しないので、従来では近傍位置のBottom側のｃ３を使用して予測画素を生成している（使用する画素がTopとBottomで入れ替わり、矩形領域内の色差成分と矩形領域外の色差成分との逆転現象が生じる）。すると、ｃ３はｃ１の画素値と大きく異なるので（ｃ３は矩形領域外、ｃ１は矩形領域内）、このときの予測画素と原画素との差分には大きな誤差が生じてしまうことになる。
【００４９】
同様にして、原画像Bottomのライン３の色差成分ｃ４は、矩形領域外の色差成分であるが、対応する参照画像は、本来、参照画像Bottomのｃ５の位置にあるはずだが存在しないので、参照画像Top側のライン２の色差情報ｃ６が動き補償で使われることになる。このｃ６は、矩形領域内の色差成分であるため、予測誤差が大きくなってしまう。
【００５０】
このように、４：２：０フォーマットにより色差情報が間引かれているため、輝度成分だけで差分絶対値和を求めて生成した動きベクトルを、色差成分にも適用して予測画像を生成しようとすると、本来は、原画像Topの色差成分と、参照画像Topの色差成分との差分をとるべきところが、参照画像Bottomの色差成分と差分をとることになったり、または、原画像Bottomの色差成分と、参照画像Bottomの色差成分との差分をとるべきところが、参照画像Topの色差成分と差分をとることになったりするため、対応関係にミスマッチングが発生してしまう。
【００５１】
すると、動き補償時には、予測誤差が大きくなり、符号化データの情報量の増大や画質劣化を引き起こすといった問題があった。このため、輝度成分に対する差分絶対値和の計算を、色差成分に対しても同様に行って、色差成分の差分絶対値和も含めての動きベクトルの検出を行えば、色差の大きなミスマッチを防ぐことは可能となるのだが、計算量がその分増えることになり、回路規模及び処理負荷の増大を招くことになる。
【００５２】
ここで、上記の問題点を一般化して表してみる。図１２〜図１６は問題点の一般化を説明するための図である。図１２は矩形画像が水平方向のみに動いたときの動きベクトルの様子を示している。垂直成分＋０の予測における輝度ベクトルＶ０を色差ベクトルとして使用してもミスマッチは起こらないことがわかる。
【００５３】
次に図１６を見ると、この図は矩形画像が垂直方向に＋４動いたときの動きベクトルの様子を示している。この場合も、垂直成分＋４の予測における輝度ベクトルＶ４を色差ベクトルとして使用してもミスマッチは起こらない。
【００５４】
次に図１３を見ると、この図は矩形画像が垂直方向に＋１動いたときの動きベクトルの様子を示している。垂直成分＋１の予測における輝度ベクトルＶ１を色差ベクトルとして使用すると、対応する画素が存在しないことがわかる。このような場合には、ハーフペル（半画素）補完を行って予測画素を生成する。
【００５５】
例えば、色差成分ｄ１は、垂直成分＋１の輝度ベクトルＶ１では、対応する画素が存在しないので、周辺の色差成分として、ｄ２、ｄ３から上述したような加重平均を求めて、色差成分ｄ１を補完する。同様に、色差成分ｄ４は、垂直成分＋１の輝度ベクトルＶ１では、対応する画素が存在しないので、周辺の色差成分として、ｄ３、ｄ５から加重平均を求めて、色差成分ｄ４を補完する。
【００５６】
図１４は矩形画像が垂直方向に＋２動いたときの動きベクトルの様子を示している。図１０、図１１で上述した内容と同じ現象であり、垂直成分＋２の予測における輝度ベクトルＶ２を色差ベクトルとして使用すると、矩形領域内外の画素値が逆転する現象が生じる。
【００５７】
図１５は矩形画像が垂直方向に＋３動いたときの動きベクトルの様子を示している。この場合、垂直成分＋３の予測による輝度ベクトルＶ３を色差ベクトルとして使用すると、図１３と同様に対応する画素が存在しない。このときもハーフペル補完を行って予測画素を生成する。
【００５８】
例えば、色差成分ｅ１は、垂直成分＋３の輝度ベクトルＶ３では、対応する画素が存在しないので、周辺の色差成分として、ｅ２、ｅ３から加重平均を求めて、色差成分ｅ１を補完する。同様に、色差成分ｅ４は、垂直成分＋３の輝度ベクトルＶ３では、対応する画素が存在しないので、周辺の色差成分として、ｅ３、ｅ５から加重平均を求めて、色差成分ｅ４を補完する。
【００５９】
以上、まとめると、動きベクトルの垂直成分に対して、＋０はミスマッチングが起きず、＋１〜＋３でミスマッチングが起きることになり、再び＋４でミスマッチングが起きなくなる。すなわち、垂直方向４ｎ＋０のとき、ミスマッチングは起こらず、垂直方向４ｎ＋１、４ｎ＋２、４ｎ＋３のときミスマッチングが生じることになる（ｎは整数）。
【００６０】
また、矩形領域内外の画素値の逆転現象が生じ、最も大きなミスマッチングが生じて、予測誤差が大きくなるのは、４ｎ＋２の場合である。４ｎ＋１、４ｎ＋３の場合は、Topの色差成分とBottomの色差成分との間のハーフペル補完を行ったものとなり、４ｎ＋２と比べると大きな誤差になる可能性は低いが、それでもある程度の予測誤差が生じてしまう。
【００６１】
ここで、従来技術（特開２００１−２３８２２８号公報）では、最もエラーが大きくなる垂直方向４ｎ＋２となる動きベクトルは完全に除外することで、予測誤差の低減化を図っている。しかし、上記で示したように、動きベクトル検出時には、４ｎ＋１、４ｎ＋３の場合においても予測誤差は発生するので、４ｎ＋１、４ｎ＋３で生じる予測誤差についても考慮した誤差低減化のための制御を行わなければ、符号化処理全体における画質向上にはつながらない。
【００６２】
また、伝送ビットレートが高く、伝送量に余裕があるなら、ある程度大きな予測誤差であっても伝送できる（受信側で復号化可能）。ところが、従来技術ではこういった伝送状態に関係なく、単に４ｎ＋２となる動きベクトルの除外を行っているので、このような場合にはかえって、画質劣化を引き起こす可能性がある。
【００６３】
したがって、本発明では、単に４ｎ＋２となる動きベクトルの除外を行うのではなく、回路規模及び処理負荷を大きく増大させずに、動きベクトル垂直成分の４ｎ＋１、４ｎ＋２、４ｎ＋３に対する予測誤差の低減化を図る制御を行い、動きベクトル検出・補償時に生じる色差成分のミスマッチを効率よく回避して、高品質の符号化処理を行う動きベクトル検出・補償装置及び画像符号化装置を提供するものである。
【００６４】
次に本発明の第１の実施の形態の動きベクトル検出・補償装置１０において、動きベクトル検出部１１の動作について詳しく説明する。図１７はオフセット設定テーブルを示す図である。動きベクトルの垂直成分が４ｎ＋０のときは、上述のように、色差成分のミスマッチングは発生しないので、オフセットはゼロとする。
【００６５】
また、４ｎ＋１、４ｎ＋２、４ｎ＋３のときは、ミスマッチングが発生するが、４ｎ＋１と４ｎ＋３及び４ｎ＋２を比べると、４ｎ＋２の誤差は特に大きな値となり、４ｎ＋１、４ｎ＋３はどちらも同じような誤差となると考えられるので、４ｎ＋１、４ｎ＋３には同じオフセット値OfsAとし、４ｎ＋２はオフセット値OfsBを設定する。
【００６６】
次にオフセットの決め方について説明する。動きベクトル検出部１１は、オフセットOfsA、OfsBを、伝送ビットレート、量子化パラメータ、色差エッジ状態（色差エッジが大きいか否か）、色差成分の予測誤差の少なくとも１つにもとづいて、適応的に設定する。オフセットOfsA、OfsBは、基本的には、量子化パラメータに応じて調整するが、伝送ビットレートや画像の色状態に応じて決定することもできる。
【００６７】
図１８、図１９は伝送ビットレートまたは色差エッジ状態に応じてのオフセット決定を説明するための図である。原画像のマクロブロックＭ１の予測ブロックを探索する場合を考える。
【００６８】
図１８は、マクロブロックＭ１に近似した参照画像のブロックＭ１ａ、Ｍ１ｂを示す。また、参照画像上において、動きベクトル垂直成分４ｎ＋０の位置のブロックＭ１ａの平均差分絶対値が１１、４ｎ＋１の位置のブロックＭ１ｂの平均差分絶対値が１０であったとする。平均差分絶対値とは、２つのブロックの画素値の差分の絶対値を平均化した値であり、差分絶対値和を画素の数で割ったものに等しい。
【００６９】
ここで、マクロブロックＭ１の予測ブロックを求める場合、マクロブロックＭ１と、ブロックＭ１ａ、Ｍ１ｂそれぞれとの差分絶対値和が最小値となる方のブロックが予測ブロックとなるが、伝送ビットレートが低く、色差エッジが大きくて色差成分のミスマッチングの影響が大きくでると予想される場合には（量子化によって予測誤差の歪みが大きくでると予想される場合には）、たとえマクロブロックＭ１と４ｎ＋１のブロックＭ１ｂとの差分絶対値和の方が、マクロブロックＭ１と４ｎ＋０のブロックＭ１ａとの差分絶対値和よりも小さい値であっても、４ｎ＋０のブロックＭ１ａが選択されるようにオフセットOfsAを決定する。
【００７０】
この場合、例えばOfsA＝２５７と設定して、マクロブロックＭ１と、ブロックＭ１ａ、Ｍ１ｂそれぞれとの平均差分絶対値を用いての差分絶対値和を計算すると、マクロブロックＭ１と４ｎ＋１のブロックＭ１ｂとの差分絶対値和dif1は、ブロックＭ１ｂの平均差分絶対値×２５６＋OfsA＝１０×２５６＋２５７＝２８１７となる。
【００７１】
また、マクロブロックＭ１と４ｎ＋０のブロックＭ１ａの差分絶対値和dif0は、ブロックＭ１ａの平均差分絶対値×２５６＋０（４ｎ＋０のオフセットはゼロ）＝１１×２５６＝２８１６となる。
【００７２】
計算結果を比較すると、dif0（４ｎ＋０との差分絶対値和）＜dif1（４ｎ＋１との差分絶対値和）⇔２８１６＜２８１７となるので、実際の差分絶対値和の値は４ｎ＋１の方が小さいにもかかわらず、４ｎ＋１が選ばれないようにオフセットOfsAをあらかじめ加えておくことで、４ｎ＋０の方が差分絶対値和が小さくなり、こちらが選ばれるようになる。
【００７３】
すなわち、伝送ビットレートが低く、画像の色変化が大きい場合、４ｎ＋１の差分絶対値和の方が最小値となるような場合でも、４ｎ＋０のブロックの平均差分絶対値と、４ｎ＋１（または４ｎ＋３でも同様）のブロックの平均差分絶対値との差分が１以下程度であるならば、４ｎ＋０のブロックを選んでも輝度成分の誤差として顕著な画質劣化を与えないので、色差成分のミスマッチングが生じる４ｎ＋１を選ぶのではなく、４ｎ＋０のブロックが選ばれるようなオフセットOfsAを設定する。
【００７４】
同様に図１９は、マクロブロックＭ１に近似した参照画像のブロックＭ１ａ、Ｍ１ｃを示す。参照画像上の動きベクトル垂直成分４ｎ＋０のブロックＭ１ａの平均差分絶対値が１２、４ｎ＋２のブロックＭ１ｃの平均差分絶対値が１０であったとする。
【００７５】
この場合、例えばOfsB＝５１３と設定して、マクロブロックＭ１と、ブロックＭ１ａ、Ｍ１ｃそれぞれとの平均差分絶対値を用いての差分絶対値和を計算すると、マクロブロックＭ１と４ｎ＋２のブロックＭ１ｃとの差分絶対値和dif2は、ブロックＭ１ｃの平均差分絶対値×２５６＋OfsB＝１０×２５６＋５１３＝３０７３となる。また、マクロブロックＭ１と４ｎ＋０のブロックＭ１ａとの差分絶対値和dif0は、１２×２５６＝３０７２となる。
【００７６】
計算結果を比較すると、dif0（４ｎ＋０との差分絶対値和）＜dif2（４ｎ＋２との差分絶対値和）⇔３０７２＜３０７３となるので、実際の差分絶対値和の値は４ｎ＋２の方が小さいにもかかわらず、４ｎ＋２が選ばれないようにオフセットOfsBをあらかじめ加えておくことで、４ｎ＋０の方が差分絶対値和は小さくなり、こちらが選ばれるようになる。
【００７７】
すなわち、伝送ビットレートが低く、画像の色変化が大きい場合、４ｎ＋２の差分絶対値和の方が最小値となるような場合でも、４ｎ＋０のブロックの平均差分絶対値と、４ｎ＋２のブロックの平均差分絶対値との差分が２以下程度であるならば、色差成分のミスマッチングが生じる４ｎ＋２を選ぶよりも、輝度成分の誤差として２以下の４ｎ＋０のブロックを選んだ方が顕著な画質劣化を与えないものとして、４ｎ＋０のブロックが選ばれるようにオフセットOfsBを設定する。
【００７８】
一方、ある程度伝送ビットレートも高く、多少予測誤差が大きくても予測差分を受信側へ送りきることができる場合は、４ｎ＋０のブロックの選択されやすさを少なくすべき値の低いオフセット（例えば、OfsA＝３２、OfsB＝６４）を４ｎ＋１、４ｎ＋２、４ｎ＋３側に設定し、４ｎ＋０の動きベクトルの選ばれやすさを少な目にすることもできる。
【００７９】
次に動きベクトル検出処理の具体的なプログラムについて説明する。図２０は動きベクトル検出処理のプログラム例を示す図である。通常のＴＶ放送などに適用される７２０画素×４８０ラインの映像を例にとると、４：２：０フォーマットとしてフレームメモリに格納されるため、１フレームあたりのデータは、輝度成分で７２０画素×４８０ラインとなる。
【００８０】
また、原画像の輝度成分のデータをYo[y][x]（x=0〜719, y=0〜479）、参照画像の輝度成分のデータをYr[y][x]（x=0〜719, y=0〜479）とし、各成分の値が0〜255の範囲の値とすると、原画像のあるマクロブロック座標(Mx,My)に対しての差分絶対値和が最小となるフレーム予測動きベクトルVx,Vyは、例えば、図に示すようなプログラムの処理により求めることができる（ただし、Mx=0〜44、My=0〜29であり、abs(v)は、vの絶対値をとる関数とする）。
【００８１】
〔Ｓ１〕宣言文である。Rx、Ryはそれぞれ、参照画像上の水平方向、垂直方向の画素を示す。x、yは、原画像上の水平方向、垂直方向の画素を示す。Vx,Vyはそれぞれ、動きベクトルの水平成分、垂直成分を表す。また、ここでのVdiffは、差分絶対値和がとりえない値となるように、１６×１６個の各画素がすべて最大値２５５となった値に１を加算して、初期値として設定する。diffはオフセット値または差分絶対値和の計算結果を示す。
【００８２】
〔Ｓ２〕Ryを０〜（４７９−１５）まで＋１ずつ繰り返し、Rxを０〜（７１９−１５）まで＋１ずつ繰り返す。
〔Ｓ３〕参照画像上のブロックが存在するRyから、動きベクトルの垂直成分Myを引いた値を４で割って余りを求める。そして、余り０ならオフセット値としてdiff=0、余り１ならオフセット値としてdiff=OfsA、余り２ならオフセット値としてdiff=OfsB、余り３ならオフセット値としてdiff=OfsAとする。
【００８３】
〔Ｓ４〕yを０〜１５まで＋１ずつ繰り返し、xを０〜１５まで＋１ずつ繰り返し、原画像のマクロブロックと、参照画像のマクロブロックとの差分絶対値和を求める（図２１で後述）。
【００８４】
〔Ｓ５〕前の差分絶対値和Vdiffと、計算で求めた差分絶対値和diffとを比較し、Vdiff＞diffならば、diffをVdiffに置き換える。また、このときの画素のRx、RyをそれぞれVx、Vyとする。すなわち、ここでは、最小値の更新を行っている。
【００８５】
〔Ｓ６〕Vx−MxをVxに、Vy−MyをVyにして、Vx、Vyをベクトル表現に書き直す。
図２１は差分絶対値和を求める際の画素探索の様子を示す図である。図２０のステップＳ４から、原画像における任意の画素は、Yo[My*16+y] [Mx*16+x]であり、参照画像における任意の画素は、Yr[Ry+y] [Rx+x]で表せる。
【００８６】
原画像のマクロブロックＭ１と参照画像のブロックＭ２との差分絶対値和を求めるとする。マクロブロックＭ１は、マクロブロック座標（My,Mx）＝（0,1）であるので、マクロブロックＭ１内の任意の画素は、Yo[My*16+y] [Mx*16+x]＝Yo[0*16+y] [1*16+x]＝Yo[y] [16+x]で表せる。
【００８７】
また、参照画像のブロックＭ２は、探索すべき最初の画素位置が１６ライン目の１６画素目に位置するので、ブロックＭ２内の任意の画素は、Yr[Ry+y] [Rx+x]＝Yr[16+y] [16+x]で表せる。
【００８８】
ここで、xとyを０〜１５まで増やすことで、ブロック内において、ステップＳ４で示した差分絶対値和の計算が実行される。例えば、x＝０、y＝０ならば、マクロブロックＭ１の画素Yo[y] [16+x]＝Yo[0] [16]と、ブロックＭ２の画素Yr[16] [16]との差分の絶対値が計算される。また、x＝１５、y＝１５ならば、マクロブロックＭ１の画素Yo[y] [16+x]＝Yo[15] [31]と、ブロックＭ２の画素Yr[31] [31]との差分の絶対値が計算される（このような計算が２５６回行われて差分絶対値和を求める）。
【００８９】
なお、上記のプログラム・ステップにおいて、ステップＳ３が本発明により追加した部分であり、その他のステップは、従来の動きベクトル検出処理で使用されている部分である。このように、本発明の機能は、動きベクトルの垂直成分によってオフセットを設定するプログラミングと、そのための回路を付加するだけで実行することができるので、回路規模及び処理負荷を大きく増大させずに、色差成分のミスマッチングを効率よく回避することが可能になる。
【００９０】
次に図２２〜図３５を用いて、図２、図３で上述したような、矩形が移動している場合の映像を、Ｔｏｐ／Ｂｏｔｔｏｍフィールドを組み合わせたフレーム形式で見た場合の、参照画像と原画像で、背景の輝度値を２００、矩形内部の輝度値を１５０とした場合に、動きベクトルの垂直成分の関係と、差分画像（検出した動きベクトルで画素を移動して生成した予測画像と、原画像との差分で求めた画像）の関係について説明する。
【００９１】
図２２は動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図であり、図２３はその差分画像を示す図である。図２４は動きベクトルの垂直成分が４ｎ＋１の場合の参照画像と原画像を示す図であり、図２５はその差分画像を示す図である。
【００９２】
また、図２６は動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図であり、図２７はその差分画像を示す図である。図２８は動きベクトルの垂直成分が４ｎ＋３の場合の参照画像と原画像を示す図であり、図２９はその差分画像を示す図である。
【００９３】
図２２に対し、本来の図形の垂直方向の動きは＋２であるため、図２３の差分画像は完全に一致して全画素ともに差分０となり、差分絶対値和も０となるが、他の場合は差分が発生している。
【００９４】
図２４に示す例の４ｎ＋１の場合は、図２５で差分絶対値和は２３００（＝５０×４６）となる。図２６に示す例の４ｎ＋０の場合は、図２７で差分絶対値和は６００（＝５０×１２）となる。図２８に示す例の４ｎ＋３の場合は、図２９で差分絶対値和は２１００（＝５０×４２）となる。
【００９５】
このような場合、従来の方式では、差分絶対値和が最も小さくなる図２２に示す動きベクトルが選択されることになるが、本発明ではオフセット量としてOfsBを例えば、６００以上にすることで、本来の差分絶対値和が最小となる動きベクトルの垂直成分＋２に代わって、垂直成分＋０の動きベクトル（図２６）を選択させることができる。
【００９６】
また、図３０は動きベクトルの垂直成分が４ｎ＋１の場合の参照画像と原画像を示す図であり、図３１はその差分画像を示す図である。図３２は動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図であり、図３３はその差分画像を示す図である。図３４は動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図であり、図３５はその差分画像を示す図である。
【００９７】
ここで、図３０に対して、図形の垂直方向の動きが＋１の場合、図３１に示す差分絶対値和は０となるが、図３２に示すように４ｎ＋０では、図３３で差分絶対値和が２５００となっており、図３４に示すように４ｎ＋２では、図３５で差分絶対値和が２３００となっている。
【００９８】
このような場合も、従来方式では、差分絶対値和が最も小さくなる図３０の動きベクトルが選択されることになるが、本発明によりオフセット量としてOfsAを例えば、２５００以上にすることで、本来の差分絶対値和が最小となるベクトル＋１に代わって、垂直成分＋０の動きベクトル（図３２）を選択させることができる。
【００９９】
次に矩形内部が一様な値でない場合について図３６〜図３９を用いて説明する。図３６は動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図であり、図３７はその差分画像を示す図である。図３８は動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図であり、図３９はその差分画像を示す図である。
【０１００】
図３６の例は、図形の垂直方向の動きが＋２の場合であるが、矩形内部が一様な値でなく、輝度値が水平方向に４０のラインと水平方向に１６０のラインがある。
この場合、図３７の差分画像は０となるが、図３８、図３９に示すように、垂直ベクトルを４ｎ＋０とした場合の差分絶対値和が９１２０（＝１６０×１２＋１２０×６×１０）と大きな値となっている。この場合でも、OfsBを９１２０以上にすれば、＋２のベクトルではなく、＋０のベクトルを選択させることが可能であるが、９１２０という値は、事実上、動き検出が当たっていない状態に近く、色差ミスマッチを防ぐために４ｎ＋０を選んだとしても、今度は輝度データのミスマッチが大きすぎて画質的に劣化が目立つようになる。このため、仮に色差ミスマッチが発生したとしても４ｎ＋２のベクトルを選択した方が、画質的には良いと考えられる。
【０１０１】
極端に言えば、輝度成分の差分絶対値和の理論上の最大値である２５５×２５６＝６５２８０をOfsAやOfsBに設定すれば、色差のミスマッチの可能性のある４ｎ＋１、４ｎ＋３や４ｎ＋２のベクトルをすべて排除することが可能だが、輝度のミスマッチが極端に大きくなる場合は得策ではない。したがって、本発明では、OfsAやOfsBを適切に決めることで、輝度のミスマッチ量とバランスさせながら、色差のミスマッチの発生の可能性がある４ｎ＋１、４ｎ＋３や４ｎ＋２の動きベクトルの発生を抑制するものである。
【０１０２】
次に色差成分の予測誤差にもとづいて、オフセットを決める方法について説明する。OfsA及びOfsBの値としては、ビットレートや絵柄に応じて適切な固定値を決めてもよいが、以下に述べるように、色差成分の予測誤差から適応的にOfsAまたはOfsBを算出することも可能である。
【０１０３】
まず、動き補償部１２において、色差成分に関する原画像から予測画像の差分を求める処理で得られたＣｂ、Ｃｒの差分値に対して、あらたにＣｂ差分値及びＣｒ差分値それぞれの絶対値の和Cdiffを求める機能を追加する。
【０１０４】
図４０はＣｂ差分値及びＣｒ差分値それぞれの絶対値和Cdiffを求めるプログラムを示す図である。色差の動き補償後の差分画像データをdiff CB[][]、diff CR[][]とする。もともと、動き補償処理として、参照画像と原画像の差分を計算する処理は存在するため、Cdiffを求めるためのプログラムは、図中、下線を引いた部分だけである。
【０１０５】
ここで、各マクロブロックについて、輝度成分による動き検出処理により求められた差分絶対値和Vdiffと、動き補償部１２にあらたに設けた回路により求められた色差成分の差分絶対値和Cdiffとの関係は、輝度成分が１６×１６＝２５６データであるのに対し、色差成分は４：２：０変換によりＣｂとＣｒ各々８×８＝６４データで、CdiffはＣｂとＣｒの差分絶対値和の合算で１２８データ分に相当するため、Vdiff：Cdiff ＝２：１の関係と考えられる。このため、色差ミスマッチが発生していない理想状態では、以下の式（１）の関係となる。
【０１０６】
【数１】
2006041943.tif 000069
【０１０７】
垂直ベクトルが４ｎ＋１、４ｎ＋３や４ｎ＋２の場合に、色差ミスマッチが発生していなければ、概ね上記の関係を満たすが、色差ミスマッチが発生すると、Cdiffの値が大きくなる（２×Cdiff＞Vdiff）。このため、オフセットOfsA、OfsBは以下の式（２）、式（３）で設定してよい。
【０１０８】
【数２】
2006041943.tif 000070
【０１０９】
ただし、ｉは垂直ベクトルが４ｎ＋１、４ｎ＋３となるマクロブロックの識別子で、ｎAはマクロブロックの個数とする。
【０１１０】
【数３】
2006041943.tif 000071
【０１１１】
ただし、ｊは垂直ベクトルが４ｎ＋２となるマクロブロックの識別子で、ｎBはマクロブロックの個数とする。
なお、この処理では、OfsA、OfsBが極端に大きな値になって、そもそも、垂直ベクトルとして、４ｎ＋１、４ｎ＋３や４ｎ＋２が全くでなくなってしまう問題があるため、実際の処理では、OfsA、OfsBが大きくなり過ぎないよう、上限を設けたり、処理が進むにしたがって、OfsA、OfsBを徐々に下げていくような処理を加えたり、またはシーンが大きく変わるような場合は、初期値に戻すなどすることで、OfsA及びOfsBが適切な値に収束するようにする必要がある。
【０１１２】
また、ここでは本発明の本質的な原理説明のために、CdiffとVdiffの関係を式（１）のような簡略式としているが、実際には、輝度と色差ではダイナミックレンジが異なるし、モノクロに近い映像とカラフルな映像では輝度と色差のバランスが異なるために、これらのことを考慮して、本来は、以下の式（４）とする方がよい。
【０１１３】
【数４】
2006041943.tif 000072
【０１１４】
ただしαは補正係数で、これは、システムのＡ／Ｄコンバータの特性など多くの要因が関係するため、ここでは方式を限定しないが、式（５）のように色差ミスマッチが発生していない状態でのVdiffとCdiffの関係を数画面分に渡って統計をとることで求めることも可能である。
【０１１５】
【数５】
2006041943.tif 000073
【０１１６】
ただし、ｋはVdiff(ｋ)＜OfsAかつVdiff(ｋ)＜OfsBとなるマクロブロックの識別子で、ｍはマクロブロックの個数である。ここで、Vdiffに条件をつけているのは、OfsA、OfsBによりベクトルが強制的に４ｎ＋０の選択になっている場合の影響を避けるためである。
【０１１７】
なお、補正係数をαとした場合のOfsA、OfsBは以下の式（６）、（７）となる。
【０１１８】
【数６】
2006041943.tif 000074
【０１１９】
【数７】
2006041943.tif 000075
【０１２０】
次に本発明の第２の実施の形態について説明する。第１の実施の形態では、色差ミスマッチングを起こす可能性のあるフレーム予測で求めた動きベクトルの垂直成分４ｎ＋１、４ｎ＋３及び４ｎ＋２に対して、オフセットOfsA、OfsBを適応的に決めて、差分絶対値和にオフセットを加算しておくことで、４ｎ＋１、４ｎ＋３、４ｎ＋２の予測ブロックを選ばれにくくして、色差成分のミスマッチングを回避する構成とした。
【０１２１】
一方、本発明の第２の実施の形態では、オフセットを加算するのではなく、フレーム予測と、フィールド予測とを適応的に切り替えることで、色差成分のミスマッチングを回避するものである。
【０１２２】
図４１は第２の実施の形態の原理図を示す図である。動きベクトル検出・補償装置２０は、動きベクトル検出部２１、動き補償部２２から構成される。動きベクトル検出部２１は、インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで動きベクトルを検出する際に、フレーム予測で検出した動きベクトル（以下、フレームベクトルとも呼ぶ）に対し、フレームベクトルがとりうる垂直成分に応じて、使用する動きベクトルを選択する。
【０１２３】
具体的には、フレームベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、４ｎ＋０の場合は動きベクトルとしてフレームベクトルをそのまま使用する。
【０１２４】
また、フレーム予測を行った結果、フレームベクトルが４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかになった場合は、フィールド予測に切り替えて再度動きベクトルを検出する（フィールド予測で検出した動きベクトルを以下、フィールドベクトルとも呼ぶ）。そして、フィールドベクトルを動きベクトルとして使用する。
【０１２５】
動き補償部２２は、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める。このように、フレームベクトルまたはフィールドベクトルのいずれかを選択することで、色差成分のミスマッチングを抑制する。
【０１２６】
なお、ＭＰＥＧ２の符号化処理における動きベクトル検出では、マクロブロックの処理毎に、フレーム予測またはフィールド予測のどちらで動きベクトルを検出するかを決めることができる。通常、Topフィールド及びBottomフィールド共に、動きベクトルが揃っているような場合には、フレーム予測を行って動きベクトルを求めるが、TopフィールドとBottomフィールドの動きベクトルが揃っていないような場合には、フィールド予測を行って動きベクトルを求めることになる。
【０１２７】
また、フレーム予測で動きベクトルを検出した場合、動きベクトルの情報は、参照画像から原画像へ向かう１つのベクトルの水平・垂直成分となる。また、フィールド予測で動きベクトルを検出した場合の動きベクトルの情報は、２本の動きベクトルが存在することになるので、それぞれのベクトルの水平・垂直成分と、参照画像のフィールドを示すフィールドセレクトとになる。
【０１２８】
例えば、図４１のフレーム予測の動きベクトルＶｂの情報は、ベクトルＶｂの水平・垂直成分となる。また、フィールド予測の動きベクトルＶｃの情報は、フィールドセレクトがTopで、かつベクトルＶｃの水平・垂直成分となる。また、動きベクトルＶｄは、フィールドセレクトがBottomで、かつベクトルＶｄの水平・垂直成分となる。
【０１２９】
次にフレームベクトルの垂直成分が４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかになったときに、フィールド予測に切り替えてフレームベクトルを検出することで、色差成分のミスマッチングが回避できる理由について説明する。
【０１３０】
図４２はフィールド予測における色差成分のミスマッチング回避を説明するための図である。図１１で上述したように、フレームベクトルが４ｎ＋２の場合、例えば、原画像のTopフィールドの色差成分ｃ１に対して、本来は参照画像のTopフィールドの画素に対応すべきｃ２が、その位置に存在しないので、Bottomフィールドからの色差成分ｃ３を用いて予測画素を生成していた。このために大きなミスマッチングが生じていたが、フィールド予測にすると、たとえ対応すべき位置に色差成分の画素ｃ２が存在しなくても、同じフィールド内の最も近傍の画素ｃ６を選ぶことになる。
【０１３１】
すなわち、フレーム予測では、例えば、Topに対応する画素がなければ、近傍画素としてBottom側に位置する画素を持ってきてしまうので、誤差が大きくなったが、フィールド予測では、たとえTopに対応する画素がなくても、同じTopのフィールドの中から画素を補完するので（フィールド予測ではフィールドセレクトという情報があるため、同じフィールド内で補完可能である）、大きな誤差が生じなくなり、フレーム予測で生じていたような大きなミスマッチングが起きなくなる。
【０１３２】
このように、第２の実施の形態では、輝度成分による動きベクトル検出処理時に、色差ミスマッチを起こす可能性のあるフレーム予測でベクトルの垂直成分４ｎ＋２、４ｎ＋１及び４ｎ＋３となった場合は、フレーム予測にせず、フィールド予測にすることで、色差のミスマッチが回避可能である。
【０１３３】
しかし、フィールド予測はフレーム予測に対して、動きベクトルの情報量が大きくなるため、ベクトルデータのオーバーヘッドが大きくなる。よって、これを回避するため、マクロブロック内の色差エッジを検出する回路（色差エッジ検出部）を追加し、色差ミスマッチの影響が大きい場合に限って、フィールド予測に切り替えるようにする。
【０１３４】
色差のミスマッチにより予測誤差が大きくなるのは、矩形画像内と矩形画像外の色差成分が大きく異なる場合である（なお、矩形内が黒で、矩形外が白であるような映像では色差エッジはない。なぜなら黒も白もＣｂ、Ｃｒは同じ値であり、輝度値だけで白、黒が表現されるからである（ちなみに白のＹは0xffで、黒のＹは0x00である））。
【０１３５】
例えば、矩形外が赤系の色（Ｃｂ＜１２７、Ｃｒ＞１２８）で、矩形内が青（Ｃｂ＞１２８、Ｃｒ＜１２７）といった場合、色差のミスマッチの影響が大きいが、矩形の内外が共に赤や青など、色差成分が似ていて、輝度成分のみが異なるというような場合は、例え色差のミスマッチが発生していても影響が少ない。
【０１３６】
このように色差のミスマッチが発生しても、色差成分がもともと似ているなら影響は少なく、実際に、人物や風景などの映像の場合、色成分が大きく変化するのは稀であり、このような場合は、フレーム予測のままでも色差ミスマッチによる予測誤差の増大の影響はあまりない。一方、看板や字幕のエッジなど、色成分が大きく変化する場合に色差ミスマッチがおきると、看板や字幕の色が周囲の画像に滲み出たような見苦しい映像となるため、このような状態を判断するために、色差のエッジ判定回路を追加する。
【０１３７】
次にフィールドベクトルの設定について説明する。図４３はフレームベクトルとフィールドベクトルの垂直成分の対応表を示す図である。動き検出部からの動きベクトルが、フレーム予測で垂直成分４ｎ＋２、４ｎ＋１及び４ｎ＋３のいずれかであり、かつ色差エッジ検出部の結果が色差エッジありと判定された場合には、予測タイプをフィールド予測に切り替えて、図のテーブルに示すようなフィールドベクトルを検出する。
【０１３８】
次に図４４〜図４６を用いて、図４３に示したフィールドベクトルを図示して説明する。図４４はフレームベクトル４ｎ＋２となったときのフィールドベクトルを示す図である。フレームベクトルが４ｎ＋２となったとき、フィールド予測にすると、フィールドベクトルは、Topの参照画像→Topの原画像へ向かう動きベクトルとして、Top側のフィールドベクトルの垂直成分は２ｎ＋１及びフィールドセレクトはTop、Bottomの参照画像→Bottomの原画像へ向かう動きベクトルとして、Bottom側のフィールドベクトルの垂直成分は２ｎ＋１及びフィールドセレクトはBottomとなる。
【０１３９】
なお、輝度で２ｎ＋１のベクトルは、色差ではその半分の（ｎ＋０．５）のベクトルとなる。０．５の部分はハーフペル補完処理が行われ、近傍画素の平均として求められる。図の場合、色差成分ｆ１、ｆ２はそれぞれ(Ct(n)+Ct(n+1))/2、(Cb(n)+Cb(n+1))/2により求まる。
【０１４０】
なお、フィールド予測のときに行われるハーフペル補完は、フレーム予測の４ｎ＋１、４ｎ＋３のときに行ったハーフペル補完と比べると誤差は少ない。なぜなら、フィールド予測のときに行われるハーフペル補完は、同一フィールド上（TopとTopまたはBottomとBottom）で行われるのに対し、フレーム予測のときに行われるハーフペル補完は、異なるフィールド上（TopとBottom）で行われるからである。
【０１４１】
図４５はフレームベクトル４ｎ＋１となったときのフィールドベクトルを示す図である。フレームベクトルが４ｎ＋１となったとき、フィールド予測にすると、フィールドベクトルは、Bottomの参照画像→Topの原画像へ向かう動きベクトルとして、Top側のフィールドベクトルの垂直成分は２ｎ及びフィールドセレクトはBottom、Topの参照画像→Bottomの原画像へ向かう動きベクトルとして、Bottom側のフィールドベクトルの垂直成分は２ｎ＋１及びフィールドセレクトはTopとなる。
【０１４２】
なお、輝度で、２ｎ、２ｎ＋１のベクトルは、色差ではその半分のｎ、（ｎ＋０．５）のベクトルとなる。また、色差成分ｇ１は、ｇ２とｇ３から補完される。
図４６はフレームベクトル４ｎ＋３となったときのフィールドベクトルを示す図である。フレームベクトルが４ｎ＋３となったとき、フィールド予測にすると、フィールドベクトルは、Bottomの参照画像→Topの原画像へ向かう動きベクトルとして、Top側のフィールドベクトルの垂直成分は２ｎ＋２及びフィールドセレクトはBottom、Topの参照画像→Bottomの原画像へ向かう動きベクトルとして、Bottom側のフィールドベクトルの垂直成分は２ｎ＋１及びフィールドセレクトはTopとなる。
【０１４３】
なお、輝度で、２ｎ＋２、２ｎ＋１のベクトルは、色差ではその半分のｎ＋１、（ｎ＋０．５）のベクトルとなる。また、色差成分ｈ１は、ｈ２とｈ３から補完される。
次に動きベクトル補正の機能をＯＦＦすることについて説明する。インタレース走査された画像信号の動きベクトル検出を行うと、色差成分のミスマッチングが生じるので、第１の実施の形態ではオフセットの加算、第２の実施の形態ではフィールド予測への切り替えといった動きベクトル補正を行うことで、ミスマッチングの回避を行ったが、処理対象の画像信号がインタレース走査でないプログレッシブ（ノンインタレース）画像の場合には、色差ミスマッチングがそもそも発生しない。したがって、このような画像信号が入力した場合には、第１、第２の実施の形態は共に、上述したような動きベクトル補正は不要であり、動きベクトル検出部において、動きベクトル補正機能をＯＦＦにする。
【０１４４】
ただし、映画をＴＶ放送などに合わせるため２：３プルアップと呼ばれる処理によってインタレース走査に変換した場合、本来は１つの映像を、時間的にTOP画像とBOTTOM画像に分けて入力されることになる。この場合は、インタレース走査ではあるものの、本来は同時刻であるTOP画像とBOTTOM画像を組みとしてフレーム化したものであるので、フレーム間では色差ミスマッチが発生しない。このような入力画像においては、画像入力処理の段階で、３：２プルダウンを行うが、３：２プルダウンを施してプログレッシブ化可能な映像に対しても、動きベクトルの補正機能はＯＦＦとする。
【０１４５】
図４７は２：３プルアップ及び３：２プルダウンの処理を示す図である。映画素材の画像信号をＴＶ放送のフォーマットに変換する場合、映画素材は１秒間に２４コマ、ＴＶは１秒間に３０コマなので、２４→３０にコマ数を変換する必要がある。映画素材のフォーマットからＴＶのフォーマットに変換する処理を２：３プルアップ（またはテレシネ）と呼ぶ。
【０１４６】
ここで、１フレームが１／２４秒の映画素材のフレームＡ〜Ｄを、１フレームが１／３０秒のＴＶのコマ数に変換すると、フレームＡは、TopフィールドＡT、BottomフィールドＡB、TopフィールドＡTに変換され、フレームＢは、BottomフィールドＢB、TopフィールドＢTに変換され、フレームＣは、BottomフィールドＣB、TopフィールドＣT、BottomフィールドＣBに変換され、フレームＤは、TopフィールドＤT、BottomフィールドＤBに変換される。
【０１４７】
すなわち、１フレームが１／２４秒の４枚のフレーム（（１／２４）×４＝１／６）が、１フィールドが１／６０秒の１０枚のフィールド（（（１／６０）×１０＝１／６）に変換される。
【０１４８】
ＴＶ放送のフォーマットに変換された画像信号に、ＭＰＥＧのエンコード処理を施す場合には、２：３プルアップで生成されたフィールドに、先に３：２プルダウンを施してからエンコードを行う。ここでの３：２プルダウンでは、符号化に無駄な重複しているフィールドＦ３、Ｆ８を省くことで、エンコード入力画像を生成する。
【０１４９】
エンコード入力画像に対し、TopフィールドＡTと、BottomフィールドＡBは、元々１つの映画素材のフレームＡから生成したものなので、これらのフィールド間に動きはない。他のフレームＢ〜Ｄに関するフィールドも同様である。したがって、TopとBottomからなるフレームであっても、３：２プルダウン後の画像信号にはフィールド間で動きがないので、このような画像信号の符号化を行う際には動きベクトル補正機能をＯＦＦすることになる。
【０１５０】
次に本発明の動きベクトル検出・補償装置を適用した、ＭＰＥＧ２等に使用される画像符号化装置について説明する。図４８は第１の実施の形態の動きベクトル検出・補償装置１０を含む画像符号化装置の構成を示す図である。
【０１５１】
画像符号化装置３０−１は、Ａ／Ｄ部３１、画像入力部３２、動きベクトル検出・補償部１０ａ、符号化部３３、ローカルデコーダ３４、フレームメモリ３５、全体制御部３６から構成される。また、符号化部３３はＤＣＴ部３３ａ、量子化部３３ｂ、可変長符号化部３３ｃから構成され、ローカルデコーダ３４は逆量子化部３４ａ、逆ＤＣＴ部３４ｂから構成される。
【０１５２】
Ａ／Ｄ部３１は、ＴＶ放送などのアナログ画像信号をデジタル信号に変換して輝度色差フォーマットとして、４：２：２フォーマットのデジタル画像信号を生成する。
画像入力部３２は、４：２：２フォーマットの画像信号を４：２：０フォーマットの画像信号に変換する。４：２：０の画像信号は、フレームメモリ３５に格納される。なお、全体制御部３６は、フレームメモリ３５内のフレーム画像の管理や各構成要素同士のインタフェース制御等を行う。
【０１５３】
動きベクトル検出・補償部１０ａは、第１の実施の形態で上述した機能を有し、動きベクトル検出部１１は、フレームメモリ３５からマクロブロック単位の原画像とそれより大きな領域の参照画像を読み出し、原画像のマクロブロックに対して、オフセット加算によって求めた各画素の差分絶対値和が最も小さくなる、参照画像領域上の位置を動きベクトルとして算出する。
【０１５４】
動き補償部１２は、フレームメモリ３５から画像信号を読み出し、検出された動きベクトルを用いて、原画像マクロブロックと参照画像の該当動きベクトル位置から予測画像を生成し、その差分を予測誤差としてＤＣＴ部３３ａに送信する。
【０１５５】
ＤＣＴ部３３ａは、予測誤差をＤＣＴ変換し、変換係数を量子化部３３ｂに送信する。量子化部３３ｂは、全体制御部３６により指示された量子化パラメータにより変換係数を量子化し、逆量子化部３４ａ及び可変長符号化部３３ｃに送信する。可変長符号化部３３ｃは、ハフマン符号化などの符号化処理を行って符号化データを生成し出力する。
【０１５６】
逆量子化部３４ａは、量子化されたデータを、量子化パラメータにしたがって逆量子化し、逆ＤＣＴ部３４ｂに送信し、逆ＤＣＴ部３４ｂは、逆ＤＣＴ変換して再生予測誤差を生成し、動き補償部１２に送信する。動き補償部１２では、予測画像に再生予測誤差を加算することで、ローカルデコード画像（次の処理で用いられる参照画像となる）を生成し、フレームメモリ３５に出力する。
【０１５７】
図４９は第２の実施の形態の動きベクトル検出・補償装置２０を含む画像符号化装置の構成を示す図である。画像符号化装置３０−２は、図４８で示した画像符号化装置３０−１と基本的な構成は同じである。異なる箇所は、第２の実施の形態の機能を含む動きベクトル検出・補償部２０ａと、フレーム予測とフィールド予測を切り替えて動きベクトルを検出する際に、マクロブロック内の色差エッジを検出する色差エッジ検出部３７とを含む点である。
【０１５８】
色差エッジ検出部３７は、画像入力部３２から出力された画像信号をマクロブロック単位で色差エッジを検出し、フレームメモリ３５に格納する。動きベクトル検出部２１は、フレームメモリ３５から読み出した原画像、参照画像及び色差エッジ情報にもとづいて動きベクトル検出を行う。その他の動作は同様なので説明は省略する。
【０１５９】
以上説明したように、本発明の第１の実施の形態では、オフセット加算によって求めた各画素の差分絶対値和が最も小さくなる、参照画像領域上の位置を動きベクトルとして検出することで、従来の動き検出回路の構成に対して、簡単な機能追加だけで色差ミスマッチを抑止する効果が得られる。また、第２の実施の形態では、色差エッジの検出回路の追加により、色差ミスマッチが発生していてもほとんど予測誤差に影響ない場合は、動きベクトル補正を行わず、予測誤差に影響がある場合にのみ予測タイプをフレーム予測からフィールド予測に切り替えることで、符号化データの増大を最小限にすることができる。
【０１６０】
なお、上記では、第１、第２の実施の形態を独立して示したが、両方を使って第１の実施の形態で緩くベクトルの制約を与え、第２の実施の形態では、第１の実施の形態で制限しきれなかったものをケアするといったことも可能である。
【０１６１】
（付記１）  画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置において、
インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、
検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部と、
を有することを特徴とする動きベクトル検出・補償装置。
【０１６２】
（付記２）  前記動きベクトル検出部は、動きベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、原画像の処理ブロックと、４ｎ＋０の位置の参照画像のブロックとの差分絶対値和のオフセットはゼロに設定し、原画像の処理ブロックと、４ｎ＋１、４ｎ＋２、４ｎ＋３の位置の参照画像のブロックとの差分絶対値和のオフセットは、伝送ビットレート、量子化パラメータ、色差エッジ状態、色差成分の予測誤差の少なくとも１つにもとづいて、適応的に設定することを特徴とする付記１記載の動きベクトル検出・補償装置。
【０１６３】
（付記３）  前記動きベクトル検出部は、伝送ビットレートが低く、色差エッジの変化が大きい場合には、４ｎ＋０のブロックの平均差分絶対値と、４ｎ＋１または４ｎ＋３のブロックの平均差分絶対値との差分が第１の閾値以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋１または４ｎ＋３側に設定し、または４ｎ＋０のブロックの平均差分絶対値と、４ｎ＋２のブロックの平均差分絶対値との差分が第１の閾値より大きい第２の閾値以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋２側に設定し、伝送ビットレートが高い場合には、４ｎ＋０のブロックの選択されやすさを少なくすべき値の低いオフセットを４ｎ＋１、４ｎ＋２、４ｎ＋３側に設定することを特徴とする付記２記載の動きベクトル検出・補償装置。
【０１６４】
（付記４）  前記動き補償部で、色差成分に関する原画像から予測画像の差分を求める処理で得られたＣｂ、Ｃｒの差分値に対して、前記動き補償部は、あらたにＣｂ差分値及びＣｒ差分値それぞれの色差差分絶対値和を求め、前記動きベクトル検出部は、輝度成分による輝度差分絶対値和をVdiff、前記色差差分絶対値和をCdiff、補正係数をαとした場合に、α×Cdiff＞Vdiffとなるならば、４ｎ＋１、４ｎ＋３のオフセットOfsAは、iを４ｎ＋１、４ｎ＋３となるブロックの識別子、ｎをブロックの個数とした際に、
【０１６５】
【数６】
2006041943.tif 000076
【０１６６】
で求め、
４ｎ＋２のオフセットOfsBは、iを４ｎ＋２となるブロックの識別子、ｎをブロックの個数とした際に、
【０１６７】
【数７】
2006041943.tif 000077
【０１６８】
で求めることを特徴とする付記２記載の動きベクトル検出・補償装置。
（付記５）  前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする付記１記載の動きベクトル検出・補償装置。
【０１６９】
（付記６）  画像信号の符号化処理を行う画像符号化装置において、
４：２：２フォーマットのデジタル画像信号を４：２：０フォーマットに変換する画像入力処理部と、
インタレース走査で４：２：０フォーマットの画像信号に対し、輝度成分だけで画素の差分絶対値和を算出して動きベクトルを検出する際に、動きベクトルがとりうる垂直成分に応じて、あらかじめ差分絶対値和にオフセットを加算する動きベクトル補正を行って、オフセットが加算された差分絶対値和が最小値となるブロックと、処理ブロックとの位置のずれ量から、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求め、予測画像に再生予測誤差を加算して、ローカルデコード画像を生成する動き補償部と、から構成される動きベクトル検出・補償部と、
予測誤差をＤＣＴ変換して変換係数を求めるＤＣＴ部と、変換係数を量子化して量子化値を求める量子化部と、量子化値を可変長符号化を施して、符号化データを生成する可変長符号化部と、から構成される符号化部と、
量子化値を逆量子化して逆量子化値を求める逆量子化部と、逆量子化値をＩＤＣＴ変換して前記再生予測誤差を求めるＩＤＣＴ部と、から構成されるローカルデコーダと、
複数フレームの画像信号を格納するフレームメモリと、
を有することを特徴とする画像符号化装置。
【０１７０】
（付記７）  前記動きベクトル検出部は、動きベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、原画像の処理ブロックと、４ｎ＋０の位置の参照画像のブロックとの差分絶対値和のオフセットはゼロに設定し、原画像の処理ブロックと、４ｎ＋１、４ｎ＋２、４ｎ＋３の位置の参照画像のブロックとの差分絶対値和のオフセットは、伝送ビットレート、量子化パラメータ、色差エッジ状態、色差成分の予測誤差の少なくとも１つにもとづいて、適応的に設定することを特徴とする付記６記載の画像符号化装置。
【０１７１】
（付記８）  前記動きベクトル検出部は、伝送ビットレートが低く、色差エッジの変化が大きい場合には、４ｎ＋０のブロックの平均差分絶対値と、４ｎ＋１または４ｎ＋３のブロックの平均差分絶対値との差分が第１の閾値以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋１または４ｎ＋３側に設定し、または４ｎ＋０のブロックの平均差分絶対値と、４ｎ＋２のブロックの平均差分絶対値との差分が第１の閾値より大きい第２の閾値以下なら、４ｎ＋０のブロックが選択されるべき値の高いオフセットを４ｎ＋２側に設定し、伝送ビットレートが高い場合には、４ｎ＋０のブロックの選択されやすさを少なくすべき値の低いオフセットを４ｎ＋１、４ｎ＋２、４ｎ＋３側に設定することを特徴とする付記７記載の画像符号化装置。
【０１７２】
（付記９）  前記動き補償部で、色差成分に関する原画像から予測画像の差分を求める処理で得られたＣｂ、Ｃｒの差分値に対して、前記動き補償部は、あらたにＣｂ差分値及びＣｒ差分値それぞれの色差差分絶対値和を求め、前記動きベクトル検出部は、輝度成分による輝度差分絶対値和をVdiff、前記色差差分絶対値和をCdiff、補正係数をαとした場合に、α×Cdiff＞Vdiffとなるならば、４ｎ＋１、４ｎ＋３のオフセットOfsAは、iを４ｎ＋１、４ｎ＋３となるブロックの識別子、ｎをブロックの個数とした際に、
【０１７３】
【数６】
2006041943.tif 000078
【０１７４】
で求め、
４ｎ＋２のオフセットOfsBは、iを４ｎ＋２となるブロックの識別子、ｎをブロックの個数とした際に、
【０１７５】
【数７】
2006041943.tif 000079
【０１７６】
で求めることを特徴とする付記７記載の動きベクトル検出・補償装置。
（付記１０）  前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする付記６記載の画像符号化装置。
【０１７７】
（付記１１）  画像信号の動きベクトルの検出及び動き補償を行う動きベクトル検出・補償装置において、
インタレース走査で色差成分が間引かれたフォーマットを持つ画像信号に対し、輝度成分だけで動きベクトルを検出する際に、フレーム予測で検出した動きベクトルであるフレームベクトルに対し、フレームベクトルがとりうる垂直成分に応じて、使用する動きベクトルとして、フレームベクトルまたはフィールド予測に切り替えてフィールド予測で検出した動きベクトルであるフィールドベクトルのいずれかを選択する動きベクトル補正を行うことで、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、
検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求める動き補償部と、
を有することを特徴とする動きベクトル検出・補償装置。
【０１７８】
（付記１２）  前記動きベクトル検出部は、フレームベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、４ｎ＋０の場合は動きベクトルとしてフレームベクトルを使用し、４ｎ＋１、４ｎ＋２、４ｎ＋３の場合はフィールド予測に切り替えてフィールドベクトルを検出して、フィールドベクトルを動きベクトルとして使用することを特徴とする付記１１記載の動きベクトル検出・補償装置。
【０１７９】
（付記１３）  処理ブロック内で、色差成分のミスマッチングが生じる色差エッジが存在するか否かを判別する色差エッジ検出部をさらに有し、前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかで、かつ色差エッジが検出された場合に、フィールド予測に切り替えることを特徴とする付記１２記載の動きベクトル検出・補償装置。
【０１８０】
（付記１４）  前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとし、フレームベクトルの垂直成分が４ｎ＋２の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをBottomフィールドとし、フレームベクトルの垂直成分が４ｎ＋３の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋２及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとすることを特徴とする付記１２記載の動きベクトル検出・補償装置。
【０１８１】
（付記１５）  前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする付記１１記載の動きベクトル検出・補償装置。
【０１８２】
（付記１６）  画像信号の符号化処理を行う画像符号化装置において、
４：２：２フォーマットのデジタル画像信号を４：２：０フォーマットに変換する画像入力処理部と、
インタレース走査で４：２：０フォーマットの画像信号に対し、輝度成分だけで動きベクトルを検出する際に、フレーム予測で検出した動きベクトルであるフレームベクトルに対し、フレームベクトルがとりうる垂直成分に応じて、使用する動きベクトルとして、フレームベクトルまたはフィールド予測に切り替えてフィールド予測で検出した動きベクトルであるフィールドベクトルのいずれかを選択する動きベクトル補正を行うことで、色差成分のミスマッチングを抑制した動きベクトルを検出する動きベクトル検出部と、検出した動きベクトルを用いて、予測画像を生成し、原画像と予測画像との差分である予測誤差を求め、予測画像に再生予測誤差を加算して、ローカルデコード画像を生成する動き補償部と、から構成される動きベクトル検出・補償部と、
予測誤差をＤＣＴ変換して変換係数を求めるＤＣＴ部と、変換係数を量子化して量子化値を求める量子化部と、量子化値を可変長符号化を施して、符号化データを生成する可変長符号化部と、から構成される符号化部と、
量子化値を逆量子化して逆量子化値を求める逆量子化部と、逆量子化値をＩＤＣＴ変換して前記再生予測誤差とするＩＤＣＴ部と、から構成されるローカルデコーダと、
複数フレームの画像信号を格納するフレームメモリと、
を有することを特徴とする画像符号化装置。
【０１８３】
（付記１７）  前記動きベクトル検出部は、フレームベクトルの垂直成分４ｎ＋０、４ｎ＋１、４ｎ＋２、４ｎ＋３（ｎは整数）に対して、４ｎ＋０の場合は動きベクトルとしてフレームベクトルを使用し、４ｎ＋１、４ｎ＋２、４ｎ＋３の場合はフィールド予測に切り替えてフィールドベクトルを検出して、フィールドベクトルを動きベクトルとして使用することを特徴とする付記１６記載の画像符号化装置。
【０１８４】
（付記１８）  処理ブロック内で、色差成分のミスマッチングが生じる色差エッジが存在するか否かを判別する色差エッジ検出部をさらに有し、前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１、４ｎ＋２、４ｎ＋３のいずれかで、かつ色差エッジが検出された場合に、フィールド予測に切り替えることを特徴とする付記１７記載の画像符号化装置。
【０１８５】
（付記１９）  前記動きベクトル検出部は、フレームベクトルの垂直成分が４ｎ＋１の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとし、フレームベクトルの垂直成分が４ｎ＋２の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをBottomフィールドとし、フレームベクトルの垂直成分が４ｎ＋３の場合は、Topフィールドのフィールドベクトルの垂直成分を２ｎ＋２及びフィールドセレクトをBottomフィールド、またはBottomフィールドのフィールドベクトルの垂直成分を２ｎ＋１及びフィールドセレクトをTopフィールドとすることを特徴とする付記１７記載の画像符号化装置。
【０１８６】
（付記２０）  前記動きベクトル検出部は、インタレース走査でない画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにし、かつインタレース走査の画像信号であっても、３：２プルダウン処理によりプログレッシブ化可能な画像信号に対しては、前記動きベクトル補正の機能をＯＦＦにすることを特徴とする付記１６記載の画像符号化装置。
【図面の簡単な説明】
【０１８７】
【図１】本発明の動きベクトル検出・補償装置の原理図である。
【図２】矩形画像が左上から右下に向かって移動する様子を示す図である。
【図３】矩形画像が左上から右下に向かって移動する様子を示す図である。
【図４】４：２：２フォーマットと４：２：０フォーマットの関係を示す図である。
【図５】４：２：２フォーマットと４：２：０フォーマットの関係を示す図である。
【図６】矩形移動画像を輝度と色差に分けた４：２：０フォーマットを示す図である。
【図７】矩形移動画像を輝度と色差に分けた４：２：０フォーマットを示す図である。
【図８】矩形移動画像を輝度と色差に分けた４：２：０フォーマットを示す図である。
【図９】矩形移動画像を輝度と色差に分けた４：２：０フォーマットを示す図である。
【図１０】４：２：０フォーマットの動きベクトルを示す図である。
【図１１】４：２：０フォーマットの動きベクトルを示す図である。
【図１２】問題点の一般化を説明するための図である。
【図１３】問題点の一般化を説明するための図である。
【図１４】問題点の一般化を説明するための図である。
【図１５】問題点の一般化を説明するための図である。
【図１６】問題点の一般化を説明するための図である。
【図１７】オフセット設定テーブルを示す図である。
【図１８】伝送ビットレートまたは色差エッジ状態に応じてのオフセット決定を説明するための図である。
【図１９】伝送ビットレートまたは色差エッジ状態に応じてのオフセット決定を説明するための図である。
【図２０】動きベクトル検出処理のプログラム例を示す図である。
【図２１】差分絶対値和を計算する際の画素探索の様子を示す図である。
【図２２】動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図である。
【図２３】４ｎ＋２のときの差分画像を示す図である。
【図２４】動きベクトルの垂直成分が４ｎ＋１の場合の参照画像と原画像を示す図である。
【図２５】４ｎ＋１のときの差分画像を示す図である。
【図２６】動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図である。
【図２７】４ｎ＋０のときの差分画像を示す図である。
【図２８】動きベクトルの垂直成分が４ｎ＋３の場合の参照画像と原画像を示す図である。
【図２９】４ｎ＋３のときの差分画像を示す図である。
【図３０】動きベクトルの垂直成分が４ｎ＋１の場合の参照画像と原画像を示す図である。
【図３１】４ｎ＋１のときの差分画像を示す図である。
【図３２】動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図である。
【図３３】４ｎ＋０のときの差分画像を示す図である。
【図３４】動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図である。
【図３５】４ｎ＋２のときの差分画像を示す図である。
【図３６】動きベクトルの垂直成分が４ｎ＋２の場合の参照画像と原画像を示す図である。
【図３７】４ｎ＋２のときの差分画像を示す図である。
【図３８】動きベクトルの垂直成分が４ｎ＋０の場合の参照画像と原画像を示す図である。
【図３９】４ｎ＋０のときの差分画像を示す図である。
【図４０】Ｃｂ差分値及びＣｒ差分値それぞれの絶対値和Cdiffを求めるプログラムを示す図である。
【図４１】第２の実施の形態の原理図を示す図である。
【図４２】フィールド予測における色差成分のミスマッチング回避を説明するための図である。
【図４３】フレームベクトルとフィールドベクトルの垂直成分の対応表を示す図である。
【図４４】フレームベクトル４ｎ＋２となったときのフィールドベクトルを示す図である。
【図４５】フレームベクトル４ｎ＋１となったときのフィールドベクトルを示す図である。
【図４６】フレームベクトル４ｎ＋３となったときのフィールドベクトルを示す図である。
【図４７】２：３プルアップ及び３：２プルダウンの処理を示す図である。
【図４８】第１の実施の形態の動きベクトル検出・補償装置を含む画像符号化装置の構成を示す図である。
【図４９】第２の実施の形態の動きベクトル検出・補償装置を含む画像符号化装置の構成を示す図である。
【図５０】４：２：２フォーマットを示す図である。
【図５１】４：２：０フォーマットを示す図である。
【図５２】動きベクトル検出のイメージを示す図である。
【図５３】動き補償のイメージを示す図である。
【符号の説明】
【０１８８】
１０  動きベクトル検出・補償装置
１１  動きベクトル検出部
１２  動き補償部
Ｂ  原画像の処理ブロック
Ｂ０  動きベクトル垂直成分４ｎ＋０のブロック
Ｂ１  動きベクトル垂直成分４ｎ＋１のブロック
Ｂ２  動きベクトル垂直成分４ｎ＋２のブロック
Ｂ３  動きベクトル垂直成分４ｎ＋３のブロック
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図１８
【補正方法】変更
【補正の内容】
【図１８】
2006041943.tif 000080
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】図１９
【補正方法】変更
【補正の内容】
【図１９】
2006041943.tif 000081
【手続補正５】
【補正対象書類名】図面
【補正対象項目名】図２０
【補正方法】変更
【補正の内容】
【図２０】
2006041943.tif 000082
【手続補正６】
【補正対象書類名】図面
【補正対象項目名】図３８
【補正方法】変更
【補正の内容】
【図３８】
2006041943.tif 000083
【手続補正７】
【補正対象書類名】図面
【補正対象項目名】図５２
【補正方法】変更
【補正の内容】
【図５２】
2006041943.tif 000084
【手続補正８】
【補正対象書類名】図面
【補正対象項目名】図５３
【補正方法】変更
【補正の内容】
【図５３】
2006041943.tif 000085