绘制人像线条画的方法和装置与流程

文档序号:12366986阅读:200来源:国知局
绘制人像线条画的方法和装置与流程

本发明涉及到图像处理技术领域,特别涉及到绘制人像线条画的方法和装置。



背景技术:

目前,在终端上可以安装很多具有人像处理的应用程序,可以将用户拍摄的人像照片转换为绘画风格的图像,例如转换为漫画、素描画、油彩画、版画等。其中一种转换方式可以是将人像照片转换为人像轮廓的线条画,通过线条画描绘出与人像极为相似的人像线条画。现有的人像线条画绘制方式是通过大量的样本训练学习获得人像照片与线条画之间的统计关系,得到线条画模版,并采用非参数采样方法得到期望的线条画。但是,采用非参数采样方法需要对人像照片上每一个像素点进行邻域匹配,计算所有样本人像的相应区域与人像照片上对应像素点的相似度,且为了绘制高质量的人像线条画,现有的方法需要足够多的样本空间,这一匹配的过程非常耗时,计算复杂度高,严重影响了绘制效率。



技术实现要素:

本发明实施例提供一种绘制人像线条画的方法和装置,能够快速绘制人像线条画,绘制效率高。

本发明实施例提出一种绘制人像线条画的方法,包括步骤:

预置已训练模型,所述已训练模型包括标准人像、线条概率分布区域和线条画模版;

采用已训练模型对目标人像进行几何变换,获得与所述已训练模型中的标准人像几何对齐的几何变换人像;

采用所述已训练模型中预设的线条概率分布区域从所述几何变换人像中选取像素点,对所述线条概率分布区域在所述几何变换人像中选取的像素点 进行采样,获得期望线条画;

确定所述几何变换人像的边缘图像,并采用所述边缘图像修正所述期望线条画,获得修正线条画;

采用所述已训练模型的线条画模版匹配所述修正线条画,生成所述目标人像对应的目标线条画。

本发明实施例还提出一种绘制人像线条画的装置,包括:

模型生成模块,用于预置已训练模型,所述已训练模型包括标准人像、线条概率分布区域和线条画模版;

几何变换模块,用于采用已训练模型对目标人像进行几何变换,获得与所述已训练模型中的标准人像几何对齐的几何变换人像;

采样模块,用于采用所述已训练模型中预设的线条概率分布区域从所述几何变换人像中选取像素点,对所述线条概率分布区域在所述几何变换人像中选取的像素点进行采样,获得期望线条画;

修正模块,用于确定所述几何变换人像的边缘图像,并采用所述边缘图像修正所述期望线条画,获得修正线条画;

模版匹配模块,用于采用所述已训练模型的线条画模版匹配所述修正线条画,生成所述目标人像对应的目标线条画。

本发明实施例采用了预设的线条概率分布区域从几何变换后的目标人像中选取像素点,并只对选取的像素点进行处理,大大减少了处理像素点的数量,提高了处理速度;同时,还采用边缘图像修正期望线条画中的灰度值,使修正线条画中的线条灰度值能够更准确的勾画出人像轮廓,进一步提高了最终生成的线条画的准确性。

附图说明

图1为本发明实施例中绘制人像线条画的装置所在终端的总线图;

图2为本发明绘制人像线条画的方法的第一实施例的流程图;

图3为本发明绘制人像线条画的方法实施例中获得线条概率分布区域的步骤流程图;

图4为本发明绘制人像线条画的方法的第二实施例的流程图;

图5为本发明绘制人像线条画的方法的第三实施例的流程图;

图6为本发明绘制人像线条画的方法的第四实施例的流程图;

图7为本发明绘制人像线条画的装置的第一实施例的模块示意图;

图8为本发明绘制人像线条画的装置的第二实施例的模块示意图;

图9为本发明实施例中线条概率分布区域的叠加示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参照图1,图1为本发明实施例中绘制人像线条画的装置所在终端的总线图,该终端可以包括:至少一个处理器101,例如CPU,至少一个网络接口104,用户接口103,存储器105,至少一个通信总线102。其中,通信总线102用于实现这些组件之间的连接通信。其中,用户接口103可以包括显示屏(Display)、键盘(Keyboard),还可以包括标准的有线接口、无线接口。网络接口104可以包括标准的有线接口、无线接口(如WIFI接口)。存储器105可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器105还可以是至少一个位于远离前述处理器101的存储装置。作为一种计算机存储介质的存储器105中可以包括操作系统、网络通信模块、用户接口模块以及绘制人像线条画程序。

在图1所示的绘制人像线条画的装置所在终端中,网络接口104主要用于连接服务器或其他终端,与服务器或其他终端进行数据通信;而用户接口103主要用于接收用户指令,并与用户进行交互;而处理器101可以用于调用存储器105中存储的绘制人像线条画程序,并执行以下操作:

预置已训练模型,所述已训练模型包括标准人像、线条概率分布区域和线条画模版;

采用已训练模型对目标人像进行几何变换,获得与已训练模型中的标准人像几何对齐的几何变换人像;

采用已训练模型中预设的线条概率分布区域从几何变换人像中选取像素点,对线条概率分布区域在几何变换人像中选取的像素点进行采样,获得期望线条画;

确定几何变换人像的边缘图像,并采用边缘图像修正期望线条画,获得修正线条画;

采用已训练模型的线条画模版匹配修正线条画,生成目标人像对应的目标线条画。

在一个实施例中,处理器101调用存储器105中存储的绘制人像线条画程序还可以执行以下操作:

获取已训练模型的各个样本线条画的黑色像素点的坐标;

将所有黑色像素点的坐标叠加,获得的坐标集合构成线条概率分布区域。

在一个实施例中,处理器101调用存储器105中存储的绘制人像线条画程序还可以执行以下操作:

采用线条概率分布区域从边缘图像中选取像素点;

采用线条概率分布区域在边缘图像中选取的像素点修正期望线条画中对应位置的像素点灰度值,获得修正线条画。

在一个实施例中,处理器101调用存储器105中存储的绘制人像线条画程序还可以执行以下操作:

对线条概率分布区域在几何变换人像中选取的每一个像素点进行邻域图像匹配,计算已训练模型中的n个样本人像的对应于第i个像素点的局部区域的灰度值以及相对于第i个像素点的相似度,并获得相似度大于相似阈值的k个样本人像,作为与第i个像素点局部区域匹配的样本人像,其中1≤n≤20,1≤k≤10;

获取k个样本人像对应的样本线条画,对k个样本线条画的对应于第i个像素点的局部区域的灰度值加权求和,获得第i个像素点的期望灰度值;

根据几何变换人像在线条概率分布区域内的每一个像素点的期望灰度值,生成期望线条画。

在一个实施例中,处理器101调用存储器105中存储的绘制人像线条画程 序还可以执行以下操作:

采用已训练模型提取目标人像的多个特征点;

根据特征点对目标人像进行几何变换,使获得的几何变换人像的特征点与已训练模型中的标准人像的特征点对齐。

本实施例图1所描述的绘制人像线条画的装置及其所在终端,采用了预设的线条概率分布区域从几何变换后的目标人像中选取像素点,并只对选取的像素点进行处理,大大减少了处理像素点的数量,提高了处理速度;同时,还采用边缘图像修正期望线条画中的灰度值,使修正线条画中的线条灰度值能够更准确的勾画出人像轮廓,进一步提高了最终生成的线条画的准确性。

如图2所示,图2为本发明绘制人像线条画的方法的第一实施例的流程图。本实施例提到的绘制人像线条画的方法,包括步骤:

步骤S09,预置已训练模型,所述已训练模型包括标准人像、线条概率分布区域和线条画模版;

本实施例中,预先通过多组样本人像和样本线条画建模,获得已训练的模型。在建模过程中,首先在各个样本人像上标定特征点,计算各个样本人像的特征点的平均位置,根据特征点的平均位置获得标准人像,再将各组样本人像及其对应的样本线条画做几何变换,使几何变换后的样本人像和样本线条画都与标准人像几何对齐,然后根据几何变换后的各个样本线条画上各线条的控制参数,生成统一的线条画模版,完成建模。

步骤S10,采用已训练模型对目标人像进行几何变换,获得与已训练模型中的标准人像几何对齐的几何变换人像;

当用户需要终端将目标人像线条画时,可通过终端拍摄目标人像的照片或从终端存储器中获取目标人像的照片。终端通过前述建模获得的已训练模型对照片中的目标人像进行几何变换,使目标人像与已训练模型中的标准人像几何对齐。

步骤S20,采用已训练模型中预设的线条概率分布区域从几何变换人像中选取像素点;

考虑到目标人像在经过几何变换后,绘制线条画所需要的像素点分布在有限的空间里,例如,若要将照片中的人脸绘制成线条画,则只需要脸部、 眼睛、鼻子、嘴巴、眉毛、耳朵、发型等部位的轮廓即可,因此可预先设置线条概率分布区域,将人像中用于绘制线条画所必需的像素点包括在这个线条概率分布区域中,并采用线条概率分布区域从几何变换人像中选取像素点。

步骤S30,对线条概率分布区域在几何变换人像中选取的像素点进行采样,获得期望线条画;

为得出线条画所需灰度值,本实施例采用非参数化采样方式对几何变换人像进行处理,获得期望线条画。为提高处理速度,只需要对线条概率分布区域选取的像素点进行非参数化采样,有利于减少处理像素点的数量,提高处理速度。

步骤S40,确定几何变换人像的边缘图像;

步骤S50,采用边缘图像修正期望线条画,获得修正线条画;

为了进一步使期望线条画中各像素点的灰度值能够更加准确的绘制出清晰的线条画,本实施例还加入了边缘算子来获取几何变换人像的边缘图像,得到人像中各主要特征的轮廓,例如眼眶、眼仁、鼻子的轮廓、嘴型、脸部轮廓等,并采用边缘图像修正期望线条画中像素点的灰度值,获得修正线条画,使修正线条画中的线条灰度值能够更准确的勾画出人像轮廓。

步骤S60,采用已训练模型的线条画模版匹配修正线条画,生成目标人像对应的目标线条画。

由于得到的修正线条画还存在部分无需绘制的线条,或线条之间存在相互依存或排斥的规则,根据模型中线条画模版所包含的线条间的规则,来调整修正线条画的控制参数,擦出一些不必要的线条或灰度值,突出一些必要的线条,最终生成最理想的目标线条画。此外,由于本实施例预先采用已训练模型对目标人像进行几何变换,因此还可以将匹配后的线条画进行几何变换的逆变换,获得与原始的目标人像几何对齐的目标线条画,使得到的线条画更加真实。

本实施例采用了预设的线条概率分布区域从几何变换后的目标人像中选取像素点,并只对选取的像素点进行处理,大大减少了处理像素点的数量,提高了处理速度;同时,还采用边缘图像修正期望线条画中的灰度值,使修正线条画中的线条灰度值能够更准确的勾画出人像轮廓,进一步提高了最终生成的线条画的准确性。

如图3所示,图3为本发明绘制人像线条画的方法实施例中获得线条概率分布区域的步骤流程图。本实施例针对图2所示实施例的步骤S09中的线条概率分布区域,采用以下步骤获得:

步骤S71,获取已训练模型的各个样本线条画的黑色像素点的坐标;

步骤S72,将所有黑色像素点的坐标叠加,获得的坐标集合构成线条概率分布区域。

本实施例为了减少处理的像素点数量,提高处理速度,在建模训练期间,将已训练模型中所有样本线条画进行叠加,使各个样本线条画的黑色像素点的坐标合并,得到所有样本线条画中黑色像素点的坐标集合,如图9所示,图9中左边为叠加前的各样本线条画,右边为叠加后得到的黑色像素点的坐标集合,在这个坐标集合的区域内包含的像素点,为绘制线条画所必需的像素点。由于采用了预设的线条概率分布区域从几何变换后的目标人像中选取像素点,并只对选取的像素点进行处理,大大减少了处理像素点的数量,提高了处理速度。

如图4所示,图4为本发明绘制人像线条画的方法的第二实施例的流程图。本实施例包括图2所示实施例中的所有步骤,其中步骤S50包括:

步骤S51,采用线条概率分布区域从边缘图像中选取像素点;

步骤S52,采用线条概率分布区域在边缘图像中选取的像素点修正期望线条画中对应位置的像素点灰度值,获得修正线条画。

本实施例中,为使期望线条画中的像素点灰度值更准确的勾画人像轮廓,采用边缘图像的像素点来修正期望线条画的灰度值,使期望线条画中不够黑的线条更加清晰,可主要选取边缘图像中的黑色像素点来修正期望线条画的灰度值。此外,为了减少处理的像素点数量,可采用线条概率分布区域从边缘图像中选取像素点,只采用所选范围内的像素点来修正期望线条画,有利于进一步提高处理速度。

如图5所示,图5为本发明绘制人像线条画的方法的第三实施例的流程图。本实施例包括图2所示实施例中的所有步骤,其中步骤S30包括:

步骤S31,对线条概率分布区域在几何变换人像中选取的每一个像素点进行邻域图像匹配,计算已训练模型中的n个样本人像的对应于第i个像素点的局部区域的灰度值以及相对于第i个像素点的相似度,并获得相似度大于相似阈值的k个样本人像,作为与第i个像素点局部区域匹配的样本人像,其中1≤n≤20,1≤k≤10;

步骤S32,获取k个样本人像对应的样本线条画,对k个样本线条画的对应于第i个像素点的局部区域的灰度值加权求和,获得第i个像素点的期望灰度值;

步骤S33,根据几何变换人像在线条概率分布区域内的每一个像素点的期望灰度值,生成期望线条画。

本实施例为进一步提高处理速度,减少了用于邻域匹配的样本数量。由于现有的邻域匹配方法中,当样本数量选取过少时,会产生大量噪声,使绘制的线条中产生许多断线的部分。但是由于本实施例后续会采用边缘算子获得的边缘图像来修正本实施例得到的期望线条画,使期望线条画中线条的断线部分得到修补,因此本实施例可减少样本数量,将样本数量n减少到20个以内,甚至可减少至10个,只将少量的样本人像与几何变换人像的像素点进行邻域匹配,获得各样本人像相对于各像素点的相似度,并将相似度较高的k个样本人像作为与该像素点的匹配的样本人像。由于样本数量的减少,相应的,k值也可以减少,例如减少到10个以内,甚至减少到3个,得到的期望线条画在经过边缘图像修正后,不会影响最终得到的图像效果。如此一来,由于样本数量的减少以及k值的减小,使处理速度得到了有效提高。

如图6所示,图6为本发明绘制人像线条画的方法的第四实施例的流程图。本实施例包括图2所示实施例中的所有步骤,其中步骤S10包括:

步骤S11,采用已训练模型提取目标人像的多个特征点;

步骤S12,根据特征点对目标人像进行几何变换,使获得的几何变换人像的特征点与已训练模型中的标准人像的特征点对齐。

本实施例在前期建模过程中,已根据各个样本人像上标定的特征点,得到已训练模型,因此,当需要将目标人像线条画时,直接采用已训练模型即可提取目标人像的特征点。在对目标人像几何变换时,将几何变换人像的特 征点与标准人像的特征点对齐,获得几何变换人像。采用特征点对齐的方式对目标人像几何变换,有利于减小变换过程中存在的误差,减小后续处理的误差,使绘制的线条画更加准确。

如图7所示,图7为本发明绘制人像线条画的装置的第一实施例的模块示意图。本实施例提到的绘制人像线条画的装置,包括:

模型生成模块110,用于预置已训练模型,已训练模型包括标准人像、线条概率分布区域和线条画模版;

几何变换模块120,用于采用已训练模型对目标人像进行几何变换,获得与已训练模型中的标准人像几何对齐的几何变换人像;

采样模块130,用于采用已训练模型中预设的线条概率分布区域从几何变换人像中选取像素点,对线条概率分布区域在几何变换人像中选取的像素点进行采样,获得期望线条画;

修正模块140,用于确定几何变换人像的边缘图像,并采用边缘图像修正期望线条画,获得修正线条画;

模版匹配模块150,用于采用已训练模型的线条画模版匹配修正线条画,生成目标人像对应的目标线条画。

本实施例中,预先通过多组样本人像和样本线条画建模,获得已训练的模型。在建模过程中,首先在各个样本人像上标定特征点,计算各个样本人像的特征点的平均位置,根据特征点的平均位置获得标准人像,再将各组样本人像及其对应的样本线条画做几何变换,使几何变换后的样本人像和样本线条画都与标准人像几何对齐,然后根据几何变换后的各个样本线条画上各线条的控制参数,生成统一的线条画模版,完成建模。

当用户需要终端将目标人像线条画时,可通过终端拍摄目标人像的照片或从终端存储器中获取目标人像的照片。终端通过前述建模获得的已训练模型对照片中的目标人像进行几何变换,使目标人像与已训练模型中的标准人像几何对齐。

考虑到目标人像在经过几何变换后,绘制线条画所需要的像素点分布在有限的空间里,例如,若要将照片中的人脸绘制成线条画,则只需要脸部、眼睛、鼻子、嘴巴、眉毛、耳朵、发型等部位的轮廓即可,因此可预先设置 线条概率分布区域,将人像中用于绘制线条画所必需的像素点包括在这个线条概率分布区域中,并采用线条概率分布区域从几何变换人像中选取像素点。

为得出线条画所需灰度值,本实施例采用非参数化采样方式对几何变换人像进行处理,获得期望线条画。为提高处理速度,只需要对线条概率分布区域选取的像素点进行非参数化采样,有利于减少处理像素点的数量,提高处理速度。

为了进一步使期望线条画中各像素点的灰度值能够更加准确的绘制出清晰的线条画,本实施例还加入了边缘算子来获取几何变换人像的边缘图像,得到人像中各主要特征的轮廓,例如眼眶、眼仁、鼻子的轮廓、嘴型、脸部轮廓等,并采用边缘图像修正期望线条画中像素点的灰度值,获得修正线条画,使修正线条画中的线条灰度值能够更准确的勾画出人像轮廓。

由于得到的修正线条画还存在部分无需绘制的线条,或线条之间存在相互依存或排斥的规则,根据模型中线条画模版所包含的线条间的规则,来调整修正线条画的控制参数,擦出一些不必要的线条或灰度值,突出一些必要的线条,最终生成最理想的目标线条画。此外,由于本实施例预先采用已训练模型对目标人像进行几何变换,因此还可以将匹配后的线条画进行几何变换的逆变换,获得与原始的目标人像几何对齐的目标线条画,使得到的线条画更加真实。

本实施例采用了预设的线条概率分布区域从几何变换后的目标人像中选取像素点,并只对选取的像素点进行处理,大大减少了处理像素点的数量,提高了处理速度;同时,还采用边缘图像修正期望线条画中的灰度值,使修正线条画中的线条灰度值能够更准确的勾画出人像轮廓,进一步提高了最终生成的线条画的准确性。

如图8所示,图8为本发明绘制人像线条画的装置的第二实施例的模块示意图。本实施例包括图7所示实施例中的所有模块,还增加了用于获得线条概率分布区域的区域预设模块160,该区域预设模块160用于:

获取已训练模型的各个样本线条画的黑色像素点的坐标;

将所有黑色像素点的坐标叠加,获得的坐标集合构成线条概率分布区域。

本实施例为了减少处理的像素点数量,提高处理速度,在建模训练期间, 将已训练模型中所有样本线条画进行叠加,使各个样本线条画的黑色像素点的坐标合并,得到所有样本线条画中黑色像素点的坐标集合,如图9所示,图9中左边为叠加前的各样本线条画,右边为叠加后得到的黑色像素点的坐标集合,在这个坐标集合的区域内包含的像素点,为绘制线条画所必需的像素点。由于采用了预设的线条概率分布区域从几何变换后的目标人像中选取像素点,并只对选取的像素点进行处理,大大减少了处理像素点的数量,提高了处理速度。

进一步的,修正模块140还用于:

采用线条概率分布区域从边缘图像中选取像素点;

采用线条概率分布区域在边缘图像中选取的像素点修正期望线条画中对应位置的像素点灰度值,获得修正线条画。

本实施例中,为使期望线条画中的像素点灰度值更准确的勾画人像轮廓,采用边缘图像的像素点来修正期望线条画的灰度值,使期望线条画中不够黑的线条更加清晰,可主要选取边缘图像中的黑色像素点来修正期望线条画的灰度值。此外,为了减少处理的像素点数量,可采用线条概率分布区域从边缘图像中选取像素点,只采用所选范围内的像素点来修正期望线条画,有利于进一步提高处理速度。

进一步的,采样模块130还用于:

对线条概率分布区域在几何变换人像中选取的每一个像素点进行邻域图像匹配,计算已训练模型中的n个样本人像的对应于第i个像素点的局部区域的灰度值以及相对于第i个像素点的相似度,并获得相似度大于相似阈值的k个样本人像,作为与第i个像素点局部区域匹配的样本人像,其中1≤n≤20,1≤k≤10;

获取k个样本人像对应的样本线条画,对k个样本线条画的对应于第i个像素点的局部区域的灰度值加权求和,获得第i个像素点的期望灰度值;

根据几何变换人像在线条概率分布区域内的每一个像素点的期望灰度值,生成期望线条画。

本实施例为进一步提高处理速度,减少了用于邻域匹配的样本数量。由 于现有的邻域匹配方法中,当样本数量选取过少时,会产生大量噪声,使绘制的线条中产生许多断线的部分。但是由于本实施例后续会采用边缘算子获得的边缘图像来修正本实施例得到的期望线条画,使期望线条画中线条的断线部分得到修补,因此本实施例可减少样本数量,将样本数量n减少到20个以内,甚至可减少至10个,只将少量的样本人像与几何变换人像的像素点进行邻域匹配,获得各样本人像相对于各像素点的相似度,并将相似度较高的k个样本人像作为与该像素点的匹配的样本人像。由于样本数量的减少,相应的,k值也可以减少,例如减少到10个以内,甚至减少到3个,得到的期望线条画在经过边缘图像修正后,不会影响最终得到的图像效果。如此一来,由于样本数量的减少以及k值的减小,使处理速度得到了有效提高。

进一步的,几何变换模块120还用于:

采用已训练模型提取目标人像的多个特征点;

根据特征点对目标人像进行几何变换,使获得的几何变换人像的特征点与已训练模型中的标准人像的特征点对齐。

本实施例在前期建模过程中,已根据各个样本人像上标定的特征点,得到已训练模型,因此,当需要将目标人像线条画时,直接采用已训练模型即可提取目标人像的特征点。在对目标人像几何变换时,将几何变换人像的特征点与标准人像的特征点对齐,获得几何变换人像。采用特征点对齐的方式对目标人像几何变换,有利于减小变换过程中存在的误差,减小后续处理的误差,使绘制的线条画更加准确。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述 实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1