CN114565521B - 基于虚拟换装的图像修复方法、装置、设备及存储介质 - Google Patents
基于虚拟换装的图像修复方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114565521B CN114565521B CN202210049020.2A CN202210049020A CN114565521B CN 114565521 B CN114565521 B CN 114565521B CN 202210049020 A CN202210049020 A CN 202210049020A CN 114565521 B CN114565521 B CN 114565521B
- Authority
- CN
- China
- Prior art keywords
- image
- neck
- area
- repaired
- region
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000000694 effects Effects 0.000 claims abstract description 33
- 230000008439 repair process Effects 0.000 claims abstract description 26
- 230000015654 memory Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 10
- 230000011218 segmentation Effects 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 5
- 238000012216 screening Methods 0.000 claims description 3
- 230000002411 adverse Effects 0.000 abstract description 5
- 238000004364 calculation method Methods 0.000 abstract description 4
- 210000003128 head Anatomy 0.000 description 15
- 238000010586 diagram Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 5
- 210000001508 eye Anatomy 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 210000004709 eyebrow Anatomy 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 210000001331 nose Anatomy 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 210000000697 sensory organ Anatomy 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 1
- 210000000746 body region Anatomy 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 210000000214 mouth Anatomy 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G06T5/77—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20104—Interactive definition of region of interest [ROI]
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Abstract
本申请提出一种基于虚拟换装的图像修复方法、装置、设备及存储介质,该方法包括:根据用户图像和服装模板图像,生成用户图像中脖子的待修复区域掩膜图像;若待修复区域掩膜图像中待修复区域的面积大于0,则生成用户图像对应的背景修复图;根据待修复区域掩膜图像和背景修复图,对用户图像中的脖子区域进行修复。本申请给出了待修复区域的准确计算方式,仅对待修复区域进行修复,不会影响原有的脖子区域,提高修复的准确性。背景修复图的背景色为脖子的主颜色,能避免与脖子不相关的区域对修复的不良影响。修复后再换装,能得到很好的换装效果。
Description
技术领域
本申请属于图像处理技术领域,具体涉及一种基于虚拟换装的图像修复方法、装置、设备及存储介质。
背景技术
在虚拟换装场景中,将用户图像中的衣服图像替换为服装模板图像中的衣服图像,即实现了虚拟换装。但由于换装前原始用户图片的脖子可能存在部分遮挡,或者换装前的衣服领口和服装模板图像中衣服领口存在差异等原因,导致换装后出现脖子区域不完整,换装效果差。
发明内容
本申请提出基于虚拟换装的图像修复方法、装置、设备及存储介质,给出了待修复区域的确定方式,背景修复图的背景色为脖子的主颜色,能避免与脖子不相关的区域对修复的不良影响,提高后续虚拟换装的效果。
本申请第一方面实施例提出了基于虚拟换装的图像修复方法,包括:
根据用户图像和服装模板图像,生成所述用户图像中脖子的待修复区域掩膜图像;
若所述待修复区域掩膜图像中待修复区域的面积大于0,则生成所述用户图像对应的背景修复图;
根据所述待修复区域掩膜图像和所述背景修复图,对所述用户图像中的脖子区域进行修复。
在本申请的一些实施例中,所述根据用户图像和服装模板图像,生成所述用户图像中脖子的待修复区域掩膜图像,包括:
根据用户图像,获取所述用户图像中脖子区域对应的脖子掩膜图像;
根据服装模板图像和所述用户图像,获取所述服装模板图像对应的服装掩膜图像;
根据所述脖子掩膜图像和所述服装掩膜图像,生成所述用户图像中脖子的待修复区域掩膜图像。
在本申请的一些实施例中,所述根据用户图像,获取所述用户图像中脖子区域对应的脖子掩膜图像,包括:
检测用户图像中的所有人脸关键点;
根据所述人脸关键点,对所述用户图像进行人脸对齐处理;
通过预设语义分割模型从对齐后的所述用户图像中分割出脖子区域;
生成所述脖子区域对应的脖子掩膜图像。
在本申请的一些实施例中,所述根据服装模板图像和所述用户图像,获取所述服装模板图像对应的服装掩膜图像,包括:
通过预先训练的脖子关键点检测模型识别对齐后的所述用户图像中的脖子关键点;
将服装模板图像中的预设领口关键点与所述脖子关键点对齐;
将对齐后的所述服装模板图像确定为服装掩膜图像。
在本申请的一些实施例中,所述根据所述脖子掩膜图像和所述服装掩膜图像,生成所述用户图像中脖子的待修复区域掩膜图像,包括:
根据所述脖子掩膜图像中的脖子关键点和所述服装掩膜图像中的预设领口关键点,对所述脖子掩膜图像和所述服装掩膜图像进行拼接,得到拼接掩膜图像;
在所述拼接掩膜图像中确定出从服装领口边缘至脖子区域上边缘的待检测区域;
从所述待检测区域中确定出待修复区域;
生成所述待修复区域对应的待修复区域掩膜图像。
在本申请的一些实施例中,所述从所述待检测区域中确定出待修复区域,包括:
遍历所述待检测区域中每个像素点的归属图像;
筛选出归属图像既不是所述脖子掩膜图像也不是所述服装掩膜图像的所有像素点;
将筛选出的所有像素点所组成的区域确定为待修复区域。
在本申请的一些实施例中,所述从所述待检测区域中确定出待修复区域,包括:
对所述待检测区域中的每列像素,计算同一列像素中领口边缘像素点的纵坐标与脖子区域下边缘的像素点的纵坐标之间的差值;
标记出差值大于零的领口边缘像素点和脖子区域下边缘的像素点;
将标记出的所有像素点的连线围成的区域确定为待修复区域。
在本申请的一些实施例中,所述生成所述用户图像对应的背景修复图,包括:
提取所述用户图像中脖子区域的主颜色;
绘制所述主颜色对应的纯色背景图;
从所述用户图像中扣取出头颈部区域的图像;
将所述头颈部区域的图像覆盖到所述纯色背景图中,得到所述用户图像对应的背景修复图。
在本申请的一些实施例中,所述提取所述用户图像中脖子区域的主颜色,包括:
确定所述用户图像的脖子区域内包含的所有颜色值;
统计所述脖子区域中各颜色值对应的像素点数目;
将像素点数目最多的颜色值确定为所述脖子区域的主颜色。
在本申请的一些实施例中,所述根据所述待修复区域掩膜图像和所述背景修复图,对所述用户图像中的脖子区域进行修复,包括:
将所述待修复区域掩膜图像和所述背景修复图输入预设图像修复网络中,得到所述用户图像对应的修复后图像。
在本申请的一些实施例中,所述对所述用户图像中的脖子区域进行修复之后,还包括:
将所述服装模板图像中的预设领口关键点与所述用户图像对应的脖子关键点对齐;
将对齐后的所述服装模板图像覆盖到修复得到的修复后图像中,得到换装效果图。
本申请第二方面的实施例提供了一种基于虚拟换装的图像修复装置,包括:
待修复区域掩膜生成模块,用于根据用户图像和服装模板图像,生成所述用户图像中脖子的待修复区域掩膜图像;
背景修复图生成模块,用于若所述待修复区域掩膜图像中待修复区域的面积大于0,则生成所述用户图像对应的背景修复图;
修复模块,用于根据所述待修复区域掩膜图像和所述背景修复图,对所述用户图像中的脖子区域进行修复。
本申请第三方面的实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序以实现上述第一方面所述的方法。
本申请第四方面的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行实现上述第一方面所述的方法。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
在本申请实施例中,基于用户图像对应的脖子掩膜图像和服装模板图像对应的服装掩膜图像,确定出了待修复区域掩膜图像。给出了待修复区域的准确计算方式,使得基于虚拟换装的脖子修复的目标性更强,后续仅对待修复区域进行修复,不会影响用户图像中原有的脖子区域,提高对脖子区域修复的准确性。生成了背景色为脖子的主颜色的背景修复图,能够避免与脖子不相关的区域(如衣服区域)对图像修复的不良影响,确保对脖子区域修复的准确性,使修复后待修复区域的颜色及纹理都与用户图像中原有的脖子区域的颜色和纹理相近,修复后脖子区域完整且纹理过渡自然。在修复后图像的基础上进行虚拟换装,换装后脖子区域不会存在不完整或被遮挡的情况,能够得到很好的换装效果。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变的明显,或通过本申请的实践了解到。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本申请一实施例所提供的一种基于虚拟换装的图像修复方法的流程图;
图2示出了本申请一实施例所提供的预设语义分割模型为hrnet网络的结构示意图;
图3示出了本申请一实施例所提供的预设图像修复网络为CR-Fill网络的结构示意图;
图4示出了本申请一实施例所提供的应用本申请的图像修复方法之前的换装效果图;
图5示出了本申请一实施例所提供的应用本申请的图像修复方法之后的换装效果图;
图6示出了本申请一实施例所提供的一种基于虚拟换装的图像修复方法的另一流程图;
图7示出了本申请一实施例所提供的一种基于虚拟换装的图像修复装置的结构示意图;
图8示出了本申请一实施例所提供的一种电子设备的结构示意图;
图9示出了本申请一实施例所提供的一种存储介质的示意图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施方式。虽然附图中显示了本申请的示例性实施方式,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。
下面结合附图来描述根据本申请实施例提出的基于虚拟换装的图像修复方法、装置、设备及存储介质。
目前,在虚拟换装场景中,将用户图像中的衣服图像替换为服装模板图像中的衣服图像,即实现了虚拟换装。但由于换装前原始用户图片的脖子可能存在部分遮挡,或者换装前的衣服领口和服装模板图像中衣服领口存在差异等原因,导致换装后出现脖子区域不完整,换装效果差。因此需要对脖子区域进行图像修复,但相关技术中的图片修复的修复结果很差,原因有两点:第一,相关技术没有提供待修复区域的掩膜的获取方式;第二,相关技术进行图像修复,待修复区域的修复效果严重依赖于待修复区域周围的图像内容。对脖子区域进行修复,脖子区域周围还与衣服区域相邻,导致修复效果受衣服影响,修复效果不好
基于此,本申请实施例提供了一种基于虚拟换装的图像修复方法,该方法基于用户图像对应的脖子掩膜图像和服装模板图像对应的服装掩膜图像,确定出了待修复区域掩膜图像。依据用户图像中脖子区域的主颜色,生成了背景为该主颜色的用户头颈部区域的背景修复图。根据该背景修复图和待修复区域掩膜图像对用户图像中的脖子区域进行修复。如此精确地确定出了待修复区域,并在背景修复图中以脖子区域的主颜色替换待修复区域周围的原有图像内容,避免衣物区域对脖子区域的修复造成干扰,使修复后待修复区域的颜色及纹理都与用户图像中原有的脖子区域的颜色和纹理相近,修复后脖子区域完整且颜色和纹理的过渡非常自然,修复效果很好。在修复后图像的基础上进行虚拟换装,换装后脖子区域不会存在不完整或被遮挡的情况,能够得到很好的换装效果。
参见图1,该方法具体包括以下步骤:
步骤101:根据用户图像和服装模板图像,生成用户图像中脖子的待修复区域掩膜图像。
在虚拟换装场景中,获取用户图像和服装模板图像。其中,用户图像可以为包括用户头颈部区域及颈部以下部分身体区域的图像,头颈部区域包括头部区域和脖子区域。服装模板图像中包括服装图像,该服装图像包括完整的领口区域及部分或完整的领口以下衣服区域。获取到用户图像和服装模板图像之后,通过如下步骤S1-S3的操作来生成待修复区域掩膜图像。
S1:根据用户图像,获取用户图像中脖子区域对应的脖子掩膜图像。
获得用户图像后,通过预设人脸关键点检测模型检测用户图像中的所有人脸关键点,检测的人脸关键点包括用户图像中人物面部轮廓、眼睛、鼻子、嘴部、眼睛、眉毛等部位的人脸关键点。
本申请实施例中预先设置了标准人脸图像,并标注了该标准人脸图像的所有人脸关键点。该标准人脸图像可以为五官无遮挡且两眼中心点连线与水平线平行的图像。根据用户图像中识别的所有人脸关键点,对用户图像进行人脸对齐处理。即将用户图像中的人脸关键点与预设的标准人脸图像中的人脸关键点对齐,具体可以将用户图像中五官的多个人脸关键点与预设的标准人脸图像中对应的人脸关键点对齐。例如,将用户图像的两个嘴角处、鼻尖、左右眼中心及两个眉毛中心的人脸关键点分别与预设的标准人脸图像中的对应的人脸关键点对齐。
将用户图像与预设的标准人脸图像对齐之后,通过预设语义分割模型从对齐后的用户图像中分割出脖子区域。预设语义分割模型可以为HRNet、FCN(Fully ConvolutionNetwork,全卷积网络)、U-Net等模型。
以HRNet模型为例,预设语义分割模型可以使用hrnet经过迁移学习训练,使用并行连接高分辨率到低分辨率的子网,因此能够保持高分辨率。hrnet使用重复的多尺度融合,利用相同深度和相似级别的低分辨率表示来提高高分辨率表示,使得高分辨率表示对于姿态的估计也很充分,从而使得预设语义分割模型对脖子区域的分割表现出更精准的预测能力,hrnet网络架构如图2所示。
通过预设语义分割模型获得用户图像中的脖子区域之后,生成脖子区域对应的脖子掩膜图像。具体地,根据分割出的脖子区域的轮廓线上每个像素点的坐标,在空白纹理图中绘制出与该脖子区域形状和尺寸相同的掩膜区域,将该掩膜区域内每个像素点的像素值均设置为预设值,得到用户图像中脖子区域对应的脖子掩膜图像。该预设值可以为255、253、248等。
在脖子掩膜图像中与脖子区域形状、尺寸相同的掩膜区域内像素点的像素值均为预设值,该掩膜区域外的像素点的像素值均为0。
S2:根据服装模板图像和用户图像,获取服装模板图像对应的服装掩膜图像。
获得用户图像和服装模板图像,并将用户图像与预设的标准人脸图像对齐后,采用预先训练的脖子关键点检测模型识别对齐后的用户图像中的脖子关键点。该脖子关键点至少包括沿脖子竖直方向的中轴线左右对称的两个脖子关键点,且这两个脖子关键点可以为脖子与肩部相接位置处的两个关键点。将服装模板图像中的预设领口关键点与脖子关键点对齐,预设领口关键点为服装模板图像中服装领口处沿服装竖直方向上的中轴线左右对称的两个领口关键点,且这两个领口关键点为服装领口左右两侧与脖子相接处的两个最高点。将对齐后的服装模板图像确定为服装掩膜图像。
在另一种实现方式中,可以根据服装模板图像中服装区域的轮廓上每个像素点的坐标,在空白纹理图中利用坐标索引的方式绘制出与服装模板图像中服装区域形状、尺寸均相同的轮廓区域,将该轮廓区域内每个像素点的像素值均设置为预设值,得到服装掩膜图像。该预设值可以为255、252、248等。
在服装掩膜图像中与服装区域形状、尺寸相同的轮廓区域内像素点的像素值均为预设值,该轮廓区域外的像素点的像素值均为0。
S3:根据脖子掩膜图像和服装掩膜图像,生成用户图像中脖子的待修复区域掩膜图像。
通过步骤S1和S2依次得到脖子掩膜图像和服装掩膜图像后,根据脖子掩膜图像中的脖子关键点和服装掩膜图像中的预设领口关键点,对脖子掩膜图像和服装掩膜图像进行拼接,得到拼接掩膜图像。
由于服装掩膜图像中的预设领口关键点已与脖子掩膜图像中的脖子关键点对齐,因此预设领口关键点包括的左右两个领口关键点的坐标与脖子关键点包括的左右两个脖子关键点的坐标相同。因此将服装掩膜图像中的左右两个领口关键点与脖子掩膜图像中左右两个脖子关键点对应重合,即可将服装掩膜图像与脖子掩膜图像拼接在一起,得到的拼接掩膜图像中脖子掩膜区域的下方拼接上了服装掩膜区域。
在拼接掩膜图像中确定出从服装领口边缘至脖子区域上边缘的待检测区域。在拼接掩膜图像中确定出脖子区域的上边界,以及确定出服装领口的上边界,绘制一个外接矩形,该外接矩形为将脖子区域的上边界及服装领口的上边界同时涵盖在内的最小矩形。将该外接矩形确定为待检测区域,然后从待检测区域中确定出待修复区域。
在一种实现方式中,遍历待检测区域中每个像素点的归属图像。从待检测区域中筛选出归属图像既不是脖子掩膜图像也不是服装掩膜图像的所有像素点,将筛选出的所有像素点所组成的区域确定为待修复区域。若未筛选出任何像素点,则表明脖子区域完整,待修复区域的面积为0。
在另一种实现方式中,对待检测区域中的每列像素,计算同一列像素中领口边缘像素点的纵坐标与脖子区域下边缘的像素点的纵坐标之间的差值。标记出差值大于零的领口边缘像素点和脖子区域下边缘的像素点,将标记出的所有像素点的连线围成的区域确定为待修复区域。若每一列像素中领口边缘像素点的纵坐标与脖子区域下边缘的像素点的纵坐标之间的差值均为0,则表明脖子区域完整,待修复区域的面积为0。
通过上述任一方式确定出待修复区域之后,生成待修复区域对应的待修复区域掩膜图像。具体可以根据待修复区域的轮廓上每个像素点的坐标,在空白纹理图中以坐标索引的方式绘制出形状、尺寸与待修复区域均相同的轮廓区域,将该轮廓区域内每个像素点的像素值均设置为预设值,得到待修复区域掩膜图像。预设值可以为255、252、248等。
在待修复区域掩膜图像中待修复区域对应的轮廓区域内的像素点的像素值均为预设值,该轮廓区域外的每个像素点的像素值均为0。
若通过上述任一方式确定出待修复区域的面积为0,则生成的待修复区域掩膜图像即为空白纹理图。
本申请基于用户图像获得了脖子掩膜图像,基于服装模板图像获得了服装掩膜图像,利用脖子掩膜图像和服装掩膜图像生成了待修复区域掩膜图像。给出了待修复区域的准确计算方式,使得基于虚拟换装的脖子修复的目标性更强,后续仅对待修复区域进行修复,不会影响用户图像中原有的脖子区域,提高对脖子区域修复的准确性,进而改善换装效果。
通过本步骤的方式生成待修复区域掩膜图像之后,还判断待修复区域掩膜图像中待修复区域的面积是否大于0,如果是,则通过步骤102和103的方式对待修复区域进行修复之后再进行换装操作。如果待修复区域掩膜图像中待修复区域的面积为0,则表明用户图像中原有的脖子区域是完整的,不需要进行修复,则不再执行后续步骤102和103,将服装模板图像中的预设领口关键点与用户图像中的脖子关键点对齐之后,直接将服装模板图像覆盖到用户图像中,使服装模板图像的预设领口关键点与用户图像中的脖子关键点对应重合,即得到了换装效果图。
步骤102:若待修复区域掩膜图像中待修复区域的面积大于0,则生成用户图像对应的背景修复图。
当步骤101确定待修复区域掩膜图像中的待修复区域的面积大于0,表明用户图像中原有的脖子区域不完整,需要进行修复。此时先生存用户图像对应的背景修复图。
首先提取用户图像中脖子区域的主颜色。具体地,确定用户图像的脖子区域内包含的所有颜色值。统计脖子区域中各颜色值对应的像素点数目。将像素点数目最多的颜色值确定为脖子区域的主颜色。
然后绘制脖子区域的主颜色对应的纯色背景图,从用户图像中扣取出头颈部区域的图像,将头颈部区域的图像覆盖到纯色背景图中,得到用户图像对应的背景修复图。
在将头颈部区域的图像覆盖到纯色背景图中时,可以依据头颈部区域中每个像素点的坐标,利用坐标索引的方式将头颈部区域的图像覆盖到上述纯色背景图中,以使头颈部区域在得到的背景修复图中所处的位置与在用户图像中所处的位置相同。
通过上述方式得到的背景修复图中,带有修复区域,脖子区域周围的图片内容,要么是用户图像中原本的脖子区域,要么是基于脖子主颜色绘制的背景色,均与脖子修复相关。如此能够避免与脖子不相关的区域(如衣服区域)对图像修复及虚拟换装的不良影响,确保对脖子区域修复的准确性。
步骤103:根据待修复区域掩膜图像和背景修复图,对用户图像中的脖子区域进行修复。
通过步骤101获得待修复区域掩膜图像,通过步骤102获得背景色为脖子的主颜色的背景修复图之后,将待修复区域掩膜图像和背景修复图输入预设图像修复网络中,得到用户图像对应的修复后图像。
其中,预设图像修复网络可以为CR-Fill网络,CR-Fill网络的网络结构为由粗到细的体系结构,类似于DeepFillv2中的体系结构,但CA Layer被移除,应用了CR Loss进行训练。粗网络和精细网络是卷积编码器-解码器类型的网络。扩张的卷积层用于扩大感受野。在所有卷积和扩张卷积层中使用门控卷积。粗网络将缺失像素设置为零的不完整图像和指示缺失区域的二进制掩码作为输入,并生成初始预测。然后精细化网络将该初始预测作为输入,并输出最终的修复后图像,CR-Fill网络的网络架构如图3所示。
通过上述方式获得用户图像对应的修复后图像,之后将预设领口关键点已经与用户图像对应的脖子关键点对齐的服装模板图像覆盖到修复后图像中,得到换装效果图。
为了更直观地看出本申请实施例提供的图像修复方法对虚拟换装效果的影响,下面结合附图进行说明。如图4所示,图4示出了不对脖子区域进行修复,直接进行虚拟换装的效果图。当原始用户图像中的服装的衣领较高时,将服装模板图像中衣领较低的服装直接覆盖到用户图像中,则原有服装的部分衣领无法被服装模板遮挡,在脖子区域漏出部分原有服装,如图4中矩形框处所示,导致换装效果差。
而通过本申请实施例提供的方法,从原有图像中获取脖子掩膜图像,从服装模板图像中获取服装掩膜图像,基于脖子掩膜图像和服装掩膜图像确定出待修复区域掩膜图像。并生成背景色为脖子的主颜色的背景修复图。根据待修复区域掩膜图像和背景修复图,通过预设图像修复网络生成修复后图像,然后再将服装模板覆盖到修复后图像中,得到的换装效果如图5所示。在图5中矩形框所示的区域即为图像修复的区域,对比图4和图5能够直观地看出,通过本申请实施例对脖子区域进行修复,之后再进行虚拟换装操作,得到的换装效果图中不会漏出原有服装的衣领,使换装操作更加精准,效果更加自然。
为了便于进一步理解本申请实施例提供的图像修复方法,下面结合附图再次说明本申请的控制流程。如图6所示,获得用户图像和服装模板图像后,使用五官关键点对用户图像进行人脸对齐,然后检测用户图像中脖子两侧指定的脖子关键点。基于对齐后的用户图像获得脖子掩膜图像。对于服装模板图像,根据服装模板图像中的预设领口关键点与用户图像中的脖子关键点对齐,然后从对齐后的服装模板图像中获得服装掩膜图像。利用脖子掩膜图像和服装掩膜图像,确定出待修复区域掩膜图像。从对齐后的用户图像中提取出脖子区域的主颜色。根据用户图像和脖子区域的主颜色,生成背景修复图。然后根据待修复区域掩膜图像和背景修复图,获得修复后图像。之后将对齐后的服装模板图像覆盖到修复后图像中,得到换装效果图。
在本申请实施例中,基于用户图像对应的脖子掩膜图像和服装模板图像对应的服装掩膜图像,确定出了待修复区域掩膜图像。给出了待修复区域的准确计算方式,使得基于虚拟换装的脖子修复的目标性更强,后续仅对待修复区域进行修复,不会影响用户图像中原有的脖子区域,提高对脖子区域修复的准确性。生成了背景色为脖子的主颜色的背景修复图,能够避免与脖子不相关的区域(如衣服区域)对图像修复的不良影响,确保对脖子区域修复的准确性,使修复后待修复区域的颜色及纹理都与用户图像中原有的脖子区域的颜色和纹理相近,修复后脖子区域完整且纹理过渡自然。在修复后图像的基础上进行虚拟换装,换装后脖子区域不会存在不完整或被遮挡的情况,能够得到很好的换装效果。
本申请实施例还提供一种基于虚拟换装的图像修复装置,用于执行上述任一实施例提供的基于虚拟换装的图像修复方法。如图7所示,该装置包括:
待修复区域掩膜生成模块201,用于根据用户图像和服装模板图像,生成用户图像中脖子的待修复区域掩膜图像;
背景修复图生成模块202,用于若待修复区域掩膜图像中待修复区域的面积大于0,则生成用户图像对应的背景修复图;
修复模块203,用于根据待修复区域掩膜图像和背景修复图,对用户图像中的脖子区域进行修复。
待修复区域掩膜生成模块201,用于根据用户图像,获取用户图像中脖子区域对应的脖子掩膜图像;根据服装模板图像和用户图像,获取服装模板图像对应的服装掩膜图像;根据脖子掩膜图像和服装掩膜图像,生成用户图像中脖子的待修复区域掩膜图像。
待修复区域掩膜生成模块201,用于检测用户图像中的所有人脸关键点;根据人脸关键点,对用户图像进行人脸对齐处理;通过预设语义分割模型从对齐后的用户图像中分割出脖子区域;生成脖子区域对应的脖子掩膜图像。
待修复区域掩膜生成模块201,用于通过预先训练的脖子关键点检测模型识别对齐后的用户图像中的脖子关键点;将服装模板图像中的预设领口关键点与脖子关键点对齐;将对齐后的服装模板图像确定为服装掩膜图像。
待修复区域掩膜生成模块201,用于根据脖子掩膜图像中的脖子关键点和服装掩膜图像中的预设领口关键点,对脖子掩膜图像和服装掩膜图像进行拼接,得到拼接掩膜图像;在拼接掩膜图像中确定出从服装领口边缘至脖子区域上边缘的待检测区域;从待检测区域中确定出待修复区域;生成待修复区域对应的待修复区域掩膜图像。
待修复区域掩膜生成模块201,用于遍历待检测区域中每个像素点的归属图像;筛选出归属图像既不是脖子掩膜图像也不是服装掩膜图像的所有像素点;将筛选出的所有像素点所组成的区域确定为待修复区域。
待修复区域掩膜生成模块201,用于对待检测区域中的每列像素,计算同一列像素中领口边缘像素点的纵坐标与脖子区域下边缘的像素点的纵坐标之间的差值;标记出差值大于零的领口边缘像素点和脖子区域下边缘的像素点;将标记出的所有像素点的连线围成的区域确定为待修复区域。
背景修复图生成模块202,用于提取用户图像中脖子区域的主颜色;绘制主颜色对应的纯色背景图;从用户图像中扣取出头颈部区域的图像;将头颈部区域的图像覆盖到纯色背景图中,得到用户图像对应的背景修复图。
背景修复图生成模块202,用于确定用户图像的脖子区域内包含的所有颜色值;统计脖子区域中各颜色值对应的像素点数目;将像素点数目最多的颜色值确定为脖子区域的主颜色。
修复模块203,用于将待修复区域掩膜图像和背景修复图输入预设图像修复网络中,得到用户图像对应的修复后图像。
该装置还包括:换装模块,用于将服装模板图像中的预设领口关键点与用户图像对应的脖子关键点对齐;将对齐后的服装模板图像覆盖到修复得到的修复后图像中,得到换装效果图。
本申请的上述实施例提供的基于虚拟换装的图像修复装置与本申请实施例提供的基于虚拟换装的图像修复方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
本申请实施方式还提供一种电子设备,以执行上述基于虚拟换装的图像修复方法。请参考图8,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图8所示,电子设备8包括:处理器800,存储器801,总线802和通信接口803,所述处理器800、通信接口803和存储器801通过总线802连接;所述存储器801中存储有可在所述处理器800上运行的计算机程序,所述处理器800运行所述计算机程序时执行本申请前述任一实施方式所提供的基于虚拟换装的图像修复方法
其中,存储器801可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口803(可以是有线或者无线)实现该装置网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
总线802可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器801用于存储程序,所述处理器800在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述基于虚拟换装的图像修复方法可以应用于处理器800中,或者由处理器800实现。
处理器800可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器800中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器800可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器801,处理器800读取存储器801中的信息,结合其硬件完成上述方法的步骤。
本申请实施例提供的电子设备与本申请实施例提供的基于虚拟换装的图像修复方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
本申请实施方式还提供一种与前述实施方式所提供的基于虚拟换装的图像修复方法对应的计算机可读存储介质,请参考图9,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的基于虚拟换装的图像修复方法。
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的基于虚拟换装的图像修复方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
需要说明的是:
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下示意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种基于虚拟换装的图像修复方法,其特征在于,包括:
根据用户图像,获取所述用户图像中脖子区域对应的脖子掩膜图像;根据服装模板图像和所述用户图像,获取所述服装模板图像对应的服装掩膜图像;
根据所述脖子掩膜图像中的脖子关键点和所述服装掩膜图像中的预设领口关键点,对所述脖子掩膜图像和所述服装掩膜图像进行拼接,得到拼接掩膜图像;
在所述拼接掩膜图像中确定出从服装领口边缘至脖子区域上边缘的待检测区域;从所述待检测区域中确定出待修复区域;生成所述待修复区域对应的待修复区域掩膜图像;
若所述待修复区域掩膜图像中待修复区域的面积大于0,则生成所述用户图像对应的背景修复图;
根据所述待修复区域掩膜图像和所述背景修复图,对所述用户图像中的脖子区域进行修复。
2.根据权利要求1所述的方法,其特征在于,所述根据用户图像,获取所述用户图像中脖子区域对应的脖子掩膜图像,包括:
检测用户图像中的所有人脸关键点;
根据所述人脸关键点,对所述用户图像进行人脸对齐处理;
通过预设语义分割模型从对齐后的所述用户图像中分割出脖子区域;
生成所述脖子区域对应的脖子掩膜图像。
3.根据权利要求2所述的方法,其特征在于,所述根据服装模板图像和所述用户图像,获取所述服装模板图像对应的服装掩膜图像,包括:
通过预先训练的脖子关键点检测模型识别对齐后的所述用户图像中的脖子关键点;
将服装模板图像中的预设领口关键点与所述脖子关键点对齐;
将对齐后的所述服装模板图像确定为服装掩膜图像。
4.根据权利要求1所述的方法,其特征在于,所述从所述待检测区域中确定出待修复区域,包括:
遍历所述待检测区域中每个像素点的归属图像;
筛选出归属图像既不是所述脖子掩膜图像也不是所述服装掩膜图像的所有像素点;
将筛选出的所有像素点所组成的区域确定为待修复区域。
5.根据权利要求1所述的方法,其特征在于,所述从所述待检测区域中确定出待修复区域,包括:
对所述待检测区域中的每列像素,计算同一列像素中领口边缘像素点的纵坐标与脖子区域下边缘的像素点的纵坐标之间的差值;
标记出差值大于零的领口边缘像素点和脖子区域下边缘的像素点;
将标记出的所有像素点的连线围成的区域确定为待修复区域。
6.根据权利要求1所述的方法,其特征在于,所述生成所述用户图像对应的背景修复图,包括:
提取所述用户图像中脖子区域的主颜色;
绘制所述主颜色对应的纯色背景图;
从所述用户图像中扣取出头颈部区域的图像;
将所述头颈部区域的图像覆盖到所述纯色背景图中,得到所述用户图像对应的背景修复图。
7.根据权利要求6所述的方法,其特征在于,所述提取所述用户图像中脖子区域的主颜色,包括:
确定所述用户图像的脖子区域内包含的所有颜色值;
统计所述脖子区域中各颜色值对应的像素点数目;
将像素点数目最多的颜色值确定为所述脖子区域的主颜色。
8.根据权利要求1所述的方法,其特征在于,所述根据所述待修复区域掩膜图像和所述背景修复图,对所述用户图像中的脖子区域进行修复,包括:
将所述待修复区域掩膜图像和所述背景修复图输入预设图像修复网络中,得到所述用户图像对应的修复后图像。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述对所述用户图像中的脖子区域进行修复之后,还包括:
将所述服装模板图像中的预设领口关键点与所述用户图像对应的脖子关键点对齐;
将对齐后的所述服装模板图像覆盖到修复得到的修复后图像中,得到换装效果图。
10.一种基于虚拟换装的图像修复装置,其特征在于,包括:
待修复区域掩膜生成模块,用于根据用户图像,获取所述用户图像中脖子区域对应的脖子掩膜图像;根据服装模板图像和所述用户图像,获取所述服装模板图像对应的服装掩膜图像;根据所述脖子掩膜图像中的脖子关键点和所述服装掩膜图像中的预设领口关键点,对所述脖子掩膜图像和所述服装掩膜图像进行拼接,得到拼接掩膜图像;在所述拼接掩膜图像中确定出从服装领口边缘至脖子区域上边缘的待检测区域;从所述待检测区域中确定出待修复区域;生成所述待修复区域对应的待修复区域掩膜图像;
背景修复图生成模块,用于若所述待修复区域掩膜图像中待修复区域的面积大于0,则生成所述用户图像对应的背景修复图;
修复模块,用于根据所述待修复区域掩膜图像和所述背景修复图,对所述用户图像中的脖子区域进行修复。
11.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序以实现如权利要求1-9任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行实现如权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210049020.2A CN114565521B (zh) | 2022-01-17 | 2022-01-17 | 基于虚拟换装的图像修复方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210049020.2A CN114565521B (zh) | 2022-01-17 | 2022-01-17 | 基于虚拟换装的图像修复方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114565521A CN114565521A (zh) | 2022-05-31 |
CN114565521B true CN114565521B (zh) | 2023-04-07 |
Family
ID=81711802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210049020.2A Active CN114565521B (zh) | 2022-01-17 | 2022-01-17 | 基于虚拟换装的图像修复方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114565521B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112562034A (zh) * | 2020-12-25 | 2021-03-26 | 咪咕文化科技有限公司 | 一种图像生成方法、装置、电子设备和存储介质 |
CN113160037A (zh) * | 2021-04-25 | 2021-07-23 | 优研科技有限公司 | 人工智能换装方法、装置及存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012253483A (ja) * | 2011-06-01 | 2012-12-20 | Sony Corp | 画像処理装置、画像処理方法、およびプログラム |
JP2013084171A (ja) * | 2011-10-12 | 2013-05-09 | Yuji Matsumoto | 試着画像作成システム及び衣服画像データ |
US9652654B2 (en) * | 2012-06-04 | 2017-05-16 | Ebay Inc. | System and method for providing an interactive shopping experience via webcam |
US10373244B2 (en) * | 2015-07-15 | 2019-08-06 | Futurewei Technologies, Inc. | System and method for virtual clothes fitting based on video augmented reality in mobile phone |
CN110210283B (zh) * | 2019-04-09 | 2021-05-14 | 深圳市梦网视讯有限公司 | 一种基于换装应用的图像处理方法和系统 |
CN110288715B (zh) * | 2019-07-04 | 2022-10-28 | 厦门美图之家科技有限公司 | 虚拟项链试戴方法、装置、电子设备及存储介质 |
CN111787242B (zh) * | 2019-07-17 | 2021-12-07 | 北京京东尚科信息技术有限公司 | 用于虚拟试衣的方法和装置 |
CN112734633A (zh) * | 2021-01-07 | 2021-04-30 | 京东方科技集团股份有限公司 | 虚拟发型的替换方法、电子设备及存储介质 |
-
2022
- 2022-01-17 CN CN202210049020.2A patent/CN114565521B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112562034A (zh) * | 2020-12-25 | 2021-03-26 | 咪咕文化科技有限公司 | 一种图像生成方法、装置、电子设备和存储介质 |
CN113160037A (zh) * | 2021-04-25 | 2021-07-23 | 优研科技有限公司 | 人工智能换装方法、装置及存储介质 |
Non-Patent Citations (1)
Title |
---|
人脸轮廓定位和归一化的研究;童晓阳等;《系统仿真学报》;20050320(第03期);第701-709页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114565521A (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6871314B2 (ja) | 物体検出方法、装置及び記憶媒体 | |
CN111583097A (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN111179285B (zh) | 一种图像处理方法、系统及存储介质 | |
US20130163883A1 (en) | Apparatus for measuring three-dimensional position, method thereof, and program | |
CN110147776B (zh) | 确定人脸关键点位置的方法和装置 | |
CN113034447B (zh) | 一种边缘缺陷检测方法和装置 | |
CN111553298B (zh) | 一种基于区块链的火灾识别方法及系统 | |
CN109584300A (zh) | 一种确定车头朝向角度的方法及装置 | |
CN111583381B (zh) | 游戏资源图的渲染方法、装置及电子设备 | |
CN112001859A (zh) | 一种人脸图像的修复方法及系统 | |
EP3859673A1 (en) | Model generation | |
CN110458790B (zh) | 一种图像检测方法、装置及计算机存储介质 | |
Chen et al. | Shape prior guided instance disparity estimation for 3d object detection | |
CN108229492B (zh) | 提取特征的方法、装置及系统 | |
CN111724327A (zh) | 图像修复模型训练方法及系统及图像修复方法 | |
CN114565521B (zh) | 基于虚拟换装的图像修复方法、装置、设备及存储介质 | |
CN115937825B (zh) | 在线俯仰角估计的bev下鲁棒车道线生成方法及装置 | |
Nguyen et al. | High-definition texture reconstruction for 3D image-based modeling | |
CN114550062A (zh) | 图像中运动对象的确定方法、装置、电子设备和存储介质 | |
CN112767412B (zh) | 车辆部件级分割方法、装置以及电子设备 | |
CN111524171B (zh) | 图像处理方法、装置和电子设备 | |
CN114004839A (zh) | 全景图像的图像分割方法、装置、计算机设备和存储介质 | |
CN110059651B (zh) | 一种相机实时跟踪注册方法 | |
CN115578483A (zh) | 条漫图像生成方法、装置、设备及计算机存储介质 | |
CN114596245A (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 | ||
GR01 | Patent grant |