説明

映像データ処理装置、及び映像データ処理方法

【課題】入力映像データの拡大縮小率を容易に検出する。
【解決手段】映像データの拡大縮小率を算出する映像データ処理装置は、映像データに含まれる複数の画素列のノイズを除去する前処理部110と、複数の画素列について、隣接する画素間の画素値の差分が差分閾値より大きくなる差分ピークを検出し、隣接する差分ピーク間の距離を示すピーク間距離を測定するブロックサイズ検出部130と、複数の各画素列について、ピーク間距離を測定した回数を積算し、ピーク間距離毎の積算数を記録するブロックサイズ積算部150と、積算数が積算数閾値より大きいピーク間距離を検出した場合、検出したピーク間距離をブロックサイズ判定値として判定し、判定したブロックサイズ判定値と任意の符号化方式のブロックサイズ規定値とを比較して、映像データの水平方向または垂直方向の拡大縮小率を判定する拡大縮小率判定部170と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像データの拡大縮小率を検出する技術に関する。
【背景技術】
【0002】
映像データの処理、例えば、シャープネス、ノイズ・キャンセル、または超解像技術など映像処理には、入力映像データの特性に合わせて最適処理を実施する。具体的には、入力映像データの特性にあわせて、最適な処理方式を選択することや、設定値を調整することが必要となる。
例えば、オリジナル解像度を有する映像データ(カメラで取った映像そのままの解像度の映像データ)や、コンピュータグラフィックス(CG)など十分な解像度を持つ映像データに対して、シャープネス、超解像処理などの映像に対する強調処理を実行すると弊害を伴う場合が多く、強調処理を弱めに設定するのが望ましい。また、解像度が低い映像を拡大した映像、例えば、YouTube(登録商標)などによってインターネット上に公開された映像データや、標準映像(SD映像)を高精細度サイズ(HDサイズ)まで拡大した映像データに対しては、拡大処理を施すと映像がボケてしまうので、強調処理を強めに調整するのが望ましい。さらに、超解像などは特定拡大率に対して最適の設定(例えば、2倍拡大には設定1、3倍拡大には設定2、4倍拡大には設定3など)があるので、映像データの拡大率に応じて、処理方式や設定などを選択する事でさらに良い効果が得られる。
【0003】
一般的に、映像データに対する各処理内容に対して数種類の設定値を予め準備しておき、映像データが高解像度の場合に弱めの設定で処理し、低解像度の場合に強めの設定で処理する。ただし、この様な適応処理の前提としては、入力映像データが低い解像度から拡大した映像か、拡大せず元映像データその物であるかの検出が必要である。また、拡大した映像データの場合に、拡大の倍率も検出する必要がある。
例えば、図11に示すような、地上波がアンテナ1を介してSTB(Set Top Box)2経由でテレビ3に入力される場合(図11)に、テレビ3側は、放送映像に対してSTB2がどんな処理をしたかを把握することができない。テレビ3がSTB2によって処理された放送映像に対して、適応処理を実施するためには、入力映像データの特性(拡大倍率)を検出しなければならない。
【0004】
同様に、図12に示すように、DVD(Digital Versatile Disc)プレイヤー5がDVD4若しくはBD(Blu-ray Disc)素材を再生しテレビ3に入力する場合に、テレビ3はその入力信号に対して、最適処理するために、入力信号がDVD画質か、BD画質かの判定を必要とする。
さらに同様に、図13に示すように、パーソナルコンピュータ6上のアプリケーションによって、ビデオを再生する時、例えば、YouTube(登録商標)、Windows Media Player(登録商標)などによってビデオを再生する時、液晶ディスプレイなど表示機器がアプリケーションを使用する画面領域の範囲内の映像に対して映像処理したい場合に、その映像データの拡大率の検出も必要である。
【0005】
上述したように、適切な映像データ処理には、映像データについて解像度や拡大率または縮小率の検出が必要となる。例えば、解像度検出に関する技術(特許文献1,2)や拡大率または縮小率の検出に用いるブロックサイズ検出に関する技術(特許文献3,4)が開発されている。
特許文献1には、入力映像データに対して、以下の順番で解析を行い、入力映像データの解像度を求めて後段の画質処理ブロック(超解像など)の係数を調整する技術が開示されている。
1.水平垂直周波数分解
2.周波数成分の平坦化
3.周波数成分のニ値化
4.計測
5.拡大率判定
【0006】
特許文献2には、映像データのブロック内の空間周波数を解析し、エネルギーの分布による拡大・縮小率を計算する技術が開示されている。
特許文献3には、スケーリング映像のブロックサイズ検出方式の技術が開示され、特許文献4には、ブロックノイズ検出方式の技術が開示されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2009−15025号公報
【特許文献2】特許第3036496号公報
【特許文献1】特開2010−11094号公報
【特許文献1】特開2000−50275号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
映像データの特性に合わせて映像処理を適切に実施するため、入力映像データに関する解像度や、拡大率または縮小率の検出が求められているが、従来技術には次のような問題がある。
特許文献1では、入力映像データが高精細度映像(HD映像)その物か、SD映像から高精細度(HD)に拡大した映像かの判断しかできない。言い換えると、拡大率の検出はできない。これは、周波数成分を分解・2値化し、閾値比較によって拡大か否かを判断している為である。
また、想定している入力前の拡大処理のモデルは、アップコンバート、理想特性のローパスフィルタ(LPF)、及びダウンコンバートの各処理が施された映像に限定されており、入力前のLPFが理想特性でない場合に正しく検出できない。また、入力前のLPFの特性に起因する検出性能のバラツキが大きい。
【0009】
特許文献2では、エネルギー分散による検出を行っているが、この技術では、絵柄やノイズの影響を受けやすい為、正確な拡大縮小率を検出することはできない。例えば、同じ拡大率であっても、滑らかな絵柄(空など)の領域では拡大と判定し、細かい絵柄(森など)に対しては拡大していないと判定するという問題がある。
【0010】
特許文献3では、入力映像データの拡大縮小率の逆数比率で再スケーリングしてから、ブロックノイズを検出する。このため、再スケーリングの為の実装コストが大きく、且つ、入力映像データの拡大率が既知でなければならない。
また、入力映像データの拡大率が不明な場合、入力映像データに対して複数回異なる比率で再スケーリングを実施し、最もブロック境界がはっきりしている再スケーリング率の逆数を入力映像データの拡大縮小率と判定しつつ、ブロックサイズ・ブロック境界を判定する。判定結果が定まるまでに複数回再スケーリングを実施しなければならないので、実装上のコストがさらに高くなる。
加えて、ブロック検出は再スケーリング後の整数画素精度であり、ブロックサイズ検出精度が低い。例えば、入力映像データに対して再スケーリングとして3分の1縮小を適用した場合、再スケーリング後の整数画素精度は入力映像データの3画素精度に相当するので、ブロックサイズ検出精度は3分の1まで低下している。
【0011】
特許文献4では、ブロックサイズを判定する際に、積算結果の最大値だけで判定する為、検出できるブロックサイズが整数画素サイズに限定されている。周波数特性が固定なハイパスフィルタ(HPF)で前処理しているので、ブロック境界だけでなくブロック内部の絵柄やノイズなどまで強調してしまい、結果としてブロック検出性能が低いものであった。
【0012】
このように、映像データの特性に合わせて映像処理を実施するための、入力映像データに関する解像度や拡大縮小率を容易に検出することが困難であった。
【課題を解決するための手段】
【0013】
本発明の発明者は、符号化方式の拡大縮小率に着目することによって、入力映像データの拡大縮小率を容易に検出することを見出した。
本発明に係る映像データ処理装置の一態様は、映像データの拡大縮小率を算出する映像データ処理装置であって、前処理部、ブロックサイズ検出部、ブロックサイズ積算部、及び拡大縮小率判定部を備える。前処理部は、映像データに含まれる水平方向と垂直方向との少なくとも一方の複数の画素列のノイズを除去する。ブロックサイズ検出部は、前記複数の画素列について、隣接する画素間の画素値の差分を抽出し、抽出した差分が差分閾値より大きくなる差分ピークを検出し、隣接する差分ピーク間の距離を示すピーク間距離を測定する。ブロックサイズ積算部は、前記複数の各画素列について、前記ピーク間距離を測定した回数を積算し、ピーク間距離毎の積算数を記録する。拡大縮小率判定部は、前記ブロックサイズ積算部が記録する前記積算数が積算数閾値より大きいピーク間距離を検出した場合、検出したピーク間距離をブロックサイズ判定値として判定し、判定したブロックサイズ判定値と任意の符号化方式が採用するブロックサイズとなるブロックサイズ規定値とを比較して、映像データの水平方向または垂直方向の拡大縮小率を判定する。任意の符号化方式のブロックサイズ規定値と、映像データから検出したブロックサイズとを比較することにより、拡大縮小率を判定する。任意の符号化方式において、ブロックサイズ規定値が設定されていることを用いることにより、拡大縮小率を容易に検出することを実現する。
【0014】
また、本発明に係る映像データ処理方法の一態様は、映像データの拡大縮小率を算出する映像データ処理装置が行う映像データ方法であって、次の工程を備える。映像データの水平方向または垂直方向の複数の画素列のノイズを除去する工程、前記複数の画素列について、隣接する画素間の画素値の差分を抽出して差分が大きくなるピーク画素を検出すること、及び隣接するピーク画素間の距離を示すピーク間距離を測定することを実施する工程、前記複数の画素列について、前記ピーク間距離を測定した回数を積算してピーク間距離毎の積算数を記録する工程、記録した前記積算数が積算数閾値より大きいピーク間距離を検出した場合、検出したピーク間距離をブロックサイズ判定値として判定し、判定したブロックサイズ判定値と任意の符号化方式のブロックサイズ規定値とを比較して、映像データの水平方向または垂直方向の拡大縮小率を判定する工程。
【発明の効果】
【0015】
本発明によれば、入力映像データの特性に合わせた映像処理を実施する一つの手段として、精度の高い拡大縮小率を容易に得ることを可能とする。
【図面の簡単な説明】
【0016】
【図1】本発明の映像データの処理を行う映像データ処理装置の構成例を示すブロック図である。
【図2A】拡大縮小率推定部の構成例を示すブロック図である。
【図2B】前処理部の流れの一例を示す図である。
【図2C】ブロックサイズ検出部の流れの一例を示す図である。
【図3A】ピーク間距離の履歴積算数の一例(拡大縮小率が等倍である場合)を示す図である。
【図3B】ピーク間距離の履歴積算数の一例(拡大縮小率が0.75倍である場合)を示す図である。
【図3C】ピーク間距離の履歴積算数の一例(拡大縮小率が1.5倍である場合)を示す図である。
【図3D】ピーク間距離の履歴積算数の一例(拡大縮小率が不明な場合)を示す図である。
【図4】一般的な映像処理の手順を示す図である。
【図5】ブロックサイズ検出による拡大縮小率検出の仕組みを説明する図である。
【図6】非整数ブロックサイズのピーク間距離の履歴積算数の一例を示す図である。
【図7A】可変ブロックサイズのピーク間距離の履歴積算数の一例(拡大縮小率が等倍である場合)を示す図である。
【図7B】可変ブロックサイズのピーク間距離の履歴積算数の一例(拡大縮小されている場合)を示す図である。
【図8】拡大されていない映像に対するブロック境界検出について説明する図である。
【図9】拡大された映像に対するブロック境界検出について説明する図である。
【図10】直流成分、インパルス、ブロックの周波数特性について説明する図である。
【図11】地上波がSTB経由でテレビに入力される例を示す図である。
【図12】DVDプレイヤーがDVDを再生する例を示す図である。
【図13】パソコン上のアプリケーションの画面例を示す図である。
【発明を実施するための形態】
【0017】
以下、本発明の実施形態について、図面を参照しながら説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。各図面において同一の構成または機能を有する構成要素および相当部分には、同一の符号を付し、その説明は省略する。
【0018】
本発明の映像データ処理装置及び映像データ処理方法では、まず、スケーリング(拡大縮小)されたデジタル映像データに対して、ブロック境界を検出してブロックサイズを求める。そして、ブロックサイズに基づいて正確な拡大縮小率を検出する。
放送で主に使用されるCodec(コ―ディック)が採用する符号化方式のブロックサイズは以下である。
MPEG(Moving Picture Experts Group)2/H263:8×8
H264:16×16,16×8,8×16,8×8,8×4,4×8,及び4×4
MPEG2の場合には、映像データを8×8のブロックに分割し、それぞれエンコード、デコードを実施する。MPEG2のデジタル映像データをデコードしてから、特定の拡大率(縮小率)でスケーリングすると、該当ブロックサイズも該当拡大(縮小)率でスケーリングされる。例えば、映像データを1.5倍で拡大する場合には、8×8のブロックは12×12のブロックに拡大される。映像データを0.5倍で縮小する場合には、ブロックサイズは4×4になる。
従って、符号化方式が特定できる場合、映像データの拡大縮小に伴って、ブロックサイズも同じ倍率で拡大縮小される事を利用し、ブロックサイズを推定してから、拡大されたか、あるいは縮小されたかを検出することができる。且つ拡大縮小のいずれかが検出できるだけではなく、拡大縮小の倍率を求める事が可能である。すなわち、検出したブロックサイズをbsとして、拡大縮小率(α)の計算式は以下となる。
α=bs/8・・・・・(1)
【0019】
また、H.264の場合、ブロックサイズは可変だが、一定のルールがある。水平垂直のブロックサイズは4、8、16しかない。複数のブロックサイズを検出した場合には、H.264と判定でき、複数のブロックサイズそれぞれと4、8、16との割合が、H.264映像の拡大縮小率と判定する。例えば、入力ブロックサイズを"3,6,12"として検出する場合、H.264映像を0.75で縮小した映像と判定する。具体的には、次の式により縮小率が0.75であることが検出できる。ブロックサイズ3:3=4×0.75,ブロックサイズ6:6=8*0.75,ブロックサイズ12:12=16*0.75。
【0020】
放送で主に用いる符号化方式は、MEPG2に代表されるように固定ブロックサイズを採用する方式と、H264に代表されるように可変ブロックサイズを採用する方式とが存在する。また、可変ブロックサイズであっても、所定のブロックサイズの組合せを採用しているため、所定のブロックサイズを用いてブロックサイズを推測することが可能となる。言い換えると、任意の符号化方式では、採用するブロックサイズが特定される。以下の説明では、任意の符号化方式が採用するブロックサイズの情報を、「ブロックサイズ規定値」とすると、符号化方式毎にブロックサイズ規定値を対応づけることができる。例えば、符号化方式がMPEG2の場合、ブロックサイズ規定値は"8"であり、H.264の場合、ブロックサイズ規定値は、"4,8,16"である。
【0021】
映像データでは、ブロック境界を検出すると、検出したブロック境界からブロックサイズが判定できる。また、スケーリングされた映像データからブロック境界を検出する場合、拡大または縮小されたブロックサイズが検出できることになる。具体的には、入力映像データ(スケーリングされた映像データ、またはスケーリングされていない映像データ)から判定したブロックサイズ(ブロックサイズ判定値)と、各符号化方式のブロックサイズ規定値とを比較することにより、入力映像データに適用された符号化方式を判定する。ブロックサイズ判定値と、判定した符号化方式に対応づけられたブロックサイズ規定値とを比較することにより、入力映像データの拡大縮小率を判定することができる。ここで、ブロックサイズ規定値は、予め装置内に保持される情報であることを前提とする。以下、図面を参照して各実施形態を説明する。
【0022】
実施形態1.
図1は、本発明の映像データの処理を行う映像データ処理装置の構成例を示すブロック図である。図2Aは、拡大縮小率推定部の構成例を示すブロック図であり、図2Bは、前処理部の流れの一例を示す図であり、図2Cは、ブロックサイズ検出部の流れの一例を示す図である。
図1では、代表的な映像処理の流れを示すものである。映像データ処理装置10は、映像入力部11、映像処理部12、映像出力部13、及び、拡大縮小率推定部100を備える。
【0023】
映像入力部11は、入力映像データを受け付け、映像データ処理装置10が処理可能な映像データに変換して出力する。例えば、A/D(Analog/Digital)や、ラインバッファなど、内部処理に備えるための処理を実施する。
映像処理部12は、映像データの編集・加工等の処理を行う。映像処理部12は、拡大縮小率推定部100から出力された拡大縮小率に基づいて、映像データ処理の設定や、処理方式を決定する。例えば、超解像処理、ノイズリダクション(NR)、シャープネスなど映像データの処理を実施する。
映像出力部13は、映像処理部12が映像データを処理した出力映像を表示装置などの外部装置へ出力する。
拡大縮小率推定部100は、映像データを解析し、水平方向、垂直方向の拡大縮小率を推定し、推定した拡大縮小率を映像処理部12へ出力する。
【0024】
図2に、拡大縮小率推定部100の構成例を示す。拡大縮小率推定部100は、前処理部110、ブロックサイズ検出部130、ブロックサイズ積算部150、及び、拡大縮小率判定部170を備える。拡大縮小率推定部100は、上述した4つの構成要素が実施する4段階の処理を実施して、水平方向と垂直方向とのいずれかの拡大縮小率を推定する。
前処理部110は、映像データを処理して、ブロック境界を検出し易くする。前処理部110は、水平方向の拡大縮小率を推定する場合、水平方向に配置された複数の画素列について、前処理、例えば、ノイズの除去などの処理を実施する。また、垂直方向の拡大縮小率を推定する場合、垂直方向の複数の画素列について前処理を実施する。ここで、画素列は、映像データの全画面または着目領域の水平方向または垂直方向のライン上(一行または一列)に配置される複数の画素の集合である。
【0025】
ブロックサイズ検出部130は、前処理部110が処理した複数の画素列を解析して、ブロック境界を検出し、ブロックサイズを推定する。ブロックサイズ検出部130は、複数の画素列それぞれについてブロックサイズを推定し、推定した結果をブロックサイズ積算部150へ出力する。
ブロックサイズ積算部150は、全画面または着目領域のブロックサイズ検出履歴を積算記録する。具体的には、ブロックサイズ検出部130から出力される、複数の画素列に対して推定されたブロックサイズの値について、ブロックサイズの値毎に推定された回数を積算する。
拡大縮小率判定部170は、全画面または着目領域の積算数の履歴(ピーク間距離の履歴積算数)を参照し、拡大縮小率を推定する。
【0026】
次に、拡大縮小率推定部100の4段階の処理手順について説明する。
拡大縮小率推定部100は、4段階の処理を1回実施すると、水平方向と垂直方向とのいずれか一方の拡大縮小率を推定する。しかしながら、映像処理部12では、水平方向と垂直方向との両方の拡大縮小率を必要とする。このため、拡大縮小率推定部100は、4段階の処理を2回実施することによって、水平方向と垂直方向との一方の拡大縮小率を推定した後、他方の拡大縮小率を推定する。
【0027】
前処理部110は、検出方向と交差する方向にローパスフィルタ(LPF)によってノイズを除去する。具体的には、水平方向の拡大縮小率を検出する場合、垂直LPFの処理を実施し、垂直方向の拡大縮小率を検出する場合、水平LPFの処理を実施する。図2Bに、前処理部110の処理例を示す。前処理部110では、水平方向の拡大縮小率を推定する場合、垂直LPF111、水平バンドパスフィルタ(水平BPF)112、最大値と最長値とを特定するMax/Min113、垂直LPF111から出力と水平BPF112から出力を加算する加算器114、解析する映像データを切り出すCLIP115によって映像データを前処理し、水平方向の画素列を出力する。また、垂直方向の拡大縮小率を推定する場合、水平LPF116、垂直BPF117、Max/Min118、水平LPF116から出力と垂直BPF117から出力を加算する加算器119、CLIP120によって映像データを前処理し、垂直方向の画素列を出力する。
【0028】
ブロックサイズ検出部130は、前処理部110が出力した画素列について、隣接する画素間の画素値の差分を抽出し、差分がピークとなる画素を検出し、差分ピーク間の距離(ピーク間距離)を測定する。差分ピークは、抽出した差分が差分閾値より多くなる差分が抽出された画素を検出する。差分閾値は、差分ピークであるか否かを判定する差分の閾値であり、映像データの特性により任意の値が設定され、予め装置内に保持されている。また、差分ピークを検出する場合、画素列の任意の範囲について差分ピークを検出する処理を実施する。画素列の任意の範囲は、映像データの特性に依存する。ピーク間距離は、隣接する差分ピーク間の距離(差分ピークが検出された画素間の距離)のであり、例えば、一つの差分ピーク画素から次の差分ピークが出現するまでの画素数である。
【0029】
ブロックサイズ積算部150は、測定したピーク間距離の値(画素数)毎に、同じ値が測定された回数を積算する。このとき、全画面内または着目領域内で同じ値が測定された回数を積算し、履歴を生成する。図2Cにブロックサイズ検出部130の手順を示す。水平方向の画素列が入力される場合、差分が抽出され(水平方向差分抽出131)、抽出された差分から差分ピークが検出され8差分ピーク検出132)、隣接する差分ピーク間の距離が測定され(ピーク間距離測定133)、測定されたピーク間距離がブロックサイズ(ブロックサイズの候補)として出力される。垂直方向の画素列が入力される場合にも水平方向と同様に、垂直方向差分抽出134、差分ピーク検出135、及びピーク間距離測定136の手順で処理される。
【0030】
拡大縮小率判定部170は、全画面内または着目領域内で、最も多く測定されるピーク間距離(支配的なピーク間距離)を水平方向または垂直方向のブロックサイズ検出結果として出力する。ブロックサイズ積算部150は、履歴に含まれるピーク間距離の積算回数が少ない、若しくは支配的なピーク間距離がなければ、ブロックサイズが検出できないと判定する。例えば、拡大縮小率判定部170は、支配的なピーク間距離が存在するか否かは、例えば、履歴積算数の値が、所定の値(積算数閾値)より大きいピーク間距離が存在するか否かにより検出する。積算数閾値は、少なくとも一つのピーク間距離が存在することを検出できる数値が設定され、予め装置内に保持される。拡大縮小率判定部170は、積算数閾値より履歴積算数が大きく、かつ、最も積算数が大きいピーク間距離を、支配的なピーク間距離と判定し、積算数閾値より履歴積算数が大きいピーク間距離が存在しない場合、支配的なピーク間距離が存在しないと判定する。
図3Aから図3Dは、ピーク間距離の履歴積算数の一例を示す図であり、各ピーク間距離の値が測定された回数で示している。
【0031】
拡大縮小率判定部170は、ブロックサイズ(水平方向または垂直方向)検出の結果から、以下の基準で拡大縮小率(水平方向または垂直方向)を判定する。
検出したブロックサイズが"8"の場合は、等倍と判定する。(図3A)。
検出したブロックサイズが"8"より小さい場合は、検出ブロックサイズと"8"との比率を縮小率と判定する(図3B)。
検出したブロックサイズが"8"より大きい場合、検出ブロックサイズと"8"との比率を拡大率と判定する(図3C)。
ブロックサイズ検出できない場合、拡大縮小率不明と判定する(図3D)。
【0032】
このように、ブロックサイズ規定値と測定したブロックサイズとを比較することによって、映像データの拡大縮小率を推定する。実施形態1では、ピーク間距離の測定値が一つに絞られた場合であるため、固定ブロックサイズ、例えば符号化方式がMPEG2であり、基準ブロックサイズが"8"であると特定される。以下に詳しく説明する。
【0033】
実施形態1のメカニズムおよび効果
図4は、地上波をSTB経由し、テレビで表示する一般的な映像処理の手順を示す図である。例えば、符号化方式としてMPEG2を用いる場合、STB2にMPEG2のストリームが入力されると、デコーダにより復号されて(S1)映像データが生成される。映像データにSTB2での映像処理(S2)、解像度変換(S3)が施され、RAW映像がHDMI/D端子を介してテレビ3へ出力される。テレビ3では、RAW映像が入力されると(S4)、テレビ側の映像処理(S5)、解像度変換(S6)が実施されて映像が表示される(S7)。
テレビ3では入力されたRAW映像がHD映像の場合に、この信号がSD映像からHD映像に変換(アップコンバート)された結果か、HD映像そのものか、その他の解像度から変換したもの、例えば、720pの映像(垂直解像度720ラインのプログレッシブ映像)をHD映像に変換、あるいは、WXGA(Wide eXtended Graphics Array)の映像からHD映像に変換などであるかを検出し、超解像や、NRなど映像処理機能に対して解像度に応じた適応処理を実施する。
【0034】
検出の原理は以下である。H.264、MPEG2などのCodecでは画面を複数ブロックに分割してから、それぞれのブロックについて符号化を行う。各ブロック間の量子化の差や、エンコード方式の違いなどの影響で、デジタル映像にはブロックノイズが生じる。また、復号では画面を固定サイズのブロックに分割して実施するので、ブロックの境界は画面の固定位置(例えば、図5の点線)に設定されることになる。MPEG2の場合、図5に示す様に画面が複数の8×8ブロックに分割される。画面を拡大・縮小する場合、この8×8ブロックの境界も同じ割合で拡大縮小される。解像度変換された映像の水平垂直ブロックサイズを検出した後、検出されたブロックサイズと該当符号化方式(MPEG2)のブロックサイズとの比率を求めれば、該当映像の拡大縮小率を導出できる。図5の様に、縮小映像の縮小率は(bx1/8,bh1/8)、拡大映像の拡大率は(bx2/8,bh2/8)である。
【0035】
ブロックサイズを検出する際には、水平方向と垂直方向とに分けて検出する。画素差分ピーク間距離の長さごとに、画面内で測定された回数の総和を積算して履歴を作成する。全画面または着目領域の積算完了後、各距離の履歴積算数のうち支配的なものを全画面または着目領域のブロックサイズとする。以上により、水平ブロックサイズ、垂直ブロックサイズが判定できる。
判定したブロックサイズ(ブロックサイズ判定値)と規定したブロックサイズ(ブロックサイズ規定値、MPEG2では"8")の比率を、映像の拡大縮小率として判定する。
【0036】
実施形態2.
実施形態2では、実施形態1に対して、拡大縮小率判定部170の機能を改良した場合を説明する。これにより、拡大縮小率判定の精度が向上することが期待できる。
実施形態2の映像データ処理装置の基本的な構成は、図1、2Aに示す実施形態1と同様である。ここでは、拡大縮小率判定部170の機能について、実施形態1との相違点を説明する。
【0037】
拡大縮小率判定部170では、実施形態1と同様に、全画面内または着目領域内で、最も多く測定されるピーク間距離(以降適宜、「支配的ピーク間距離」という)を水平方向または垂直方向のブロックサイズ検出結果として出力するが、その後の処理が異なる。拡大縮小率判定部170は、支配的ピーク間距離を検出した後、検出した支配的ピーク間距離から"1"を減じた距離もしくは支配的ピーク間距離に"1"を加えた距離が、2番目に多く測定されるピーク間距離(以降適宜、「2番目に支配的なピーク間距離」という)であることを検出した場合、線形内挿法や、二次内挿法などを利用し、小数精度のブロックサイズ検出を行う。ブロックサイズ検出の実施例を以下に示す。
(実施例2−1)支配的ピーク間距離と2番目に支配的なピーク間距離が"6"と"7"の時、ブロックサイズを"6.5"と検出し、縮小率を0.81(=6.5/8)に判定する(図6)。
(実施例2−2)支配的ピーク間距離と2番目に支配的なピーク間距離が"6"と"7"の時、"6"と"7"それぞれの履歴積算数から、線形内挿法や二次内挿法を用いて、"6"から"7"の範囲内にブロックサイズを検出し、検出したブロックサイズbsから縮小率をbs/8と判定する。
【0038】
実施形態2のメカニズムおよび効果
上述した(実施例2−1)、(実施例2−2)の具体例に示すように、実施形態2では非整数のブロックサイズ検出を実現する。
元映像データに対して任意倍率で拡大・縮小され、ブロックサイズが整数ではない場合が、多くある。8×8ブロックを0.8倍で縮小する場合、ブロックサイズは6.4×6.4になる。ところが、ピーク間距離を用いる方式では、検出したピーク間距離は整数である。その結果、ブロックサイズ検出履歴には、6.4と隣接する整数である6と7に二つの支配的なピーク間距離が積算される。
かかる状況の場合に、上述した(実施例2−1)では、"6"と"7"の平均の"6.5"として検出される。(実施例2−2)は、(実施例2−1)に比べ、より検出精度を向上させるものである。検出するブロックサイズ(ブロックサイズ判定値)は隣接する二つの支配的なピーク間距離の線形内挿法や二次内挿法を用いた合成により求める。式は以下となる。式中、ブロックサイズAが支配的ピーク間距離、ブロックサイズBが2番目に支配的なピーク間距離である。Weight0,Weight1は、二つの支配的なピーク間距離の履歴積算数により導出する係数であり、Weight0とWeight1との和が"1"になるような値が設定される。
ブロックサイズ判定値=Weight0×ブロックサイズA+Weight1×ブロックサイズB
(ただし、Weight0+Weight1=1)・・・・・(2)
【0039】
実施形態3.
実施形態3では、実施形態1または2に対して、拡大縮小率判定部170を改良した場合を説明する。これにより、MPEG2だけではなくH.264で圧縮された映像の拡大縮小率を検出する。
実施形態3の映像データ処理装置の基本的な構成は、図1、2Aに示す実施形態1と同様である。ここでは、拡大縮小率判定部170の機能について、実施形態1、2との相違点を説明する。
【0040】
拡大縮小率判定部170では、実施形態1と同様に、全画面内または着目領域内で、支配的ピーク間距離を水平方向または垂直方向のブロックサイズ検出結果として出力するが、その後の処理が異なる。拡大縮小率判定部170は、ブロックサイズ積算部150が積算したピーク間距離履歴(履歴積算数)に、複数の支配的なピーク間距離が出現する場合に、複数のピーク間距離それぞれを検出する。複数の支配的なピーク間距離が出現するか否かは、例えば、履歴積算数の値が、所定の値(積算数閾値)より大きいピーク間距離が複数あるか否かにより検出する。積算数閾値は、複数のピーク間距離が存在することを検出できる数値が設定され、予め装置内に保持される。
【0041】
拡大縮小率判定部170は、複数の支配的なピーク間距離の比率が1:2:4の場合に、H.264のコンテンツと判定し、拡大縮小率を検出する。ブロックサイズ検出の実施例を以下に示す。
(実施例3−1)複数の支配的なピーク間距離が"4,8,16"と検出した場合に(図7A)、等倍のH.264映像として検出する。
(実施例3−1)複数の支配的なピーク間距離が"3,6,12"と検出した場合に(図7B)、0.75倍縮小したH.264映像として検出する。
より一般化した拡大縮小率導出方法の例を以下に説明する。支配的なピーク間距離をb0,b1,b2(b0<b1<b2,b0,b1,b2は実施形態3の構成で算出した小数精度のブロックサイズであることが望ましい)と検出し、それぞれの履歴積算数がn0,n1,n2(n0:b0の積算数、n1:b1の積算数、n2:b2の積算数)の場合に、H.264映像として検出し、拡大縮小率は式(3)、(4)のいずれかで計算する。ただし、拡大縮小率は、式(3)、(4)以外の計算式を用いて算出してもよい。
【0042】
【数1】

【0043】
実施形態3のメカニズムおよび効果
H.264様な複数のブロックサイズでエンコードされるデジタルコンテンツに対して、検出するブロックサイズも複数存在する。この特徴を利用し、複数のブロックサイズ検出する場合に、H.264とMPEG2のコンテンツの判定が出来る。
H.264として検出する場合に、複数のブロックサイズとH.264ブロックサイズ(4,8,16)の比率から、入力映像データの拡大縮小率の特定が可能である。
【0044】
実施形態4.
実施形態4では、実施形態1から3に対して、前処理部の機能を強化した場合を説明する。これにより、拡大映像のブロック境界検出を高性能化する。
前処理部110は、元映像データに対して、検出方向と直交する方向にLPFを掛けること(処理1)は、実施形態1と同様である。
その後、前処理部110は、検出方向にバンドパスフィルタ(BPF)を掛けて、元映像データ(ORG)に加算する(特定周波数強調)(処理2)。
前処理部110は、処理2において元映像データに加算した結果(ORG+BPF)を、処理1の結果の空間位置的に近傍の最大・最小値の間にクリッピング(CLIP)する。
【0045】
実施形態4のメカニズムおよび効果
例えば、図8の様な拡大縮小されていない映像に対しては、特に前処理を必要とせず、ブロック境界を感度よく検出できる。図8中、左側に示す長方形の映像において、矢印で示す方向が水平方向であり、長方形の映像中、左側半分(網かけのない部分)と右側半分(網かけ部分)の輝度が異なる。
これに対して、例えば、図9の様に拡大された映像の場合には、拡大処理によるブロック境界の変形の影響を考慮する必要がある。図9中、左側に示す長方形の映像において、長方形の映像中、左側部分(網かけのない部分)、右側部分(網かけ部分)との間に中央部分(右側部分より薄い網かけ部分)があるが、これはブロックサイズの拡大によりノイズが生じた領域である。単純な隣接差分方式では、ブロック境界の位置を特定することは困難である。実施形態1で説明した方式の前処理では、先ず入力映像データの特定周波数成分に対して強調処理を行うが、その際に生じるピーク検出に悪影響を及ぼすRingingなどの問題を抑えるために、強調結果に対して、入力映像データの近傍の最大最小値範囲内に制約を掛ける。
BPFを用いる理由を図10に示す。図10左側は座標−色値プロット、図10右側は周波数分解プロットである。図10上段と中段は、理解を容易とする為の、直流成分とインパルスの例である。直流成分は低周波数にピークを持ち、インパルスの周波数は全周波数域に存在する。図10下段は本発明の検出対象とするブロックノイズの場合である。ブロックノイズのその周波数分解結果は、ブロックサイズに相当する周波数とその高調波に複数のピークを持つ波形となる。ブロックサイズの検出精度を高める為には、検出対象とするブロックサイズにあわせて、BPFの帯域を選定する事が有効である。
【0046】
実施形態5.
実施形態5では、実施形態4に対して、前処理部の機能をさらに改良した場合を説明する。これにより、拡大映像のブロック境界検出を高性能化する。具体的には、前処理部110が、検出した拡大縮小率を、BPF帯域に動的にフィードバックする事により、拡大縮小率検出精度を向上させる。
【0047】
実施形態5のメカニズムおよび効果
さらなる機能拡張として、検出した拡大縮小率をフィードバックしBPFの通過帯域を動的に調整することも考えられる。
拡大縮小率が不明な段階では、BPF通過帯域を広くとり概略な拡大縮小率を検出する。その上でかかる概略拡大縮小率にしたがってBPF通過帯域を狭くする。
例えば、概略検出によりMPEG2の映像を約2倍拡大したものと検出した場合に(ブロックサイズ16)、概略拡大縮小率に従って動的にBPFの帯域を周期32ピクセル(2×16=32)に調整すれば、ブロック境界を検出精度が向上し、拡大縮小率をより正確に検出できる。
【0048】
その他の実施形態
上記各実施形態は、図1に示す映像データ処理装置を基本構成として、相互に組み合わせることが可能である。
例えば、実施形態1では、固定ブロックサイズCodec対応、整数精度ブロックサイズ検出による拡大縮小率検出、実施形態2では、固定ブロックサイズCodec対応、小数精度ブロックサイズ検出による拡大縮小率検出、実施形態3では、可変ブロックサイズCodec対応、ブロックサイズ検出による拡大縮小率検出を説明した。図1に示す映像データ処理装置は、実施形態1から3のいずれか一つを実現する構成であってもよいし、二つ以上を実現する構成であってもよい。また、実施形態4では、拡大映像に対するブロックサイズサイズ検出高性能化、実施形態5では、拡大映像に対するブロックサイズサイズ検出高性能化(動的制御)について説明したが、実施形態4、あるいは実施形態4、5で説明した前処理を実施形態1から3の少なくとも一つを実現する構成と組み合わせることが可能である。
【0049】
また、上記各実施形態で説明した、映像データ処理装置及び映像データ方法は、コンピュータに各手段を実行させるプログラムによって実現することができる。プログラムは、コンピュータ内のメモリにロードされ、CPU(Central Processing Unit)の制御のもとで実行される。
また、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0050】
以上説明したように、上記各実施形態によれば、エントロピー圧縮・展開後に拡大縮小された映像データのブロックサイズを検出し、該当映像の拡大縮小率を検出することができる。特に、符号化方式のブロックサイズに基づいて拡大縮小率を検出するため、従来技術に比べて容易な装置、方法により実現することができる。これにより、検出した倍率に適応して後段の映像処理(画像処理)を実施する。
【0051】
例えば、特許文献2の技術は、スケーリング後にエントロピー圧縮した映像のブロック中の空間周波数を計測して、圧縮前のスケーリングにおける拡大率を検出する。一方、本発明は、ブロックサイズ検出によって、エントロピー圧縮した映像を展開した後のスケーリングにおける拡大率を検出する。本発明では、圧縮ブロック中の絵柄ではなく、圧縮・展開・スケーリングを経た映像の圧縮ブロックの境界を検出し、ブロックサイズを推定してから、拡大率を求める方式である。従って、本発明は、ブロック内の絵柄に関わらず、検出結果に影響を及すことが無いという有利な効果がある。
【0052】
また、特許文献3の技術は、ブロックサイズ検出に再スケーリングを必要とする。一方、本発明は、ブロックサイズ検出に再スケーリングは不要であり、また一度の処理で様々なブロックサイズの検出が可能な為、特許文献3の技術に比べて実装コストが小さいという有利な効果を奏する。また、本発明では、如何なる場合でも入力映像データの1ピクセル精度もしくは小数ピクセル精度でブロックサイズを検出できるという有利な効果を奏する。
【0053】
なお、本発明は上記に示す実施形態に限定されるものではない。本発明の範囲において、上記実施形態の各要素を、当業者であれば容易に考えうる内容に変更、追加、変換することが可能である。
【符号の説明】
【0054】
1 アンテナ
2 STB
3 テレビ
4 DVD
5 DVDプレイヤー
10 映像データ処理装置
11 映像入力部
12 映像処理部
13 映像出力部
100 拡大縮小率推定部
110 前処理部
111 垂直LPF
112 水平BPF
113、118 Max/Min
114、119 加算器
115、120 CLIP
116 水平LPF
117 垂直BPF
130 ブロックサイズ検出部
150 ブロックサイズ積算部
170 拡大縮小率判定部

【特許請求の範囲】
【請求項1】
映像データの拡大縮小率を算出する映像データ処理装置であって、
映像データに含まれる水平方向と垂直方向との少なくとも一方の複数の画素列のノイズを除去する前処理部と、
前記複数の画素列について、隣接する画素間の画素値の差分を抽出し、抽出した差分が差分閾値より大きくなる差分ピークを検出し、隣接する差分ピーク間の距離を示すピーク間距離を測定するブロックサイズ検出部と、
前記複数の各画素列について前記ピーク間距離を測定した回数を積算し、ピーク間距離毎の積算数を記録するブロックサイズ積算部と、
前記ブロックサイズ積算部が記録する前記積算数が積算数閾値より大きいピーク間距離を検出した場合、検出したピーク間距離をブロックサイズ判定値として判定し、判定したブロックサイズ判定値と任意の符号化方式が採用するブロックサイズとなるブロックサイズ規定値とを比較して、映像データの水平方向または垂直方向の拡大縮小率を判定する拡大縮小率判定部と、を備える映像データ処理装置。
【請求項2】
前記拡大縮小判定部は、前記積算数が積算数閾値より大きいピーク間距離を一つ検出した場合、検出した一つのピーク間距離をブロックサイズ判定値として判定し、前記ブロックサイズ判定値が前記ブロックサイズ規定値との比率を、前記拡大縮小率と判定することを特徴とする請求項1記載の映像データ処理装置。
【請求項3】
前記拡大縮小判定部は、前記積算数が積算数閾値より大きいピーク間距離を二つ検出し、かつ検出した二つのピーク間距離が最小単位の距離差である場合、検出した二つのピーク間距離を用いてブロックサイズ判定値を算出し、算出したブロックサイズ判定値と前記ブロックサイズ規定値とを比較して、前記拡大縮小率を判定することを特徴とする請求項1または2記載の映像データ処理装置。
【請求項4】
前記拡大縮小判定部は、前記積算数が積算数閾値より大きいピーク間距離を二つ以上検出し、かつ検出した二つ以上のピーク間距離が任意の符号化方式のブロックサイズ規定値と対応する場合、検出した二つ以上のピーク間距離をブロックサイズ候補値として判定し、判定したブロックサイズ判定値と前記任意の符号化方式のブロックサイズ規定値とを比較して、前記拡大縮小率を判定することを特徴とする請求項1乃至3のいずれか一項に記載の映像データ処理装置。
【請求項5】
映像データの拡大縮小率を算出する映像データ処理装置が行う映像データ処理方法であって、
映像データの水平方向または垂直方向の複数の画素列のノイズを除去し、
前記複数の画素列について、隣接する画素間の画素値の差分を抽出して差分が大きくなるピーク画素を検出すること、及び隣接するピーク画素間の距離を示すピーク間距離を測定することを実施し、
前記複数の画素列について、前記ピーク間距離を測定した回数を積算してピーク間距離毎の積算数を記録し、
記録した前記積算数が積算数閾値より大きいピーク間距離を検出した場合、検出したピーク間距離をブロックサイズ判定値として判定し、判定したブロックサイズ判定値と任意の符号化方式が採用するブロックサイズとなるブロックサイズ規定値とを比較して、映像データの水平方向または垂直方向の拡大縮小率を判定する映像データ処理方法。

【図1】
image rotate

【図2A】
image rotate

【図2B】
image rotate

【図2C】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図3C】
image rotate

【図3D】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2012−247490(P2012−247490A)
【公開日】平成24年12月13日(2012.12.13)
【国際特許分類】
【出願番号】特願2011−116955(P2011−116955)
【出願日】平成23年5月25日(2011.5.25)
【出願人】(302062931)ルネサスエレクトロニクス株式会社 (8,021)
【Fターム(参考)】