一种动画处理方法、装置、存储介质及电子设备

文档序号:116744 发布日期:2021-10-19 浏览:32次 >En<

阅读说明:本技术 一种动画处理方法、装置、存储介质及电子设备 (Animation processing method and device, storage medium and electronic equipment ) 是由 冯乐乐 贺甲 于 2020-04-09 设计创作,主要内容包括:本发明公开一种动画处理方法、装置、存储介质及电子设备。其中,方法包括:获取至少两个关键序列帧,其中,所述关键序列帧设置有序列标识;对于相邻排序的序列标识对应的两个关键序列帧,分别确定所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息;基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个关键序列帧中目标对象的变化图像。本实施例中,通过关键序列帧和关键序列帧对应的变化图像替代全部动画序列帧,在保证了目标对象平滑过渡的基础上,关键序列帧和变化图像数量少,减少了动画的内存资源的占用。(The invention discloses an animation processing method, an animation processing device, a storage medium and electronic equipment. The method comprises the following steps: acquiring at least two key sequence frames, wherein the key sequence frames are provided with sequence identifiers; for two key sequence frames corresponding to the adjacent sequenced sequence identifiers, respectively determining distance field information in the two key sequence frames corresponding to the adjacent sequenced sequence identifiers; and drawing a change image of the target object in the two key sequence frames corresponding to the adjacent ordered sequence identifications based on the distance field information in the two key sequence frames corresponding to the adjacent ordered sequence identifications. In the embodiment, the key sequence frames and the change images corresponding to the key sequence frames are used for replacing all animation sequence frames, so that the number of the key sequence frames and the change images is small on the basis of ensuring the smooth transition of the target object, and the occupation of memory resources of the animation is reduced.)

一种动画处理方法、装置、存储介质及电子设备

技术领域

本发明实施例涉及计算机技术领域,尤其涉及一种动画处理方法、装置、存储介质及电子设备。

背景技术

随着计算机技术的不断发展,网络游戏被广泛接受,相应的,对网络游戏的要求也越来越高。

为了在播放时得到平滑的过渡效果,目前需要使用尽可能多数目的序列帧,以1秒24帧的动画为例,为了得到尽可能平滑的效果,一个10秒的动画就需要保存240帧图像。因此这种方法的内存占用很大,而且动画的平滑程度取决于使用的序列帧数目,并不能很好完全地解决平滑过渡的问题。

发明内容

本发明提供一种动画处理方法、装置、存储介质及电子设备,以实现降低动画存储的资源占用。

第一方面,本发明实施例提供了一种动画处理方法,包括:

获取至少两个关键序列帧,其中,所述关键序列帧设置有序列标识;

对于相邻排序的序列标识对应的两个关键序列帧,分别确定所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息;

基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个关键序列帧中目标对象的变化图像,其中,所述变化图像用于记录所述目标对象在所述相邻排序的序列标识对应的两个关键序列帧之间的动态过程。

第二方面,本发明实施例还提供了一种动画处理装置,包括:

关键序列帧获取模块,用于获取至少两个关键序列帧,其中,所述关键序列帧设置有序列标识;

距离场信息确定模块,用于对于相邻排序的序列标识对应的两个关键序列帧,分别确定所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息;

变化图像生成模块,用于基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个关键序列帧中目标对象的变化图像,其中,所述变化图像用于记录所述目标对象在所述相邻排序的序列标识对应的两个关键序列帧之间的动态过程。

第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例提供的动画处理方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例提供的动画处理方法。

本实施例的技术方案,通过分别确定相邻序列标识的关键序列帧中距离场信息,根据相同像素点在两个关键序列帧中距离场信息,绘制变化图像,通过变化图像中灰度值的变化表征关键帧图像中目标对象的图像轮廓的由前一序列标识的关键序列帧平滑过渡至后一序列标识的关键序列帧。本实施例中,通过关键序列帧和关键序列帧对应的变化图像替代全部动画序列帧,在保证了目标对象平滑过渡的基础上,关键序列帧和变化图像数量少,减少了动画的内存资源的占用。

附图说明

图1为本发明实施例一提供的一种动画处理方法的流程示意图;

图2是本发明实施例提供的一种二值化处理后关键序列帧的示例图;

图3是本发明实施例三提供的一种变化图像的示意图;

图4是本发明实施例二提供的一种动画处理方法的流程示意图;

图5是本发明实施例二提供的多个关键序列帧的示例图;

图6是本发明实施例二提供的合并后的变化图像的示例图;

图7是本发明实施例三提供的一种动画处理方法的流程示意图;

图8为本发明实施例三提供的一种当前标识对应图像轮廓的示例图;

图9是本发明实施例提供的一种动画处理方法的流程示意图;

图10是本发明实施例五提供的一种动画处理装置的结构示意图;

图11为本发明实施例六提供的一种电子设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1为本发明实施例一提供的一种动画处理方法的流程示意图,本实施例可适用于简化动画存储视频帧的情况,该方法可以由本发明实施例提供的动画处理装置来执行,该装置可采用软件和/或硬件的方式实现,该装置可集成于诸如移动终端、计算机、服务器等的电子设备中。其中该方法具体包括如下步骤:

S110、获取至少两个关键序列帧,其中,所述关键序列帧设置有序列标识。

S120、对于相邻排序的序列标识对应的两个关键序列帧,分别确定所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息。

S130、基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个关键序列帧中目标对象的变化图像,其中,所述变化图像用于记录所述目标对象在所述相邻排序的序列标识对应的两个关键序列帧之间的动态过程。

其中,网络游戏中具有动态变化的对象可以是但不限于人物、动物、植物等。目前,为了使得网络游戏中各对象在动态变化过程中平滑过渡,需在内存中存储大量的序列帧。以1秒24帧的动画为例,一个10秒的动画就需要保存240帧图像。

本实施例中,关键序列帧可以是预先设置的,根据用户需求绘制的风格化序列帧。其中,关键序列帧可以是间隔预设帧设置,还可以是根据用户需求选择设置。每一个关键序列帧设置有序列标识,不同对象的关键序列帧的序列标识可以不同类型的标识。示例性的,人脸阴影关键帧的序列标识可以是人脸光照角度等。

以人脸阴影关键帧为例电子设备中存储的关键序列帧可以是间隔光照角度对应的序列帧,例如序列标识可以是0°、30°、45°、60°、90°等。上述关键序列帧帧仅为示例。

本实施例中,通过关键序列帧和用于记录关键序列帧之间目标对象的动态过程的变化图像,代替现有技术中全部关键序列帧,既保证了动画的平滑过渡,同时减少了电子设备中动画存储占用的内存资源。

其中,变化图像基于关键序列帧中各像素点的距离场信息确定。具体的,距离场信息为任一像素点距离目标对象的图像轮廓的最小距离。

可选的,所述分别确定所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,包括:对于任一关键序列帧,识别所述关键序列帧中的目标对象的图像轮廓;基于所述图像轮廓确定所述关键序列帧中各像素点的距离场信息。其中,可以是对关键序列帧进行二值化处理,将关键序列帧处理为背景对应的黑色区域和目标对象对应的白色区域,该白色区域的轮廓为目标对象的图像轮廓。示例性的,参见图2,图2是本发明实施例提供的一种二值化处理后关键序列帧的示例图,需要说明的是,关键序列帧中的目标对象可以是任意形状,目标对象的图像轮廓可以是由一个轮廓组成,还可以是由多个独立的轮廓组成。

可以是基于距离场算法计算关键序列帧中每一个像素点的距离场信息。其中,距离场算法仅能计算黑色区域中每一个像素点的距离场信息。相应的,基于所述图像轮廓确定所述关键序列帧中各像素点的距离场信息,包括:对所述关键序列帧进行二值化处理,得到第一黑白图像和第二黑白图像,其中,所述第一黑白图像和所述第二黑白图像中各像素点的灰度值相反;分别确定所述第一黑白图像和所述第二黑白图像中黑色像素点到目标对象的图像轮廓之间的距离场信息,其中,所述第一黑白图像和所述第二黑白图像中黑色像素点组成所述关键序列帧中的像素点。

具体的,通过设置二值化阈值,将关键序列帧中像素值大于二值化阈值的像素点设置为255,将像素值小于或等于二值化阈值的像素点设置为0,得到第一黑白图像;同时,将关键序列帧中像素值大于二值化阈值的像素点设置为0,将像素值小于或等于二值化阈值的像素点设置为255,得到第二黑白图像。

还可以是基于对关键序列帧进行二值化处理得到第一黑白图像,对第一黑白图像进行取反操作,得到第二黑白图像,示例性的,对第一黑白图像进行取反操作为对任一像素点的像素值,进行255-i计算,得到第二黑白图像,其中,i为第一黑白图像中像素值。

示例性的,图2可以是第一黑白图像,第二黑白图像中椭圆区域内为黑色区域,椭圆区域外为白色区域,第一黑白图像和第二黑白图像中黑色像素点组成关键序列帧中的全部像素点。基于距离场算法分别计算第一黑白图像和第二黑白图像中黑色像素点中的距离场信息,即可得到关键序列帧全部像素点的距离场信息,包括目标对象的图像轮廓外各像素点A的距离场信息h1和目标对象的图像轮廓内各像素点B的距离场信息h2。

可选的,基于所述图像轮廓确定所述关键序列帧中各像素点的距离场信息,包括:对所述关键序列帧进行二值化处理,得到第一黑白图像;基于有向距离场算法,确定所述第一黑白图像中各像素点与到目标对象的图像轮廓之间的有向距离场信息。其中,通过有向距离场算法可同时对第一黑白图像中黑色区域和白色区域中的像素点进行距离场信息的计算,得到的有向距离场信息,有向距离场信息包括数据的正负,用于表征像素点的位置,例如,黑色区域中像素点的有向距离场信息为正值,白色区域中像素点的有向距离场信息为负值。可以是对有向距离场信息取绝对值,以得到关键序列帧各像素点的距离场信息。

本实施例中,相邻排序的序列标识对应的两个关键序列帧,由前一排序的关键序列帧动态变化为后一排序的关键序列帧,相应的,目标对象的图像轮廓由前一排序的关键序列帧中的图像轮廓变化为后一排序的关键序列帧的图像轮廓。其中,目标对象的动态变化为平滑过渡。绘制变化图像,基于变化图像中前一排序的关键序列帧中的图像轮廓与后一排序的关键序列帧的图像轮廓之间的像素变化表征目标对象的动态过程。

可选的,基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个关键序列帧中目标对象的变化图像,包括:将第一序列标识的关键序列帧中所述目标对象的图像轮廓包括的像素点设置为第一灰度值;将第二序列标识的关键序列帧中所述目标对象的图像轮廓包括的像素点设置为第二灰度值;根据各像素点在所述第一序列标识的关键序列帧中的距离场信息,和在所述第二序列标识的关键序列帧中的距离场信息,确定所述各像素点的灰度值,其中,所述各像素点的灰度值在所述第一灰度值和所述第二灰度值之间的范围内。其中,第一序列标识的关键序列帧为前一排序的关键序列帧,第二序列标识的关键序列帧为后一排序的关键序列帧。本实施例中,可以将第一序列标识的关键序列帧中目标对象的图像轮廓视为第一图像轮廓,将第二序列标识的关键序列帧中目标对象的图像轮廓视为第二图像轮廓。

变化图像、第一序列标识的关键序列帧、第二序列标识的关键序列帧的图像尺寸相同。在变化图像中,确定与第一图像轮廓对应的像素点,设置像素值为第一灰度值,其中,第一灰度值可以是0;确定与第二图像轮廓对应的像素点,设置像素值为第二灰度值,其中,第二灰度值可以是255。需要说明的是,第一灰度值和第二灰度值可以是根据用户需求设置,不限于0和255。

对于第一图像轮廓与第二图像轮廓之间区域中的像素点,所述根据各像素点在所述第一序列标识的关键序列帧中的距离场信息,和在所述第二序列标识的关键序列帧中的距离场信息,确定所述各像素点的灰度值,包括:根据当前像素点在所述第一序列标识的关键序列帧中的距离场信息,和在所述第二序列标识的关键序列帧中的距离场信息,确定所述当前像素点与所述目标对象的两个图像轮廓的位置比例关系;根据所述位置比例关系与所述第一灰度值和所述第二灰度值的差值,确定所述当前像素点的灰度值。

其中,对于第一序列标识的关键序列帧和第二序列标识的关键序列帧之间的动画序列帧,目标对象的图像轮廓由第一图像轮廓向第二图像轮廓平滑过渡,通过第一图像轮廓和第二图像轮廓之间的像素点的灰度值的平滑过渡,表征图像轮廓的动态过渡,相应的,第一图像轮廓和第二图像轮廓之间的像素点的灰度值位于第一灰度值和第二灰度值之间,且距离第一图像轮廓近的像素点的灰度值接近第一灰度值,距离第二图像轮廓近的像素点的灰度值接近第二灰度值,依次平滑变化。本实施例中,通过当前像素点与两个图像轮廓的位置比例关系,衡量与两个图像轮廓的相对距离。其中,位置比例关系可以是当前像素点与第一图像轮廓之间的距离和与两个图像轮廓的距离和的比例确定,即通过当前像素点在第一序列标识的关键序列帧中的距离场信息与当前像素点在两个关键序列帧中的距离场信息和的比例确定。

相应的,当前像素点的灰度值为m+(n-m)a/(a+b),其中,m为第一灰度值,n为第二灰度值,a为当前像素点在第一序列标识的关键序列帧中的距离场信息,b为当前像素点在第二序列标识的关键序列帧中的距离场信息。

示例性的,参见图3,图3是本发明实施例三提供的一种变化图像的示意图,例如,第一图像轮廓与第二图像轮廓之间的当前像素点A,在第一序列标识的关键序列帧中的距离场信息为a,即距离第一图像轮廓的距离场信息为a,在第二序列标识的关键序列帧中的距离场信息b,即距离第二图像轮廓的距离场信息为b,则当前像素点A与目标对象的两个图像轮廓的位置比例关系可以是a/(a+b),第一灰度值为0,第二灰度值为255,可知当前像素点A的灰度值为256a/(a+b)。

其中,可以将变化图像中除第一图像轮廓与第二图像轮廓之间区域以外的区域中的像素点设置为预设灰度值,例如可以是0或255。例如可以是将与第一图像轮廓的相邻区域中像素点的灰度值设置为0,将与第二图像轮廓的相邻区域中像素点的灰度值设置为255。示例性的,参见图3,可以是将图3中第一图像轮廓以内的像素点的灰度值设置为0,将第二图像轮廓以外的像素点的灰度值设置为255。

本实施例中,可以是基于上述方式确定动画中相邻序列标识的关键序列帧对应的变化图像,并将动画的关键序列帧和变化图像进行存储,替代现有技术中存储全部动画序列帧,通过一个变化图像替代相邻序列标识的关键序列帧之间的多个动画序列帧,关键序列帧和变化图像数量少,减少了动画的内存资源的占用。

本实施例的技术方案,通过分别确定相邻序列标识的关键序列帧中距离场信息,根据相同像素点在两个关键序列帧中距离场信息,绘制变化图像,通过变化图像中灰度值的变化表征关键帧图像中目标对象的图像轮廓的由前一序列标识的关键序列帧平滑过渡至后一序列标识的关键序列帧。本实施例中,通过关键序列帧和关键序列帧对应的变化图像替代全部动画序列帧,在保证了目标对象平滑过渡的基础上,关键序列帧和变化图像数量少,减少了动画的内存资源的占用。

实施例二

图4是本发明实施例二提供的一种动画处理方法的流程示意图,在上述实施例的基础上进行了优化,该方法包括:

S210、获取至少两个关键序列帧,其中,所述关键序列帧设置有序列标识。

S220、对于相邻排序的序列标识对应的两个关键序列帧,分别确定所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息。

S230、基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个关键序列帧中目标对象的变化图像,其中,所述变化图像用于记录所述目标对象在所述相邻排序的序列标识对应的两个关键序列帧之间的动态过程。

S240、根据所述两个关键序列帧的序列标识设置所述变化图像的序列标识,其中,所述变化图像的序列标识为范围标识。

S250、确定各所述变化图像中目标对象的变化趋势。

S260、当相邻排序的序列标识对应的变化图像中目标对象的变化趋势相同时,将所述相邻排序的序列标识对应的变化图像进行合并。

本实施例中,根据关键序列帧的序列标识设置变化图像的序列标识,可选的,变化图像的序列标识可以是由两个关键序列帧的序列标识形成的范围标识,具体的,可以将两个关键序列帧的序列标识通过预设符号连接得到,其中预设符号不做限定。示例性的,两个关键序列帧的序列标识分别为p和q,p小于q,则变化图像的序列标识可以是p-q。例如,人脸阴影关键帧的序列标识为0°、30°和45°,则形成的变化图像的序列标识分别为0°-30°和30°-45°,或者,还可以是(0°,30°)和(30°,45°)。

其中,目标对象的变化趋势包括递增和递减,目标对象在关键序列帧之间的变化为递增或递减。

具体的,当前一序列标识的关键图像帧中目标对象的图像轮廓小于后一序列标识的关键图像帧中目标对象的图像轮廓时,目标对象的变化趋势为递增,当前一序列标识的关键图像帧中目标对象的图像轮廓大于后一序列标识的关键图像帧中目标对象的图像轮廓时,目标对象的变化趋势为递减。

本实施例中,可以是基于二值化处理后的关键序列帧确定目标对象的变化趋势,以目标对象为白色区域为例,若前一序列标识的关键图像帧中的白色像素点,在后一序列标识的关键图像帧为黑色像素点,则目标对象的变化趋势为递减,若前一序列标识的关键图像帧中的黑色像素点,在后一序列标识的关键图像帧为白色像素点,则目标对象的变化趋势为递增。

本实施例中,具有重叠标识的变化图像为相邻序列标识的变化图像,示例性的,序列标识(0°,30°)和(30°,45°)中包括重叠标识30°,上述序列标识对应的变化图像为相邻序列标识的变化图像。

当连续序列标识的变化图像具有相同的变化趋势时,可以将具体相同变化趋势的变化图像进行合并,形成一个变化图像,进一步减少变化图像占用的内存资源。在一些实施例中,合并前每一个变化图像的灰度值范围以及合并后的变化图像的灰度值范围可以是相同,例如0-255。在变化图像的合并过程中,分别压缩每一个变化图像的灰度值范围,使得具有相邻序列标识的变化图像的灰度值范围相邻且不重叠,即目标对象的同一图像轮廓对应的灰度值相同。

可选的,所述将所述相邻排序的序列标识对应的变化图像进行合并,包括:将所述相邻排序的序列标识对应的变化图像中,一变化图像中目标对象的图像轮廓添加至另一变化图像中;分别压缩两个变化图像中像素点的灰度值范围,其中,所述一变化图像的灰度值范围在第三灰度值与第四灰度值之间,另一变化图像的灰度值范围在所述第四灰度值与第五灰度值之间,所述第四灰度值位于所述第三灰度值与所述第五灰度值之间;分别根据压缩后的灰度值范围等比例调节所述变化图像中像素点的灰度值。

可选的,第三灰度值、第四灰度值和第五灰度值依次增大。根据变化趋势,在一变化图像中,目标对象由第一图像轮廓变化至第二图像轮廓,在另一变化图像中,目标对象由第二图像轮廓变化至第三图像轮廓,根据变化趋势,依次设置各图像轮廓对应的灰度值,例如,根据变化趋势,图像轮廓的灰度值依次增大。

示例性的,当压缩前的灰度值范围为0-255,可以是设置两个变化图像的压缩后的灰度值范围为0-127和127-255,相应的,合并后变化图像中,第一轮廓图像中像素点的灰度值为0,第二轮廓图像中像素点的灰度值为127,第三轮廓图像中像素点的灰度值为255。并相应调节图像轮廓之间像素点的灰度值,其中,任一像素点的灰度值在对应的两个图像轮廓的灰度值之间。示例性的,位于第一图像轮廓与第二图像轮廓之间的像素点的灰度值,大于第一图像轮廓的灰度值,小于第二图像轮廓的灰度值。

其中,压缩后的像素点的灰度值为d+c×s/S,其中,s为压缩后灰度值范围,即最大灰度值与最小灰度值的差值,S为压缩前灰度值范围,c为压缩前的灰度值,d为压缩后灰度值范围的最小灰度值。

示例性的,参见图5和图6,图5是本发明实施例二提供的多个关键序列帧的示例图,图6是本发明实施例二提供的合并后的变化图像的示例图。其中,图5中的多个关键序列帧的变化趋势相同,均为递减。

可选的,在确定合并后的变化图像后,根据进行合并的两个变化图像的序列标识更新合并后变化图像的序列标识。其中,可以是基于合并前变化图像的序列标识中,最小标识和最大标识,形成合并后变化图像的序列标识。示例性的,进行合并的变化图像的序列标识分别为(0°,30°)和(30°,45°),则合并后变化图像的序列标识为(0°,45°)。

需要说明的是,可进行合并的变化图像的数量不局限于两个,可同时对多个变化图像进行合并,相应的,根据进行合并的变化图像的数量和合并后灰度值范围,确定每一个进行合并的变化图像压缩后的灰度值范围,相应的,对各变化图像中像素点进行灰度值调节,以形成合并后的变化图像。可选的,变化图像压缩后的灰度值范围可以是与变化图像的标识范围成正比。

本实施例的技术方案,通过将具有相同变化趋势的相邻变化图像进行合并,以减少进程存储的关键序列帧和变化图像的数量,在保证动画平滑过渡的基础上,减少了动画存储占用的内存资源。

在一些实施例中,在根据距离场信息形成变化图像之间,还包括,确定连续序列标识的关键序列帧中目标对象的变化趋势,确定可合并的变化图像数量,示例性的,具有相同变化趋势的连续序列标识的关键序列帧的数量为n,则可合并的变化图像数量为n-1。根据可合并的变化图像数量确定每一个变化图像的灰度值范围。根据相邻序列标识的关键序列帧中的距离场信息,形成对应的灰度值范围的变化图像,对可合并的变化图像进行合并。通过在生成变化图像之前根据可合并变化图像数量,确定待生成的变化图像的灰度值范围,便于对变化图像进行快速合并,无需对各变化图像的灰度值范围进行压缩,提高了变化图像的处理效率。

实施例三

图7是本发明实施例三提供的一种动画处理方法的流程示意图,在上述实施例的基础上进行了优化,该方法包括:

S310、获取至少两个关键序列帧,其中,所述关键序列帧设置有序列标识。

S320、对于相邻排序的序列标识对应的两个关键序列帧,分别确定所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息。

S330、基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个关键序列帧中目标对象的变化图像,其中,所述变化图像用于记录所述目标对象在所述相邻排序的序列标识对应的两个关键序列帧之间的动态过程。

S340、根据所述两个关键序列帧的序列标识设置所述变化图像的序列标识,其中,所述变化图像的序列标识为范围标识。

S350、获取目标对象的当前标识,确定所述当前标识对应的目标变化图像。

S360、根据当前标识和所述目标变化图像的序列标识,确定轮廓变化比例。

S370、根据所述轮廓变化比例和所述目标变化图像的灰度值范围,在所述目标变化图像中确定目标对象的当前图像轮廓。

在动画渲染过程中,基于变化图像依次确定每一动画序列帧,进行渲染,实现动画播放。

通过在变化图像中确定与当前标识相对应的目标对象的图像轮廓,确定当前标识的动画序列帧中目标对象。由于变化图像通过像素点的灰度值变化表征目标对象的图像轮廓的动态变化,且目标对象的图像轮廓在灰度值范围内平滑过渡,图像轮廓的平滑过程与动画序列帧的序列标识的变化过程相对应。

本实施例中,通过在变化图像中确定当前标识对应的灰度值,该灰度值对应的像素点即可形成当前标识对应的图像轮廓。具体的,当前标识在变化图像的标识范围中的数值比例决定了当前标识对应的灰度值。

可选的,根据所述轮廓变化比例和所述目标变化图像的灰度值范围,在所述目标变化图像中确定目标对象的当前图像轮廓,包括:根据所述轮廓变化比例和所述目标变化图像的灰度值范围,确定当前图像轮廓对应的灰度值;将所述目标变化图像中,所述灰度值对应的像素点形成所述当前图像轮廓。

其中,轮廓变化比例表征目标对象有前一关键序列帧向后一关键序列帧的过渡情况,轮廓变化比例越大,目标对象的图像轮廓越接近后一关键序列帧中目标对象的图像轮廓,轮廓变化比例越小,目标对象的图像轮廓越接近前一关键序列帧中目标对象的图像轮廓。

可选的,轮廓变化比例为当前标识在目标变化图像的序列标识对应的标识范围内的数值比例。其中,先根据当前标识确定目标变化图像,将当前标识分别与各变化图像的序列标识进行匹配,目标变化图像的标识范围包括当前标识。示例性的,电子设备中包括序列标识为(0°,30°)和(30°,45°)的两个变化图像,当前标识为15°,通过匹配确定序列标识(0°,30°)的标识范围包括当前标识,将序列标识为(0°,30°)的变化图像确定为目标变化图像。基于当前标识在目标变化图像的标识范围中的数值比例,确定轮廓变化比例,即轮廓变化比例15°÷(30°-0°)=0.5。

本实施例中,根据轮廓变化比例和变化图像的灰度值范围确定当前标识对应的图像轮廓。具体的,可以是基于d+k×s,其中,d为变化图像中灰度值范围的最小灰度值,k为轮廓变化比例,s为变化图像的灰度值范围。基于变化图像中具有上述灰度值的像素点形成当前标识对应的图像轮廓。需要说明的是,变化图像的灰度值范围可以是变化图像中携带的,也可以是通过识别变化图像中各像素点的灰度值,统计得到。

示例性的,参见图8,图8为本发明实施例三提供的一种当前标识对应图像轮廓的示例图。

基于上述方式,可确定变化图像对应的任意动画序列帧中目标对象的图像轮廓。进一步的,确定动画序列帧中目标对象的图像轮廓的渲染色彩,并对动画序列帧进行渲染,可实现动画序列帧的连续平滑的渲染。其中,不同的目标对象可对应不同的色彩计算算法,调用对应的色彩计算算法,以确定动画序列帧中各目标对象的渲染色彩。

本实施例中提供的技术方案,基于电子设备中存储的变化图像,确定任一标识对应的在关键序列帧之间过渡的动画序列帧中目标对象的图像轮廓,完成了对动画中每一序列帧的平滑渲染,实现了无需存储动画中每一动画序列帧的情况下,对动画进行平滑渲染,解决了动画中序列帧数量大,占用大量内存资源的情况。

实施例四

图9是本发明实施例提供的一种动画处理方法的流程示意图,在上述实施例的基础上进行了优化,该方法包括:

S410、获取至少两个人脸阴影关键帧,其中,所述人脸阴影关键帧设置有序列标识;

S420、对于相邻排序的序列标识对应的两个人脸阴影关键帧,分别确定所述相邻排序的序列标识对应的两个人脸阴影关键帧中的距离场信息;

S430、基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个人脸阴影关键帧中目标对象的人脸阴影变化图像。

本实施例中,电子设备中存储有至少两个人脸阴影关键帧,示例性的,可以是人脸光照角度对应的人脸阴影关键帧。其中,人脸阴影关键帧的序列标识为人脸光照角度,例如人脸光照角度可以是但不限于0°、30°、45°、60°、90°等。

对相邻排序的序列标识对应的两个人脸阴影关键帧,进行二值化处理,得到人脸阴影关键帧中的人脸阴影和各像素点的距离场信息。基于相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个人脸阴影关键帧中人脸阴影变化图像,其中,人脸阴影变化图像用于记录人脸阴影在相邻排序的序列标识对应的两个关键序列帧之间的动态过程。

对人脸阴影变化图像和人脸阴影关键帧进行存储,相对于存储动画的全部序列帧,减少了对内存资源的占用。

进一步的,当相邻序列标识的人脸阴影变化图像具有相同的变化趋势时,可进行合并,得到合并后的人脸阴影变化图像,进一步减少对内存资源的占用。

当对动画进行渲染时,确定当前序列帧中人脸光照角度,即当前标识,基于人脸阴影变化图像确定人脸光照角度对应的人脸阴影,实现对目标对象进行人脸阴影的渲染。具体的,确定包括人脸光照角度的人脸阴影变化图像,即目标变化图像,根据当前标识和目标变化图像的序列标识,确定轮廓变化比例;根据所述轮廓变化比例和所述目标变化图像的灰度值范围,在所述目标变化图像中确定目标对象的当前图像轮廓,其中,当前标识对应的当前图像轮廓为当前人脸光照角度对应的当前人脸阴影轮廓。

根据所述当前人脸阴影轮廓生成阴影贴图,并设置所述阴影贴图的渲染颜色;将所述阴影贴图在目标人脸上进行渲染,形成当前光照角度的人脸图像。其中,阴影贴图的渲染颜色可以是固定设置,还可以是根据人脸光照角度确定。

本实施例的技术方案,通过根据预先存储的至少两个人脸阴影关键帧,绘制表征人脸阴影动态过渡的人脸阴影变化图像,减少了动画序列帧存储时占用的内存资源。同时可根据人脸阴影变化图像可识别到任意光照角度对应的人脸阴影轮廓,实现对动画中人物进行人脸阴影的渲染。

实施例五

图10是本发明实施例五提供的一种动画处理装置的结构示意图,该装置包括:

关键序列帧获取模块510,用于获取至少两个关键序列帧,其中,所述关键序列帧设置有序列标识;

距离场信息确定模块520,用于对于相邻排序的序列标识对应的两个关键序列帧,分别确定所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息;

变化图像生成模块530,用于基于所述相邻排序的序列标识对应的两个关键序列帧中的距离场信息,绘制所述相邻排序的序列标识对应的两个关键序列帧中目标对象的变化图像,其中,所述变化图像用于记录所述目标对象在所述相邻排序的序列标识对应的两个关键序列帧之间的动态过程。

可选的,距离场信息确定模块520包括:

图像轮廓识别单元,用于对于任一关键序列帧,识别所述关键序列帧中的目标对象的图像轮廓;

距离场信息确定单元,用于基于所述图像轮廓确定所述关键序列帧中各像素点的距离场信息,其中,所述距离场信息为所述像素点到所述图像轮廓的最短距离信息。

可选的,距离场信息确定单元用于:

对所述关键序列帧进行二值化处理,得到第一黑白图像和第二黑白图像,其中,所述第一黑白图像和所述第二黑白图像中各像素点的灰度值相反;

分别确定所述第一黑白图像和所述第二黑白图像中黑色像素点到目标对象的图像轮廓之间的距离场信息,其中,所述第一黑白图像和所述第二黑白图像中黑色像素点组成所述关键序列帧中的像素点。

可选的,距离场信息确定单元用于:

对所述关键序列帧进行二值化处理,得到第一黑白图像;

基于有向距离场算法,确定所述第一黑白图像中各像素点与到目标对象的图像轮廓之间的有向距离场信息。

可选的,变化图像生成模块530包括:

第一灰度值设置单元,用于将第一序列标识的关键序列帧中所述目标对象的图像轮廓包括的像素点设置为第一灰度值;

第二灰度值设置单元,用于将所述第二序列标识的关键序列帧中所述目标对象的图像轮廓包括的像素点设置为第二灰度值;

第三灰度值设置单元,用于根据各像素点在所述第一序列标识的关键序列帧中的距离场信息,和在所述第二序列标识的关键序列帧中的距离场信息,确定所述各像素点的灰度值,其中,所述各像素点的灰度值在所述第一灰度值和所述第二灰度值之间的范围内。

可选的,第三灰度值设置单元用于:

根据当前像素点在所述第一序列标识的关键序列帧中的距离场信息,和在所述第二序列标识的关键序列帧中的距离场信息,确定所述当前像素点与所述目标对象的两个图像轮廓的位置比例关系;

根据所述位置比例关系与所述第一灰度值和所述第二灰度值的差值,确定所述当前像素点的灰度值。

可选的,该装置还包括:标识设置模块,用于根据所述两个关键序列帧的序列标识设置所述变化图像的序列标识,其中,所述变化图像的序列标识为范围标识。

可选的,该装置还包括:

变化趋势确定模块,用于确定各所述变化图像中目标对象的变化趋势;

变化图像合并模块,用于当相邻排序的序列标识对应的变化图像中目标对象的变化趋势相同时,将所述相邻排序的序列标识对应的变化图像进行合并。

可选的,所述目标对象的变化趋势包括递增和递减。

可选的,变化图像合并模块用于:

将所述相邻排序的序列标识对应的变化图像中,一变化图像中目标对象的图像轮廓添加至另一变化图像中;

分别压缩两个变化图像中像素点的灰度值范围,其中,所述一变化图像的灰度值范围在第三灰度值与第四灰度值之间,另一变化图像的灰度值范围在所述第四灰度值与第五灰度值之间,所述第四灰度值位于所述第三灰度值与所述第五灰度值之间;

分别根据压缩后的灰度值范围等比例调节所述变化图像中像素点的灰度值。

可选的,该装置还包括:

标识更新模块,用于根据进行合并的两个变化图像的序列标识更新合并后变化图像的序列标识。

可选的,该装置还包括:

目标变化图像确定模块,用于获取目标对象的当前标识,确定所述当前标识对应的目标变化图像;

轮廓变化比例确定模块,用于根据当前标识和所述目标变化图像的序列标识,确定轮廓变化比例;

当前图像轮廓确定模块,用于根据所述轮廓变化比例和所述目标变化图像的灰度值范围,在所述目标变化图像中确定目标对象的当前图像轮廓。

可选的,所述轮廓变化比例为所述当前标识在目标变化图像的序列标识对应的标识范围内的数值比例。

可选的,当前图像轮廓确定模块用于:

根据所述轮廓变化比例和所述目标变化图像的灰度值范围,确定当前图像轮廓对应的灰度值;

将所述目标变化图像中,所述灰度值对应的像素点形成所述当前图像轮廓。

可选的,所述关键序列帧为人脸阴影关键帧,所述变化图像为人脸阴影变化图像。

可选的,所述人脸阴影关键帧的序列标识为人脸光照角度,所述当前标识对应的当前图像轮廓为当前光照角度对应的当前人脸阴影轮廓。

可选的,该装置还包括:

阴影贴图生成模块,用于根据所述当前人脸阴影轮廓生成阴影贴图,并设置所述阴影贴图的渲染颜色;

阴影渲染模块,用于将所述阴影贴图在目标人脸上进行渲染,形成当前光照角度的人脸图像。

本发明实施例提供的动画处理装置可执行本发明任意实施例所提供的动画处理方法,具备执行动画处理方法相应的功能模块和有益效果。

实施例六

图11为本发明实施例六提供的一种电子设备的结构示意图。图11示出了适于用来实现本发明实施方式的电子设备412的框图。图11显示的电子设备412仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。设备412典型的是承担图像分类功能的电子设备。

如图11所示,电子设备412以通用计算设备的形式表现。电子设备412的组件可以包括但不限于:一个或者多个处理器416,存储装置428,连接不同系统组件(包括存储装置428和处理器416)的总线418。

总线418表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture,ISA)总线,微通道体系结构(Micro Channel Architecture,MCA)总线,增强型ISA总线、视频电子标准协会(Video Electronics Standards Association,VESA)局域总线以及外围组件互连(Peripheral Component Interconnect,PCI)总线。

电子设备412典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备412访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

存储装置428可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory,RAM)430和/或高速缓存存储器432。电子设备412可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统434可以用于读写不可移动的、非易失性磁介质(图11未显示,通常称为“硬盘驱动器”)。尽管图11中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如只读光盘(Compact Disc-Read Only Memory,CD-ROM)、数字视盘(Digital Video Disc-Read Only Memory,DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线418相连。存储装置428可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块426的程序436,可以存储在例如存储装置428中,这样的程序模块426包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块426通常执行本发明所描述的实施例中的功能和/或方法。

电子设备412也可以与一个或多个外部设备414(例如键盘、指向设备、摄像头、显示器424等)通信,还可与一个或者多个使得用户能与该电子设备412交互的设备通信,和/或与使得该电子设备412能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口422进行。并且,电子设备412还可以通过网络适配器420与一个或者多个网络(例如局域网(Local Area Network,LAN),广域网Wide Area Network,WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器420通过总线418与电子设备412的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备412使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of Independent Disks,RAID)系统、磁带驱动器以及数据备份存储系统等。

处理器416通过运行存储在存储装置428中的程序,从而执行各种功能应用以及数据处理,例如实现本发明上述实施例所提供的动画处理方法。

实施例七

本发明实施例七提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所提供的动画处理方法。

当然,本发明实施例所提供的一种计算机可读存储介质,其上存储的计算机程序不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的动画处理方法。

本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的源代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的源代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机源代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。源代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

25页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:添加静态元素的方法、装置及电子设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!