考虑局部拓扑结构的线条形状对应方法与流程

文档序号:13558074阅读:407来源:国知局
考虑局部拓扑结构的线条形状对应方法与流程

本发明涉及二维角色动画技术以及二维线条形状内插技术领域,尤其是涉及一种实用性好的考虑局部拓扑结构的线条形状对应方法。



背景技术:

在政府的大力支持下,国内动漫产业近年来发展迅速,动漫产量亦大幅提升。然而,传统的手绘二维动画需要大量制作时间和高额制作成本。为了辅助二维动画制作,国内外研发了许多二维动画制作商业软件,例如adobeflash、toonboomstudio等。这些商业软件主要实现了所谓的“无纸卡通”功能,即把传统的动画师纸上绘画转为让动画师通过数位板在计算机上绘画,以方便动画素材的编辑和管理。但是,动画师仍需要一帧一帧地绘制二维动画序列,工作量仍然非常巨大。因此,研发智能化的二维动画技术,以自动生成二维动画序列,从而有效提高二维动画的制作效率并降低其制作成本,具有现实的社会和经济意义。

二维形状内插是计算机动画领域中的一项重要技术,被广泛应用于二维关键帧矢量动画系统中。该技术可以实现相邻关键帧中所包含角色姿态的光滑过渡,从而自动生成关键帧之间的角色动画序列。在实际二维矢量动画中,一个角色姿态对应着一个二维形状,通常由一组线条表示而成,其中的若干条线条对应着角色的一个特征(如图1)。为了实现表示相邻两个角色姿态的两个形状之间的光滑过渡(如图3)。,二维形状内插技术需要解决一个基本问题:如何关联两个角色姿态上的特征,即如何建立两组线条之间的一一对应关系(如图2)。在绘制角色姿态时,动画师可以通过按照一定顺序来绘制角色上每一特征所对应的线条,以自动实现相邻角色姿态之间的线条对应。但是,这将极大地限制动画师的创作自由,最终影响创作效率和质量。一种简单有效的方法是让用户通过手工指定来建立两组线条之间的对应,但是这需要较多的人工交互,从而降低了制作效率。虽然人们提出了一些自动的线条对应方法,但是这些方法常常产生不正确的对应结果,仍需要较多的手工交互来纠正结果。因此,如何降低人工交互量并保证产生正确的线条对应结果是二维形状对应方法亟需解决的问题。



技术实现要素:

本发明的发明目的是为了克服现有技术中的二维形状内插方法人工交互量大的不足,提供了一种实用性好的考虑局部拓扑结构的线条形状对应方法。

为了实现上述目的,本发明采用以下技术方案:

一种考虑局部拓扑结构的线条形状对应方法,包括如下步骤:

(1-1)基于线条相对位置关系的局部拓扑结构

给定两个线条形状,分别称为源形状和目标形状;其中,源形状由一组线条组成,令为目标形状由一组线条组成,令为

(1-1-1)对于源形状中的每一根线条如果源形状中的另一根线条与其距离小于给定阈值,则称线条为线条的邻域线条,称线条的所有邻域线条的集合为线条的局部邻域;根据源形状中的每一根线条及其局部邻域,建立源形状在线条处的局部拓扑结构;

(1-1-2)对于目标形状中的每一根线条如果目标形状中的另一根线条与其距离小于给定阈值,则称线条为线条的邻域线条,称线条的所有邻域线条的集合为线条的局部邻域;根据目标形状中的每一根线条及其局部邻域,建立目标形状在线条处的局部拓扑结构;

(1-2)确定线条之间的相似性度量尺度

上均匀采样m个点,令为再在上均匀采样m个点,令为

利用最小化目标函数计算得到线条到线条的最优旋转矩阵ro;

其中,

之间的相似性度量尺度为

(1-3)考虑局部拓扑结构的线条对应

针对源形状上的线条集合和目标形状上的线条集合建立中线条之间的一一对应关系。

本发明给定两个由线条组成的平面形状,自动建立两个形状之间的线条一一对应关系,在对应过程中考虑形状的局部拓扑结构,本发明显著提升了形状之间线条对应的准确性,最终有效解决了线条形状的对应问题,增强了二维形状内插技术的实用性,降低人工交互量,提高工作效率,进而推动智能化二维动画技术的发展。

作为优选,采用如下步骤建立源形状在线条处的局部拓扑结构:

(2-1)使用线条上的顶点,进行pca主元分析,求出线条的主方向,以主方向为x轴,以主方向的垂直方向为y轴,并以线条的重心为原点,建立一个局部坐标系

(2-2)对局部邻域中的每根线条计算线条的重心在局部坐标系中的局部坐标,称局部坐标为线条相对线条的局部位置;

(2-3)将局部邻域中所有线条的局部位置的集合构成源形状在线条处的局部拓扑结构。

作为优选,采用如下步骤建立目标形状在线条处的局部拓扑结构:

(3-1)使用线条上的顶点,进行pca主元分析,求出线条的主方向,以主方向为x轴,以主方向的垂直方向为y轴,并以线条的重心为原点,建立一个局部坐标系

(3-2)对局部邻域中的每根线条计算线条的重心在局部坐标系中的局部坐标,称局部坐标为线条相对线条的局部位置;

(3-3)局部邻域中所有线条的局部位置的集合构成目标形状在线条处的局部拓扑结构。

作为优选,步骤(1-3)包括如下步骤:

(4-1)根据一对线条之间的相似性度量尺度一一计算中每根线条与中每根线条之间的相似性度量,找到相似性度量值最小的那对线条,把它们作为一对候选匹配线条,并放入到一个初始为空的表h中;

(4-2)依次从表h中取出相似性度量值最小的那对候选匹配线条,直到表h为空;

(4-2-1)令从表h取出的线条对中的源线条为目标线条为建立之间的对应关系;

(4-2-2)对于局部邻域中的每条线条相对的局部位置为(x1,y1);对于局部邻域中的每条线条相对的局部位置为(x2,y2);计算向量(x1,y1)与向量(x2,y2)之间的角度θ,如果θ小于一个给定的阈值,则计算之间的相似性度量尺度并把线条对作为一对候选匹配线条,同时放到表h中。

因此,本发明具有如下有益效果:显著提升了形状之间线条对应的准确性,最终有效解决了线条形状的对应问题;增强了二维形状内插技术的实用性,降低人工交互量,提高工作效率。

附图说明

图1是一个二维角色的两个姿态图;

图2是本发明自动建立的两组线条之间的一种对应示例图;

图3是本发明建立的对应源和目标形状之间的一种过渡序列图;

图4是本发明的一种流程图。

具体实施方式

下面结合附图和具体实施方式对本发明做进一步的描述。

如图4所示的实施例是一种考虑局部拓扑结构的线条形状对应方法,包括如下步骤:

步骤100,基于线条相对位置关系的局部拓扑结构

如图1所示,给定两个线条形状,分别称为源形状和目标形状。其中,源形状由一组线条组成,令为目标形状由一组线条组成,令为

步骤110,对于源形状中的每一根线条如果源形状中的另一根线条与其距离小于给定阈值,阈值默认值为18,则称线条为线条的邻域线条,另外称线条的所有邻域线条的集合为线条的局部邻域;根据源形状中的每一根线条及其局部邻域,算法通过如下方法来表示源形状在线条处的局部拓扑结构:

a)使用线条上的顶点,进行pca主元分析,求出线条的主方向,以主方向为x轴,主方向的垂直方向为y轴,并以线条的重心为原点,建立一个局部坐标系

b)对局部邻域中的每根线条计算线条的重心在局部坐标系中的局部坐标,称局部坐标即为线条相对线条的局部位置;

c)局部邻域中所有线条的局部位置的集合即构成了源形状在线条处的局部拓扑结构。

步骤120,对于目标形状中的每一根线条如果目标形状中的另一根线条与其距离小于给定阈值,则称线条为线条的邻域线条,另外称线条的所有邻域线条的集合为线条的局部邻域;根据目标形状中的每一根线条及其局部邻域,算法通过如下方法来表示目标形状在线条处的局部拓扑结构:

a)使用线条上的顶点,进行pca主元分析,求出线条的主方向,以主方向为x轴,主方向的垂直方向为y轴,并以线条的重心为原点,建立一个局部坐标系

b)对局部邻域中的每根线条计算线条的重心在局部坐标系中的局部坐标,称局部坐标即为线条相对线条的局部位置;

c)局部邻域中所有线条的局部位置的集合即构成了目标形状在线条处的局部拓扑结构。

步骤200,线条之间的相似性度量尺度

给定一根源形状上的线条和一根目标形状上的线条算法首先在上均匀采样m个点,令为再在上均匀采样m个点,令为

然后,通过最小化如下的目标函数,计算得到线条到线条的最优旋转矩阵ro:

其中,

最后,令之间的相似性度量尺度为其值为:

最小化方程中的目标函数为一个二次方程,因此最小化目标函数对应着一个最小二乘问题

步骤300,考虑局部拓扑结构的线条对应

针对源形状上的线条集合和目标形状上的线条集合算法通过如下步骤建立中线条之间的一一对应关系(结果如图2所示)。

步骤1:根据一对线条之间的相似性度量尺度一一计算中每根线条与中每根线条之间的相似性度量,找到相似性度量值最小的那对线条,把它们作为一对候选匹配线条,并放入到一个初始为空的表h中;

步骤2:依次从表h中取出相似性度量值最小的那对候选匹配线条,直到表h为空;

步骤2.1:令从表h取出的线条对中的源线条为目标线条为建立之间的对应关系(注:中的下标i值不一定相等);

步骤2.2:对于局部邻域中的每条线条令其相对的局部位置为(x1,y1);对于局部邻域中的每条线条令其相对的局部位置为(x2,y2);计算向量(x1,y1)与向量(x2,y2)之间的角度θ,如果θ小于一个给定的阈值,则计算之间的相似性度量尺度并把线条对作为一对候选匹配线条,同时放到表h中。

应理解,本实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

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