一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于导向滤波和边缘检测的帧内划分方法、装置及介质与流程

2021-10-19 11:48:00 来源:中国专利 TAG:
基于导向滤波和边缘检测的帧内划分方法、装置及介质与流程

本发明涉及数据处理技术领域,尤其是一种基于导向滤波和边缘检测的帧内划分方法、装置及介质。

背景技术

从以前的2D黑白电视到现在的全景视频、3D点云视频,视频的获取媒介和播放设备日趋复杂和多样化。分辨率从以前的720p到现在的4K、8K乃至于16K超高清,人们对于视频的图像质量要求也在不断提高。然而像素分辨率的提升也给视频信息的存储和传输带来巨大的挑战。

为此,中国AVS工作组(Audio Video coding Standard workgroup of China)开启了中国第三代视频编码标准AVS3的自主研发,以适应超高清、点云视频编码的需求。在已完成的第一阶段标准中,AVS3的基准档次的压缩效率相比另一国际主流视频编码标准HEVC提高了20%以上。但是高压缩性能意味着更精确的预测和划分编码,为此AVS3引入了许多帧内编码技术,包括QT BT EQT混合划分,扩展的帧内角度预测模式。这些编码工具大大提高了编码复杂度,对编码器硬件的实时性提出了巨大的考验。

如何在不影响主观图像质量的基础上尽可能地缩减编码时间,成为亟待解决的技术问题。



技术实现要素:

有鉴于此,本发明实施例提供一种基于导向滤波和边缘检测的帧内划分方法、装置及介质,以缩减编码时间。

本发明的第一方面提供了一种基于导向滤波和边缘检测的帧内划分方法,包括:

对原始图像帧进行弱高斯平滑处理,得到第一图像;

对所述第一图像进行导向滤波处理,得到第二图像;

通过边缘检测算法对所述第二图像进行边缘提取,得到边缘图像信息;

根据所述边缘图像信息统计当前编码块位置的边缘点,确定边缘点数目;

根据所述边缘点数目确定帧内划分方式,并采用对应的帧内划分方式对编码块进行划分。

可选地,所述对所述第一图像进行导向滤波处理,得到第二图像,包括:

获取引导图像,并将所述第一图像作为输入图像;

计算当前滤波窗口内像素的均值;

获取任意两个相邻像素点的值;

计算所述当前滤波窗口内像素的方差;

根据所述均值、所述像素点的值以及所述方差,计算所述导向滤波处理的滤波核;

根据所述滤波核、所述引导图像以及所述输入图像进行导向滤波,得到所述第二图像。

可选地,所述滤波核的计算公式为:

其中,ω为权重值;k(i,j)∈ωk表示参与到滤波核的窗口范围;Ii和Ij为相邻两个像素点的值;μk为当前滤波窗口内像素的均值;σk为窗口内像素的方差;∈为惩罚值;

所述导向滤波的计算公式为:

其中,qi代表输出图像q在位置i的像素值,pj代表输入图像p在位置i的像素值;Wij为与引导图像I相关的滤波核。

可选地,当所述任意两个相邻像素点位于边界两侧时的权重值大于所述任意两个相邻像素点位于边界同侧时的权重值。

可选地,所述通过边缘检测算法对所述第二图像进行边缘提取,得到边缘图像信息,包括:

计算梯度幅值图像和梯度方向;

对所述梯度幅值图像进行非最大值抑制处理;

根据当前编码块不同区域的边缘点统计结果来判定是否跳过对应的块划分方式;

将小于低阈值的点置0;将大于高阈值的点置为255并标记为确定边缘点;

将小于高阈值且大于低阈值的点使用8连通区域确定边缘点。

可选地,所述根据所述边缘点数目确定帧内划分方式,包括:

当所述边缘点数目满足第一预设条件,确定执行二叉树快速划分或者工字形快速划分;

其中,所述第一预设条件的表达式为:

其中,Edge(sum)代表所述边缘点数目;h代表编码块的高;w代表编码块的宽。

可选地,所述采用对应的帧内划分方式对编码块进行划分,包括:

对于所述二叉树快速划分:

统计垂直划分时第一区域和第二区域的第一边缘点数量差值,以及统计水平划分时第一区域和第二区域的第二边缘点数量差值;

当所述第一边缘点数量差值小于预设的第一阈值,则执行水平划分;

当所述第二边缘点数量差值大于预设的第一阈值,则执行垂直划分;

对于所述工字形快速划分方式:

统计垂直划分时第一区域和第二区域的第三边缘点数量差值;

将第一区域与第二区域的边缘点数量之和作为第一目标值,将第三区域与第四区域的边缘点数量之和作为第二目标值,计算所述第一目标值与所述第二目标值之间的第四边缘点数量差值;

将所述第三边缘点数量差值与所述第四边缘点数量差值相加得到第三目标值;

当所述第三目标值小于预设的第二阈值,则执行垂直划分;当所述第三目标值大于预设的第三阈值,则执行水平划分。

本发明实施例的第二方面还提供了一种基于导向滤波和边缘检测的帧内划分装置,包括:

高斯平滑处理模块,用于对原始图像帧进行弱高斯平滑处理,得到第一图像;

导向滤波处理模块,用于对所述第一图像进行导向滤波处理,得到第二图像;

边缘提取模块,用于通过边缘检测算法对所述第二图像进行边缘提取,得到边缘图像信息;

统计模块,用于根据所述边缘图像信息统计当前编码块位置的边缘点,确定边缘点数目;

划分模块,用于根据所述边缘点数目确定帧内划分方式,并采用对应的帧内划分方式对编码块进行划分。

本发明实施例的第三方面还提供了一种电子设备,包括处理器以及存储器;

所述存储器用于存储程序;

所述处理器执行所述程序实现如前面所述的方法。

本发明实施例的第四方面还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如前面所述的方法。

本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。

本发明的实施例对原始图像帧进行弱高斯平滑处理,得到第一图像;对所述第一图像进行导向滤波处理,得到第二图像;通过边缘检测算法对所述第二图像进行边缘提取,得到边缘图像信息;根据所述边缘图像信息统计当前编码块位置的边缘点,确定边缘点数目;根据所述边缘点数目确定帧内划分方式,并采用对应的帧内划分方式对编码块进行划分。本发明能够实现快速划分,缩减了编码时间。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的完整步骤流程图;

图2为本发明实施例提供的不同划分方式下的划分结果示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

针对现有技术存在的问题,本发明实施例提供了一种基于导向滤波和边缘检测的帧内划分方法,包括:

对原始图像帧进行弱高斯平滑处理,得到第一图像;

对所述第一图像进行导向滤波处理,得到第二图像;

通过边缘检测算法对所述第二图像进行边缘提取,得到边缘图像信息;

根据所述边缘图像信息统计当前编码块位置的边缘点,确定边缘点数目;

根据所述边缘点数目确定帧内划分方式,并采用对应的帧内划分方式对编码块进行划分。

可选地,所述对所述第一图像进行导向滤波处理,得到第二图像,包括:

获取引导图像,并将所述第一图像作为输入图像;

计算当前滤波窗口内像素的均值;

获取任意两个相邻像素点的值;

计算所述当前滤波窗口内像素的方差;

根据所述均值、所述像素点的值以及所述方差,计算所述导向滤波处理的滤波核;

根据所述滤波核、所述引导图像以及所述输入图像进行导向滤波,得到所述第二图像。

可选地,所述滤波核的计算公式为:

其中,ω为权重值;k(i,j)∈ωk表示参与到滤波核的窗口范围;Ii和Ij为相邻两个像素点的值;μk为当前滤波窗口内像素的均值;σk为窗口内像素的方差;∈为惩罚值;

所述导向滤波的计算公式为:

其中,qi代表输出图像q在位置i的像素值,pj代表输入图像p在位置i的像素值;Wij为与引导图像I相关的滤波核。

可选地,当所述任意两个相邻像素点位于边界两侧时的权重值大于所述任意两个相邻像素点位于边界同侧时的权重值。

可选地,所述通过边缘检测算法对所述第二图像进行边缘提取,得到边缘图像信息,包括:

计算梯度幅值图像和梯度方向;

对所述梯度幅值图像进行非最大值抑制处理;

根据当前编码块不同区域的边缘点统计结果来判定是否跳过对应的块划分方式;

将小于低阈值的点置0;将大于高阈值的点置为255并标记为确定边缘点;

将小于高阈值且大于低阈值的点使用8连通区域确定边缘点。

可选地,所述根据所述边缘点数目确定帧内划分方式,包括:

当所述边缘点数目满足第一预设条件,确定执行二叉树快速划分或者工字形快速划分;

其中,所述第一预设条件的表达式为:

其中,Edge(sum)代表所述边缘点数目;h代表编码块的高;w代表编码块的宽。

可选地,所述采用对应的帧内划分方式对编码块进行划分,包括:

对于所述二叉树快速划分:

统计垂直划分时第一区域和第二区域的第一边缘点数量差值,以及统计水平划分时第一区域和第二区域的第二边缘点数量差值;

当所述第一边缘点数量差值小于预设的第一阈值,则执行水平划分;

当所述第二边缘点数量差值大于预设的第一阈值,则执行垂直划分;

对于所述工字形快速划分方式:

统计垂直划分时第一区域和第二区域的第三边缘点数量差值;

将第一区域与第二区域的边缘点数量之和作为第一目标值,将第三区域与第四区域的边缘点数量之和作为第二目标值,计算所述第一目标值与所述第二目标值之间的第四边缘点数量差值;

将所述第三边缘点数量差值与所述第四边缘点数量差值相加得到第三目标值;

当所述第三目标值小于预设的第二阈值,则执行垂直划分;当所述第三目标值大于预设的第三阈值,则执行水平划分。

本发明实施例的第二方面还提供了一种基于导向滤波和边缘检测的帧内划分装置,包括:

高斯平滑处理模块,用于对原始图像帧进行弱高斯平滑处理,得到第一图像;

导向滤波处理模块,用于对所述第一图像进行导向滤波处理,得到第二图像;

边缘提取模块,用于通过边缘检测算法对所述第二图像进行边缘提取,得到边缘图像信息;

统计模块,用于根据所述边缘图像信息统计当前编码块位置的边缘点,确定边缘点数目;

划分模块,用于根据所述边缘点数目确定帧内划分方式,并采用对应的帧内划分方式对编码块进行划分。

本发明实施例的第三方面还提供了一种电子设备,包括处理器以及存储器;

所述存储器用于存储程序;

所述处理器执行所述程序实现如前面所述的方法。

本发明实施例的第四方面还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如前面所述的方法。

本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。

下面结合说明书附图,对本发明的具体实现方法进行详细描述:

如图1所示,本发明主要优化编码块的划分决策,具体步骤如下5个步骤:

1、对原始图像帧进行弱高斯平滑,窗口尺寸设为3,标准差为0.9。

2、对平滑后的图像进行导向滤波,滤波窗口设为35,惩罚值∈设为0.0002,输入图像p为原始图像,引导图像I也为原始图像。

3、利用canny算法对导向滤波结果图像进行边缘提取,保存边缘图像信息。

4、由于BT划分和EQT划分只有在尺寸为64x64以下的编码块进行,故本方法针对尺寸大于16x16并且小于等于64x64的编码块进行划分快速决策。利用边缘图像统计当前编码块位置的边缘点,对于满足如下条件的编码块进行快速决策:

其中,Edge(sum)代表当前块内的边缘点数目,h、w为编码块CU的高和宽,[]为取整操作。这样做是为了有足够的边缘信息进行判定,避免误判。

其中,针对二叉树快速划分(BT划分)方式,如图2所示,首先统计垂直划分时第一区域(A区域)与第二区域(B区域)的边缘点数量差值Edge_BTV(diff)以及水平划分时A与B区域的边缘点数量差值Edge_BTH(diff),若满足:

Edge_BTV(diff)>theta_BT×Edge_BTH(diff)

则跳过BT水平划分。同理,若满足

Edge_BTH(diff)>theta_BT×Edge_BTV(diff)

则跳过BT垂直划分。其中,theta_BT为判断阈值,当编码块尺寸小于32x32时,theta_BT=2.5;当编码块尺寸大于等于32x32时,theta_BT=1.8。

针对工字形快速划分(EQT划分)方式,统计垂直划分时A与B区域的边缘点数量差值Edge_EQTV1(diff),然后统计A B区域与C D区域的边缘点数量差值Edge_EQTV2(diff),两者相加得到Edge_EQTV(diff),可以得到水平划分的统计差值Edge_EQTH(diff)。其中,C区域即为第三区域;D区域即为第四区域。

若满足:

则跳过EQT水平划分。同理,若满足

则跳过EQT垂直划分。其中,theta_EQT为判断阈值,当编码块尺寸小于32x32时,theta_EQT=1.8;当编码块尺寸大于等于32x32时,theta_BT=1.4。

5、在帧内编码中,当量化参数Qp过高时,快速决策的准确率会下降。因此,本发明在Qp值大于32时,对编码块尺寸小于32x32的块不做快速划分。

另外,需要说明的是,本发明实施例的导向滤波器是一个边缘保持滤波器;

所述对所述第一图像进行导向滤波处理,得到第二图像,这一步骤具体为:

对于一个输入的图像p,通过引导图像l,经过滤波后得到输出图像q,其中p和l都是算法的输入。引导滤波定义了如下所示的一个线性滤波过程,对于位置i的像素点,得到的滤波输出是一个加权平均值:

qi=∑jWij(I)pj

式中,i为输出图像q像素点下标,j为输入图像p像素点下标,Wij为与引导图像l相关的滤波核。该滤波核相对于输入图像p是线性的,其表达公式如下:

其中,μk为当前滤波窗口内像素的均值,Ii和Ij为相邻两个像素点的值,σk为窗口内像素的方差,∈为惩罚值,ω为权重值,k(i,j)∈ωk表示参与到滤波核的窗口范围。Ii和Ij在边界两侧时,(Ii-μk)和(Ij-μk)异号,否则同号。而异号时的权重值将远远小于同号时的权重值,这样处于平坦区域的像素则会被加以较大的权重,平滑效果效果更明显,而处于边界两侧的像素则会被加以较小的权重,平滑效果较弱,能够起到保持边界的效果。

本发明将原始图像设为输入图像p以及引导图像l,因为当引导图是原图的时候,导向滤波器就是一个边缘保持滤波器。

本发明经过导向滤波得到的图片不仅平滑了噪声,同时也保留了边缘信息,提高后续canny边缘提取的准确性。

另外,对于canny边缘提取,Canny主要通过梯度算子获取图像的边缘信息,基本步骤如下:

1、高斯平滑,由于高斯平滑很容易将边缘与噪声一起滤除,且高低阈值界定与高斯滤波强度存在强相关性,因此算法本身鲁棒性差,故在此需要弱化高斯滤波的影响;

2、计算梯度幅值M(i,j)和方向θ(i,j),i,j分别为图像像素下标,公式如下:

式中,gy和gx分别为垂直和水平方向的梯度算子;

本发明利用水平与垂直方向sobel算子与输入图像卷积计算得到水平梯度值gx(i,j)和垂直梯度值gy(i,j),计算

梯度幅值:

Sobel算子:

其中,水平:

垂直:

gx(i,j)=I(i,j)*sobelx

gy(i,j)=I(i,j)*sobely

I(i,j)为输入图像像素值;

3、对梯度幅值图像进行非最大值抑制;

其中,非极大值抑制:每个像素点与沿着其对应的梯度方向的两个像素相比,若中心像素为最大值,则保留,否则中心置0,这样可以抑制非极大值,保留局部梯度最大的点,以得到细化的边缘。

4、选取高低阈值进行判定;以确定帧内划分方式:即根据当前编码块不同区域的边缘点统计比较判定是否跳过对应的块划分方式。

5、滞后阈值处理和连接边缘。

本发明将小于低阈值的点置0;将大于高阈值的点立即标记(这些点为确定边缘点),置为255。将小于高阈值,大于低阈值的点使用8连通区域确定,即将与上述标记为边缘点的点相邻的点也标记为边缘点。

本发明在编码块划分时可以利用得到的边缘信息进行统计,对于满足特定边缘特征的编码块进行划分方式提前决策。

综上所述,本发明提出了一种针对AVS3帧内块划分的快速决策算法。主要思路是在AVS3帧内编码的时候,利用导向滤波对原始图像进行预处理,在保留图像边界的同时平滑噪声,然后利用canny算法对预处理后的图像进行边缘检测,最后利用得到的图像边缘信息对帧内编码的块划分流程进行快速决策,对于满足某些边缘特征的编码块选择性跳过其中的划分模式,减少遍历的模式和向下递归划分的路径,达到缩减编码复杂度的目的。

在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。

此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。

计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜