一种展示角色间的交互变化的可视化方法与流程

文档序号:12273128阅读:645来源:国知局
一种展示角色间的交互变化的可视化方法与流程

本发明涉及图像处理领域,尤其是涉及一种展示角色间的交互变化的可视化方法。



背景技术:

在故事情节可视化产生的图像中,每一条线代表一个实体。当代表两个实体的线汇集在一起时,说明这两个实体产生了某种交互。同样,当两条线分开时,表示两个实体间的交互结束。

现有的文字作品中随时间线的发展会出现很多不同的故事情节、角色和角色会话,但是由于文字作品过于枯燥,在阅读过程中不易对该文字作品的剧情进行时间规整和理解,造成阅读理解上的不便,也无法准确的得知故事情节中的各个角色之间的隐藏关系,现在也没有一种可视化发案来解决此种问题。



技术实现要素:

本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种直观形象、布局紧凑的展示角色间的交互变化的可视化方法。

本发明的目的可以通过以下技术方案来实现:

一种展示角色间的交互变化的可视化方法,用以在故事情节中产生可视化的角色交互关系变化的布局图像,包括以下步骤:

1)获取故事情节中多个交互会话的数据,包括开始时间、结束时间和包含角色;

2)根据交互会话数据和时间线结合拓扑结构构建可视化故事情节布局模型;

3)根据可视化故事情节布局模型生成可视化的角色交互关系变化的布局图像。

所述的可视化故事情节布局模型为一以时间延伸为横轴,以交互会话插槽序号为纵轴的平面坐标模型,在坐标平面内每个交互会话插槽为一随时间延伸且具有一定宽度的区域,且相邻交互会话插槽之间的界线即为对应的一个交互会话。

在交互会话插槽的区域内随时间生成该交互会话所包含角色的角色线,当多个角色发生会话交互时,其角色线向界线相互靠近,同时在纵轴方向产生距离偏移。

所述的可视化故事情节布局模型的角色线排布方法为:

21)根据交互会话中的开始时间和结束时间,在横轴上标记出相应的时间点;

22)将发生时间最早的交互会话的角色线作为初始角色线,将晚于最早交互会话之后的交互会话中的角色加入到新分组列表中,并根据与其进行会话交互的角色之前出现的次数由高到低片排序;

23)在新分组列表中的角色按照交互会话的开始时间先后,以总距离偏移最小为最优条件,进行角色线的添加和变更。

采用压缩布局的方式提高可视化故事情节布局模型的空间利用率,具体方法包括:

首先将同一交互会话插槽内被共同角色连接的交互会话集合记作一个插槽段,将交互会话分为多个插槽段,按所在交互会话插槽自下而上将上一个插槽的插槽段向下移动,直到与下方插槽段距离为最小会话间距离。

与现有技术相比,本发明具有以下优点:

一、直观形象:本发明的可视化故事情节布局模型采用时间轴和角色线排布的方式来直观形象的展示出故事情节中各个角色的会话关系,有助于读者对故事剧情的理解以及对角色间关系和会话间关系的发掘。

二、布局紧凑:本发明采用纵轴偏移量最小为最优对角色线进行调整和排布,最终生成的角色交互关系变化的布局图像结构紧凑,便于理解。

附图说明

图1为本发明的方法流程图。

图2为角色交互关系变化的布局图像。

具体实施方式

下面结合附图和具体实施例对本发明进行详细说明。

实施例:

如图1所示,本发明包括以下步骤:

1.数据管理

交互会话数据模型

交互会话是故事情节可视化的最基本数据单元。一个交互会话包含三个基本属性:开始时间、结束时间、包含角色。在最后生成的可视化故事情节中,交互会话会被表现为一组汇聚的平行线。其中每条线代表着包含在该交互会话中的一个角色。

从流数据中生成交互会话

输入的流数据按时间分成了一个个包含着该时间点所有不同角色分组的列表。流数据按时间顺序输入。

在每个时间点,输入的分组将会被分为两类:延伸分组和新分组。延伸分组指的是和前一个时间点中的某个分组包含完全相同的角色的分组。新分组正好相反,其角色组合并不存在于前一个时间点。

对于延伸分组,将会被加入前一个时间点中拥有相同角色的交互会话,使得该对话延伸到当前时间点。而对于新分组,将会被分配给一个全新的交互会话。

2.布局构建

该框架的第二部分任务是构建可视化故事情节的布局。该部分分为三步:生成拓扑结构、角色线重排、压缩空间。每个时间点重复执行上述三步,增量地生成最终布局。

生成拓扑结构

生成拓扑结构是算法中最关键的部分。为了更好地描述布局的拓扑结构,我们将布局从上到下平行地分为多个平行的插槽。只要插槽中的交互会话在时间线上不产生重合,每个插槽都可以容纳任意大小长短数量的交互会话。

在每个时间点,遍历该时间点的所有分组。将所有的延伸分组添加到前一个时间点相对应得交互会话。对于新分组,将其加入新分组列表Lnew。

接下来,将新分组列表Lnew中的分组按其包含角色在前一个时间点中出现的数量从小到大排序。之后,重复将列表Lnew中的最后一个分组,也就是重合度最高的分组,插入当前的布局中。

在插入进行前,我们首先需要插入临时插槽,使得新分组可以被插入布局中的任意拓扑位置。临时插槽将会被加到现有插槽之间、所有插槽的最上方和最下方。

插入新分组时,我们首先尝试布局上该时间点上所有不与已有交互会话产生时间冲突的位置。在每次尝试时,记录下插入新分组后在该时间点t与前一个时间点t-1产生的交叉和偏斜。找出产生的交叉与偏斜数量之和最小的插槽或临时插槽,记为最佳插槽。之后将新分组对应的交互会话插入最佳插槽,删去其余的临时插槽,从新分组列表Lnew中删去该分组。

若某次循环中多个新分组拥有同样的重合度,在找出了最后一个分组的最佳插槽后,先不将该分组插入。先遍历拥有同样重合度的新分组,找出它们的最佳插槽。若其中存在最佳插槽与最后一个分组相同,且产生的交叉和偏斜数量之和更少的新分组,将其中产生的交叉和偏斜数量之和最少的分组插入最佳插槽,从新分组列表Lnew中删去该分组。

上述插入过程不断重复直到新分组列表Lnew为空,最终产生的角色交互关系变化的布局图像如图2所示。

本发明的改进点为:

第一项改进是在找重合度最高的分组时,将所有重合度最高的分组都取出,计算它们的最佳插槽和产生的交叉和偏斜数量之和。找出产生的交叉和偏斜数量之和最小的分组,将以其生成的交互会话插入对应最佳插槽。将其他分组放回新分组列表Lnew。该改进使得找应插入分组这一步更为“贪婪”。

第二项改进基于两个发现。一个是每次找寻找最佳插槽时有很大可能多个插槽都能产生最少的交叉和偏斜,一个是在某一刻分开的两个角色在将来相对于和其他角色组合,有更大的可能重组。基于这两个发现,将距离引入作为最佳插槽的评价标准。寻找最佳插槽时计算两个距离值。一个是角色在前一时点t-1和该时间点t所在插槽偏离的插槽数。另一个是新加入的角色和该时间点t其他角色相距的插槽数。当两个插槽产生的交叉和偏斜都是最少时,比较它们的距离,距离值和更小的插槽更佳。

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