(57)【要約】【課題】この発明は、比較的簡単な処理によって、ブロックノイズを低減させることができるブロックノイズ除去装置を提供することを目的とする。【解決手段】所定の大きさのブロック単位で符号化された後に復号化された映像信号からブロックノイズを除去するブロックノイズ除去装置において、復号化された映像信号に基づいて水平方向に隣り合うブロック間のブロック境界にブロックノイズが存在するか否かを判別する第１手段、および第１手段によってブロック境界にブロックノイズが存在すると判別された場合に、当該ブロック境界付近であって当該ブロック境界の前後にある複数画素の映像信号を、平滑化処理によって平滑化した後の映像信号に置き換える第２手段を備えている。【選択図】　図１
2004007398.tif 000002
【特許請求の範囲】
【請求項１】
所定の大きさのブロック単位で符号化された後に復号化された映像信号からブロックノイズを除去するブロックノイズ除去装置において、
復号化された映像信号に基づいて水平方向に隣り合うブロック間のブロック境界にブロックノイズが存在するか否かを判別する第１手段、および
第１手段によってブロック境界にブロックノイズが存在すると判別された場合に、当該ブロック境界付近であって当該ブロック境界の前後にある複数画素の映像信号を、平滑化処理によって平滑化した後の映像信号に置き換える第２手段、
を備えていることを特徴とするブロックノイズ除去装置。
【請求項２】
第１手段は、水平方向に隣り合うブロック間のブロック境界を挟みかつ当該ブロック境界に最も近い前後１対の画素の画素値の差分値と、当該ブロック境界の前側の複数画素の画素値から算出される変化特性値と、当該ブロック境界の後側の複数画素の画素値から算出される変化特性値とに基づいて、当該ブロック境界にブロックノイズが存在するか否かを判別するものであることを特徴とする請求項１に記載のブロックノイズ除去装置。
【請求項３】
ブロック境界の前側の複数画素の画素値から算出される変化特性値は、これらの複数画素の両端の画素の画素値からこれらの２つの画素に挟まれた各画素の位置の補間値を算出し、算出された補間値と実際の画素値との差分値を算出することによって得られた差分値であり、ブロック境界の後側の複数画素の画素値から算出される変化特性値は、これらの複数画素の両端の画素の画素値からこれらの２つの画素に挟まれた各画素の位置の補間値を算出し、算出された補間値と実際の画素値との差分値を算出することによって得られた差分値であることを特徴とする請求項２に記載のブロックノイズ除去装置。
【請求項４】
第１手段は、水平方向に隣り合うブロック間のブロック境界を挟みかつ当該ブロック境界に最も近い前後１対の画素の画素値の差分値が第１の閾値より大きく、かつ当該ブロック境界の前側の複数画素の画素値から算出される変化特性値およびブロック境界の後側の複数画素の画素値から算出される変化特性値が第２の閾値より小さい場合に、当該ブロック境界にブロックノイズが存在すると判定するものであることを特徴とする請求項３に記載のブロックノイズ除去装置。
【請求項５】
復号化時に用いられた量子化スケールが大きいほど、当該ブロック境界にブロックノイズが存在すると判定しやすくなるように、復号化時に用いられた量子化スケールに基づいて、上記第１の閾値および第２の閾値が制御されることを特徴とする請求項４に記載のブロックノイズ除去装置。
【請求項６】
第２手段は、ブロック境界にブロックノイズが存在すると判別された場合に、当該ブロック境界を中心とした前後２画素ずつの合計４画素の画素値を、平滑化処理によって平滑化した後の映像信号に置き換えるものであることを特徴とする請求項１、２、３、４および５のいずれかに記載のブロックノイズ除去装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ブロックノイズ除去装置に関する。
【０００２】
【従来の技術】
ＭＰＥＧ符号化／復号化のように、ブロック単位で符号化／復号化を行う場合、復号時の誤差レベルがブロック単位毎に異なることに起因してブロック境界にノイズ（ブロックノイズ）が発生することがある。
【０００３】
【発明が解決しようとする課題】
この発明は、比較的簡単な処理によって、ブロックノイズを低減させることができるブロックノイズ除去装置を提供することを目的とする。
【０００４】
【課題を解決するための手段】
請求項１に記載の発明は、所定の大きさのブロック単位で符号化された後に復号化された映像信号からブロックノイズを除去するブロックノイズ除去装置において、復号化された映像信号に基づいて水平方向に隣り合うブロック間のブロック境界にブロックノイズが存在するか否かを判別する第１手段、および第１手段によってブロック境界にブロックノイズが存在すると判別された場合に、当該ブロック境界付近であって当該ブロック境界の前後にある複数画素の映像信号を、平滑化処理によって平滑化した後の映像信号に置き換える第２手段を備えていることを特徴とする。
【０００５】
請求項２に記載の発明は、請求項１に記載のブロックノイズ除去装置において、第１手段は、水平方向に隣り合うブロック間のブロック境界を挟みかつ当該ブロック境界に最も近い前後１対の画素の画素値の差分値と、当該ブロック境界の前側の複数画素の画素値から算出される変化特性値と、当該ブロック境界の後側の複数画素の画素値から算出される変化特性値とに基づいて、当該ブロック境界にブロックノイズが存在するか否かを判別するものであることを特徴とする。
【０００６】
請求項３に記載の発明は、請求項２に記載のブロックノイズ除去装置において、ブロック境界の前側の複数画素の画素値から算出される変化特性値は、これらの複数画素の両端の画素の画素値からこれらの２つの画素に挟まれた各画素の位置の補間値を算出し、算出された補間値と実際の画素値との差分値を算出することによって得られた差分値であり、ブロック境界の後側の複数画素の画素値から算出される変化特性値は、これらの複数画素の両端の画素の画素値からこれらの２つの画素に挟まれた各画素の位置の補間値を算出し、算出された補間値と実際の画素値との差分値を算出することによって得られた差分値であることを特徴とする。
【０００７】
請求項４に記載の発明は、請求項３に記載のブロックノイズ除去装置において、第１手段は、水平方向に隣り合うブロック間のブロック境界を挟みかつ当該ブロック境界に最も近い前後１対の画素の画素値の差分値が第１の閾値より大きく、かつ当該ブロック境界の前側の複数画素の画素値から算出される変化特性値およびブロック境界の後側の複数画素の画素値から算出される変化特性値が第２の閾値より小さい場合に、当該ブロック境界にブロックノイズが存在すると判定するものであることを特徴とする。
【０００８】
請求項５に記載の発明は、請求項４に記載のブロックノイズ除去装置において、復号化時に用いられた量子化スケールが大きいほど、当該ブロック境界にブロックノイズが存在すると判定しやすくなるように、復号化時に用いられた量子化スケールに基づいて、上記第１の閾値および第２の閾値が制御されることを特徴とする。
【０００９】
請求項６に記載の発明は、請求項１乃至５に記載のブロックノイズ除去装置において、第２手段は、ブロック境界にブロックノイズが存在すると判別された場合に、当該ブロック境界を中心とした前後２画素ずつの合計４画素の画素値を、平滑化処理によって平滑化した後の映像信号に置き換えるものであることを特徴とする。
【００１０】
【発明の実施の形態】
以下、図面を参照して、この発明の実施の形態について説明する。
【００１１】
〔１〕ブロックノイズ除去回路の全体的な構成の説明
【００１２】
図１は、ブロックノイズ除去回路の構成を示している。
【００１３】
ＭＰＥＧデコーダ１には、ＭＰＥＧ符号化が行われた映像信号が入力される。ＭＰＥＧデコーダ１は、入力映像信号を８×８画素の大きさのブロック単位でＭＰＥＧ復号化することにより、復号画像を得る。上述したように、復号画像においては、復号時の誤差レベルがブロック単位毎に異なることに起因してブロック境界にブロックノイズが発生する可能性がある。
【００１４】
ＭＰＥＧデコーダ１から出力される復号映像信号は、ブロックノイズ検出回路２に送られる。また、復号映像信号は、遅延回路３を介してブロックノイズ低減回路４に送られる。さらに、復号映像信号は、遅延回路５を介して、スイッチ６の第１入力端子ａに入力する。
【００１５】
ブロックノイズ検出回路２は、水平方向に隣り合うブロック間のブロック境界毎に、ブロック境界を中心とする前後それぞれ４画素ずつの合計８個の画素の映像信号（画素値）に基づいて、ブロック境界にブロックノイズが存在しているか否かを判別し、その判別結果に応じた切替制御信号をスイッチ６に出力する。
【００１６】
ブロックノイズ低減回路４は、各画素毎に、復号映像信号に対してブロックノイズを低減するためのフィルタ処理を行って、補正値を算出する。ブロックノイズ低減回路４から出力される補正値は、スイッチ６の第２入力端子ｂに送られる。
【００１７】
スイッチ６には、遅延回路５を介してＭＰＥＧデコーダ１から出力される復号映像信号が入力されるとともに、遅延回路５から入力する復号映像信号と同じ画素位置に対するフィルタ処理後の補正値がブロックノイズ低減回路４から入力される。
【００１８】
スイッチ６は、ブロックノイズ検出回路２からの切替制御信号によって切り替え制御される。つまり、スイッチ６は、常時は、第１入力端子ａ側に切り替えられている。ブロックノイズ検出回路２によってブロック境界にブロックノイズが存在していると判別された場合には、当該ブロック境界を中心とする前後それぞれ２画素ずつの合計４個の画素に対応する復号映像信号が遅延回路５を介してスイッチ６に送られる期間の間、スイッチ６は第２入力端子ｂ側に切り替えられる。
【００１９】
〔２〕ブロックノイズ検出回路２についての説明
【００２０】
図２（ａ）は、ブロック境界を中心とする前後それぞれ４画素ずつの合計８個の画素の映像データを示している。
【００２１】
図２（ｂ）に示すように、ブロック境界を挟む各ブロック内においては映像データの変化は大きくかつそれらのブロック間で映像信号の変化が小さい場合には、ブロック境界にブロックノイズが発生している可能性が低いと考えられる。
【００２２】
図２（ｃ）に示すように、ブロック境界を挟む各ブロック内においては映像信号の変化は小さくかつそれらのブロック間で映像信号の変化が大きい場合に、ブロック境界にブロックノイズが発生している可能性が高いと考えられる。
【００２３】
そこで、ブロックノイズ検出回路２は、図４に示すような手順により、ブロック境界にブロックノイズが発生しているか否かを判別している。なお、図３は、ブロック境界を中心とする前後それぞれ４画素ずつの合計８個の画素Ａ〜Ｈを示している。
【００２４】
まず、ブロック間で映像信号の変化が大きいか否かを調べるために、ブロック境界を挟みかつブロック境界に最も近い２つの画素の映像信号の差分絶対値｜Ｄ−Ｅ｜が、閾値ｔｈ１より大きいか否かを判別する（ステップ１）。映像信号が８ビットの信号である場合には、閾値ｔｈ１としては、たとえば、３（十進数）が用いられる。
【００２５】
差分絶対値｜Ｄ−Ｅ｜が閾値ｔｈ１以下である場合には、当該ブロック境界にブロックノイズが存在しないと判別する（ステップ２）。差分絶対値｜Ｄ−Ｅ｜が閾値ｔｈ１より大きい場合には、ブロック境界を挟む各ブロック内においては映像信号の変化は小さいか否かを調べるために、差分絶対値｜Ｂ−Ｂ’｜、｜Ｃ−Ｃ’｜、｜Ｆ−Ｆ’｜および｜Ｇ−Ｇ’｜の全てが閾値ｔｈ２より小さいか否かを判別する（ステップ３）。映像信号が８ビットの信号である場合には、閾値ｔｈ２としては、たとえば、３（十進数）が用いられる。
【００２６】
ここで、Ｂ’およびＣ’は、図３に示すように、画素Ｂ、Ｃの位置での画素値を画素値Ａ、Ｄから補間することによって得られる値であり、Ｆ’およびＧ’は、画素Ｆ、Ｇの位置での画素値を画素値Ｅ、Ｈから補間することによって得られる値であり、次式（１）〜（４）によって表される。
【００２７】
Ｂ’＝（Ａ＊２＋Ｄ＊１）／３　　…（１）
Ｃ’＝（Ａ＊１＋Ｄ＊２）／３　　…（２）
Ｆ’＝（Ｅ＊２＋Ｈ＊１）／３　　…（３）
Ｇ’＝（Ｅ＊１＋Ｈ＊２）／３　　…（４）
【００２８】
回路規模を小さくするために、Ｂ’，Ｃ’，Ｆ’，Ｇ’を次式（５）〜（８）の近似式によって算出するようにしてもよい。
【００２９】
Ｂ’＝（Ａ＊５＋Ｄ＊３）／／８　　…（５）
Ｃ’＝（Ａ＊３＋Ｄ＊５）／／８　　…（６）
Ｆ’＝（Ｅ＊５＋Ｈ＊３）／／８　　…（７）
Ｇ’＝（Ｅ＊３＋Ｈ＊５）／／８　　…（８）
【００３０】
上記式（５）〜（８）において、記号／／は、四捨五入を行う割算を表している。
【００３１】
上記式（５）〜（８）の近似式を用いる場合には、Ｂ’，Ｃ’，Ｆ’，Ｇ’を、掛け算とシフト演算のみで計算できるため、回路規模を小さくできる。たとえば、Ｘ＞＞Ｙにおける記号＞＞を、ＸをＹビットだけ右にシフトする記号とすると、Ｂ’は次式（９）に示すように、掛け算とシフト演算のみで計算できるようになる。
【００３２】
Ｂ’＝（Ａ＊５＋Ｄ＊３＋４）＞＞３　　…（９）
【００３３】
差分絶対値｜Ｂ−Ｂ’｜、｜Ｃ−Ｃ’｜、｜Ｆ−Ｆ’｜および｜Ｇ−Ｇ’｜のうちのいずれか１つでも、閾値ｔｈ２以上のものがあれば、当該ブロック境界にブロックノイズが存在しないと判別する（ステップ２）。
【００３４】
差分絶対値｜Ｂ−Ｂ’｜、｜Ｃ−Ｃ’｜、｜Ｆ−Ｆ’｜および｜Ｇ−Ｇ’｜の全てが閾値ｔｈ２より小さい場合には、当該ブロック境界にブロックノイズが存在すると判別する（ステップ４）。
【００３５】
図５は、ブロックノイズ検出回路２の構成例を示している。
【００３６】
ブロックノイズ検出回路２は、７個の１画素遅延器１１〜１７、４つの補間値算出部２１〜２４、５つの差分算出部３１〜３５およびブロックノイズ有無判定部４１を備えている。
【００３７】
７個の１画素遅延器１１〜１７は、ブロック境界を中心とする前後それぞれ４画素ずつの合計８個の画素Ａ〜Ｈの映像信号Ａ〜Ｈを獲得するために設けられたものである。
【００３８】
差分算出部３１は、｜Ｄ−Ｅ｜を算出する。補間値算出部２１、２２、２３、２４は、それぞれＧ’、Ｆ’、Ｃ’、Ｂ’を算出する。差分算出部３２、３３、３４、３５は、それぞれ、｜Ｇ−Ｇ’｜、｜Ｆ−Ｆ’｜、｜Ｃ−Ｃ’｜、｜Ｂ−Ｂ’｜を算出する。
【００３９】
ブロックノイズ有無判定部４１は、図４で説明した処理手順にしたがって、ブロックノイズの有無判定を行う。
【００４０】
〔３〕ブロックノイズ低減回路４についての説明
【００４１】
図６は、ブロックノイズ低減回路４の構成例を示している。
【００４２】
ブロックノイズ低減回路４は、４つの１画素遅延器５１〜５４およびフィルタ回路５５を備えている。
【００４３】
４つの１画素遅延器５１〜５４は、連続した５つの画素の映像信号を獲得するために設けられている。フィルタ回路５５は、連続した５つの画素の映像信号に基づいて、その中央の画素の映像信号の補正値を算出する。フィルタ回路５５は、連続する５つの映像信号をＡ，Ｂ，Ｃ，Ｄ，Ｅとすると、次式（１０）の演算を行って、中央の画素Ｃの補正値Ｃ”を算出する。
【００４４】
Ｃ”＝（Ａ＊３＋Ｂ＊３＋Ｃ＊４＋Ｄ＊３＋Ｅ＊３）／／１６
＝（Ａ＊３＋Ｂ＊３＋Ｃ＊４＋Ｄ＊３＋Ｅ＊３＋４）＞＞４　…（１０）
【００４５】
ブロックノイズ低減回路４は、１画素毎に上記式（１０）に示すような演算を行うが、ブロックノイズ検出回路２によってブロック境界にブロックノイズが存在すると判別された場合にスイッチ６が第２入力端子ｂ側に切り替えられるのは、当該ブロック境界を中心とする前後それぞれ２画素ずつの合計４個の画素に対応する復号映像信号が遅延回路５を介してスイッチ６に送られる期間の間だけである。
【００４６】
したがって、図３に示すブロック境界にブロックノイズが存在すると判別された場合には、当該ブロック境界を中心する前後それぞれ２画素ずつの合計４個の画素Ｃ、Ｄ、Ｅ、Ｆの代わりに、それに対応する補正値Ｃ”、Ｄ”、Ｅ”、Ｆ”がスイッチ５から出力されることになる。
【００４７】
補正値Ｄ”、Ｅ”、Ｆ”は、次式（１１）〜（１３）に基づいて算出される。
【００４８】
Ｄ”＝（Ｂ＊３＋Ｃ＊３＋Ｄ＊４＋Ｅ＊３＋Ｆ＊３＋４）＞＞４　…（１１）
Ｅ”＝（Ｃ＊３＋Ｄ＊３＋Ｅ＊４＋Ｆ＊３＋Ｇ＊３＋４）＞＞４　…（１２）
Ｄ”＝（Ｄ＊３＋Ｅ＊３＋Ｆ＊４＋Ｇ＊３＋Ｈ＊３＋４）＞＞４　…（１３）
【００４９】
したがって、図３に示すブロック境界にブロックノイズが存在すると判別された場合には、当該ブロック境界を中心とする前後それぞれ２画素ずつの合計４個の画素Ｃ、Ｄ、Ｅ、Ｆの画素値が、それぞれその画素を中心とする５つの画素の画素値によって平滑化されることによって得られる画素値（補正値）に置き換えられるので、ブロックノイズが低減される。
【００５０】
〔４〕ブロックノイズ検出回路の変形例の説明
【００５１】
図７は、ブロックノイズ除去装置の全体的な構成を示している。図７において、図１と同じものには、同じ符号を付してその説明を省略する。
【００５２】
図７のブロックノイズ除去装置では、図１のブロックノイズ除去装置と比べて、ブロックノイズ検出回路２Ａが異なっている。
【００５３】
このブロックノイズ検出回路２Ａには、ＭＰＥＧデコーダ１からデコード時に用いられた量子化スケール（ＱＳ：Ｑｕａｎｔｉｚｅｒ　Ｓｃａｌｅ）が入力されている。ブロックノイズ検出回路２Ａは、図１のブロックノイズ検出回路２と同様な処理を行ってブロックノイズの有無判定を行うが、差分絶対値｜Ｄ−Ｅ｜と比較される閾値ｔｈ１および差分絶対値｜Ｂ−Ｂ’｜、｜Ｃ−Ｃ’｜、｜Ｆ−Ｆ’｜および｜Ｇ−Ｇ’｜と比較される閾値ｔｈ２の値が、ＭＰＥＧデコーダ１から送られてくる量子化スケールによって制御される点が図１のブロックノイズ検出回路２と異なっている。
【００５４】
閾値ｔｈ１は、例えば、図８に示す量子化スケールと閾値ｔｈ１との関係に基づいて、制御される。つまり、量子化スケールＱＳが０＜ＱＳ≦１６の範囲においては、閾値ｔｈ１は量子化スケールＱＳが大きくなるほど小さくなる。この例では、ｔｈ１＝１０−（ＱＳ／２）という関係を有しており、量子化スケールＱＳが０＜ＱＳ≦１６の範囲においては、閾値ｔｈ１は、約１０〜２の範囲で変化する。そして、量子化スケールＱＳが１６より大きい場合には、閾値ｔｈ１は一定値、この例では２に制御される。
【００５５】
閾値ｔｈ２は、例えば、図９に示す量子化スケールと閾値ｔｈ２との関係に基づいて、制御される。つまり、量子化スケールＱＳが０＜ＱＳ≦２４の範囲においては、閾値ｔｈ２は量子化スケールＱＳが大きくなるほど大きくなる。この例では、量子化スケールＱＳが０＜ＱＳ≦２４の範囲においては、ｔｈ２＝ＱＳ／４という関係を有しており、閾値ｔｈ２は約０〜６の範囲で変化する。そして、量子化スケールＱＳが２４より大きい場合には、閾値ｔｈ２は一定値、この例では６に制御される。
【００５６】
量子化スケールが大きくなるほど、ブロックノイズが発生する可能性が高くなる。そこで、閾値ｔｈ１およびｔｈ２を、上記のように量子化スケールに応じて制御することにより、量子化スケールが大きくなるほど、ブロックノイズが有ると判定されやすくしている。この結果、量子化スケールが小さくブロックノイズが発生する可能性が低い部分においてブロックノイズを誤検出してしまうといったことが低減されるとともに、量子化スケールが大きくブロックノイズが発生する可能性が高い部分においてブロックノイズの検出漏れが発生するといったことが低減される。
【００５７】
【発明の効果】
この発明によれば、比較的簡単な処理によって、ブロックノイズを低減させることができるようになる。
【図面の簡単な説明】
【図１】ブロックノイズ除去回路の構成を示すブロック図である。
【図２】ブロックノイズ検出回路２によるブロックノイズの検出方法を説明するための説明図である。
【図３】ブロック境界を中心とする前後それぞれ４画素ずつの合計８個の画素Ａ〜Ｈを示す模式図である。
【図４】ブロックノイズ検出回路２によるブロックノイズの有無判定処理手順を示すフローチャートである。
【図５】ブロックノイズ検出回路２の構成例を示すブロック図である。
【図６】ブロックノイズ低減回路４の構成例すブロック図である。
【図７】ブロックノイズ除去回路の他の構成例を示すブロック図である。
【図８】量子化スケールと閾値ｔｈ１との関係を示すグラフである。
【図９】量子化スケールと閾値ｔｈ２との関係を示すグラフである。
【符号の説明】
１　ＭＰＥＧデコーダ
２、２Ａ　ブロックノイズ検出回路
３　遅延回路
４　ブロックノイズ低減回路
５　遅延回路
６　スイッチ
【図１】
2004007398.tif 000003
【図２】
2004007398.tif 000004
【図３】
2004007398.tif 000005
【図４】
2004007398.tif 000006
【図５】
2004007398.tif 000007
【図６】
2004007398.tif 000008
【図７】
2004007398.tif 000009
【図８】
2004007398.tif 000010
【図９】
2004007398.tif 000011