(57)【要約】【課題】再エンコード（トランスコード）前のデコード画像にエラーが発生してもエラーの影響が低減されるトランスコード装置の実現。【解決手段】第１の方式で符号化された画像データをデコードするデコーダ2と、デコーダから供給される画像データを、第２の方式で再エンコードするトランスコーダ3と、を備えるトランスコード装置であって、デコーダ2は、デコード時にデコードエラー量を算出して出力し、トランスコーダ3は、デコードエラー量および再エンコード時の情報に基づいて、再符号化した画像データをそのまま出力するか、スキップデータに置き換えて出力する。【選択図】図２
2008312013.tif 000002
【特許請求の範囲】
【請求項１】
第１の方式で符号化された画像データをデコードするデコーダと、
前記デコーダから供給される画像データを、第２の方式で再エンコードするトランスコーダと、を備えるトランスコード装置であって、
前記デコーダは、デコード時にデコードエラー量を算出して出力し、
前記トランスコーダは、前記デコードエラー量および再エンコード時の情報に基づいて、再符号化した画像データをそのまま出力するか、スキップデータに置き換えて出力することを特徴とするトランスコード装置。
【請求項２】
前記デコーダは、前記第１の方式で符号化された画像データをデコードした画像のエラーマクロブロック数に第１の係数を乗じた値と、参照画のエラー量に第２の係数を乗じた値の和をエラー量として算出することを特徴とする請求項１に記載のトランスコード装置。
【請求項３】
前記トランスコーダは、
デコーダから供給される画像データを、目標データ量以下になるように再エンコードすると共に、再エンコードした画像データのデータ量を算出して前記目標データ量と共に出力するエンコード回路と、
前記デコードエラー量、前記目標データ量および前記再エンコードした画像データのデータ量に基づいて、再符号化した画像データをそのまま出力するか、記憶してあるスキップデータに置き換えて出力するかを判定する判定回路と、を備えることを特徴とする請求項１に記載のトランスコード装置。
【請求項４】
前記判定回路は、前記目標データ量と前記再エンコードした画像データのデータ量との差が第１の閾値より大きく、かつ前記デコードエラー量が第２の閾値より大きい場合に、前記スキップデータに置き換えて出力することを判定することを特徴とする請求項３に記載のトランスコード装置。
【請求項５】
前記トランスコーダは、前記デコーダから供給される画像データを、リアルタイムで再エンコードすることを特徴とする請求項１から４のいずれか１項に記載のトランスコード装置。
【請求項６】
デコーダから供給される画像データを、再エンコードするトランスコーダであって、
デコーダから供給される画像データを、目標データ量以下になるように再エンコードすると共に、再エンコードした画像データのデータ量を算出して前記目標データ量と共に出力するエンコード回路と、
前記デコードエラー量、前記目標データ量および前記再エンコードした画像データのデータ量に基づいて、再エンコードした画像データをそのまま出力するか、記憶してあるスキップデータに置き換えて出力するかを判定する判定回路と、を備えることを特徴とするトランスコーダ。
【請求項７】
前記判定回路は、前記目標データ量と前記再エンコードした映像データのデータ量との差が第１の閾値より大きく、かつ前記デコードエラー量が第２の閾値より大きい場合に、前記スキップデータに置き換えて出力することを判定することを特徴とする請求項６に記載のトランスコーダ。
【請求項８】
符号化された画像データをデコードするデコード回路と、
デコード時にデコードエラー量を算出して出力するエラー量算出回路と、を備えることを特徴とするデコーダ。
【請求項９】
前記エラー量算出回路は、前記符号化された画像データをデコードした画像のエラーマクロブロック数に第１の係数を乗じた値と、参照画のエラー量に第２の係数を乗じた値の和をエラー量として算出することを特徴とする請求項８に記載のデコーダ。
【請求項１０】
第１の方式で符号化された画像データをデコードし、
デコード時にデコードエラー量を算出し、
デコードした画像データを、第２の方式で再エンコードし、
前記デコードエラー量および再エンコード時の情報に基づいて、再符号化した画像データをそのまま出力するか、スキップデータに置き換えて出力するかを判定する、
ことを特徴とするトランスコード方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ＢＳデジタル放送や、地上波デジタル放送など、アナログ放送からデジタル放送への移行が進められている。
【０００２】
本発明は、デジタル放送信号や記憶装置から読み出された符号化された映像データをデコードした後、再度エンコードするトランスコーダ装置、再エンコーダ（トランスコーダ）、デコーダおよびトランスコード方法に関し、特にデコードした画像に含まれるエラーの影響を低減する再エンコード（トランスコード）技術に関する。
【背景技術】
【０００３】
デジタル放送では、動画像圧縮フォーマットとして、ＭＰＥＧ−２などの画像間の相関を利用した圧縮方式が用いられている。現在、これらのデジタル放送では、データは十数〜二十数Ｍｂｓで伝送されている。ＨＤＤレコーダなどの記憶装置は、デジタル放送信号のデジタルデータをそのまま記録するか、デジタル放送信号のデジタルデータを一旦デコードした後、より高い圧縮率になるようにデコードした画像を再エンコード（トランスコード）して記録する、すなわち、元の画像ビットレートよりも低いビットレートでエンコードし直してデータ量を削減して記録する。データ量が減れば、同じ容量のＨＤＤレコーダであれば、記録時間が増えることになる。
【０００４】
図１は、このようなトランスコード装置１の構成を示す図である。図示のように、トランスコード装置１は、第１の方式でコード化された入力データストリームを受けてデコードするデコーダ２と、デコーダ２でデコードされたデータを第２の方式で再エンコード（トランスコード）して出力データストリームを出力するエンコーダ（トランスコーダ）３と、を有する。第１のコード化方式および第２のコード化方式は、それぞれどのような方式でもよいが、現在広く使用されているのは、第１のコード化方式がＭＰＥＧ−２であり、第２のコード化方式がＨ．２６４などである。なお、第１および第２のコード化方式がともにＭＰＥＧ−２であり、より圧縮率が高くなるようにトランスコードする場合もある。
【０００５】
図１のトランスコード装置１は、全体がＬＳＩ化されている場合も、デコーダ２とエンコーダ（トランスコーダ）３がそれぞれ別のＬＳＩで構成される場合や、ＤＲＡＭなどの一次記憶装置を付加する場合もある。
【０００６】
データ量が減れば、その分画像的には劣化することは避けられないが、デコードした画像を再エンコードする前に、画面サイズを縮小したり、フィルタ処理で画像のエッジを鈍らせるなどの加工を施すことで、なるべく劣化を目立たなくさせる工夫が行われる。いずれにしても画像の劣化と記録時間は、トレードオフの関係にある。
【０００７】
トランスコード装置については、特許文献１から３などに記載されている。
【０００８】
特許文献１は、受信した定ビットレートのビデオストリームを可変ビットストリームにトランスコードする装置を記載しており、エラー隠蔽することを記載している。
【０００９】
特許文献２は、デコーダ監視、トランスコーダ制御およびエンコーダ制御よりなるトランスコーダ制御部が、バッファの符号量と単位ブロック数当たりの演算量に応じて、レート制御部と動き保証予測部の演算量を、バッファの符号量および全体の演算量が一定となるように制御することを記載している。
【００１０】
特許文献３は、ＶＯＰ（ビデオ・オブジェクト・プレーン）の目標符号量を算出するＶＯＰ目標符号量算出部をもち、ＭＰＥＧ−４画像情報符号化部（Ｉ／Ｐ−ＶＯＰ）は、画像情報をＭＰＲＧ−４画像圧縮情報（ビットストリーム）に符号化する際に、目標符号量に応じて符号量制御を行うことを記載している。
【００１１】
【特許文献１】特表平８−５１９３１号公報
【特許文献２】特開２００２−１２０２６１号公報
【特許文献３】特開２００２−２７４６５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上記のように、再エンコード処理では、ＭＰＥＧ−２や、それよりさらに圧縮率の高いＨ．２６４（ＭＰＥＧ−４／ＡＶＣ）方式などが使用されるが、いずれも自然画では画像間や画像内画素相互の相関が高いことを利用して、高い圧縮率を実現している。再エンコード時も含めて、一般に画像のエンコード処理では、参照画が決められ、それとの差異をデータ化しており、画像データをデコードする場合には、参照画を基準としてデコード処理を行う。
【００１３】
放送波では、通信エラーなどにより、データ化けが発生することは避けられない。この場合、エラーが発生したデータが属する画像が劣化するのはもちろんとして、その画像が他の画像の参照画になっていた場合、他の画像にも劣化が伝播する。通常は、このエラーが伝播し続けるのを防止するため、Ｉ−ｐｉｃ（画面内予測）が定期的に挿入されるが、いずれにしてもある程度の時間、エラーにより劣化した画像をなる。
【００１４】
再生された映像の通常の視聴であれば、エラーによる画像の劣化があっても、見た目の見苦しさ以外には特に問題を生じないが、トランスコード処理では大きな問題になる。
【００１５】
エラーによる画像の劣化は、データストリーム上のエラー箇所やエラー量、デコーダ回路の実装方法などに依存するが、ほとんどの場合自然画像には存在しない極めて異質な画像となる。
【００１６】
このため、エラーによる画像の劣化が発生すると、画素間の相関や画像間の相関がないばかりでなく、エッジが目立った、自然画ではあり得ないような人工的な画像をなる。このため、この劣化した画像をＭＰＥＧ−２やＨ．２６４（ＭＰＥＧ−４／ＡＶＣ）方式で再エンコードしようとすると、通常の自然画で想定しているような画素の相関や画面間の相関が期待できず、また滑らかな画像変化ではないエッジが目立った画像をなるため、圧縮効果が発揮できず、圧縮率が大きく悪化することになる。場合によっては、元のデータストリームよりもデータ量が増加してしまうという事態になる。
【００１７】
さらに、多少のエラーでそれなりに視聴可能な画像ならまだ圧縮効果が期待できるが、エラーが多くて視聴の価値がないような画像ほど、圧縮効果が下がることになるが、このような視聴の際にはほとんど意味がないエラー画像ほど無駄なデータ量を消費してしまうため、本来視聴の際に重視すべきエラーのないもしくはエラーの少ない画像の再エンコードに使用されるべきデータ量も圧迫されるため、全体としてのトランスコード画像の画質が著しく悪化することになる。
【００１８】
本発明は、このような問題を解決するもので、再エンコード（トランスコード）前のデコード画像にエラーが発生してもエラーの影響が低減されるトランスコード装置、再エンコーダ（トランスコーダ）、デコーダおよびトランスコード方法の実現を目的とする。
【課題を解決するための手段】
【００１９】
上記目的を実現するため、本発明では、デコードされた画像のエラー量を算出し、エラー量に応じてエラー画像を再エンコード（トランスコード）の対象から除外することを特徴とする。これにより、エラー画像に無駄なデータ量が使用されるのを回避する。
【００２０】
ただし、単純にエラーがあったものをすべて除外すると、軽微なエラーも除外され、逆に見苦しくなるので、そのような事態を避けるために、一旦再エンコードした後、除外すべきか判定し、除外すべきと判定した時にはスキップデータに置き換える。
【００２１】
スキップデータは、その画像より前の参照画増を１００％コピーすることを指示するデータであり、データ量は非常に小さい。
【００２２】
エラー量は、デコードした画像のエラーマクロブロック数およびデコードする際に使用する参照画のエラー量（エラーマクロブロック数）の両方を考慮して算出する。
【００２３】
除外すべきかの判定は、デコードエラー量、再エンコード処理時の目標データ量および再エンコードした画像データのデータ量に基づいて行い、具体的には、目標データ量と再エンコードした画像データのデータ量との差が第１の閾値より大きく、かつデコードエラー量が第２の閾値より大きい場合に、スキップデータに置き換えることを判定する。
【００２４】
なお、本発明では、再エンコード（トランスコード）は、デコーダから供給される画像データに対してリアルタイムで行われる。
【発明の効果】
【００２５】
本発明によれば、エラーにより劣化した画像の再現のために、無駄なデータ量を消費することがなくなるため、従来の再エンコード（トランスコード）処理に比べて、再エンコードによる全体の画質の低下を回避できる。
【発明を実施するための最良の形態】
【００２６】
図２は、本発明の実施例のトランスコーダ装置の構成を示す図である。図示のように、実施例のトランスコーダ装置は、デコーダ２と、再エンコーダ（トランスコーダ）３と、フレームメモリ４と、を有する。実施例のトランスコーダ装置では、再エンコーダ（トランスコーダ）３がデコーダ２から出力されたデコード画像をリアルタイムで再エンコード（トランスコード）する。
【００２７】
デコーダ２および再エンコーダ（トランスコーダ）３は、それぞれＬＳＩで実現され、フレームメモリ４はＤＲＡＭで実現される。しかし、デコーダ２および再エンコーダ（トランスコーダ）３を１個のＬＳＩで実現することも、さらにフレームメモリ４を構成するＤＲＡＭも合わせて１個のＬＳＩで実現することも可能である。
【００２８】
デコーダ２は、第１の方式でエンコードされた入力データストリームを受けて、デコード画像を生成し、フレームメモリ４のデコード画像記憶部４１Ａ−４１Ｎに出力するデコード回路２１と、デコード回路２１におけるデコード時のエラー量を算出して、デコード画像と対応させてフレームメモリ４のエラー量記憶部４２Ａ−４２Ｎに出力するエラー量算出回路２２と、を有する。
【００２９】
再エンコーダ（トランスコーダ）３は、目標データ量に応じてデコード画像を再エンコーダ（トランスコーダ）し、目標データ量および実際のデータ量と共に出力するエンコード回路３１と、デコード画像に対応したエラー量、エンコード回路３１からの目標データ量および実際のデータ量に基づいて、エンコード回路３１が生成した画像（ストリーム）を使用するか、スキップデータに置き換えるかを判定する判定回路３２と、スキップデータを生成するスキップデータ生成部３３と、判定回路３２の判定結果に基づいてエンコード回路３１が出力する画像（ストリーム）とスキップデータ生成部３３の出力するスキップデータのいずれかを選択して出力データストリームとして出力するストリーム選択回路３４と、を有する。
【００３０】
フレームメモリ４は、デコード画像記憶部４１Ａ−４１Ｎと、エラー量記憶部４２Ａ−４２Ｎと、参照画を記憶するスキップデータ記憶部４３と、を有し、デコード画像記憶部４１Ａ−４１Ｎおよびエラー量記憶部４２Ａ−４２Ｎの対応する組は、デコード画像とエラー量の対応する組をそれぞれ記憶する。
【００３１】
通常、ＭＰＥＧ−２方式やＨ．２６４方式では、Ｉ−ｐｉｃ，Ｐ−ｐｉｃ，Ｂ−ｐｉｃなどのエンコード処理的に異なるストリームがあり、望ましいスキップデータも異なる。そこで、スキップデータ生成部３３は、これらの条件に応じて適切なスキップデータを生成することが望ましい。本実施例では、フレームメモリ４のスキップデータ記憶部４３に、あらかじめ各データタイプに応じたスキップデータを用意してあり、スキップデータ生成部３３がこれを読み出してストリーム選択回路３４に出力するように構成している。なお、スキップデータとは、それより前の参照画を１００％コピーすることを指示するデータである。
【００３２】
次に、エラー量算出回路２２におけるエラー量算出処理について、図３を参照して説明する。
【００３３】
前述のように、一般に画像のエンコード処理では、参照画が決められ、それとの差異をデータ化しており、画像データをデコードする場合には、参照画を基準としてデコード処理を行う。エラー量の算出は、入力ストリームをデコードした際のエラーマクロブロック数ならびにデコードする際に使用する参照画のエラー量の両方を加味して行う。
【００３４】
エラーマクロブロック数は、ＭＰＥＧ−２やＨ．２６４の入力ストリームをデコードした際に、ＭＰＥＧ−２やＨ．２６４の規格で定められるシンタックス上のツジツマが合わなくなった場合に、そのマクロブロックにエラーがあったものとみなす。さらに、一度エラーと判定した場合は、スライスヘッダと呼ばれる同期コードなど、エラーから復帰できるマクロブロックまでのマクロブロックは、すべてエラーとしてカウントする。
【００３５】
なお、エラーの生じ方によっては、シンタックス上のツジツマがたまたま合ってしまう場合もあり、そのような場合にはエラーを見落としてしまう可能性があるが、ＭＰＥＧ−２やＨ．２６４などの可変長の符号化方式では、さいごまでツジツマがあうことは稀である。また、本実施例では、完全に正確なエラー量で判定する必要はないため、このレベルのエラーであれば判定における問題を生じない。
【００３６】
以上のようにして、エラーマクロブロック数を算出する。
【００３７】
なお、全マクロブロック数から、正常にデコードできたとみなせるマクロブロック数を減算するという形で、エラーマクロブロック数を算出することも可能である。
【００３８】
エラーマクロブロック数を算出したら、これをエラー量に変換するための係数Ａと、参照画のエラー量を変換するための係数Ｂを使用して、図３のエラー量算出処理フローに従って、エラー量を算出する。
【００３９】
ステップ１０１では、デコード時のエラーマクロブロック（ＭＢ）数が０より大きいかを判定し、０であればステップ１０２に進み、０より大きければステップ１０３に進む。
【００４０】
ステップ１０２では、参照画のエラー量が０より大きいかを判定し、０であればステップ１０４に進み、０より大きければステップ１０５に進む。
【００４１】
ステップ１０４では、エラー量＝０とする。
【００４２】
ステップ１０５では、エラー量＝係数Ｂ×（参照画のエラー量）とする。
【００４３】
ステップ１０３では、参照画のエラー量が０より大きいかを判定し、０であればステップ１０６に進み、０より大きければステップ１０７に進む。
【００４４】
ステップ１０６では、エラー量＝係数Ａ×エラーマクロブロック（ＭＢ）数とする。
【００４５】
ステップ１０７では、エラー量＝係数Ａ×エラーマクロブロック（ＭＢ）数＋係数Ｂ×（参照画のエラー量）とする。
【００４６】
係数ＡおよびＢは、画面のエラーによる劣化を数値化するために便宜的に設けた係数であり、値については実際の処理内容に応じて適宜設定する。
【００４７】
また、本実施例では、単純な線形式であるが、人間の視覚特性はかならずしも線形とはいえないので、非線形の式を使用してもよい。
【００４８】
いずれにしても、デコード画像のエラー量を何らかの形で数値化できればよい。
【００４９】
図４は、判定回路３２における判定処理フローを示す。
【００５０】
エンコード回路３１は、デコード画像を目標データ量以下になるようにエンコードし、エンコードした実際のデータ量を、目標データ量と共に、判定回路３２に出力する。
【００５１】
判定回路３２は、ステップ２０１で、目標データ量と実際のデータ量の差の絶対値があらかじめ決められている閾値Ｃより大きいかを判定し、閾値Ｃより大きければステップ２０２に進み、そうでなければステップ２０４に進む。
【００５２】
ステップ２０２では、図３の処理で算出されたエラー量があらかじめ決められている閾値Ｄより大きいかを判定し、閾値Ｃより大きければステップ２０３に進み、そうでなければステップ２０４に進む。
【００５３】
ステップ２０３では、ストリーム選択回路がステップデータを選択して出力データストリームとして出力するように切り換え、ステップ２０４では、ストリーム選択回路がデコード画像を再エンコードした画像をそのまま出力データストリームとして出力するように切り換える。
【００５４】
スキップデータに置き換えられたストリームをデコードすると、映像が一瞬止まったり逆戻りして見えるため不自然な画像となるが、スキップデータは単に前の参照画を１００％コピーすることを指示するデータであり、データ量は非常に少なく、エラーにより劣化した画像を再現するために無駄なデータ量を消費するよりはるかにましである。
【００５５】
図５は、エンコード回路３１が判定回路３２からの判定結果に基づいて行うローカルでコード画置換処理フローである。
【００５６】
エンコード回路３１が判定回路３２から判定結果を受け取り、ステップ３０１で、出力データストリームがスキップデータに置き換えられるかを判定し、置き換えられない時にはステップ３０２に進み、置き換えられる時にはステップ３０３に進む。
【００５７】
ステップ３０２では、エンコード回路３１が持つローカルデコード画をそのまま維持する。
【００５８】
ステップ３０３では、エンコード回路３１が持つローカルデコード画を廃棄し、参照画をローカルデコード画とする。
【００５９】
図６は、実施例における画像とデータ量の変化を説明する図であり、（Ａ）はエラーがない場合を、（Ｂ）は時間ｔ３でエラーが発生し、従来の方法でエンコードした場合を、（Ｃ）は時間ｔ３のデータを参照画となるスキップデータに置き換えた本実施例の場合を示す。
【００６０】
図６の（Ａ）において、上側の四角は時間方向の各画像を表し、円形の物体が画面上を右から左へ移動している動画を表す。下側の棒グラフは、各画面のデータ量を示し、エラーがない場合は、各画面のデータ量はほぼ同じデータ量となる。本来は、Ｉ−ｐｉｃ，Ｐ−ｐｉｃ，Ｂ−ｐｉｃなどのタイプによってデータ量が異なるが、ここでは説明を簡略化するために同じデータ量としている。
【００６１】
図６の（Ｂ）に示すように、時間ｔ３でエラーが発生し、従来の方法でエンコードした場合、ｔ３の画像にエラーによる劣化が現れると共に、この劣化画像を再現するためにｔ３のデータ量が増加する。さらに、ｔ３のデータ量が増加するため、データの総量を抑制する必要があり、ｔ４のデータ量が減る。これによりｔ４の画像が図６の（Ａ）などの場合に比べて劣化する。
【００６２】
図６の（Ｃ）に示すように、時間ｔ３でエラーが発生した場合、本実施例では、判定回路３２がｔ３の画像をスキップデータに置き換えるように判定する、これに応じて、ｔ３のデータは、時間ｔ１の画像が参照画であるのでそれに置き換えられるため、時間ｔ３の画像が時間ｔ１の画像と同じになる。これを動画で見ると、時間ｔ３で一瞬円状の物体が右に戻ったように見えることになる。このため多少不自然になるが、図６の（Ｂ）の画像のように乱れが画像に現れる見苦しさがないだけでなく、図６の（Ｃ）のｔ３のデータ量はスキップデータによるわずかなデータ量であり、無駄なデータ量を使用しないため、ｔ４のデータ量が減少する事態が避けられる。
【００６３】
以上、本発明の実施例を説明したが、本発明はこれに限定されるものでなく、エラー量の算出方法、置き換えの判定方法などについて各種の変形例がありえるのはいうまでもない。
【産業上の利用可能性】
【００６４】
本発明は、符号化された画像データを一旦デコードした後、再エンコード（トランスコード）する構成であれば適用可能であり、そのためのデコーダ、再エンコーダ（トランスコーダ）にも適用される。
【図面の簡単な説明】
【００６５】
【図１】トランスコーダ装置の構成を示す図である。
【図２】本発明の実施例のトランスコーダ装置の構成を示す図である。
【図３】実施例のエラー量算出回路におけるエラー量算出処理フローである。
【図４】実施例の判定回路における判定処理フローである。実施例における処理例を説明する図である。
【図５】実施例のエンコード回路におけるローカルデコード画置換処理フローである。
【図６】実施例における画像とデータ量の変化を説明する図である。
【符号の説明】
【００６６】
１    トランスコーダ装置
２    デコーダ
３    再エンコーダ（トランスコーダ）
４    フレームメモリ
２１    デコード回路
２２    エラー量算出回路
３１    エンコード回路
３２    判定回路
３３    スキップデータ生成部
３４    ストリーム選択回路
４１Ａ−４１Ｎ    デコード画像記憶部
４２Ａ−４２Ｎ    エラー量記憶部
４３    スキップデータ記憶部
【図１】
2008312013.tif 000003
【図２】
2008312013.tif 000004
【図３】
2008312013.tif 000005
【図４】
2008312013.tif 000006
【図５】
2008312013.tif 000007
【図６】
2008312013.tif 000008