CN110415237A - 皮肤瑕疵检测方法、检测装置、终端设备及可读存储介质 - Google Patents
皮肤瑕疵检测方法、检测装置、终端设备及可读存储介质 Download PDFInfo
- Publication number
- CN110415237A CN110415237A CN201910698746.7A CN201910698746A CN110415237A CN 110415237 A CN110415237 A CN 110415237A CN 201910698746 A CN201910698746 A CN 201910698746A CN 110415237 A CN110415237 A CN 110415237A
- Authority
- CN
- China
- Prior art keywords
- pixel
- detected
- value
- annulus
- defect areas
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0012—Biomedical image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
- G06T2207/30088—Skin; Dermal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Quality & Reliability (AREA)
- Geometry (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种皮肤瑕疵检测方法、检测装置、终端设备及可读存储介质。所述方法包括:获取包含人像的待处理图像,并确定该人像的皮肤区域;基于该人像相对于上述待处理图像的大小,确定检测半径;在上述皮肤区域中,选取像素点作为待检测像素点;确定与上述待检测像素点对应的待检测圆环;确定上述待检测圆环上各个像素点的灰度值;基于上述待检测圆环上各个像素点的灰度值,计算上述各个像素点灰度值的方差,并确定该待检测圆环中,灰度值大于或小于上述待检测像素点灰度值的个数是否达到预设个数;若个数达到上述预设个数,并且上述方差小于预设方差,则确定上述待检测像素点为瑕疵点。本申请可以充分利用GPU的并行处理能力。
Description
技术领域
本申请属于计算机领域,尤其涉及一种皮肤瑕疵检测方法、皮肤瑕疵检测装置、终端设备及计算机可读存储介质。
背景技术
目前常用的皮肤瑕疵检测方法为:采用高斯差分(Difference of Gaussians,DoG)算子或者高斯拉普拉斯(Laplacian of Gaussian,LoG)算子对图像进行边缘检测,然后,基于连通域性质剔除DoG算子或LoG算子检测到的为非瑕疵区域,从而得到瑕疵区域。
然而,结合连通域性质排除误检测区域的方法不能并行运算,无法充分利用图像处理单元(Graphics Processing Unit,GPU)的并行处理能力,造成GPU资源的浪费。
发明内容
有鉴于此,本申请实施例提供了一种皮肤瑕疵检测方法、皮肤瑕疵检测装置、终端设备及计算机可读存储介质,可以利用GPU的并行处理能力进行皮肤瑕疵区域的检测。
本申请实施例的第一方面提供了一种皮肤瑕疵检测方法,包括:
获取包含人像的待处理图像,并确定该人像的皮肤区域在上述待处理图像中的位置信息;
基于该人像相对于上述待处理图像的大小,确定检测半径;
在上述位置信息所指示的皮肤区域中,选取像素点作为待检测像素点;
确定与上述待检测像素点对应的待检测圆环,其中,该待检测圆环为以上述待检测像素点为圆心,以上述检测半径为半径的圆环;
确定上述待检测圆环上各个像素点的灰度值,其中,该灰度值为对应像素点在YUV域上的Y值;
基于上述待检测圆环上各个像素点的灰度值,计算上述各个像素点灰度值的方差,并确定该待检测圆环中,灰度值大于或小于上述待检测像素点灰度值的个数是否达到预设个数,其中,上述待检测像素点的灰度值为上述待检测像素点在YUV域上的Y值;
若个数达到上述预设个数,并且上述方差小于预设方差,则确定上述待检测像素点为瑕疵点。
本申请实施例的第二方面提供了一种皮肤瑕疵检测装置,包括:
皮肤确定模块,用于获取包含人像的待处理图像,并确定该人像的皮肤区域在上述待处理图像中的位置信息;
半径确定模块,用于基于该人像相对于上述待处理图像的大小,确定检测半径;
待检测点选取模块,用于在上述位置信息所指示的皮肤区域中,选取像素点作为待检测像素点;
待检测环确定模块,用于确定与上述待检测像素点对应的待检测圆环,其中,该待检测圆环为以上述待检测像素点为圆心,以上述检测半径为半径的圆环;
灰度值确定模块,用于确定上述待检测圆环上各个像素点的灰度值,其中,该灰度值为对应像素点在YUV域上的Y值;
方差及比较模块,用于基于上述待检测圆环上各个像素点的灰度值,计算上述各个像素点灰度值的方差,并确定该待检测圆环中,灰度值大于或小于上述待检测像素点灰度值的个数是否达到预设个数,其中,上述待检测像素点的灰度值为上述待检测像素点在YUV域上的Y值;
瑕疵点确定模块,用于若个数达到上述预设个数,并且上述方差小于预设方差,则确定上述待检测像素点为瑕疵点。
本申请实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面皮肤瑕疵检测方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面皮肤瑕疵检测方法的步骤。
本申请第五方面提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面皮肤瑕疵检测方法的步骤。
由此可见,本申请提供了一种皮肤瑕疵检测方法。在待处理图像的皮肤区域中选取待检测像素点,并基于该待检测像素点的灰度值以及待检测圆环上各个像素点的灰度值来确定该待检测像素点是否为瑕疵点。由此可见,本申请所提供的皮肤瑕疵检测方法中,在确定某个像素点是否为瑕疵点时,完全不需要知道其他像素点是否为瑕疵点,因此,本申请所提供的技术方案并不是一个瑕疵点串行检测的方法,所以,当采用本申请所提供的技术方案同时检测多个像素点是否为瑕疵点时,可以使得GPU同时并行对各个像素点进行检测,以确定每个像素点是否为瑕疵点。因此,本申请所提供的方法可以充分利用GPU的并行处理能力,在一定程度上避免GPU资源的浪费。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本申请实施例一提供的一种皮肤瑕疵检测方法的实现流程示意图;
图2是本申请实施例一提供的一种人像大小—检测半径的对应关系表;
图3是本申请实施例一提供的另一种人像大小—检测半径的对应关系表;
图4是本申请实施例一提供的待检测圆环示意图;
图5是本申请实施例二提供的另一种皮肤瑕疵检测方法的实现流程示意图;
图6是本申请实施例二提供的一种确定第三瑕疵区域的示意图;
图7是本申请实施例三提供的一种皮肤瑕疵检测装置的结构示意图;
图8是本申请实施例四提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
本申请实施例提供的皮肤瑕疵检测方法可以适用于终端设备,示例性地,该终端设备包括但不限于:智能手机、平板电脑、笔记本、智能可穿戴设备、桌上型计算机等。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
实施例一
下面对本申请实施例一提供的皮肤瑕疵检测方法进行描述,请参阅附图1,该皮肤瑕疵检测方法包括:
在步骤S101中,获取包含人像的待处理图像,并确定该人像的皮肤区域在该待处理图像中的位置信息;
在本申请实施例中,为了对皮肤上的瑕疵点(比如,痘痘、痘印和/或斑点等)进行检测,该步骤S101需要首先确定上述待处理图像中皮肤区域的位置信息。具体地,可以事先训练一用于检测皮肤区域的神经网络模型,通过该神经网络模型对上述待处理图像进行检测,以确定该待处理图像中皮肤区域的位置信息;或者,输出提示信息,提醒用户对上述待处理图像中人像的皮肤区域进行选择,然后将用户所选择的图像区域确定为上述待处理图像中的皮肤区域,从而确定皮肤区域的位置信息。
在步骤S102中,基于上述人像相对于上述待处理图像的大小,确定检测半径;
在本申请实施例中,需要事先确定不同人像大小分别所对应的检测半径,从而获取人像大小—检测半径的对应关系曲线,或者,人像大小—检测半径的对应关系表,并可以将所获取的该对应关系曲线或者该对应关系表事先存储至终端设备中,以便于在执行该步骤S102中,通过事先存储的该对应关系曲线或者该对应关系表,来确定该步骤S102所述的“检测半径”。
如图2所示,为事先所确定的人像大小—检测半径的对应关系表示意图,该对应关系表中记录有不同的人像大小分别所对应的检测半径。若本申请S101所获取的待处理图像中的人像占据该待处理图像的面积为30%,那么依据图2所示的对应关系表,可以得出,步骤S102所确定的检测半径为5个像素点长。
下面举例说明如何确定人像大小—检测半径的对应关系表:
首先,可以获取多张包含人像的图像,比如,图像A、图像B、图像C以及图像D;
其次,确定图像A中的人像相对于图像A的大小,比如占据图像A的面积为20%、图像B中的人像占据图像B的大小,比如占据图像B的面积为30%、图像C中的人像占据图像C的大小,比如占据图像C的面积为40%、图像D中的人像占据图像D的大小,比如占据图像D的面积也为40%;
然后,确定图像A中人像的瑕疵半径,比如为2个像素点长(可以是图像A中人像的最大瑕疵半径,也可以是图像A中人像的各个瑕疵半径的平均值),确定图像B中人像的瑕疵半径,比如为5个像素点长,确定图像C中人像的瑕疵半径,比如为10个像素点长,确定图像D中人像的瑕疵半径,比如为12个像素点长;
最后,由于图像A中人像的瑕疵半径为2个像素点,所以可以确定,若人像占据面积为20%时,检测半径可以为2.5个像素点长或者3个像素点长等(在本申请实施例中,检测半径应略大于瑕疵半径);由于图像B中人像的瑕疵半径为5个像素点长,所以可以确定,若人像占据面积为30%时,检测半径可以为6个像素点长(略大于5个像素点长即可);由于图像C中人像的瑕疵半径为10个像素点长,图像D中人像的瑕疵半径为12个瑕疵点长,所以,若人像占据面积为40%时,检测半径可以为12.5个像素点长(即可以将检测半径确定为略大于最大的瑕疵半径,或者,也可以将检测半径确定为略大于平均的瑕疵半径,即可以将检测半径确定为11.5个像素点长)。
此外,皮肤上的不同类型的瑕疵往往大小差距较大,比如,痘痘往往较小,而瘢痕往往较大,因此,在本申请实施例中,可以针对不同的瑕疵确定不同的检测半径,也即是,需要事先获取如图3所示的人像大小—检测半径集合的对应关系表,在附图3中,同一人像大小,对应有多个检测半径(不同的检测半径对应不同的瑕疵),此外,本领域技术人员应该理解,图3中的检测半径应略大于相应瑕疵的半径。
在本申请实施例中,在根据步骤S101获取到待处理图像之后,若根据该待处理图像中人像占据该待处理图像的大小,能够确定一包括多个检测半径的检测半径集合时,则在该步骤S102中,可以选取检测半径集合中的其中一检测半径作为步骤S102所述的“检测半径”。
在步骤S103中,在上述位置所指示的皮肤区域中,选取像素点作为待检测像素点;
在本申请实施例中,可以在皮肤区域中选取一个像素点作为待检测像素点,也可以选取多个像素点作为待检测像素点,本申请并不对待检测像素点的个数进行具体限定。
在步骤S104中,确定与上述待检测像素点对应的待检测圆环,其中,该待检测圆环为以上述待检测像素点为圆心,以上述检测半径为半径的圆环;
在本申请实施例中,若步骤S103所确定的待检测像素点只有一个,则执行后续步骤S104-S107,若步骤S103所确定的待检测像素点有多个,那么对于每一个待检测像素点来说,均执行一次后续步骤S104-S107,从而确定每个待检测像素点是否为瑕疵点。
对于某一个待检测像素点来说,在确定该待检测像素点是否为瑕疵点之前,需要确定该待检测瑕疵点的待检测圆环,该待检测圆环为以该待检测像素点为圆心,以步骤S103确定的检测半径为半径的圆环。此外,在本申请实施例中,步骤S104所述的“待检测圆环”可以等同于“待检测矩形”(该待检测矩形可以为该待检测圆环的外接矩形),本领域技术人员容易理解,本申请实施例一所述的“待检测圆环”完全可以被替换为“待检测矩形”,从而达到与本申请实施例一相同的技术效果。
在步骤S105中,确定上述待检测圆环上各个像素点的灰度值,其中,该灰度值为对应像素点在YUV域上的Y值;
对于某一个待检测像素点来说,在确定该待检测像素点的待检测圆环之后,需要获取该待检测圆环上各个像素点的Y值。
本领域技术人员容易理解,为了更准确地确定该待检测像素点是否为瑕疵点,需要获取该待检测圆环上较多像素点的Y值。因此,若该待检测圆环上包含的像素点比较少时,可以对该待检测圆环进行上采样,从而获取该待检测圆环上较多像素点的Y值。如图4所示,对于待处理图像401来说,待检测圆环402上仅仅只有2个像素点(即像素点A和像素点B),在这种情况下,可以对该待检测圆环进行上采样(上采样后的像素点的Y值根据周边各个像素点的Y值进行估计),从而获取该检测圆环上多个像素点的Y值。
在本申请实施例中,该步骤S105可以包括:
基于上述检测半径以及像素点个数计算公式,确定上述待检测圆环中,参与后续灰度值计算的像素点个数,其中,该像素点个数计算公式为:
M=ceil(2×π×r)
其中,M为参与后续灰度值计算的像素点个数,r为上述检测半径,ceil(x)为取大于或等于x的最小整数的运算(本领域技术人员容易理解,也可以取floor运算);
若上述待检测圆环中的像素点个数小于M,则在上述待检测圆环中进行上采样,以获取该待检测圆环中M个像素点的灰度值。
此外,若上述待检测圆环中的像素点个数大于或等于M,则可以选取该待检测圆环中的每个像素点的灰度值;或者,也可以在该待检测圆环的各个像素点中,选取M个像素点,以获取该待检测圆环中M个像素点的灰度值。
在步骤S106中,基于上述待检测圆环上各个像素点的灰度值,计算上述各个像素点灰度值的方差,并确定上述待检测圆环中,灰度值大于或小于上述待检测像素点灰度值的个数是否达到预设个数,其中,上述待检测像素点的灰度值为上述待检测像素点在YUV域的Y值;
在步骤S107中,若个数达到上述预设个数,并且上述方差小于预设方差,则确定上述待检测像素点为瑕疵点;
根据步骤S102的描述可知,检测半径通常情况下是略大于瑕疵半径的,因此,若待检测像素点的灰度值大于大部分待检测圆环上像素点的灰度值,并且待检测圆环上各个像素点的灰度值方差较小时,此时,该待检测像素点应在深色瑕疵点的中心区域;若待检测像素点的灰度值小于大部分待检测圆环上像素点的灰度值,并且待检测圆环上各个像素点的灰度值方差较小时,此时,该待检测像素点应在浅色瑕疵点的中心区域。因此,根据上述步骤S106以及步骤S107可以在一定程度上查找到位于皮肤瑕疵中心区域的像素点。
此外,在本申请实施例一中,若步骤S102所确定的检测半径是检测半径集合中的某一个半径时(即若事先确定的人像大小—检测半径的对应关系表如图3所示时),则在步骤S106之后,还可以包括如下步骤:
若个数未达到上述预设个数,或者上述方差大于或等于上述预设方差,则更新上述检测半径,将上述检测半径更新为“上述检测半径集合中,已选取的半径之外的另一半径”,并对上述待检测圆环进行更新,将上述待检测圆环更新为“以上述待检测像素点为圆心,以更新后的上述检测半径为半径的圆环”,然后返回执行步骤S105,直至遍历完上述检测半径集合的所有半径。
此外,采用上述所述的技术方案,可能会将待处理图像中的边缘点(比如头发丝、眼镜框)等确定为瑕疵点,因此,为了避免将待处理图像中的边缘点确定为瑕疵点,可以对步骤S104进行进一步限定,即将步骤S104限定为:若上述待检测像素点不为上述待处理图像中的边缘点时,则确定与上述待检测像素点对应的待检测圆环。也即是,在选取一像素点作为待检测像素点之后,要先确定该待检测像素点是否为边缘点,若不是边缘点,则再确定该待检测像素点所对应的待检测圆环。
在本申请实施例中,可以依据下述方法来确定待检测像素点是否为边缘点:
方法一、基于Harris角点判断该待检测像素点是否为边缘点
首先,求取该待检测像素点在x方向上的梯度Ix以及y方向上的梯度Iy;
其次,求取矩阵S,该矩阵
然后,计算R值,R=λ1λ2-k(λ1+λ2)2,其中,k为常数,λ1以及λ2为矩阵S的特征值;
最后,若R<0,则该待检测像素点为边缘点。
方法二、确定该待检测像素点的最大梯度方向,垂直于该最大梯度方向,确定与该待检测像素点相邻的其他若干像素点的最大梯度方向,若其他若干像素点的最大梯度方向与该待检测像素点的最大梯度方向均一致,则确定该待检测像素点为边缘点。
另外,还可以将上述方法一和方法而结合,来确定该待检测像素点是否为边缘点(即:可以首先采用方法一确定该待检测像素点是否为边缘点,若采用方法一计算出的R不小于0时,继续采用方法二确定该待检测像素点是否为边缘点)。
本领域技术人员容易理解,采用本申请实施例一所述的技术方案可以在一定程度上确定出位于瑕疵中心区域的像素点,因此,为了更进一步地确定瑕疵区域,可以对瑕疵点进行膨胀运算,从而确定出瑕疵区域。
由此可见,本申请实施例一所提供的皮肤瑕疵检测方法中,在确定某个像素点是否为瑕疵点时,完全不需要知道其他像素点是否为瑕疵点,因此,本申请所提供的技术方案并不是一个瑕疵点串行检测的方法,所以,当采用本申请所提供的技术方案同时检测多个像素点是否为瑕疵点时,可以使得GPU同时并行对各个像素点进行检测,能够充分利用GPU的并行处理能力,在一定程度上避免GPU资源的浪费。
实施例二
下面对本申请实施例二提供的另一种皮肤瑕疵检测方法进行描述,请参阅附图5,该皮肤瑕疵检测方法包括:
在步骤S501中,获取包含人像的待处理图像,并确定该人像的皮肤区域在该待处理图像中的位置信息;
在步骤S502中,基于上述人像相对于上述待处理图像的大小,确定检测半径;
在步骤S503中,在上述位置所指示的皮肤区域中,选取P个像素点作为待检测像素点,其中,P为整数且P大于1;
在步骤S504中,对于每个待检测像素点,均执行如下步骤:
S1、确定与上述待检测像素点对应的待检测圆环,其中,该待检测圆环为以上述待检测像素点为圆心,以上述检测半径为半径的圆环;
S2、确定上述待检测圆环上各个像素点的灰度值,其中,该灰度值为对应像素点在YUV域上的Y值;
S3、基于上述待检测圆环上各个像素点的灰度值,计算上述各个像素点灰度值的方差,并确定上述待检测圆环中,灰度值大于或小于上述待检测像素点灰度值的个数是否达到预设个数,其中,上述待检测像素点的灰度值为上述待检测像素点在YUV域的Y值;
S4、若个数达到上述预设个数,并且上述方差小于预设方差,则确定上述待检测像素点为瑕疵点;
上述步骤S501-S504均在实施例一中有相关描述,具体可参见实施例一的描述,此处不再赘述。
在步骤S505中,对上述待处理图像进行边缘检测,得到各个用于表示上述待处理图像中边缘轮廓的图像区域;
在该步骤S505中,可以采用DoG算子或者高斯拉普拉斯(Laplacian of Gaussian,LoG)算子等对待处理图像进行边缘检测,得到用于表示待处理图像中边缘的各个图像区域。该步骤为现有技术,此处不再赘述。
此外,本领域技术人员应该注意,该步骤S505并不一定是在步骤S504之后执行,该步骤S505可以在步骤S506之前的任何时间执行,本申请并不对该步骤S505的执行时间进行限制。
在步骤S506中,遍历每个瑕疵点,若该瑕疵点落入至边缘检测得到的图像区域中,则确定该瑕疵点为真瑕疵点;
根据上述步骤S501-S504,可以确定出P个待检测像素点中,哪些是瑕疵点,根据该步骤S506,可以进一步确定出,各个瑕疵点中哪些是真瑕疵点,哪些是误检测的瑕疵点。
本申请实施例二,将实施例一所述的技术方案结合传统的利用DoG算子或者LoG算子进行边缘检测的算法,来剔除误检测的瑕疵点。
此外,在步骤S506之后,得到真瑕疵点之后,可以对各个真瑕疵点进行膨胀运算,从而得到瑕疵区域。下面描述本申请实施例二提供的,基于真瑕疵点确定瑕疵区域的方法:
对于每个第一瑕疵区域进行膨胀运算,并将膨胀处理得到的各个瑕疵区域与边缘检测生成的各个图像区域进行取交集运算,得到各个第二瑕疵区域,其中,每个第一瑕疵区域均为由相邻的真瑕疵点组成的连通区域,每个第二瑕疵区域均为连通区域。
也即是,首先基于各个真瑕疵点,得到各个第一瑕疵区域,每个第一瑕疵区域均为由真瑕疵点组成的连通区域;其次,对每个第一瑕疵区域进行膨胀运算,得到各个膨胀运算后的第一瑕疵区域;然后,取膨胀运算后的各个第一瑕疵区域与步骤S505得到的图像区域的交集,得到各个第二瑕疵区域,其中,每个第二瑕疵区域均为连通区域。该第二瑕疵区域即可认为待处理图像中皮肤的各个瑕疵区域。
此外,在本申请实施例二中,在得到各个第二瑕疵区域之后,还可以继续对各个第二瑕疵区域进行范围拓展,将范围拓展后得到的各个瑕疵区域作为待处理图像中皮肤的各个瑕疵区域。在本申请实施例二中,对各个第二瑕疵区域进行范围拓展的方法可以为:
对于每个第二瑕疵区域,均执行如下步骤:
判断是否存在与该第二瑕疵区域相邻的,且位于上述步骤S505得到的图像区域内的像素点集合;
若存在与该第二瑕疵区域相邻的,且位于上述图像区域内的像素点集合,则确定上述像素点集合中,是否存在与该第二瑕疵区域中像素点灰度值(可以是该第二瑕疵区域中任意一像素点的灰度值,也可以是该第二瑕疵区域中边缘的某一像素点的灰度值,或者,还可以是该第二瑕疵区域中各个像素点的灰度值的平均值)的差值的绝对值小于预设阈值的目标像素点;
若存在目标像素点,则取所述目标像素点与该第二瑕疵区域的并集,并若该并集是一连通区域时,将该并集确定为与该第二瑕疵区域对应的第三瑕疵区域,若该并集不是一连通区域时,则直接将该第二瑕疵区域作为与该第二瑕疵区域对应的第三瑕疵区域;
若不存在目标像素点,则直接将该第二瑕疵区域作为与该第二瑕疵区域对应的第三瑕疵区域。
下面利用附图6描述对各个第二瑕疵区域的范围拓展运算,如图6所示,步骤S505得到了两个图像区域,分别为圆形区域601和一矩形区域602,第二瑕疵区域分别为圆形区域中的梭形区域603以及矩形区域中的梯形区域604,若根据上述提供的范围拓展算法,对于梭形区域来说,该梭形区域603与目标像素点的并集为梭形区域603加上圆形区域605,此时,由于该并集不是连通区域,因此,该梭形区域603所对应的第三瑕疵区域依然为该梭形区域603,对于梯形区域604来说,该梯形区域604与目标像素点的并集为梯形区域604加上扇形区域606,此时,由于该并集是连通区域,因此,该梯形区域604所对应的第三瑕疵区域依然为该梯形区域604与扇形区域606的并集。
上述得到的各个第三瑕疵区域即为待处理图像中皮肤的各个瑕疵区域。
在确定完待处理图像中的各个瑕疵区域之后,可以对瑕疵区域进行图像处理,从而消除瑕疵区域,实现美颜效果,本申请提供了一种对瑕疵区域进行处理的方法,该方法能够在保持原皮肤纹理的情况下,恢复正常皮肤的亮度与色彩,具体地,该瑕疵区域处理方法具体为:
对于每个瑕疵区域,均执行如下步骤:
获取与该瑕疵区域相邻,且与该瑕疵区域的距离在预设距离内的各个像素点分别在YUV域的像素值;
基于上述各个像素点分别在YUV域的像素值,确定各个像素点的Y值的中值Y1、U值的中值U1以及V值的中值V1;
将该瑕疵区域中每个像素点的U值均替换为U1,并将该瑕疵区域中每个像素点的V值均替换为V1;
基于Y值替换值计算公式,计算该瑕疵区域中每个像素点分别所对应的Y值替换值,其中,所述Y值替换值计算公式为:
Yreplace=Yoriginal+blurr(Y1-Yoriginal)
其中,Yoriginal为待替换Y值的像素点的灰度值,Yreplace为计算出的该像素点所对应的Y值替换值,blurr(x)为:对以该像素点为中心的区域中各个像素点的x值进行局部平滑操作后,该像素点的值;
将该瑕疵区域中各个像素点的Y值替换为分别所对应的Y值替换值。
另外,在本申请实施例中,为了减少GPU的数据处理量,步骤S501所获取的待处理图像可以为:获取包含上述人像的初始图像,对该初始图像进行下采样运算,得到包含该人像的上述待处理图像。也即是,上述方法实施例中的各个步骤是对下采样之后的小尺寸图像的处理,所以,在基于小尺寸图像得到皮肤的各个瑕疵区域之后,需要基于下采样倍数,将各个瑕疵区域映射至上述初始图像,得到初始图像中的各个瑕疵区域。
在实际研发过程中,发现所得到的初始图像的各个瑕疵区域中可能会包含胡须区域,因此,需要通过下述步骤,剔除初始图像中各个瑕疵区域中的胡须区域,得到该初始图像中的最终瑕疵区域:
对上述初始图像进行边缘检测(可以采用sobel算子或者DoG算子等);
若检测到上述初始图像中存在为胡须的图像区域,且为胡须的图像区域与上述初始图像中的各个瑕疵区域存在交集时,将各个瑕疵区域中为胡须的图像区域剔除,得到上述初始图像中的各个最终瑕疵区域,其中,每个最终瑕疵区域均为连通的图像区域。
此外,对各个最终瑕疵区域的修正处理可以为:
对于每个最终瑕疵区域,均执行如下步骤:
获取上述初始图像中与该最终瑕疵区域相邻,且与该最终瑕疵区域的距离在预设距离内的各个像素点分别在YUV域的像素值;
基于上述各个像素点分别在YUV域的像素值,确定各个像素点的Y值的中值Y1、U值的中值U1以及V值的中值V1;
将该最终瑕疵区域中每个像素点的U值均替换为U1,并将该最终瑕疵区域中每个像素点的V值均替换为V1;
基于Y值替换值计算公式,计算该最终瑕疵区域中每个像素点分别所对应的Y值替换值,其中,上述Y值替换值计算公式为:
Yreplace=Yoriginal+blurr(Y1-Yoriginal)
其中,Yoriginal为待替换Y值的像素点的灰度值,Yreplace为计算出的该待替换Y值的像素点所对应的Y值替换值,blurr(x)为:对以该像素点为中心的区域中各个像素点的x值进行局部平滑操作后,该像素点的值;
将该最终瑕疵区域中各个像素点的Y值替换为分别所对应的Y值替换值。
该方法能够在保持原皮肤纹理的情况下,恢复正常皮肤的亮度与色彩,
本申请实施例二所提供的皮肤瑕疵检测方法,能够更准确的检测各个瑕疵点,剔除误检测的瑕疵点。
应理解,上述方法实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。此外,本领域技术人员应该理解,本申请方法实施例中所述的“当A发生时,则执行B”,并不意味着A的发生与B的执行是同时进行的,二者可以有些许时间差。
实施例三
本申请实施例三提供了一种皮肤瑕疵检测装置。为了便于说明,仅示出与本申请相关的部分,如图7所示,该皮肤瑕疵检测装置700包括:
皮肤确定模块701,用于获取包含人像的待处理图像,并确定该人像的皮肤区域在上述待处理图像中的位置信息;
半径确定模块702,用于基于该人像相对于上述待处理图像的大小,确定检测半径;
待检测点选取模块703,用于在上述位置信息所指示的皮肤区域中,选取像素点作为待检测像素点;
待检测环确定模块704,用于确定与上述待检测像素点对应的待检测圆环,其中,该待检测圆环为以上述待检测像素点为圆心,以上述检测半径为半径的圆环;
灰度值确定模块705,用于确定上述待检测圆环上各个像素点的灰度值,其中,该灰度值为对应像素点在YUV域上的Y值;
方差及比较模块706,用于基于上述待检测圆环上各个像素点的灰度值,计算上述各个像素点灰度值的方差,并确定该待检测圆环中,灰度值大于或小于上述待检测像素点灰度值的个数是否达到预设个数,其中,上述待检测像素点的灰度值为上述待检测像素点在YUV域上的Y值;
瑕疵点确定模块707,用于若个数达到上述预设个数,并且上述方差小于预设方差,则确定上述待检测像素点为瑕疵点。
可选地,上述待检测环确定模块704具体用于:
若所述待检测像素点不为所述待处理图像中的边缘点,则确定与所述待检测像素点对应的待检测圆环。
可选地,上述半径确定模块702,包括:
半径集合确定单元,用于基于所述人像相对于所述待处理图像的大小,确定检测半径集合,其中,所述检测半径集合中包括N个半径值,N为大于1的整数;
选取单元,用于在所述检测半径集合中选取一半径作为所述检测半径;
相应地,上述皮肤瑕疵检测装置700还包括:
更新以及触发模块,用于若个数未达到所述预设个数,或者所述方差大于或等于所述预设方差,则更新所述检测半径,将所述检测半径更新为“所述检测半径集合中,已选取的半径之外的另一半径”,并对所述待检测圆环进行更新,将所述待检测圆环更新为“以所述待检测像素点为圆心,以更新后的所述检测半径为半径的圆环”,然后触发上述灰度值确定模块705继续执行所述确定所述待检测圆环上各个像素点的灰度值的步骤,直至遍历完所述检测半径集合。
可选地,上述灰度值确定模块705包括:
像素个数确定单元,用于基于所述检测半径以及像素点个数计算公式,确定所述待检测圆环中,参与后续灰度值计算的像素点个数,其中,所述像素点个数计算公式为:
M=ceil(2×π×r)
其中,M为参与后续灰度值计算的像素点个数,r为所述检测半径,ceil(x)为取大于或等于x的最小整数的运算;
上采样单元,用于若所述待检测圆环中的像素点个数小于M,则在所述待检测圆环中进行上采样,以获取所述待检测圆环中M个像素点的灰度值。
可选地,上述待检测点选取模块703具体用于:
在所述位置信息所指示的皮肤区域中,选取所述皮肤区域中P个像素点作为待检测像素点,其中,P为整数且P≥2;
上述皮肤瑕疵检测装置700还包括:
边缘检测模块,用于对所述待处理图像进行边缘检测,得到各个用于表示所述待处理图像中边缘轮廓的图像区域;
相应地,上述皮肤瑕疵检测装置700还包括:
真瑕疵确定模块,用于遍历每个瑕疵点,若该瑕疵点落入至边缘检测得到的图像区域中,则确定该瑕疵点为真瑕疵点。
相应地,上述皮肤瑕疵检测装置700还包括:
膨胀及交集模块,用于对于每个第一瑕疵区域进行膨胀运算,并将膨胀处理得到的各个瑕疵区域与边缘检测生成的各个图像区域进行取交集运算,得到各个第二瑕疵区域,其中,每个第一瑕疵区域均为由相邻的真瑕疵点组成的连通区域,每个第二瑕疵区域均为连通区域。
相应地,上述皮肤瑕疵检测装置700还包括:
第二瑕疵拓展模块,用于判断是否存在与该第二瑕疵区域相邻的,且位于所述图像区域内的像素点集合;若存在与该第二瑕疵区域相邻的,且位于所述图像区域内的像素点集合,则确定所述像素点集合中,是否存在与该第二瑕疵区域中像素点灰度值的差值的绝对值小于预设阈值的目标像素点;若存在目标像素点,则取所述目标像素点与该第二瑕疵区域的并集,并若该并集是一连通区域时,将该并集确定为与该第二瑕疵区域对应的第三瑕疵区域;若不存在目标像素点,则直接将该第二瑕疵区域作为与该第二瑕疵区域对应的第三瑕疵区域。
可选地,上述皮肤确定模块701具体用于:
获取包含所述人像的初始图像,对所述初始图像进行下采样运算,得到包含所述人像的所述待处理图像,并确定该人像的皮肤区域在上述待处理图像中的位置信息;
相应地,上述皮肤瑕疵检测装置700还包括:
第三瑕疵映射模块,用于基于所述下采样运算所采用的下采样倍数,将各个所述第三瑕疵区域映射至所述初始图像,得到所述初始图像中所述人像的各个第三映射瑕疵区域;
初始边缘检测模块,用于对所述初始图像进行边缘检测;
剔除模块,用于若检测到所述初始图像中存在为胡须的图像区域,且为胡须的图像区域与所述各个第三映射瑕疵区域存在交集时,将各个所述第三映射瑕疵区域中为胡须的图像区域剔除,得到所述初始图像中的各个最终瑕疵区域,其中,每个最终瑕疵区域均为连通的图像区域。
可选地,上述皮肤瑕疵检测装置700还包括:
正常像素值获取模块,用于获取所述初始图像中与该最终瑕疵区域相邻,且与该最终瑕疵区域的距离在预设距离内的各个像素点分别在YUV域的像素值;
中值计算模块,用于基于所述各个像素点分别在YUV域的像素值,确定各个像素点的Y值的中值Y1、U值的中值U1以及V值的中值V1;
YU中值替换模块,用于将该最终瑕疵区域中每个像素点的U值均替换为U1,并将该最终瑕疵区域中每个像素点的V值均替换为V1;
Y替换值计算模块,用于基于Y值替换值计算公式,计算该最终瑕疵区域中每个像素点分别所对应的Y值替换值,其中,所述Y值替换值计算公式为:
Yreplace=Yoriginal+blurr(Y1-Yoriginal)
其中,Yoriginal为待替换Y值的像素点的灰度值,Yreplace为计算出的该待替换Y值的像素点所对应的Y值替换值,blurr(x)为:对以该像素点为中心的区域中各个像素点的x值进行局部平滑操作后,该像素点的值;
Y替换模块,用于将该最终瑕疵区域中各个像素点的Y值替换为分别所对应的Y值替换值。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
实施例四
图8是本申请实施例四提供的终端设备的示意图。如图8所示,该实施例的终端设备800包括:处理器801、存储器802以及存储在上述存储器802中并可在上述处理器801上运行的计算机程序803。上述处理器801执行上述计算机程序803时实现上述各个方法实施例中的步骤。或者,上述处理器801执行上述计算机程序803时实现上述各装置实施例中各模块/单元的功能。
示例性的,上述计算机程序803可以被分割成一个或多个模块/单元,上述一个或者多个模块/单元被存储在上述存储器802中,并由上述处理器801执行,以完成本申请。上述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述上述计算机程序803在上述终端设备800中的执行过程。例如,上述计算机程序803可以被分割成皮肤确定模块、半径确定模块、待检测点选取模块、待检测环确定模块、灰度值确定模块、方差及比较模块以及瑕疵点确定模块,各模块具体功能如下:
获取包含人像的待处理图像,并确定该人像的皮肤区域在上述待处理图像中的位置信息;
基于该人像相对于上述待处理图像的大小,确定检测半径;
在上述位置信息所指示的皮肤区域中,选取像素点作为待检测像素点;
确定与上述待检测像素点对应的待检测圆环,其中,该待检测圆环为以上述待检测像素点为圆心,以上述检测半径为半径的圆环;
确定上述待检测圆环上各个像素点的灰度值,其中,该灰度值为对应像素点在YUV域上的Y值;
基于上述待检测圆环上各个像素点的灰度值,计算上述各个像素点灰度值的方差,并确定该待检测圆环中,灰度值大于或小于上述待检测像素点灰度值的个数是否达到预设个数,其中,上述待检测像素点的灰度值为上述待检测像素点在YUV域上的Y值;
若个数达到上述预设个数,并且上述方差小于预设方差,则确定上述待检测像素点为瑕疵点。
上述终端设备可包括,但不仅限于,处理器801、存储器802。本领域技术人员可以理解,图8仅仅是终端设备800的示例,并不构成对终端设备800的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如上述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器801可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
上述存储器802可以是上述终端设备800的内部存储单元,例如终端设备800的硬盘或内存。上述存储器802也可以是上述终端设备800的外部存储设备,例如上述终端设备800上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,上述存储器802还可以既包括上述终端设备800的内部存储单元也包括外部存储设备。上述存储器802用于存储上述计算机程序以及上述终端设备所需的其它程序和数据。上述存储器802还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述各个方法实施例中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上上述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (13)
1.一种皮肤瑕疵检测方法,其特征在于,包括:
获取包含人像的待处理图像,并确定所述人像的皮肤区域在所述待处理图像中的位置信息;
基于所述人像相对于所述待处理图像的大小,确定检测半径;
在所述位置信息所指示的皮肤区域中,选取像素点作为待检测像素点;
确定与所述待检测像素点对应的待检测圆环,其中,所述待检测圆环为以所述待检测像素点为圆心,以所述检测半径为半径的圆环;
确定所述待检测圆环上各个像素点的灰度值,其中,所述灰度值为对应像素点在YUV域上的Y值;
基于所述待检测圆环上各个像素点的灰度值,计算所述各个像素点灰度值的方差,并确定所述待检测圆环中,灰度值大于或小于所述待检测像素点灰度值的个数是否达到预设个数,其中,所述待检测像素点的灰度值为所述待检测像素点在YUV域上的Y值;
若个数达到所述预设个数,并且所述方差小于预设方差,则确定所述待检测像素点为瑕疵点。
2.如权利要求1所述的皮肤瑕疵检测方法,其特征在于,所述确定与所述待检测像素点对应的待检测圆环,包括:
若所述待检测像素点不为所述待处理图像中的边缘点,则确定与所述待检测像素点对应的待检测圆环。
3.如权利要求1所述的皮肤瑕疵检测方法,其特征在于,所述基于所述人像相对于所述待处理图像的大小,确定检测半径,包括:
基于所述人像相对于所述待处理图像的大小,确定检测半径集合,其中,所述检测半径集合中包括N个半径值,N为大于1的整数;
在所述检测半径集合中选取一半径作为所述检测半径;
相应地,在所述基于所述待检测圆环上各个像素点的灰度值,计算所述各个像素点灰度值的方差,并确定所述待检测圆环中,灰度值大于或小于所述待检测像素点灰度值的个数是否达到预设个数的步骤之后,还包括:
若个数未达到所述预设个数,或者所述方差大于或等于所述预设方差,则更新所述检测半径,将所述检测半径更新为:所述检测半径集合中,已选取的半径之外的另一半径,并对所述待检测圆环进行更新,将所述待检测圆环更新为:以所述待检测像素点为圆心,以更新后的所述检测半径为半径的圆环,然后返回执行所述确定所述待检测圆环上各个像素点的灰度值的步骤以及后续步骤,直至遍历完所述检测半径集合。
4.如权利要求1所述的皮肤瑕疵检测方法,其特征在于,所述确定所述待检测圆环上各个像素点的灰度值,包括:
基于所述检测半径以及像素点个数计算公式,确定所述待检测圆环中,参与后续灰度值计算的像素点个数,其中,所述像素点个数计算公式为:
M=ceil(2×π×r)
其中,M为参与后续灰度值计算的像素点个数,r为所述检测半径,ceil(x)为取大于或等于x的最小整数的运算;
若所述待检测圆环中的像素点个数小于M,则在所述待检测圆环中进行上采样,以获取所述待检测圆环中M个像素点的灰度值。
5.如权利要求1至4中任一项所述的皮肤瑕疵检测方法,其特征在于,所述在所述位置信息所指示的皮肤区域中,选取像素点作为待检测像素点,包括:
在所述位置信息所指示的皮肤区域中,选取所述皮肤区域中P个像素点作为待检测像素点,其中,P为整数且P≥2;
相应地,所述确定与所述待检测像素点对应的待检测圆环的步骤以及后续步骤,具体为:
对于每个待检测像素点,均执行所述确定与所述待检测像素点对应的待检测圆环的步骤以及后续步骤。
6.如权利要求5所述的皮肤瑕疵检测方法,其特征在于,所述皮肤瑕疵检测方法还包括:
对所述待处理图像进行边缘检测,得到各个用于表示所述待处理图像中边缘轮廓的图像区域;
相应地,在遍历完每个待检测像素点,确定每个待检测像素点是否为瑕疵点之后,还包括:
遍历每个瑕疵点,若该瑕疵点落入至边缘检测得到的图像区域中,则确定该瑕疵点为真瑕疵点。
7.如权利要求6所述的皮肤瑕疵检测方法,其特征在于,在所述遍历每个瑕疵点,若该瑕疵点落入至边缘检测得到的图像区域中,则确定该瑕疵点为真瑕疵点的步骤之后,还包括:
对于每个第一瑕疵区域进行膨胀运算,并将膨胀处理得到的各个瑕疵区域与边缘检测生成的各个图像区域进行取交集运算,得到各个第二瑕疵区域,其中,每个第一瑕疵区域均为由相邻的真瑕疵点组成的连通区域,每个第二瑕疵区域均为连通区域。
8.如权利要求7所述的皮肤瑕疵检测方法,其特征在于,在所述得到各个第二瑕疵区域之后,还包括:
对于每个第二瑕疵区域,均执行如下步骤:
判断是否存在与该第二瑕疵区域相邻的,且位于所述图像区域内的像素点集合;
若存在与该第二瑕疵区域相邻的,且位于所述图像区域内的像素点集合,则确定所述像素点集合中,是否存在与该第二瑕疵区域中像素点灰度值的差值的绝对值小于预设阈值的目标像素点;
若存在目标像素点,则取所述目标像素点与该第二瑕疵区域的并集,并若该并集是一连通区域时,将该并集确定为与该第二瑕疵区域对应的第三瑕疵区域;
若不存在目标像素点,则直接将该第二瑕疵区域作为与该第二瑕疵区域对应的第三瑕疵区域。
9.如权利要求8所述的皮肤瑕疵检测方法,其特征在于,所述获取包含人像的待处理图像,包括:
获取包含所述人像的初始图像,对所述初始图像进行下采样运算,得到包含所述人像的所述待处理图像;
相应地,在遍历完每个第二瑕疵区域,得到各个第三瑕疵区域之后,还包括:
基于所述下采样运算所采用的下采样倍数,将各个所述第三瑕疵区域映射至所述初始图像,得到所述初始图像中所述人像的各个第三映射瑕疵区域;
对所述初始图像进行边缘检测;
若检测到所述初始图像中存在为胡须的图像区域,且为胡须的图像区域与所述各个第三映射瑕疵区域存在交集时,将各个所述第三映射瑕疵区域中为胡须的图像区域剔除,得到所述初始图像中的各个最终瑕疵区域,其中,每个最终瑕疵区域均为连通的图像区域。
10.如权利要求9所述的皮肤瑕疵检测方法,其特征在于,在所述得到所述初始图像中的各个最终瑕疵区域之后,还包括:
对于每个最终瑕疵区域,均执行如下步骤:
获取所述初始图像中与该最终瑕疵区域相邻,且与该最终瑕疵区域的距离在预设距离内的各个像素点分别在YUV域的像素值;
基于所述各个像素点分别在YUV域的像素值,确定各个像素点的Y值的中值Y1、U值的中值U1以及V值的中值V1;
将该最终瑕疵区域中每个像素点的U值均替换为U1,并将该最终瑕疵区域中每个像素点的V值均替换为V1;
基于Y值替换值计算公式,计算该最终瑕疵区域中每个像素点分别所对应的Y值替换值,其中,所述Y值替换值计算公式为:
Yreplace=Yoriginal+blurr(Y1-Yoriginal)
其中,Yoriginal为待替换Y值的像素点的灰度值,Yreplace为计算出的该待替换Y值的像素点所对应的Y值替换值,blurr(x)为:对以该像素点为中心的区域中各个像素点的x值进行局部平滑操作后,该像素点的值;
将该最终瑕疵区域中各个像素点的Y值替换为分别所对应的Y值替换值。
11.一种皮肤瑕疵检测装置,其特征在于,包括:
皮肤确定模块,用于获取包含人像的待处理图像,并确定所述人像的皮肤区域在所述待处理图像中的位置信息;
半径确定模块,用于基于所述人像相对于所述待处理图像的大小,确定检测半径;
待检测点选取模块,用于在所述位置信息所指示的皮肤区域中,选取像素点作为待检测像素点;
待检测环确定模块,用于确定与所述待检测像素点对应的待检测圆环,其中,所述待检测圆环为以所述待检测像素点为圆心,以所述检测半径为半径的圆环;
灰度值确定模块,用于确定所述待检测圆环上各个像素点的灰度值,其中,所述灰度值为对应像素点在YUV域上的Y值;
方差及比较模块,用于基于所述待检测圆环上各个像素点的灰度值,计算所述各个像素点灰度值的方差,并确定所述待检测圆环中,灰度值大于或小于所述待检测像素点灰度值的个数是否达到预设个数,其中,所述待检测像素点的灰度值为所述待检测像素点在YUV域上的Y值;
瑕疵点确定模块,用于若个数达到所述预设个数,并且所述方差小于预设方差,则确定所述待检测像素点为瑕疵点。
12.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至10中任一项所述皮肤瑕疵检测方法的步骤。
13.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述皮肤瑕疵检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910698746.7A CN110415237B (zh) | 2019-07-31 | 2019-07-31 | 皮肤瑕疵检测方法、检测装置、终端设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910698746.7A CN110415237B (zh) | 2019-07-31 | 2019-07-31 | 皮肤瑕疵检测方法、检测装置、终端设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110415237A true CN110415237A (zh) | 2019-11-05 |
CN110415237B CN110415237B (zh) | 2022-02-08 |
Family
ID=68364406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910698746.7A Active CN110415237B (zh) | 2019-07-31 | 2019-07-31 | 皮肤瑕疵检测方法、检测装置、终端设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110415237B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112446865A (zh) * | 2020-11-25 | 2021-03-05 | 创新奇智(广州)科技有限公司 | 瑕疵识别方法、装置、设备和存储介质 |
CN112565601A (zh) * | 2020-11-30 | 2021-03-26 | Oppo(重庆)智能科技有限公司 | 图像处理方法、装置、移动终端及存储介质 |
CN112750105A (zh) * | 2020-12-30 | 2021-05-04 | 北京极豪科技有限公司 | 图像异常点检测方法、装置、电子设备及存储介质 |
CN112991253A (zh) * | 2019-12-02 | 2021-06-18 | 合肥美亚光电技术股份有限公司 | 中心区域确定方法、异物剔除方法、装置及检测设备 |
CN117952986A (zh) * | 2024-03-27 | 2024-04-30 | 远景睿泰动力技术(上海)有限公司 | 瑕疵检测方法、装置、电子设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7545994B2 (en) * | 2003-01-06 | 2009-06-09 | Apple Inc. | Method and apparatus for digital image manipulation to remove image blemishes |
US20100272333A1 (en) * | 2009-04-23 | 2010-10-28 | Lvmh Recherche | Method and apparatus for characterizing pigment spots |
CN103927719A (zh) * | 2014-04-04 | 2014-07-16 | 北京金山网络科技有限公司 | 图片处理方法及装置 |
CN103927718A (zh) * | 2014-04-04 | 2014-07-16 | 北京金山网络科技有限公司 | 一种图片处理方法及装置 |
CN104318262A (zh) * | 2014-09-12 | 2015-01-28 | 上海明穆电子科技有限公司 | 通过人脸照片更换皮肤的方法及*** |
CN105321167A (zh) * | 2014-06-23 | 2016-02-10 | 韩华泰科株式会社 | 不连续性处理设备和不连续性处理方法 |
CN105741231A (zh) * | 2016-02-02 | 2016-07-06 | 深圳中博网络技术有限公司 | 图像的美肤处理方法和装置 |
CN107330465A (zh) * | 2017-06-30 | 2017-11-07 | 清华大学深圳研究生院 | 一种图像目标识别方法及装置 |
CN107358573A (zh) * | 2017-06-16 | 2017-11-17 | 广东欧珀移动通信有限公司 | 图像美颜处理方法和装置 |
CN107680096A (zh) * | 2017-10-30 | 2018-02-09 | 北京小米移动软件有限公司 | 图像处理方法及装置 |
CN108198152A (zh) * | 2018-02-07 | 2018-06-22 | 广东欧珀移动通信有限公司 | 图像处理方法和装置、电子设备、计算机可读存储介质 |
-
2019
- 2019-07-31 CN CN201910698746.7A patent/CN110415237B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7545994B2 (en) * | 2003-01-06 | 2009-06-09 | Apple Inc. | Method and apparatus for digital image manipulation to remove image blemishes |
US20100272333A1 (en) * | 2009-04-23 | 2010-10-28 | Lvmh Recherche | Method and apparatus for characterizing pigment spots |
CN103927719A (zh) * | 2014-04-04 | 2014-07-16 | 北京金山网络科技有限公司 | 图片处理方法及装置 |
CN103927718A (zh) * | 2014-04-04 | 2014-07-16 | 北京金山网络科技有限公司 | 一种图片处理方法及装置 |
CN105321167A (zh) * | 2014-06-23 | 2016-02-10 | 韩华泰科株式会社 | 不连续性处理设备和不连续性处理方法 |
CN104318262A (zh) * | 2014-09-12 | 2015-01-28 | 上海明穆电子科技有限公司 | 通过人脸照片更换皮肤的方法及*** |
CN105741231A (zh) * | 2016-02-02 | 2016-07-06 | 深圳中博网络技术有限公司 | 图像的美肤处理方法和装置 |
CN107358573A (zh) * | 2017-06-16 | 2017-11-17 | 广东欧珀移动通信有限公司 | 图像美颜处理方法和装置 |
CN107330465A (zh) * | 2017-06-30 | 2017-11-07 | 清华大学深圳研究生院 | 一种图像目标识别方法及装置 |
CN107680096A (zh) * | 2017-10-30 | 2018-02-09 | 北京小米移动软件有限公司 | 图像处理方法及装置 |
CN108198152A (zh) * | 2018-02-07 | 2018-06-22 | 广东欧珀移动通信有限公司 | 图像处理方法和装置、电子设备、计算机可读存储介质 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112991253A (zh) * | 2019-12-02 | 2021-06-18 | 合肥美亚光电技术股份有限公司 | 中心区域确定方法、异物剔除方法、装置及检测设备 |
CN112991253B (zh) * | 2019-12-02 | 2024-05-31 | 合肥美亚光电技术股份有限公司 | 中心区域确定方法、异物剔除方法、装置及检测设备 |
CN112446865A (zh) * | 2020-11-25 | 2021-03-05 | 创新奇智(广州)科技有限公司 | 瑕疵识别方法、装置、设备和存储介质 |
CN112565601A (zh) * | 2020-11-30 | 2021-03-26 | Oppo(重庆)智能科技有限公司 | 图像处理方法、装置、移动终端及存储介质 |
CN112565601B (zh) * | 2020-11-30 | 2022-11-04 | Oppo(重庆)智能科技有限公司 | 图像处理方法、装置、移动终端及存储介质 |
CN112750105A (zh) * | 2020-12-30 | 2021-05-04 | 北京极豪科技有限公司 | 图像异常点检测方法、装置、电子设备及存储介质 |
CN117952986A (zh) * | 2024-03-27 | 2024-04-30 | 远景睿泰动力技术(上海)有限公司 | 瑕疵检测方法、装置、电子设备及存储介质 |
CN117952986B (zh) * | 2024-03-27 | 2024-05-28 | 远景睿泰动力技术(上海)有限公司 | 瑕疵检测方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110415237B (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110415237A (zh) | 皮肤瑕疵检测方法、检测装置、终端设备及可读存储介质 | |
Xiao et al. | Image splicing forgery detection combining coarse to refined convolutional neural network and adaptive clustering | |
US11798132B2 (en) | Image inpainting method and apparatus, computer device, and storage medium | |
US11367273B2 (en) | Detecting objects using a weakly supervised model | |
CN108615237B (zh) | 一种肺部图像处理方法及图像处理设备 | |
CN110348543B (zh) | 眼底图像识别方法、装置、计算机设备及存储介质 | |
CN113159147B (zh) | 基于神经网络的图像识别方法、装置、电子设备 | |
CN112233117A (zh) | 一种新冠肺炎ct检测识别定位***及计算设备 | |
CN111860169B (zh) | 皮肤分析方法、装置、存储介质及电子设备 | |
CN109064390A (zh) | 一种图像处理方法、图像处理装置及移动终端 | |
CN111626295B (zh) | 车牌检测模型的训练方法和装置 | |
CN109345553A (zh) | 一种手掌及其关键点检测方法、装置和终端设备 | |
CN112419326B (zh) | 图像分割数据处理方法、装置、设备及存储介质 | |
CN108205680A (zh) | 图像特征提取集成电路、方法、终端 | |
Zhao et al. | Region-based saliency estimation for 3D shape analysis and understanding | |
CN113516697B (zh) | 图像配准的方法、装置、电子设备及计算机可读存储介质 | |
CN112116585A (zh) | 图像移除篡改盲检测方法、***、设备及存储介质 | |
CN108776959A (zh) | 图像处理方法、装置及终端设备 | |
CN107038793B (zh) | 一种横向拼接纸币的识别方法、装置及设备 | |
CN110063753A (zh) | 超声图像中测量胎儿头围的方法与装置 | |
CN115456983A (zh) | 一种水面漂浮物检测方法、***、设备及介质 | |
CN115775283A (zh) | 图像压缩方法、装置、存储介质及计算机设备 | |
CN110570417B (zh) | 肺结节分类装置及图像处理设备 | |
CN116109531A (zh) | 图像处理方法、装置、计算机设备及存储介质 | |
KR101200378B1 (ko) | 국소 각 위상을 이용한 강건한 텍스처 특징 추출 방법 |
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 | ||
GR01 | Patent grant |