JPWO2007013183A1 - 映像障害検出装置 - Google Patents
映像障害検出装置 Download PDFInfo
- Publication number
- JPWO2007013183A1 JPWO2007013183A1 JP2007526803A JP2007526803A JPWO2007013183A1 JP WO2007013183 A1 JPWO2007013183 A1 JP WO2007013183A1 JP 2007526803 A JP2007526803 A JP 2007526803A JP 2007526803 A JP2007526803 A JP 2007526803A JP WO2007013183 A1 JPWO2007013183 A1 JP WO2007013183A1
- Authority
- JP
- Japan
- Prior art keywords
- video
- freeze
- macroblock
- picture
- determined
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
- H04N17/004—Diagnosis, testing or measuring for television systems or their details for digital television systems
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
入力された符号化映像信号から抽出された1ピクチャのデータ量と、信号の間引きの度合いを示すQS値とに基づいて、映像障害を検出するので、予めマーカを埋め込む必要はなく手間がかからず、またマーカを埋め込まれていない既存の映像検出もできる。
Description
本発明は、符号化映像信号における映像障害等を検出する映像障害検出装置に関する。
近年の映像処理技術の向上により、ハイビジョンテレビ放送など高画質な映像が伝送可能となってきている。ここで、ハイビジョン放送にかかるデジタル映像信号は、無線或いは有線の伝送手段を介して各家庭に伝送されることとなる。しかるに、伝送手段の伝送容量が限られていることから、データ容量が大きいデジタル映像信号は、圧縮されて伝送されることが多い。圧縮の手法としては、いわゆるMPEG(Moving Picture Experts Group)に従う手法が知られている。
ところが、圧縮されたデジタル映像を伸長したときに、画面の一部や全体が静止するフリーズや、モザイク状のノイズが生じるブロック歪などの映像欠陥が生じる恐れがある。かかる欠陥は、符号化映像を規定の伝送レートに収めるために画像の情報量を削減することが、その原因の1つと考えられる。これに対し、特開2002−247606に開示された技術によれば、符号化前の画像にマーカを埋め込み、復号化画像におけるマーカ検出結果に基づいて画質評価を行なっている。
しかしながら、かかる従来技術によれば、画質評価を行なうには、予め符号化前の画像にマーカを埋め込む処理が必要であり、埋め込まれていない画像については画質評価できないという問題がある。
ところが、圧縮されたデジタル映像を伸長したときに、画面の一部や全体が静止するフリーズや、モザイク状のノイズが生じるブロック歪などの映像欠陥が生じる恐れがある。かかる欠陥は、符号化映像を規定の伝送レートに収めるために画像の情報量を削減することが、その原因の1つと考えられる。これに対し、特開2002−247606に開示された技術によれば、符号化前の画像にマーカを埋め込み、復号化画像におけるマーカ検出結果に基づいて画質評価を行なっている。
しかしながら、かかる従来技術によれば、画質評価を行なうには、予め符号化前の画像にマーカを埋め込む処理が必要であり、埋め込まれていない画像については画質評価できないという問題がある。
本発明は、かかる問題点に鑑みてなされたものであり、符号化映像信号から映像の欠陥を検出するのに適した映像障害検出装置を提供することを目的とする。
本発明の映像障害検出装置は、MPEG(Moving Picture Experts Group)規格に従う符号化映像信号に含まれる符号化情報に基づいて映像障害を検出する映像障害検出装置において、
入力された符号化映像信号から抽出された1ピクチャのデータ量と、MPEGの符号化において用いられるQS(Quantiser Scale)値とに基づいて、映像障害を検出することを特徴とする。
本発明によれば、入力された符号化映像信号から抽出された1ピクチャのデータ量と、MPEG符号化で用いられるQS値とに基づいて、映像障害を検出するので、予めマーカを埋め込む必要はなく、既存の符号化映像信号に対して障害検出が可能になる。
更に、前記映像障害は映像のフリーズであり、ピクチャ単位での前記QS値の平均値が、第1のフリーズ所定値未満の場合、映像のフリーズが生じた可能性が低いと判断すると好ましい。
更に、前記映像障害は映像のフリーズであり、ピクチャ単位での前記QS値の平均値が、第1のフリーズ所定値未満であり、なおかつ、1ピクチャのデータ量が第2のフリーズ所定値未満の場合、映像のフリーズが生じた可能性が低いと判断すると好ましい。
更に、1ピクチャを構成するマクロブロックにおいて、マクロブロックデータが符号化されず、スキップされたマクロブロック数をカウントし、1ピクチャのマクロブロック全数に対する、カウントされた前記マクロブロックの数が第1のフリーズ所定割合を超えた場合、そのピクチャがフリーズしていると判断すると好ましい。
更に、1ピクチャの横方向のマクロブロックを1マクロブロックラインとして、1マクロブロックラインにおいて、スキップされたマクロブロック数をカウントし、その数が第2のフリーズ所定割合を超えた場合、そのマクロブロックラインはフリーズしていると判断すると好ましい。
更に、1ピクチャのマクロブロックライン全数に対する、前記フリーズしたマクロブロックラインの数が第3のフリーズ所定割合を超えた場合、そのピクチャがフリーズしていると判断すると好ましい。
本発明の映像障害検出装置は、MPEG(Moving Picture Experts Group)規格に従う符号化映像信号に含まれる符号化情報に基づいて映像障害を検出する映像障害検出装置において、
入力された符号化映像信号が画面を複数に分割して符号化されている場合、分割された領域におけるQS(Quantiser Scale)値に基づいて、映像障害を検出することを特徴とする。
更に、前記映像障害はブロック歪であり、ピクチャ単位での前記QS値の平均値が、第1のブロック歪所定値未満であり、なおかつ、1ピクチャの復号データに対し、輝度信号に第2のブロック歪所定値を加算した値と、色差信号の絶対値との総和を平均化し、その平均値が第3のブロック歪所定値以上の場合、ブロック歪が生じたと判断すると好ましい。
更に、前記映像障害は映像フリーズであり、分割された領域単位での前記QS値の平均値が、第3のフリーズ所定置未満の場合、映像のフリーズが生じた可能性が低いと判断すると好ましい。
更に、画面の上下で隣接する分割された領域において、マクロブロックデータが符号化されず、スキップされたマクロブロック数をそれぞれカウントし、上の領域に対しては、領域の下半分のマクロブロックにおいて、スキップされたマクロブロック数をカウントし、下の領域に対しては、領域の上半分のマクロブロックにおいて、スキップされたマクロブロックの数をカウントするとともに、それぞれの領域において、上半分又は下半分の領域におけるスキップされたマクロブロックの割合が、第3のフリーズ所定割合未満であるとき、映像のフリーズが生じた可能性が低いと判断すると好ましい。
更に、当該領域の上半分のマクロブロックラインにおけるスキップされたマクロブロックの割合が第3のフリーズ所定割合を超えるとき、当該領域の上から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、当該領域のスキップされたマクロブロックの全数に対する割合が第4のフリーズ所定割合以上であり、隣接する上の領域において下から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、上の領域におけるスキップされたマクロブロックの全数に対する割合が第5のフリーズ所定割合以下であるとき、当該領域において映像のフリーズが発生したと判断すると好ましい。
更に、当該領域の下半分のマクロブロックラインにおけるスキップされたマクロブロックの割合が第3のフリーズ所定割合を超えるとき、当該領域の下から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、当該領域のスキップされたマクロブロックの全数に対する割合が第4のフリーズ所定割合以上であり、隣接する下の領域において上から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、下の領域におけるスキップされたマクロブロックの全数に対する割合が第5のフリーズ所定割合以下であるとき、当該領域において映像のフリーズが発生したと判断することを特徴とすると好ましい。
更に、前記符号化映像信号に多重化された符号化音声信号を復号し、所定の区間で音声信号レベルが第1の音声所定値以下となる連続するサンプル数をカウントし、そのカウントが第2の音声所定値以上であるとき、その区間の音声信号に対するスケールファクタにおいて、スケールファクタ値がゼロであり且つスケールファクタの個数が1の音声信号が存在する場合、その区間に無音状態があると判断し、スケールファクタ値がゼロ以外であり且つスケールファクタの個数が2以上の音声信号が存在する場合、その区間にミュートが発生したと判断すると好ましい。
本発明の映像障害検出装置は、MPEG(Moving Picture Experts Group)規格に従う符号化映像信号に含まれる符号化情報に基づいて映像障害を検出する映像障害検出装置において、
入力された符号化映像信号から抽出された1ピクチャのデータ量と、MPEGの符号化において用いられるQS(Quantiser Scale)値とに基づいて、映像障害を検出することを特徴とする。
本発明によれば、入力された符号化映像信号から抽出された1ピクチャのデータ量と、MPEG符号化で用いられるQS値とに基づいて、映像障害を検出するので、予めマーカを埋め込む必要はなく、既存の符号化映像信号に対して障害検出が可能になる。
更に、前記映像障害は映像のフリーズであり、ピクチャ単位での前記QS値の平均値が、第1のフリーズ所定値未満の場合、映像のフリーズが生じた可能性が低いと判断すると好ましい。
更に、前記映像障害は映像のフリーズであり、ピクチャ単位での前記QS値の平均値が、第1のフリーズ所定値未満であり、なおかつ、1ピクチャのデータ量が第2のフリーズ所定値未満の場合、映像のフリーズが生じた可能性が低いと判断すると好ましい。
更に、1ピクチャを構成するマクロブロックにおいて、マクロブロックデータが符号化されず、スキップされたマクロブロック数をカウントし、1ピクチャのマクロブロック全数に対する、カウントされた前記マクロブロックの数が第1のフリーズ所定割合を超えた場合、そのピクチャがフリーズしていると判断すると好ましい。
更に、1ピクチャの横方向のマクロブロックを1マクロブロックラインとして、1マクロブロックラインにおいて、スキップされたマクロブロック数をカウントし、その数が第2のフリーズ所定割合を超えた場合、そのマクロブロックラインはフリーズしていると判断すると好ましい。
更に、1ピクチャのマクロブロックライン全数に対する、前記フリーズしたマクロブロックラインの数が第3のフリーズ所定割合を超えた場合、そのピクチャがフリーズしていると判断すると好ましい。
本発明の映像障害検出装置は、MPEG(Moving Picture Experts Group)規格に従う符号化映像信号に含まれる符号化情報に基づいて映像障害を検出する映像障害検出装置において、
入力された符号化映像信号が画面を複数に分割して符号化されている場合、分割された領域におけるQS(Quantiser Scale)値に基づいて、映像障害を検出することを特徴とする。
更に、前記映像障害はブロック歪であり、ピクチャ単位での前記QS値の平均値が、第1のブロック歪所定値未満であり、なおかつ、1ピクチャの復号データに対し、輝度信号に第2のブロック歪所定値を加算した値と、色差信号の絶対値との総和を平均化し、その平均値が第3のブロック歪所定値以上の場合、ブロック歪が生じたと判断すると好ましい。
更に、前記映像障害は映像フリーズであり、分割された領域単位での前記QS値の平均値が、第3のフリーズ所定置未満の場合、映像のフリーズが生じた可能性が低いと判断すると好ましい。
更に、画面の上下で隣接する分割された領域において、マクロブロックデータが符号化されず、スキップされたマクロブロック数をそれぞれカウントし、上の領域に対しては、領域の下半分のマクロブロックにおいて、スキップされたマクロブロック数をカウントし、下の領域に対しては、領域の上半分のマクロブロックにおいて、スキップされたマクロブロックの数をカウントするとともに、それぞれの領域において、上半分又は下半分の領域におけるスキップされたマクロブロックの割合が、第3のフリーズ所定割合未満であるとき、映像のフリーズが生じた可能性が低いと判断すると好ましい。
更に、当該領域の上半分のマクロブロックラインにおけるスキップされたマクロブロックの割合が第3のフリーズ所定割合を超えるとき、当該領域の上から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、当該領域のスキップされたマクロブロックの全数に対する割合が第4のフリーズ所定割合以上であり、隣接する上の領域において下から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、上の領域におけるスキップされたマクロブロックの全数に対する割合が第5のフリーズ所定割合以下であるとき、当該領域において映像のフリーズが発生したと判断すると好ましい。
更に、当該領域の下半分のマクロブロックラインにおけるスキップされたマクロブロックの割合が第3のフリーズ所定割合を超えるとき、当該領域の下から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、当該領域のスキップされたマクロブロックの全数に対する割合が第4のフリーズ所定割合以上であり、隣接する下の領域において上から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、下の領域におけるスキップされたマクロブロックの全数に対する割合が第5のフリーズ所定割合以下であるとき、当該領域において映像のフリーズが発生したと判断することを特徴とすると好ましい。
更に、前記符号化映像信号に多重化された符号化音声信号を復号し、所定の区間で音声信号レベルが第1の音声所定値以下となる連続するサンプル数をカウントし、そのカウントが第2の音声所定値以上であるとき、その区間の音声信号に対するスケールファクタにおいて、スケールファクタ値がゼロであり且つスケールファクタの個数が1の音声信号が存在する場合、その区間に無音状態があると判断し、スケールファクタ値がゼロ以外であり且つスケールファクタの個数が2以上の音声信号が存在する場合、その区間にミュートが発生したと判断すると好ましい。
図1は、本実施の形態にかかる映像解析装置10を示すブロック図である。
図2は、符号化映像信号の構成を概略的に示す図である。
図3は、フリーズマクロブロックラインを説明するための図である。
図4は、映像処理装置10において行われるフリーズピクチャを判定する処理を示すフローチャートである。
図5は、映像処理装置10において行われるブロック歪を判定する処理を示すフローチャートである。
図6は、映像処理装置10において行われるミュートを判定する処理を示すフローチャートである。
図7は、フリーズマクロブロックラインを説明するための図である。
図8は、映像処理装置10において行われるフリーズピクチャ領域を判定する処理を示すフローチャートである。
図9は、音声サンプルの例を示す図である。
図2は、符号化映像信号の構成を概略的に示す図である。
図3は、フリーズマクロブロックラインを説明するための図である。
図4は、映像処理装置10において行われるフリーズピクチャを判定する処理を示すフローチャートである。
図5は、映像処理装置10において行われるブロック歪を判定する処理を示すフローチャートである。
図6は、映像処理装置10において行われるミュートを判定する処理を示すフローチャートである。
図7は、フリーズマクロブロックラインを説明するための図である。
図8は、映像処理装置10において行われるフリーズピクチャ領域を判定する処理を示すフローチャートである。
図9は、音声サンプルの例を示す図である。
以下、実施の形態を参照して本発明を説明する。図1は、本実施の形態にかかる映像処理装置10を示すブロック図である。図1において、TS入力インターフェース11には、符号化された映像信号と音声信号(具体的にはデジタル映像信号をMPEG−2により圧縮符号化し、また、デジタル音声信号をMPEG−2 Advanced Audio Codingにより圧縮符号化し、映像信号と多重化してトランスポート・ストリームにした信号)が入力され、これはTS処理部12において処理される。
エンコードパラメータ抽出部13により、処理された符号化映像信号からデータ量やQS値が抽出され、これらに基づいてエンコードパラメータ解析部14で解析が行われ、その解析結果に基づいて画質・音質判定部15で、画質劣化や音質劣化が判断されるようになっている。
図2は、符号化映像信号の構成を概略的に示す図である。符号化映像信号は、制御用の情報を含むシーケンスヘッダSHと、映像情報からなるピクチャグループGOPとを交互に連結した構成をとる。ピクチャグループGOPは、少なくとも1枚のIピクチャ、さらにBピクチャやPピクチャによって構成される。Iピクチャを例に取ると、1ピクチャは複数のスライスSからなる。スライスSは、1ピクチャ分の映像信号に対して、1ピクチャ上で横方向に切るように分割されたデータをいう。一つのスライスSは複数のマクロブロックMBから構成されている。一つのスライスSに含まれるマクロブロック数が一定でない場合もあり、横方向に複数のスライスが存在する場合もある。ここでは横方向のスライスを1つの単位として扱い、これをマクロブロックラインと呼ぶことにする。
一つのマクロブロックMBは、輝度信号と色差信号のサンプリングフォーマットが4:2:0の場合、16×16画素から成る輝度信号Yと、8×8画素から成る色差信号Cb、Crそれぞれ一つから構成される。一方、輝度信号と色差信号のサンプリングフォーマットが4:2:2の場合、16×16画素から成る輝度信号Yと、8×8画素から成る色差信号Cb、Crそれぞれ2つから構成される。
図3は、1ピクチャにおける正常なマクロブロックラインとフリーズマクロブロックラインを区別して示す図であり、簡略化するために、1マクロブロックラインは、1列で横に並んだ32個のマクロブロックから構成され、1ピクチャは縦に並んだ16本のマクロブロックラインからなるものとする。図3において、1マスは1つのマクロブロックを示し、これは図2に示すように16×16画素で構成されている。ハッチングされたマクロブロックは、符号化データのない、いわゆるスキップされたマクロブロック(特定マクロブロック)であり、白抜きのマクロブロックは正常なマクロブロックである。
静止画像では、ほとんど全てがスキップされたマクロブロックから構成される。一方、フリーズピクチャにおいても、スキップされたマクロブロックが多数存在するので、その切り分けが重要な課題となっている。
本実施の形態では、1マクロブロックライン中におけるスキップされたマクロブロック数が、第1のフリーズ所定割合Xを超えたときに、そのマクロブロックラインはフリーズマクロブロックラインと判断し(例えば図3で、10番目のマクロブロックライン)、それ以外は正常マクロブロックラインと判断する。又、フリーズマクロブロックラインに挟まれた正常マクロブロックラインは、フリーズマクロブロックラインと見なす(例えば図3で、11番目のマクロブロックライン)。1ピクチャにおけるフリーズマクロブロックラインの数が第2のフリーズ所定割合Yを超えたとき、そのピクチャは映像がフリーズしたフリーズピクチャであると判断する。ここでは、X=80%、Y=20%と設定すると、5,6番目のフリーズマクロブロックラインに加え、9〜16番目のマクロブロックラインがフリーズマクロブロックラインとみなされるので、このピクチャはフリーズピクチャであると判定できる。
図4は、映像処理装置10において行われるフリーズピクチャを判定する処理を示すフローチャートである。ここで、フローチャート内で用いる符号は以下の意味を持つ。
QS値:Quantiser Scale(マクロブロックの量子化ステップ・サイズを表す)値
M(Qs):QS値の平均値
Ib:符号化映像信号の1ピクチャのデータ量(単位はビット)
f_line_cnt:連続するフリーズマクロブロックラインの数
f_line_max:連続するフリーズマクロブロックラインの最大数
f_mb_cnt:スキップされたマクロブロックの数
mb_width:1マクロブロックラインにおけるマクロブロックの全数
mb_height:1ピクチャにおけるマクロブロックラインの全数
b1_stat[i]:i番目のマクロブロックラインの状態(0:正常マクロブロックライン、1:フリーズマクロブロックライン)
result:判定結果(0=正常ピクチャ、1=フリーズピクチャ)
図4のステップS101において、判定対象がPピクチャもしくはBピクチャか否かを判断する。ここで、判定対象がPピクチャもしくはBピクチャでないと判断すれば、ステップS129に進んで、映像障害はないとする判断結果(0=result)を出力して処理フローを終了する。
一方、判定対象がPピクチャもしくはBピクチャであると判断した場合、ステップS102でM(Qs)を計算し、ステップS103でIbを計算する。Quantiser Scaleの平均値は、スキップされたマクロブロックを除く全マクロブロックのQuantiser Scaleを平均して求める。マクロブロックにQuantiser Scaleが設定されていない場合は、スライスヘッダのQuantiser Scaleを、そのスライス内のマクロブロックのQuantiser Scaleとして平均値を計算する。Ibは、エンコードパラメータ抽出部に入力されるビデオのPES(Packetized Elementary Stream)パケットに含まれるPES_packet_data_byteのビット数をカウントして求める。
更にステップS104で、求めたM(Qs)が50(第1のフリーズ所定値)以上であり且つ求めたIbが150,000(第2のフリーズ所定値)以上であるか否かを判断する。求めたM(Qs)が50未満であり或いは求めたIbが150,000未満であれば、静止画像である可能性が高いので、ステップS129に進んで、映像障害はないとする判断結果(0=result)を出力して処理フローを終了する。
これに対し、求めたM(Qs)が50以上であり且つ求めたIbが150,000以上であれば、ステップS105で、マクロブロックラインのカウンタを初期化(i=1)として、ステップS106で、スキップされたマクロブロックのカウントを行う。
ステップS107において、1マクロブロックラインのマクロブロック全数mb_widthに対するスキップされたマクロブロックの数f_mb_cntの割合(f_mb_cnt×100/mb_width)を、80(第1のフリーズ所定割合)と比較する。(f_mb_cnt×100/mb_width)<80である場合、正常マクロブロックラインと判断するが、この場合、処理されたマクロブロックラインは正常マクロブロックラインである(b1_stat[i]=0)というフラッグをたてる(ステップS109)。
一方、(f_mb_cnt×100/mb_width)≧80である場合、フリーズマクロブロックラインと判断し、更にステップS108で、前マクロブロックラインがフリーズマクロブロックラインである(b1_stat[i]=1)というフラッグをたてる(ステップS109)。ステップS110で、i=i+1とし、ステップS111で、i>mb_heightであると判断されるまで(即ちマクロブロックライン全数を判定するまで)、ステップS106〜S110を繰り返す。
なお、図示していないが、1ピクチャを構成するマクロブロックにおいて、マクロブロックデータが符号化されず、スキップされたマクロブロック数をカウントし、1ピクチャのマクロブロック全数に対する、カウントされた前記マクロブロックの数が第1のフリーズ所定割合を超えた場合、そのピクチャがフリーズしていると判断するようにしても良い。
その後、ステップS112において、マクロブロックラインのカウンタをi=2とする。続くステップS113において、b1_stat[i−1]=1&b1_stat[i+1]か否かを判断する。b1_stat[i−1]=1&b1_stat[i+1]であるということは、判定対象となるマクロブロックラインが、フリーズマクロブロックラインに挟まれていることを示している。従って、この場合には、判定対象であるマクロブロックラインを正常であってもフリーズマクロブロックラインとみなし、ステップS114でb1_stat[i]=1とフラッグをたてる。一方、b1_stat[i−1]=1&b1_stat[i+1]でなければ、正常なマクロブロックラインとする。ステップS115で、i=i+1とし、ステップS116で、i≧mb_heightであると判断されるまで(即ちマクロブロックライン全数を判定するまで)、ステップS113〜S115を繰り返す。
ステップS117で、マクロブロックラインのカウンタを初期化(i=1)として、更にステップS118で、フリーズカウンタを初期化する(f_line_cnt=0:f_line_max=0)。ステップS119で、b1_stat[i]=1か否か判断し、b1_stat[i]=0ならば、ステップS120でi=i+1とした上で、ステップS118で、フリーズカウンタを初期化する。一方、b1_stat[i]=1ならば、ステップS121で、f_line_cnt=f_line_max=1とし、i=i+1とする。
更にステップS122で、b1_stat[i]=1か否か判断し、b1_stat[i]=1ならば、ステップS123で、f_line_cnt=f_line_max=1とし、i=i+1として、ステップS124で、i>mb_heightであると判断されるまで(即ちマクロブロックライン全数を判定するまで)、ステップS122〜S123を繰り返す。
一方、ステップS122で、b1_stat[i]=0ならば、ステップS126で、f_line_cnt>f_line_maxか否かが判断される。f_line_cnt>f_line_maxであると判断されれば、ステップS128でi=i+1とし、ステップS118へと戻る。一方、f_line_cnt>f_line_maxでないと判断されれば、ステップS127でf_line_cnt=f_line_maxとされ、ステップS128でi=i+1とし、ステップS118へと戻る。このようにして、1ピクチャにおけるフリーズしたマクロブロックラインの数を求めることができる。
ステップS125において、1ピクチャにおけるマクロブロックラインの全数mb_heightに対するフリーズしたマクロブロックの数f_line_cntの割合(f_line_cnt×100/mb_height)が、20(第2のフリーズ所定割合)以上であるか否かを判定する。(f_line_cnt×100/mb_height)≧20である場合、ステップS130で、映像のフリーズがあるとする判断結果(1=result)を出力して処理フローを終了する。これに対し、(f_line_cnt×100/mb_height)<20である場合には、ステップS129に進んで、映像のフリーズはないとする判断結果(0=result)を出力して処理フローを終了する。
次に、画面の複数箇所に分散してフリーズが発生する場合の検出方法について説明する。
MPEGエンコード時に、画面を複数に分割して処理する場合があり、分割された領域内でフリーズが発生する。図7にその例を示す。
図7において、ハッチングされたマクロブロックは、符号化データのないスキップされたマクロブロック、白抜きは正常なマクロブロックを表す。この例では、画面が水平方向に9分割されており、フリーズの原因となるスキップされたマクロブロックは、分割された領域内の下から2マクロブロックラインに存在する。
画面の分割方式は、水平方向に3分割や、格子状に6分割などがあり、またスキップされたマクロブロックも分割領域の上から数スライスに発生する場合がある。
図8は、映像処理装置10において行われるフリーズピクチャ領域を判定する処理を示すフローチャートである。ここで、フローチャート内で用いる符号は以下の意味をもつ。
MQs(i,j):分割領域(i,j)のQuantiser Scaleの平均値
SL_cnt(i,j):分割領域(i,j)のマクロブロックラインの数
SL2_mb_cnt(i,j):分割領域(i,j)の2マクロブロックラインのマクロブロック数
Sk_mb_cnt(i,j):分割領域(i,j)のスキップされたマクロブロックの全数
TSk_mb_cnt1(i,j):分割領域(i,j)の上から2マクロブロックラインにおけるスキップされたマクロブロックの数
BSk_mb_cnt1(i,j):分割領域(i,j)の下から2マクロブロックラインにおけるスキップされたマクロブロックの数
TSk_mb_cnt2(i,j):分割領域(i,j)の上から{SL_cnt(i,j)/2}マクロブロックラインにおけるスキップされたマクロブロックの数
BSk_mb_cnt2(i,j):分割領域(i,j)の下から{SL_cnt(i,j)/2}マクロブロックラインにおけるスキップされたマクロブロックの数
RT(i,j):分割領域(i,j)の上から2マクロブロックラインにおけるスキップされたマクロブロックの発生率
RB(i,j):分割領域(i,j)の下から2マクロブロックラインにおけるスキップされたマクロブロックの発生率
RST(i,j):分割領域(i,j)のスキップされたマクロブロックのうち、上から{SL_cnt(i,j)/2}マクロブロックラインに存在する割合
RSB(i,j):分割領域(i,j)のスキップされたマクロブロックのうち、下から{SL_cnt(i,j)/2}マクロブロックラインに存在する割合
M:横方向の画面分割数
N:縦方向の画面分割数
result:判定結果(0=正常ピクチャ領域、1=フリーズピクチャ領域)
ただしi=0〜N−1,j=0〜M−1
RT(i,j)、RB(i,j)、RST(i,j)、RSB(i,j)は以下の式で表される。
RT(i,j)={TSk_mb_cnt1(i,j)/SL2_mb_cnt(i,j)}×100
RB(i,j)={BSk_mb_cnt1(i,j)/SL2_mb_cnt(i,j)}×100
RST(i,j)={TSk_mb_cnt2(i,j)/Sk_mb_cnt(i,j)}×100
RSB(i,j)={BSk_mb_cnt2(i,j)/Sk_mb_cnt(i,j)}×100
以下のパラメータから次の判定を行ない、フリーズを検出する。まず、図8のステップS401で、判定対象がPピクチャもしくはBピクチャか否かを判断する。ここで、判定対象がPピクチャもしくはBピクチャでないと判断すれば、処理フローを終了する。
一方、判定対象がPピクチャもしくはBピクチャであると判断した場合、ステップS402でカウンタの初期化を行い、ステップS403でMQs(i,j)を計算する。続くステップS404で、MQs(i,j)を70(第3のフリーズ所定値)と比較し、これが70未満であれば、フリーズピクチャ領域ではないと見なし、ステップS415で、該当領域で映像のフリーズがないとする判断結果(0=result)を出力する。一方、MQs(i,j)が70以上であれば、ステップS405で、RST(i,j)、RSB(i,j)を計算する。
更にステップS406で、iが1以上であれば、ステップS407で、RST(i,j)を80(第3のフリーズ所定割合)と比較し、RST(i,j)が80以上であれば、ステップS408で、RT(i,j)、RB(i−1,j)を計算する。更に、ステップS409で、RT(i,j)が10(第4のフリーズ所定割合)以上で、且つRB(i−1,j)が5(第5のフリーズ所定割合)以下であるか否か判定する。RT(i,j)が10以上で、且つRB(i−1,j)が5以下である場合、ステップS410で、該当領域で映像のフリーズがあるとする判断結果(1=result)を出力し、フローはステップS416へと進む。
一方、ステップS406で、i<1であると判定された場合、又はステップS407で、RST(i,j)<80と判定された場合、或いはステップS409で、RT(i,j)が10以上でなく、またRB(i−1,j)が5以下でないと判断された場合、フローはステップS411へと進み、ここでi≦N−2であるか否か判断される。i≦N−2でないと判断されれば、フローはステップS416へと進むが、i≦N−2であると判断されれば、続くステップS412で、RSB(i,j)を80(第1のフリーズ所定割合)と比較する。RSB(i,j)が80以上でなければ、フローはステップS416へと進むが、RSB(i,j)が80以上であれば、ステップS413で、RB(i,j)、RT(i+1,j)を計算する。
更にステップS414で、RB(i,j)が10(第4のフリーズ所定割合)以上で、且つRT(i+1,j)が5(第5のフリーズ所定割合)以下であるか否か判断される。RB(i,j)が10以上でなく、或いはRT(i+1,j)が5以下でないと判断されれば、フローはステップS416へと進むが、RB(i,j)が10以上で、且つRT(i+1,j)が5以下であると判断されれば、ステップS410で、該当領域で映像のフリーズがあるとする判断結果(1=result)を出力し、フローはステップS416へと進む。
ステップS416では、jがM−1以上か否か判断し、j<M−1であれば、ステップS417でjを1つカウントアップしてフローをステップS403へと戻す。一方、j≧M−1であれば、ステップS418で、iがN−1以上か否か判断し、i<N−1であれば、ステップS419でiを1つカウントアップしてフローをステップS403へと戻す。一方、i≧N−1であれば、1画面分の検出が終了したものとしてフローを終了する。
なお、RT(i,j)、RB(i,j)は、分割領域のマクロブロックの数をmb_cnt(i,j)として、以下のように定義しても良い。
RT(i,j)={TSk_mb_cnt1(i,j)/mb_cnt(i,j)}×100
RB(i,j)={BSk_mb_cnt1(i,j)/mb_cnt(i,j)}×100
又、ステップS409,S414において、RT(i,j)、RB(i,j)を用いずに、TSk_mb_cnt1(i,j)、BSk_mb_cnt1(i,j)を閾値と比較しても良い。
更に、ステップS403,S404においては、分割領域(i,j)のQuantiser Scaleの平均値に替えて、1ピクチャの全マクロブロックに対してQuantiser Scaleの平均値を求めても良い。
次に、ピクチャにおいてブロック歪が生じたか否かを検出する方法について説明する。ブロック歪とは、1つのマクロブロック内が一様な色となり、原画が再生できない状態をいう。
図5は、映像処理装置10において行われるブロック歪を判定する処理を示すフローチャートである。ここで、フローチャート内で用いる符号は以下の意味を持つ。
QS値:Quantiser Scale(マクロブロックの量子化ステップ・サイズを表す)値
M(Qs):QS値の平均値
cnt_y:復号された輝度信号のサンプル数
cnt_c:復号された輝度信号Cb,Crのそれぞれのサンプル数
def_dat:輝度、色差信号の平均値の合計
sum_y:復号された輝度信号の合計
sum_cb:復号された色差信号Cbの絶対値の合計
sum_cr:復号された色差信号Crの絶対値の合計
mb_width:1マクロブロックラインにおけるマクロブロックの全数
mb_height:1ピクチャにおけるマクロブロックラインの全数
result:判定結果(0=正常ピクチャ、1=ブロック歪ピクチャ)
図5のステップS201において、QS値の平均値M(Qs)を求める。続くステップS202で、求めたM(Qs)を25(第1のブロック歪所定値)と比較する。M(Qs)が25未満であれば、静止画像である可能性が高いので、ステップS223に進んで、ブロック歪はないとする判断結果(0=result)を出力して処理フローを終了する。
これに対し、M(Qs)が25以上であれば、ステップS203で、輝度信号のサンプル数を計算する(cnt_y=mb_width×mb_height)。更にステップS204で、色差信号のサンプリングが4:2:0か否かを判断し、4:2:0であると判断した場合には、ステップS205で、以下の式に基づいて色差信号のサンプル数を計算する。
cnt_y=mb_width×mb_height/4
一方、色差信号のサンプリングが4:2:0でないと判断した場合、更にステップS206で、色差信号のサンプリングが4:2:2か否かを判断し、4:2:2であると判断した場合、ステップS207で、以下の式に基づいて色差信号のサンプル数を計算する。
cnt_y=mb_width×mb_height/2
これに対し、色差信号のサンプリングが4:2:2でないと判断した場合、S208で、以下の式に基づいて色差信号のサンプル数を計算する。
cnt_y=mb_width×mb_height
その後、ステップS209でカウンタを初期化(i=0)とし、ステップS210において、判定対象がPピクチャもしくはBピクチャか否かを判断する。ここで、判定対象がPピクチャもしくはBピクチャであると判断すれば、ステップS212に進み、判定対象がPピクチャもしくはBピクチャであると判断すれば、ステップS211で、復号された輝度信号に128を加算する。
ステップS212において、輝度信号の合計sum_yを計算する。更にステップS213で、i=i+1とし、ステップS214で、i>cnt_y(輝度信号の全てのサンプル数)であると判断されるまで、ステップS210〜S213を繰り返す。
i>cnt_yであると判断されたときは、ステップS215でカウンタを初期化し(i=1)、ステップS216で復号された色差信号Cb、Crの絶対値を計算し、ステップS217で、色差信号の合計sum_cb、sum_crを計算する。更にステップS218で、i=i+1とし、ステップS219で、i>cnt_c(色差信号の全てのサンプル数)であると判断されるまで、ステップS216〜S218を繰り返す。
i>cnt_cであると判断されたときは、ステップS220で、輝度・色差信号の平均値(1ピクチャの復号データに対し、輝度信号に第2のブロック歪所定値を加算した値と、色差信号の絶対値との総和を平均化した値)を、以下の式により計算する。
def_dat=(sum_y+sum_cb+sum_cr)/(cnt_y+cnt_c×2)
ステップS221において、def_datが131(第3のブロック歪所定値)以上か否かを判断する。def_datが131未満であれば、ステップS223に進んで、ブロック歪はないとする判断結果(0=result)を出力して処理フローを終了する。これに対し、def_datが131以上であれば、ステップS222に進んで、ブロック歪が生じたとする判断結果(1=result)を出力して処理フローを終了する。
次に、符号化映像信号に付随する音声信号(音声に限らない)において、ミュートが生じたか否かを判定する。ミュートとは、符号化された音声信号を複号したときに、無音状態で再生される現象をいう。
図6は、映像処理装置10において行われるミュートを判定する処理を示すフローチャートである。
ALi:i番目の音声信号
cnt_al:絶対値10以下の音声信号が連続するサンプル数
cnt_sf:ある音声区間に存在するスケールファクタの数
Sf:前記音声区間のスケールファクタ値
result:判定結果(0=無音、1=ミュート)
本実施の形態においては、符号化信号よりサンプルごとに各値を抽出し、以下の処理を行っている。まず、図6のステップS301において、カウンタを初期化し(cnt_al=0)、ステップS302で、音声レベルの絶対値|ALi|が10(第1の音声所定値)以下か否かを判断する。ここで、音声レベルの絶対値|ALi|が10を超えているとすれば、音声レベルが比較的高いと判断できるので、ステップS303でi=i+1とし、ステップS301へ戻って次の信号をチェックする。
一方、音声レベルの絶対値|ALi|が10未満であるとすれば、ステップS304で、cnt_al=cnt_al+1、i=i+1とし、ステップS302で、次の信号について音声レベルの絶対値|ALi|が10(第2の音声所定値)以下か否かを判断する。音声レベルの絶対値|ALi|が10を超えているとすれば、ステップS306でi=i+1とし、ステップS301へ戻って次の信号をチェックする。
これに対し、音声レベルの絶対値|ALi|が10未満であるとすれば、ステップS307で、cnt_al=cnt_al+1、i=i+1とし、ステップS308で、cnt_alが2623(所定の区間:ただし1024サンプルを1つの集合として判定する)を超えるまで、ステップS305〜S307を繰り返す。
cnt_alが2623を超えたとき、ステップS309で、2623に含まれる所定の区間ごとにスケールファクタの個数cnt_sfをカウントする。続くステップS310で、各区間にcnt_sf=1且つSf=0となる区間があるか判定する。cnt_sf=1且つSf=0である場合には、無音状態であると判断できるので、ステップS311で、無音であるとする判断結果(0=result)を出力して処理フローを終了する。一方、cnt_sf=1且つSf=0でない場合には、ステップS312で、ミュートであるとする判断結果(1=result)を出力して処理フローを終了する。
図9に示すように、所定区間の音声レベルの絶対値|ALi|がすべて10未満であり、その前後に隣接して576の|ALi|≦10となるサンプルがある場合、この2区間にcnt_sf=1且つSf=0となる区間があるときは、無音であると判断することができる。
エンコードパラメータ抽出部13により、処理された符号化映像信号からデータ量やQS値が抽出され、これらに基づいてエンコードパラメータ解析部14で解析が行われ、その解析結果に基づいて画質・音質判定部15で、画質劣化や音質劣化が判断されるようになっている。
図2は、符号化映像信号の構成を概略的に示す図である。符号化映像信号は、制御用の情報を含むシーケンスヘッダSHと、映像情報からなるピクチャグループGOPとを交互に連結した構成をとる。ピクチャグループGOPは、少なくとも1枚のIピクチャ、さらにBピクチャやPピクチャによって構成される。Iピクチャを例に取ると、1ピクチャは複数のスライスSからなる。スライスSは、1ピクチャ分の映像信号に対して、1ピクチャ上で横方向に切るように分割されたデータをいう。一つのスライスSは複数のマクロブロックMBから構成されている。一つのスライスSに含まれるマクロブロック数が一定でない場合もあり、横方向に複数のスライスが存在する場合もある。ここでは横方向のスライスを1つの単位として扱い、これをマクロブロックラインと呼ぶことにする。
一つのマクロブロックMBは、輝度信号と色差信号のサンプリングフォーマットが4:2:0の場合、16×16画素から成る輝度信号Yと、8×8画素から成る色差信号Cb、Crそれぞれ一つから構成される。一方、輝度信号と色差信号のサンプリングフォーマットが4:2:2の場合、16×16画素から成る輝度信号Yと、8×8画素から成る色差信号Cb、Crそれぞれ2つから構成される。
図3は、1ピクチャにおける正常なマクロブロックラインとフリーズマクロブロックラインを区別して示す図であり、簡略化するために、1マクロブロックラインは、1列で横に並んだ32個のマクロブロックから構成され、1ピクチャは縦に並んだ16本のマクロブロックラインからなるものとする。図3において、1マスは1つのマクロブロックを示し、これは図2に示すように16×16画素で構成されている。ハッチングされたマクロブロックは、符号化データのない、いわゆるスキップされたマクロブロック(特定マクロブロック)であり、白抜きのマクロブロックは正常なマクロブロックである。
静止画像では、ほとんど全てがスキップされたマクロブロックから構成される。一方、フリーズピクチャにおいても、スキップされたマクロブロックが多数存在するので、その切り分けが重要な課題となっている。
本実施の形態では、1マクロブロックライン中におけるスキップされたマクロブロック数が、第1のフリーズ所定割合Xを超えたときに、そのマクロブロックラインはフリーズマクロブロックラインと判断し(例えば図3で、10番目のマクロブロックライン)、それ以外は正常マクロブロックラインと判断する。又、フリーズマクロブロックラインに挟まれた正常マクロブロックラインは、フリーズマクロブロックラインと見なす(例えば図3で、11番目のマクロブロックライン)。1ピクチャにおけるフリーズマクロブロックラインの数が第2のフリーズ所定割合Yを超えたとき、そのピクチャは映像がフリーズしたフリーズピクチャであると判断する。ここでは、X=80%、Y=20%と設定すると、5,6番目のフリーズマクロブロックラインに加え、9〜16番目のマクロブロックラインがフリーズマクロブロックラインとみなされるので、このピクチャはフリーズピクチャであると判定できる。
図4は、映像処理装置10において行われるフリーズピクチャを判定する処理を示すフローチャートである。ここで、フローチャート内で用いる符号は以下の意味を持つ。
QS値:Quantiser Scale(マクロブロックの量子化ステップ・サイズを表す)値
M(Qs):QS値の平均値
Ib:符号化映像信号の1ピクチャのデータ量(単位はビット)
f_line_cnt:連続するフリーズマクロブロックラインの数
f_line_max:連続するフリーズマクロブロックラインの最大数
f_mb_cnt:スキップされたマクロブロックの数
mb_width:1マクロブロックラインにおけるマクロブロックの全数
mb_height:1ピクチャにおけるマクロブロックラインの全数
b1_stat[i]:i番目のマクロブロックラインの状態(0:正常マクロブロックライン、1:フリーズマクロブロックライン)
result:判定結果(0=正常ピクチャ、1=フリーズピクチャ)
図4のステップS101において、判定対象がPピクチャもしくはBピクチャか否かを判断する。ここで、判定対象がPピクチャもしくはBピクチャでないと判断すれば、ステップS129に進んで、映像障害はないとする判断結果(0=result)を出力して処理フローを終了する。
一方、判定対象がPピクチャもしくはBピクチャであると判断した場合、ステップS102でM(Qs)を計算し、ステップS103でIbを計算する。Quantiser Scaleの平均値は、スキップされたマクロブロックを除く全マクロブロックのQuantiser Scaleを平均して求める。マクロブロックにQuantiser Scaleが設定されていない場合は、スライスヘッダのQuantiser Scaleを、そのスライス内のマクロブロックのQuantiser Scaleとして平均値を計算する。Ibは、エンコードパラメータ抽出部に入力されるビデオのPES(Packetized Elementary Stream)パケットに含まれるPES_packet_data_byteのビット数をカウントして求める。
更にステップS104で、求めたM(Qs)が50(第1のフリーズ所定値)以上であり且つ求めたIbが150,000(第2のフリーズ所定値)以上であるか否かを判断する。求めたM(Qs)が50未満であり或いは求めたIbが150,000未満であれば、静止画像である可能性が高いので、ステップS129に進んで、映像障害はないとする判断結果(0=result)を出力して処理フローを終了する。
これに対し、求めたM(Qs)が50以上であり且つ求めたIbが150,000以上であれば、ステップS105で、マクロブロックラインのカウンタを初期化(i=1)として、ステップS106で、スキップされたマクロブロックのカウントを行う。
ステップS107において、1マクロブロックラインのマクロブロック全数mb_widthに対するスキップされたマクロブロックの数f_mb_cntの割合(f_mb_cnt×100/mb_width)を、80(第1のフリーズ所定割合)と比較する。(f_mb_cnt×100/mb_width)<80である場合、正常マクロブロックラインと判断するが、この場合、処理されたマクロブロックラインは正常マクロブロックラインである(b1_stat[i]=0)というフラッグをたてる(ステップS109)。
一方、(f_mb_cnt×100/mb_width)≧80である場合、フリーズマクロブロックラインと判断し、更にステップS108で、前マクロブロックラインがフリーズマクロブロックラインである(b1_stat[i]=1)というフラッグをたてる(ステップS109)。ステップS110で、i=i+1とし、ステップS111で、i>mb_heightであると判断されるまで(即ちマクロブロックライン全数を判定するまで)、ステップS106〜S110を繰り返す。
なお、図示していないが、1ピクチャを構成するマクロブロックにおいて、マクロブロックデータが符号化されず、スキップされたマクロブロック数をカウントし、1ピクチャのマクロブロック全数に対する、カウントされた前記マクロブロックの数が第1のフリーズ所定割合を超えた場合、そのピクチャがフリーズしていると判断するようにしても良い。
その後、ステップS112において、マクロブロックラインのカウンタをi=2とする。続くステップS113において、b1_stat[i−1]=1&b1_stat[i+1]か否かを判断する。b1_stat[i−1]=1&b1_stat[i+1]であるということは、判定対象となるマクロブロックラインが、フリーズマクロブロックラインに挟まれていることを示している。従って、この場合には、判定対象であるマクロブロックラインを正常であってもフリーズマクロブロックラインとみなし、ステップS114でb1_stat[i]=1とフラッグをたてる。一方、b1_stat[i−1]=1&b1_stat[i+1]でなければ、正常なマクロブロックラインとする。ステップS115で、i=i+1とし、ステップS116で、i≧mb_heightであると判断されるまで(即ちマクロブロックライン全数を判定するまで)、ステップS113〜S115を繰り返す。
ステップS117で、マクロブロックラインのカウンタを初期化(i=1)として、更にステップS118で、フリーズカウンタを初期化する(f_line_cnt=0:f_line_max=0)。ステップS119で、b1_stat[i]=1か否か判断し、b1_stat[i]=0ならば、ステップS120でi=i+1とした上で、ステップS118で、フリーズカウンタを初期化する。一方、b1_stat[i]=1ならば、ステップS121で、f_line_cnt=f_line_max=1とし、i=i+1とする。
更にステップS122で、b1_stat[i]=1か否か判断し、b1_stat[i]=1ならば、ステップS123で、f_line_cnt=f_line_max=1とし、i=i+1として、ステップS124で、i>mb_heightであると判断されるまで(即ちマクロブロックライン全数を判定するまで)、ステップS122〜S123を繰り返す。
一方、ステップS122で、b1_stat[i]=0ならば、ステップS126で、f_line_cnt>f_line_maxか否かが判断される。f_line_cnt>f_line_maxであると判断されれば、ステップS128でi=i+1とし、ステップS118へと戻る。一方、f_line_cnt>f_line_maxでないと判断されれば、ステップS127でf_line_cnt=f_line_maxとされ、ステップS128でi=i+1とし、ステップS118へと戻る。このようにして、1ピクチャにおけるフリーズしたマクロブロックラインの数を求めることができる。
ステップS125において、1ピクチャにおけるマクロブロックラインの全数mb_heightに対するフリーズしたマクロブロックの数f_line_cntの割合(f_line_cnt×100/mb_height)が、20(第2のフリーズ所定割合)以上であるか否かを判定する。(f_line_cnt×100/mb_height)≧20である場合、ステップS130で、映像のフリーズがあるとする判断結果(1=result)を出力して処理フローを終了する。これに対し、(f_line_cnt×100/mb_height)<20である場合には、ステップS129に進んで、映像のフリーズはないとする判断結果(0=result)を出力して処理フローを終了する。
次に、画面の複数箇所に分散してフリーズが発生する場合の検出方法について説明する。
MPEGエンコード時に、画面を複数に分割して処理する場合があり、分割された領域内でフリーズが発生する。図7にその例を示す。
図7において、ハッチングされたマクロブロックは、符号化データのないスキップされたマクロブロック、白抜きは正常なマクロブロックを表す。この例では、画面が水平方向に9分割されており、フリーズの原因となるスキップされたマクロブロックは、分割された領域内の下から2マクロブロックラインに存在する。
画面の分割方式は、水平方向に3分割や、格子状に6分割などがあり、またスキップされたマクロブロックも分割領域の上から数スライスに発生する場合がある。
図8は、映像処理装置10において行われるフリーズピクチャ領域を判定する処理を示すフローチャートである。ここで、フローチャート内で用いる符号は以下の意味をもつ。
MQs(i,j):分割領域(i,j)のQuantiser Scaleの平均値
SL_cnt(i,j):分割領域(i,j)のマクロブロックラインの数
SL2_mb_cnt(i,j):分割領域(i,j)の2マクロブロックラインのマクロブロック数
Sk_mb_cnt(i,j):分割領域(i,j)のスキップされたマクロブロックの全数
TSk_mb_cnt1(i,j):分割領域(i,j)の上から2マクロブロックラインにおけるスキップされたマクロブロックの数
BSk_mb_cnt1(i,j):分割領域(i,j)の下から2マクロブロックラインにおけるスキップされたマクロブロックの数
TSk_mb_cnt2(i,j):分割領域(i,j)の上から{SL_cnt(i,j)/2}マクロブロックラインにおけるスキップされたマクロブロックの数
BSk_mb_cnt2(i,j):分割領域(i,j)の下から{SL_cnt(i,j)/2}マクロブロックラインにおけるスキップされたマクロブロックの数
RT(i,j):分割領域(i,j)の上から2マクロブロックラインにおけるスキップされたマクロブロックの発生率
RB(i,j):分割領域(i,j)の下から2マクロブロックラインにおけるスキップされたマクロブロックの発生率
RST(i,j):分割領域(i,j)のスキップされたマクロブロックのうち、上から{SL_cnt(i,j)/2}マクロブロックラインに存在する割合
RSB(i,j):分割領域(i,j)のスキップされたマクロブロックのうち、下から{SL_cnt(i,j)/2}マクロブロックラインに存在する割合
M:横方向の画面分割数
N:縦方向の画面分割数
result:判定結果(0=正常ピクチャ領域、1=フリーズピクチャ領域)
ただしi=0〜N−1,j=0〜M−1
RT(i,j)、RB(i,j)、RST(i,j)、RSB(i,j)は以下の式で表される。
RT(i,j)={TSk_mb_cnt1(i,j)/SL2_mb_cnt(i,j)}×100
RB(i,j)={BSk_mb_cnt1(i,j)/SL2_mb_cnt(i,j)}×100
RST(i,j)={TSk_mb_cnt2(i,j)/Sk_mb_cnt(i,j)}×100
RSB(i,j)={BSk_mb_cnt2(i,j)/Sk_mb_cnt(i,j)}×100
以下のパラメータから次の判定を行ない、フリーズを検出する。まず、図8のステップS401で、判定対象がPピクチャもしくはBピクチャか否かを判断する。ここで、判定対象がPピクチャもしくはBピクチャでないと判断すれば、処理フローを終了する。
一方、判定対象がPピクチャもしくはBピクチャであると判断した場合、ステップS402でカウンタの初期化を行い、ステップS403でMQs(i,j)を計算する。続くステップS404で、MQs(i,j)を70(第3のフリーズ所定値)と比較し、これが70未満であれば、フリーズピクチャ領域ではないと見なし、ステップS415で、該当領域で映像のフリーズがないとする判断結果(0=result)を出力する。一方、MQs(i,j)が70以上であれば、ステップS405で、RST(i,j)、RSB(i,j)を計算する。
更にステップS406で、iが1以上であれば、ステップS407で、RST(i,j)を80(第3のフリーズ所定割合)と比較し、RST(i,j)が80以上であれば、ステップS408で、RT(i,j)、RB(i−1,j)を計算する。更に、ステップS409で、RT(i,j)が10(第4のフリーズ所定割合)以上で、且つRB(i−1,j)が5(第5のフリーズ所定割合)以下であるか否か判定する。RT(i,j)が10以上で、且つRB(i−1,j)が5以下である場合、ステップS410で、該当領域で映像のフリーズがあるとする判断結果(1=result)を出力し、フローはステップS416へと進む。
一方、ステップS406で、i<1であると判定された場合、又はステップS407で、RST(i,j)<80と判定された場合、或いはステップS409で、RT(i,j)が10以上でなく、またRB(i−1,j)が5以下でないと判断された場合、フローはステップS411へと進み、ここでi≦N−2であるか否か判断される。i≦N−2でないと判断されれば、フローはステップS416へと進むが、i≦N−2であると判断されれば、続くステップS412で、RSB(i,j)を80(第1のフリーズ所定割合)と比較する。RSB(i,j)が80以上でなければ、フローはステップS416へと進むが、RSB(i,j)が80以上であれば、ステップS413で、RB(i,j)、RT(i+1,j)を計算する。
更にステップS414で、RB(i,j)が10(第4のフリーズ所定割合)以上で、且つRT(i+1,j)が5(第5のフリーズ所定割合)以下であるか否か判断される。RB(i,j)が10以上でなく、或いはRT(i+1,j)が5以下でないと判断されれば、フローはステップS416へと進むが、RB(i,j)が10以上で、且つRT(i+1,j)が5以下であると判断されれば、ステップS410で、該当領域で映像のフリーズがあるとする判断結果(1=result)を出力し、フローはステップS416へと進む。
ステップS416では、jがM−1以上か否か判断し、j<M−1であれば、ステップS417でjを1つカウントアップしてフローをステップS403へと戻す。一方、j≧M−1であれば、ステップS418で、iがN−1以上か否か判断し、i<N−1であれば、ステップS419でiを1つカウントアップしてフローをステップS403へと戻す。一方、i≧N−1であれば、1画面分の検出が終了したものとしてフローを終了する。
なお、RT(i,j)、RB(i,j)は、分割領域のマクロブロックの数をmb_cnt(i,j)として、以下のように定義しても良い。
RT(i,j)={TSk_mb_cnt1(i,j)/mb_cnt(i,j)}×100
RB(i,j)={BSk_mb_cnt1(i,j)/mb_cnt(i,j)}×100
又、ステップS409,S414において、RT(i,j)、RB(i,j)を用いずに、TSk_mb_cnt1(i,j)、BSk_mb_cnt1(i,j)を閾値と比較しても良い。
更に、ステップS403,S404においては、分割領域(i,j)のQuantiser Scaleの平均値に替えて、1ピクチャの全マクロブロックに対してQuantiser Scaleの平均値を求めても良い。
次に、ピクチャにおいてブロック歪が生じたか否かを検出する方法について説明する。ブロック歪とは、1つのマクロブロック内が一様な色となり、原画が再生できない状態をいう。
図5は、映像処理装置10において行われるブロック歪を判定する処理を示すフローチャートである。ここで、フローチャート内で用いる符号は以下の意味を持つ。
QS値:Quantiser Scale(マクロブロックの量子化ステップ・サイズを表す)値
M(Qs):QS値の平均値
cnt_y:復号された輝度信号のサンプル数
cnt_c:復号された輝度信号Cb,Crのそれぞれのサンプル数
def_dat:輝度、色差信号の平均値の合計
sum_y:復号された輝度信号の合計
sum_cb:復号された色差信号Cbの絶対値の合計
sum_cr:復号された色差信号Crの絶対値の合計
mb_width:1マクロブロックラインにおけるマクロブロックの全数
mb_height:1ピクチャにおけるマクロブロックラインの全数
result:判定結果(0=正常ピクチャ、1=ブロック歪ピクチャ)
図5のステップS201において、QS値の平均値M(Qs)を求める。続くステップS202で、求めたM(Qs)を25(第1のブロック歪所定値)と比較する。M(Qs)が25未満であれば、静止画像である可能性が高いので、ステップS223に進んで、ブロック歪はないとする判断結果(0=result)を出力して処理フローを終了する。
これに対し、M(Qs)が25以上であれば、ステップS203で、輝度信号のサンプル数を計算する(cnt_y=mb_width×mb_height)。更にステップS204で、色差信号のサンプリングが4:2:0か否かを判断し、4:2:0であると判断した場合には、ステップS205で、以下の式に基づいて色差信号のサンプル数を計算する。
cnt_y=mb_width×mb_height/4
一方、色差信号のサンプリングが4:2:0でないと判断した場合、更にステップS206で、色差信号のサンプリングが4:2:2か否かを判断し、4:2:2であると判断した場合、ステップS207で、以下の式に基づいて色差信号のサンプル数を計算する。
cnt_y=mb_width×mb_height/2
これに対し、色差信号のサンプリングが4:2:2でないと判断した場合、S208で、以下の式に基づいて色差信号のサンプル数を計算する。
cnt_y=mb_width×mb_height
その後、ステップS209でカウンタを初期化(i=0)とし、ステップS210において、判定対象がPピクチャもしくはBピクチャか否かを判断する。ここで、判定対象がPピクチャもしくはBピクチャであると判断すれば、ステップS212に進み、判定対象がPピクチャもしくはBピクチャであると判断すれば、ステップS211で、復号された輝度信号に128を加算する。
ステップS212において、輝度信号の合計sum_yを計算する。更にステップS213で、i=i+1とし、ステップS214で、i>cnt_y(輝度信号の全てのサンプル数)であると判断されるまで、ステップS210〜S213を繰り返す。
i>cnt_yであると判断されたときは、ステップS215でカウンタを初期化し(i=1)、ステップS216で復号された色差信号Cb、Crの絶対値を計算し、ステップS217で、色差信号の合計sum_cb、sum_crを計算する。更にステップS218で、i=i+1とし、ステップS219で、i>cnt_c(色差信号の全てのサンプル数)であると判断されるまで、ステップS216〜S218を繰り返す。
i>cnt_cであると判断されたときは、ステップS220で、輝度・色差信号の平均値(1ピクチャの復号データに対し、輝度信号に第2のブロック歪所定値を加算した値と、色差信号の絶対値との総和を平均化した値)を、以下の式により計算する。
def_dat=(sum_y+sum_cb+sum_cr)/(cnt_y+cnt_c×2)
ステップS221において、def_datが131(第3のブロック歪所定値)以上か否かを判断する。def_datが131未満であれば、ステップS223に進んで、ブロック歪はないとする判断結果(0=result)を出力して処理フローを終了する。これに対し、def_datが131以上であれば、ステップS222に進んで、ブロック歪が生じたとする判断結果(1=result)を出力して処理フローを終了する。
次に、符号化映像信号に付随する音声信号(音声に限らない)において、ミュートが生じたか否かを判定する。ミュートとは、符号化された音声信号を複号したときに、無音状態で再生される現象をいう。
図6は、映像処理装置10において行われるミュートを判定する処理を示すフローチャートである。
ALi:i番目の音声信号
cnt_al:絶対値10以下の音声信号が連続するサンプル数
cnt_sf:ある音声区間に存在するスケールファクタの数
Sf:前記音声区間のスケールファクタ値
result:判定結果(0=無音、1=ミュート)
本実施の形態においては、符号化信号よりサンプルごとに各値を抽出し、以下の処理を行っている。まず、図6のステップS301において、カウンタを初期化し(cnt_al=0)、ステップS302で、音声レベルの絶対値|ALi|が10(第1の音声所定値)以下か否かを判断する。ここで、音声レベルの絶対値|ALi|が10を超えているとすれば、音声レベルが比較的高いと判断できるので、ステップS303でi=i+1とし、ステップS301へ戻って次の信号をチェックする。
一方、音声レベルの絶対値|ALi|が10未満であるとすれば、ステップS304で、cnt_al=cnt_al+1、i=i+1とし、ステップS302で、次の信号について音声レベルの絶対値|ALi|が10(第2の音声所定値)以下か否かを判断する。音声レベルの絶対値|ALi|が10を超えているとすれば、ステップS306でi=i+1とし、ステップS301へ戻って次の信号をチェックする。
これに対し、音声レベルの絶対値|ALi|が10未満であるとすれば、ステップS307で、cnt_al=cnt_al+1、i=i+1とし、ステップS308で、cnt_alが2623(所定の区間:ただし1024サンプルを1つの集合として判定する)を超えるまで、ステップS305〜S307を繰り返す。
cnt_alが2623を超えたとき、ステップS309で、2623に含まれる所定の区間ごとにスケールファクタの個数cnt_sfをカウントする。続くステップS310で、各区間にcnt_sf=1且つSf=0となる区間があるか判定する。cnt_sf=1且つSf=0である場合には、無音状態であると判断できるので、ステップS311で、無音であるとする判断結果(0=result)を出力して処理フローを終了する。一方、cnt_sf=1且つSf=0でない場合には、ステップS312で、ミュートであるとする判断結果(1=result)を出力して処理フローを終了する。
図9に示すように、所定区間の音声レベルの絶対値|ALi|がすべて10未満であり、その前後に隣接して576の|ALi|≦10となるサンプルがある場合、この2区間にcnt_sf=1且つSf=0となる区間があるときは、無音であると判断することができる。
Claims (13)
- MPEG(Moving Picture Experts Group)規格に従う符号化映像信号に含まれる符号化情報に基づいて映像障害を検出する映像障害検出装置において、
入力された符号化映像信号から抽出された1ピクチャのデータ量と、MPEGの符号化において用いられるQS(Quantiser Scale)値とに基づいて、映像障害を検出することを特徴とする映像障害検出装置。 - 前記映像障害は映像のフリーズであり、ピクチャ単位での前記QS値の平均値が、第1のフリーズ所定値未満であり、なおかつ、1ピクチャのデータ量が第2のフリーズ所定値未満の場合、映像のフリーズが生じた可能性が低いと判断することを特徴とする請求項1に記載の映像障害検出装置。
- 1ピクチャを構成するマクロブロックにおいて、マクロブロックデータが符号化されず、スキップされたマクロブロック数をカウントし、1ピクチャのマクロブロック全数に対する、カウントされた前記マクロブロックの数が第1のフリーズ所定割合を超えた場合、そのピクチャがフリーズしていると判断することを特徴とする請求項1又は2に記載の映像障害検出装置。
- 1ピクチャの横方向のマクロブロックを1マクロブロックラインとして、1マクロブロックラインにおいて、スキップされたマクロブロック数をカウントし、その数が第2のフリーズ所定割合を超えた場合、そのマクロブロックラインはフリーズしていると判断することを特徴とする請求項1〜3のいずれかに記載の映像障害検出装置。
- 1ピクチャのマクロブロックライン全数に対する、前記フリーズしたマクロブロックラインの数が第3のフリーズ所定割合を超えた場合、そのピクチャがフリーズしていると判断することを特徴とする請求項1〜4のいずれかに記載の映像障害検出装置。
- 前記フリーズしたマクロブロックラインが複数ある場合、前記フリーズしたマクロブロックライン間に存在するマクロブロックラインは、フリーズしていると判断することを特徴とする請求項4又は5に記載の映像障害検出装置。
- MPEG(Moving Picture Experts Group)規格に従う符号化映像信号に含まれる符号化情報に基づいて映像障害を検出する映像障害検出装置において、
入力された符号化映像信号が画面を複数に分割して符号化されている場合、分割された領域におけるQS(Quantiser Scale)値に基づいて、映像障害を検出することを特徴とする映像障害検出装置。 - 前記映像障害はブロック歪であり、ピクチャ単位での前記QS値の平均値が、第1のブロック歪所定値未満であり、なおかつ、1ピクチャの復号データに対し、輝度信号に第2のブロック歪所定値を加算した値と、色差信号の絶対値との総和を平均化し、その平均値が第3のブロック歪所定値以上の場合、ブロック歪が生じたと判断することを特徴とする請求項7のいずれかに記載の映像障害検出装置。
- 前記映像障害は映像フリーズであり、分割された領域単位での前記QS値の平均値が、第3のフリーズ所定置未満の場合、映像のフリーズが生じた可能性が低いと判断することを特徴とする請求項7記載の映像障害検出装置。
- 画面の上下で隣接する分割された領域において、マクロブロックデータが符号化されず、スキップされたマクロブロック数をそれぞれカウントし、上の領域に対しては、領域の下半分のマクロブロックにおいて、スキップされたマクロブロック数をカウントし、下の領域に対しては、領域の上半分のマクロブロックにおいて、スキップされたマクロブロックの数をカウントするとともに、それぞれの領域において、上半分又は下半分の領域におけるスキップされたマクロブロックの割合が、第3のフリーズ所定割合未満であるとき、映像のフリーズが生じた可能性が低いと判断することを特徴とする請求項7記載の映像障害検出装置。
- 当該領域の上半分のマクロブロックラインにおけるスキップされたマクロブロックの割合が第3のフリーズ所定割合を超えるとき、当該領域の上から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、当該領域のスキップされたマクロブロックの全数に対する割合が第4のフリーズ所定割合以上であり、隣接する上の領域において下から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、上の領域におけるスキップされたマクロブロックの全数に対する割合が第5のフリーズ所定割合以下であるとき、当該領域において映像のフリーズが発生したと判断することを特徴とする請求項10に記載の映像障害検出装置。
- 当該領域の下半分のマクロブロックラインにおけるスキップされたマクロブロックの割合が第3のフリーズ所定割合を超えるとき、当該領域の下から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、当該領域のスキップされたマクロブロックの全数に対する割合が第4のフリーズ所定割合以上であり、隣接する下の領域において上から2マクロブロックラインに含まれるスキップされたマクロブロックの数をカウントし、下の領域におけるスキップされたマクロブロックの全数に対する割合が第5のフリーズ所定割合以下であるとき、当該領域において映像のフリーズが発生したと判断することを特徴とする請求項10又は11に記載の映像障害検出装置。
- 前記符号化映像信号に多重化された符号化音声信号を復号し、音声信号レベルが第1の音声所定値以下となる連続するサンプル数をカウントし、そのカウントが第2の音声所定値以上であるとき、その連続するサンプル内に含まれる所定区間において、音声信号に対するスケールファクタ値がゼロであり且つスケールファクタの個数が1の所定区間が存在する場合、そのサンプル内に無音状態があると判断し、スケールファクタ値がゼロ以上であり且つスケールファクタの個数が2以上の所定区間が存在する場合、そのサンプルにミュートが発生したと判断することを特徴とする請求項1〜7のいずれかに記載の映像障害検出装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2005/014246 WO2007013183A1 (ja) | 2005-07-28 | 2005-07-28 | 映像障害検出装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2007013183A1 true JPWO2007013183A1 (ja) | 2009-02-05 |
Family
ID=37683091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007526803A Pending JPWO2007013183A1 (ja) | 2005-07-28 | 2005-07-28 | 映像障害検出装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2007013183A1 (ja) |
WO (1) | WO2007013183A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11706415B2 (en) * | 2020-12-28 | 2023-07-18 | Advanced Micro Devices, Inc. | Still frame detection in video data |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06133250A (ja) * | 1992-10-15 | 1994-05-13 | Hitachi Ltd | 音声ミュート検出回路 |
JPH06165075A (ja) * | 1992-11-20 | 1994-06-10 | Hitachi Ltd | 音声ミュート検出回路 |
JP2000115766A (ja) * | 1998-09-29 | 2000-04-21 | Ando Electric Co Ltd | 動画再生分析装置 |
JP2001186514A (ja) * | 1999-12-07 | 2001-07-06 | Tektronix Inc | ビデオ信号の繰り返しフレームの検出方法及び装置 |
JP2002262312A (ja) * | 2001-02-06 | 2002-09-13 | Tektronix Inc | フリーズ・フィールド検出方法及び装置 |
JP2002359847A (ja) * | 2001-06-01 | 2002-12-13 | K Solution:Kk | 動画像監視装置 |
JP2003204562A (ja) * | 2001-07-19 | 2003-07-18 | Kdd Media Will Corp | 信号監視システム |
JP2003204561A (ja) * | 2001-10-31 | 2003-07-18 | Kddi Corp | 画質劣化検出装置 |
-
2005
- 2005-07-28 WO PCT/JP2005/014246 patent/WO2007013183A1/ja active Application Filing
- 2005-07-28 JP JP2007526803A patent/JPWO2007013183A1/ja active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06133250A (ja) * | 1992-10-15 | 1994-05-13 | Hitachi Ltd | 音声ミュート検出回路 |
JPH06165075A (ja) * | 1992-11-20 | 1994-06-10 | Hitachi Ltd | 音声ミュート検出回路 |
JP2000115766A (ja) * | 1998-09-29 | 2000-04-21 | Ando Electric Co Ltd | 動画再生分析装置 |
JP2001186514A (ja) * | 1999-12-07 | 2001-07-06 | Tektronix Inc | ビデオ信号の繰り返しフレームの検出方法及び装置 |
JP2002262312A (ja) * | 2001-02-06 | 2002-09-13 | Tektronix Inc | フリーズ・フィールド検出方法及び装置 |
JP2002359847A (ja) * | 2001-06-01 | 2002-12-13 | K Solution:Kk | 動画像監視装置 |
JP2003204562A (ja) * | 2001-07-19 | 2003-07-18 | Kdd Media Will Corp | 信号監視システム |
JP2003204561A (ja) * | 2001-10-31 | 2003-07-18 | Kddi Corp | 画質劣化検出装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2007013183A1 (ja) | 2007-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8184164B2 (en) | Method for measuring multimedia video communication quality | |
JP3336754B2 (ja) | デジタルビデオ信号の記録方法及び記録装置 | |
CN109510919B (zh) | 用于感知质量评估的场景变换检测的方法、设备和介质 | |
US20030123841A1 (en) | Commercial detection in audio-visual content based on scene change distances on separator boundaries | |
EP2717578A1 (en) | Image processing device and image processing method | |
US9615102B2 (en) | Method and apparatus for processing components of an image | |
CN110312163B (zh) | 一种视频静帧检测方法及系统 | |
GB2437337A (en) | Measuring block artefacts in video data using an auto-correlation function | |
US20110142418A1 (en) | Blockiness and fidelity in watermarking | |
EP3217666A1 (en) | Video image decoding device and video image decoding method | |
US6219067B1 (en) | Measures for characterizing compressed bitstreams | |
EP1126725A1 (en) | Image decoding device | |
CN108366295B (zh) | 视频分类特征提取方法、转码重压缩检测方法及存储介质 | |
US8244061B1 (en) | Automated detection of source-based artifacts in an information signal | |
WO2013004167A1 (zh) | 色度预测模式候选集的确定方法及设备 | |
US7848424B2 (en) | Control of frame types in video compression | |
JP2004260602A (ja) | 画像劣化自動検出装置 | |
JPWO2007013183A1 (ja) | 映像障害検出装置 | |
US8139101B2 (en) | Pre-processing of video data | |
JPH11205792A (ja) | ブロック歪低減方法及び装置 | |
JP4267036B2 (ja) | 表示制御装置及び表示制御方法 | |
JPH11275590A (ja) | 画像間圧縮符号化装置および符号化方法 | |
JP2005175710A (ja) | デジタル記録再生装置及びデジタル記録再生方法 | |
JPWO2005043915A1 (ja) | 映像解析装置及び映像障害検出装置 | |
US20090274372A1 (en) | Method and apparatus for measuring blockiness in video images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110222 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110715 |