CN102497553B - 一种视频解码后处理方法及装置 - Google Patents

一种视频解码后处理方法及装置 Download PDF

Info

Publication number
CN102497553B
CN102497553B CN201110410851.XA CN201110410851A CN102497553B CN 102497553 B CN102497553 B CN 102497553B CN 201110410851 A CN201110410851 A CN 201110410851A CN 102497553 B CN102497553 B CN 102497553B
Authority
CN
China
Prior art keywords
mrow
frame
msub
decoding image
component
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.)
Expired - Fee Related
Application number
CN201110410851.XA
Other languages
English (en)
Other versions
CN102497553A (zh
Inventor
张智雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yunzhou Multimedia Technology Co., Ltd.
Original Assignee
SHENZHEN YUNZHOU MULTIMEDIA TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHENZHEN YUNZHOU MULTIMEDIA TECHNOLOGY Co Ltd filed Critical SHENZHEN YUNZHOU MULTIMEDIA TECHNOLOGY Co Ltd
Priority to CN201110410851.XA priority Critical patent/CN102497553B/zh
Publication of CN102497553A publication Critical patent/CN102497553A/zh
Application granted granted Critical
Publication of CN102497553B publication Critical patent/CN102497553B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开一种视频解码后处理方法,所述方法包括:判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若存在,则不进行滤波处理,若不存在,则以宏块为单位,判断当前宏块是否存在剧烈变化,若存在剧烈变化,则不对当前宏块进行处理,进入下一宏块进行判断是否存在剧烈变化,若不存在剧烈变化,则对当前宏块所在帧的前一帧对应宏块进行滤波处理。通过本发明能有效缓解I帧出现时可能出现的图像跳变的问题,从而提高视频观看者的主观感受。

Description

一种视频解码后处理方法及装置
技术领域
本发明涉及视频编解码领域,尤其涉及一种视频解码后处理方法及装置。
背景技术
目前主流的视频压缩算法是根据当前编码图像的复杂度控制编码的量化步长来达到控制输出码率的效果。对于主流的视频编码算法,每帧图像可分为I、P、B三种编码格式,其中I帧的解码不依赖于其他帧,而P帧及B帧的解码则依赖其相邻的帧。由于现阶段的压缩采用的量化算法机制,当视频码率较低、视频编码量化步长较大时,视频序列中的编码I帧可能会和前一个编码帧存在较大差异,令人有一种视频闪烁的感觉,从而降低视频的主管感受。为此,本文提出了一个解决视频闪烁的后处理方法,缓解I帧出现时可能带来的图像闪烁的问题,从而提高视频观看者的主观感受。
发明内容
本发明实施例的目的在于提出一种视频解码后处理方法,旨在解决现有技术视频编解码时当I帧出现时可能带来的图像闪烁的问题。
本发明实施例是这样实现的,一种视频解码后处理方法,所述方法包括以下步骤:
判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若存在,则不进行滤波处理,若不存在,则
以宏块为单位,判断当前宏块是否存在剧烈变化,若存在剧烈变化,则不对当前宏块进行处理,进入下一宏块进行判断是否存在剧烈变化,若不存在剧烈变化,则
对当前宏块所在帧的前一帧对应宏块进行滤波处理。
本发明实施例的另一目的在于提出一种视频解码后处理装置,所述装置包括:第一判断模块、第二判断模块、第三判断模块、滤波处理模块;
第一判断模块,用于判断当前帧解码图像的I帧是否为待处理视频序列首帧,是则不进行滤波处理,否则进入第二判断模块;
第二判断模块,用于断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若存在,则不进行滤波处理,若不存在,则进入第三判断模块;
第三判断模块,用于以宏块为单位,判断当前宏块是否存在剧烈变化,若存在剧烈变化,则不对当前宏块进行处理,进入下一宏块继续进行判断是否存在剧烈变化,若不存在剧烈变化,则进入滤波处理模块;
滤波处理模块,用于对当前宏块所在帧的前一帧对应宏块进行滤波处理。
本发明的有益效果
本发明实施例通过判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若不存在,则判断当前宏块是否存在剧烈变化,若不存在剧烈变化,则对当前宏块所在帧的前一帧对应宏块进行滤波;通过本发明实施例能有效缓解I帧出现时可能出现的图像跳变的问题,从而提高视频观看者的主观感受。
附图说明
图1是本发明实施例的一种视频解码后处理方法流程图;
图2是图1中判断当前帧解码图像的I帧的内容和上一帧的内容是否存在场景切换的方法流程图;
图3是图1中判断当前宏块是否存在剧烈变化的方法流程图;
图4是本发明实施例的一种视频解码后处理装置结构示意图;
图5是图4中的第二判断模块的结构示意图;
图6是图4中的第三判断模块的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和实施例,对本发明进行进一步详细说明,为了便于说明,仅示出了与本发明实施例相关的部分。应当理解,此处所描写的具体实施例,仅仅用于解释本发明,并不用以限制本发明。
本发明实施例通过判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若不存在,则判断当前宏块是否存在剧烈变化,若不存在剧烈变化,则对当前宏块所在帧的前一帧对应宏块进行滤波;通过本发明实施例能有效缓解I帧出现时可能出现的图像跳变的问题,从而提高视频观看者的主观感受。
实施例一
图1是本发明实施例的一种视频解码后处理方法流程图,所述方法包括以下步骤:
S101,判断当前帧解码图像的I帧是否为待处理视频序列首帧,是则不进行滤波处理,否则进入步骤S102。
S102,判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若存在,则不进行滤波处理,若不存在,则进入步骤S103。
所述“判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换”具体方为(如图2所示):
S1021,对当前帧解码图像的亮度分量Yn及当前帧前一帧解码图像的亮度分量Yn-1进行边缘提取和2值化处理,获取2值化处理后的当前帧I帧的边缘EdgeYn及前一帧的边缘EdgeYn-1;(注:亮度分量即Y分量)
其中,第n帧为当前帧;
Yn表示第n帧解码图像的亮度分量Y分量值;
Yn-1表示第n-1帧解码图像的亮度分量Y分量值;
EdgeYn表示对第n帧解码图像的亮度分量Y分量进行边缘提取并进行2值化处理后,第n帧解码图像中I帧的边缘;
EdgeYn-1表示对第n-1帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n-1帧解码图像的边缘;
S1022,获取当前帧亮度分量Y分量的直方图HistYn及前一帧的亮度分量Y分量的直方图HistYn-1
其中,HistYn表示第n帧亮度分量Y分量的直方图;
HistYn-1表示第n-1帧亮度分量Y分量的直方图;
S1023,判断第一公式是否成立,若成立,则确定当前帧I帧图像不存在场景切换,否则确定当前帧I帧图像存在场景切换。
其中,
M表示EdgeYn中的元素数目;
EdgeYn表示对第n帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n帧解码图像中I帧的边缘;
width、heigh表示帧解码图像的宽度及高度;
β和θ、λ表示阈值参数;
ContentYn(p)表示EdgeYn中的边缘区域集合中第p个像素的坐标集;
ContentYn-1(q)表示EdgeYn-1中的边缘区域集合中第q个像素的坐标集;
|ContentYn(p)-ContentYn-1(q)|表示集合ContentYn中第p个元素到ContentYn-1第q个元素的距离;
EdgeYn-1表示对第n-1帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n-1帧解码图像的边缘;
Yn(x,y)表示第n帧图像的对应(x,y)坐标上的像素的亮度值;
Yn-1(x,y)表示第n-1帧图像的对应(x,y)坐标上的像素的亮度值;
HistYn(k)表示第n帧亮度分量直方图中亮度值为k的像素数目;
HistYn-1(k)表示第n-1帧亮度分量直方图中亮度值为k的像素数目;
k表示直方图亮度值;
S103,以宏块为单位,判断当前宏块是否存在剧烈变化,若存在剧烈变化,则不对当前宏块进行处理,进入下一宏块进行判断,若不存在剧烈变化,则进入步骤S104;
为详细描述判断当前宏块是否存在剧烈变化的方法,以下实施例以对YUV格式的视频序列进行判断为例来说明,其判断方法如下(如图3所示):
S1031,将当前帧解码图像I帧以16x16的宏块为单位进行划分,并判断当前宏块是否存在局部剧烈变化,其判断第二公式为:
其中,i表示像素位于当前宏块的行坐标,
j表示像素位于当前宏块的列坐标,
i,j=1,2,3...16,delta为变化阈值,取值范围为[2,16];
MBcurrYn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的Y分量值;
MBcurrYn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的Y分量值;
MBcurrUn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的U分量值;
MBcurrUn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的U分量值;
MBcurrVn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的V分量值;
MBcurrVn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的V分量值;
S1032,若第二公式成立,则设MB(OffestX,OffsetY)=1,否则设MB(OffestX,OffsetY)=0;
其中,MB(OffestX,OffsetY)表示中间变量数组;
OffestX=i,表示数组MB的行坐标;
OffestY=j,表示数组MB的列坐标;
S1033,判断第三公式是否成立,若成立,则确定不存在剧烈变化;否则,确定存在剧烈变化;
其中α为阈值,取值范围为[0.5,1];
以上实施例是对YUV格式的视频序列进行判断的方法,根据以上方法类推,可以对其他格式的视频序列进行类似的判断。
S104,对当前宏块所在帧的前一帧对应宏块进行滤波处理。
所述对当前宏块所在帧的前一帧对应宏块进行滤波处理的具体方法为:
判断MB(OffestX,OffsetY)=1是否成立,
若成立,则将(MBcurrYn-1(i,j)+MBcurrYn(i,j))/2的值赋值于MBcurrYn-1(i,j);
若不成立(即MB(OffestX,OffsetY)=0),则将MBcurrYn-1(i,j)的值赋值于MBcurrYn-1(i,j);
详细编程方法如下:
if(MB(OffestX,OffsetY)=1)
MBcurrYn-1(i,j)=(MBcurrYn-1(i,j)+MBcurrYn(i,j))/2
else
MBcurrYn-1(i,j)=MBcurrYn-1(i,j)
其中,MB(OffestX,OffsetY)表示中间变量数组;
OffestX=i,表示数组MB的行坐标;
OffestY=j,表示数组MB的列坐标;
i表示像素位于当前宏块的行;
j表示像素位于当前宏块的列;
MBcurrYn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的Y分量值;
MBcurrYn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的Y分量值;
本发明实施例通过判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若不存在,则判断当前宏块是否存在剧烈变化,若不存在剧烈变化,则对当前宏块所在帧的前一帧对应宏块进行滤波;通过本发明实施例能有效缓解I帧出现时可能出现的图像跳变的问题,从而提高视频观看者的主观感受。
实施例二
图4是本发明实施例的一种视频解码后处理装置结构示意图,所示装置包括:第一判断模块、第二判断模块、第三判断模块、滤波处理模块;
第一判断模块,用于判断当前帧解码图像的I帧是否为待处理视频序列首帧,是则不进行滤波处理,否则进入第二判断模块;
第二判断模块,用于断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若存在,则不进行滤波处理,若不存在,则进入第三判断模块;
第三判断模块,用于以宏块为单位,判断当前宏块是否存在剧烈变化,若存在剧烈变化,则不对当前宏块进行处理,进入下一宏块继续进行判断是否存在剧烈变化,若不存在剧烈变化,则进入滤波处理模块;
滤波处理模块,用于对当前宏块所在帧的前一帧对应宏块进行滤波处理。
进一步地,所述第二判断模块还包括:边缘提取模块、直方图获取模块、第四判断模块,如图5所示;
边缘提取模块,用于对当前帧解码图像的亮度分量Yn及当前帧前一帧解码图像的亮度分量Yn-1进行边缘提取和2值化处理,获取2值化处理后的当前帧I帧的边缘EdgeYn及前一帧的边缘EdgeYn-1
直方图获取模块,用于获取当前帧亮度分量Y分量的直方图HistYn及前一帧的亮度分量Y分量的直方图HistYn-1
第四判断模块,用于判断第一公式是否成立,若成立,则确定当前帧I帧图像不存在场景切换,否则确定当前帧I帧图像存在场景切换;
第一公式如下:
其中,
M表示EdgeYn中的元素数目;
EdgeYn表示对第n帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n帧解码图像中I帧的边缘;
width、heigh表示帧解码图像的宽度及高度;
β和θ、λ表示阈值参数;
ContentYn(p)表示EdgeYn中的边缘区域集合中第p个像素的坐标集;
ContentYn-1(q)表示EdgeYn-1中的边缘区域集合中第q个像素的坐标集;
|ContentYn(p)-ContentYn-1(q)|表示集合ContentYn中第p个元素到ContentYn-1第q个元素的距离;
EdgeYn-1表示对第n-1帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n-1帧解码图像的边缘;
Yn(x,y)表示第n帧图像的对应(x,y)坐标上的像素的亮度值;
Yn-1(x,y)表示第n-1帧图像的对应(x,y)坐标上的像素的亮度值;
HistYn(k)表示第n帧亮度分量直方图中亮度值为k的像素数目;
HistYn-1(k)表示第n-1帧亮度分量直方图中亮度值为k的像素数目;
k表示直方图亮度值;
进一步地,所述第三判断模块还包括:第五判断模块、中间变量数组设置模块、第六判断模块,如图6所示;
第五判断模块,用于将当前帧解码图像I帧以16x16的宏块为单位进行划分,判断第二公式是否成立;
第二公式如下:
其中,i表示像素位于当前宏块的行坐标,
j表示像素位于当前宏块的列坐标,
i,j=1,2,3...16,delta为变化阈值,取值范围为[2,16];
MBcurrYn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的Y分量值;
MBcurrYn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的Y分量值;
MBcurrUn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的U分量值;
MBcurrUn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的U分量值;
MBcurrVn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的V分量值;
MBcurrVn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的V分量值;
中间变量设置模块,用于根据第五判断模块的判断结果,若第二公式成立,则设MB(OffestX,OffsetY)=1,否则设MB(OffestX,OffsetY)=0;
其中MB(OffestX,OffsetY)表示中间变量数组;
OffestX=i,表示数组MB的行坐标;
OffestY=j,表示数组MB的列坐标;
第六判断模块,用于判断第三公式是否成立,若成立,则确定不存在剧烈变化;否则,确定存在剧烈变化;
第三公式如下:
其中α为阈值,取值范围为[0.5,1];
本发明实施例通过判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若不存在,则判断当前宏块是否存在剧烈变化,若不存在剧烈变化,则对当前宏块所在帧的前一帧对应宏块进行滤波;通过本发明实施例能有效缓解I帧出现时可能出现的图像跳变的问题,从而提高视频观看者的主观感受。
本领域的普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序指令相关硬件来完成的,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质可以为ROM、RAM、磁盘、光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种视频解码后处理方法,其特征在于,所述方法包括以下步骤:
判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若存在,则不进行滤波处理,若不存在,则
以宏块为单位,判断当前宏块是否存在剧烈变化,若存在剧烈变化,则不对当前宏块进行处理,进入下一宏块进行判断是否存在剧烈变化,若当前宏块不存在剧烈变化,则
对当前宏块所在帧的前一帧对应宏块进行滤波处理;
所述“以宏块为单位,判断当前宏块是否存在剧烈变化”具体包括以下步骤:
将当前帧解码图像I帧以16x16的宏块为单位进行划分,判断第二公式是否成立;
若第二公式成立,则设MB(OffestX,OffsetY)=1,否则设MB(OffestX,OffsetY)=0;
判断第三公式是否成立,若成立,则确定不存在剧烈变化,否则,确定存在剧烈变化;
其中,第二公式为:
<mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mo>|</mo> <msub> <mi>MBcurrY</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>MBcurrY</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>|</mo> </mrow> <mo>&lt;</mo> <mi>d</mi> <mi>e</mi> <mi>l</mi> <mi>t</mi> <mi>a</mi> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>|</mo> <msub> <mi>MBcurrU</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>MBcurrU</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>|</mo> </mrow> <mo>&lt;</mo> <mi>d</mi> <mi>e</mi> <mi>l</mi> <mi>t</mi> <mi>a</mi> <mo>/</mo> <mn>2</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>|</mo> <msub> <mi>MBcurrV</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>MBcurrV</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>|</mo> </mrow> <mo>&lt;</mo> <mi>d</mi> <mi>e</mi> <mi>l</mi> <mi>t</mi> <mi>a</mi> <mo>/</mo> <mn>2</mn> </mtd> </mtr> </mtable> </mfenced>
其中,i表示像素位于当前宏块的行坐标;j表示像素位于当前宏块的列坐标;i,j=1,2,3...16,delta为变化阈值,取值范围为[2,16];MBcurrYn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的Y分量值;MBcurrYn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的Y分量值;MBcurrUn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的U分量值;MBcurrUn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的U分量值;MBcurrVn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的V分量值;MBcurrVn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的V分量值;
第三公式为:
<mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>i</mi> <mo>=</mo> <mn>16</mn> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mn>16</mn> </mrow> </munderover> <mi>M</mi> <mi>B</mi> <mrow> <mo>(</mo> <mi>O</mi> <mi>f</mi> <mi>f</mi> <mi>e</mi> <mi>s</mi> <mi>t</mi> <mi>X</mi> <mo>,</mo> <mi>O</mi> <mi>f</mi> <mi>f</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>Y</mi> <mo>)</mo> </mrow> <mo>/</mo> <mn>256</mn> <mo>&amp;GreaterEqual;</mo> <mi>&amp;alpha;</mi> </mrow>
其中α为阈值,取值范围为[0.5,1];MB(OffestX,OffsetY)表示中间变量数组;OffestX=i,表示数组MB的行坐标;OffestY=j,表示数组MB的列坐标;
所述对当前宏块所在帧的前一帧对应宏块进行滤波处理的具体方法为:
判断MB(OffestX,OffsetY)=1是否成立,
若成立,则将(MBcurrYn-1(i,j)+MBcurrYn(i,j))/2的值赋值于MBcurrYn-1(i,j);
若不成立(即MB(OffestX,OffsetY)=0),则将MBcurrYn-1(i,j)的值赋值于MBcurrYn-1(i,j)。
2.如权利要求1所述的视频解码后处理方法,其特征在于,所述步骤“判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换”之前还包括步骤:
判断当前帧解码图像的I帧是否为待处理视频序列首帧,是则不进行滤波处理,否则进入步骤:
判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换。
3.如权利要求1所述的视频解码后处理方法,其特征在于,所述“判断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换”包括以下步骤:
对当前帧解码图像的亮度分量Yn及当前帧前一帧解码图像的亮度分量Yn-1进行边缘提取和2值化处理,获取2值化处理后的当前帧I帧的边缘EdgeYn及前一帧的边缘EdgeYn-1
获取当前帧亮度分量Y分量的直方图HistYn及前一帧的亮度分量Y分量的直方图HistYn-1
判断第一公式是否成立,若成立,则确定当前帧I帧图像不存在场景切换,否则确定当前帧I帧图像存在场景切换;
第一公式为:
<mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>p</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <mi>M</mi> <mi>i</mi> <mi>n</mi> <mrow> <mo>(</mo> <mo>|</mo> <mrow> <msub> <mi>ContentY</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>p</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>ContentY</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>q</mi> <mo>)</mo> </mrow> </mrow> <mo>|</mo> <mo>)</mo> </mrow> </mrow> <mi>M</mi> </mfrac> <mo>&amp;le;</mo> <mi>&amp;beta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mi>y</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>w</mi> <mi>i</mi> <mi>d</mi> <mi>t</mi> <mi>h</mi> <mo>,</mo> <mi>h</mi> <mi>e</mi> <mi>i</mi> <mi>g</mi> <mi>h</mi> </mrow> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>Y</mi> <mi>n</mi> </msub> <mo>(</mo> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <mo>)</mo> <mo>-</mo> <msub> <mi>Y</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>(</mo> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> <mrow> <mi>w</mi> <mi>i</mi> <mi>d</mi> <mi>t</mi> <mi>h</mi> <mo>&amp;times;</mo> <mi>h</mi> <mi>e</mi> <mi>i</mi> <mi>g</mi> <mi>h</mi> </mrow> </mfrac> <mo>&amp;le;</mo> <mi>&amp;theta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>0</mn> </mrow> <mn>255</mn> </munderover> <mo>|</mo> <msub> <mi>HistY</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>HistY</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>|</mo> <mo>&amp;le;</mo> <mi>&amp;lambda;</mi> </mrow> </mtd> </mtr> </mtable> </mfenced>
其中,
M表示EdgeYn中的元素数目;
EdgeYn表示对第n帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n帧解码图像中I帧的边缘;
width、heigh表示帧解码图像的宽度及高度;β和θ、λ表示阈值参数;
ContentYn(p)表示EdgeYn中的边缘区域集合中第p个像素的坐标集;
ContentYn-1(q)表示EdgeYn-1中的边缘区域集合中第q个像素的坐标集;
|ContentYn(p)-ContentYn-1(q)|表示集合ContentYn中第p个元素到ContentYn-1第q个元素的距离;
EdgeYn-1表示对第n-1帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n-1帧解码图像的边缘;
Yn(x,y)表示第n帧图像的对应(x,y)坐标上的像素的亮度值;
Yn-1(x,y)表示第n-1帧图像的对应(x,y)坐标上的像素的亮度值;
HistYn(k)表示第n帧亮度分量直方图中亮度值为k的像素数目;
HistYn-1(k)表示第n-1帧亮度分量直方图中亮度值为k的像素数目;
k表示直方图亮度值。
4.一种视频解码后处理装置,其特征在于,所述装置包括:第一判断模块、第二判断模块、第三判断模块、滤波处理模块;
第一判断模块,用于判断当前帧解码图像的I帧是否为待处理视频序列首帧,是则不进行滤波处理,否则进入第二判断模块;
第二判断模块,用于断当前帧解码图像的I帧的内容相对上一帧的内容是否存在场景切换,若存在,则不进行滤波处理,若不存在,则进入第三判断模块;
第三判断模块,用于以宏块为单位,判断当前宏块是否存在剧烈变化,若存在剧烈变化,则不对当前宏块进行处理,进入下一宏块继续进行判断是否存在剧烈变化,若当前宏块不存在剧烈变化,则进入滤波处理模块;
滤波处理模块,用于对当前宏块所在帧的前一帧对应宏块进行滤波处理;
所述第三判断模块还包括:第五判断模块、中间变量数组设置模块、第六判断模块,
第五判断模块,用于将当前帧解码图像I帧以16x16的宏块为单位进行划分,判断第二公式是否成立;
中间变量设置模块,用于根据第五判断模块的判断结果,若第二公式成立,则设MB(OffestX,OffsetY)=1,否则设MB(OffestX,OffsetY)=0;
第六判断模块,用于判断第三公式是否成立,若成立,则确定不存在剧烈变化;否则,确定存在剧烈变化;
其中,第二公式如下:
<mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mo>|</mo> <msub> <mi>MBcurrY</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>MBcurrY</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>|</mo> </mrow> <mo>&lt;</mo> <mi>d</mi> <mi>e</mi> <mi>l</mi> <mi>t</mi> <mi>a</mi> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>|</mo> <msub> <mi>MBcurrU</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>MBcurrU</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>|</mo> </mrow> <mo>&lt;</mo> <mi>d</mi> <mi>e</mi> <mi>l</mi> <mi>t</mi> <mi>a</mi> <mo>/</mo> <mn>2</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>|</mo> <msub> <mi>MBcurrV</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>MBcurrV</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>|</mo> </mrow> <mo>&lt;</mo> <mi>d</mi> <mi>e</mi> <mi>l</mi> <mi>t</mi> <mi>a</mi> <mo>/</mo> <mn>2</mn> </mtd> </mtr> </mtable> </mfenced>
其中,i表示像素位于当前宏块的行坐标,j表示像素位于当前宏块的列坐标,i,j=1,2,3...16,delta为变化阈值,取值范围为[2,16];MBcurrYn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的Y分量值;MBcurrYn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的Y分量值;MBcurrUn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的U分量值;MBcurrUn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的U分量值;MBcurrVn(i,j)表示第n帧解码图像中当前宏块中第i行第j列像素的V分量值;MBcurrVn-1(i,j)表示第n-1帧解码图像中当前宏块中第i行第j列像素的V分量值;
第三公式如下:
<mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>i</mi> <mo>=</mo> <mn>16</mn> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mn>16</mn> </mrow> </munderover> <mi>M</mi> <mi>B</mi> <mrow> <mo>(</mo> <mi>O</mi> <mi>f</mi> <mi>f</mi> <mi>e</mi> <mi>s</mi> <mi>t</mi> <mi>X</mi> <mo>,</mo> <mi>O</mi> <mi>f</mi> <mi>f</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>Y</mi> <mo>)</mo> </mrow> <mo>/</mo> <mn>256</mn> <mo>&amp;GreaterEqual;</mo> <mi>&amp;alpha;</mi> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>
其中α为阈值,取值范围为[0.5,1];MB(OffestX,OffsetY)表示中间变量数组;OffestX=i,表示数组MB的行坐标;OffestY=j,表示数组MB的列坐标;
所述对当前宏块所在帧的前一帧对应宏块进行滤波处理的具体方法为:
判断MB(OffestX,OffsetY)=1是否成立,
若成立,则将(MBcurrYn-1(i,j)+MBcurrYn(i,j))/2的值赋值于MBcurrYn-1(i,j);
若不成立(即MB(OffestX,OffsetY)=0),则将MBcurrYn-1(i,j)的值赋值于MBcurrYn-1(i,j)。
5.如权利要求4所述的视频解码后处理装置,其特征在于,所述第二判断模块还包括:边缘提取模块、直方图获取模块、第四判断模块,
边缘提取模块,用于对当前帧解码图像的亮度分量Yn及当前帧前一帧解码图像的亮度分量Yn-1进行边缘提取和2值化处理,获取2值化处理后的当前帧I帧的边缘EdgeYn及前一帧的边缘EdgeYn-1
直方图获取模块,用于获取当前帧亮度分量Y分量的直方图HistYn及前一帧的亮度分量Y分量的直方图HistYn-1
第四判断模块,用于判断第一公式是否成立,若成立,则确定当前帧I帧图像不存在场景切换,否则确定当前帧I帧图像存在场景切换;
第一公式如下:
<mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>p</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <mi>M</mi> <mi>i</mi> <mi>n</mi> <mrow> <mo>(</mo> <mo>|</mo> <mrow> <msub> <mi>ContentY</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>p</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>ContentY</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>q</mi> <mo>)</mo> </mrow> </mrow> <mo>|</mo> <mo>)</mo> </mrow> </mrow> <mi>M</mi> </mfrac> <mo>&amp;le;</mo> <mi>&amp;beta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mfrac> <mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>x</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mi>y</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>w</mi> <mi>i</mi> <mi>d</mi> <mi>t</mi> <mi>h</mi> <mo>,</mo> <mi>h</mi> <mi>e</mi> <mi>i</mi> <mi>g</mi> <mi>h</mi> </mrow> </munderover> <msup> <mrow> <mo>(</mo> <msub> <mi>Y</mi> <mi>n</mi> </msub> <mo>(</mo> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <mo>)</mo> <mo>-</mo> <msub> <mi>Y</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>(</mo> <mrow> <mi>x</mi> <mo>,</mo> <mi>y</mi> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> <mrow> <mi>w</mi> <mi>i</mi> <mi>d</mi> <mi>t</mi> <mi>h</mi> <mo>&amp;times;</mo> <mi>h</mi> <mi>e</mi> <mi>i</mi> <mi>g</mi> <mi>h</mi> </mrow> </mfrac> <mo>&amp;le;</mo> <mi>&amp;theta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>0</mn> </mrow> <mn>255</mn> </munderover> <mo>|</mo> <msub> <mi>HistY</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>HistY</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>|</mo> <mo>&amp;le;</mo> <mi>&amp;lambda;</mi> </mrow> </mtd> </mtr> </mtable> </mfenced>
其中,
M表示EdgeYn中的元素数目;
EdgeYn表示对第n帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n帧解码图像中I帧的边缘;
width、heigh表示帧解码图像的宽度及高度;
β和θ、λ表示阈值参数;
ContentYn(p)表示EdgeYn中的边缘区域集合中第p个像素的坐标集;
ContentYn-1(q)表示EdgeYn-1中的边缘区域集合中第q个像素的坐标集;
|ContentYn(p)-ContentYn-1(q)|表示集合ContentYn中第p个元素到ContentYn-1第q个元素的距离;
EdgeYn-1表示对第n-1帧解码图像的亮度分量Y分量进行边缘提取和2值化处理后,第n-1帧解码图像的边缘;
Yn(x,y)表示第n帧图像的对应(x,y)坐标上的像素的亮度值;
Yn-1(x,y)表示第n-1帧图像的对应(x,y)坐标上的像素的亮度值;
HistYn(k)表示第n帧亮度分量直方图中亮度值为k的像素数目;
HistYn-1(k)表示第n-1帧亮度分量直方图中亮度值为k的像素数目;
k表示直方图亮度值。
CN201110410851.XA 2011-12-12 2011-12-12 一种视频解码后处理方法及装置 Expired - Fee Related CN102497553B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110410851.XA CN102497553B (zh) 2011-12-12 2011-12-12 一种视频解码后处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110410851.XA CN102497553B (zh) 2011-12-12 2011-12-12 一种视频解码后处理方法及装置

Publications (2)

Publication Number Publication Date
CN102497553A CN102497553A (zh) 2012-06-13
CN102497553B true CN102497553B (zh) 2017-08-25

Family

ID=46189335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110410851.XA Expired - Fee Related CN102497553B (zh) 2011-12-12 2011-12-12 一种视频解码后处理方法及装置

Country Status (1)

Country Link
CN (1) CN102497553B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106358029B (zh) * 2016-10-18 2019-05-03 北京字节跳动科技有限公司 一种视频图像处理方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101091393A (zh) * 2004-12-28 2007-12-19 日本电气株式会社 运动图像编码方法以及利用其的装置、计算机程序
CN101742293A (zh) * 2008-11-14 2010-06-16 北京中星微电子有限公司 一种基于视频运动特征的图像自适应帧场编码方法
CN102164278A (zh) * 2011-02-15 2011-08-24 杭州海康威视软件有限公司 用于去除i帧闪烁的视频编码方法及其装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010183181A (ja) * 2009-02-03 2010-08-19 Sanyo Electric Co Ltd 画像処理装置、およびそれを搭載した撮像装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101091393A (zh) * 2004-12-28 2007-12-19 日本电气株式会社 运动图像编码方法以及利用其的装置、计算机程序
CN101742293A (zh) * 2008-11-14 2010-06-16 北京中星微电子有限公司 一种基于视频运动特征的图像自适应帧场编码方法
CN102164278A (zh) * 2011-02-15 2011-08-24 杭州海康威视软件有限公司 用于去除i帧闪烁的视频编码方法及其装置

Also Published As

Publication number Publication date
CN102497553A (zh) 2012-06-13

Similar Documents

Publication Publication Date Title
CN103220528B (zh) 通过使用大型变换单元编码和解码图像的方法和设备
CN101049006B (zh) 图像编码方法及装置以及图像解码方法及装置
CN100574447C (zh) 基于avs视频编码的快速帧间预测模式选择方法
CN103067702B (zh) 一种用于具有静止画面视频的视频浓缩方法
CN102265611A (zh) 在混合视频编码中具有多个滤波器的本地环路内滤波
CN105306945A (zh) 一种监控视频的可伸缩浓缩编码方法和装置
CN114363623A (zh) 图像处理方法、装置、介质及电子设备
CN103402087A (zh) 一种基于可分级位流的视频编解码方法
CN106791850A (zh) 视频编码方法及装置
CN102196253B (zh) 一种帧类型自适应选择的视频编码方法及装置
CN103096060B (zh) 帧内图像预测编解码的自适应环路滤波方法及装置
CN109068134A (zh) 视频编码方法及装置
CN102497553B (zh) 一种视频解码后处理方法及装置
WO2020227911A1 (zh) 一种hevc视频序列编解码加速方法
CN114449262A (zh) 视频编码控制方法、装置、设备和存储介质
CN110677644B (zh) 一种视频编码、解码方法及视频编码帧内预测器
CN103974069B (zh) 可重用的视频编码方法和编码器
CN105049853A (zh) 一种基于片源分析的sao编码方法及系统
CN104104947A (zh) 一种视频编码方法和装置
CN101489052B (zh) 字幕数据的处理方法及装置
CN104168482B (zh) 一种视频编解码方法及装置
CN115914631A (zh) 熵解码复杂度可控的编解码方法及系统
CN104104897B (zh) 一种移动终端的视频编辑方法和装置
CN113784147B (zh) 一种基于卷积神经网络的高效视频编码方法及系统
CN103442235A (zh) 一种图像处理方法以及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
ASS Succession or assignment of patent right

Owner name: SHENZHEN YUNZHOU MULTIMEDIA TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SHENZHEN TEMOBI SCIENCE + TECHNOLOGY CO., LTD.

Effective date: 20140805

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20140805

Address after: Unit B4 9 building 518057 Guangdong city of Shenzhen province Nanshan District high in the four EVOC Technology Building No. 31

Applicant after: Shenzhen Yunzhou Multimedia Technology Co., Ltd.

Address before: 19, building 18, Changhong technology building, 518057 South twelve Road, South tech Zone, Nanshan District hi tech Zone, Guangdong, Shenzhen

Applicant before: Shenzhen Temobi Science & Tech Development Co.,Ltd.

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB02 Change of applicant information

Address after: The central Shenzhen city of Guangdong Province, 518057 Keyuan Road, Nanshan District science and Technology Park No. 15 Science Park Sinovac A Building 1 unit 403, No. 405 unit

Applicant after: Shenzhen Yunzhou Multimedia Technology Co., Ltd.

Address before: Unit B4 9 building 518057 Guangdong city of Shenzhen province Nanshan District high in the four EVOC Technology Building No. 31

Applicant before: Shenzhen Yunzhou Multimedia Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170825

Termination date: 20191212