本发明涉及图像处理技术领域,特别是涉及一种图像补全方法、装置、设备及计算机可读存储介质。
背景技术:
网络传输、硬盘存储以及拍摄不当都会对数字图像造成损害,造成图像不全,像素模糊等情况。因此需要对残缺图片和受污染照片进行图片补全得到修复后的图像,以投入到实际的生产应用中。随着数字图像处理技术和深度学习技术的发展,图像补全技术也逐渐渗透到了各个领域,比如文物图片补全,卫星图像修复等。
现有的图像补全方法主要分为两种,一种是对图像的纹理进行分析,并通过匹配、滤波等传统的方法进行补全。这种方法的计算复杂度非常高,在实际的应用环境中运行效率低。另一种是利用基于深度学习的图像补全方法进行图像补全,但是模型训练需要海量的人工标注样本,模型结构和参数需要经过精心的设计和反复的尝试。同时深度学习模型参数量巨大,实际应用时,模型计算缓慢,需要经过模型压缩才能部署到需要实时响应的环境中。
综上所述,如何有效地解决现有的图像补全方式计算复杂度高,在实际的应用环境中运行效率低,模型结构和参数需要反复调整等问题,是目前本领域技术人员急需解决的问题。
技术实现要素:
本发明的目的是提供一种图像补全方法,该方法较大地降低了计算复杂度,提高了图像补全效率;本发明的另一目的是提供一种图像补全装置、设备及计算机可读存储介质。
为解决上述技术问题,本发明提供如下技术方案:
一种图像补全方法,包括:
对接收到的待补全图像进行解析,得到待补全区域;
获取所述待补全区域中各待补全像素点;
分别确定各所述待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点;
针对每个待补全像素点,根据所述上方最近邻像素点和所述下方最近邻像素点计算竖直像素梯度,根据所述左方最近邻像素点和所述右方最近邻像素点计算水平像素梯度,根据两个所述主对角线方向最近邻像素点计算主对角线像素梯度,根据两个所述副对角线方向最近邻像素点计算副对角线像素梯度;
针对每个待补全像素点,选取所述竖直像素梯度、所述水平像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向;
利用与所述目标像素插值方向对应的预设插值方式分别对各所述待补全像素进行补全操作,得到补全后图像。
在本发明的一种具体实施方式中,对接收到的待补全图像进行解析,得到待补全区域,包括:
利用索贝尔算子计算所述待补全图像的梯度信息图;
利用倒角距离匹配算法对所述梯度信息图进行计算,得到所述待补全区域的边界位置信息;
根据所述边界位置信息确定所述待补全区域。
在本发明的一种具体实施方式中,选取竖直像素梯度、所述水平像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向,包括:
获取所述待补全图像的宽度值和高度值;
根据所述宽度值和所述高度值计算所述竖直像素梯度对应的竖直梯度权重值和所述水平像素梯度对应的水平梯度权重值;
对所述竖直像素梯度和所述竖直梯度权重值进行加权计算得到竖直加权像素梯度,对所述水平像素梯度和所述水平梯度权重值进行加权计算得到水平加权像素梯度;
选取所述竖直加权像素梯度、所述水平加权像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为所述目标像素插值方向。
在本发明的一种具体实施方式中,在得到补全后图像之后,还包括:
输出所述补全后图像。
一种图像补全装置,包括:
图像解析模块,用于对接收到的待补全图像进行解析,得到待补全区域;
待补全像素点获取模块,用于获取所述待补全区域中各待补全像素点;
最近邻像素点确定模块,用于分别确定各所述待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点;
像素梯度计算模块,用于针对每个待补全像素点,根据所述上方最近邻像素点和所述下方最近邻像素点计算竖直像素梯度,根据所述左方最近邻像素点和所述右方最近邻像素点计算水平像素梯度,根据两个所述主对角线方向最近邻像素点计算主对角线像素梯度,根据两个所述副对角线方向最近邻像素点计算副对角线像素梯度;
插值方向选取模块,用于针对每个待补全像素点,选取所述竖直像素梯度、所述水平像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向;
像素补全模块,用于利用与所述目标像素插值方向对应的预设插值方式分别对各所述待补全像素进行补全操作,得到补全后图像。
在本发明的一种具体实施方式中,所述图像解析模块包括:
梯度信息图计算子模块,用于利用索贝尔算子计算所述待补全图像的梯度信息图;
边界位置信息获得子模块,用于利用倒角距离匹配算法对所述梯度信息图进行计算,得到所述待补全区域的边界位置信息;
待补全区域确定子模块,用于根据所述边界位置信息确定所述待补全区域。
在本发明的一种具体实施方式中,所述插值方向选取模块包括:
宽度及高度获取子模块,用于获取所述待补全图像的宽度值和高度值;
梯度权重值计算子模块,用于根据所述宽度值和所述高度值计算所述竖直像素梯度对应的竖直梯度权重值和所述水平像素梯度对应的水平梯度权重值;
梯度加权计算子模块,用于对所述竖直像素梯度和所述竖直梯度权重值进行加权计算得到竖直加权像素梯度,对所述水平像素梯度和所述水平梯度权重值进行加权计算得到水平加权像素梯度;
插值方向选取子模块,用于选取所述竖直加权像素梯度、所述水平加权像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为所述目标像素插值方向。
在本发明的一种具体实施方式中,还包括:
图像输出模块,用于在得到补全后图像之后,输出所述补全后图像。
一种图像补全设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如前所述图像补全方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述图像补全方法的步骤。
本发明提供了一种图像补全方法:对接收到的待补全图像进行解析,得到待补全区域;获取待补全区域中各待补全像素点;分别确定各待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点;针对每个待补全像素点,根据上方最近邻像素点和下方最近邻像素点计算竖直像素梯度,根据左方最近邻像素点和右方最近邻像素点计算水平像素梯度,根据两个主对角线方向最近邻像素点计算主对角线像素梯度,根据两个副对角线方向最近邻像素点计算副对角线像素梯度;针对每个待补全像素点,选取竖直像素梯度、水平像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向;利用与目标像素插值方向对应的预设插值方式分别对各待补全像素进行补全操作,得到补全后图像。
通过上述技术方案可知,通过分别确定各待补全像素点各方向的最近邻像素点,并计算各方向的像素梯度,选取各像素梯度中的最小值对应的插值方向作为目标像素插值方向,像素梯度值最小,即在该插值方向上梯度差异最小,沿梯度最小值对应的插值方向进行插值填充,从而保证了对待补全像素点进行补全的准确度,利用与目标像素插值方向对应的预设插值方式进行图像补全操作。本申请采用的基于梯度信息的图像补全方式,相较于现有的通过匹配、滤波方法进行图像补全或基于深度学习的图像补全方法,较大地降低了计算复杂度,提高了图像补全效率。
相应的,本发明实施例还提供了与上述图像补全方法相对应的图像补全装置、设备和计算机可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中图像补全方法的一种实施流程图;
图2为本发明实施例中图像补全方法的另一种实施流程图;
图3为本发明实施例中一种图像补全装置的结构框图;
图4为本发明实施例中一种图像补全设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
参见图1,图1为本发明实施例中图像补全方法的一种实施流程图,该方法可以包括以下步骤:
s101:对接收到的待补全图像进行解析,得到待补全区域。
可以利用图像采集器采集残损或信息丢失的待补全图像,接收图像采集器发送的待补全图像,并对接收到的待补全图像进行解析,得到待补全区域,即得到待补全图像中具体哪部分缺失。
s102:获取待补全区域中各待补全像素点。
在确定出待补全区域之后,待补全区域的某些位置本身存在像素点,这些位置就不需要进行像素补全了,某些位置不存在像素,因此需要进行像素补全,可以获取待补全区域中各待补全像素点。设像素点在待补全图像中的高,宽,像素值依次为h,w,p,各待补全像素点可以表示为(h,w,p)。
s103:分别确定各待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点。
在确定出待补全区域中各待补全像素点之后,可以分别确定各待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点。以某一待补全像素点为例,假如该待补全像素点左方一个像素单位处仍没有像素点,则继续查找该待补全像素点左方两个像素单位处是否有像素点,若有,则说明该待补全像素点的左方最近邻像素点为该待补全像素点左方距离其两个像素单位处的像素点,其他方向以此类推,即可得到该待补全像素点在上方、下方、左方、右方、主对角线方向、以及副对角线方向等各个方向的最近邻像素点。如左方最近邻像素点表示为(hl,wl,pl),右方最近邻像素点表示为(hr,wr,pr),上方最近邻像素点表示为(ht,wt,pt),下方最近邻像素点表示为(hb,wb,pb),两个主对角线方向最近邻像素点表示为(hlt,wlt,plt)和(hrb,wrb,prb),两个副对角线方向最近邻像素点表示为(hlb,wlb,plb)和(hrt,wrt,prt)。
s104:针对每个待补全像素点,根据上方最近邻像素点和下方最近邻像素点计算竖直像素梯度,根据左方最近邻像素点和右方最近邻像素点计算水平像素梯度,根据两个主对角线方向最近邻像素点计算主对角线像素梯度,根据两个副对角线方向最近邻像素点计算副对角线像素梯度。
在确定出各待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点之后,针对每个待补全像素点,根据上方最近邻像素点和下方最近邻像素点计算竖直像素梯度,根据左方最近邻像素点和右方最近邻像素点计算水平像素梯度,根据两个主对角线方向最近邻像素点计算主对角线像素梯度,根据两个副对角线方向最近邻像素点计算副对角线像素梯度。承接上述举例,可以根据如下公式计算竖直像素梯度:
可以根据如下公式计算水平像素梯度:
可以根据如下公式计算主对角线像素梯度:
可以根据如下公式计算副对角线像素梯度:
s105:针对每个待补全像素点,选取竖直像素梯度、水平像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向。
在分别确定出各待补全像素点的竖直像素梯度、水平像素梯度、主对角线像素梯度、以及副对角线像素梯度之后,可以针对每个待补全像素点,选取竖直像素梯度、水平像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向。像素梯度值最小,即在该插值方向上梯度差异最小,沿梯度最小值对应的插值方向进行插值填充,提高了插入的像素点其像素值的准确性,提升了图像补全效果。承接上述举例,可以通过如下公式选取梯度中最小值:
pinp=min(grad(pl,pr),grad(pt,pb),grad(plt,prb),grad(plb,prt));
s106:利用与目标像素插值方向对应的预设插值方式分别对各待补全像素进行补全操作,得到补全后图像。
在分别确定出各个待补全像素点的目标像素插值方向之后,利用与目标像素插值方向对应的预设插值方式分别对各待补全像素进行补全操作,得到补全后图像。如通过对某一待补全像素点的竖直像素梯度、水平像素梯度、主对角线像素梯度、以及副对角线像素梯度进行对比,确定出该待补全像素点的水平像素梯度最小,则说明当前沿水平插值方式插值填充该待补全像素点得到的补全后图像与原图像最相近,因此可以沿水平插值方式插值填充该待补全像素点,从而使得填充的待补全像素点的像素值与该待补全像素点左方最近邻像素点的像素值以及右方最近邻像素点的像素值能够尽量保持一致,提升了图像补全的准确性。承接上述举例,当确定出的预设插值方式为沿水平方向进行插值时,可以通过如下公式计算待补全像素点的像素值:
当确定出的预设插值方式为沿竖直方向进行插值时,可以通过如下公式计算待补全像素点的像素值:
当确定出的预设插值方式为沿主对角线方向进行插值时,可以通过如下公式计算待补全像素点的像素值:
当确定出的预设插值方式为沿副对角线方向进行插值时,可以通过如下公式计算待补全像素点的像素值:
通过在各待补全像素点插入计算出的像素值,完成对待补全图像的补全操作。本发明实施例所提出的图像补全方式不依赖大量的人工标注样本以及复杂的模型结构,响应速度快,补全效果好,可以满足实际的应用需求,能够实时准确地对图像缺失区域进行补全,达到了给用户展示的标准,补全后的图像符合人们的视觉感知。
通过上述技术方案可知,通过分别确定各待补全像素点各方向的最近邻像素点,并计算各方向的像素梯度,选取各像素梯度中的最小值对应的插值方向作为目标像素插值方向,像素梯度值最小,即在该插值方向上梯度差异最小,沿梯度最小值对应的插值方向进行插值填充,从而保证了对待补全像素点进行补全的准确度,利用与目标像素插值方向对应的预设插值方式进行图像补全操作。本申请采用的基于梯度信息的图像补全方式,相较于现有的通过匹配、滤波方法进行图像补全或基于深度学习的图像补全方法,较大地降低了计算复杂度,提高了图像补全效率。
需要说明的是,基于上述实施例一,本发明实施例还提供了相应的改进方案。在后续实施例中涉及与上述实施例一中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在下文的改进实施例中不再一一赘述。
实施例二:
参见图2,图2为本发明实施例中图像补全方法的另一种实施流程图,该方法可以包括以下步骤:
s201:利用索贝尔算子计算待补全图像的梯度信息图。
在接收到待补全图像之后,可以利用索贝尔算子(sobeloperator)计算待补全图像的梯度信息图。
索贝尔算子是计算机视觉领域的一种重要处理方法。主要用于获得数字图像的一阶梯度,常见的应用和物理意义是边缘检测。索贝尔算子是把图像中每个像素的上下左右四领域的灰度值加权差,在边缘处达到极值从而检测边缘。
s202:利用倒角距离匹配算法对梯度信息图进行计算,得到待补全区域的边界位置信息。
在利用索贝尔算子计算出待补全图像的梯度信息图之后,利用倒角距离匹配算法对梯度信息图进行计算,得到待补全区域的边界位置信息,从而得到补全区域的准确的边界位置信息。
s203:根据边界位置信息确定待补全区域。
在确定出待补全区域的边界位置信息之后,可以根据边界位置信息确定待补全区域,提高确定出的待补全区域的准确性。
s204:获取待补全区域中各待补全像素点。
s205:分别确定各待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点。
s206:针对每个待补全像素点,根据上方最近邻像素点和下方最近邻像素点计算竖直像素梯度,根据左方最近邻像素点和右方最近邻像素点计算水平像素梯度,根据两个主对角线方向最近邻像素点计算主对角线像素梯度,根据两个副对角线方向最近邻像素点计算副对角线像素梯度。
s207:获取待补全图像的宽度值和高度值。
在接收到待补全图像之后,可以获取待补全图像的宽度值和高度值。
s208:根据宽度值和高度值计算竖直像素梯度对应的竖直梯度权重值和水平像素梯度对应的水平梯度权重值。
由于图像的构图方向不同,很可能会影响到通过左方最近邻像素点、右方最近邻像素点计算出的水平像素梯度,以及通过上方最近邻像素点和下方最近邻像素点计算出的竖直像素梯度的参考可信度。如当待补全图像的构图方向为横向构图时,沿水平插值方向进行插值的准确率一般大于沿竖直插值方向的准确率。因此在获取到待补全图像的宽度值和高度值之后,可以根据宽度值和高度值计算竖直像素梯度对应的竖直梯度权重值和水平像素梯度对应的水平梯度权重值。此时可以通过如下公式选取梯度中最小值:
其中,width为待补全图像的宽度值,height为待补全图像的高度值。
s209:针对每个待补全像素点,对竖直像素梯度和竖直梯度权重值进行加权计算得到竖直加权像素梯度,对水平像素梯度和水平梯度权重值进行加权计算得到水平加权像素梯度。
在计算得到竖直梯度权重值和水平梯度权重值之后,可以针对每个待补全像素点,对竖直像素梯度和竖直梯度权重值进行加权计算得到竖直加权像素梯度,对水平像素梯度和水平梯度权重值进行加权计算得到水平加权像素梯度。通过综合考虑待补全图像的构图方向,提高了各个方向的梯度值的参考准确度,进一步提升了图像补全的效果。
s210:选取竖直加权像素梯度、水平加权像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向。
在根据待补全图像的宽度值和高度值,以及初步计算出的竖直像素梯度和水平像素梯度,计算得到竖直加权像素梯度、水平加权像素梯度之后,选取竖直加权像素梯度、水平加权像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向。从而使得选取出的目标像素插值方向更加准确。
s211:利用与目标像素插值方向对应的预设插值方式分别对各待补全像素进行补全操作,得到补全后图像。
s212:输出补全后图像。
在通过对待补全图像中的各待补全像素点进行补全操作,得到补全后图像之后,可以输出所述补全后图像。从而用户最终得到补全后图像,使用补全后图像开展后续工作。为方便后续使用补全后图像,还可以对补全后图像进行保存操作。
相应于上面的方法实施例,本发明实施例还提供了一种图像补全装置,下文描述的图像补全装置与上文描述的图像补全方法可相互对应参照。
参见图3,图3为本发明实施例中一种图像补全装置的结构框图,该装置可以包括:
图像解析模块31,用于对接收到的待补全图像进行解析,得到待补全区域;
待补全像素点获取模块32,用于获取待补全区域中各待补全像素点;
最近邻像素点确定模块33,用于分别确定各待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点;
像素梯度计算模块34,用于针对每个待补全像素点,根据上方最近邻像素点和下方最近邻像素点计算竖直像素梯度,根据左方最近邻像素点和右方最近邻像素点计算水平像素梯度,根据两个主对角线方向最近邻像素点计算主对角线像素梯度,根据两个副对角线方向最近邻像素点计算副对角线像素梯度;
插值方向选取模块35,用于针对每个待补全像素点,选取竖直像素梯度、水平像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向;
像素补全模块36,用于利用与目标像素插值方向对应的预设插值方式分别对各待补全像素进行补全操作,得到补全后图像。
通过上述技术方案可知,通过分别确定各待补全像素点各方向的最近邻像素点,并计算各方向的像素梯度,选取各像素梯度中的最小值对应的插值方向作为目标像素插值方向,像素梯度值最小,即在该插值方向上梯度差异最小,沿梯度最小值对应的插值方向进行插值填充,从而保证了对待补全像素点进行补全的准确度,利用与目标像素插值方向对应的预设插值方式进行图像补全操作。本申请采用的基于梯度信息的图像补全方式,相较于现有的通过匹配、滤波方法进行图像补全或基于深度学习的图像补全方法,较大地降低了计算复杂度,提高了图像补全效率。
在本发明的一种具体实施方式中,图像解析模块31包括:
梯度信息图计算子模块,用于利用索贝尔算子计算待补全图像的梯度信息图;
边界位置信息获得子模块,用于利用倒角距离匹配算法对梯度信息图进行计算,得到待补全区域的边界位置信息;
待补全区域确定子模块,用于根据边界位置信息确定待补全区域。
在本发明的一种具体实施方式中,插值方向选取模块35包括:
宽度及高度获取子模块,用于获取待补全图像的宽度值和高度值;
梯度权重值计算子模块,用于根据宽度值和高度值计算竖直像素梯度对应的竖直梯度权重值和水平像素梯度对应的水平梯度权重值;
梯度加权计算子模块,用于对竖直像素梯度和竖直梯度权重值进行加权计算得到竖直加权像素梯度,对水平像素梯度和水平梯度权重值进行加权计算得到水平加权像素梯度;
插值方向选取子模块,用于选取竖直加权像素梯度、水平加权像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向。
在本发明的一种具体实施方式中,该装置还可以包括:
图像输出模块,用于在得到补全后图像之后,输出补全后图像。
相应于上面的方法实施例,参见图4,图4为本发明所提供的图像补全设备的示意图,该设备可以包括:
存储器41,用于存储计算机程序;
处理器42,用于执行上述存储器41存储的计算机程序时可实现如下步骤:
对接收到的待补全图像进行解析,得到待补全区域;获取待补全区域中各待补全像素点;分别确定各待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点;针对每个待补全像素点,根据上方最近邻像素点和下方最近邻像素点计算竖直像素梯度,根据左方最近邻像素点和右方最近邻像素点计算水平像素梯度,根据两个主对角线方向最近邻像素点计算主对角线像素梯度,根据两个副对角线方向最近邻像素点计算副对角线像素梯度;针对每个待补全像素点,选取竖直像素梯度、水平像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向;利用与目标像素插值方向对应的预设插值方式分别对各待补全像素进行补全操作,得到补全后图像。
对于本发明提供的设备的介绍请参照上述方法实施例,本发明在此不做赘述。
相应于上面的方法实施例,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:
对接收到的待补全图像进行解析,得到待补全区域;获取待补全区域中各待补全像素点;分别确定各待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点;针对每个待补全像素点,根据上方最近邻像素点和下方最近邻像素点计算竖直像素梯度,根据左方最近邻像素点和右方最近邻像素点计算水平像素梯度,根据两个主对角线方向最近邻像素点计算主对角线像素梯度,根据两个副对角线方向最近邻像素点计算副对角线像素梯度;针对每个待补全像素点,选取竖直像素梯度、水平像素梯度、主对角线像素梯度、以及副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向;利用与目标像素插值方向对应的预设插值方式分别对各待补全像素进行补全操作,得到补全后图像。
该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
1.一种图像补全方法,其特征在于,包括:
对接收到的待补全图像进行解析,得到待补全区域;
获取所述待补全区域中各待补全像素点;
分别确定各所述待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点;
针对每个待补全像素点,根据所述上方最近邻像素点和所述下方最近邻像素点计算竖直像素梯度,根据所述左方最近邻像素点和所述右方最近邻像素点计算水平像素梯度,根据两个所述主对角线方向最近邻像素点计算主对角线像素梯度,根据两个所述副对角线方向最近邻像素点计算副对角线像素梯度;
针对每个待补全像素点,选取所述竖直像素梯度、所述水平像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向;
利用与所述目标像素插值方向对应的预设插值方式分别对各所述待补全像素进行补全操作,得到补全后图像。
2.根据权利要求1所述的图像补全方法,其特征在于,对接收到的待补全图像进行解析,得到待补全区域,包括:
利用索贝尔算子计算所述待补全图像的梯度信息图;
利用倒角距离匹配算法对所述梯度信息图进行计算,得到所述待补全区域的边界位置信息;
根据所述边界位置信息确定所述待补全区域。
3.根据权利要求1或2所述的图像补全方法,其特征在于,选取竖直像素梯度、所述水平像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向,包括:
获取所述待补全图像的宽度值和高度值;
根据所述宽度值和所述高度值计算所述竖直像素梯度对应的竖直梯度权重值和所述水平像素梯度对应的水平梯度权重值;
对所述竖直像素梯度和所述竖直梯度权重值进行加权计算得到竖直加权像素梯度,对所述水平像素梯度和所述水平梯度权重值进行加权计算得到水平加权像素梯度;
选取所述竖直加权像素梯度、所述水平加权像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为所述目标像素插值方向。
4.根据权利要求3所述的图像补全方法,其特征在于,在得到补全后图像之后,还包括:
输出所述补全后图像。
5.一种图像补全装置,其特征在于,包括:
图像解析模块,用于对接收到的待补全图像进行解析,得到待补全区域;
待补全像素点获取模块,用于获取所述待补全区域中各待补全像素点;
最近邻像素点确定模块,用于分别确定各所述待补全像素点的上方最近邻像素点、下方最近邻像素点、左方最近邻像素点、右方最近邻像素点、两个主对角线方向最近邻像素点、以及两个副对角线方向最近邻像素点;
像素梯度计算模块,用于针对每个待补全像素点,根据所述上方最近邻像素点和所述下方最近邻像素点计算竖直像素梯度,根据所述左方最近邻像素点和所述右方最近邻像素点计算水平像素梯度,根据两个所述主对角线方向最近邻像素点计算主对角线像素梯度,根据两个所述副对角线方向最近邻像素点计算副对角线像素梯度;
插值方向选取模块,用于针对每个待补全像素点,选取所述竖直像素梯度、所述水平像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为目标像素插值方向;
像素补全模块,用于利用与所述目标像素插值方向对应的预设插值方式分别对各所述待补全像素进行补全操作,得到补全后图像。
6.根据权利要求5所述的图像补全装置,其特征在于,所述图像解析模块包括:
梯度信息图计算子模块,用于利用索贝尔算子计算所述待补全图像的梯度信息图;
边界位置信息获得子模块,用于利用倒角距离匹配算法对所述梯度信息图进行计算,得到所述待补全区域的边界位置信息;
待补全区域确定子模块,用于根据所述边界位置信息确定所述待补全区域。
7.根据权利要求5或6所述的图像补全装置,其特征在于,所述插值方向选取模块包括:
宽度及高度获取子模块,用于获取所述待补全图像的宽度值和高度值;
梯度权重值计算子模块,用于根据所述宽度值和所述高度值计算所述竖直像素梯度对应的竖直梯度权重值和所述水平像素梯度对应的水平梯度权重值;
梯度加权计算子模块,用于对所述竖直像素梯度和所述竖直梯度权重值进行加权计算得到竖直加权像素梯度,对所述水平像素梯度和所述水平梯度权重值进行加权计算得到水平加权像素梯度;
插值方向选取子模块,用于选取所述竖直加权像素梯度、所述水平加权像素梯度、所述主对角线像素梯度、以及所述副对角线像素梯度中最小值对应的插值方向作为所述目标像素插值方向。
8.根据权利要求7所述的图像补全装置,其特征在于,还包括:
图像输出模块,用于在得到补全后图像之后,输出所述补全后图像。
9.一种图像补全设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述图像补全方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述图像补全方法的步骤。
技术总结