(57)【要約】【課題】第１符号化情報を第２符号化情報にトランスコードする場合に、第２符号化情報を生成するための動きベクトルを検出する際の演算量を低減するとともに、画質を向上させることが可能な再符号化装置を提供することを目的とする。【解決手段】本発明に係る再符号化装置１０によれば、復号化部１００は、第１符号化情報を復号化し、動き補償ブロックサイズ決定部２００は、第１符号化情報の直交変換係数に基づいて、復号化された画像情報の動きベクトルの検出単位となる動き補償ブロックサイズを符号化対象マクロブロック毎に決定し、符号化部３００では、動き補償ブロックサイズ決定部２００で決定した動き補償ブロックサイズで、復号化された画像情報の動きベクトルを検出し、当該検出した動きベクトルを使用して、直交変換と動き補償とにより、復号化された画像情報を第２符号化情報に符号化する。【選択図】        図１
2006295503.tif 000002
【特許請求の範囲】
【請求項１】
画像情報がブロック単位で直交変換と動き補償とにより符号化された第１符号化情報を、第２符号化情報にトランスコードする再符号化装置において、
前記第１符号化情報を復号化する復号化手段と、
前記第１符号化情報の直交変換係数に基づいて、前記復号化された画像情報の動きベクトルの検出単位となる動き補償ブロックサイズを符号化対象ブロック毎に決定する動き補償ブロックサイズ決定手段と、
前記動き補償ブロックサイズ決定手段で決定した動き補償ブロックサイズで、前記復号化された画像情報の動きベクトルを検出し、当該検出した動きベクトルを使用して、直交変換と動き補償とにより、前記復号化された画像情報を第２符号化情報に符号化する符号化手段と、
を備えたことを特徴とする再符号化装置。
【請求項２】
前記動き補償ブロックサイズ決定手段は、前記復号化された画像情報の符号化対象ブロック（２Ｎ×２Ｎ画素）を４つのブロック（Ｎ×Ｎ画素）に分割し、分割したブロック毎に前記第１符号化情報の直交変換係数の統計値を算出し、当該分割した各ブロックの統計値に基づいて、前記符号化対象ブロックを、２Ｎ×２Ｎ画素、２Ｎ×Ｎ画素、Ｎ×２Ｎ画素、またはＮ×Ｎ画素に分割した動き補償ブロックサイズとすることを特徴とする請求項１に記載の再符号化装置。
【請求項３】
前記動き補償ブロックサイズ決定手段は、前記復号化された画像情報の符号化対象ブロック（２Ｎ×２Ｎ画素）を、２Ｎ×Ｎ画素の２つのブロックおよびＮ×２Ｎ画素の２つの分割ブロックに分割し、分割した４つのブロック毎に前記第１符号化情報の直交変換係数の統計値を算出し、当該分割した４つのブロックの統計値に基づいて、符号化対象ブロックを、２Ｎ×２Ｎ画素、２Ｎ×Ｎ画素、Ｎ×２Ｎ画素、またはＮ×Ｎ画素に分割した動き補償ブロックサイズとすることを特徴とする請求項１に記載の再符号化装置。
【請求項４】
前記動き補償ブロックサイズ決定手段は、符号化対象ブロックを前記決定した動き補償ブロックサイズで分割した各ブロック毎に、前記第１符号化情報の直交変換係数の統計値を算出し、当該各ブロックの統計値に基づいて、当該ブロックの動きベクトルの再探索が必要か否かを判断し、
前記符号化手段は、前記符号化対象ブロックを前記決定した動き補償ブロックサイズで分割したブロックにおいて、前記動き補償ブロックサイズ決定手段で動きベクトルの再探索が不要であると判断された場合には、前記第１符号化情報の動きベクトルを再利用する一方、前記動き補償ブロックサイズ決定手段で動きベクトルの再探索が必要であると判断された場合には動きベクトルの再探索を行うことを特徴とする請求項１〜請求項３のいずれか１つに記載の再符号化装置。
【請求項５】
前記直交変換係数は、逆量子化前または逆量子化後の直交変換係数であることを特徴とする請求項１〜請求項４のいずれか１つに記載の再符号化装置。
【請求項６】
前記分割したブロックの直交変換係数の統計値を算出する場合に、当該ブロック内の直交変換係数の周波数分布に応じて前記直交変換係数の統計値を算出することを特徴とする請求項２〜請求項５のいずれか１つに記載の再符号化装置。
【請求項７】
前記統計値は、前記分割したブロックの前記直交変換係数の絶対値和または二乗和であることを特徴とする請求項２〜請求項６のいずれか１つに記載の再符号化装置。
【請求項８】
前記第１符号化情報は、ＭＰＥＧ２形式に準拠しており、前記第２符号化情報はＨ．２６４形式に準拠していることを特徴とする請求項１〜請求項７のいずれか１つに記載の再符号化装置。
【請求項９】
画像情報がブロック単位で直交変換と動き補償とにより符号化された第１符号化情報を、第２符号化情報にトランスコードする再符号化方法において、
前記第１符号化情報を復号化する復号化工程と、
前記第１符号化情報の直交変換係数に基づいて、前記復号化された画像情報の動きベクトルの検出単位となる動き補償ブロックサイズを符号化対象ブロック毎に決定する動き補償ブロックサイズ決定工程と、
前記動き補償ブロックサイズ決定手段で決定した動き補償ブロックサイズで、前記復号化された画像情報の動きベクトルを検出し、当該検出した動きベクトルを使用して、直交変換と動き補償とにより、前記復号化された画像情報を第２符号化情報に符号化する符号化工程と、
を含むことを特徴とする再符号化方法。
【請求項１０】
コンピュータに、画像情報がブロック単位で直交変換と動き補償とにより符号化された第１符号化情報を、第２符号化情報にトランスコードさせる再符号化用プログラムにおいて、
前記第１符号化情報を復号化する復号化工程と、
前記第１符号化情報の直交変換係数に基づいて、前記復号化された画像情報の動きベクトルの検出単位となる動き補償ブロックサイズを符号化対象ブロック毎に決定する動き補償ブロックサイズ決定工程と、
前記動き補償ブロックサイズ決定工程で決定した動き補償ブロックサイズで、前記復号化された画像情報の動きベクトルを検出し、当該検出した動きベクトルを使用して、直交変換と動き補償とにより、前記復号化された画像情報を第２符号化情報に符号化する符号化工程と、
をコンピュータに実行させることを特徴とする再符号化用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再符号化装置、再符号化方法、および再符号化用プログラムに関し、詳細には、画像情報が離散コサイン変換と動き補償とにより符号化された第１符号化情報を、第２符号化情報にトランスコードする再符号化装置、再符号化方法、および再符号化用プログラムに関する。
【背景技術】
【０００２】
近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き予測・補償とにより圧縮するＭＰＥＧなどの方式に準拠した装置が普及している。
【０００３】
特に、ＭＰＥＧ２（ＩＳＯ／ＩＥＣ  １３８１８−２）は、汎用画像符号化方式として定義されており、飛び越し走査画像および順次走査画像の双方、並びに標準解像度画像および高精細画像を網羅する標準で、プロフェッショナル用途およびコンシューマー用途の広範なアプリケーションに現在広く用いられている。ＭＰＥＧ２圧縮方式を用いることにより、例えば７２０×４８０画素を持つ標準解像度の飛び越し走査画像であれば４〜８Ｍｂｐｓ、１９２０×１０８８画素を持つ高解像度の飛び越し走査画像であれば１８〜２２Ｍｂｐｓの符号量（ビットレート）を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
【０００４】
ＭＰＥＧ２は主として放送用に適合する高画質符号化を対象としていたが、ＭＰＥＧ１より低い符号量（ビットレート）、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してＭＰＥＧ４符号化方式の標準化が行われた。
【０００５】
さらに、近年、テレビ会議用の画像符号化を当初の目的として、Ｈ．２６４（ＩＴＵ−Ｔ  Ｑ６／１６  ＶＣＥＧ）符号化方式の標準化が行われた。Ｈ．２６４は、ＭＰＥＧ２やＭＰＥＧ４といった従来の符号化方式に比して、その符号化、復号により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。
【０００６】
一般に動画像の符号化では、時間方向および空間方向の冗長性を削減することによって情報量の圧縮を行う。そこで時間的な冗長性の削減を目的とする画面間予測符号化では、前方または後方のピクチャを参照してブロック単位で動きベクトルの検出および予測画像の作成を行い、得られた予測画像と符号化対象ピクチャとの差分値に対して符号化を行う。
【０００７】
動きベクトルはブロック単位で検出されており、具体的には、符号化対象ピクチャ側のブロックを固定しておき、参照ピクチャ側のブロックを探索範囲内で移動させ、基準ブロックと最も類似する参照ブロックの位置を見つけることにより、動きベクトルが検出される。
【０００８】
固定ブロックサイズを採用してるＭＰＥＧ２では、１６×１６画素ブロックの固定サイズの動き補償ブロックサイズを使用して動きベクトル探索を行う。図１４は、ＭＰＥＧ２の動きベクトル探索を説明するための模式図である。ＭＰＥＧ２等の画面間予測を行う符号化では、フィールド構造のフィールド予測、フレーム構造のフレーム予測を行う場合、図１４に示すように、マクロブロック（１６×１６画素）単位に動きベクトルの探索を行う。
【０００９】
可変ブロックサイズを採用している符号化方式では、複数の動き補償ブロックサイズが用意されている。例えば、ＭＰＥＧ４やＷＭＶ９では１６×１６画素ブロックと８×８画素ブロックの２種類の動き補償ブロックが用意されている。また、Ｈ．２６４では、１６×１６画素ブロック〜４×４画素ブロックまでの７種類の動き補償ブロックサイズが用意されている。図１５は、Ｈ．２６４のマクロブロック形状を説明するための図である。図１６は、Ｈ．２６４の動きベクトル探索を説明するための模式図である。Ｈ．２６４では、動きベクトルの探索において可変ブロックサイズを使用することができ、図１５に示すように、マクロブロックとして、７種類の形状（１６×１６画素、１６×８画素、８×１６画素、８×８画素、４×８画素、８×４画素、４×４画素）に分割することができる。マクロブロックを分割した場合は、図１６に示すように、分割した各マクロブロックに対して動きベクトル探索を行い、分割したマクロブロック分の動きベクトルを持つことになる。
【００１０】
一般的に、可変ブロックサイズを採用している符号化方式は、固定ブロックサイズを採用している符号化方式に比して、細かな領域での探索が可能になるため、ビット量の削減や画質を向上させることができる。
【００１１】
ここで、固定ブロックサイズを採用している動き補償ブロックサイズが粗い符号化方式（ＭＰＥＧ２など）で符号化した符号化情報を、可変ブロックサイズを採用している動き補償ブロックサイズが細かい符号化方式（ＭＰＥＧ４，Ｈ．２６４，ＷＭＶ９など）の符号化情報にトランスコードする方法としては、例えば、以下の方法が考えられる。
【００１２】
（１）動き補償ブロックサイズの変更を行わずにそのままのブロックサイズで再符号化を行う方法
（２）再符号化する場合に、採用されている動き補償ブロックサイズの全てに対して動きベクトルの再探索を行い、最適なブロックサイズと動きベクトルを決定する方法
【００１３】
また、トランスコードに関する技術としては、例えば、特許文献１が提案されている。同文献によれば、一方の端末から受信した符号化映像情報を他方の端末へ送信する映像符号化装置において、復号時の符号化パラメータを再符号化する時に参照することで、再符号化による品質劣化の抑制を図るものである。
【００１４】
ここで、例えば、ＭＰＥＧ２形式からＨ．２６４形式にトランスコーダする場合を考えてみると、画面間予測に使用できるＭＰＥＧ２の動き補償ブロックサイズは１６×１６画素ブロックのみであるため、Ｈ．２６４への変換時には１６×１６画素ブロックのみを使用するか、または、再度動き予測処理を行い、１６×１６画素ブロック〜４×４画素ブロックまでの７種類のブロックサイズの中から最適な動き補償ブロックサイズを見つける必要がある。
【００１５】
【特許文献１】特開平７−１０７４６１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら、上記（１）の方法では、動き補償ブロックサイズが粗い符号化方式から動き補償ブロックサイズが細かい符号化方式にトランスコードする場合に、粗いブロックサイズのまま再符号を行う場合は、サポートされている細かいブロックサイズでの動きベクトル探索が行えないため、ビット量の増大や画質劣化が発生するという問題がある。
【００１７】
また、上記（２）の方法では、全ての動き補償ブロックサイズを使用して動きベクトルの再探索を行い、最適なマクロブロック形状を決定する必要があるため、動きベクトル探索の演算量が多くなり、処理時間を多く要してしまう問題がある。
【００１８】
本発明は、上記に鑑みてなされたものであって、第１符号化情報を第２符号化情報にトランスコードする場合に、第２符号化情報を生成するための動きベクトルを検出する際の演算量を低減するとともに、画質を向上させることが可能な再符号化装置、再符号化方法、および再符号化用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
上述した課題を解決し、目的を達成するために、本発明は、画像情報がブロック単位で直交変換と動き補償とにより符号化された第１符号化情報を、第２符号化情報にトランスコードする再符号化装置において、前記第１符号化情報を復号化する復号化手段と、前記第１符号化情報の直交変換係数に基づいて、前記復号化された画像情報の動きベクトルの検出単位となるブロックサイズを符号化対象ブロック毎に決定するブロックサイズ決定手段と、前記ブロックサイズ決定手段で決定したブロックサイズで、前記復号化された画像情報の動きベクトルを検出し、当該検出した動きベクトルを使用して、直交変換と動き補償とにより、前記復号化された画像情報を第２符号化情報に符号化する符号化手段と、を備えたことを特徴とする。
【００２０】
また、本発明は、画像情報がブロック単位で直交変換と動き補償とにより符号化された第１符号化情報を、第２符号化情報にトランスコードする再符号化方法において、前記第１符号化情報を復号化する復号化工程と、前記第１符号化情報の直交変換係数に基づいて、前記復号化された画像情報の動きベクトルの検出単位となるブロックサイズを符号化対象ブロック毎に決定するブロックサイズ決定工程と、前記ブロックサイズ決定手段で決定したブロックサイズで、前記復号化された画像情報の動きベクトルを検出し、当該検出した動きベクトルを使用して、直交変換と動き補償とにより、前記復号化された画像情報を第２符号化情報に符号化する符号化工程と、を含むことを特徴とする。
【００２１】
また、本発明は、コンピュータに、画像情報がブロック単位で直交変換と動き補償とにより符号化された第１符号化情報を、第２符号化情報にトランスコードさせる再符号化用プログラムにおいて、前記第１符号化情報を復号化する復号化工程と、前記第１符号化情報の直交変換係数に基づいて、前記復号化された画像情報の動きベクトルの検出単位となるブロックサイズを符号化対象ブロック毎に決定するブロックサイズ決定工程と、前記ブロックサイズ決定手段で決定したブロックサイズで、前記復号化された画像情報の動きベクトルを検出し、当該検出した動きベクトルを使用して、直交変換と動き補償とにより、前記復号化された画像情報を第２符号化情報に符号化する符号化工程と、をコンピュータに実行させることを特徴とする。
【発明を実施するための最良の形態】
【００２２】
以下に添付図面を参照して、この発明にかかる再符号化装置、再符号化方法、および再符号化用プログラムの最良な実施の形態を詳細に説明する。この実施例によりこの発明が限定されるものではない。また、下記実施例における構成要素には、当業者が容易に想定できるものまたは実質的に同一のものが含まれる。
【００２３】
（実施の形態１）
図１は、本発明の実施の形態１に係る再符号化装置１０の概略の構成例を示す図である。同図に示す再符号化装置１０では、一例として、ＭＰＥＧ２形式の符号化情報を、Ｈ．２６４形式の符号化情報にトランスコードする場合について説明する。再符号化装置１０は、同図に示すように、第１符号化情報（ＭＰＥＧ２ビットストリーム）を復号化する復号化部（ＭＰＥＧ２デコーダ）１００と、符号化部３００で動きベクトルの探索および動き補償に用いるブロックサイズを決定する動き補償ブロックサイズ決定部２００と、復号化部１００で復号化された画像情報を第２符号化情報（Ｈ．２６４ビットストリーム）に符号化する符号化部（Ｈ．２６４エンコーダ）３００とで構成されている。
【００２４】
復号化部１００は、可変長復号化部１０１と、逆量子化部１０２と、逆ＤＣＴ（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ）部１０３と、演算部１０４と、フレームメモリ１０５と、動き補償部１０６とを備えている。
【００２５】
可変長復号化部１０１は、入力される第１符号化情報（ＭＰＥＧ２ビットストリーム）を可変長復号化して、直交変換係数を逆量子化部１０２および動き補償ブロックサイズ決定部２００に、第１動きベクトルＭＶ１を動き補償部１０６に出力する。
【００２６】
逆量子化部１０２は、量子化されている直交変換係数を逆量子化して、直交変換係数を逆ＤＣＴ部１０３に出力する。逆ＤＣＴ部１０３は、直交変換係数を逆ＤＣＴ変換して、演算部１０４に出力する。
【００２７】
動き補償部１０６は、フレームメモリ１０５に記憶されている、既に復号化された画像情報を、可変長復号化部１０１から入力される第１動きベクトルＭＶ１に従って読み出し、予測画像情報として演算部１０４に出力する。
【００２８】
演算部１０４は、逆ＤＣＴ部１０３からの出力情報と動き補償部１０６からの予測画像情報とを加算することにより、元の画像情報を復号して符号化部３００に出力する。
【００２９】
動き補償ブロックサイズ決定部２００は、復号化部１００の可変長復号化部１０１から入力される直交変換係数に基づいて、動きベクトルを検出する場合（動き補償を行う場合）の動き補償ブロックサイズを符号化対象ブロック毎に決定し、決定した動き補償ブロックサイズを符号部３００の動きベクトル検出部３１０に出力する。動き補償ブロックサイズ決定部２００の動き補償ブロックサイズ決定方法の詳細は後述する。
【００３０】
符号化部３００は、演算部３０１と、ＤＣＴ部３０２と、量子化部３０３と、可変長符号化部３０４と、逆量子化部３０５と、逆ＤＣＴ部３０６と、演算部３０７と、フレームメモリ３０８と、動き補償部３０９と、動きベクトル検出部３１０とを備えている。
【００３１】
演算部３０１は、復号化部１００から入力される復号化された画像情報と、動き補償部３０９から入力される予測画像情報との差分値を演算して、ＤＣＴ部３０２に出力する。
ＤＣＴ部３０２は、演算部３０１から入力される差分値に対してＤＣＴ処理を施し、その結果得られる直交変換係数を量子化部３０３に出力する。量子化部３０３は、所定の量子化ステップで、直交変換係数を量子化し、量子化された直交変換係数を可変長符号化部３０４および逆量子化部３０５に出力する。
【００３２】
可変長符号化部３０４は、量子化された直交変換係数を可変長符号化し、第２符号化情報（Ｈ．２６４ビットストリーム）として出力する。この場合、可変長符号化部３０４は、量子化部３０３から入力される量子化ステップおよび動きベクトル検出部３１０で検出された第２動きベクトルＭＶ２等も可変長符号化して出力する。
【００３３】
逆量子化部３０５は、量子化された直交変換係数を量子化部３０３から入力された量子化ステップに従って逆量子化し、得られた直交変換係数を逆ＤＣＴ部３０６に出力する。逆ＤＣＴ部３０６は、直交変換係数を逆ＤＣＴ処理して、演算部３０７に出力する。
【００３４】
演算部３０７は、逆ＤＣＴ部３０６からの出力情報と動き補償部３０９からの予測画像情報とを加算し、元の画像情報を局所復号する。この局所復号された画像情報は、フレームメモリ３０８に出力されて記憶され、予測画像情報を生成する場合に使用される。
【００３５】
動きベクトル検出部３１０は、符号化対象マクロブロックを、動き補償ブロックサイズ決定部２００から入力される動き補償ブロックサイズで分割して、分割したブロック単位で第２動きベクトルＭＶ２の検出を行う。動きベクトル検出部３１０は、フレームメモリ３０８に格納されている過去の符号化済みフレーム画像（以降、「参照フレーム」と称する）の所定の探索範囲において、現ブロックに類似する部分（以降、「動き予測データ」と称する）を探索し、現ブロックから動き予測データへの二次元の空間的移動量を第２動きベクトルＭＶ２として検出する。動きベクトル検出部３１０は、検出した第２動きベクトルＭＶ２を、動き補償部３０９および可変長符号化部３０４に出力する。
【００３６】
動き補償部３０９は、動きベクトル検出部３１０から入力される第２動きベクトルＭＶ２とフレームメモリ３０８に格納されている参照フレームとを用いて、予測画像情報を生成して、演算部３０１に出力する。
【００３７】
図２〜図６を参照して、上記動き補償ブロックサイズ決定部２００の動き補償ブロックサイズ決定方法を説明する。上述したように、Ｈ．２６４では、第２動きベクトルＭＶ２の探索のブロックサイズとして、１６×１６画素のマクロブロックを７種類の形状（１６×１６画素、１６×８画素、８×１６画素、８×８画素、４×８画素、８×４画素、４×４画素）に分割して使用することができる（図７参照）。ここでは、４種類（１６×１６画素、１６×８画素、８×１６画素、８×８画素）のブロックサイズを使用する場合を一例として説明する。
【００３８】
図２は、マクロブロック構成を説明するための図である。ＹＵＶ４．２．０フォーマットを扱うＭＰＥＧやＨ．２６４においては、画像をマクロブロック毎に分割して処理を行う。１つのマクロブロックのサイズは、図２に示すように、輝度成分Ｙは１６×１６画素、色差成分Ｃｂ、Ｃｒはそれぞれ８×８画素である。図３は、直交変換係数の基底画像を説明するための図である。ＤＣＴ処理は，８×８画素のブロック毎に行われる。したがって、マクロブロックの輝度成分は、４つのブロックに分割してＤＣＴ処理される。ＤＣＴ処理を行うと、図３に示すように、低周波成分はブロックの左上に集まり、高周波成分はブロックの右下に集まるという特徴がある。また、直交変換係数の一番左上はＤＣ成分であり、元々のブロックにおける画素値の平均値である。
【００３９】
画面間予測処理された直交変換係数は、符号化対象マクロブロックと参照画素ブロックとの差分を示している。動き補償ブロックサイズ決定部２００では、輝度成分の４つのブロックに対して、直交変換係数の統計値を算出して動き補償ブロックサイズを決定する。
【００４０】
図４は、動き補償ブロックサイズ決定部２００の動き補償ブロックサイズの決定方法を説明するための図である。符号化対象マクロブロック（１６×１６画素）を構成する輝度成分の４つの各ブロック（８×８画素）毎に、直交変換係数の絶対値和または二乗和を統計値として算出する。この各ブロックの直交変換係数の統計値は、各ブロック全体の参照画素ブロックとの差分を示しているので、以下、「統計値」を「差分情報」と称する。
【００４１】
差分情報≧閾値の場合には、差分情報が大きいと判断し、差分情報＜閾値の場合には、差分情報が小さいと判断する。図４において、差分情報が大きいブロックをＢH、差分情報が小さいブロックをＢLとしている。動き補償ブロックサイズ決定部２００は、４つのブロックの差分情報に基づいて、符号化対象ブロックの動き補償ブロックサイズを決定する。
【００４２】
図４に示すように、全てのブロックの差分情報が小さい場合（条件１）は、１６×１６画素の動き補償ブロックサイズとし、上側の２つのブロックのみ差分情報が大きい場合（条件２）は、符号化対象マクロブロック（１６×１６画素）を水平方向に分割して１６×８画素の動き補償ブロックサイズとし、下側の２つのブロックのみ差分情報が大きい場合（条件３）は、符号化対象マクロブロック（１６×１６画素）を水平方向に分割して１６×８画素の動き補償ブロックサイズとし、右側の２つのブロックのみ差分情報が大きい場合（条件４）は、符号化対象マクロブロック（１６×１６画素）を垂直方向に分割して８×１６画素の動き補償ブロックサイズとし、左側の２つのブロックのみ差分情報が大きい場合（条件５）は、符号化対象マクロブロック（１６×１６画素）を垂直方向に分割して８×１６画素の動き補償ブロックサイズ、それ以外（条件６）の場合は、すなわち、１つでも差分情報の大きいものがある場合は、符号化対象マクロブロック（１６×１６画素）を水平および垂直方向に分割して８×８画素の動き補償ブロックサイズとする。
【００４３】
図５は、動き補償ブロックサイズ決定部２００の処理を説明するためのフローチャートである。図５において、動き補償ブロックサイズ決定部２００は、復号化部１００の可変長復号化部１０１から符号化対象マクロブロック（１６×１６画素）の直交変換係数を取得し（ステップＳ１）、符号化対象マクロブロックを構成する輝度成分の４つの各ブロック毎に、直交変換係数の絶対値和または二乗和を差分情報（＝統計値）として算出し、符号化対象マクロブロックが、上記条件１〜６のいずれかに該当するかを判定する（ステップＳ２，３）。
【００４４】
符号化対象マクロブロックが、条件１に該当する場合には１６×１６画素の動き補償ブロックサイズを選択し（ステップＳ４）、条件２，３に該当する場合には、１６×８画素の動き補償ブロックサイズを選択し（ステップＳ５）、条件４，５に該当する場合には８×１６画素の動き補償ブロックサイズを選択し（ステップＳ６）、条件６に該当する８×８画素の動き補償ブロックサイズを選択する。
【００４５】
図６は、動きベクトル検出部３１０の処理を説明するためのフローチャートである。動きベクトル検出部３１０は、符号化対象マクロブロックを動き補償ブロックサイズで分割した各ブロック毎に第２動きベクトルＭＶ２の検出を行う。図６において、動きベクトル検出部３１０は、符号化対象マクロブロックの動き補償ブロックサイズを取得し（ステップＳ１１）、符号化対象マクロブロックを動き補償ブロックサイズで分割したブロックについて、参照画素ブロックの位置を初期値に設定して（ステップＳ１２）、動きベクトルを検出し、そのコスト計算を行う（ステップＳ１３）。そして、コスト値が最も小さいか否かを判定し（ステップＳ１４）、コスト値が最も小さい場合には（ステップＳ１４の「Ｙｅｓ」）、当該コスト値とその動きベクトルを保持する一方（ステップＳ１５）、コスト値が最も小さくない場合には（ステップＳ１４の「Ｎｏ」）、ステップＳ１６に移行する。
【００４６】
ステップＳ１６では、全ての参照画素ブロックについて比較したか否かを判断し、全ての参照画素ブロックについて比較していない場合には（ステップＳ１６の「Ｎｏ」）、参照画素ブロックの位置を変更して（ステップＳ１７）、ステップＳ１３に戻り、全ての参照画素ブロックが終了するまで、同じ処理を繰り返す（ステップＳ１３〜Ｓ１７）。
【００４７】
他方、全ての参照画素ブロックについて比較した場合には（ステップＳ１６の「Ｙｅｓ」）、動き補償ブロックサイズおよび最後に保持された動きベクトルを第２動きベクトルＭＶ２として採用する（ステップＳ１８）。
【００４８】
［変形例１］
変形例１に係る動き補償ブロックサイズ決定部２００の動き補償ブロックサイズ決定方法を説明する。図７は、変形例１に係る動き補償ブロックサイズ決定部２００の動き補償ブロックサイズ決定方法を説明するための図である。
【００４９】
上記実施の形態１では、動き補償ブロックサイズを決定する場合に、符号化対象マクロブロック（１６×１６画素）を４つのブロック（８×８画素）に分割して、直交変換係数の絶対値和または二乗和を差分情報として算出することとしたが、マクロブロックの分割方法はこれに限られるものではない。
【００５０】
変形例１においては、図７に示すように、符号化対象マクロブロック（１６×１６画素）を構成する輝度成分の４つのブロックを、水平方向に分割して、１６×８画素の２つのブロックとして、その上側をブロックＡ、その下側をブロックＢとし、また、垂直方向に分割して、８×１６画素の２つのブロックとし、その右側をブロックＣ、その左側をブロックＤとする。そして、４つのブロックＡ，Ｂ，Ｃ，Ｄ毎に、直交変換係数の絶対値和または２乗和を差分情報（＝統計値）として算出する。
【００５１】
ブロックＡ，Ｂ，Ｃ，Ｄの差分情報が全て閾値よりも小さい場合は、１６×１６画素の動き補償ブロックサイズとする。また、ブロックＡ，Ｂ，Ｃ，Ｄの差分情報が全て閾値以上の場合には、８×８画素の動き補償ブロックサイズとする。また、（ブロックＡの差分情報−ブロックＢの差分情報）の絶対値が大きく、かつ、（ブロックＣの差分情報−ブロックＤの差分情報）の絶対値が小さい場合は、１６×８画素の動き補償ブロックサイズとする。また、（ブロックＡの差分情報−ブロックＢの差分情報）の絶対値が小さく、かつ、（ブロックＣの差分情報−ブロックＤの差分情報）の絶対値が大きい場合は、８×１６画素の動き補償ブロックサイズとする。
【００５２】
［変形例２］
変形例２に係る動き補償ブロックサイズ決定部２００の動き補償ブロックサイズの決定方法を説明する。図８は、変形例２に係る動き補償ブロックサイズ決定部２００の動き補償ブロックサイズの決定方法を説明するための図である。
【００５３】
図８に示すように、直交変換係数は低周波成分のブロックの左上に集中し、高周波成分はブロックの右下に集中するという特徴があるので、一番左上のＤＣ成分はブロックにおける画素値の平均値を示している。すなわち、符号化対象ブロックと参照画素ブロックの差分が平均的に存在している場合はＤＣ成分に現れ、粗い差分がある場合は低周波成分に現れ、細かな差分がある場合は高周波成分に現れる。この性質を利用して、例えば、ＤＣ成分領域と低周波成分領域のみ統計の計算に利用する、またはＤＣ成分領域と低周波成分領域と高周波成分領域にそれぞれ異なる重み付けを行って統計に利用することにしても良い。すなわち、ブロック内の直交変換係数の周波数分布に応じて直交変換係数の統計値を算出することにしても良い。
【００５４】
例えば、高周波成分領域の差分は細かな差分であるため、人間の目には感知しづらく、この領域の値が大きかったとしても差分が小さいと判断して問題ない。逆にＤＣ成分で差分があった場合は、そのブロック全体に差分があることを示しているため、差分が大きいと判断したほうがよい。かかる判定方法を使用することにより、より精度の高い判定ができ、有効な動き補償ブロックサイズ判定を行うことができる。
【００５５】
［変形例３］
変形例３に係る再符号化装置１００について説明する。図９は、変形例３に係る再符号化装置の構成を示す図である。図９において、図１と同等機能を有する部位には同一符号を付してある。
【００５６】
上記実施の形態１では、動き補償ブロックサイズ決定部２００は、逆量子化前の直交変換係数を使用して、動き補償ブロックサイズを決定することとしたが、逆量子化後の直交変換係数を使用して、動き補償ブロックサイズを決定することにしてもよい。変形例３に係る動き補償ブロックサイズ決定部２００は、逆量子化部１０２から逆量子化後の直交変換係数を取得して、逆量子化後の直交変換係数に基づいて、動き補償ブロックサイズを決定する。これによれば、逆量子化された直交変換係数は逆量子化前の直交変換係数に比して、数値の差が大きくなるため、より高精度に動き補償ブロックサイズを決定することが可能となる。
【００５７】
以上説明したように、上記実施の形態１によれば、画像情報がブロック単位で直交変換と動き補償とにより符号化された第１符号化情報を、第２符号化情報にトランスコードする再符号化装置１０において、復号化部１００は、第１符号化情報を復号化し、動き補償ブロックサイズ決定部２００は、第１符号化情報の直交変換係数に基づいて、復号化された画像情報の動きベクトルの検出単位となる動き補償ブロックサイズをマクロブロック単位で決定し、符号化部３００では、動き補償ブロックサイズ決定部２００で決定した動き補償ブロックサイズで、復号化された画像情報の動きベクトルを検出し、当該検出した動きベクトルを使用して、直交変換と動き補償とにより、復号化された画像情報を第２符号化情報に符号化することとしたので、動き補償ブロックサイズが粗い符号化方式から動き補償ブロックサイズが細かい符号化方式にトランスコーディングする場合において、第２符号化情報に符号化する際に、ブロックサイズを可変させて、全サイズのブロックについて動きベクトルの探索を行う必要がなくなり、予め最適な動き補償ブロックサイズを決定して可変ブロックサイズ動き補償を行うことができ、第１符号化情報を第２符号化情報にトランスコードする場合に、第２符号化情報を生成するための動きベクトルを検出する際の演算量を低減するとともに、画質を向上させることが可能となる。
【００５８】
また、動き補償ブロックサイズ決定部２００は、復号化された画像情報の符号化対象マクロブロック１６×１６画素を４つのブロック８×８画素に分割し、分割した各ブロック毎に第１符号化情報の直交変換係数の統計値（＝差分情報）を算出し、分割した各ブロックの統計値に基づいて、符号化対象マクロブロックを、１６×１６画素、８×１６画素、１６×８画素、または８×８画素に分割した動き補償ブロックサイズとすることとしたので、動き補償ブロックサイズを決定する場合の演算量を低減でき、かつ、最適な動き補償ブロックサイズを高精度に算出することが可能となる。
【００５９】
また、動き補償ブロックサイズ決定部２００は、復号化された画像情報の符号化対象マクロブロック１６×１６画素を、８×１６画素の２つのブロック、および１６×８画素の２つのブロックに分割し、分割した各ブロック毎に第１符号化情報の直交変換係数の統計値（＝差分情報）を算出し、分割した各ブロックの統計値に基づいて、符号化対象マクロブロックを、１６×１６画素、８×１６画素、１６×８画素、または８×８画素に分割した動き補償ブロックサイズとすることとしたので、動き補償ブロックサイズを決定する場合の演算量を低減でき、かつ、最適な動き補償ブロックサイズを高精度に算出することが可能となる。
【００６０】
（実施の形態２）
図１０は、本発明の実施の形態２に係る再符号化装置１０の概略の構成例を示す図である。図１０において、図１と同等機能を有する部位には同一符号を付してある。ところで、第１符号化情報において、符号化対象ブロックと参照画素ブロックの差分が小さい場合は、符号化対象ブロックと参照画素ブロックの画像は類似していると考えられるため、動きベクトルの再探索処理を行った場合に、同様の参照画素ブロックが検出される可能性が高い。そこで、実施の形態２では、動き補償ブロックサイズ決定部２００は、動きベクトル検出部３１０での動きベクトルの再探索が必要か否かを判断し、不要な場合は第１符号化情報の第１動きベクトルＭＶ１を再利用する構成である。
【００６１】
復号化部１００の可変長復号化部１０１からは、第１動きベクトルＭＶ１が符号化部３００の動きベクトル検出部３１０に出力される。動き補償ブロックサイズ決定部２００は、動き補償ブロックサイズと共に、符号化対象マクロブロックを動き補償ブロックサイズで分割したブロックにおいて、動きベクトルの再探索が必要か否かを判定し、動きベクトルの再探索が必要か否かを示す動き指定情報（例えば、動きベクトルの再探索が必要な場合「１」、動きベクトルの再探索が不要な場合「０」）を動きベクトル検出部３１０に出力する。
【００６２】
具体的には、動き補償ブロックサイズ決定部２００は、符号化対象マクロブロックを動き補償ブロックサイズで分割した各ブロック毎に、直交変換係数の絶対値和または絶対二乗和を差分情報（＝統計値）Ｘとして算出し、差分情報Ｘ≧閾値Ｙの場合には、動きベクトルの再探索が必要であると判定し、Ｘ＜閾値Ｙの場合には、第１動きベクトルＭＶ１を再利用できると判定して、動きベクトルの再探索が不要であると判定する。なお、閾値Ｙは分割された動き補償ブロックサイズで異なる。
【００６３】
動きベクトル検出部３１０は、符号化対象マクロブロックを、動き補償ブロックサイズ決定部２００から入力される動き補償ブロックサイズで分割して、各分割したブロックについて、動き補償ブロックサイズ決定部２００から入力される動き指定情報が動きベクトルの再探索が不要を指定する場合には、可変長復号化部１０１から取得した第１動きベクトルＭＶ１を利用する一方、動きベクトルの再探索が必要と指定された場合は、第２動きベクトルＭＶ２を探索する。
【００６４】
図１１は、動き補償ブロックサイズ決定部２００の処理を説明するためのフローチャートである。図１１において、動き補償ブロックサイズ決定部２００は、復号化部１００の可変長復号化部１０１から符号化対象マクロブロック（１６×１６画素）の直交変換係数を取得し（ステップＳ２１）、符号化対象マクロブロックを構成する輝度成分の４つの各ブロック毎に、各画素の直交変換係数の絶対値和または二乗和を差分情報（＝統計値）として算出し、符号化対象マクロブロックが、上記条件１〜６のいずれかに該当するかを判定する（ステップＳ２２，２３）。
【００６５】
符号化対象マクロブロックが、上記条件１に該当する場合には１６×１６画素の動き補償ブロックサイズを選択し（ステップＳ２４）、符号化対象マクロブロックの直交変換係数の絶対値和または絶対二乗和を差分情報として算出し、動きベクトルの再探索が必要か否かを判定する（ステップＳ２８）。また、上記条件２，３に該当する場合には、１６×８画素の動き補償ブロックサイズを選択し（ステップＳ２５）、符号化対象マクロブロックを１６×８画素の動き補償ブロックサイズで分割した上下２つのブロック毎に、直交変換係数の絶対値和または絶対二乗和を差分情報として算出し、動きベクトルの再探索が必要か否かを判定する（ステップＳ２９）。また、上記条件４，５に該当する場合には８×１６動き補償ブロックサイズを選択し（ステップＳ２６）、符号化対象マクロブロックを８×１６画素の動き補償ブロックサイズで分割した左右２つのブロック毎に、直交変換係数の絶対値和または絶対二乗和を差分情報として算出し、動きベクトルの再探索が必要か否かを判定する（ステップＳ３０）。また、上記条件６に該当する場合には８×８画素の動き補償ブロックサイズを選択し（ステップＳ２７）、符号化対象マクロブロックを８×８画素の動き補償ブロックサイズで分割した４つのブロック毎に、直交変換係数の絶対値和または絶対二乗和を差分情報として算出し、動きベクトルの再探索が必要か否かを判定する（ステップＳ３１）。
【００６６】
図１２は、動きベクトル検出部３１０の処理を説明するためのフローチャートである。
動きベクトル検出部３１０は、符号化対象マクロブロックを動き補償ブロックサイズで分割した各ブロック毎に第２動きベクトルＭＶ２の検出を行う。図１２において、動きベクトル検出部３１０は、符号化対象マクロブロックの動き補償ブロックサイズおよび動き指定情報を取得し（ステップＳ４１）、動き指定情報を参照して、動きベクトル検出が不要なブロックがあるか否かを判定し（ステップＳ４２）、動きベクトル検出が不要なブロックがある場合には、当該ブロックに対応する第１動きベクトルＭＶ１を保持する（ステップＳ４３）。動きベクトル検出が不要なブロックがない場合には、ステップＳ４４に移行する。ステップＳ４４では、動き指定情報を参照して、動きベクトル検出が必要なブロックがあるか否かを判定し（ステップＳ４４）、動きベクトル検出が必要がブロックがない場合には、ステップＳ５１に移行する一方（ステップＳ４４の「Ｎｏ」）動きベクトル検出が必要なブロックがある場合には（ステップＳ４４の「Ｙｅｓ」）、当該ブロックについて、参照画素ブロックの位置を初期値に設定して（ステップＳ４５）、動きベクトルを検出し、そのコスト計算を行う（ステップＳ４６）。そして、コスト値が最も小さいか否かを判定し（ステップＳ４７）、コスト値が最も小さい場合には（ステップＳ４７の「Ｙｅｓ」）、当該コスト値と動きベクトルを保持する一方（ステップＳ４８）、コスト値が最も小さくない場合には（ステップＳ４７の「Ｎｏ」）、ステップＳ４９に移行する。
【００６７】
ステップＳ４９では、全ての参照画素ブロックについて比較したか否かを判断し、全ての参照画素ブロックについて比較していない場合には（ステップＳ４９の「Ｎｏ」）、参照画素ブロックの位置を変更して（ステップＳ５０）、ステップＳ４６に戻り、全ての参照画素ブロックが終了するまで、同じ処理を繰り返す（ステップＳ４６〜Ｓ５０）。
【００６８】
他方、全ての参照画素ブロックについて比較した場合には（ステップＳ４９の「Ｙｅｓ」）、動き補償ブロックサイズおよび最後に保持された動きベクトルを第２動きベクトルＭＶ２として採用する（ステップＳ５１）。
【００６９】
上記実施の形態２によれば、動き補償ブロックサイズ決定部２００は、符号化対象マクロブロックを決定した動き補償ブロックサイズで分割した各ブロック毎に、第１符号化情報の直交変換係数の統計値を算出し、算出した統計値に基づいて、動きベクトルの再探索が必要か否かを判断し、符号化部３００では、符号化対象ブロックを決定した動き補償ブロックサイズで分割したブロックにおいて、動き補償ブロックサイズ決定部２００で動きベクトルの再探索が不要であると判断された場合には、第１符号化情報の動きベクトルを再利用する一方、動きベクトルの再探索が必要であると判断された場合には動きベクトルの再探索を行うこととしたので、動きベクトルの再探索が不要な場合には、第１符号化情報の動きベクトルを再利用することができ、符号化部３００での動きベクトルの再探索の演算量を低減することが可能となる。
【００７０】
なお、上記実施の形態１および２では、第１符号化情報で１６×１６画素のマクロブロックを使用した場合について説明したが、本発明はこれに限られるものではなく、例えば、第１符号化情報で８×８画素のマクロブロックを使用した場合には、動き補償ブロックサイズを、８×８画素、８×４画素、４×８画素、４×４画素に分割することにすればよい。
【００７１】
また、上記実施の形態１および２では、ＭＰＥＧ２からＨ．２６４へのトランスコードについて説明したが、本発明はこれに限られるものではなく、可変ブロックサイズを使用しないで符号化した第１符号化情報から可変ブロックサイズを使用して符号化した第２符号化情報にトランスコードする場合の全てに適用可能である。例えば、第１符号化情報としては、ＭＰＥＧ２，ＭＰＥＧ４，Ｈ．２６４，ＷＭＶ９等を使用でき、第２符号化情報としては、ＭＰＥＧ４，Ｈ．２６４，ＷＭＶ９等を使用することができる。
【００７２】
また、上記実施の形態１および２の再符号化装置１０の機能を実現するためのプログラムを図１３に示したコンピュータ読み取り可能な記録媒体５００に記録して、この記録媒体５００に記録されたプログラムを同図に示したコンピュータ４００に読み込ませ、実行することにより各機能を実現してもよい。
【００７３】
同図に示したコンピュータ４００は、上記プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）４０１と、キーボード、マウス等の入力装置４０２と、各種データを記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４０３と、演算パラメータ等を記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４０４と、記録媒体５００からプログラムを読み取る読取装置４０５と、ディスプレイ、プリンタ等の出力装置４０６とから構成されている。
【００７４】
ＣＰＵ４０１は、読取装置４０５を経由して記録媒体５００に記録されているプログラ
ムを読み込んだ後、プログラムを実行することにより、前述した機能を実現する。なお、
記録媒体５００としては、光ディスク、フレキシブルディスク、ハードディスク等が挙げ
られる。
【産業上の利用可能性】
【００７５】
以上のように、本発明に係る再符号化装置、再符号化方法、および再符号化用プログラムは、再符号化機能を搭載した各種装置およびシステムに有用であり、例えば、ＤＶＤ／ＨＤＤレコーダ、ＣＡＴＶ・インターネット・携帯などの送信システム、および符号化変換ソフト等に広く利用可能である。
【図面の簡単な説明】
【００７６】
【図１】本発明の実施の形態１に係る再符号化装置の概略の構成例を示す図である。
【図２】マクロブロック構成を説明するための図である。
【図３】直交変換係数の基底画像を説明するための図である。
【図４】動き補償ブロックサイズ決定部の動き補償ブロックサイズの決定方法を説明するための図である。
【図５】動き補償ブロックサイズ決定部の処理を説明するためのフローチャートである。
【図６】動きベクトル検出部の処理を説明するためのフローチャートである。
【図７】変形例１に係る動き補償ブロックサイズ決定部の動き補償ブロックサイズの決定方法を説明するための図である。
【図８】変形例２に係る動き補償ブロックサイズ決定部の動き補償ブロックサイズの決定方法を説明するための図である。
【図９】変形例３に係る再符号化装置の構成を示す図である。
【図１０】本発明の実施の形態２に係る再符号化装置の概略の構成例を示す図である。
【図１１】動き補償ブロックサイズ決定部の処理を説明するためのフローチャートである。
【図１２】動きベクトル検出部の処理を説明するためのフローチャートである。
【図１３】本発明の他の実施の形態に係る再符号化装置の概略の構成例を示す図である。
【図１４】ＭＰＥＧ２の動きベクトル探索を説明するための模式図である。
【図１５】Ｈ．２６４のマクロブロック形状を説明するための図である。
【図１６】Ｈ．２６４の動きベクトル探索を説明するための模式図である。
【符号の説明】
【００７７】
１０  符号化装置
１００  復号化部
１０１  可変長復号化部
１０２  逆量子化部
１０３  逆ＤＣＴ部
１０４  演算部
１０５  フレームメモリ
１０６  動き補償部
２００  動き補償ブロックサイズ決定部
３００  符号化部
３０１  演算部
３０２  ＤＣＴ部
３０３  量子化部
３０４  可変長符号化部
３０５  逆量子化部
３０６  逆ＤＣＴ部
３０７  演算部
３０８  フレームメモリ
３０９  動き補償部
３１０  動きベクトル検出部
４００  コンピュータ
４０１  ＣＰＵ
４０２  入力装置
４０３  ＲＯＭ
４０４  ＲＡＭ
４０５  読取装置
４０６  出力装置
５００  記録媒体
【図１】
2006295503.tif 000003
【図２】
2006295503.tif 000004
【図３】
2006295503.tif 000005
【図４】
2006295503.tif 000006
【図５】
2006295503.tif 000007
【図６】
2006295503.tif 000008
【図７】
2006295503.tif 000009
【図８】
2006295503.tif 000010
【図９】
2006295503.tif 000011
【図１０】
2006295503.tif 000012
【図１１】
2006295503.tif 000013
【図１２】
2006295503.tif 000014
【図１３】
2006295503.tif 000015
【図１４】
2006295503.tif 000016
【図１５】
2006295503.tif 000017
【図１６】
2006295503.tif 000018