发明名称 一种帧场自适应检测方法
摘要 本发明提供了一种帧场自适应检测方法,根据输入的图像,计算输入图像的特征值C<SUB>1</SUB>;根据输入的前N帧图像,确定当前帧的检测门限T<SUB>n</SUB>;当C<SUB>1</SUB><T<SUB>n</SUB>,且C<SUB>1</SUB><1时,该帧采用帧编码的编码模式,否则,该帧采用场编码的编码模式。本发明提供的帧场自适应检测方法,编码准确率高,效率高。
申请公布号 CN1738431A 申请公布日期 2006.02.22
申请号 CN200510029526.3 申请日期 2005.09.08
申请人 上海广电(集团)有限公司中央研究院 发明人 李萍;侯钢;王国中;李国平;陈勇
分类号 H04N7/32(2006.01) 主分类号 H04N7/32(2006.01)
代理机构 上海新天专利代理有限公司 代理人 衷诚宣
主权项 1.一种帧场自适应检测方法,特征在于,包括以下步骤:步骤1、计算输入图像的特征值C1:若输入图像的大小为Width个像素×Height个像素,且像素点(x,y)的亮度值为I(x,y),则有:<math> <mfenced open='' close=''> <mtable> <mtr> <mtd> <msub> <mi>C</mi> <mrow> <mi>frame</mi> <mo>_</mo> <mi>top</mi> </mrow> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>y</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mfrac> <mi>Height</mi> <mn>2</mn> </mfrac> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>Width</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mo>|</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>|</mo> <mo>;</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>C</mi> <mrow> <mi>frame</mi> <mo>_</mo> <mi>bot</mi> </mrow> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>y</mi> <mo>=</mo> <mfrac> <mi>Height</mi> <mn>2</mn> </mfrac> </mrow> <mrow> <mi>Height</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>Width</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mo>|</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mi>y</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>|</mo> <mo>;</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>C</mi> <mrow> <mi>field</mi> <mo>_</mo> <mi>top</mi> </mrow> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>y</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mfrac> <mi>Height</mi> <mn>2</mn> </mfrac> <mo>-</mo> <mn>2</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>Width</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mo>|</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mn>2</mn> <mi>y</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mn>2</mn> <mi>y</mi> <mo>+</mo> <mn>2</mn> <mo>)</mo> </mrow> <mo>|</mo> <mo>;</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>C</mi> <mrow> <mi>field</mi> <mo>_</mo> <mi>bot</mi> </mrow> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>y</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mfrac> <mi>Height</mi> <mn>2</mn> </mfrac> <mo>-</mo> <mn>2</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>Width</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mo>|</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mn>2</mn> <mi>y</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mn>2</mn> <mi>y</mi> <mo>+</mo> <mn>3</mn> <mo>)</mo> </mrow> <mo>|</mo> <mo>;</mo> </mtd> </mtr> </mtable> </mfenced> </math> 于是,输入图像的特征值C1的值为:<math> <mrow> <msub> <mi>C</mi> <mn>1</mn> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>C</mi> <mrow> <mi>frame</mi> <mo>_</mo> <mi>top</mi> </mrow> </msub> <mo>+</mo> <msub> <mi>C</mi> <mrow> <mi>frame</mi> <mo>_</mo> <mi>bot</mi> </mrow> </msub> </mrow> <mrow> <msub> <mi>C</mi> <mrow> <mi>field</mi> <mo>_</mo> <mi>top</mi> </mrow> </msub> <mo>+</mo> <msub> <mi>C</mi> <mrow> <mi>field</mi> <mo>_</mo> <mi>bot</mi> </mrow> </msub> </mrow> </mfrac> <mo>;</mo> </mrow> </math> 步骤2、根据输入的前N帧图像和当前帧的帧类型来确定当前第n帧的检测门限Tn;包含以下分步骤:步骤2.1、设置当前输入帧为第n帧,判断n是否大于N,若是,则直接执行步骤2.4;若否,则依次执行步骤2.2和步骤2.3;步骤2.2、计算当前帧的特征值C2,其包含以下分步骤:步骤2.2.1、设定两个计数变量:Nfield=0,Nframe=0;步骤2.2.2、对于当前帧的图像,分割成若干个M像素×M像素的宏块,其中,M∈[4,8,16,32,64];对于每个宏块,计算其顶场的自方差Vtop和底场的自方差Vbot;<math> <mfenced open='' close=''> <mtable> <mtr> <mtd> <msub> <mi>V</mi> <mi>top</mi> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>y</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mfrac> <mi>M</mi> <mn>2</mn> </mfrac> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>M</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msup> <mrow> <mo>(</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mn>2</mn> <mi>y</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>E</mi> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>;</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>V</mi> <mi>bot</mi> </msub> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>y</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mfrac> <mi>M</mi> <mn>2</mn> </mfrac> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>M</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msup> <mrow> <mo>(</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>,</mo> <mn>2</mn> <mi>y</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <mi>E</mi> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>;</mo> </mtd> </mtr> </mtable> </mfenced> </math> 其中,E表示该宏块的所有像素的亮度的平均值;步骤2.2.3、对于每个宏块的Vtop和Vbot,计算A=Vtop/Vbot,若<math> <mrow> <mi>A</mi> <mo>&NotElement;</mo> <mo>[</mo> <mi>M</mi> <msub> <mi>T</mi> <mn>1</mn> </msub> <mo>,</mo> <mi>M</mi> <msub> <mi>T</mi> <mn>2</mn> </msub> <mo>]</mo> </mrow> </math> ,则计数变量Nfield的值加1;若A∈[MT1,MT2],则计数变量Nframe的值加1,其中,1.0<MT1<1.5,0.5<MT2<1.0;步骤2.2.4、计算特征值C2=Nframe/Nfield;步骤2.3、确定检测门限,其包含以下分步骤:步骤2.3.1、计算图像当前帧,即第n帧的初始检测门限:当C2≥Mod1×M时,<math> <mrow> <msub> <mi>T</mi> <mi>f</mi> </msub> <mrow> <mo>(</mo> <mi>n</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <mi>Cof</mi> <mo>&times;</mo> <msub> <mi>C</mi> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>C</mi> <mn>1</mn> </msub> </mrow> <mn>4</mn> </mfrac> <mo>,</mo> </mrow> </math> 其中,0.9<Cof<1.0,0.25<Mod1<0.5;当C2≥Mod2×M时,<math> <mrow> <msub> <mi>T</mi> <mi>f</mi> </msub> <mrow> <mo>(</mo> <mi>n</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <mi>Cof</mi> <mo>&times;</mo> <msub> <mi>C</mi> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>C</mi> <mn>1</mn> </msub> </mrow> <mn>4</mn> </mfrac> </mrow> </math> 其中,0.8<Cof<0.9;0.2<Mod2<0.4;当C2<Mod2×M时,<math> <mrow> <msub> <mi>T</mi> <mi>f</mi> </msub> <mrow> <mo>(</mo> <mi>n</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <msub> <mi>C</mi> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>C</mi> <mn>1</mn> </msub> </mrow> <mn>4</mn> </mfrac> <mo>,</mo> </mrow> </math> 其中,0.2<Mod2<0.4;步骤2.3.2、当前帧,即第n帧的基准检测门限为:<math> <mrow> <msub> <mi>T</mi> <mi>nj</mi> </msub> <mo>=</mo> <mfrac> <mn>1</mn> <mi>n</mi> </mfrac> <munderover> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msub> <mi>T</mi> <mi>f</mi> </msub> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>;</mo> </mrow> </math> 步骤2.3.3、根据当前帧,即第n帧的帧类型,确定该帧的最终检测门限:对于帧内图I帧或预测图P帧,最终检测门限为:Tn=Tnj;对于双向预测图B帧,最终检测门限为:Tn=Coe×Tnj,其中,1.0<Coe<2.0;步骤2.4、输入的图像帧数n大于N,则有:对于帧内图I帧或预测图P帧,最终检测门限为:Tn=TNj;对于双向预测图B帧,最终检测门限为:Tn=Coe×TNj,其中,1.0<Coe<2.0;步骤3、图像级帧场自适应检测:若C1<Tn,且C1<1,则该帧采用帧编码的编码模式,否则,该帧采用场编码的编码模式。
地址 200233上海市宜山路757号2楼