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

图像处理方法、装置、设备及计算机可读存储介质与流程

2022-08-21 19:07:23 来源:中国专利 TAG:


1.本发明涉及图像处理领域,尤其涉及一种图像处理方法、装置、设备及计算机可读存储介质。


背景技术:

2.现代社会,随着科技的高速发展和移动终端的快速普及,人们越来越多的需求从线下转移到了线上,智能手机的发展,满足了不少用户随时随地、方便快捷地拍摄和修改处理各种证件照的需求。
3.证件照的换装技术,主要采用的是使用服装素材衣领处的位置和人像脖子处的位置进行适配的方式或者以生成的脖子代替人像脖子对服装素材进行适配的方式。在实际的证件照的换装操作过程中,可能会出现用户拍摄照片时身体有所倾斜,脖子较歪,产生向左、向右偏移的现象,导致了脖子连接点的检测位置偏移,换装效果较差。


技术实现要素:

4.本发明的主要目的在于提供一种图像处理方法、装置、设备及计算机可读存储介质,旨在解决换装过程中时脖子连接点的检测位置偏移导致换装效果较差的技术问题。
5.为实现上述目的,本发明提供一种图像处理方法,所述图像处理方法包括以下步骤:
6.若待处理图像中人物图像的脖颈存在偏移,则获取所述待处理图像对应的待换装图像,以及所述待处理图像中人物图像对应的脖颈矫正参数;
7.基于所述脖颈矫正参数,确定所述待换装图像对应的定位点,其中,所述定位点包括左定位点以及右定位点;
8.基于所述定位点、所述待换装图像以及换装素材进行换装操作,获得目标图像。
9.优选地,所述脖颈矫正参数包括所述人物图像对应的脖颈宽度以及所述人物图像中下巴尖对应的第一坐标,所述基于所述脖颈矫正参数,确定所述待换装图像对应的定位点的步骤包括:
10.基于所述人物图像对应的中轴线、所述脖颈宽度以及所述第一坐标,确定定位线,其中,所述定位线包括左定位线以及右定位线;
11.基于所述定位线以及所述人物图像对应的脸部区域掩码,确定定位点,其中,所述定位点包括左定位点以及右定位点。
12.优选地,所述基于所述人物图像对应的中轴线、所述脖颈宽度以及所述第一坐标,确定定位线的步骤包括:
13.基于所述脖颈宽度以及所述第一坐标,确定所述待处理图像中的偏移点,其中,所述偏移点包括左偏移点以及右偏移点;
14.获取所述人物图像对应的中轴线,并基于所述偏移点对所述中轴线进行水平平移,获得所述定位线。
15.优选地,所述基于所述定位线以及所述人物图像对应的脸部区域掩码,确定定位点的步骤包括:
16.确定所述定位线以及所述脸部区域掩码之间的交点;
17.将所述左定位线上的所述交点中靠近所述下巴尖的交点作为所述左定位点,将所述右定位线上的所述交点中靠近所述下巴尖的交点作为所述右定位点。
18.优选地,所述脖颈宽度的获取过程包括:
19.获取所述人物图像中瞳孔点的坐标信息,并获取所述人物图像中下巴与脖颈的交界点,其中,所述交界点包括左交界点以及右交界点;
20.基于所述坐标信息确定所述人物图像的眼间距,并确定所述左交界点与所述右交界点之间的交界点间距;
21.确定所述交界点间距是否大于所述眼间距;
22.若所述交界点间距大于所述眼间距,则确定所述交界点间距为所述脖颈宽度;
23.若所述交界点间距小于或等于所述眼间距,则获取所述人物图像中左脸颊点以及右脸颊点之间的距离,并将所述距离作为所述脖颈宽度。
24.优选地,所述若待处理图像中人物图像的脖颈存在偏移,则获取所述待处理图像对应的待换装图像,以及所述待处理图像中人物图像对应的脖颈矫正参数的步骤之前,还包括:
25.获取所述人物图像中下巴与脖颈的交界点,其中,所述交界点包括左交界点以及右交界点;
26.基于所述人物图像对应的中轴线以及所述交界点,确定横向偏移距离以及纵向偏移距离;
27.确定所述横向偏移距离是否大于预设值或所述纵向偏移距离是否大于预设值,其中,若所述横向偏移距离大于预设值和/或所述纵向偏移距离大于预设值,则确定所述脖颈存在偏移。
28.优选地,所述基于所述人物图像对应的中轴线以及所述交界点,确定横向偏移距离以及纵向偏移距离的步骤包括:
29.基于所述左交界点的坐标以及所述右交界点的坐标,获得所述左交界点以及所述右交界点到所述中轴线的直线距离之差;
30.将所述直线距离之差的绝对值作为所述横向偏移距离,将所述左交界点以及所述右交界点之间的纵坐标之差的绝对值作为纵向偏移距离。
31.此外,为实现上述目的,本发明还提供一种图像处理装置,所述图像处理装置包括:
32.获取模块,用于若待处理图像中人物图像的脖颈存在偏移,则获取所述待处理图像对应的待换装图像,以及所述待处理图像中人物图像对应的脖颈矫正参数;
33.确定模块,用于基于所述脖颈矫正参数,确定所述待换装图像对应的定位点,其中,所述定位点包括左定位点以及右定位点;
34.换装模块,用于基于所述定位点、所述待换装图像以及换装素材进行换装操作,获得目标图像。
35.此外,为实现上述目的,本发明还提供一种图像处理设备,所述图像处理设备包
括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的图像处理程序,所述图像处理程序被所述处理器执行时实现如上所述的图像处理方法的步骤。
36.此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述可读存储介质上存储有图像处理程序,所述图像处理程序被处理器执行时实现如上所述的图像处理方法的步骤。
37.本发明通过若待处理图像中人物图像的脖颈存在偏移,则获取所述待处理图像对应的待换装图像,以及所述待处理图像中人物图像对应的脖颈矫正参数;接着基于所述脖颈矫正参数,确定所述待换装图像对应的定位点,其中,所述定位点包括左定位点以及右定位点;而后基于所述定位点、所述待换装图像以及换装素材进行换装操作,获得目标图像,通过在图像中脖颈存在偏移时,根据脖颈矫正参数重新确定待换装图像中的定位点进行换装,通过对人物图像的脸部与脖子的连接点进行左右偏移矫正的方式,重新确定脖子连接点,在对照片进行换装处理时,减少了因脖子歪斜或脖子被遮挡导致脖子连接点与实际的误差,提高了照片的换装效果。
附图说明
38.图1是本发明实施例方案涉及的硬件运行环境中图像处理设备的结构示意图;
39.图2为本发明图像处理方法第一实施例的流程示意图;
40.图3为本发明图像处理装置一实施例的功能模块示意图。
41.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
42.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
43.如图1所示,图1是本发明实施例方案涉及的硬件运行环境中图像处理设备的结构示意图。
44.本发明实施例图像处理设备可以是pc,也可以是智能手机、平板电脑、mp4(moving picture experts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、便携计算机等具有显示功能的可移动式终端设备。
45.如图1所示,该图像处理设备可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
46.可选地,图像处理设备还可以包括摄像头、rf(radio frequency,射频)电路,传感器、音频电路、wifi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器,在此不再赘述。
47.本领域技术人员可以理解,图1中示出的终端结构并不构成对图像处理设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
48.如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及图像处理程序。
49.在图1所示的图像处理设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的图像处理程序。
50.在本实施例中,图像处理设备包括:存储器1005、处理器1001及存储在所述存储器1005上并可在所述处理器1001上运行的图像处理程序,其中,处理器1001调用存储器1005中存储的图像处理程序时,执行以下各个实施例中图像处理方法的步骤。
51.本发明还提供一种图像处理方法,参照图2,图2为本发明图像处理方法第一实施例的流程示意图。
52.本实施例中,该图像处理方法包括以下步骤:
53.步骤s101,若待处理图像中人物图像的脖颈存在偏移,则获取所述待处理图像对应的待换装图像,以及所述待处理图像中人物图像对应的脖颈矫正参数;
54.本实施例中,在确定需要进行换装的图像即待处理图像之后,确定待处理图像中人物图像的脖颈是否存在偏移,即确定该人物图像的脖颈处是否存在偏移或者遮挡,具体地,可以通过人物图像中下巴与脖颈的交界点判断脖颈是否存在偏移。
55.若待处理图像中人物图像的脖颈存在偏移,则获取所述待处理图像对应的待换装图像,以及所述待处理图像中人物图像对应的脖颈矫正参数,其中,待换装图像可以为该人物图像中处于脖颈以上的人头图像(包括脖颈处的图像),脖颈矫正参数可以包括脖颈宽度以及人物图像中下巴尖对应的第一坐标,由于待处理图像中人物图像的脖颈存在偏移,因此该脖颈宽度为矫正后的该脖颈宽度。
56.例如,待处理图像为用户输入的包含人物图像的图片,在图像坐标系中,获取所述人物图像对应的脖颈宽度以及所述人物图像中下巴尖对应的第一坐标,其中,图像坐标系为,以图片左上角为原点,从原点向右为x轴方向,从原点向下为y轴方向的坐标系。
57.具体地,人物图像可以分为脸部区域与脖颈区域,获取下巴与脖颈的交界点即为获取脸部区域与脖颈区域的左右边界的交界点,交界点包括左交界点以及右交界点,在图像坐标系中,获取交界点的坐标以及下巴尖的坐标,并根据交界点的坐标获得脖颈宽度,例如,预先获取大量标记了交界点的人像图片,通过深度学习的方法进行模型训练,获得训练好的模型,该模型可以对用户输入的图片进行检测,确定该图片中人物图像的脸部区域与脖颈区域的左右边界的交界点,其中,交界点包括左交界点a以及右交界点b,同时,确定脸部区域对应的人脸106个关键点,而后,获得左交界点a、右交界点b以及人脸106个关键点在图片中的坐标,并且可以确定下巴尖对应的第一坐标为人脸106个关键点的坐标中16点的坐标,此后,根据104点和105点的坐标计算出两个瞳孔点之间的距离,作为眼间距,并且根据左交界点a和右交界点b的坐标计算出ab之间的距离,作为交界点间距,再将眼间距与交界点间距对比,若交界点间距大于眼间距,则确定交界点间距为脖颈宽度;若交界点间距小于或等于眼间距,则获取人脸106个关键点中10点和22点之间的距离,并将该距离作为脖颈宽度。
58.步骤s102,基于所述脖颈矫正参数,确定所述待换装图像对应的定位点,其中,所述定位点包括左定位点以及右定位点;
59.本实施例中,在获取到脖颈矫正参数时,确定待换装图像对应的定位点,其中,定位点包括左定位点以及右定位点,该定位点用于在换装时对待换装图像的脖颈进行定位,具体地,可以先根据脖颈宽度以及第一坐标确定定位线,该定位线包括左定位线以及右定位线,然后根据定位线确定定位点。
60.步骤s103,基于所述定位点、所述待换装图像以及换装素材进行换装操作,获得目标图像。
61.本实施例中,根据左定位点的坐标以及右定位点的坐标,待处理图像对应的待换装图像以及换装素材,利用换装素材对待换装图像进行换装,以获得目标图像,例如,待换装图像为根据包含脸部区域与头发区域的头部区域掩码,对待处理图像进行提取,并将提取出来的图像与预设的背景色进行图像叠加形成的图像,换装素材为包含衣服以及脖子区域的图像素材,在换装素材中,可以确定脖子上端最左边边界的左边界点,以及脖子上端最右边边界的右边界点,而后,对待换装图像中的脸部区域进行肤色提取,将该肤色迁移到换装素材中的脖子区域上,再根据点位对应关系,将换装素材中的左边界点贴合到待换装图像中的左定位点上,将换装素材中的右边界点贴合到待换装图像中的右定位点上,并进行图像叠加,得到目标图像。
62.需要说明的是,上述左边界点以及右边界点在进行点位对应时,需要使得左右边界点之间的距离,与左右定位点之间的距离相同,即根据左右边界点之间的距离与左右定位点之间的距离的比例,适当的放大或者缩小换装素材,以匹配待换装图像的大小。
63.本实施例提出的图像处理方法,通过若待处理图像中人物图像的脖颈存在偏移,则获取所述待处理图像对应的待换装图像,以及所述待处理图像中人物图像对应的脖颈矫正参数;接着基于所述脖颈矫正参数,确定所述待换装图像对应的定位点,其中,所述定位点包括左定位点以及右定位点;而后基于所述定位点、所述待换装图像以及换装素材进行换装操作,获得目标图像,通过在图像中脖颈存在偏移时,根据脖颈矫正参数重新确定待换装图像中的定位点进行换装,通过对人物图像的脸部与脖子的连接点进行左右偏移矫正的方式,重新确定脖子连接点,在对照片进行换装处理时,减少了因脖子歪斜或脖子被遮挡导致脖子连接点与实际的误差,提高了照片的换装效果。
64.基于第一实施例,提出本发明图像处理方法的第二实施例,在本实施例中,脖颈矫正参数包括所述人物图像对应的脖颈宽度以及所述人物图像中下巴尖对应的第一坐标,步骤s102包括:
65.步骤s201,基于所述人物图像对应的中轴线、所述脖颈宽度以及所述第一坐标,确定定位线,其中,所述定位线包括左定位线以及右定位线;
66.本实施例中,根据待处理图像中人物图像对应的中轴线、上述脖颈宽度以及上述第一坐标,确定定位线,其中,定位线包括左定位线以及右定位线,中轴线为人脸106个关键点中,16点以及43点的连线所在的直线,根据16点以及43点的坐标可以计算获得中轴线在图像坐标系中的方程。
67.具体地,根据第一坐标、脖颈宽度可以确定待处理图像中的偏移点,其中,偏移点包括左偏移点以及右偏移点,而后根据偏移点以及中轴线,可以确定定位线并确定定位线的方程,例如,将16点往左距离二分之一个脖颈宽度的点作为左偏移点,将16点往右距离二分之一个脖颈宽度的点作为右偏移点,设第一坐标为(facepoint[16].x,facepoint16..y),脖颈宽度为wneck,则左偏移点pointl的坐标为(facepoint[16].x-wneck/2,facepoint[16].y),右偏移点的坐标为(facepoint[16].x wneck/2,facepoint[16].y),设中轴线的方程为y=f(x),将中轴线向左平移至与左偏移点相交的位置,确定为左定位线,向右平移至与右偏移点相交的位置,确定为右定位线,即分别将中轴线分别向左以及向右平移wneck/2的距离,因此,可以获得左定位线以及右定位线的方程,左定位线的方程为y=f(x-wneck/2),右定位线的方程为y=f(x wneck/2)。
[0068]
在一些其他实施例中,可以分别在左偏移点以及右偏移点上作出直线,使得两条直线与上述中轴线平行,确定左偏移点上的直线为左定位线,右偏移点上的直线为右定位线。
[0069]
步骤s202,基于所述定位线以及所述人物图像对应的脸部区域掩码,确定定位点,其中,所述定位点包括左定位点以及右定位点;
[0070]
本实施例中,根据上述定位线以及上述人物图像对应的脸部区域掩码,确定定位点,其中,定位点包括左定位点以及右定位点,脸部区域掩码为待处理图像中,人物图像的脸部区域对应的掩码。
[0071]
具体地,分别获取左定位线与上述脸部掩码区域的交点,右定位线与上述脸部掩码区域的交点,将左定位线上的交点中靠近16点的交点作为左定位点,将右定位线上的交点中靠近16点的交点作为右定位点,例如,对左定位线的方程进行由下至上的遍历操作,其出现的第一个属于脸部区域掩码的点,即为左定位线与脸部掩码区域的交点中最靠近16点的交点,将其作为左定位点,并获得左定位点的坐标;对右定位线的方程进行由下至上的遍历操作,其出现的第一个属于脸部区域掩码的点,即为右定位线与脸部掩码区域的交点中最靠近16点的交点,将其作为右定位点,并获得右定位点的坐标。
[0072]
需要说明的是,将待处理图像中的每一个像素标签化,根据不同的标签对待处理图像进行语义分割,即可获得待处理图像中不同区域的区域掩码,例如,只包含脸部区域的脸部区域掩码,包含脸部区域与头发区域的头部区域掩码,根据不同的区域掩码可以从待处理图像中提取只包含对应区域的图像。
[0073]
本实施例提出的图像处理方法,通过基于所述人物图像对应的中轴线、所述脖颈宽度以及所述第一坐标,确定定位线,其中,所述定位线包括左定位线以及右定位线;接着基于所述定位线以及所述人物图像对应的脸部区域掩码,确定定位点,其中,所述定位点包括左定位点以及右定位点,能够根据脖颈宽度以及第一坐标准确得到定位点,通过定位点对人物图像的脸部与脖子的连接点进行左右偏移矫正,重新确定脖子连接点,减少了因脖子歪斜或脖子被遮挡导致脖子连接点与实际的误差,进一步提高了照片的换装效果。
[0074]
基于第二实施例,提出本发明图像处理方法的第三实施例,在本实施例中,步骤s201包括:
[0075]
步骤s301,基于所述脖颈宽度以及所述第一坐标,确定所述待处理图像中的偏移点,其中,所述偏移点包括左偏移点以及右偏移点;
[0076]
步骤s302,获取所述人物图像对应的中轴线,并基于所述偏移点对所述中轴线进行水平平移,获得所述定位线。
[0077]
本实施例中,根据脖颈宽度以及第一坐标,可以确定待处理图像中的偏移点,其中,偏移点包括左偏移点以及右偏移点,根据脸部区域16点以及43点的坐标,确定人物图像
对应的中轴线,并确定该中轴线的方程,并根据偏移点,对中轴线进行水平平移,确定定位线,并确定定位线的方程,其中,定位线包括左定位线以及右定位线。
[0078]
具体地,将下巴尖对应的16点往左距离二分之一个脖颈宽度的点作为左偏移点,将16点往右距离二分之一个脖颈宽度的点作为右偏移点,设16点对应的第一坐标为(facepoint[16].x,facepoint[16].y),脖颈宽度为wneck,则可以得到左偏移点pointl的坐标为(facepoint[16].x-wneck/2,facepoint[16].y),右偏移点的坐标为(facepoint[16].x wneck/2,facepoint[16].y),根据16点的坐标以及43点的坐标获得中轴线的方程,设该方程为y=f(x),对中轴线进行水平平移,将中轴线向左平移至与左偏移点相交的位置,确定为左定位线,向右平移至与右偏移点相交的位置,确定为右定位线,即将中轴线分别向左以及向右平移wneck/2的距离,因此,可以获得左定位线以及右定位线,并且可以确定左定位线以及右定位线的方程,左定位线的方程为y=f(x-wneck/2),右定位线的方程为y=f(x wneck/2)。
[0079]
本实施例提出的图像处理方法,通过基于所述脖颈宽度以及所述第一坐标,确定所述待处理图像中的偏移点,其中,所述偏移点包括左偏移点以及右偏移点;而后获取所述人物图像对应的中轴线,并基于所述偏移点对所述中轴线进行水平平移,获得所述定位线。根据下巴尖的坐标分别向左和向右二分之一个脖颈宽度的距离确定的左偏移点和右偏移点,使得左偏移点和右偏移点到下巴尖的距离相等,而后确定左偏移点和右偏移点上,与中轴线平行的直线为定位线,使得后续根据定位线对人物图像的脸部与脖子的连接点进行左右偏移矫正时,获得的连接点位置关于中轴线对称,提高了连接点位置的准确性以及合理性,从而提高后续的换装效果。
[0080]
基于第二实施例,提出本发明图像处理方法的第四实施例,在本实施例中,步骤s202包括:
[0081]
步骤s401,确定所述定位线以及所述脸部区域掩码之间的交点;
[0082]
步骤s402,将所述左定位线上的所述交点中靠近所述下巴尖的交点作为所述左定位点,将所述右定位线上的所述交点中靠近所述下巴尖的交点作为所述右定位点。
[0083]
本实施例中,获取上述人物图像对应的脸部区域掩码,根据定位线的方程分别确定左定位线与脸部区域掩码的交点,以及右定位线与脸部区域掩码的交点,并将左定位线上的交点中靠近下巴尖的交点作为左定位点,将右定位线上的交点中靠近下巴尖的交点作为右定位点。
[0084]
具体地,将待处理图像中的每一个像素标签化,根据不同的标签对待处理图像进行语义分割,即可获得待处理图像中不同区域的区域掩码,根据脸部区域的标签,获取脸部区域掩码,而后,对左定位线的方程进行由下至上的遍历操作,其出现的第一个属于脸部区域掩码的点,即为左定位线与脸部掩码区域的交点中最靠近16点的交点,将其作为左定位点,并获得左定位点的坐标;对右定位线的方程进行由下至上的遍历操作,其出现的第一个属于脸部区域掩码的点,即为右定位线与脸部掩码区域的交点中最靠近16点的交点,将其作为右定位点,并获得右定位点的坐标。
[0085]
本实施例提出的图像处理方法,通过确定所述定位线以及所述脸部区域掩码之间的交点;而后将所述左定位线上的所述交点中靠近所述下巴尖的交点作为所述左定位点,将所述右定位线上的所述交点中靠近所述下巴尖的交点作为所述右定位点。根据定位线在
人物图像的脸部区域确定左定位点以及右定位点,将定位点作为后续进行换装处理时,换装素材的脖子与待换装图像的脸部的连接点,因为左定位线与右定位线关于上述中轴线对称,所以左定位点与右定位点关于上述中轴线对称,提高了定位点位置的准确性以及合理性,提高了后续的换装效果。
[0086]
基于第二实施例,提出本发明图像处理方法的第五实施例,在本实施例中,脖颈宽度的获取过程包括:
[0087]
步骤s501,获取所述人物图像中瞳孔点的坐标信息,并获取所述人物图像中下巴与脖颈的交界点,其中,所述交界点包括左交界点以及右交界点;
[0088]
步骤s502,基于所述坐标信息确定所述人物图像的眼间距,并确定所述左交界点与所述右交界点之间的交界点间距;
[0089]
步骤s503,确定所述交界点间距是否大于所述眼间距;
[0090]
步骤s504,若所述交界点间距大于所述眼间距,则确定所述交界点间距为所述脖颈宽度。
[0091]
其中,步骤s503之后,还包括:
[0092]
步骤s501,若所述交界点间距小于或等于所述眼间距,则获取所述人物图像中左脸颊点以及右脸颊点之间的距离,并将所述距离作为所述脖颈宽度。
[0093]
本实施例中,在待处理图像的图像坐标系中,获取人脸106个关键点中,两个瞳孔点104点与105点的坐标,并获取人物图像中下巴与脖颈的交界点,该交界点为脸部区域与脖颈区域的左右边界的交界点,其中,交界点包括左交界点以及右交界点,确定左交界点以及右交界点的坐标,根据104点和105点的坐标确定眼间距,并根据左交界点与右交界点的坐标确定交界点间距,将眼间距与交界点间距进行对比,若交界点间距大于眼间距,则确定交界点间距为脖颈宽度;若交界点间距小于或等于眼间距,则获取人物图像中左脸颊点以及右脸颊点之间的距离,并将该距离作为脖颈宽度。例如,人物图像可以分为脸部区域与脖颈区域,交界点为脸部区域与脖颈区域的左右边界的交界点,预先获取大量标记了交界点的人像图片,通过深度学习的方法进行模型训练,获得训练好的模型,该模型可以对待处理图像进行检测,确定待处理图像中人物图像的脸部区域与脖颈区域的左右边界的交界点,其中,交界点包括左交界点a以及右交界点b,同时,确定脸部区域对应的人脸106个关键点,并且获得左交界点a、右交界点b以及人脸106个关键点在图片中的坐标,设104点的坐标为(facepoint[104].x,facepoint[104].y),105点的坐标为(facepoint[105].x,facepoint[105].y),眼间距为eyesdis,则可以确定:
[0094]
eyesdis=sqrt[(facepoint[105].x-facepoint[104].x)*(facepoint[105].x-facepoint[104].x) (facepoint[105].y-facepoint[104].y)*(facepoint[105].y-facepoint[104].y)],其中,sqrt为求平方根。
[0095]
另外,设左交界点a的坐标为(pointa.x,pointa.y),右交界点b的坐标为(pointb.x,pointb.y),交界点间距为abdis,则可以确定:
[0096]
abdis=sqrt[(pointb.x-pointa.x)*(pointb.x-pointa.x) (pointb.y-pointa.y)*(pointb.y-pointa.y)],其中,sqrt为求平方根。
[0097]
将eyesdis与abdis进行对比,若abdis>eyesdis,则将交界点间距abdis作为脖颈宽度wneck;若abdis≤eyesdis,则获取左脸颊点以及右脸颊点之间的距离作为脖颈宽度,
左脸颊点为人脸106个关键点中的10点,右脸颊点为人脸106个关键点中的22点,将10点和22点之间的距离作为脖颈宽度wneck,设10点的坐标为(facepoint[10].x,facepoint[10].y),22点的坐标为(facepoint[22].x,facepoint[22].y),因此,若交界点间距小于或等于眼间距,则可以确定:
[0098]
wneck=sqrt[(facepoint[22].x-facepoint[10].x)*(facepoint[22].x-facepoint[10].x) (facepoint[22].y-facepoint[10].y)*(facepoint[22].y-facepoint[10].y)],其中,sqrt为求平方根。
[0099]
本实施例提出的图像处理方法,通过获取所述人物图像中瞳孔点的坐标信息,并获取所述人物图像中下巴与脖颈的交界点,其中,所述交界点包括左交界点以及右交界点;而后基于所述坐标信息确定所述人物图像的眼间距,并确定所述左交界点与所述右交界点之间的交界点间距;从而确定所述交界点间距是否大于所述眼间距;若所述交界点间距大于所述眼间距,则确定所述交界点间距为所述脖颈宽度;若所述交界点间距小于或等于所述眼间距,则获取所述人物图像中左脸颊点以及右脸颊点之间的距离,并将所述距离作为所述脖颈宽度。根据眼间距与交界点间距的对比,判断人物图像中的脖颈区域是否被遮挡或未完全显示,并确定更准确的脖颈宽度,以便于后续进行脖子连接点的矫正时,更准确的确定偏移点,从而获得更准确的定位点,提高了定位点位置的准确性,并且提高了后续的换装效果。
[0100]
基于上述各个实施例,提出本发明图像处理方法的第六实施例,在本实施例中,步骤s101之前,该图像处理方法还包括:
[0101]
步骤s601,获取所述人物图像中下巴与脖颈的交界点,其中,所述交界点包括左交界点以及右交界点;
[0102]
步骤s602,基于所述人物图像对应的中轴线以及所述交界点,确定横向偏移距离以及纵向偏移距离;
[0103]
步骤s603,确定所述横向偏移距离是否大于预设值或所述纵向偏移距离是否大于预设值,其中,若所述横向偏移距离大于预设值和/或所述纵向偏移距离大于预设值,则确定所述脖颈存在偏移。
[0104]
其中,步骤s602包括:
[0105]
步骤s701,基于所述左交界点的坐标以及所述右交界点的坐标,获得所述左交界点以及所述右交界点到所述中轴线的直线距离之差;
[0106]
步骤s702,将所述直线距离之差的绝对值作为所述横向偏移距离,将所述左交界点以及所述右交界点之间的纵坐标之差的绝对值作为纵向偏移距离。
[0107]
本实施例中,获取人物图像中下巴与脖颈的交界点,该交界点为人物图像中脸部区域与脖颈区域的左右边界的交界点,其中,交界点包括左交界点以及右交界点,确定左交界点以及右交界点的坐标。
[0108]
具体地,根据人脸106个关键点中16点以及43点的坐标,确定人物图像对应的中轴线,并确定该中轴线的方程,根据该中轴线的方程、左交界点的坐标以及右交界点的坐标,确定人物图像中脖颈的横向偏移距离diffx以及纵向偏移距离diffy,再根据横向偏移距离和/或纵向偏移距离是否大于预设值,来确定脖颈是否存在偏移,例如,设16点的坐标为(facepoint[16].x,facepoint[16].y),43点的坐标为(facepoint[43].x,facepoint[43]
.y),左交界点a的坐标为(pointa.x,pointa.y),右交界点b的坐标为(pointb.x,pointb.y),设中轴线的方程为y=f(x),则可以获得y=f(x)对应的公式为:
[0109]
(x-facepoint[16].x)/(facepoint[43].x-facepoint[16].x)=(y-facepoint[16].y)/(facepoint[43].y-facepoint[16].y)。
[0110]
而后,通过点到直线距离计算公式分别计算左交界点以及右交界点到人脸中轴线的直线距离disl和disr,再将disl与disl做差后取绝对值,该值即为横向偏移距离diffx,可得diffx=abs(disl-disr),其中,abs为取绝对值,再将左交界点纵坐标以及右交界点的纵坐标做差后取绝对值,该值即为纵向偏移距离diffy,可得diffy=abs(pointb.y-pointa.y),此后,根据人脸106个关键点中104点以及105点的坐标,进行计算,获得眼间距eyesdis,设104点的坐标为(facepoint[104].x,facepoint[104].y),105点的坐标为(facepoint[105].x,facepoint[105].y),计算公式如下:
[0111]
eyesdis=sqrt[(facepoint[105].x-facepoint[104].x)*(facepoint[105].x-facepoint[104].x) (facepoint[105].y-facepoint[104].y)*(facepoint[105].y-facepoint[104].y)],其中,sqrt为求平方根。
[0112]
将eyesdis乘以0.15作为预设值,并且将该预设值与横向偏移距离以及纵向偏移距离进行比较,当diffx>eyesdis*0.15或者diffy>eyesdis*0.15时,则认为脖颈存在偏移,应该进行矫正,进而执行步骤s101,以进行脖颈换装连接点的矫正。
[0113]
需要说明的是,上述预设值不一定为eyesdis*0.15,可以为其他任何合理的数值,并且为可以通过计算获取或者直接获取的数值。
[0114]
在一些其他实施例中,若横向偏移距离以及纵向偏移距离都小于预设值,例如,diffx<eyesdis*0.15并且diffy<eyesdis*0.15时,可以确定脖颈不存在偏移,此时,在后续进行矫正的实施例中,可以直接将左交界点a作为左定位点,将右交界点b作为右定位点。
[0115]
本实施例提出的图像处理方法,通过获取所述人物图像中下巴与脖颈的交界点,其中,所述交界点包括左交界点以及右交界点;再基于所述人物图像对应的中轴线以及所述交界点,确定横向偏移距离以及纵向偏移距离;而后确定所述横向偏移距离是否大于预设值或所述纵向偏移距离是否大于预设值,其中,若所述横向偏移距离大于预设值和/或所述纵向偏移距离大于预设值,则确定所述脖颈存在偏移。通过确定横向偏移距离以及纵向偏移距离,再根据横向偏移距离和/或纵向偏移距离是否超过预设值来判断脖颈是否存在偏移,以使得,若脖颈存在偏移,后续可以重新确定定位点,对脖子连接点进行左右偏移矫正和脖子宽度矫正,将定位点作为最终的脖子连接点来进行换装,消除了因脖子歪斜或脖子被遮挡导致的误差,从而使得后续的换装效果更好。
[0116]
此外,本发明还提供一种图像处理装置,参照图3,所述图像处理装置包括:
[0117]
获取模块10,用于若待处理图像中人物图像的脖颈存在偏移,则获取所述待处理图像对应的待换装图像,以及所述待处理图像中人物图像对应的脖颈矫正参数;
[0118]
确定模块20,用于基于所述脖颈矫正参数,确定所述待换装图像对应的定位点,其中,所述定位点包括左定位点以及右定位点;
[0119]
换装模块30,用于基于所述定位点、所述待换装图像以及换装素材进行换装操作,获得目标图像。
[0120]
进一步地,确定模块20,还用于:
[0121]
基于所述人物图像对应的中轴线、所述脖颈宽度以及所述第一坐标,确定定位线,其中,所述定位线包括左定位线以及右定位线;
[0122]
基于所述定位线以及所述人物图像对应的脸部区域掩码,确定定位点,其中,所述定位点包括左定位点以及右定位点。
[0123]
进一步地,确定模块20,还用于:
[0124]
基于所述脖颈宽度以及所述第一坐标,确定所述待处理图像中的偏移点,其中,所述偏移点包括左偏移点以及右偏移点;
[0125]
获取所述人物图像对应的中轴线,并基于所述偏移点对所述中轴线进行水平平移,获得所述定位线。
[0126]
进一步地,确定模块20,还用于:
[0127]
确定所述定位线以及所述脸部区域掩码之间的交点;
[0128]
将所述左定位线上的所述交点中靠近所述下巴尖的交点作为所述左定位点,将所述右定位线上的所述交点中靠近所述下巴尖的交点作为所述右定位点。
[0129]
进一步地,确定模块20,还用于:
[0130]
获取所述人物图像中瞳孔点的坐标信息,并获取所述人物图像中下巴与脖颈的交界点,其中,所述交界点包括左交界点以及右交界点;
[0131]
基于所述坐标信息确定所述人物图像的眼间距,并确定所述左交界点与所述右交界点之间的交界点间距;
[0132]
确定所述交界点间距是否大于所述眼间距;
[0133]
若所述交界点间距大于所述眼间距,则确定所述交界点间距为所述脖颈宽度;
[0134]
若所述交界点间距小于或等于所述眼间距,则获取所述人物图像中左脸颊点以及右脸颊点之间的距离,并将所述距离作为所述脖颈宽度。
[0135]
进一步地,所述图像处理装置还包括:
[0136]
获取所述人物图像中下巴与脖颈的交界点,其中,所述交界点包括左交界点以及右交界点;
[0137]
基于所述人物图像对应的中轴线以及所述交界点,确定横向偏移距离以及纵向偏移距离;
[0138]
确定所述横向偏移距离是否大于预设值或所述纵向偏移距离是否大于预设值,其中,若所述横向偏移距离大于预设值和/或所述纵向偏移距离大于预设值,则确定所述脖颈存在偏移。
[0139]
进一步地,所述图像处理装置还包括:
[0140]
基于所述左交界点的坐标以及所述右交界点的坐标,获得所述左交界点以及所述右交界点到所述中轴线的直线距离之差;
[0141]
将所述直线距离之差的绝对值作为所述横向偏移距离,将所述左交界点以及所述右交界点之间的纵坐标之差的绝对值作为纵向偏移距离。
[0142]
此外,本发明实施例还提出一种图像处理设备,该图像处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的图像处理程序,所述图像处理程序被所述处理器执行时实现如上所述的图像处理方法的步骤。
[0143]
此外,本发明实施例还提出一种计算机可读存储介质,所述可读存储介质上存储
有图像处理程序,所述图像处理程序被处理器执行时实现如上所述的图像处理方法的步骤。
[0144]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0145]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0146]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0147]
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

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

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

相关文献