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

一种图像处理方法、电子设备及可读存储介质与流程

2022-02-19 16:41:10 来源:中国专利 TAG:


1.本技术涉及图像处理技术领域,特别涉及一种图像处理方法、电子设备及计算机可读存储介质。


背景技术:

2.在视频直播等领域,直播用户通常会使用美白、磨皮等美颜功能对自身的图像进行处理。美白等美颜功能需要对原始图像进行检测,识别出其中的皮肤部分,并在皮肤部分内进行美白等处理。由于美白等处理会降低图像的清晰度,因此若皮肤部分的选择准确率较差,则会将某些非皮肤的图像错认为皮肤,对这些图像进行美白等处理不会提高美白效果,而会造成处理后图像的清晰度降低。皮肤识别由直播用户使用的直播终端执行,由于直播终端的计算能力有限,因此其上无法部署对计算能力要求较高的大型图像分割模型。通常部署轻量级的图像分割模型,或采用传统的基于像素值进行分割的方式进行皮肤部分的识别。然而,轻量级的图像分割模型收到计算性能的影响,识别准确率较差,传统方法的准确率同样较低。因此使得美白处理后的图像清晰度较低。


技术实现要素:

3.有鉴于此,本技术的目的在于提供一种图像处理方法、电子设备及计算机可读存储介质,能够得到高准确率的皮肤区域图像。
4.为解决上述技术问题,第一方面,本技术提供了一种图像处理方法,包括:
5.获取待处理图像;
6.基于预设像素条件,对所述待处理图像中各个像素的像素值进行匹配检测,得到所述待处理图像对应的图像掩膜;
7.将所述待处理图像和所述图像掩膜输入皮肤区域识别模型,所述皮肤区域识别模型基于所述图像掩膜对所述待处理图像进行肤色识别处理,得到所述待处理图像的皮肤区域图像。
8.可选地,所述基于预设像素条件,对所述待处理图像中各个像素的像素值进行匹配检测,得到所述待处理图像对应的图像掩膜,包括:
9.提取所述像素在各个色彩通道的所述像素值,并判断各个所述像素值之间是否满足所述预设像素条件规定的任一像素值关系;
10.若不满足任一所述像素值关系,则确定所述像素的所述检测结果为非肤色;
11.若满足目标像素值关系,则判断各个所述像素值是否处于所述目标像素值关系对应的像素值区间;
12.若处于所述像素值区间,则确定所述像素的所述检测结果为肤色;
13.若不处于所述像素值区间,则确定所述像素的所述检测结果为非肤色。
14.将所述待处理图像中所述检测结果为肤色的像素的像素值确定为第一像素值,并将所述待处理图像中所述检测结果为非肤色的像素的像素值确定为第二像素值,得到所述
图像掩膜;其中,第一像素值和第二像素值不同。
15.可选地,所述皮肤区域识别模型包括图像调整网络,所述皮肤区域识别模型基于所述图像掩膜对所述待处理图像进行肤色识别处理,得到所述待处理图像的皮肤区域图像,包括:
16.利用所述图像调整网络对所述待处理图像和所述图像掩膜进行尺寸调节处理,得到预处理图像;所述预处理图像的长边和宽边的像素数量均为4的倍数;
17.将所述预处理图像输入所述皮肤区域识别模型中的多层网络,得到所述皮肤区域图像。
18.可选地,所述皮肤区域识别模型包括多层网络,所述多层网络包括特征提取子网络,所述特征提取子网络中包括若干个卷积模块,所述卷积模块具有倒残差结构和注意力机制结构,所述倒残差结构采用深度可分离卷积。
19.可选地,所述卷积模块的输入通道数和输出通道数为4的倍数。
20.可选地,所述皮肤区域识别模型包括多层网络,所述多层网络包括上采样子网络,所述上采样子网络具有若干个相邻交替的缩放层和反卷积层。
21.可选地,还包括:
22.对所述皮肤区域图像进行肤色美白处理,得到所述待处理图像对应的美白图像。
23.可选地,所述皮肤区域识别模型利用训练数据集训练得到,所述训练数据集的获取过程包括:
24.获取多个初始图像;
25.将所述初始图像输入人体解析分割模型,得到各个所述初始图像对应的多个候选标记结果;
26.利用目标标记结果对所述初始图像进行标注,得到初始训练图像,利用所述初始训练图像作为训练图像掩膜,与所述初始图像在若干个色彩通道对应的色彩图像构成训练数据,并将所述训练数据加入所述训练数据集;所述目标标记结果为与皮肤相关的所述候选标记结果。
27.可选地,所述皮肤区域识别模型的训练过程,包括:
28.按照预设训练批次大小,从所述训练数据集中选择多个目标训练数据;
29.将所述目标训练数据输入初始模型,得到输出的训练皮肤区域图像;
30.基于所述训练皮肤区域图像和所述初始训练图像,利用优化器,按照预设学习速率调节所述初始模型的网络参数;
31.若检测到满足训练完成条件,则将参数调节后的初始模型确定为所述皮肤区域识别模型。
32.可选地,所述将所述目标训练数据输入初始模型,得到输出的训练皮肤区域图像,包括:
33.将所述目标训练数据中的目标色彩图像和目标初始训练图像输入所述初始模型的特征提取子网络,得到多通道特征图;
34.将所述多通道特征图输入所述初始模型的上采样子网络,得到所述训练皮肤区域图像。
35.第二方面,本技术还提供了一种电子设备,包括存储器和处理器,其中:
36.所述存储器,用于保存计算机程序;
37.所述处理器,用于执行所述计算机程序,以实现上述的图像处理方法。
38.第三方面,本技术还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现上述的图像处理方法。
39.本技术提供的图像处理方法,获取待处理图像;基于预设像素条件,对待处理图像中各个像素的像素值进行匹配检测,得到待处理图像对应的图像掩膜;将待处理图像和图像掩膜输入皮肤区域识别模型,皮肤区域识别模型基于图像掩膜对待处理图像进行肤色识别处理,得到待处理图像的皮肤区域图像。
40.可见,该方法将传统皮肤识别方法和图像分割算法相结合,使得在计算能力有限的直播终端上也能够进行准确地皮肤区域识别。在获取待处理图像后,利用预设像素条件,从像素值角度进行肤色的检测,得到反应像素值是否表征肤色的检测结果。利用检测结果可以生成对应的图像掩膜,图像掩膜为标记待处理图像中肤色部分的图像。由于肤色的范围较广,且部分非皮肤的物体同样具有肤色,因此图像掩膜同样标记了待处理图像中并不是皮肤的物体。但是,预处理图像也排除了待处理图像中明显不可能为皮肤的部分,初步划定了皮肤所处的范围。皮肤区域识别模型在终端上部署,受到终端计算能力的限制,其直接对待处理图像进行识别的准确率较低。本技术在得到图像掩膜后,将其与待处理图像共同输入皮肤区域识别模型中。皮肤区域识别模型可以在图像掩膜的基础上,对待处理图像进行进一步识别,将初步划定的皮肤区域进行进一步仔细甄别,最终得到皮肤区域图像。由于图像掩膜已经处于划定了皮肤区域所处的大致范围,因此皮肤区域识别模型可以将有限的计算能力投入到该大致范围内,对该范围内各个部分是否为皮肤区域进行高准确率的识别,进而利用有限的计算能力得到高准确率的皮肤区域图像,解决了相关技术存在的确定皮肤区域时准确率低进而导致美白等处理后的图像清晰度差的问题。
41.此外,本技术还提供了一种电子设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
42.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
43.图1为本技术实施例提供的一种图像处理方法所适用的硬件组成框架示意图;
44.图2为本技术实施例提供的一种图像处理方法的流程示意图;
45.图3为本技术实施例提供的一种直播终端显示界面;
46.图4为本技术实施例提供的一种直播过程中图像处理流程图;
47.图5为本技术实施例提供的一种图像掩膜生成流程图;
48.图6为本技术实施例提供的一种处理效果图;
49.图7为本技术实施例提供的一种具体的皮肤区域识别模型结构图;
50.图8为本技术实施例提供的一种具体的图像处理方法的流程示意图;
51.图9为本技术实施例提供的一种初始图像和候选标记结果示意图。
具体实施方式
52.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
53.为了便于理解,先对本技术实施例提供的图像处理方法对应的方案所使用的硬件组成框架进行介绍。请参考图1,图1为本技术实施例提供的一种图像处理方法所适用的硬件组成框架示意图。其中电子设备100可以包括处理器101和存储器102,还可以进一步包括多媒体组件103、信息输入/信息输出(i/o)接口104以及通信组件105中的一种或多种。
54.其中,处理器101用于控制电子设备100的整体操作,以完成图像处理方法中的全部或部分步骤;存储器102用于存储各种类型的数据以支持在电子设备100的操作,这些数据例如可以包括用于在该电子设备100上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器102可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static random access memory,sram)、电可擦除可编程只读存储器(electrically erasable programmable read

only memory,eeprom)、可擦除可编程只读存储器(erasable programmable read

only memory,eprom)、可编程只读存储器(programmable read

only memory,prom)、只读存储器(read

only memory,rom)、磁存储器、快闪存储器、磁盘或光盘中的一种或多种。在本实施例中,存储器102中至少存储有用于实现以下功能的程序和/或数据:
55.获取待处理图像;
56.基于预设像素条件,对所述待处理图像中各个像素的像素值进行匹配检测,得到所述待处理图像对应的图像掩膜;
57.将所述待处理图像和所述图像掩膜输入皮肤区域识别模型,所述皮肤区域识别模型基于所述图像掩膜对所述待处理图像进行肤色识别处理,得到所述待处理图像的皮肤区域图像。
58.多媒体组件103可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器102或通过通信组件105发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口104为处理器101和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件105用于电子设备100与其他设备之间进行有线或无线通信。无线通信,例如wi

fi,蓝牙,近场通信(near field communication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件105可以包括:wi

fi部件,蓝牙部件,nfc部件。
59.电子设备100可以被一个或多个应用专用集成电路(application specific integrated circuit,简称asic)、数字信号处理器(digital signal processor,简称dsp)、数字信号处理设备(digital signal processing device,简称dspd)、可编程逻辑器件(programmable logic device,简称pld)、现场可编程门阵列(field programmable gate array,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行图像
处理方法。
60.当然,图1所示的电子设备100的结构并不构成对本技术实施例中电子设备的限定,在实际应用中电子设备100可以包括比图1所示的更多或更少的部件,或者组合某些部件。
61.基于上述说明,请参考图2,图2为本技术实施例提供的一种图像处理方法的一种流程示意图。该实施例中的方法包括:
62.s101:获取待处理图像。
63.待处理图像,是指需要进行皮肤区域识别的图像,其具体数量、格式、尺寸大小等不做限定。待处理图像具体可以为记录有人体皮肤部位的图像,或者可以为不存在人体皮肤的图像。
64.对于待处理图像的获取方式,可以利用摄像头等图像获取设备实时获取,或者可以从指定的存储位置获取预先存入的图像作为待处理图像。待处理图像可以为独立的图像,或者可以从视频中选择若干个视频帧作为待处理图像。
65.本实施例并不限定获取待处理图像的时机,可以理解的是,待处理图像需要被进行皮肤区域识别,皮肤区域识别通常为美白处理等处理的前序步骤。因此在一种实施方式中,可以检测美白等图像处理功能是否开始工作,例如检测是否检测到图像处理功能开启的指令。若是,则获取到的图像即可以被确定为待处理图像。具体的,用户可以在使用的终端上点击功能开启的按钮,该按钮具体可以为选择开启功能的实体或虚拟按钮,在用户点击该按钮后,终端(例如手机、平板电脑、计算机等)即可确定需要进行皮肤区域识别,进而将后续获取到的图像确定为待处理图像。请参考图3,图3为本技术实施例提供的一种直播终端显示界面。其中具有美肤这一虚拟按钮,该按钮在被点击后的可视化状态表现为具有边框。用户在点击该虚拟按钮后,终端即可确定需要开启美肤功能,在本实施例中,美肤功能包括美白处理的过程,因此确定需要进行皮肤区域识别,进而可以将后续获取到的图像确定为待处理图像。
66.具体的,请参考图4,图4为本技术实施例提供的一种直播过程中图像处理流程图。在视频直播的应用场景下,主播在利用开启了美肤功能直播终端开播后,利用直播终端上的图像获取部件,或,与直播终端进行数据交互的图像获取设备获取图像帧,完成图像帧(即待处理图像)输入直播终端的步骤。直播终端对各个图像帧进行肤色分割(即皮肤区域识别)、肤色区域磨皮和肤色区域美白的处理后,将其输出至中心cdn(content delivery network,内容分发网络)。观众采用的观众终端(即观众端)从中心cdn处拉取数据流,并在观众端上展示,完成直播的数据传输过程。由于肤色区域美白等处理会造成图像清晰度下降,因此若无法准确地选择皮肤区域,而是对较大部分的非皮肤区域进行美白等处理,则造成了无意义的清晰度下降情况,使得观众观感效果较差。
67.s102:基于预设像素条件,对待处理图像中各个像素的像素值进行匹配检测,得到待处理图像对应的图像掩膜。
68.预设像素条件,是指对像素值进行限制,使得像素能够表现为肤色的条件。可以理解的是,不同人的人体肤色具有一定差异,因此人体肤色对应于一个色彩区间。
69.预设像素条件的具体内容不做限定,根据待处理图像中各个像素的色彩模式的不同,对应的预设像素条件可以不同。色彩模式具体可以为rgb模式、cmyk模式、yuv模式。rgb
色彩模式是工业界的一种颜色标准,是通过对红(r,red)、绿(g,green)、蓝(b,blue)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的。rgb即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是运用最广的颜色系统之一。cmyk是指印刷四色模式,其是彩色印刷时采用的一种套色模式,利用色料的三原色混色原理,加上黑色油墨,共计四种颜色混合叠加,形成所谓全彩印刷。四种标准颜色分别是:c,cyan,青色,又称为天蓝色或是湛蓝;m,magenta,品红色,又称为洋红色;y,yellow,黄色;k,black=黑色。此处缩写使用最后一个字母k而非开头的b,是为了避免与blue混淆。cmyk模式是减色模式,相对应的rgb模式是加色模式。yuv,是一种颜色编码方法,常使用在各个视频处理组件中。其中,y表示明亮度(luminance),也就是灰阶值;u和v表示的则是色度(chrominance),作用是描述影像色彩及饱和度,用于指定像素的颜色。
70.对于所有的色彩模式对应的预设像素条件,其均会规定像素想要表示肤色时各个颜色通道的像素值应当处于的区间,即肤色在各个颜色通道对应的像素值区间。对于其中某些色彩模式来说,想要表示出肤色,各个颜色通道对应的像素值还应当具有一定的相关关系,例如差值关系、和值关系等,该相关关系可以被称为像素值关系。
71.对于预设像素条件的确定方式。在一种实施方式中,所有的待处理图像均采用固定的色彩模式生成,因此预设像素条件可以同样可以为固定的条件。在另一种实施方式中,可以设施多个候选肤色条件,在获取到待处理图像后,可以对其色彩模式进行分析,并根据分析结果选择对应的条件作为预设像素条件。在确定预设像素条件后,利用其对待处理图像中各个像素的像素值进行匹配检测,判断像素的像素值是否与预设像素条件相匹配,得到检测结果。可以理解的是,通过判断像素值与预设像素条件是否匹配,实质上判断了像素是否表征了肤色,因此检测结果即可表示像素是否表征了肤色。检测结果可以与整个待处理图像相对应,即一个检测结果记录了待处理图像中的所有像素是否分别表征了肤色,或者,可以与待处理图像中的一个像素相对应,本实施例对此不做限定。
72.在得到检测结果后,利用其生成与待处理图像相对应的图像掩膜。图像掩膜,是指用于表征待处理图像中肤色部分的图像。由于检测结果仅有是肤色和不是肤色两种情况,因此图像掩膜中的像素仅有两种,用于表示在待处理图像的该像素位置处是肤色或不是肤色的状态。
73.可以理解的是,虽然该色彩区间相对于整个色彩空间占比较小,但是仍有大量非皮肤的物体的颜色处于该色彩区间内。因此,得到的图像掩膜中,不仅覆盖了皮肤所处的位置,同时覆盖了部分非皮肤的物体所处的位置。而得到的图像掩膜,即为传统的分割方法进行皮肤区域识别后得到的结果。在实际应用中,该方法的miou指标(mean inetersection over union,平均交并比,一种用于评价图像分割任务精度的指标,其值越大,精度越高)仅能达到63%,准确率较低。
74.具体的,请参考图5,图5为本技术实施例提供的一种图像掩膜生成流程图。在得到分辨率为720*1280的待处理图像后,将计数器index清零。遍历其中的每一个像素点时,将计数器的值与720*1280比较。当小于720*1280时,读取该计数器的值所指向的像素点的像素值,并判断其是否满足预设像素条件,实现对该像素点是否分类为皮肤的判断。若是,则将该像素点设置为纯白,否则设置为纯黑。重复上述过程,直至计数器的值不再小于720*1280,得到图像掩膜。图5所记录的过程为s102步骤和s103步骤共同组成的过程,其中,分类
结果即为检测结果,根据分类将像素点设置为纯白或纯黑的过程即为图像掩膜的生成过程,最终得到黑白图像的图像掩膜。从图5中可以看出,最终得到的图像掩膜不仅记录了皮肤区域,还记录了很多非皮肤区域。若将图像掩膜作为最终的识别结果,基于其进行美白处理,泽会导致处理后图像的清晰度下降。
75.例如,请参考图6,图6为本技术实施例提供的一种处理效果图。图6左侧为待处理图像,右侧为处理后图像,可以清楚地看出,人脸侧边的窗帘部分也被进行了美白处理,使得窗帘的清晰度下降,变得模糊。需要说明的是,若采用轻量级的深度学习模型进行皮肤区域识别,受到计算能力的限制,模型的结构相对简单,其识别准确率同样较小,利用其进行皮肤区域识别和美白处理后得到的结果与图6相类似。
76.s104:将待处理图像和图像掩膜输入皮肤区域识别模型,皮肤区域识别模型基于图像掩膜对待处理图像进行肤色识别处理,得到待处理图像的皮肤区域图像。
77.本技术中,为了提高皮肤区域识别的准确性,将传统的皮肤区域识别和深度学习模型相结合。利用预设像素条件对待处理图像进行匹配检测等处理后得到的图像掩膜已经覆盖到全部皮肤区域,将非皮肤区域滤除。在这种情况下,将待处理图像和图像掩膜输入皮肤区域识别模型,皮肤区域识别模型即可将有限的计算能力投入到疑似范围内,对图像掩膜记录覆盖的范围是否为皮肤进行进一步甄别,避免在确定为非皮肤的范围内进行甄别而浪费计算能力进而导致准确率较低。即基于图像掩膜对待处理图像进行肤色识别处理,得到皮肤区域图像。本实施例并不限定皮肤区域识别模型的具体架构和类型,例如可以为基于unet、mobilenet等轻量级的神经网络模型进行适应调整得到的模型。
78.在得到皮肤区域图像后,可以对该皮肤区域图像进行肤色美白处理,处理后得到的图像用于替换待处理图像中的皮肤区域图像,得到待处理图像对应的美白图像。
79.应用本技术实施例提供的图像处理方法,将传统皮肤识别方法和图像分割算法相结合,使得在计算能力有限的直播终端上也能够进行准确地皮肤区域识别。在获取待处理图像后,利用预设像素条件,从像素值角度进行肤色的检测。即基于预设像素条件对待处理图像中像素的像素值进行检测,得到反应像素值是否表征肤色的检测结果。利用检测结果可以生成对应的图像掩膜,图像掩膜为标记待处理图像中肤色部分的图像。由于肤色的范围较广,且部分非皮肤的物体同样具有肤色,因此图像掩膜同样标记了待处理图像中并不是皮肤的物体。但是,预处理图像也排除了待处理图像中明显不可能为皮肤的部分,初步划定了皮肤所处的范围。皮肤区域识别模型在终端上部署,受到终端计算能力的限制,其直接对待处理图像进行识别的准确率较低。本技术在得到图像掩膜后,将其与待处理图像共同输入皮肤区域识别模型中。皮肤区域识别模型可以在图像掩膜的基础上,对待处理图像进行进一步识别,将初步划定的皮肤区域进行进一步仔细甄别,最终得到皮肤区域图像。由于图像掩膜已经处于划定了皮肤区域所处的大致范围,因此皮肤区域识别模型可以将有限的计算能力投入到该大致范围内,对该范围内各个部分是否为皮肤区域进行高准确率的识别,进而利用有限的计算能力得到高准确率的皮肤区域图像,解决了相关技术存在的确定皮肤区域时准确率低进而导致美白等处理后的图像清晰度差的问题。
80.基于上述实施例,本实施例对上述实施例中的部分步骤进行具体说明。在一种实施方式中,预设像素条件中可能规定了像素值关系,在这种情况下,基于预设像素条件,对待处理图像中各个像素的像素值进行匹配检测,得到待处理图像对应的图像掩膜的过程可
以包括如下步骤:
81.步骤11:提取像素在各个色彩通道的像素值,并判断各个像素值之间是否满足预设像素条件规定的任一像素值关系。
82.步骤12:若不满足任一像素值关系,则确定像素的检测结果为非肤色。
83.步骤13:若满足目标像素值关系,则判断各个像素值是否处于目标像素值关系对应的像素值区间。
84.步骤14:若处于像素值区间,则确定像素的检测结果为肤色。
85.步骤15:若不处于像素值区间,则确定像素的检测结果为非肤色。
86.步骤16:将待处理图像中检测结果为肤色的像素的像素值确定为第一像素值,并将待处理图像中检测结果为非肤色的像素的像素值确定为第二像素值,得到图像掩膜;其中,第一像素值和第二像素值不同。
87.在进行匹配检测时,按照色彩通道读取像素的像素值,例如待处理图像为rgb颜色模式时,可以读取r通道、g通道和b通道分别对应的像素值。在实际应用中,某一颜色模式可能存在多种色彩通道值的组合表示不同肤色的方式,在这种情况下,预设像素条件可能记录了多种像素值关系以及像素值区间的组合。其中,像素值关系,是指各个像素值之间的相关关系,例如大小关系,差值关系等;像素值区间,是指像素在表征肤色时其对应的像素值的可选区间。
88.在得到像素值后,首先判断各个像素值之间是否满足预设像素条件规定的任意一个像素值关系,若不满足任意一个像素值关系,则可以直接确定像素的检测结果为非肤色,若满足目标像素值关系,则可以进一步判断像素值是否均处于该条件下规定的像素值区间,若不处于,则确定像素的检测结果为非肤色,若处于,则确定其结果为肤色。
89.需要说明的是,在上述的实施例中,目标像素值关系仅有一个。在另一种实施方式中,各个像素值关系划定的范围可能存在交集,在这种情况下,在确定满足目标像素值关系而像素值不处于对应的像素值区间时,可以判断所有像素值关系对应的匹配结果中是否存在通过。通过,即满足像素值关系且与像素值处于对应的像素值区间。若存在,则确定像素对应的检测结果为同构,若不存在,则确定为非肤色。
90.例如,对于rgb颜色模式来说,存在两种像素值关系,第一种为:
91.(abs(r

g)>15)and(r>g)and(r>b)and(max(r,g,b)

min(r,g,b)>15)
92.即,r

g的绝对值大于15,且r>g,且r>b,且三者的最大值和最小值之差大于15。在这种条件下,对应的一组像素值区间为r∈(95,220),g∈(40,210),b∈(20,170)。
93.第二种为:
94.(abs(r

g)>15)and(r>g)and(r>b)and(max(r,g,b)

min(r,g,b)≤15)
95.即,r

g的绝对值大于15,且r>g,且r>b,且三者的最大值和最小值之差不大于15。在这种条件下,对应的一组像素值区间为r∈(220,255),g∈(210,255),b∈(170,255)。
96.上述两种像素值关系不具有交集,因此当某一像素值关系被满足但像素值不处于对应的像素值区间,则可以确定检测结果为非肤色。
97.在另一种实施方式中,第二种像素值关系为:
98.(abs(r

g)>15)and(r>g)and(r>b)
99.在这种情况下,两种像素值关系具有交集,因此若满足第二种像素值关系且像素
值不处于对应的像素值区间时,不能直接确定检测结果为非肤色,而时需要根据第一种像素值关系的满足情况和像素值区间判断情况来决定检测结果。
100.综上,在rgb颜色模式下,确定检测结果并在待处理图像技术上生成图像掩膜的过程为:
101.if(abs(r

g)>15)and(r>g)and(r>b):
102.if(r>95)and(g>40)and(b>20)and(max(r,g,b)

min(r,g,b)>15):
103.imgskin[r,c]=(255,255,255)#该像素点为肤色,把该像素点设置为白色
[0104]
elif(r>220)and(g>210)and(b>170):
[0105]
imgskin[r,c]=(255,255,255)#该像素点为肤色,把该像素点设置为白色
[0106]
在实际应用中,由于检测结果有两种可能,因此可以采用两种不同的像素替换待处理图像中原本像素,完成图像掩膜的生成。具体为利用两个大小不同的第一像素值和第二像素值分别对像素原本的像素值进行替换,重新赋值后得到的图像即为双色的图像掩膜,两种像素值分别表示两种检测结果。
[0107]
得到检测结果和利用其生成图像掩膜的过程是循环执行的,即每当得到一个像素对应的检测结果时,均立即利用其参与图像掩膜的生成,例如对待处理图像中的像素进行替换,得到初始图像掩膜。循环多次后,对所有像素均处理完毕后,初始图像掩膜即转换为图像掩膜。在另一种实施方式中,得到检测结果的步骤和利用其生成图像掩膜的步骤并不循环执行,而是单独执行,即在得到全部的检测结果后,统一利用其生成图像掩膜。
[0108]
基于上述实施例,为了尽可能的提高处理速度,充分利用移动端的计算资源。皮肤区域识别模型包括图像调整网络,图像调整网络用于对输入图像的尺寸大小进行调整。因此,利用皮肤区域识别模型基于图像掩膜对待处理图像进行肤色识别处理,得到皮肤区域图像的过程可以包括如下步骤:
[0109]
步骤31:利用图像调整网络对待处理图像和图像掩膜进行尺寸调节处理,得到预处理图像。
[0110]
步骤32:将预处理图像输入皮肤区域识别模型中的多层网络,得到皮肤区域图像。
[0111]
需要说明的是,预处理图像的长边和宽边的像素数量均为4的倍数。由于寄存器读写时的粒度为4个数据单位,因此,通过将与处理图像的长宽边的像素数量设置为4的倍数,可以快速读写数据,并同时使得gpu(graphics processing unit,图形处理器)资源充分利用。本实施例并不限定个尺寸调节处理的具体方式,例如可以为长边或宽边的裁剪处理。此外皮肤区域识别模型的数据输入区间可以为(0,1),以便提高模型训练速度,快速地收敛。在这种情况下,除了需要对尺寸进行调节以外,还需要对图像的像素值进行归一化处理。
[0112]
多层网络,是指用于对与处理图像进行处理得到皮肤区域图像的网络,其具体内容不做限定。在一种优选的实施方式中,为了提交数据处理速度,多层网络包括特征提取子网络,特征提取子网络中包括若干个卷积模块,卷积模块具有倒残差结构和注意力机制结构,倒残差结构采用深度可分离卷积。通过倒残差结构和轻量级注意力机制结构的配合,同时采用深度可分离卷积结构,可以使得特征图提取的速度更快。更进一步的,卷积模块的输入通道数和输出通道数同样为4的倍数,以便使得gpu资源被充分利用。
[0113]
多层网络中,还包括上采样子网络,其用于基于特征提取子网络得到的特征图生成最终的皮肤区域图像,所述上采样子网络具有若干个相邻交替的缩放层(resize)和反卷
积层(convtranspose),通过交替处理的方式提高数据处理速度。
[0114]
请参考图7,图7为本技术实施例提供的一种具体的皮肤区域识别模型结构图。其中,参数i表示输入通道数,参数o表示输出通道数,参数s表示卷积步长。模块1(2d卷积层,conv2d层)用于将三通道(r、g、b)的待处理图像和单通道的图像掩膜整合为四通道的数据,然后利用多个模块2(卷积模块,convblock)构成的特征提取子网络进行特征提取,最后利用模块3(反卷积层,deconv)和模块4(缩放层,resize)构成的上采样子网络进行数据处理,最终输出单通道的图像,该图像为皮肤区域图像。其中,模块2具体包括倒残差结构和轻量级注意力机制结构,其中,逐点卷积即为pointwise操作,深度卷积即为depthwise操作,平均池化层即为avg pool层,1
×
1 2d卷积即为1
×
1conv2d层。图7中的加号运算符即为合并(concat)运算符。
[0115]
请参考图8,图8为本技术实施例提供的一种具体的图像处理方法的流程示意图。在输出皮肤区域图像后,可以利用opengl的mix操作对皮肤区域图像和待处理图像整合,得到最终的处理范围。opengl(open graphics library,开放图形库或者开放式图形库),是用于渲染2d、3d矢量图形的跨语言、跨平台的应用程序编程接口。这个接口由近350个不同的函数调用组成,用来绘制从简单的图形比特到复杂的三维景象。在一种实施方式中,这种整合可以由皮肤区域识别模型完成,则皮肤区域识别模型最终输出的皮肤区域图像即为整合后的图像。
[0116]
需要说明的是,皮肤区域识别模型为训练完毕达到收敛的模型,其可以基于训练数据集训练得到,训练数据集的获取过程可以包括如下步骤:
[0117]
步骤41:获取多个初始图像。
[0118]
步骤42:将初始图像输入人体解析分割模型,得到各个初始图像对应的多个候选标记结果。
[0119]
步骤43:利用目标标记结果对初始图像进行标注,得到初始训练图像,利用初始训练图像作为训练图像掩膜,与初始图像在若干个色彩通道对应的色彩图像构成训练数据,并将训练数据加入训练数据集;目标标记结果为与皮肤相关的候选标记结果。
[0120]
初始图像,是指未经标记的训练图像,其数量不做限定,例如可以为三万张。人体解析分割模型,用于对图像中各个人体部位进行识别分割和标记,其具体类型和结构不做限定,例如可以为self

correction for human parsing(发布于2020年的人体解析分割模型,下文用sfhp简称)模型。sfhp模型接收的输入为初始图像,其可以给出给出每个人体部位的mask(即候选标记结果)。由于并不是每个候选标记结果均与皮肤相关,因此可以从中选择目标标记结果,目标标记结果为与皮肤相关的候选标记结果,利用其对初始图像进行标注得到初始训练图像,并与对应的初始图像掩膜最终构成训练数据,多个训练数据组成训练数据集。请参考图9,图9为本技术实施例提供的一种初始图像和候选标记结果示意图,其中的多个候选标记结果中,只有face(即脸部)、left/right

arm(即左臂和右臂)、left/right

leg(即左腿和右腿)对应的候选标记结果为目标标记结果。
[0121]
具体的,皮肤区域识别模型的训练过程,包括:
[0122]
步骤51:按照预设训练批次大小,从训练数据集中选择多个目标训练数据。
[0123]
步骤52:将目标训练数据输入初始模型,得到输出的训练皮肤区域图像。
[0124]
步骤53:基于训练皮肤区域图像和初始训练图像,利用优化器,按照预设学习速率
调节初始模型的网络参数。
[0125]
步骤54:若检测到满足训练完成条件,则将参数调节后的初始模型确定为皮肤区域识别模型。
[0126]
进一步的,将目标训练数据输入初始模型,得到输出的训练皮肤区域图像的过程可以包括:
[0127]
步骤61:将目标训练数据中的目标色彩图像和目标初始训练图像输入初始模型的特征提取子网络,得到多通道特征图。
[0128]
步骤62:将多通道特征图输入初始模型的上采样子网络,得到训练皮肤区域图像。
[0129]
训练过程中,可以将每轮次参与训练的训练图像的数量即训练批次大小batch_size设置为32,将学习率即预设学习速率learningrate设置为0.01,并采用adam优化器。adam(adaptive moment estimation,自适应矩估计)优化器是计算每个参数的自适应学习率的一种方法。训练数据的尺寸可以为96x128x4(其中96x128x3为原rgb图,96x128x1为对应的图像掩膜),输出尺寸为96x128x1。训练完成条件的具体内容不做限定,例如可以为训练轮次数量条件,或者可以为模型识别准确度条件。通过特征提取子网络,可以对各个色彩通道的色彩图像以及对应的图像掩膜(即初始训练图像)进行特征提取,在得到多通道特征图后对其进行上采样处理,生成对应的训练皮肤区域图像。
[0130]
下面对本技术实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的图像处理方法可相互对应参照。
[0131]
本技术还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的图像处理方法的步骤。
[0132]
该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0133]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0134]
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应该认为超出本技术的范围。
[0135]
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd

rom、或技术领域内所公知的任意其它形式的存储介质中。
[0136]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系属于仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操
作之间存在任何这种实际的关系或者顺序。而且,术语包括、包含或者其他任何变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
[0137]
本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
再多了解一些

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

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

相关文献