(57)【要約】【課題】第１の圧縮形式で圧縮された第１ビットストリームを、第２の圧縮形式で圧縮された第２ビットストリームに短時間で変換できるようにする。【解決手段】トランスコーダは、ＭＰＥＧ２デコーダ１と、第１のＲＡＭ２と、第２のＲＡＭ３と、第３のＲＡＭ４と、特徴解析部５と、符号化モード選択制御部６と、Ｈ．２６４エンコーダ７とを備えている。符号化モード選択制御部６は、特徴解析部５が解析した映像の時間変化の特徴を表すタイプに基づいて、デコード画像をＨ．２６４エンコーダ７で符号化する際の予測モードを選択する。ＭＰＥＧ−２からＨ．２６４への変換処理を、画質を劣化させることなく、大幅に短い処理時間で行うことができる。【選択図】図１
2008167290.tif 000002
【特許請求の範囲】
【請求項１】
第１の圧縮形式で圧縮された第１ビットストリームを、第２の圧縮形式で圧縮された第２ビットストリームに変換するトランスコーダにおいて、
前記第１ビットストリームに対応する画像フレーム内の複数画素からなるマクロブロックごとに、映像の時間変化の特徴を解析して、前記特徴を表す複数のタイプに分類する特徴解析手段と、
前記タイプに基づいて、フレーム間予測モードとフレーム内予測モードとのいずれかを前記マクロブロックごとに選択する第１処理手段と、
前記フレーム間予測モードが選択された場合、前記タイプに基づいて参照フレームを選択し、前記フレーム内予測モードが選択された場合、着目マクロブロックとその周囲のマクロブロックとに対応するＤＣ係数を利用して、仮フレーム内予測を行った結果に基づいて、隣接する複数の画素からなる第１のブロックと、前記第１のブロックよりも画素数の少ない第２のブロックとのいずれかを選択する第２処理手段と、
前記フレーム間予測モードが選択された場合、前記参照フレームを用いて動き補償を行う際の単位となるブロックサイズを決定し、前記フレーム内予測モードが選択された場合、前記第２処理手段にて選択されたブロックのエッジ方向を検出した結果に基づいて各ブロックの予測モードを決定する第３処理手段と、を備えることを特徴とするトランスコーダ。
【請求項２】
前記第３処理手段は、前記第１のブロックを使用する場合、検出されたエッジ方向に基づいて前記第１のブロックごとに予測モードを決定し、前記第２のブロックを使用する場合、エッジの対称性を考慮に入れて検出された各ブロックのエッジを合成して前記第１のブロックのエッジ方向を検出し、検出されたエッジ方向に基づいて予測モードを決定することを特徴とする請求項１に記載のトランスコーダ。
【請求項３】
前記第１ビットストリームは、マクロブロックごとに、フレーム内予測またはフレーム間予測の選択情報とＤＣＴ  ＤＣ係数に関する情報とを含んでおり、
前記特徴解析手段は、前記第１ビットストリーム中に含まれるフレーム内予測またはフレーム間予測の選択情報とＤＣＴ  ＤＣ係数に関する情報とに基づいて、マクロブロックごとに前記複数のタイプに分類することを特徴とする請求項１または２に記載のトランスコーダ。
【請求項４】
前記第１の圧縮形式はＭＰＥＧ−２であり、
前記第２の圧縮形式はＨ．２６４であり、
前記第１のブロックは、１６×１６画素ブロックであり、
前記第２のブロックは、４×４画素ブロックであることを特徴とする請求項１乃至３のいずれかに記載のトランスコーダ。
【請求項５】
現在の画像フレーム内の着目マクロブロックの輝度の平均値と、第１の参照フレーム内の同位置のマクロブロックの輝度の平均値と、第２の参照フレーム内の同位置のマクロブロックの輝度の平均値とに基づいて、画像フレームが徐々に明るくなるフェードインと画像フレームが徐々に暗くなるフェードアウトとの少なくとも一方を検出するフェードイン・アウト検出手段を備え、
前記特徴解析手段は、前記フェードイン・アウト検出手段の検出結果を考慮に入れて前記複数のタイプに分類することを特徴とする請求項１乃至４のいずれかに記載のトランスコーダ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮形式の異なるビットストリームへの変換を行うトランスコーダに関する。
【背景技術】
【０００２】
国際電気通信連合（ＩＴＵ）の電気通信標準化部門（ＩＴＵ−Ｔ）のVideo Coding Experts Group (VCEG)によって策定された動画圧縮の規格であるＨ．２６４は、ＭＰＥＧ−２やＭＰＥＧ−４よりも高い圧縮効率が得られることから、モバイル端末用の低ビットレートからＨＤＴＶ用の高ビットレートまでの幅広い利用が期待されている。
【０００３】
Ｈ．２６４は、フレーム間予測とフレーム内予測の双方において、ＭＰＥＧ−２やＭＰＥＧ−４にない特徴を持っている。
【０００４】
Ｈ．２６４のフレーム間予測の特徴として、（１）可変ブロックサイズの動き補償、（２）予測精度の向上、（３）高次数のフィルタ処理および（４）複数参照フレームが挙げられる。
（１）Ｈ．２６４では、７種類のブロックサイズで動き補償を行う。ＭＰＥＧ−４よりも小さなブロックで動き補償を行うため、単位面積当たりの予測誤差を小さく抑えることができる。
（２）Ｈ．２６４では、ＭＰＥＧ−４の１／２画素精度に対して、１／４画素精度までの予測精度が得られる。
（３）予測画像を生成するためのフィルタ処理を行う際、ＭＰＥＧ−４は２タップフィルタ処理を行うのに対し、Ｈ．２６４では６タップフィルタ処理を行う。このように、Ｈ．２６４はより高次数のフィルタ処理を行うため、予測画像における高周波成分の再現性が高くなる。
（４）ＭＰＥＧ−４では、１フレームのみを参照フレームとして利用可能であるが、Ｈ．２６４では、複数の参照フレームを用いることができるため、予測精度の向上が図れる。
【０００５】
一方、Ｈ．２６４のフレーム内予測の特徴として、隣接ブロックからの画素レベルでの予測を行うことが挙げられる。輝度信号を処理する場合に、４×４画素のブロックに対して９通りの予測モードが定義され、１６×１６画素のブロックに対して４通りの予測モードが定義されている。これら計１３通りの予測モードから最適な予測モードを選択して符号化処理を行う。
【０００６】
このように、Ｈ．２６４では、フレーム間予測とフレーム内予測の双方において、ＭＰＥＧ−２やＭＰＥＧ−４に比べて自由度の高い予測処理を行うことができる。
【０００７】
圧縮形式Ａで符号化された画像データを圧縮形式Ｂで再符号化する際、画像データの復号化処理で得られた圧縮形式Ａに関する符号化モード情報を利用することで、圧縮方式Ｂでの符号化処理を簡略化する手法が開示されている（特許文献１参照）。
【０００８】
しかしながら、ＭＰＥＧ−２やＭＰＥＧ−４で決定した符号化モード（フレーム間予測モードまたはフレーム内予測モード）を、Ｈ．２６４でそのまま再利用すると、画像の複雑度合によっては圧縮率が大きく低下するおそれがある。
【０００９】
例えば、画像が一瞬明るくなるフラッシュを含むシーンでは、ＭＰＥＧ−２だとフラッシュ後のフレームにおいて、フラッシュ前の画像を参照できないことから、フレーム内予測モードで符号化を行うことになり、圧縮効率が悪いという問題がある。
【００１０】
上述したように、Ｈ．２６４では、１６×１６画素ブロックと４×４画素ブロックのいずれかでフレーム内予測を行えるため、ＭＰＥＧ−２やＭＰＥＧ−４に比べて圧縮率を大きく向上できるが、計１３種類の予測モードが存在することから、すべての予測モードについて予測を行うと、演算量が膨大になるという問題がある。
【００１１】
また、マクロブロック内の画像の局所的特徴（エッジの方向）に基づいて、フレーム内予測モードにおける予測モードを高速に決定する手法が提案されている（特許文献２参照）。
【００１２】
特許文献２の手法によれば、圧縮率をほとんど低下させずに符号化処理全体の処理時間を約１／４に短縮できる。しかしながら、複雑な演算処理を行わなければならず、ハードウェアで実装するのは困難である。
【特許文献１】J. Xin, M. T. Sun, B. S. Choi and K. W. Chun, “An HDTV-to-SDTV spatial transcoder,” IEEE Trans. Circuits Syst. Video Technol., vol. 12, no. 11, pp. 998-1008, Nov. 2002
【特許文献２】F.Pan, et.al. “Fast Mode Decision Algorithm for Intraprediction in H.264/AVC Video Coding”, IEEE Trans.CSVT, Jul. 2005
【発明の開示】
【発明が解決しようとする課題】
【００１３】
本発明は、第１の圧縮形式で圧縮された第１ビットストリームを、第２の圧縮形式で圧縮された第２ビットストリームに、短時間で変換可能なトランスコーダを提供するものである。
【課題を解決するための手段】
【００１４】
本発明の一態様によれば、第１の圧縮形式で圧縮された第１ビットストリームを、第２の圧縮形式で圧縮された第２ビットストリームに変換するトランスコーダにおいて、前記第１ビットストリームに対応する画像フレーム内の複数画素からなるマクロブロックごとに、映像の時間変化の特徴を解析して、前記特徴を表す複数のタイプに分類する特徴解析手段と、前記タイプに基づいて、フレーム間予測モードとフレーム内予測モードとのいずれかを前記マクロブロックごとに選択する第１処理手段と、前記フレーム間予測モードが選択された場合、前記タイプに基づいて参照フレームを選択し、前記フレーム内予測モードが選択された場合、着目マクロブロックとその周囲のマクロブロックとに対応するＤＣ係数を利用して、仮フレーム内予測を行った結果に基づいて、隣接する複数の画素からなる第１のブロックと、前記第１のブロックよりも画素数の少ない第２のブロックとのいずれかを選択する第２処理手段と、前記フレーム間予測モードが選択された場合、前記参照フレームを用いて動き補償を行う際の単位となるブロックサイズを決定し、前記フレーム内予測モードが選択された場合、前記第２処理手段にて選択されたブロックのエッジ方向を検出した結果に基づいて各ブロックの予測モードを決定する第３処理手段と、を備えることを特徴とするトランスコーダが提供される。
【発明の効果】
【００１５】
本発明によれば、第１の圧縮形式で圧縮された第１ビットストリームを、第２の圧縮形式で圧縮された第２ビットストリームに、画質を劣化させずに短時間で変換することができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照しながら、本発明の実施形態について説明する。以下では、ＭＰＥＧ−２のビットストリームをＨ．２６４のビットストリームに変換する例を説明する。
【００１７】
（第１の実施形態）
図１は本発明の第１の実施形態によるトランスコーダの概略構成を示すブロック図である。図１のトランスコーダは、ＭＰＥＧ２デコーダ１と、第１のＲＡＭ２と、第２のＲＡＭ３と、第３のＲＡＭ４と、特徴解析部５と、符号化モード選択制御部６と、Ｈ．２６４エンコーダ７とを備えている。
【００１８】
ＭＰＥＧ２デコーダ１は、入力されたＭＰＥＧ−２のビットストリーム（第１ビットストリーム）をＭＰＥＧ−２の方式に従って復号し、復号された画像（デコード画像）を第２のＲＡＭ３に格納する。
【００１９】
ＭＰＥＧ２デコーダ１に入力される第１ビットストリームには、フレーム内予測モードとフレーム間予測モードのどちらを選択したかを示す予測モード選択情報やＤＣＴ（Discrete Cosine Transform）  ＤＣ係数などの付属情報が含まれている。ＭＰＥＧ２デコーダ１は、この付属情報を第１のＲＡＭ２に格納する。
【００２０】
図１では、第１のＲＡＭ２と第２のＲＡＭ３を別個に設けているが、これらは一つのＲＡＭに統合してもよい。また、第３のＲＡＭ４を第１のＲＡＭ２や第２のＲＡＭ３と統合してもよい。
【００２１】
特徴解析部５は、第１のＲＡＭ２に格納されている付属情報を読み出して、映像の時間変化の特徴を解析し、解析した映像の特徴を表すタイプをマクロブロックごとに第３のＲＡＭ４に格納する。
【００２２】
符号化モード選択制御部６は、タイプに基づいて、デコード画像をＨ．２６４エンコーダ７で符号化する際の予測モードを選択する。ここでは、フレーム内予測かフレーム間予測のいずれかを選択する。
【００２３】
符号化モード選択制御部６は、フレーム間予測が選択された場合、タイプを用いて参照フレームを選択する。フレーム内予測が選択された場合、まずブロックサイズを選択し、次にデコード画像の画素値か、元の第１ビットストリーム中のＤＣＴ  ＤＣ係数やＡＣ係数を利用して、各ブロックのエッジ方向を検出し、各ブロックの予測モードを決定する。
【００２４】
Ｈ．２６４エンコーダ７は、符号化モード選択制御部６で選択された予測モードと参照フレーム等を用いて、公知の手法にてデコード画像を符号化し、Ｈ．２６４のビットストリームを生成する。
【００２５】
本実施形態の特徴部分は、特徴解析部５と符号化モード選択制御部６である。以下、これら特徴部分について詳述する。
【００２６】
図２は映像が一時的に明るくなるフラッシュを起こす前後の映像の一例を示す図である。図２では、卵形の全景の背後に、場所によって輝度が異なる背景がある映像を示している。実際には、図２よりも複雑な映像が表示されるが、図２では簡略化した映像を示している。図２（ａ）はフラッシュの直前の映像、図２（ｂ）はフラッシュ時の映像、図２（ｃ）はフラッシュの直後の映像を示している。図２（ｃ）の前景内の矩形枠はＨ．２６４による複数の参照フレームが有効な場合を示している。
【００２７】
本実施形態は、図２のようなフラッシュが起きる映像であっても、画質を落とすことなく、高圧縮率でＨ．２６４への変換を行えることを特徴とする。
【００２８】
図３は特徴解析部５の処理動作の一例を示すフローチャートである。まず、find_MB_contents_type()という関数を用いて、映像の特徴解析処理を行う（ステップＳ１）。この関数では、映像の特徴を表すタイプとして、図４に示す８種類のタイプを定義する。このステップＳ１は特徴解析手段に対応する。
【００２９】
図４において、COMMONは一般的な映像を表すタイプ、FLASH_STはフラッシュ開始を表すタイプである。ここで、フラッシュとは、映像の輝度が一時的に明るくなることを指す。FLASH_ONは、フラッシュ状態が継続することを表すタイプ、FLASH_ENDは、フラッシュ終了を表すタイプである。NFLASH_STは、負のフラッシュ開始を表すタイプである。ここで、負のフラッシュとは、映像の輝度が一時的に暗くなることを指す。NFLASH_ONは負のフラッシュ状態が継続することを表すタイプ、NFLASH_ENDは負のフラッシュ終了を表すタイプ、SCENE_CUTは、映像の突然の変化を表すタイプである。
【００３０】
図５は図３のステップＳ１における映像の特徴解析処理の処理動作を詳細に表すフローチャートである。まず、着目マクロブロックのタイプ（mb_type）がフレーム間予測モード（INTER）か否かを判定する（ステップＳ２１）。この判定処理は、第１のＲＡＭ２に格納されている、元の第１ビットストリームに含まれる予測モードの選択情報を検出して行う。
【００３１】
ステップＳ２１でフレーム間予測と判定されると、参照フレームにおける同位置のマクロブロックのタイプ（colloc.type）がFLASH_STか、またはFLASH_ONか否かを判定する（ステップＳ２２）。判定が肯定された場合には、着目マクロブロックのタイプをFLASH_ONに設定する（ステップＳ２３）。判定が否定された場合には、参照フレームにおける同位置のマクロブロックのタイプがNFLASH_STか、またはNFLASH_ONか否かを判定する（ステップＳ２４）。判定が肯定された場合には着目マクロブロックのタイプをNFLASH_ONに設定し（ステップＳ２５）、判定が否定された場合にはタイプをCOMMONに設定する（ステップＳ２６）。
【００３２】
上述したステップＳ２１でフレーム内予測モード（INTRA）と判定されると、参照フレームにおける同位置のマクロブロックの輝度レベル（輝度の平均値）を第２のＲＡＭ３から読み出して着目マクロブロックの輝度と比較し、輝度（Lumi level）が増加（up）しているか否かを判定する（ステップＳ２７）。
【００３３】
輝度が増加している場合、輝度の増分（Level_diff）が予め設定した閾値ｔｈより大きいか否かを判定する（ステップＳ２８）。輝度の増分が閾値以下の場合、着目マクロブロックのタイプをSCENE_CUTにする（ステップＳ２９）。
【００３４】
輝度の増分が閾値より大きい場合、参照フレームにおける同位置のマクロブロックのタイプがNFLASH_STか、またはNFLASH_ONか否かを判定する（ステップＳ３０）。すなわち、このステップＳ３０では、着目マクロブロックの輝度が一時的に暗くなる映像パターンか否かを判定する。
【００３５】
ステップＳ３０の判定が肯定されると、着目マクロブロックのタイプをNFLASH_ENDに設定し（ステップＳ３１）、判定が否定されると、タイプをFLASH_STに設定する（ステップＳ３２）。
【００３６】
上述したステップＳ２７で輝度が増加していないと判定されると、輝度が減少しているか否かを判定する（ステップＳ３３）。輝度が減少していない場合、ステップＳ２９に進んで、着目マクロブロックのタイプをSCENE_CUTに設定する。
【００３７】
ステップＳ３３で輝度が減少していると判定されると、輝度の減少分Level_diffが予め設定した閾値ｔｈより大きいか否かを判定する（ステップＳ３４）。輝度の減少分が閾値以下の場合、ステップＳ２９に進んで、タイプをSCENE_CUTに設定する。輝度の減少分が閾値より大きい場合、参照フレームの同位置のマクロブロックのタイプがFLASH_STまたはFLASH_ONか否かを判定し、判定が肯定されると着目マクロブロックのタイプをFLASH_ENDに設定し（ステップＳ３６）、判定が否定されるとタイプをNFLASH_STに設定する（ステップＳ３７）。
【００３８】
このように、図３のステップＳ１における映像の特徴解析処理は図５の処理手順に従って行われる。図３のステップＳ１の処理が終了すると、処理すべきフレームが第１番目のフレームであるか否かを判定する（ステップＳ２）。第１番目のフレームの場合、マクロブロックのタイプによらず、フレーム内予測モード（INTRA）を選択する。そして、高画質を維持するために、ブロックサイズの最適化処理等を行わず、すべての予測モードを使用して予測画像を生成し、各予測画像と現フレームの画像との差分を検出し、差分が最小になる予測モードを選択する（ステップＳ３）。図３では、ステップＳ３の処理を行う場合を実行例（１）としている。
【００３９】
ステップＳ２にて第１番目のフレームでないと判定されると、着目マクロブロックのタイプ（mb_type）がフレーム間予測モード（INTER）か否かを判定する（ステップＳ４）。この判定は、第１のＲＡＭ２に格納されている元の第１ビットストリームの付属情報に基づいて行う。このステップＳ４は第１処理手段に相当する。着目マクロブロックがフレーム間予測モードの場合、Ｈ．２６４に変換する際にもフレーム間予測モードを選択し、フレーム間予測モードに関するすべての予測モードを使用する（ステップＳ５）。このステップＳ５は第２処理手段に相当する。
【００４０】
Ｈ．２６４では、１６×１６、１６×８、８×１６、８×８、８×４、４×８、４×４の７種類のブロックサイズを候補とすることができる。また、複数の参照フレームを予測画像の候補とすることができる。そこで、上記ステップＳ５では、これらすべての参照フレームとすべての動き補償ブロックサイズの組み合わせについてブロックマッチング演算を行い、誤差が最小になる場合のブロックサイズと参照フレームを決定する。図３では、ステップＳ５の処理を行う場合を実行例（２）としている。
【００４１】
ステップＳ４にてフレーム間予測モードでないと判定された場合、フレーム内予測モードに決定し、仮フレーム予測を行って（ステップＳ６）、フレーム内予測のブロックサイズを１６×１６か４×４に決定する（ステップＳ７）。これに並行して、１６×１６ブロックまたは４×４ブロックでフレーム内予測を行う際の予測モードを選択する（ステップＳ８）。予測モードの選択処理の詳細は後述する。上述したステップＳ６は第３処理手段に相当する。
【００４２】
上述したステップＳ６の仮フレーム予測は、関数dc_ana_mode_decision()を用いて行われる。図６および図７は仮フレーム予測の処理内容を説明する図である。これらの図で、太線で囲んだ領域Ｄ０〜Ｄ３は着目マクロブロック、Ｐ０〜Ｐ３は周辺マクロブロックのＤＣ値を示している。着目マクロブロックのＤＣ値の予測値Ｄ０p〜Ｄ３pは、周辺マクロブロックのＤＣ値Ｐ０〜Ｐ３を用いて計算される。
【００４３】
予測値Ｄ０p〜Ｄ３pを計算する場合、水平方向または垂直方向に隣接する画素に基づいて予測する場合と、ＤＣ値に基づいて予測する場合の３種類があり、これら３種類のそれぞれごとに独立に予測値を計算し、これら予測値と着目マクロブロックの画素値との差分をそれぞれ計算する。そして、差分が最も小さくなるように、１６×１６画素ブロックと４×４画素ブロックのいずれかを選択する。
【００４４】
図３のステップＳ８の処理が終了すると、着目マクロブロックのタイプがFLASH_ENDか否かを判定する（ステップＳ９）。FLASH_ENDでない場合、処理を終了する。図３では、ステップＳ９の処理を行う場合を実行例（３）としている。
【００４５】
ステップＳ９でFLASH_ENDと判定された場合、参照フレームの中からタイプがFLASH_STのマクロブロックを含むフレームを検索する（ステップＳ１０）。このようなフレームが見つかった場合、フレーム間予測モードに変更した上で、FLASH_STARTのマクロブロックを含むフレームの直前フレームを参照フレームとする（ステップＳ１１，Ｓ１２）。このようなフレームが見つからなかった場合、ステップＳ５と同様にフレーム内予測を行う。図３では、ステップＳ１２の処理を行う場合を実行例（４）とし、ステップＳ１１でフレームが見つからなかった場合を実行例（５）としている。
【００４６】
以下、図３のステップＳ８で行われる予測モードの選択処理について詳述する。Ｈ．２６４では、４×４画素ブロックを対象とする９通りの予測モードと、１６×１６画素ブロックを対象とする４通りの予測モードとが定義されている。以下、４×４画素ブロックと１６×１６画素ブロックのそれぞれについて、予測モードの選択処理を説明する。
【００４７】
１）４×４画素ブロックの予測モード
上述した特許文献２では、４×４画素ブロックにおけるすべての画素に対して、Ｓｏｂｅｌフィルタを適用してエッジベクトルを求めている。この場合、４×４画素ブロックに対して１６個のエッジベクトルを求める必要があり、１つのエッジベクトルを求めるのに９画素を必要とする。また、４×４画素ブロック内の中央部の４画素以外は、エッジベクトルを求めるのに隣のブロックの画素を参照しなければならないという欠点がある。
【００４８】
そこで、本実施形態では、図８に示すように、４×４画素ブロックに対して１／２のダウン・サンプリングを行い、２×２画素を１ウインドウとして２×２ウインドウを生成する。この場合、２×２ウインドウのエッジベクトルは、（１）式および（２）式のようになる。
∂ｆ／∂ｘ＝（ｆ'i+1,j−ｆ'i,j）＋（ｆ'i+1,j+1−ｆ'i,j+1）    …（１）
∂ｆ／∂ｙ＝（ｆ'i,j+1−ｆ'i,j）＋（ｆ'i+1,j+1−ｆ'i+1,j）    …（２）
【００４９】
（１）式の絶対値と（２）式の絶対値を足し合わせて、最終的なエッジベクトルが求まる。
【００５０】
このように、本実施形態では、４×４画素ブロックに対して、一つのエッジベクトルだけを求めるだけでよい。また、エッジベクトルの計算には、４つのウインドウの値のみを必要とし、隣のブロックの画素を参照する必要がない。これにより、本実施形態によれば、特許文献２に比べて、簡易な演算でエッジベクトルを検出できる。
【００５１】
次に、４×４画素ブロックのエッジベクトルを用いた予測モードの決定手法について説明する。上述した特許文献２では、１６個のエッジベクトルそれぞれの強度を表すＡｍｐと方向角を算出し、ヒストグラムで予測モードを決定している。Ａｍｐや方向角を計算するのに、乗算、除算および三角関数などの演算を行わなければならず、計算が複雑になる。また、予測モードを決定するのに必ずヒストグラムを使用しなければならない。
【００５２】
これに対して、本実施形態では、上記（１）式と（２）式にて計算したエッジベクトルに基づいて、下記の（３）〜（１０）式を計算し、計算されたｅｒｒ0〜ｅｒｒ8に基づいて予測モードを決定する。
【数１】
2008167290.tif 000003
【００５３】
上記（３）〜（１０）式の係数Ｋ0〜Ｋ8（Ｋ2を除く）は、予測モードを決定するために定義された係数であり、Ｋ0＝８、Ｋ1＝０．１２５、Ｋ3＝１、Ｋ4＝１、Ｋ5＝２、Ｋ6＝０．５、Ｋ7＝２、Ｋ8＝０．５である。
【００５４】
予測モードの決定の仕方として、ＤＣモード（予測モード２）を選択する場合と、ｅｒｒ０〜ｅｒｒ８の中の最小値に対応する予測モードを選択する場合と、最小値に近い２つの値（例えば、予測モード５が最小値の場合、予測モード０と予測モード４を選択）に対応する２つの予測モードを選択する場合とがある。
【００５５】
このように、本実施形態による予測モードの決定手法によれば、乗算、除算および三角関数などの計算処理が不要であり、ヒストグラムを使用せずに予測モードを決定できることから、処理の簡略化が可能となる。
【００５６】
２）１６×１６画素ブロックの予測モード
１６×１６画素ブロックについては、まず４×４画素ブロックのエッジベクトルを利用してエッジを検出する。この場合、図９に示すように、１６個のゾーンに分割し、各ゾーンごとに近似的にエッジを検出する。ゾーン１，２，５，６については、∂ｆ／∂ｘ＝０として、∂ｆ／∂ｙの絶対値のみに近似する。また、ゾーン３，４，７，８については、∂ｆ／∂ｙ＝０として、∂ｆ／∂ｘの絶対値のみに近似する。
【００５７】
図９において、Ｋは予め定義された定数であり、例えばＫ＝８である。４×４画素ブロックの予測モードを決定する際に検出した１６個のエッジベクトルを図９の式に従って一つずつ処理し、垂直と水平の２方向に分けて積和演算にてベクトルの和を求める。これにより得られるベクトルを、１６×１６画素ブロックのエッジベクトルとする。
【００５８】
このように、本実施形態では、ベクトルの対称性を考慮に入れて、ベクトルの和を計算するため、少ない計算量でより正確なエッジベクトルを求めることができる。例えば、図９のベクトルＶ１，Ｖ２は同じエッジを表しているが、対称性を考えずにベクトルの和を計算すると、ベクトルＶ１，Ｖ２が互いに相殺されてエッジを正しく検出できなくなる。
【００５９】
１６×１６画素ブロックのエッジベクトルが求まると、次に、以下の（１１）式と（１２）式を計算してｅｒｒ0、ｅｒｒ1を求める。
ｅｒｒ0＝｜｜∂ｆ／∂ｘ｜−Ｋ0｜∂ｆ／∂ｙ｜｜    …（１１）
ｅｒｒ1＝｜｜∂ｆ／∂ｘ｜−Ｋ1｜∂ｆ／∂ｙ｜｜    …（１２）
ここで、例えば、Ｋ0＝８、Ｋ1＝０．１２５である。
【００６０】
４つの予測モードのうち、ＤＣモード（予測モード２）を選択する場合と、ｅｒｒ1とｅｒｒ2のどちらか小さい値に対応する予測モードを選択する場合と、プレーンを使わない予測モードを選択する場合とがある。
【００６１】
このように、第１の実施形態では、第１段階の処理（第１処理手段）として、ＭＰＥＧ−２で圧縮された第１ビットストリームについて映像の時間変化の特徴を解析し、マクロブロックごとに特徴に応じたタイプに分類する。そして、分類したタイプに応じて、マクロブロックごとにフレーム間予測モードとフレーム内予測モードのどちらを用いるかを決定する。
【００６２】
次に、第２段階の処理（第２処理手段）として、フレーム間予測モードが選択された場合、マクロブロックのタイプに応じて適切な参照フレームを選択する。フレーム内予測モードが選択された場合、着目マクロブロックとその周囲のマクロブロックに対応するＤＣ係数を用いて仮フレーム内予測を行って、１６×１６ブロックと４×４ブロックのいずれかを選択する。
【００６３】
次に第３段階の処理（第３処理手段）として、第１段階でフレーム間予測モードが選択された場合、動き補償の際に用いるブロックサイズを決定する。一方、第１段階でフレーム内予測モードが選択され、かつ第２段階で４×４画素ブロックが選択された場合、着目マクロブロックを１６個の４×４ブロックに分けて、画素値、ＤＣ係数またはＡＣ係数を用いて、各ブロックのエッジの方向を検出する。そして、検出したエッジの方向に基づいて各４×４ブロックの９個の予測モードの中からいずれかを決定する。第１段階でフレーム内予測モードが選択され、かつ第２段階で１６×１６画素ブロックが選択された場合、エッジの対称性を考慮して、検出したエッジを合成して１６×１６ブロックのエッジ方向を検出し、そのエッジ方向に応じて４個の予測モードの中からいずれかを検出する。
【００６４】
以上の処理により、第１の実施形態によれば、ＭＰＥＧ−２からＨ．２６４への変換処理を、画質を劣化させることなく、大幅に短い処理時間で行うことができる。
【００６５】
本発明者は、第１の実施形態について、処理時間と画質の評価をシミュレーションにて行った。シミュレーションで使用した映像は、以下の７つである。
【００６６】
１．Bus (CIF, 150 frms, IPPP…)
２．Coastguard (CIF, 150 frms, IPPP…)
３．Container (CIF, 150 frms, IPPP…)
４．Foreman (CIF, 150 frms, IPPP…)
５．Football (CIF, 150 frms, IPPP…)
６．Mobile (CIF, 150 frms, IPPP…)
７．Stefan (CIF, 150 frms, IPPP…)      
【００６７】
図１０は複数のフレームをＭＰＥＧ−２からＨ．２６４に変換するのに要した処理時間を示す図であり、プロットａは従来のＨ．２６４符号器の処理時間、プロットｂは上述した第１〜第３段階の処理Ｓ１〜Ｓ３を行う本実施形態による処理時間、プロットｃは第３段階Ｓ３だけを行った場合の処理時間を示している。図示のように、本実施形態は、従来のＨ．２６４符号器のわずか１６〜２０％の処理時間で処理を行うことができ、符号化処理全体の処理時間を２０％ほど減らすことができることがわかった。
【００６８】
図１１および図１２は互いに異なる映像についてのＲ−Ｄ（Rate Distortion）性能を示す図であり、これらの図においても、プロットａは従来のＨ．２６４符号器の処理時間、プロットｂは上述した第１〜第３段階の処理Ｓ１〜Ｓ３を行う本実施形態による処理時間、プロットｃは第３段階Ｓ３だけを行った場合の処理時間を示している。図１１と図１２からわかるように、本実施形態によれば、ビット・オーバーランが４％以下になり、ＰＳＮＲロスを０．０５ｄＢまで減らせることがわかった。
【００６９】
（第２の実施形態）
第２の実施形態は、輝度が徐々に明るくなるフェードイン、または輝度が徐々に暗くなるフェードアウトの判定処理を追加したことを特徴とする。
【００７０】
第２の実施形態では、図４に示す８種類のタイプに加えて、タイプFADE_ONを有する。FADE_ONは輝度が徐々に明るくなるフェードイン状態か、輝度が徐々に暗くなるフェードアウト状態を指すタイプである。
【００７１】
図１３はフェードインとフェードアウトの一例を示す図である。図１３の映像は、２つの前景を含んでおり、左側の前景は図１３（ａ）〜図１３（ｃ）にかけて徐々に輝度が減少するフェードアウトを起こし、右側の前景は図１３（ａ）〜図１３（ｃ）にかけて徐々に輝度が増加するフェードインを起こす例を示している。
【００７２】
図１４は本発明の第２の実施形態によるトランスコーダの概略構成を示すブロック図である。図１４では、図１と共通する構成部分には同一符号を付しており、以下では相違点を中心に説明する。
【００７３】
図１４のトランスコーダは、第２のＲＡＭ３に格納されたデコード画像を、Ｈ．２６４エンコーダ７だけでなく、特徴解析部５にも供給する点が図１と異なっている。特徴解析部５は、デコード画像を用いて着目マクロブロックの輝度の平均値を求め、求めた輝度の平均値を保持しておく。
【００７４】
第２の実施形態の特徴解析部５は、図３と同様の処理を行うが、図３のステップＳ１における映像の特徴解析処理が図６とは異なっている。
【００７５】
図１５は第２の実施形態における映像の特徴解析処理の処理動作を示すフローチャートである。図１５のフローチャートでは、図６の処理に加えて、ステップＳ４６，Ｓ４７，Ｓ５４，Ｓ５５，Ｓ５９，Ｓ６０を新たに設けている。
【００７６】
ステップＳ４４において、着目マクロブロックのタイプがNFLASH_STとNFLASH_ONのいずれでもないと判定された場合、タイプがFADE_ONか否かを判定する（ステップＳ４６）。判定が肯定されると、タイプをFADE_ONのままにし（ステップＳ４７）、判定が否定されると、タイプをCOMMONに設定する（ステップＳ４８）。上述したステップＳ４６はフェードイン・アウト検出手段に相当する。
【００７７】
ステップＳ５０において、輝度の増分が閾値ｔｈ以下と判定されると、輝度の変化の度合いを判定する（ステップＳ５４）。このステップＳ５４では、着目マクロブロックの輝度の平均値Ｌ０、第１の参照画像内の同位置のマクロブロックの輝度の平均値Ｌ１、第２の参照画像内の同位置のマクロブロックの輝度の平均値Ｌ２とするとき、α１＝Ｌ０／Ｌ１と、α２＝Ｌ０／Ｌ２とを計算する。着目マクロブロックに対応する画像内の隣接する複数のマクロブロックの間で、αｉ（ｉ＝１，２）の値が似通っていて、かつ、以下の（１３）式の関係を満たし、かつ、以下の３つの条件（ａ）〜（ｃ）のいずれかを満たすか否かを判定する。この判定が肯定されると、フェードインしていると判断する。
１＜ｔｈ１＜αｉ＜ｔｈ２  （ｉ＝１，２）    …（１３）
（ａ）フレーム内予測モードのマクロブロック
（ｂ）フレーム間予測モードのマクロブロックで、ほとんどの動きベクトルの値がほぼ０
（ｃ）フレーム間予測モードのマクロブロックで、動きベクトルのばらつきが予め定めた閾値より大きい
【００７８】
ステップＳ５４の判定が肯定された場合、着目マクロブロックのタイプをFADE_ONに設定し、判定が否定された場合、タイプをSCENE_CUTに設定する（ステップＳ５６）。タイプがFADE_ONのマクロブロックが存在する場合、２枚の参照画像からの暗黙の重み付き予測を行うために、第１および第２の参照画像を参照画像として使用するための情報を第２ビットストリームに追加する。この暗黙の重み付き予測は、ＭＰＥＧ−２にはないが、Ｈ．２６４で導入されたものであり、２枚の参照画像と現在画像の時間距離に応じて、これら２枚の参照画像からの内挿または外挿により、現在の画像に対する予測画像を生成する方式である。画像内の領域ごとに輝度の変化の仕方が異なっていても、適切な予測画像を生成できるという特徴がある。
【００７９】
ステップＳ５８において、輝度の減少分が閾値ｔｈより小さいと判定されると、αｉ（ｉ＝１，２）の値が似通っていて、かつ、以下の（１４）式の関係を満たし、かつ、上述した３つの条件（ａ）〜（ｃ）のいずれかを満たすか否かを判定する（ステップＳ５９）。判定が肯定されると、フェードアウトしていると判断し、タイプをFADE_ONに設定し（ステップＳ６０）、判定が否定されると、タイプをSCENE_CUTに設定する（ステップＳ５６）。
ｔｈ３＜αｉ＜ｔｈ４＜１  （ｉ＝１，２）    …（１４）
【００８０】
図１５に示す映像の特徴解析処理が終了すると、図３と同様の処理を行う。着目マクロブロックのタイプがFADE_ONであれば、ステップＳ５の処理を行う際、２枚の参照画像からの暗黙の重み付き予測をフレーム間予測のモードの候補に追加する。
【００８１】
また、ステップＳ９でタイプがFLASH_ENDか否かを判定するのに並行して、タイプがFADE_ONか否かを判定して、判定が肯定された場合には、２枚の画像からの暗黙の重み付き予測を選択する。
【００８２】
図１５の処理が終了すると、図１４の符号化モード選択制御部６は、タイプに応じてデコード画像をＨ．２６４エンコーダ７で符号化する際の予測モードを選択する。ここでは、第１の実施形態とは異なり、フェードインおよびフェードアウトしていることを指すタイプも考慮に入れて予測モードを選択する。
【００８３】
このように、第２の実施形態では、輝度が徐々に明るくなるフェードインと輝度が徐々に暗くなるフェードアウトを検出して、Ｈ．２６４への変換を行うため、第１の実施形態よりも演算量が増えるが、フェードインやフェードアウトを含む映像については圧縮率の向上が図れる。
【００８４】
上述した実施形態では、ＭＰＥＧ−２からＨ．２６４への変換を行う例を説明したが、本発明は、ＭＰＥＧ−４等の種々の圧縮形式間での変換にも適用でき、圧縮形式はＭＰＥＧ−２やＨ．２６４には限定されない。
【００８５】
図１や図１４のトランスコーダは、ハードウェアで構成してもソフトウェアで構成してもよい。
【図面の簡単な説明】
【００８６】
【図１】本発明の第１の実施形態によるトランスコーダの概略構成を示すブロック図。
【図２】映像が一時的に明るくなるフラッシュを起こす前後の映像の一例を示す図。
【図３】特徴解析部５の処理動作の一例を示すフローチャート。
【図４】映像の特徴を表す８種類のタイプを説明する図。
【図５】図３のステップＳ１における映像の特徴解析処理の処理動作を詳細に表すフローチャート。
【図６】１６×１６画素ブロックを用いた仮フレーム予測の処理内容を説明する図。
【図７】４×４画素ブロックを用いた仮フレーム予測の処理内容を説明する図。
【図８】４×４画素ブロックに対して１／２のダウン・サンプリングを行い、２×２画素を１ウインドウとして２×２ウインドウを生成する例を説明する図。
【図９】１６×１６画素ブロックのエッジ検出を説明する図。
【図１０】複数のフレームをＭＰＥＧ−２からＨ．２６４に変換するのに要した処理時間を示す図。
【図１１】Ｒ−Ｄ（Rate Distortion）性能を示す図。
【図１２】図１１とは異なる映像についてのＲ−Ｄ（Rate Distortion）性能を示す図。
【図１３】フェードインとフェードアウトの一例を示す図。
【図１４】本発明の第２の実施形態によるトランスコーダの概略構成を示すブロック図。
【図１５】第２の実施形態における映像の特徴解析処理の処理動作を示すフローチャート。
【符号の説明】
【００８７】
１  ＭＰＥＧ２デコーダ
２  第１のＲＡＭ
３  第２のＲＡＭ
４  第３のＲＡＭ
５  特徴解析部
６  符号化モード選択制御部
７  Ｈ．２６４エンコーダ
【図１】
2008167290.tif 000004
【図２】
2008167290.tif 000005
【図３】
2008167290.tif 000006
【図４】
2008167290.tif 000007
【図５】
2008167290.tif 000008
【図６】
2008167290.tif 000009
【図７】
2008167290.tif 000010
【図８】
2008167290.tif 000011
【図９】
2008167290.tif 000012
【図１０】
2008167290.tif 000013
【図１１】
2008167290.tif 000014
【図１２】
2008167290.tif 000015
【図１３】
2008167290.tif 000016
【図１４】
2008167290.tif 000017
【図１５】
2008167290.tif 000018