CN112529805B - 图像修复方法、装置、电子设备和存储介质 - Google Patents

图像修复方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN112529805B
CN112529805B CN202011476320.6A CN202011476320A CN112529805B CN 112529805 B CN112529805 B CN 112529805B CN 202011476320 A CN202011476320 A CN 202011476320A CN 112529805 B CN112529805 B CN 112529805B
Authority
CN
China
Prior art keywords
pixel point
image
mask
convolution
pixel
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.)
Active
Application number
CN202011476320.6A
Other languages
English (en)
Other versions
CN112529805A (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.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information 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 Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202011476320.6A priority Critical patent/CN112529805B/zh
Publication of CN112529805A publication Critical patent/CN112529805A/zh
Application granted granted Critical
Publication of CN112529805B publication Critical patent/CN112529805B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • G06T5/77
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Abstract

本公开关于图像修复方法、装置、电子设备和存储介质。所述方法包括:获取待修复图像,所述待修复图像包括待修复的瑕疵像素点和所述瑕疵像素点之外的非瑕疵像素点;依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,并在所述中心像素点为瑕疵像素点的情况下,根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,并使用所述修复颜色值替换所述中心像素点的颜色值,以将所述中心像素点更新为非瑕疵像素点,所述卷积区域为所述待修复图像中被卷积核覆盖的区域,所述中心像素点为所述卷积核的中心点在所述卷积区域中对应的像素点。本公开方案能够减少图像修复时的计算量,有效缩短图像修复时间。

Description

图像修复方法、装置、电子设备和存储介质
技术领域
本公开涉及图像处理领域,尤其涉及图像修复方法、装置、电子设备和存储介质。
背景技术
由于被摄物体表面质感不均匀或拍摄参数不佳等原因,可能导致拍摄得到的图像中存在斑点、污渍等瑕疵,因此往往需要经过图像修复过程对这类瑕疵进行修复处理。例如在针对人脸图像的美颜算法中,由于被拍摄对象的皮肤表面可能存在痣、雀斑、胎记等瑕疵对象,因此可以对拍摄的图像或视频画面中的上述瑕疵对象进行修复,从而实现光洁无瑕的皮肤展示效果。
在相关技术中,可以采用基于快速行进方法的inpaint函数或者基于图像块匹配的patchmatch算法对图像瑕疵进行修复,但这类修复算法通常较为复杂,因此往往因计算量较大导致修复过程耗时较长。或者也可以采用均值滤波或高斯滤波等滤波算法进行修复,但是在瑕疵面积较大的情况下,使用该方法修复后的图像中往往存在颜色残留,为解决这一问题通常需要设置较大的卷积区域,如30×30px(Pixel,像素)等,但会进一步导致计算量大的问题。
发明内容
本公开提供了图像修复方法、装置、电子设备和存储介质,以至少解决相关技术中的技术问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提出一种图像修复方法,包括:
获取待修复图像,所述待修复图像包括待修复的瑕疵像素点和所述瑕疵像素点之外的非瑕疵像素点;
依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,在所述中心像素点为瑕疵像素点的情况下,根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,并使用所述修复颜色值替换所述中心像素点的颜色值,以将所述中心像素点更新为非瑕疵像素点,所述卷积区域为所述待修复图像中被卷积核覆盖的区域,所述中心像素点为所述卷积核的中心点在所述卷积区域中对应的像素点。
可选的,所述依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,包括:
采用所述卷积核在所述待修复图像上进行步长为1个像素的滑窗操作,并在每次滑窗操作完成后,将所述卷积核的中心点在所述待修复图像中对应的像素点确定为卷积区域的中心像素点。
可选的,还包括:
在所述中心像素点为非瑕疵像素点的情况下,通过滑窗操作将所述待修复图像中符合预设顺序的下一像素点确定为中心像素点。
可选的,所述根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,包括:
获取所述卷积区域中各个非瑕疵像素点的颜色值以及所述各个非瑕疵像素点在所述卷积核中的权重值;
求取所述各个非瑕疵像素点的颜色值与各自权重值之间乘积的第一累加值,并求取所述各个非瑕疵像素点的权重值的第二累加值;
将所述第一累加值与所述第二累加值的比值确定为所述修复颜色值。
可选的,所述方法还包括:
获取所述待修复图像对应的掩码图像,所述掩码图像包括对应于所述瑕疵像素点的掩码瑕疵区域和对应于所述非瑕疵像素点的掩码非瑕疵区域,所述掩码瑕疵区域中像素点的掩码值为零,所述掩码非瑕疵区域中像素点的掩码值为同一正数;
所述根据所述卷积区域中各个所述非瑕疵像素点的颜色值确定修复颜色值,包括:
获取所述卷积区域中各个像素点的颜色值、所述各个像素点在所述卷积核中的权重值以及所述各个像素点所对应掩码像素点的掩码值;
求取所述各个像素点的颜色值、各自的权重值与各自对应掩码像素点的掩码值之间乘积的第三累加值,并求取所述各个像素点的权重值与各自对应掩码像素点的掩码值之间乘积的第四累加值;
将所述第三累加值与所述第四累加值的比值确定为所述修复颜色值。
可选的,在使用所述修复颜色值替换所述中心像素点的颜色值之后,还包括:
将所述掩码图像中对应于所述中心像素点的掩码像素点的掩码值置为所述正数。
可选的,所述卷积区域中的各个像素点在所述卷积核中的权重值相同;或者,
所述卷积区域中除中心像素点之外的任一像素点在所述卷积核中的权重值,与所述任一像素点至所述中心像素点的距离呈负相关。
根据本公开实施例的第二方面,提出一种图像修复装置,包括:
图像获取模块,被配置为获取待修复图像,所述待修复图像包括待修复的瑕疵像素点和所述瑕疵像素点之外的非瑕疵像素点;
瑕疵更新模块,被配置为依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,在所述中心像素点为瑕疵像素点的情况下,根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,并使用所述修复颜色值替换所述中心像素点的颜色值,以将所述中心像素点更新为非瑕疵像素点,所述卷积区域为所述待修复图像中被卷积核覆盖的区域,所述中心像素点为所述卷积核的中心点在所述卷积区域中对应的像素点。
可选的,所述瑕疵更新模块还被配置为:
采用所述卷积核在所述待修复图像上进行步长为1个像素的滑窗操作,并在每次滑窗操作完成后,将所述卷积核的中心点在所述待修复图像中对应的像素点确定为卷积区域的中心像素点。
可选的,还包括:
非瑕疵滑过模块,被配置为在所述中心像素点为非瑕疵像素点的情况下,通过滑窗操作将所述待修复图像中符合预设顺序的下一像素点确定为中心像素点。
可选的,所述瑕疵更新模块还被配置为:
获取所述卷积区域中各个非瑕疵像素点的颜色值以及所述各个非瑕疵像素点在所述卷积核中的权重值;
求取所述各个非瑕疵像素点的颜色值与各自权重值之间乘积的第一累加值,并求取所述各个非瑕疵像素点的权重值的第二累加值;
将所述第一累加值与所述第二累加值的比值确定为所述修复颜色值。
可选的,所述装置还包括:
掩码图像获取模块,被配置为获取所述待修复图像对应的掩码图像,所述掩码图像包括对应于所述瑕疵像素点的掩码瑕疵区域和对应于所述非瑕疵像素点的掩码非瑕疵区域,所述掩码瑕疵区域中像素点的掩码值为零,所述掩码非瑕疵区域中像素点的掩码值为同一正数;
所述瑕疵更新模块还被配置为:
获取所述卷积区域中各个像素点的颜色值、所述各个像素点在所述卷积核中的权重值以及所述各个像素点所对应掩码像素点的掩码值;
求取所述各个像素点的颜色值、各自的权重值与各自对应掩码像素点的掩码值之间乘积的第三累加值,并求取所述各个像素点的权重值与各自对应掩码像素点的掩码值之间乘积的第四累加值;
将所述第三累加值与所述第四累加值的比值确定为所述修复颜色值。
可选的,还包括:
掩码更新模块,被配置为在使用所述修复颜色值替换所述中心像素点的颜色值之后,将所述掩码图像中对应于所述中心像素点的掩码像素点的掩码值置为所述正数。
可选的,所述卷积区域中的各个像素点在所述卷积核中的权重值相同;或者,
所述卷积区域中除中心像素点之外的任一像素点在所述卷积核中的权重值,与所述任一像素点至所述中心像素点的距离呈负相关。
根据本公开实施例的第三方面,提出一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述第一方面中任一实施例所述的图像修复方法。
根据本公开实施例的第四方面,提出一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述第一方面中任一实施例所述的图像修复方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
根据本公开的实施例,对于作为中心像素点的瑕疵像素点,仅使用其所在卷积区域中非瑕疵像素点的颜色值计算该中心像素点的修复颜色值,并在计算完成后将该中心像素点的颜色值替换为计算得到的修复颜色值,以使用该中心像素点的修复颜色值参与后续其他瑕疵像素点的修复颜色值的计算。不仅保证了待修复图像中任一瑕疵像素点的修复过程中都仅使用非瑕疵像素点的颜色值,进而有助于消除修复后图像中瑕疵区域内的颜色残留。而且,因为计算过程中并不使用瑕疵像素点的颜色值,所以卷积区域的尺寸可以设置的尽量小(如可以为5×5px),从而大大减少了修复颜色值的计算量,并有效缩短了图像修复时间。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是相关技术中的一种图像修复方法的修复过程示意图;
图2是根据本公开的实施例示出的一种图像修复方法的流程图;
图3是根据本公开的实施例示出的另一种图像修复方法的流程图;
图4是根据本公开的实施例示出的一种图像修复过程对应的待修复图像示意图;
图5是根据本公开的实施例示出的一种图像修复过程对应的掩码图像示意图;
图6是根据本公开的实施例示出的一种图像修复装置框图;
图7是根据本公开的实施例示出的一种电子设备的结构图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
由于被摄物体表面质感不均匀或拍摄参数不佳等原因,拍摄得到的图像中往往会存在斑点、污渍等瑕疵,因此需要经过图像修复过程对这类瑕疵进行修复处理。例如在针对人脸图像的美颜算法中,由于被拍摄对象的皮肤表面可能存在痣、雀斑、胎记等瑕疵对象,因此可以对拍摄的图像或视频画面中的上述瑕疵对象进行修复,从而实现光洁无瑕的皮肤展示效果。
在相关技术中,可以采用基于快速行进方法的inpaint函数或者基于图像块匹配的patchmatch算法对图像瑕疵进行修复,但这类修复算法通常较为复杂,因此往往因计算量较大导致修复过程耗时较长。或者也可以采用均值滤波或高斯滤波等滤波算法进行修复,但是在瑕疵面积较大的情况下,使用该方法修复后的图像中往往存在颜色残留,为解决这一问题通常需要设置较大的卷积区域,如30×30px等,但会进一步导致计算量大的问题。
对于尺寸为6×6px的待修复图像,当采用相关技术中的滤波算法且设置卷积区域的尺寸为5×5px时,其修复处理过程如图1所示。包含瑕疵像素点和非瑕疵像素点的待修复图像如图1(a)所示,其中,任一像素点中的数字表示该像素点在待修复图像中的编号,下文使用编号和/或坐标表示像素点,如编号为8的像素点,记为“点8”或“点8(2,2)”,特此说明。
图1(a)中的非瑕疵像素点(白色所示)包括点1(1,1)、点2(1,2)...点13(3,1)、点14(3,2)...和33(6,3),瑕疵像素点(灰色所示)包括点15(3,3)、点16(3,4)...点27(5,3)、点28(5,4)...和点36(6,6)。以点15为修复起点对图像进行修复,其中,点15、点16和点21的修复过程示意图分别如图1(b)、1(c)和1(d)所示。
如图1(b)可见,此时正方形的卷积区域分别以点1、点5、点25和点29为顶点,此时通过该卷积区域中的25个像素点计算中心像素点15的修复颜色值,即计算中心像素点15的修复颜色值的过程需要用到该卷积区域中全部的非瑕疵像素点(如点1、点7、点14等)和瑕疵像素点(如点15、点16、点29等)。在完成对点15的修复(即求取点15的修复颜色值,并使用该修复颜色值更新点15的原有颜色值)后,卷积区域向右滑动一个像素(即以步长为1个像素点进行滑窗操作)开始对点16进行修复,即将点16作为卷积区域的中心像素点进行计算。
如图1(c)可见,对点16进行修复需要用到非瑕疵像素点(如点2、点8、点30等)和瑕疵像素点(如点15、点16、点29等)等当前时刻卷积区域内的全部像素点。类似的,在计算完成点16的修复颜色值后,卷积区域依次计算点17…点20的修复颜色值,直至下一行首个瑕疵像素点(点21)并计算该点的修复颜色值,即将点21作为卷积区域的中心像素点进行计算。如图1(d)可见,此时需要用到全部的非瑕疵像素点(如点7、点25、点33等)和瑕疵像素点(如点15、点16、点35等)。
由上述对各个非瑕疵像素点的修复过程可知,在计算任一瑕疵像素点的修复颜色值的过程中,不仅需要使用该瑕疵像素点所在卷积区域内所有非瑕疵像素点的颜色值,还会使用其所在卷积区域内瑕疵像素点的颜色值(即使用其所在卷积区域内全部像素点的颜色值),因此计算出的瑕疵像素点的修复颜色值实际上包含了其所在卷积区域内非瑕疵像素点和瑕疵像素点的影响因素。然而,因为瑕疵像素点是需要进行修复的像素点,所以上述计算过程并不能保证任一瑕疵像素点的修复颜色值的修复效果,进而导致修复后图像中可能会存在颜色残留及较为明显的修复痕迹。
在相关技术中,为尽量消除上述颜色残留以淡化修复痕迹,可以将上述卷积区域设置的尽可能大(如30×30px,甚至50×50px等),以使修复后的非瑕疵像素点和瑕疵像素点的颜色值尽量接近,从而将颜色残留区域变大以淡化颜色残留,进而淡化修复痕迹。但是,因为对于非瑕疵像素点也会进行上述修复计算,所以该方法在修复瑕疵像素点的同时也使得瑕疵像素点附近的非瑕疵像素点的颜色值发生变化,从而改变了这部分非瑕疵像素点的显示效果——实际上是将这部分非瑕疵像素点的展示效果修复的更差了。而且,通过增大卷积区域消除颜色残留的同时大幅增加了卷积区域中的像素点个数,进而显著增加了修复颜色值的滤波计算量,延长了计算时间,导致图像修复耗时更长。
为解决相关技术中存在的上述技术问题,本公开提出一种图像修复方法,对于作为中心像素点的非瑕疵像素点,仅使用其所在卷积区域中瑕疵像素点的颜色值计算该中心像素点的修复颜色值,并在计算完成后将该中心像素点的颜色值替换为计算得到的修复颜色值,以使用该中心像素点的修复颜色值参与后续其他瑕疵像素点的修复颜色值的计算过程。从而保证待修复图像中任一瑕疵像素点的修复颜色值仅使用其所在卷积区域中各个非瑕疵像素点的颜色值进行计算。
图2是本说明书一示例性实施例示出的一种图像修复方法的流程图。如图2所示,该方法应用于图像处理设备,可以包括以下步骤。
步骤202,获取待修复图像,所述待修复图像包括待修复的瑕疵像素点和所述瑕疵像素点之外的非瑕疵像素点。
在本实施例中,待修复图像可以为终端设备拍摄得到的图像,或者也可以为终端设备发送至服务器的图像等。待修复图像中的瑕疵像素点可以为被拍摄人物的皮肤表面存在痣、雀斑、胎记等瑕疵对象对应的像素点、或者被拍摄对象的表面污渍等对应的像素点;而非瑕疵像素点为待修复图像中除上述图像瑕疵之外的其他像素点。其中,待修复图像中的瑕疵像素点和非瑕疵像素点可以被预先进行标记,以示区分。瑕疵像素点即为本公开实施例方案需要修复的像素点,换言之,本公开实施例方案的目的即为将待修复图像中的瑕疵像素点修复为非瑕疵像素点。
在一实施例中,可以以待修复图像的某一边界或角的像素点作为起始像素点,从起始像素点开始按照预设顺序进行步长为1个像素的滑窗操作,从而依次将待修复图像中的各个像素点确定为中心像素点。例如,可以采用预设的卷积核在待修复图像上进行步长为1个像素的滑窗操作,并在每次滑窗操作完成后,将卷积核的中心点在待修复图像中对应的像素点确定为卷积区域的中心像素点。从而通过依次将各个像素点设置为中心像素点,保证待修复图像中的各个像素点均能够被修复。
在一实施例中,对于待修复图像中的任一像素点,若该像素点为瑕疵像素点,则可以使用下述步骤204中所述的修复方法进行修复处理;否则,若该像素点为非瑕疵像素点,则可以不对其进行修复,而直接滑窗跳过该像素点。具体的,可以在中心像素点为非瑕疵像素点的情况下,通过滑窗操作将待修复图像中符合预设顺序的下一像素点确定为中心像素点。其中,上述预设顺序可以存在多种可能,以图1(a)为例,可以按行和列依次从上到下、从左到右的顺序进行滑窗操作,如依次将点1、点2…点6、点7、点8…点12、点13、点14…点36确定为中心像素点;或者,也可以按行按照从上到下的蛇形顺序进行滑窗操作,如依次将点1、点2…点6、点12、点11…点7、点13、点14…点36确定为中心像素点。当然,还可以采用其他的滑窗顺序,本公开实施例并不对此进行限制。
在本实施例中,像素点的修复过程是与滑窗操作同步进行的。即在对待修复图像进行修复的过程中,从待修复图像的起始像素点(如左上角的像素点)开始进行步长为一个像素点的滑窗操作,依次将待修复图像中的各个像素点确定为中心像素点。其中,在确定出任一中心像素点后,若该中心像素点为瑕疵像素点,可以将使用该像素点所在卷积区域中的各个非瑕疵像素点的颜色值,通过下述实施例的方法计算该中心像素点的修复颜色值,并使用该修复颜色值替换该中心像素点的颜色值,从而将该中心像素点从瑕疵像素点转换为非瑕疵像素点。否则,若该中线像素点为非瑕疵像素点,则不对该中心像素点进行任何处理,直接通过滑窗操作将预设顺序中的下一像素点确定为新的中心像素点,并对新的中心像素点再次进行上述判断和处理。通过上述方式对待修复图像中的各个像素点进行处理后(即完成针对待修复图像的滑窗操作,或称滑窗至待修复图像的底部后),该待修复图像中的全部瑕疵像素点被修复为非瑕疵像素点,从而该待修复图像被更新为修复后图像。
在一示例例中,上述卷积核和预设区域可以动态变化。可以设置预设尺寸的初始卷积核,并设置瑕疵比阈值(卷积区域中瑕疵像素点个数占卷积区域中像素点总数的比值),如可以为50%、60%、70%等。在待修复图像的滑窗操作过程中,对于某一像素点,若以该像素点为中心像素点的卷积区域(尺寸对应于初始卷积核)中瑕疵像素点个数占总像素点的个数的比值低于上述瑕疵比阈值,则可以通过缩小卷积核尺寸的方式确定新的卷积区域,直至调整后的卷积区域中瑕疵像素点个数占总像素点的个数的比值不低于上述瑕疵比阈值时,将当前尺寸的卷积区域确定为针对该像素点(即当前的中心像素点)的卷积区域,并进一步确定当前的卷积核。否则,若以该像素点为中心像素点的卷积区域中瑕疵像素点个数占总像素点的个数的比值不低于上述瑕疵比阈值,则可以将当前的初始卷积核确定为针对该像素点的卷积核,并将当前卷积区域确定为针对该像素点的卷积区域。通过上述动态调整,可以保证对中心像素点进行修复时使用的非瑕疵像素点数量不至于过少,进而提高对中心像素点的修复精度。
步骤204,依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,在所述中心像素点为瑕疵像素点的情况下,根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,并使用所述修复颜色值替换所述中心像素点的颜色值,以将所述中心像素点更新为非瑕疵像素点,所述卷积区域为所述待修复图像中被卷积核覆盖的区域,所述中心像素点为所述卷积核的中心点在所述卷积区域中对应的像素点。
在本实施例中,修复待修复图像的过程即为对待修复图像中的各个瑕疵像素点依次进行修复的过程,亦即依次计算各个瑕疵像素点的修复颜色值并替换该瑕疵像素点的当前颜色值的过程。其中,本实施例方案中所使用卷积核的尺寸可以预先设置,如可以为3×3px或5×5px等,其中,卷积核在待修复图像中对应的区域为卷积区域,卷积核的中心点在卷积区域中对应的像素点为中心像素点,可见,该中心像素点即为卷积区域的区域中心点,如上述尺寸为3×3px(三行三列)的卷积区域中位于第二行第二列的像素点即为中心像素点。计算中心像素点的修复颜色值的过程即为使用卷积区域中各个非瑕疵像素点的颜色值进行卷积计算的过程。
在本实施例中,上述卷积核可以包含预设的权重值,从而可以通过卷积核中的权重值计算中心像素点的修复颜色值。具体的,可以采用多种方式进行计算。
在一实施例中,可以获取卷积区域中各个非瑕疵像素点的颜色值以及各个非瑕疵像素点在所述卷积核中的权重值,然后求取各个非瑕疵像素点的颜色值与各自权重值之间乘积的第一累加值,并求取各个非瑕疵像素点的权重值的第二累加值,最后将第一累加值与第二累加值的比值确定为修复颜色值。在该实施例中,上述卷积区域中的瑕疵像素点和非瑕疵像素点可以通过预先获取的信息文件进行确定,该信息文件中可以用于记录待修复图像中各个像素点的类型(即各个像素点是瑕疵像素点还是非瑕疵像素点)。通过上述方式,图像处理设备可以仅使用卷积区域中的非瑕疵像素点计算得到作为瑕疵像素点的中心像素点的修复颜色值,并完成针对该中心像素点的修复过程。
在另一实施例中,图像处理设备可以基于掩码图像对待修复图像进行修复。首先,图像处理设备可以获取待修复图像对应的掩码图像,该掩码图像中可以包括对应于瑕疵像素点的掩码瑕疵区域和对应于非瑕疵像素点的掩码非瑕疵区域,其中,掩码瑕疵区域中像素点的掩码值为零,掩码非瑕疵区域中像素点的掩码值为同一正数。上述正数可以为1,或者也可以为255等非零数值,本公开对于该正数的具体取值并不进行限制,只需保证掩码非瑕疵区域中各个像素点的掩码值均为该正数即可。具体的,上述掩码图像可以通过预训练的对象分割模型进行处理得到,如将待修复图像输入该对象分割模型进行处理,然后接收该模型输出的对应于待修复图像的掩码图像。上述对象分割模型的训练及使用的具体过程可以参见相关技术中的记载,此处不再赘述。通过掩码图像指示待修复图像中的瑕疵像素点和非瑕疵像素点的相对位置关系,本质上即相当于使用掩码图像对待修复图像中的各个像素点进行标记,从而有助于借助掩码图像中各个像素点的掩码值清楚地表明上述待修复图像中各个瑕疵像素点和非瑕疵像素点的具体位置。
在获取到上述掩码图像后,图像处理设备可以待修复图像中位于获取卷积区域内的各个像素点的颜色值、各个像素点在卷积核中的权重值以及各个像素点所对应掩码像素点的掩码值,进而求取各个像素点的颜色值、各自的权重值与各自对应掩码像素点的掩码值之间乘积的第三累加值,并求取各个像素点的权重值与各自对应掩码像素点的掩码值之间乘积的第四累加值,最终将第三累加值与第四累加值的比值确定为中心像素点的修复颜色值。通过该方式,修复颜色值的计算过程中无需区分瑕疵像素点和非瑕疵像素点,只需要对卷积区域中的所有像素点依次进行上述计算即可;同时因为掩码瑕疵像素点的颜色值设置为零,使得计算结果中并不会引入瑕疵像素点的影响,即本质上仍然是通过卷积区域中的非瑕疵像素点的颜色值计算中心像素点的修复颜色值,从而保证了方法的一致性及计算结果的准确性。
在确定出上述修复颜色值之后,可以使用该修复颜色值替换中心像素点的颜色值(即对应于原有瑕疵的颜色值),以将中心像素点更新为非瑕疵像素点。通过该更新过程,使得在任意时刻,待修复图像中的所有瑕疵像素点对应的掩码值均为零、待修复图像中的所有非瑕疵像素点对应的颜色值均为上述正数。
在上述实施例中,卷积和可以采用不同的卷积算法,进而卷积区域中各个像素点在卷积核中的权重值也有所不同。例如,在使用均值算法的情况下,卷积区域中各个像素点在卷积核中的权重值均相同;在使用高斯算法的情况下,卷积区域中除中心像素点之外的任一像素点在卷积核中的权重值,与该像素像素点至中心像素点的距离呈负相关。即卷积区域中距离中心像素点越近的像素点,其对应的权重值越大;反之,卷积区域中距离中心像素点越远的像素点,其对应的权重值越小。这是可以理解的,因为距离中心像素点越近的像素点,其颜色值与中心像素点的修复颜色值应当越接近,从而才能够使得修复后的瑕疵像素点与其附近像素点的展示效果更接近。
根据本公开的上述实施例,对于作为中心像素点的瑕疵像素点,仅使用其所在卷积区域中非瑕疵像素点的颜色值计算该中心像素点的修复颜色值,并在计算完成后将该中心像素点的颜色值替换为计算得到的修复颜色值,以使用该中心像素点的修复颜色值参与后续其他瑕疵像素点的修复颜色值的计算。不仅保证了待修复图像中任一瑕疵像素点的修复过程中都仅使用非瑕疵像素点的颜色值,进而有助于消除修复后图像中瑕疵区域内的颜色残留。而且,因为计算过程中并不使用瑕疵像素点的颜色值,所以卷积区域的尺寸可以设置的尽量小,从而大大减少了修复颜色值的计算量,并有效缩短了图像修复时间。
对应于图1,下面结合图3-图5,以通过掩码图像对尺寸为6×6px的待修复图像进行修复为例,对本公开所述的图像修复方法进行详细说明。
图3为一示例性实施例所示的另一种图像修复方法流程图,如图3所示,该方法应用于图像处理设备,该图像处理设备可以为服务器,如可以为包含一独立主机的物理服务器、主机集群承载的虚拟服务器、云服务器等;也可以为终端设备,包括但不限于手机、平板设备、笔记本电脑、掌上电脑(PDAs,Personal Digital Assistants)、可穿戴设备(如智能眼镜、智能手表等)等,本公开并不对此进行限制。该方法可以包括下述步骤302-318。
步骤302,获取待修复图像和待修复图像对应的掩码图像。
在本实施例中,待修复图像可以为终端设备拍摄得到的图像,或者也可以为终端设备发送至服务器的图像、终端设备或服务器从其他设备处获取的图像等,本公开并不对此进行限制。待修复图像中的瑕疵像素点可以为被拍摄人物的皮肤表面存在痣、雀斑、胎记等瑕疵对象对应的像素点、或者被拍摄对象的表面污渍等对应的像素点;而非瑕疵像素点为待修复图像中除上述图像瑕疵之外的其他像素点。
瑕疵像素点即为本公开方案需要修复的像素点,换言之,本方案的目的即为将待修复图像中的瑕疵像素点修复为非瑕疵像素点。本公开方案针对待修复图像进行修复的过程,即为依次针对待修复图像中的各个像素点或者各个瑕疵像素点进行卷积计算的过程,下面描述性语句中将针对任一像素点的完整修复过程称为“修复周期”,特此说明。
本实施例采用掩码图像对待修复图像中的各个像素点进行标记,该掩码图像中包含对应于瑕疵像素点的掩码瑕疵像素点和对应于非瑕疵像素点的掩码非瑕疵像素点,其中,掩码瑕疵像素点和掩码非瑕疵像素点的颜色值用于指示待修复图像中瑕疵像素点和非瑕疵像素点的相对位置关系。掩码图像可以通过预训练的对象分割模型进行处理得到,如将待修复图像输入该对象分割模型进行处理,然后接收该模型输出的对应于待修复图像的掩码图像。对于上述对象分割模型的训练及使用的具体过程可以参见相关技术中的记载,此处不再赘述。当然,也可以由人工识别待修复图像中的瑕疵像素点和非瑕疵像素点,然后通过手动打标的方式实现对待修复图像中瑕疵区域对应的瑕疵对象的对象分割,以得到相应的掩码图像,本公开对于掩码图像的具体获取方式并不进行限制。
步骤304,判断针对待修复图像的修复是否结束。
在一实施例中,可以通过判断当前掩码图像中是否存在瑕疵像素点进而判断针对待修复图像的修复是否结束:若当前待修复图像中存在瑕疵像素点,则表明针对待修复图像的修复尚未结束;否则,若当前待修复图像中不存在瑕疵像素点,则表明针对待修复图像的修复已结束(即当前图像已被修复为修复后图像或者当前图像并不存在瑕疵)。
例如,可以通过掩码图像中各个掩码像素点的颜色值进行判断。例如,前述掩码图像中的掩码瑕疵像素点的颜色值可以为0,掩码图像中的掩码非瑕疵像素点的颜色值可以为正数,此时可以通过判断掩码图像中是否存在颜色值为零的掩码像素点判断针对待修复图像的修复是否已结束:若当前掩码图像中存在颜色值为零的掩码像素点,则表明针对待修复图像的修复尚未结束;否则,若当前掩码图像中不存在颜色值为零的掩码像素点,则表明针对待修复图像的修复已结束。
在另一实施例中,也可以先执行步骤306再执行步骤304,从而此时可以根据当前是否不存在中心像素点、或者前一修复周期中确定出的中心像素点是否为待修复图像中按照卷积区域的滑窗顺序确定出的最后一个像素点判断当前针对待修复图像的修复是否已结束:若当前不存在中心像素点(即步骤306中并未确定出中心像素点)或前一修复周期中确定出的中心像素点为待修复图像中按照卷积区域的滑窗顺序确定出的最后一个像素点,则表明当前针对待修复图像的修复已结束。
例如,可以在通过预设顺序将待修复图像中的各个像素点依次确定为卷积区域的中心像素点的情况下,可以根据中心像素点的坐标确定修复是否结束:如对于尺寸为128×128px的待修复图像,假设按照点1(1,1)、点2(1,2)…点16384(128,128)的顺序依次进行滑窗操作,则可以在每次确定出最新的中心像素点后,即判断该中心像素点的坐标是否为(128,128):若该中线像素点的坐标不为(128,128),则表明针对待修复图像的修复尚未完成,直至该中线像素点的坐标为(128,128)时停止修复。或者,为减少针对非瑕疵像素点的无效处理,以加快待修复图像的整体修复速度,还可以根据掩码图像预先确定出上述预设顺序中的最后一个瑕疵像素点的坐标S0,并在每次确定出最新的中心像素点后,即判断该中心像素点的坐标是否为该坐标S0:若该中线像素点的坐标不为S0,则表明针对待修复图像的修复尚未完成,直至该中线像素点的坐标为S0时停止修复。
步骤306,确定当前的中心像素点。
在一实施例中,可以通过卷积核的滑窗机制确定当前的中心像素点。例如在前一修复周期的中心像素点的坐标为(x0,y0)的情况下,此时可以将坐标为(x0+n,y0)的像素点(即前一中心像素点右边的像素点)确定为当前修复周期的中心像素点,或者在前一修复周期的中心像素点的序号为x的情况下,此时可以将序号为x+n的像素点(即前一中心像素点之后第n个像素点)确定为当前修复周期的中心像素点,不再赘述。其中,上述步长n(n≥1)可以为1,此时每次滑窗一个像素;也可以为2,此时每隔1个像素滑窗一个像素,当然,n的具体取值可以根据修复精度要求、修复对象、修复速度等实际情况进行设置,本公开实施例并不对此进行限制。
以图4中的图4(a)所示待修复图像为例,为便于说明,按照从上到下、从左到右的顺序对各个像素点进行编号,其中,任一像素点中的数字表示该像素点在待修复图像中的编号,下文使用编号和/或坐标表示像素点,如编号为8的像素点,记为“点8”或“点8(2,2)”,特此说明。
假设卷积区域的尺寸为5×5px,则对于点15-16、点21-22等图像中间位置的像素点,如,作为卷积区域的中心像素点时,卷积区域所对应的各个像素点均处于待修复图像中。而当中心像素点为待修复图像中位于边缘位置的像素点时,可以将相应位置范围内的部分像素点作为卷积区域中的像素点。如在将点1作为中心线像素点时,可以将点2、点3、点7-9、点13-15确定为当前卷积区域中的像素点;在将点2作为中心像素点时,可以将点1、点3、点4、点7-10和点13-16确定为当前卷积区域中的像素点;在将点3作为中心像素点时,可以将点1、点2、点4、点5、点7-11和点13-17确定为当前卷积区域中的像素点。
步骤308,判断中心像素点是否为瑕疵像素点。
此时,可以根据待修复图像对应的掩码图像确定当前中心像素点是否为瑕疵像素点。例如,对应于前述实施例,在中心像素点在掩码图像中对应的对应的掩码像素点的掩码值为0的情况下,可以确定该掩码像素点为掩码瑕疵像素点,进而确定该中心像素点为瑕疵像素点;否则,在中心像素点在掩码图像中对应的对应的掩码像素点的掩码值为上述正数(如1)的情况下,可以确定该掩码像素点为掩码非瑕疵像素点,进而确定该中心像素点为非瑕疵像素点。
进而,若中心像素点为非瑕疵像素点,则转入步骤310;否则,若中心像素点为瑕疵像素点,则转入步骤312。
步骤310,中心像素点颜色值保持不变。
此时,当前卷积区域的中心像素点为非瑕疵像素点,即该像素点无需修复,因此对该点颜色值无需进行任何处理,即保持原有颜色值不变即可。此时可以直接结束当前修复周期,然后转入步骤316开始下一修复周期,确定下一修复周期的卷积区域及相应的中心像素点即可。
仍以图4的图4(a)所示待修复图像为例,在步骤306确定出的当前修复周期的中心像素点为点1的情况下,通过掩码图像判断出该点为非瑕疵像素点,则此时无需进行任何处理,可以直接转入步骤316进而确定出下一修复周期的中心像素点为点2。同样的,在通过掩码图像确定出中心像素点为点2后,无需对点2进行任何处理,直接转入步骤确定下一修复周期的中心像素点为点3……,直至确定出作为中心像素点的点15为瑕疵像素点时,转入步骤312对点15进行修复。
步骤312,计算修复颜色值,并使用该修复颜色值替换中心像素点的当前颜色值。
以图4所示实施例为例,首先需要说明的是,图4中的图4(b)、图4(c)和图4(d)分别对应于相邻的三个瑕疵像素点(点15、16和21)。实际上,在图4(b)之前还可以存在针对点1-14的修复过程,在图4(c)和图4(d)之间还可以存在针对点17-20的修复过程,但因为点1-14以及点17-20均为非瑕疵像素点,所以针对点1-14以及点17-20的修复过程并不涉及颜色值的改变,故不再赘述。
对于图4(b),确定出中心像素点为点15后,可以按照预设尺寸(如5×5px)确定以该点为中心的卷积区域。此时,可以根据掩码图像确定出该卷积区域中的16个非瑕疵像素点:点1-5、点7-11、点13-14、点17、点19-20和点25。以均值滤波为例,此时可以通过下述式(1)计算中心像素点15的修复颜色值X15’:
X15’=(x1+…+x5+x7+…+x11+x13+x14+x17+x19+x20+x25)/16 (1)
其中,Xi为编号为i的非瑕疵像素点的颜色值。其中,在上述待修复图像为灰度图像的情况下,上述颜色值为各个非瑕疵像素点的灰度值;在上述待修复图像为RGB图像的情况下,上述颜色值为各个非瑕疵像素点的R、G和B三通道的独立颜色值,即通过式(1)分别计算出中心像素点在R、G和B三通道的独立修复颜色值,如X15’_r、X15’_g和X15’_b。
普适性的,对于任一中心像素点P,其修复颜色值可以采用下述式(2)计算:
其中,在中心像素点P对应的卷积区域内存在N个非瑕疵像素点的情况下,式(2)中的wi为第i个非瑕疵像素点对应的预设系数,xi为第i个非瑕疵像素点的颜色值,mi为第i个非瑕疵像素点所对应掩码像素点的掩码值。
或者,在中心像素点P对应的卷积区域内存在N个像素点的情况下,式(2)中的wi也可以为第i个像素点对应的预设系数,xi为第i个像素点的颜色值,mi为第i个像素点所对应掩码像素点的掩码值。此时该卷积区域内各个瑕疵像素点所对应掩码像素点的掩码值均为零,即对于任一瑕疵像素点j,其对应的mj=0。从而保证通过上式(2)计算时仅涉及卷积区域中的非瑕疵像素点。
在上述式(2)中,任一像素点i对应的预设系数wi数与计算过程选用的滤波算法有关,若选用均值滤波算法,则各个像素点的预设系数均相同,如均为1(或者,若该系数仅为T,则上述式1的分母应为“16T”);若采用高斯滤波算法,则任一像素点的预设系数与该像素点至中心像素点的距离之间呈负相关。如可以采用下式(3)所示的二维高斯滤波公式进行计算:
其中,△x和△y分别为该任一像素点与中心像素点在行、列两方向上的坐标差值。
通过上述方式计算出中心像素点的修复颜色值后,可以将中心像素点的颜色值替换为该修复颜色值,从而将该中心像素点更新为非瑕疵像素点。另外,还可以将上述掩码图像中对应于中心像素点的掩码中心像素点的颜色值更新为与其他非瑕疵像素点所对应的掩码像素点颜色值相同的正数。
如图4(b)所示,通过上述方式计算得到点15的修复颜色值后,可以将点15的原有颜色值更新为该修复颜色值,从而将点15转换为如图4(c)所示的非瑕疵像素点。同时,参见图5中的图5(b)所示的掩码图像,在点15的修复过程中,点15对应的掩码中心像素点M15的颜色值与图5(a)所示的原始颜色值相同,均为0。而在针对点15的修复过程即相应的更新过程完成后,掩码中心像素点M15的颜色值被更新为与掩码图像中的其他非瑕疵像素点相同,均为1。
由中心像素点更新得到的非瑕疵像素点与待修复图像中原有的非瑕疵像素点均可参与后续针对其他中心像素点的修复过程。例如,在将点15的颜色值替换为计算出的修复颜色值后,点15由瑕疵像素点被更新为非瑕疵像素点,因此在将点16作为中心像素点的下一修复周期中,可以利用当前卷积区域中的非瑕疵点:2-6、点8-12、点14-15、点17-18、点12、点24和点30的颜色值计算点16的修复颜色值,具体过程不再赘述。
步骤316,卷积区域滑窗至下一中心像素点。
利用滑窗操作将卷积区域的中心点滑窗至下一中心像素点即进入下一修复周期并开始对下一中心像素点的修复过程。对于下一中心像素点的修复过程与前述中心像素点的修复过程并不存在本质区别,此处不再赘述。
该滑窗操作的步长可以为1个像素,从而实现对待修复图像中各个瑕疵像素点的全面修复。当然,上述华滑窗操作的步长也可以为2、3或其他值,以实现跳跃式的滑窗操作,从而进一步减少待修复像素点的个数。
步骤318,得到修复后图像。
如图4和图5所示,在上述修复过程中,待修复图像中的瑕疵像素点依次被更新为非瑕疵像素点,相应的,掩码图像中的掩码瑕疵像素点依次被更新为掩码非瑕疵像素点,如图5(c)中M15的颜色值被由0更新为1,图5(d)中M16的颜色值被由0更新为1。如图4所示,经过图4(b)所示的对点15的修复过程,点15被转换为非瑕疵像素点;从而转换后的点15的颜色值(即步骤312计算得到的修复颜色值)被用于计算下一修复周期对应的对点16的修复过程中;进一步的,经过图4(b)所示的对点16的修复过程,点16被转换为非瑕疵像素点;从而转换后的点16的颜色值(即步骤312的下一修复周期内计算得到的修复颜色值)被用于计算下一修复周期对应的对点20的修复过程中。
类似于上述过程,可以依次对待修复图像中的各个瑕疵像素点进行修复,直至在某一修复周期的步骤304确定出修复结束的情况下,确定对待修复图像修复完成,将当前时刻的图像作为修复后图像。在修复后图像中,所有像素点均为非瑕疵像素点:一种是在图像修复过程中未发生变化(未修复)的像素点,另一种是由待修复图像中的瑕疵像素点修复得到的像素点。
可见,通过上述修复过程修复得到的非瑕疵像素点能够被用于计算后续瑕疵像素点的修复颜色值,从而保证了在对待修复图像中任一瑕疵像素点进行修复的过程中,均仅使用相应卷积区域中的非瑕疵像素点(包括原始的非瑕疵像素点和修复后的非瑕疵像素点)的颜色值进行计算,避免引入瑕疵像素点的颜色值导致的颜色残留,从而能够有效淡化修复痕迹,实现较佳的瑕疵修复效果。
与前述图像修复方法的实施例相对应地,本公开还提出了图像修复装置的实施例。
图6是根据本公开的实施例示出的一种图像修复装置的示意框图。本实施例所示的图像修复装置可以应用于图像处理设备,该图像处理设备可以为服务器,如可以为包含一独立主机的物理服务器、主机集群承载的虚拟服务器、云服务器等;也可以为手机、平板设备、笔记本电脑、掌上电脑、可穿戴设备(如智能眼镜、智能手表等)等终端设备,本公开并不对此进行限制。
如图6所示,所述图像修复装置可以包括:
图像获取模块601,被配置为获取待修复图像,所述待修复图像包括待修复的瑕疵像素点和所述瑕疵像素点之外的非瑕疵像素点;
瑕疵更新模块602,被配置为依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,在所述中心像素点为瑕疵像素点的情况下,根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,并使用所述修复颜色值替换所述中心像素点的颜色值,以将所述中心像素点更新为非瑕疵像素点,所述卷积区域为所述待修复图像中被卷积核覆盖的区域,所述中心像素点为所述卷积核的中心点在所述卷积区域中对应的像素点。
可选的,所述瑕疵更新模块602还被配置为:
采用所述卷积核在所述待修复图像上进行步长为1个像素的滑窗操作,并在每次滑窗操作完成后,将所述卷积核的中心点在所述待修复图像中对应的像素点确定为卷积区域的中心像素点。
可选的,还包括:
非瑕疵滑过模块603,被配置为在所述中心像素点为非瑕疵像素点的情况下,通过滑窗操作将所述待修复图像中符合预设顺序的下一像素点确定为中心像素点。
可选的,所述瑕疵更新模块602还被配置为:
获取所述卷积区域中各个非瑕疵像素点的颜色值以及所述各个非瑕疵像素点在所述卷积核中的权重值;
求取所述各个非瑕疵像素点的颜色值与各自权重值之间乘积的第一累加值,并求取所述各个非瑕疵像素点的权重值的第二累加值;
将所述第一累加值与所述第二累加值的比值确定为所述修复颜色值。
可选的,所述装置还包括:
掩码图像获取模块604,被配置为获取所述待修复图像对应的掩码图像,所述掩码图像包括对应于所述瑕疵像素点的掩码瑕疵区域和对应于所述非瑕疵像素点的掩码非瑕疵区域,所述掩码瑕疵区域中像素点的掩码值为零,所述掩码非瑕疵区域中像素点的掩码值为同一正数;
所述瑕疵更新模块602还被配置为:
获取所述卷积区域中各个像素点的颜色值、所述各个像素点在所述卷积核中的权重值以及所述各个像素点所对应掩码像素点的掩码值;
求取所述各个像素点的颜色值、各自的权重值与各自对应掩码像素点的掩码值之间乘积的第三累加值,并求取所述各个像素点的权重值与各自对应掩码像素点的掩码值之间乘积的第四累加值;
将所述第三累加值与所述第四累加值的比值确定为所述修复颜色值。
可选的,还包括:
掩码更新模块605,被配置为在使用所述修复颜色值替换所述中心像素点的颜色值之后,将所述掩码图像中对应于所述中心像素点的掩码像素点的掩码值置为所述正数。
可选的,所述卷积区域中的各个像素点在所述卷积核中的权重值相同;或者,
所述卷积区域中除中心像素点之外的任一像素点在所述卷积核中的权重值,与所述任一像素点至所述中心像素点的距离呈负相关。
本公开的实施例还提出一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述任一实施例所述的图像修复方法。
本公开的实施例还提出一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一实施例所述的图像修复方法。
本公开的实施例还提出一种计算机程序产品,所述计算机程序产品被配置为执行上述任一实施例所述的图像修复方法。
图7是根据本公开的实施例示出的一种电子设备的示意框图。例如,电子设备700可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图7,电子设备700可以包括以下一个或多个组件:处理组件702,存储器704,电源组件706,多媒体组件708,音频组件710,输入/输出(I/O)的接口712,传感器组件714,以及通信组件718。
处理组件702通常控制电子设备700的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件702可以包括一个或多个处理器720来执行指令,以完成上述图像修复方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理组件702可以包括多媒体模块,以方便多媒体组件708和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在电子设备700的操作。这些数据的示例包括用于在电子设备700上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件706为电子设备700的各种组件提供电力。电源组件706可以包括电源管理系统,一个或多个电源,及其他与为电子设备700生成、管理和分配电力相关联的组件。
多媒体组件708包括在电子设备700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当电子设备700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当电子设备700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件718发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为电子设备700提供各个方面的状态评估。例如,传感器组件714可以检测到电子设备700的打开/关闭状态,组件的相对定位,例如所述组件为电子设备700的显示器和小键盘,传感器组件714还可以检测电子设备700或电子设备700一个组件的位置改变,用户与电子设备700接触的存在或不存在,电子设备700方位或加速/减速和电子设备700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件714还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
图像采集组件716可以用于采集被摄对象的图像数据,以形成关于被摄对象的图像,并可以对该图像进行必要的处理。该图像采集组件716可以包括相机模组,相机模组中的图像传感器(Sensor)通过镜头感应来自被摄对象的光线,将得到的感光数据提供给图像信号处理器(ISP,Image Signal Processing),由后者根据感光数据生成对应于被摄对象的图像。其中,上述图像传感器可以为CMOS传感器或CCD传感器,当然,也可以为红外传感器、深度传感器等;相机模组可以内置在电子设备700中,也可以为电子设备700的外接模组;上述ISP可以内置在相机模组中,也可以外挂在上述电子设备中(不在相机模组内)。
通信组件718被配置为便于电子设备700和其他设备之间有线或无线方式的通信。电子设备700可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件718经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件718还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在本公开一实施例中,电子设备700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述图像修复方法。
在本公开一实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器704,上述指令可由电子设备700的处理器720执行以完成上述图像修复方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
需要说明的是,在本公开中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本公开实施例所提供的方法和装置进行了详细介绍,本文中应用了具体个例对本公开的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本公开的方法及其核心思想;同时,对于本领域的一般技术人员,依据本公开的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本公开的限制。

Claims (16)

1.一种图像修复方法,其特征在于,包括:
获取待修复图像,所述待修复图像包括待修复的瑕疵像素点和所述瑕疵像素点之外的非瑕疵像素点;
依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,在所述中心像素点为瑕疵像素点的情况下,根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,并使用所述修复颜色值替换所述中心像素点的颜色值,以将所述中心像素点更新为非瑕疵像素点,所述卷积区域为所述待修复图像中被卷积核覆盖的区域,所述中心像素点为所述卷积核的中心点在所述卷积区域中对应的像素点;
动态调整所述卷积核的尺寸,以使得所述卷积区域中瑕疵像素点个数占总像素点的个数的比值低于预设置的瑕疵比阈值,保证修复所述中心像素点时使用的所述非瑕疵像素点数量符合要求;所述瑕疵比为所述卷积区域中瑕疵像素点个数占该卷积区域中像素点总数的比值。
2.根据权利要求1所述的方法,其特征在于,所述依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,包括:
采用所述卷积核在所述待修复图像上进行步长为1个像素的滑窗操作,并在每次滑窗操作完成后,将所述卷积核的中心点在所述待修复图像中对应的像素点确定为卷积区域的中心像素点。
3.根据权利要求1所述的方法,其特征在于,还包括:
在所述中心像素点为非瑕疵像素点的情况下,通过滑窗操作将所述待修复图像中符合预设顺序的下一像素点确定为中心像素点。
4.根据权利要求1所述的方法,其特征在于,所述根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,包括:
获取所述卷积区域中各个非瑕疵像素点的颜色值以及所述各个非瑕疵像素点在所述卷积核中的权重值;
求取所述各个非瑕疵像素点的颜色值与各自权重值之间乘积的第一累加值,并求取所述各个非瑕疵像素点的权重值的第二累加值;
将所述第一累加值与所述第二累加值的比值确定为所述修复颜色值。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述待修复图像对应的掩码图像,所述掩码图像包括对应于所述瑕疵像素点的掩码瑕疵区域和对应于所述非瑕疵像素点的掩码非瑕疵区域,所述掩码瑕疵区域中像素点的掩码值为零,所述掩码非瑕疵区域中像素点的掩码值为同一正数;
所述根据所述卷积区域中各个所述非瑕疵像素点的颜色值确定修复颜色值,包括:
获取所述卷积区域中各个像素点的颜色值、所述各个像素点在所述卷积核中的权重值以及所述各个像素点所对应掩码像素点的掩码值;
求取所述各个像素点的颜色值、各自的权重值与各自对应掩码像素点的掩码值之间乘积的第三累加值,并求取所述各个像素点的权重值与各自对应掩码像素点的掩码值之间乘积的第四累加值;
将所述第三累加值与所述第四累加值的比值确定为所述修复颜色值。
6.根据权利要求5所述的方法,其特征在于,在使用所述修复颜色值替换所述中心像素点的颜色值之后,还包括:
将所述掩码图像中对应于所述中心像素点的掩码像素点的掩码值置为所述正数。
7.根据权利要求4-6中任一项所述的方法,其特征在于,
所述卷积区域中的各个像素点在所述卷积核中的权重值相同;或者,
所述卷积区域中除中心像素点之外的任一像素点在所述卷积核中的权重值,与所述任一像素点至所述中心像素点的距离呈负相关。
8.一种图像修复装置,其特征在于,包括:
图像获取模块,被配置为获取待修复图像,所述待修复图像包括待修复的瑕疵像素点和所述瑕疵像素点之外的非瑕疵像素点;
瑕疵更新模块,被配置为依次将所述待修复图像中的各个像素点确定为卷积区域的中心像素点,在所述中心像素点为瑕疵像素点的情况下,根据所述卷积区域中各个非瑕疵像素点的颜色值确定修复颜色值,并使用所述修复颜色值替换所述中心像素点的颜色值,以将所述中心像素点更新为非瑕疵像素点,所述卷积区域为所述待修复图像中被卷积核覆盖的区域,所述中心像素点为所述卷积核的中心点在所述卷积区域中对应的像素点;动态调整所述卷积核的尺寸,以使得所述卷积区域中瑕疵像素点个数占总像素点的个数的比值低于预设置的瑕疵比阈值,保证修复所述中心像素点时使用的所述非瑕疵像素点数量符合要求;所述瑕疵比为所述卷积区域中瑕疵像素点个数占该卷积区域中像素点总数的比值。
9.根据权利要求8所述的装置,其特征在于,所述瑕疵更新模块还被配置为:
采用所述卷积核在所述待修复图像上进行步长为1个像素的滑窗操作,并在每次滑窗操作完成后,将所述卷积核的中心点在所述待修复图像中对应的像素点确定为卷积区域的中心像素点。
10.根据权利要求8所述的装置,其特征在于,还包括:
非瑕疵滑过模块,被配置为在所述中心像素点为非瑕疵像素点的情况下,通过滑窗操作将所述待修复图像中符合预设顺序的下一像素点确定为中心像素点。
11.根据权利要求8所述的装置,其特征在于,所述瑕疵更新模块还被配置为:
获取所述卷积区域中各个非瑕疵像素点的颜色值以及所述各个非瑕疵像素点在所述卷积核中的权重值;
求取所述各个非瑕疵像素点的颜色值与各自权重值之间乘积的第一累加值,并求取所述各个非瑕疵像素点的权重值的第二累加值;
将所述第一累加值与所述第二累加值的比值确定为所述修复颜色值。
12.根据权利要求8所述的装置,其特征在于,所述装置还包括:
掩码图像获取模块,被配置为获取所述待修复图像对应的掩码图像,所述掩码图像包括对应于所述瑕疵像素点的掩码瑕疵区域和对应于所述非瑕疵像素点的掩码非瑕疵区域,所述掩码瑕疵区域中像素点的掩码值为零,所述掩码非瑕疵区域中像素点的掩码值为同一正数;
所述瑕疵更新模块还被配置为:
获取所述卷积区域中各个像素点的颜色值、所述各个像素点在所述卷积核中的权重值以及所述各个像素点所对应掩码像素点的掩码值;
求取所述各个像素点的颜色值、各自的权重值与各自对应掩码像素点的掩码值之间乘积的第三累加值,并求取所述各个像素点的权重值与各自对应掩码像素点的掩码值之间乘积的第四累加值;
将所述第三累加值与所述第四累加值的比值确定为所述修复颜色值。
13.根据权利要求12所述的装置,其特征在于,还包括:
掩码更新模块,被配置为在使用所述修复颜色值替换所述中心像素点的颜色值之后,将所述掩码图像中对应于所述中心像素点的掩码像素点的掩码值置为所述正数。
14.根据权利要求11-13中任一项所述的装置,其特征在于,
所述卷积区域中的各个像素点在所述卷积核中的权重值相同;或者,
所述卷积区域中除中心像素点之外的任一像素点在所述卷积核中的权重值,与所述任一像素点至所述中心像素点的距离呈负相关。
15.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的图像修复方法。
16.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至7中任一项所述的图像修复方法。
CN202011476320.6A 2020-12-14 2020-12-14 图像修复方法、装置、电子设备和存储介质 Active CN112529805B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011476320.6A CN112529805B (zh) 2020-12-14 2020-12-14 图像修复方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011476320.6A CN112529805B (zh) 2020-12-14 2020-12-14 图像修复方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN112529805A CN112529805A (zh) 2021-03-19
CN112529805B true CN112529805B (zh) 2024-04-30

Family

ID=75000073

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011476320.6A Active CN112529805B (zh) 2020-12-14 2020-12-14 图像修复方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN112529805B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105828061A (zh) * 2016-05-11 2016-08-03 宁波大学 一种基于视觉掩蔽效应的虚拟视点质量评价方法
CN107358581A (zh) * 2017-06-19 2017-11-17 东南大学 快速图像修复方法
CN108053377A (zh) * 2017-12-11 2018-05-18 北京小米移动软件有限公司 图像处理方法及设备
CN108805835A (zh) * 2018-05-30 2018-11-13 合肥工业大学 基于截断统计特征的sar图像双边滤波方法
CN110288537A (zh) * 2019-05-20 2019-09-27 湖南大学 基于自注意力的深度生成式对抗网络的人脸图像补全方法
CN111862194A (zh) * 2020-08-04 2020-10-30 江苏云脑数据科技有限公司 基于计算机视觉的深度学习植物生长模型分析方法及系统
CN111860570A (zh) * 2020-06-03 2020-10-30 成都信息工程大学 一种云微粒子图像提取及分类方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10229481B2 (en) * 2015-12-22 2019-03-12 Mti Film, Llc Automatic defective digital motion picture pixel detection

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105828061A (zh) * 2016-05-11 2016-08-03 宁波大学 一种基于视觉掩蔽效应的虚拟视点质量评价方法
CN107358581A (zh) * 2017-06-19 2017-11-17 东南大学 快速图像修复方法
CN108053377A (zh) * 2017-12-11 2018-05-18 北京小米移动软件有限公司 图像处理方法及设备
CN108805835A (zh) * 2018-05-30 2018-11-13 合肥工业大学 基于截断统计特征的sar图像双边滤波方法
CN110288537A (zh) * 2019-05-20 2019-09-27 湖南大学 基于自注意力的深度生成式对抗网络的人脸图像补全方法
CN111860570A (zh) * 2020-06-03 2020-10-30 成都信息工程大学 一种云微粒子图像提取及分类方法
CN111862194A (zh) * 2020-08-04 2020-10-30 江苏云脑数据科技有限公司 基于计算机视觉的深度学习植物生长模型分析方法及系统

Also Published As

Publication number Publication date
CN112529805A (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
RU2577188C1 (ru) Способ, аппарат и устройство для сегментации изображения
CN108470322B (zh) 处理人脸图像的方法、装置及可读存储介质
CN106557759B (zh) 一种标志牌信息获取方法及装置
CN108668080B (zh) 提示镜头脏污程度的方法及装置、电子设备
CN107944367B (zh) 人脸关键点检测方法及装置
EP2975574B1 (en) Method, apparatus and terminal for image retargeting
CN107967459B (zh) 卷积处理方法、装置及存储介质
CN112115894B (zh) 手部关键点检测模型的训练方法、装置及电子设备
CN105678296B (zh) 确定字符倾斜角度的方法及装置
CN110930351A (zh) 一种光斑检测方法、装置及电子设备
EP3770859B1 (en) Image processing method, image processing apparatus, and storage medium
CN113160277A (zh) 一种图像处理方法、装置、电子设备及存储介质
US9665925B2 (en) Method and terminal device for retargeting images
CN107239758B (zh) 人脸关键点定位的方法及装置
CN112529805B (zh) 图像修复方法、装置、电子设备和存储介质
CN110796617B (zh) 面部图像的增强方法及装置、电子设备
CN108596957B (zh) 物体跟踪方法及装置
CN113920083A (zh) 基于图像的尺寸测量方法、装置、电子设备及存储介质
CN115760585A (zh) 图像矫正方法、装置、存储介质及电子设备
CN108769513B (zh) 相机拍照方法及装置
CN111862288A (zh) 一种位姿渲染方法、装置及介质
CN116347248B (zh) 图像获取方法和装置、电子设备、介质及芯片
CN111986097B (zh) 图像处理方法及装置
CN115118950B (zh) 图像处理方法及装置
CN113012029B (zh) 一种曲面图像的矫正方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant