分阶段的精确形状匹配方法与流程

文档序号:14303891阅读:258来源:国知局

本发明涉及二维线条形状内插技术领域,尤其是涉及一种可有效降低人工交互量的分阶段的精确形状匹配方法。



背景技术:

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

二维形状内插是计算机动画领域中的一项重要技术,被广泛应用于二维关键帧矢量动画系统中。该技术可以实现相邻关键帧中所包含角色姿态的光滑过渡,从而自动生成关键帧之间的角色动画序列。在实际二维矢量动画中,一个角色姿态对应着一个二维形状,通常由一组线条表示而成,其中的若干条线条对应着角色的一个特征。

为了实现表示相邻两个角色姿态的两个形状之间的光滑过渡,二维形状内插技术需要解决一个基本问题:如何关联两个角色姿态上的特征,即如何建立两组线条之间的一一对应关系。在绘制角色姿态时,动画师可以通过按照一定顺序来绘制角色上每一特征所对应的线条,以自动实现相邻角色姿态之间的线条对应。

但是,上述解决问题会极大地限制动画师的创作自由,最终影响创作效率和质量。一种简单有效的方法是让用户通过手工指定来建立两组线条之间的对应,但是需要较多的人工交互,降低了制作效率。虽然人们提出了一些自动的线条对应方法,但是这些方法常常产生不正确的对应结果,仍需要较多的手工交互来纠正结果。

因此,如何降低人工交互量并保证产生正确的线条对应结果是二维形状对应方法亟需解决的问题。



技术实现要素:

本发明的发明目的是为了克服现有技术中的形状匹配方法需要较多的手工交互的不足,提供了一种可有效降低人工交互量的分阶段的精确形状匹配方法。

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

一种分阶段的精确形状匹配方法,包括如下步骤:

(1-1)设定源形状中线条的“模糊拓扑”;

(1-1-1)给定一个由一组线条组成的源形状{si},设s为源形状中的任一根线条;其中,μs(si)为线条si的各个端点到线条s的最小距离;

(1-1-2)给定一个阈值α,对于形状中的任意一对线条si和sj,如果或者则称线条si和sj之间存在内在连接关系,也称为α-连接;

(1-1-3)设s在源形状中的“模糊拓扑”为一个有序点集,记为fs={p1,p2,...,pk,...};

(1-2)设定目标形状中线条的“模糊拓扑”;

(1-2-1)给定一个由一组线条组成的目标形状{tj},设t为目标形状中的任一根线条,其中,μt(tj)为线条tj的各个端点到线条t的最小距离;

(1-2-2)对于形状中的任意一对线条ti和tj,如果或者则称线条ti和tj之间存在内在连接关系,也称为α-连接;

(1-2-3)设t在目标形状中的“模糊拓扑”为一个有序点集,记为ft={q1,q2,...,qk,...;

(1-3)分阶段进行形状匹配

分两个阶段建立源形状{si}和目标形状{tj}之间线条的一一对应关系。

本发明给定两个形状,每个形状分别由一组线条组成,算法分两阶段自动完成两组线条之间的一一对应关系。在第一阶段,算法通过严格保持所谓的线条“模糊拓扑”来得到具有高可信度的线条对应;在第二阶段,根据第一阶段获得的高可信度对应,算法利用线条之间的相邻信息,进一步为其余线条建立对应关系,最终完成所有线条之间的一一对应。通过分阶段的建立线条对应关系,本发明能够有效控制对应的精确性和鲁棒性,最终产生高质量的形状匹配结果;并且本发明可以增强二维形状内插技术的实用性,进而推动智能化二维动画技术的发展。

作为优选,有序点集fs={p1,p2,...,pk,...}具有如下属性:

每个点pk均与{si}中的一条线条相关联,所述线条与线条s之间存在α-连接关系,并且fs中不存在两个点关联到{si}中的同一根线条;

令sk为与pk相关联的线条,如果则pk对应着s的一个端点;否则,若μs(sk)≤α,则pk为sk的某个端点在s上的投影点;pk在fs中的次序由其在线条s上从初始顶点到末尾顶点的先后位置决定。

作为优选,有序点集ft={q1,q2,...,qk,...}具有如下属性:

每个点qk与{tj}中的一条线条相关联,所述线条与线条t之间存在α-连接关系,并且ft中不存在的两个点关联到{tj}中的同一根线条;

令tk为与qk相关联的线条,如果则qk对应着t的一个端点;否则,若μt(tk)≤α,则qk为tk的某个端点在t上的投影点;qk在ft中的次序由其在线条t上从初始顶点到末尾顶点的先后位置决定。

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

(4-1)第一阶段

(4-1-1)分别把源形状中的每一根线条匹配到目标形状中的每一根线条,然后选取拥有最大匹配度的一对线条,作为一对对应线条,并作为初始种子;

(4-1-2)给定一对对应线条(si,tj),以(si,tj)为依据从源形状和目标形状的尚未建立对应关系的线条中,生成一组可能的对应线条对,并放入到一个候选对应线条列表中;

(4-1-3)从候选对应线条列表中,提取出具有最大匹配度的线条对,并在该对线条之间建立对应关系,同时把该对线条作为一个新的种子;

(4-1-4)重复步骤(4-1-2)和(4-1-3),直到候选对应线条列表为空;

(4-2)第二阶段

(4-2-1)把第一阶段生成的对应线条对作为初始种子;

(4-2-2)给定一对对应线条(si,tj),令n(si)为与线条si相邻的线条的集合、n(tj)为与线条tj相邻的线条的集合,通过匹配n(si)中的每一根线条到n(tj)中的每一根线条,依次生成一组可能的对应线条;

(4-2-3)从候选对应线条列表中,提取出具有最大匹配度的线条对,并在该对线条之间建立对应关系,同时把该对线条作为一个新的种子;

(4-2-4)重复运行(4-2-2)和(4-2-3),直到候选对应线条列表为空。

最为优选,步骤(4-1-2)包括如下步骤:

(5-1)当且仅当集合fs和ft具有相同个数元素时,线条si的模糊拓扑fs与线条tj的模糊拓扑ft同构;

(5-2)对fs中的每个元素pk及其在ft中的对应元素qk,令sk为pk的关联线条、tk为qk的关联线条,通过匹配sk与tk生成一对可能的对应线条对(sk,tk)。

因此,本发明具有如下有益效果:能够有效控制对应的精确性和鲁棒性,可产生高质量的形状匹配结果,可有效降低人工交互量。

附图说明

图1:本发明的一种流程图。

具体实施方式

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

如图1所示的实施例是一种分阶段的精确形状匹配方法,包括如下步骤:

步骤100,设定源形状中线条的“模糊拓扑”;

步骤110,给定一个由一组线条组成的源形状{si},设s为源形状中的任一根线条;其中,μs(si)为线条si的各个端点到线条s的最小距离;

步骤120,给定一个阈值α,对于形状中的任意一对线条si和sj,如果或者则称线条si和sj之间存在内在连接关系,也称为α-连接;

步骤130,设s在源形状中的“模糊拓扑”为一个有序点集,记为fs={p1,p2,...,pk,...};

有序点集fs={p1,p2,...,pk,...}具有如下属性:

每个点pk均与{si}中的一条线条相关联,所述线条与线条s之间存在α-连接关系,并且fs中不存在两个点关联到{si}中的同一根线条;

令sk为与pk相关联的线条,如果则pk对应着s的一个端点;否则,若μs(sk)≤α,则pk为sk的某个端点在s上的投影点;pk在fs中的次序由其在线条s上从初始顶点到末尾顶点的先后位置决定。

步骤200,设定目标形状中线条的“模糊拓扑”;

步骤210,给定一个由一组线条组成的目标形状{tj},设t为目标形状中的任一根线条,其中,μt(tj)为线条tj的各个端点到线条t的最小距离;

步骤220,对于形状中的任意一对线条ti和tj,如果或者则称线条ti和tj之间存在内在连接关系,也称为α-连接;

步骤230,设t在目标形状中的“模糊拓扑”为一个有序点集,记为ft={q1,q2,...,qk,...};

有序点集ft={q1,q2,...,qk,...}具有如下属性:

每个点qk与{tj}中的一条线条相关联,所述线条与线条t之间存在α-连接关系,并且ft中不存在的两个点关联到{tj}中的同一根线条;

令tk为与qk相关联的线条,如果则qk对应着t的一个端点;否则,若μt(tk)≤α,则qk为tk的某个端点在t上的投影点;qk在ft中的次序由其在线条t上从初始顶点到末尾顶点的先后位置决定。

步骤300,分阶段进行形状匹配

分两个阶段建立源形状{si}和目标形状{tj}之间线条的一一对应关系。

步骤310,第一阶段

步骤311,分别把源形状中的每一根线条匹配到目标形状中的每一根线条,然后选取拥有最大匹配度的一对线条,作为一对对应线条,并作为初始种子;

步骤312,给定一对对应线条(si,tj),以(si,tj)为依据从源形状和目标形状的尚未建立对应关系的线条中,生成一组可能的对应线条对,并放入到一个候选对应线条列表中;

步骤3121,当且仅当集合fs和ft具有相同个数元素时,线条si的模糊拓扑fs与线条tj的模糊拓扑ft同构;

步骤3122,对fs中的每个元素pk及其在ft中的对应元素qk,令sk为pk的关联线条、tk为qk的关联线条,通过匹配sk与tk生成一对可能的对应线条对(sk,tk)。

步骤313,从候选对应线条列表中,提取出具有最大匹配度的线条对,并在该对线条之间建立对应关系,同时把该对线条作为一个新的种子;

步骤314,重复步骤312和313,直到候选对应线条列表为空;

步骤320,第二阶段

步骤321,把第一阶段生成的对应线条对作为初始种子;

步骤322,给定一对对应线条(si,tj),令n(si)为与线条si相邻的线条的集合、n(tj)为与线条tj相邻的线条的集合,通过匹配n(si)中的每一根线条到n(tj)中的每一根线条,依次生成一组可能的对应线条;

步骤323,从候选对应线条列表中,提取出具有最大匹配度的线条对,并在该对线条之间建立对应关系,同时把该对线条作为一个新的种子;

步骤324,重复运行步骤322和步骤323,直到候选对应线条列表为空。

在为源形状和目标形状中的线条定义内在连接关系,即α-连接时,默认值α=5。

为了加速提取过程,使用最大堆来存储候选对应线条列表,从而取得时间复杂度为log(n)的高效提取。

在源形状和目标形状中,为了确定一根线条是否是另一根线条的相邻线条,需要判定两根线条之间的距离是否小于一个给定的阈值。首先,通过计算两根线条之间顶点之间的最小距离作为两根线条之间的距离;其次,根据实验,给定的阈值默认值为18。

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

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