(57)【要約】【課題】デコード画像に対してサイズ変更が行われ、デコード時と再エンコード時のマクロブロックの境界が一致しない場合にも、余計な高周波成分を生じさせることがなく、圧縮率が低下しないトランスコーダの実現。【解決手段】第１の方式MPEG2でエンコードされた画像データをデコードしてデコード画像を出力するデコーダ2と、デコード画像データを、第２の方式H.264で再エンコードするエンコーダ6と、を備えるトランスコーダ1であって、デコード画像のサイズを変更するスケーラ11と、デコード画像内のデコーダのマクロブロックの境界であって、エンコーダのマクロブロックの境界と一致しない境界の近傍の画素について、高周波成分を低減するフィルタ処理を、サイズ変更の前または後で行うフィルタ11と、を備える。【選択図】図３
2009010586.tif 000002
【特許請求の範囲】
【請求項１】
第１の方式でエンコードされた画像データをデコードしてデコード画像を出力するデコーダと、
前記デコード画像データを、第２の方式で再エンコードするエンコーダと、を備えるトランスコーダであって、
前記デコード画像のサイズを変更するスケーラと、
前記デコード画像内の前記デコーダのマクロブロックの境界であって、前記エンコーダのマクロブロックの境界と一致しない境界の近傍の画素について、高周波成分を低減するフィルタ処理を、前記サイズ変更の前または後で行うフィルタと、を備えることを特徴とするトランスコーダ。
【請求項２】
前記フィルタは、横方向の１画素列の処理対象の画素の前後の複数の画素の画素値に所定の係数を乗じた値の和を算出して処理対象の画素の画素値とする横方向フィルタと、縦方向の１画素列の処理対象の画素の前後の複数の画素の画素値に所定の係数を乗じた値の和を算出して処理対象の画素の画素値とする縦方向フィルタと、を備え、
画面の縦方向の境界に対して前記横方向フィルタを、画面の横方向の境界に対して前記縦方向フィルタを、適用することを特徴とする請求項１に記載のトランスコーダ。
【請求項３】
前記フィルタは、境界の両側のそれぞれ２画素に対してフィルタ処理を行うことを特徴とする請求項２に記載のトランスコーダ。
【請求項４】
境界に近い画素と遠い画素で、前記横方向フィルタおよび前記縦方向フィルタの前記所定の係数を異ならせることを特徴とする請求項３に記載のトランスコーダ。
【請求項５】
第１の方式でエンコードされた画像データをデコードしてデコード画像を生成し、
前記デコード画像データを、第２の方式で再エンコードするトランスコード方法であって、
前記デコード画像のサイズを変更し、
前記デコード画像内の前記デコーダのマクロブロックの境界であって、前記再エンコードのマクロブロックの境界と一致しない境界の近傍の画素について、高周波成分を低減するフィルタ処理を、前記サイズ変更の前または後で行うことを特徴とするトランスコード方法。
【請求項６】
前記フィルタ処理は、横方向の１画素列の処理対象の画素の前後の複数の画素の画素値に所定の係数を乗じた値の和を算出して処理対象の画素の画素値とする横方向フィルタ処理と、縦方向の１画素列の処理対象の画素の前後の複数の画素の画素値に所定の係数を乗じた値の和を算出して処理対象の画素の画素値とする縦方向フィルタ処理と、を備え、
画面の縦方向の境界に対して前記横方向フィルタ処理を、画面の横方向の境界に対して前記縦方向フィルタ処理を、適用することを特徴とする請求項５に記載のトランスコード方法。
【請求項７】
前記フィルタ処理は、境界の両側のそれぞれ２画素に対して行うことを特徴とする請求項６に記載のトランスコード方法。
【請求項８】
境界に近い画素と遠い画素で、前記横方向フィルタ処理および前記縦方向フィルタ処理の前記所定の係数を異ならせることを特徴とする請求項７に記載のトランスコード方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ＢＳデジタル放送や、地上波デジタル放送など、アナログ放送からデジタル放送への移行が進められている。
【０００２】
本発明は、デジタル放送信号や記憶装置から読み出された符号化された映像データをデコードした後、再度エンコードするトランスコーダおよびトランスコード方法に関し、特に再エンコードする際の圧縮率をより向上する技術に関する。
【背景技術】
【０００３】
デジタル放送では、動画像圧縮フォーマットとして、ＭＰＥＧ２などの画像間の相関を利用した圧縮方式が用いられている。現在、これらのデジタル放送では、データは十数〜二十数Ｍｂｓで伝送されている。ＨＤＤレコーダなどの記憶装置は、デジタル放送信号のデジタルデータをそのまま記録するか、デジタル放送信号のデジタルデータを一旦デコードした後、デコードした画像をより高い圧縮率になるように再エンコード（トランスコード）して記録する、すなわち、元の画像ビットレートよりも低いビットレートでエンコードし直してデータ量を削減して記録する。データ量が減れば、同じ容量のＨＤＤレコーダであれば、記録時間が増えることになる。再エンコードする装置をトランスコーダと呼ぶ。
【０００４】
図１は、トランスコーダ１の構成を示す図である。図示のように、トランスコーダ１は、第１の方式でエンコードされた入力データストリームをデコードしてデコード画像を出力するデコーダ２と、デコーダ２から出力されたデコード画像の後処理を行う後処理部３と、デコード画像のサイズを変更するサイズ変更処理を行うスケーラ４と、サイズ変更処理の行われたデコード画像に対してエンコードするための前処理を行う前処理部５と、前処理が行われたデコード画像を再エンコードするエンコーダ６と、を有する。第１のコード化方式および第２のコード化方式は、それぞれどのような方式でもよいが、現在広く使用されているのは、第１のコード化方式がＭＰＥＧ２であり、第２のコード化方式がＨ．２６４などである。なお、第１および第２のコード化方式がともにＭＰＥＧ−２であり、より圧縮率が高くなるようにトランスコードする場合もある。サイズ変更を行わない場合には、スケーラ４の処理は行わない。デコード画像を表示する場合には、後処理部３の出力を表示出力として出力する。
【０００５】
入力データストリームは、例えば、デジタル放送信号やＨＤＤレコーダなどから読み出された信号である。出力データストリームは、例えばＨＤＤレコーダなどに記憶されたり、送信される。
【０００６】
図１のトランスコーダ１は、全体がＬＳＩ化されている場合も、デコーダ２とエンコーダ（トランスコーダ）３がそれぞれ別のＬＳＩで構成される場合や、ＤＲＡＭなどの一時記憶装置を付加する場合もある。
【０００７】
図１に示すように、トランスコードする際には、入力データストリームをデコードしたデコード画像に対して、画像サイズを変更（縮小）するなどしてデータ量を低減しており、これによりＨＤＤレコーダでの長時間録画が可能になる。
【０００８】
デコーダ２およびエンコーダ６における処理は、画面をマクロブロックに分けて、マクロブロックを単位として行われる。ＭＰＥＧ２およびＨ．２６４の場合、マクロブロックは１６×１６の２５６画素を有する。マクロブロック単位で処理が行われるために、隣接するマクロブロックとの境界に濃度差が生じる場合がある。例えば、画像ノードが緩やかに変化するグラデーション部分をエンコードした画像データをデコードして再生すると、マクロブロック単位で濃度が異なり、マクロブロックの境界が目立つ。
【０００９】
このような問題を解決するため、Ｈ．２６４方式では、エンコード処理の一環として、デブロッキング処理と呼ばれるマクロブロックの境界を目立たなくする処理が行われる。エンコーダ６がＨ．２６４エンコーダである場合には、予測画像用のローカルデコード処理で復号画像をフレームメモリに格納する工程があり、その工程の直前に適応的に、マクロブロックの境界に起因する高周波成分を低減するデブロッキングフィルタ処理を行う。なお、デブロッキングフィルタ処理は、１６×１６画素のマクロブロック境界と、４×４、８×８のブロック単位で行え、Ｈ．２６４メインプロファイル(Main Profile)では、１６×１６または４×４画素で、Ｈ．２６４ハイプロファイル(High Profile)では、１６×１６、８×８または４×４画素でデブロッキングフィルタ処理が行える。
【００１０】
トランスコーダについては、特許文献１から３などに記載されている。
【００１１】
特許文献１は、画像系列を含む１次符号化信号を２次符号化信号にトランスコードする方法を記載しており、低ビットレートアプリケーション向けに良好な画質を得るためにフィルタリングするステップをさらに備えたエンベッドフィルタによるトランスコード方法を記載している。
【００１２】
特許文献２は、動画像の符号化ストリームを復号して再符号化する時、復号部におけるループ内フィルタ処理直前の画像を出力して、その映像に対して、前段の符号化パラメータを完全継承したり、そのほとんどを継承しながら再符号化を行う動画像再符号化方法を記載している。
【００１３】
特許文献３は、入力画像制御回路が入力画像の画像構成の特性を判定し、この判定に基づき画像解像度変更回路が入力画像を所定の入力解像度となるようにフィルタ処理を行う画像符号化装置を記載している。
【００１４】
【特許文献１】特表２００４−５１２７８４号公報
【特許文献２】特開２００６−２３７７５９号公報
【特許文献３】特開２００４−２３６７０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
図２は、デコード画像を横（水平）方向に２／３のサイズに縮小するサイズ変更処理を説明する図である。図２の（Ａ）は、デコード画像におけるデコーダ２のマクロブロックＭＡ１−ＭＡ９を示す。マクロブロックＭＡ１−ＭＡ９は、１６×１６の２５６画素を含む。すなわち、デコーダ２では、マクロブロックＭＡ１−ＭＡ９単位で処理が行われ、デコード画像を生成される。図２の（Ｂ）は、デコード画像に対するエンコード６のマクロブロックＭＢ１−ＭＢ９を示す。マクロブロックＭＢ１−ＭＢ９も、１６×１６の２５６画素を含む。すなわち、エンコーダ６は、デコード画像に対してマクロブロックＭＢ１−ＭＢ９単位で処理を行う。図２の（Ｃ）は、デコード画像を縮小した場合のマクロブロックＭＡ１’−ＭＡ９’を示す。
【００１６】
トランスコード時にサイズ変更しない場合、すなわちスケーラ４がサイズ変更を行わない場合、図２の（Ａ）および（Ｂ）に示すように、デコーダ２のマクロブロックＭＡ１−ＭＡ９と、エンコーダ６のマクロブロックＭＢ１−ＭＢ９は一致するので、デコーダ２のマクロブロックＭＡ１−ＭＡ９の境界によるノイズ（ブロックノイズ）は、エンコーダ６でのマクロブロックマクロブロックＭＢ１−ＭＢ９単位の処理に影響しない。特に、エンコーダ６がＨ．２６４エンコーダである場合、エンコード処理の一環として上記のデブロッキング処理を行うので、ブロックノイズは影響しない。言い換えれば、エンコード処理単位のマクロブロックＭＢ１−ＭＢ９内に、境界に起因する余計な高周波成分は存在しない。
【００１７】
しかし、デコード画像が図２の（Ｃ）に示すように、横（水平）が２／３に縮小されるサイズ変更が行われると、マクロブロックＭＡ１−ＭＡ９はＭＡ１’−ＭＡ９’になり、縦（垂直）方向の境界の一部がマクロブロックマクロブロックＭＢ１−ＭＢ９の内部に存在することになる。図２の（Ｄ）は、エンコーダ６のマクロブロックＭＢ５に、デコーダのマクロブロックＭＡ５’とＭＡ６’の境界が存在する状態を示す。このため、ＭＡ５’とＭＡ６’の境界のブロックノイズが、エンコード処理単位のマクロブロックＭＢ５内に余計な高周波成分を生じさせる。ＭＢ５以外のマクロブロックにも同様に境界が存在し、余計な高周波成分を生じさせる。このような余計な高周波成分が存在すると、エンコード処理においてマクロブロック単位の圧縮処理に余計な情報量（データ量）を使用することなり、圧縮率が低下するという問題を発生する。
【００１８】
本発明は、デコード画像に対してサイズ変更が行われ、デコード時のマクロブロックの境界と、再エンコード時のマクロブロックの境界が一致しない場合にも、余計な高周波成分を生じさせることがなく、圧縮率が低下しないトランスコーダの実現を目的とする。
【課題を解決するための手段】
【００１９】
上記目的を実現するため、本発明のトランスコーダは、デコード画像において、デコーダのマクロブロックの境界であって、エンコーダのマクロブロックの境界と一致しない境界の近傍の画素について、高周波成分を低減するフィルタ処理を、前記サイズ変更の前または後で行うフィルタと、を備えることを特徴とする。
本発明によれば、デコーダのマクロブロックの境界であって、エンコーダのマクロブロックの境界と一致しない境界、すなわちエンコード処理のマクロブロック内で余計な高周波成分を生じさせる境界の近傍の画素に対して余計な高周波成分を低減するフィルタ処理を行うので、圧縮率が低下することがなくなる。
【００２０】
フィルタは、横方向の１画素列の処理対象の画素の前後の複数の画素の画素値に所定の係数を乗じた値の和を算出して処理対象の画素の画素値とする横方向フィルタと、縦方向の１画素列の処理対象の画素の前後の複数の画素の画素値に所定の係数を乗じた値の和を算出して処理対象の画素の画素値とする縦方向フィルタと、を備え、画面の縦方向の境界に対して横方向フィルタを、画面の横方向の境界に対して縦方向フィルタを、適用する。
【００２１】
フィルタは、境界の近傍の画素、例えば境界の両側のそれぞれ２画素に対してフィルタ処理を行う。
【００２２】
上記のようなフィルタを用いる場合、境界に近い画素と遠い画素で、横方向フィルタおよび前記縦方向フィルタの前記所定の係数を異ならせる。
【発明の効果】
【００２３】
本発明によれば、デコード画像に対してサイズ変更が行われ、デコード時のマクロブロックの境界と、再エンコード時のマクロブロックの境界が一致しなくなった場合でも、一致しない境界による余計な高周波成分がフィルタ処理により低減されるので、トランスコードの圧縮率を向上することができる。
【発明を実施するための最良の形態】
【００２４】
図３は、本発明の実施例のトランスコーダ１の構成を示す図である。図１と比較して明らかなように、実施例のトランスコーダ１は、従来のトランスコーダのスケーラ４の代わりにフィルタ処理機能を付加したスケーラ／フィルタ１１を設けた点が異なり、他の部分は図１の従来例と同じである。なお、本実施例では、入力データストリームはＭＰＥＧ２データであり、デコーダ２はＭＰＥＧ２デコーダであり、エンコーダ６はＨ．２６４エンコーダであるとする。
【００２５】
スケーラ／フィルタ１１は、サイズ変更処理を行う従来のスケーラ機能に加えて、デコード時のマクロブロックの境界と、再エンコード時のマクロブロックの境界が一致しなくなる境界についてブロックノイズを低減するフィルタ機能を有する。フィルタ機能は、横（水平）方向フィルタおよび縦（垂直）方向フィルタで構成される。
【００２６】
図４の（Ａ）および（Ｂ）は、横方向フィルタの説明図である。図４の（Ａ）に示すように、横方向フィルタは、横方向の１画素列の複数の画素（ここでは対象画素を含めて５画素）の画素値に対する演算を行うフィルタである。図４の（Ｂ）に示すように、横（水平）方向の画素列の中の画素ｋが処理対象であり、横方向の画素列の中の画素ｋ−２，ｋ−１，ｋ，ｋ＋１，ｋ＋２の画素値に対して、フィルタ係数ｉ−２，ｉ−１，ｉ，ｉ＋１，ｉ＋２をそれぞれ乗じた値の和を算出して処理対象の画素の画素値とする。すなわち、対象画素の画素値Ｐｋ＝（ｉ−２）×Ｐ（ｋ−２）＋（ｉ−１）×Ｐ（ｋ−１）＋ｉ×Ｐ（ｋ）＋（ｉ＋１）×Ｐ（ｋ＋１）＋（ｉ＋２）×Ｐ（ｋ＋２）が表される。なお、各フィルタ係数は小数であり、（ｉ−２）＋（ｉ−１）＋ｉ＋（ｉ＋１）＋（ｉ＋２）＝１が成り立つように設定する。
【００２７】
フィルタ係数ｉ−２，ｉ−１，ｉ，ｉ＋１，ｉ＋２は、図４の（Ａ）に示すように、ＡパターンまたはＢパターンに切り換え可能である。パターンＡおよびＢは、左右対称であり、中心の値（係数ｉ）が大きく、周辺になるに従って値小さくなる。パターンＡは、パターンＢに比べて、中心（係数ｉ）と周辺の係数比が大きく、中心の係数は非常に大きいが周辺になるに従って係数が急激に小さくなる。これに対して、パターンＢは、パターンＡに比べて中心（係数ｉ）と周辺の係数比が小さい。
【００２８】
縦（垂直）方向フィルタは、横方法フィルタを９０度回転させた構成を有する。すなわち、縦方向フィルタは、縦方向であるという点を除けば、横方法フィルタと同じ構成を有する。
【００２９】
図５は、フィルタ演算を適用する位置を説明する図である。図５において、縦方向のライン２１が、デコード画像におけるデコード時のマクロブロックの境界で、再エンコード時のマクロブロックの境界が一致しなくなる境界であるとする。本実施例では、この境界の両側２画素ずつ合計４画素に対して図４の横方向フィルタによるフィルタ処理を行う。図５に示すように、上記の境界に直接隣接する画素に対しては、図４の横方向フィルタでパターンＢの係数のフィルタによるフィルタ処理を行い、それらの画素に隣接する画素に対しては、図４の横方向フィルタでパターンＡの係数のフィルタによるフィルタ処理を行う。図５では、パターンＢが適用される画素をＢで、パターンＡが適用される画素をＡで、フィルタ処理が適用されない画素を×で示した。
【００３０】
上記の境界の左側のＢで示す画素に横方向フィルタによるフィルタ処理を行う場合、そのＢの画素を対象画素としてその画素値に係数ｉを、左側のＡの画素の画素値に係数ｉ−１を、さらに左側の×の画素の画素値に係数ｉ−２を、対象画素の右左側のＢの画素の画素値に係数ｉ＋１を、さらに右側のＡの画素の画素値に係数ｉ＋２を、それぞれ乗じた和を、対象画素の画素値とする。
【００３１】
縦方向フィルタの場合は、デコード画像におけるデコード時のマクロブロックの縦方向の境界で、再エンコード時のマクロブロックの境界が一致しなくなる境界に対して、図５と同様の方法で適用される。
【００３２】
フィルタ処理は、デコード画像をサイズ変更する前に行っても、サイズ変更した後に行ってもよい。
【００３３】
図６は、図２に示したデコード画像を横（水平）方向に２／３のサイズに縮小するサイズ変更処理を行う場合に、本発明を適用した実施例を示す。図６に示すように、デコード画像におけるデコード時のマクロブロックＭＡ１−ＭＡ９の境界のうちＲで示す境界は、横（水平）方向に２／３のサイズに縮小することにより、図示のように、再エンコード時のマクロブロックＭＢ１−ＭＢ９の境界と一致しなくなる。ただし、Ｓで示す横（水平）方向の境界や左端の縦の境界は一致する。
【００３４】
フィルタ処理をサイズ変更の前に行う場合には、上側の図で、Ｒで示す縦方向の境界について、図４および図５で説明した上記のフィルタ処理を行う。１６×１６のマクロブロックの場合、横方向の境界の画素が１６の倍数なので、横方向の画素番号ｊ＝１６ｎ−１，１６ｎ＋２（マクロブロック番号ｎ＝１，２，…，ｎ−１）の画素に対してパターンＡのフィルタ処理を行い、横方向の画素番号ｊ＝１６ｎ，１６ｎ＋１（マクロブロック番号ｎ＝１，２，…，ｎ−１）の画素に対してパターンＢのフィルタ処理を行い、他の画素に対してはフィルタ処理を行わない。
【００３５】
フィルタ処理をサイズ変更の後に行う場合には、下側の図で、Ｒ’で示す破線で示した縦方向の境界について、図４および図５で説明した上記のフィルタ処理を行う。図６では、マクロブロックの横方向の境界は、左側の境界で一致し、１１番目の画素、２２番目の画素内に存在するので、この画素を含む４画素に上記のフィルタ処理を適用する。例えば、マクロブロックの境界が存在する画素で、境界が画素の中心より左側にある場合には、その画素を図５の境界の右側にある画素とし、マクロブロックの境界が画素の中心より右側にある場合には、その画素を図５の境界の左側にある画素として図４のフィルタを適用する。従って、２／３のサイズに縮小する場合には、１１番目の画素は、図５の境界の右側にある画素とされ、２２番目の画素は図５の境界の左側にある画素とされる。以下、縮小された画像で、３２画素毎にこれが繰り返される。
【００３６】
図７は、デコード画像を縦（垂直）方向に２／３のサイズに縮小するサイズ変更処理を行う場合に、本発明を適用した実施例を示す。図７に示すように、デコード画像におけるデコード時のマクロブロックＭＡ１−ＭＡ９の境界のうちＲで示す境界は、縦（垂直）方向に２／３のサイズに縮小することにより、図示のように、再エンコード時のマクロブロックＭＢ１−ＭＢ９の境界と一致しなくなる。ただし、Ｓで示す縦’垂直）方向の境界や上端の縦の境界は一致する。
【００３７】
フィルタ処理をサイズ変更の前に行う場合には、左側の図で、Ｒで示す縦方向の境界について、図４および図５で説明したフィルタ処理を９０度回転させた方向で行う縦（垂直）方向フィルタによりフィルタ処理を行う。縦方向の画素番号ｋ＝１６ｎ−１，１６ｎ＋２（マクロブロック番号ｎ＝１，２，…，ｎ−１）の画素に対してパターンＡのフィルタ処理を行い、画素番号ｋ＝１６ｎ，１６ｎ＋１（マクロブロック番号ｎ＝１，２，…，ｎ−１）の画素に対してパターンＢのフィルタ処理を行い、他の画素に対してはフィルタ処理を行わない。
【００３８】
フィルタ処理をサイズ変更の後に行う場合には、右側の図で、Ｒ’で示す破線で示した縦方向の境界について、図７で説明した上記のフィルタ処理を行う。
【００３９】
図８は、デコード画像を横（水平）方向と縦（垂直）方向の両方向に２／３のサイズに縮小するサイズ変更処理を行う場合に、本発明を適用した実施例を示す。図８に示すように、デコード画像におけるデコード時のマクロブロックＭＡ１−ＭＡ９の境界は左側および右側と上側及び下側の端のＳで示す境界以外、再エンコード時のマクロブロックＭＢ１−ＭＢ９の境界と一致しなくなる。一致しない境界のうち、縦（垂直）方向の境界について横（水平）方向フィルタを、横（水平）方向の境界について縦（垂直）方向フィルタを、それぞれ適用する。コーナー部の画素については、一方のフィルタ処理が終了した後、他方のフィルタ処理を行う。図８の例は図６および図７の例を合わせたものであるので、これ以上の説明は省略する。
【００４０】
以上、本発明の実施例を説明したが、デコード処理、エンコード処理、前処理、後処理およびサイズ変更処理などは公知の処理がそのまま適用される。例えば、実施例ではデコーダ画像を２／３に縮小する例を説明したが、他のサイズに変更する公知の処理を適用することも可能であるのはいうまでもない。
なお、３／４のサイズ変更の場合には、サイズ変更に伴いマクロブロック内に生じるエッジに対して４×４のデブロッキングフィルタが有効であるが、８×８のデブロッキングフィルタ処理は効果がなく、符号化効率を上げることができない。
【産業上の利用可能性】
【００４１】
本発明は、符号化された画像データを一旦デコードした後、再エンコードする構成であれば適用可能である。
【図面の簡単な説明】
【００４２】
【図１】従来例のトランスコーダの構成を示す図である。
【図２】サイズ変更処理を説明する図である。
【図３】実施例のトランスコーダの構成を示す図である。
【図４】実施例の横（水平）方向フィルタおよびフィルタ処理を説明する図である。
【図５】実施例におけるフィルタの適用位置を説明する図である。
【図６】横（水平）方向サイズ変更の場合の処理を説明する図である。
【図７】縦（垂直）方向サイズ変更の場合の処理を説明する図である。
【図８】横（水平）方向および縦（垂直）方向の両方向のサイズ変更の場合の処理を説明する図である。
【符号の説明】
【００４３】
１    トランスコーダ
２    デコーダ
３    後処理部
４    スケーラ
５    前処理部
６    エンコーダ
１１    スケーラ／フィルタ
【図１】
2009010586.tif 000003
【図２】
2009010586.tif 000004
【図３】
2009010586.tif 000005
【図４】
2009010586.tif 000006
【図５】
2009010586.tif 000007
【図６】
2009010586.tif 000008
【図７】
2009010586.tif 000009
【図８】
2009010586.tif 000010