在计算机图形学中,多边形网格的构建仍然是一项复杂的任务,在数小时的建模时间内要进行数万个单独的操作。就操作次数和时间而言,建模的复杂性使美术人员很难了解如何构造网格的所有细节。我们介绍了MeshFlow,这是一个用于可视化网格构建序列的交互式系统。 MeshFlow对网格编辑操作进行分层聚类,以向查看者提供模型构造的概述,同时仍允许他们按需查看更多详细信息。我们基于对重复操作频率的分析进行聚类,并使用替代的正则表达式(regular expressions)来实现它。通过基于操作的类型或影响的顶点过滤操作,MeshFlow还可以确保查看者可以交互地关注建模过程的相关部分。自动生成的图形注释使集群操作(clustered operations)可视化。我们通过可视化五个网格序列来测试MeshFlow,每个网格序列花费几个小时来建模,我们发现它对所有对象都适用。我们还通过使用建模学生的案例研究对MeshFlow进行了评估。我们得出的结论是,我们的系统提供了有用的可视化效果,这些可视化效果在理解网格结构方面比视频或文档形式的说明更有用。
网格构建
对于计算机图形学中的许多应用而言,对象的形状表示为直接渲染或细分表面的多边形网格。 在大多数情况下,这些网格是由设计人员使用多边形建模包来建模的,例如Maya,3ds Max [Autodesk 2011]或Blender [Blender Foundation 2011]。 即使对于相对简单的形状(例如,图1中所示的形状),多边形网格的构造仍然是一项复杂的任务,在数小时的建模时间内要进行数以万计的单独操作。 就操作次数和时间而言,建模任务的复杂性使美术人员难以理解其如何构建的网格的所有细节。
在没有老师指导的情况下,通常使用视频或文档格式的教程,例如从书本或网站上。 对于网格结构,这两种格式都有严重的缺陷。 一方面,视频教程包含构建网格所需的所有详细信息,但是较长的录制时间(几个小时)使您难以大致了解整个过程。 另一方面,精心准备的文档对整个过程提供了很好的概述,但是跳过了正确构建所必需的许多细节。
MeshFlow
在本文中,我们介绍了MeshFlow,这是一种用于网格结构序列的交互式可视化的系统。 这些序列是通过对建模程序(在我们的情况下为Blender)进行检测而获得的,以记录建模人员在网格构建过程中执行的所有操作。 以最简单的形式,MeshFlow可用于回放建模者进行的每个操作(类似于视频),同时允许观看者控制摄像机。 但是,我们系统的真正优势在于构造顺序的分层聚类,将相似的操作按不同的详细程度分组在一起。 我们通过分析在网格结构序列中发现的重复操作的频率来激发我们的聚类(motivate our clustering)。 为了可视化集群操作(clustered operations),我们引入了覆盖在模型上的图形注释。 图2显示了用于在图1中创建模型的网格序列的带注释的聚类操作示例。
在MeshFlow中,顶层集群(top level clusters)提供了构建过程的概述,而根据需求更改详细程度的能力,一直到单个操作,都可以确保查看者拥有重现模型所需的所有信息。 -行动起来。 此外,我们允许观看者根据操作的类型或它们影响模型的哪些部分来过滤操作,从而将注意力集中在构造过程的特定方面。
贡献
我们相信,通过将自动生成的注释与概述,按需详细信息和焦点功能相结合,MeshFlow可以从视频和文档教程中受益。 我们通过采访八个受访者将MeshFlow与传统教程进行比较来验证了这种直觉,发现我们的工具非常可取。 据我们所知,MeshFlow是第一个支持这种网格构建序列交互式可视化的系统。
相关工作
设计工作流程可视化
我们用于交互式可视化网格构建序列的系统的灵感来自于有关可视化设计师工作流程的相关工作。 VisTrails [VisTrails 2010]是最接近我们工作的系统,它是一种工作流程出处系统(workflow provenance system)。这个系统记录在应用程序中执行的操作,将状态显示为图形中的节点,并允许查看者跳至工作流历史记录中的任何状态(类似于撤消操作)。对先前状态所做的更改将创建一个版本分支,浏览历史记录将涉及遍历版本树。但是,当单个版本的深度超过数百个编辑内容时,探索分支变得类似于搜索一个较长的视频序列。在MeshFlow中,我们假设执行撤消操作以纠正错误,并且我们专注于出处可视化(provenance visualization)难题的特定方面:通过分层聚类对长序列的编辑动作进行实用而有效的可视化。在将来的工作中,将其模型版本分支与我们的分层操作聚类相结合将很有趣。另外,MeshFlow通过执行的编辑对网格进行注释。 [Grabler et al. 2009]开发了一种系统,可以直接根据艺术家的录制步骤自动生成照片处理教程。该系统旨在处理顺序为比我们短。虽然参数调整和重复操作分组为单个步骤,但不同操作的长序列未分组。[Grossman et al. 2010] 描述了一个用于可视化和探索较长图像编辑历史的交互式系统。尽管他们的系统具有可伸缩性,可以记录和浏览好几个小时的工作,但对编辑序列的探索涉及使用详细的时间线和前后缩略图,首先按保存时间然后按编辑时间来界定(delimited)。虽然这对图像处理有效,但我们发现,对于网格建模序列聚类对于提供清晰的概述很有必要。在HCI研究中,可视化工作流是一个很好探讨的话题[Bergman et al. 2005; Berlage 1994; Kurlander and Feiner 1989; Nakamura and Igarashi 2008; Su et al. 2009]。由于它们专注于较少数量的单个步骤,而不是总结长序列,因此,由于导航变得困难,因此这些方法不适用于非常长的序列。
总结视频序列
寻找并可视化视频序列的代表性关键帧的一小部分工作量很大[Assa et al. 2005; Barnes et al. 2010; Christelet al. 1998; Kang et al. 2006]。 这些方法使用图像分析和优化来确定在语义上很重要并且应在总结中显示的关键帧。 在MeshFlow中,我们采用不同的方法,仅通过分析操作标签(analyzing operation tags)来总结网格序列。 我们计划扩展我们的系统,使其包括几何分析,以从这些工作中获得的总结中获得一些好处。
教程
[Palmiter and Elkerton 1991; Harrison 1995] 已表明,基于图像的教程比基于视频的说明要有效得多,这是因为用户可以按照自己的节奏进行工作。 [Narayanan and Hegarty 2002]报告说,教学材料的结构和内容对于学习和理解很重要。 [Kelleher and Pausch 2005]表明,图形叠加(graphical overlays)有助于聚焦并减少疑惑。 这些先前的研究很多都集中在相对较短的设计任务上。 在MeshFlow中,我们专注于需要花费数小时来计算的设计任务。 在我们的领域中,我们发现视频和文档教程从根本上讲在不同的细节级别上起作用,并且每个都有强大的优点,但也有很多缺点。 在MeshFlow中,我们让查看者以交互方式选择细节级别,以获取好处,同时避免弊端。 有关更深入的比较,请参阅第6节。
复杂模型可视化
最近的许多论文展示了如何通过展示零件在最终模型中如何在空间上和交互地相互关联来有效地探索复杂的模型。 为了专注于模型的特定部分,[Li et al. 2007] cuts切入并隐藏了遮挡的部分,然而[Li et al. 2004]分割各部分(splits and separates sections)。[Mitra et al. 2010] 通过注释和因果链指示运动来可视化机械装配模型。 尽管所有这些方法都将 最终模型中的零件隔离开来,但MeshFlow专注于可视化时间构造。 对于将来的工作,我们希望将这些技术与我们的工作相结合。
数据捕捉
可视化系统的输入是网格构建序列,其中每个步骤都由一个多边形网格 和 用于指示建模者执行的操作,当前摄像机视图和当前选择的一个标签定义。在我们的序列中,我们对改变网格,网格的每个组件的可见性,观察相机或网格的每个组件的选择 的每个操作捕捉了一个步骤 。我们将网格存储为唯一标记的顶点列表,以定义其几何形状以及以顶点列表形式表示的面列表。
我们通过检测Blender [Blender Foundation 2011](一个开源动画程序包,在多边形建模方面可与Maya或3ds Max等商业系统媲美)来记录此序列[Autodesk 2011]。我们的网格构建序列是在建模者构建网格时自动生成的; 这与在建模者构建网格之后需要编写(authored )的教程相反。 我们提供仪器(instrumentation)作为补充材料。
网格序列
尽管我们的数据捕获适用于任何网格,但我们专注于可视化单个对象的构造历史而不是整个场景。 为了证明MeshFlow的有用性,我们记录了五个网格的构造,如图1所示。图2显示了由我们的系统注释的构造过程的几个步骤。 我们使用网络上的教程构建了模型。 头盔和鲨鱼模型基于文档教程[Jack 2011; Drincic 2004]; 消防栓,两足动物和机器人模型基于视频教程[Tate 2009; Williamson 2010; Cu- lum 2009]。三种不同的建模“技术”被使用:箱形建模(将单个网格细分以添加细节),表面挤压(使用连续挤压来生长表面)和零件建模(其中各个组件分别建模)。 所有五个序列均作为补充材料提供。
表1显示了我们每个模型的各种统计信息。 请注意,即使对于这些简单的模型,也要花费数小时的建模时间。 这是由于需要进行数千次操作来构建网格,即使在由于对称而仅构建模型一半的情况下也是如此。 传统上,构建过程是通过录像或带有文字说明和图像的文档来记录的。 当该过程耗时数小时时,对于观看者而言,视频记录变得繁琐且难以搜索。 将这些信息压缩到带有插图的文档中可能会很有用,但是即使进行了大量的作者工作,细节也将以静态方式进行选择和聚集(but even with considerable work in authorship, details will be selected and aggregated in a static way)。
建模序列中的操作范围从用户界面命令到几何变换,再到网格中的拓扑变化。 我们定义了五组操作类型,如表1所示:view用于更改相机(cam)或隐藏/显示几何形状(vis)的操作,select用于选择要修改几何组件的操作,trans用于平移 ,旋转或缩放转换,topoa用于循环剪切,细分,拉伸和删除的拓扑操作,topob用于添加边,添加面,合并顶点和合并三角形的拓扑操作。 我们将拓扑操作分为topoa和topob,因为topob操作通常用作拼凑编辑(patchwork edits)与topoa中的操作联系在一起。 我们包括第三种类型,topoc,用于创建不连续的几何图元,例如创建球体和盒子,但是与其他操作相比,这些操作并不常见。
为了获得视频和文档教程的优点而又没有缺点,我们需要提供一种方法来查看不同层次级别的建模序列。 我们对这五个模型的构造序列的分析表明,在操作类型之内和之间存在大量重复(有关分析,请参见表1和第5节)。 从建模过程的高级概述,一直到精确再现网格所需的单个低级操作,我们都使用此重复操作将操作按层次结构分组为群集。 我们允许用户以交互方式选择所需的细节级别,从而获得概述和按需选择层次的好处。
可视化系统
在本节中,我们将从用户角度简要描述我们的可视化系统。 我们建议读者查阅我们的视频以演示此处列出的各种概念。 MeshFlow提供了一个用于交互式浏览网格构建历史的界面。 该界面包括网格的大视图,时间线以及沿时间线在不同位置的网格的缩略图。 图3显示了我们的用户界面的屏幕截图。 以最简单的形式,可视化系统可用于回放建模者进行的每个操作,类似于视频,除了观看者可以使用原始建模者的摄影机视图之外,还可以控制摄影机。
操作聚类
与传统记录工具相比,我们系统的真正优势在于通过操作聚类对交互式细节级别的使用。我们的方法不同于[Grabler et al. 2009; Nakamura and Igarashi 2008],我们以分层的方式将操作分组在一起,其中较低的聚类级别比较高的聚类级别具有更多的细节。这使我们可以直观地概述网格中的高级变化,同时提供可以按需访问的多个层次细节级别。通过更改详细程度,查看者可以选择查看编辑总结或按需获取详细信息。界面底部的时间线被离散化为簇(clusters),这样一次只能看到一个簇。界面的主视图显示了从各个摄像机位置(或用户控制的摄像机,如果需要的话)查看的聚类操作所生成的网格。为了确定我们的聚类,我们分析了输入序列中操作模式的重复性(recurrance),发现仅基于操作标签的聚类效果很好,无需进行几何分析。第5节详细介绍了我们的聚类方法。
视觉注释
我们添加了图形注释,以说明在集群中执行的操作类型,如图2所示,类似于[Grabler et al. 2009; Su et al. 2009]。 这些注释为网格的顶点,边和面上色,以指示网格变化,例如添加拓扑(绿色),移动顶点(蓝色)和选择(橙色)。 我们还添加了注释以指示常用操作,例如,用于挤出的箭头和用于切环(loop cuts)的线。 通常,选择在网格的许多地方都是有效的,因此我们允许在必要时将其打开和关闭以减少混乱。 主视图包括指示当前集群中执行的所有操作的注释。 缩略图中包含注释来指示自上一个缩略图以来的更改,强调了该位置的时间轴中的修改。 第5节详细介绍了这些注释。
过滤
我们发现能够快速专注于操作的子集很有用。为此,我们为观众提供了过滤操作和聚类的功能。这对于加速查看过程来说非常重要,而且对于可视化操作随时间和频率的分组方式也很重要。激活过滤器后,与过滤器匹配的所有簇在时间轴上都会变暗(请参见图4),使其变为不可选择状态,并在播放期间跳过。我们支持两种主要的过滤模式。首先,按操作类型进行过滤可以轻松识别和跳过标记有该类型(选择,转换等)的操作和群集。这样可以专注于建模时使用的不同“技术”。其次,受到[Grossman et al. 2010]的启发,通过顶点选择进行过滤可以使查看者突出显示顶点,并跳过不影响这些顶点的簇(clusters)。这使观看者可以专注于如何完整构建模型的特定部分。对于几何过滤,我们通过不强调模型的其余部分来进一步突出显示感兴趣的区域(参见图4)。我们的系统将在捕获过程中自动标记数据,但是建模者和查看者都可以提供自己的自定义标签,例如,使用“躯干”或“车轮”等标签在空间上进行标签操作,或者使用“阻塞阶段”或“优化阶段”等标签在时间上进行标签操作。
正则表达式聚类
网格序列在第2节中描述。 3包含大量重复操作。为了提供有关模型构建方式的清晰概述,我们需要将低层操作分组为代表高层结构变化的集群。为了识别这样的组,人们可能会尝试分析几何属性以了解何时发生了较大的网格语义变化。但是,我们发现,仅基于操作标签的聚类可以建立有意义的详细级别,而无需尝试学习序列中的语义(请参见第6节)。为了将操作分组在一起,我们使用在操作标签上定义的替换正则表达式(substituting regular expressions)。我们通过识别重复的操作模式来导出这些正则表达式,并将它们组合为可以立即可视化的簇(clusters)。作为两个示例,选择和顶点变换通常是通过许多重复的原子选择或变换操作来实现的。我们可以将它们聚类为一个单个聚类,表示选择状态或顶点位置的净变化。
为了创建详细级别的层次结构,我们应用了连续的规则表达式替换,并让用户以交互方式选择显示的级别。 在我们的实现中,我们提供了11个连续的详细级别。 表3列出了用于每个细节级别的正则表达式的列表。 图5显示了以不同详细程度执行正则表达式的示例。 在后一示例中,我们显示了一组重复的拉伸和顶点运动的开始和结束状态,然后查看每个单独的拉伸,而无需查看每个顶点单独的选择和变换。
移除撤销
原始序列称为Level 0,将包含建模者已执行的所有操作,包括未完成的工作。 我们假设撤消用于纠正错误,而不是用于探索目的。 我们的第一个集群级别称为Level 1,它通过删除未完成的工作来清理数据流。 我们在流中查找相同的网格状态,并删除之间的所有操作,从而有效地使撤消(undos)不可见。
初始聚类
为了选择代表有效层次细节水平的正则表达式,我们分析了数据集的网格序列,我们测量二元组的频率,或成对的操作类型实例。(We measure the frequency of bigrams, or instances of pairs of operation types.) 表2列出了1-8级集群的四个最常见的二元组。请注意,在对撤消进行聚类(级别1)之后,重复的摄像机更改是最频繁的,在某些情况下,大约占所有二元组的一半,然后是重复的选择。重复的相机移动可能是由于艺术家从不同角度观看模型或只是简单地仔细调整视图而引起的。能见度操作(显示/隐藏几何)虽然不那么频繁,但动机类似(similarly motivated)。还要注意,重复调整以显示网格不会改变网格。对于重复的选择,建模者很可能正在为后续操作建立较大的选择集,因此我们可以安全地将它们组合在一起。与查看更改类似,这些更改也不会更改网格。这些观察结果激发了集群的下三个层次。
在Level 2 中,我们用单个视图群集替换重复的相机视图更改,并选择最后一个相机视图作为群集视图。Level 3将所有重复的可见性(visibility)和相机操作聚集在一起。 出于语义原因,可见性(Visibility)在此级别上聚类,而不是双字集频率,因为它形成仅影响视图操作的聚类。 然后,在Level 4中,我们将重复的选择聚集在一起,因为这是一个非常常见的二元组,并且因为这很可能为后续操作准备了更大的选择。 我们将结果簇的选择设置为连续选择的最终结果(net result)。 至此,我们将所有不影响网格的操作聚在一起。
聚类编辑操作
在Level 4之后,我们开始对改变网格的操作进行聚类。在这一点上,紧接着选择的变换是我们序列上最常见的二元组。这是有道理的,因为必须选择一些网格去编辑。因此,在Level 5中,我们将选择与随后的编辑操作聚类(cluster)在一起。下一个最常见的二元组是重复变换。重复平移,旋转和缩放操作的组合效果可以认为是简单地修改了顶点的位置。我们可以将它们聚集在Level 6中,以使最终的顶点位置是位置的净变化(net change)。现在,我们遇到了另一种情况,即语义超过了(outweigh)我们的二元分析。我们借此机会创建了一个详细程度(level of detail),将所有重复的操作聚集在一起,无论它们是什么(本质上清除了重复的同构拓扑更改),形成了Level 7。在实践中,我们发现这是有效的详细程度,具有易于识别的含义。可识别的含义。请注意,拓扑操作仅在具有相同标签的情况下才会聚类,例如,使用extrude进行挤压,而不使用loopcut进行挤压。
聚类编辑操作的组
到目前为止,我们已经将相同类型的编辑操作集中在一起。 现在,我们将这些集群相互组合,以形成具有更高异构性的更高级别的操作组。Level 7中最常见的二元组是拓扑操作,然后是转换。 这是有道理的,因为新拓扑通常是在创建后就成形的。 在Level 8中,我们将拓扑变化与任何后续的转换群集(cluster)聚(cluster)在一起,在大多数情况下,将创建新几何与该几何的形状相结合。 在图5的Level 8中可以看到一个很好的例子。
到目前为止,我们一直在考虑拓扑运算,但是现在我们介绍topoa和topob类型的分类(请参见第3节和表1)。 topoa中的操作代表了网格的主要结构变化,通常会更改边环的数量或整体复杂性,而topob操作与topoa操作一起用作修补程序,通过合并或连接一些东西来填充孔和裂缝。例如,在头盔的冠部上,每个边缘环都被挤出,然后在开始下一次挤出之前将其连接到头部。Level 9 将topoa实例与后续的topob操作聚在一起。最后,在Level 10中,我们将Level 9案例的重复实例聚类,直观地看到正在构建的网格的大型组件。根据模型,Level 9 or或Level 10会产生简洁的概述,只需几秒钟即可轻松查看(请参阅补充视频)。尽管异构的topoa对是我们在第8级之后最常见的非相机二元组(bigram),但我们在这里没有将它们组合在一起,因为我们发现这会导致语义上模棱两可的情况和细节级别的不清楚。
视觉注释
在绘制与每个群集相对应的网格时,我们突出显示在群集中执行的更改以引起用户注意。 我们使用颜色编码表示简单的更改:绿色表示添加的几何图形,青色表示转换后的顶点,橙色表示选择。 对于最常见的拓扑操作,我们在生成的网格上覆盖视觉注释,以指示在每个群集中执行哪些操作类型。 图6显示了此类注释的总结。 我们通过在新创建的面的两侧绘制黄色箭头来注释拉伸。 对于细分和循环切割,所涉及的边缘以绿色突出显示。 对于顶点或面合并操作,我们分别在最终顶点或面的位置绘制黄色圆圈。
概述
我们在具有4GB RAM的Intel Core2 3.0GHz四核处理器和NVIDIA GeForce 9600GT GPU上运行系统。在此系统上,探索数据集中所有网格上的网格序列都是交互式的。我们提供所有源代码和网格顺序数据文件,以使读者能够体验我们的可视化效果。我们还包括Blender软件。文章和补充视频中显示的所有可视化功能和注释均由我们的系统自动生成,而无需建模者进行任何创作。我们发现,我们的正则表达式分组在降低序列复杂性方面一直非常有效。表4显示了每个详细级别的操作数量,从数千个操作变为数百个。这支持我们的主张,即简单的频率分析足以减少噪声。我们包括视频,这些视频显示了每个网格的三个细节级别作为补充材料,并且在视频提交中概述了界面。在下一个小节中,我们将介绍一个案例研究,以支持我们的主张,即减少这些操作可以有效地帮助观众理解。
缺陷
MeshFlow最明显的局限性在于它仅专注于多边形网格,而其他表面表示也很有用(whereas other surface representations are also useful)。但是,我们相信,可以将大多数MeshFlow扩展为支持其他曲面(surface)表示,例如NURBS。执行这种扩展的主要限制是我们的聚类算法将需要解决新的算子(operators)的存在,特别是对其他几何表示进行建模时。但是,我们有信心,可以通过分析工作频率并遵循我们的方法来实现这一目标。此外,用于分析的序列仅包含可用操作的一部分在Blender中可获得。尽管此子集可以构建各种模型,但在将来的工作中,我们希望探索包含来自其他建模样式(例如雕刻)的操作的序列。对于多边形网格,可以改善仅基于正则表达式的聚类。首先,我们仅顺序支持聚类表达式,但是研究聚类运算的方法可能会很有用,以便更好地突出显示模型不同部分的模式。其次,我们没有尝试确定在编辑网格时哪些聚类具有更高的语义重要性。这将需要某种形式的几何分析,可以量化网格更改的重要性。第三,能够识别模型的各个部分以创建更高级别的群集将很有用。例如,如果我们可以识别出一组顶点在对鼻子(而不是眼睛)进行建模,则可以将所有这些顶点自动聚在一起;这是在[Grabler et al. 2009] 上已经用于图片来人脸识别。这样的语义将使我们能够自动生成音频和文本注释。最后,由于它是一个完全自动化的系统,因此MeshFlow不是手工编写教程的替代。但是,可以使用标记隐喻轻松地扩展MeshFlow以允许作者指定的提示和技巧。 (请参阅第4节中的过滤)。尽管我们有兴趣解决以后的工作中的这些局限性,但以下部分将显示艺术家们发现我们当前的系统非常有用,并且在可用方法上有了重大改进。
案例研究
我们进行了一个案例研究,与视频和文档教程相比,要求受试者评估MeshFlow。 该研究包括8名大学建模学生,他们全部以前都完成了至少一门网格建模课程,并且具有通过遵循教程创建模型的经验。 当被要求对他们从未完成过使用教程之前从未尝试过的网格的置信度进行评分时,除了一个人以外,所有其他人都以1到5的等级将自己评为4或更高,其他人则以3评分。 我们相信,所有测试者都有足够的经验将MeshFlow与实际的建模任务结合起来。
方法学
我们要求我们的受试者对使用MeshFlow与其他选项进行五次比较。 对于每个比较,受试者有10分钟使用Mesh-Flow研究建模序列,并有10分钟使用替代方法研究建模序列。 我们通过要求受试者回答有关建模顺序的三个具体问题来指导探索(例如,对于机器人模型,受试者被问到如何将车轮装配到底盘中)。 研究人员在受试者开始之前介绍问题,并随时待命以指导受试者使用界面。 在所有五个比较的最后,我们要求受试者对MeshFlow的各个方面进行评分,并留下有关体验不同方面的公开评论。 扫描的问卷随附补充材料。
首先,我们将MeshFlow与我们三个模型的传统建模教程进行比较,以确定MeshFlow作为可视化工具实际上是否有效。 我们将MeshFlow中的头盔模型与其原始文档教程[Jack 2011]进行了比较。 然后,我们将MeshFlow中的两足动物模型与原始视频模型进行比较[Williamson 2010]。 最后,对于鲨鱼模型,我们只比较了level 9网格流自动生成的静态屏幕截图与从原始教程[Drincic 2004]中不带文档所创作的图像。 对于这些比较中的每一个,首先一半的受访者先显示MeshFlow,另一半的受访者则显示传统教程。
其次,我们比较了具有和不具有过滤和聚类操作能力的MeshFlow的使用,以评估这些特征在模型序列探索中的相对重要性。 我们将机器人和消防栓模型用于这些比较。 首先,为受访者提供最低详细级别的模型,并要求其在不使用聚类或过滤的情况下回答我们的问题。 然后,我们允许用户比较所有群集级别的详细信息和过滤方法。
结果
图7总结了所进行比较的受访者等级。通常,受访者对MeshFlow非常热衷,并高度评价其功能。我们要求受试者将MeshFlow与视频和文档教程进行比较,方法是通过评估每种方法在获得总体概述和理解细节方面的用处。在这两个类别中,受试者对MeshFlow的评价都优于视频和文档教程。这表明MeshFlow不仅具有传统教程的优势,甚至在其各自的优势方面也超过了它们。我们还要求受试者严格将他们的总体偏好在这三种(MeshFlow,视频,文档)之间进行排名。所有受试者均将MeshFlow作为他们的首选方法。与为文档教程手动创建的图像相比,我们还要求受访者对由MeshFlow自动生成的图像集进行评分。受试者针对他们在理解概述,建模细节以及注释的清晰度方面的有用程度进行评分。在所有类别中,MeshFlow的评分都高得多,只有一个受访者的评分低于教程图像。我们发现这令人惊讶,因为MeshFlow并非旨在生成静态图像序列,而是生成交互式可视化图像。不过,当将自动注释的群集与手写图像进行比较时,发现MeshFlow是更好的。最后,我们要求受试者在尝试了解概述和细节时对聚类和过滤的有用性进行评分。在大多数情况下,受访者对所有要素的评价都很高,这表明聚类是获取概述的最有用的功能,而对特定顶点进行过滤对于研究细节最有用。
观察
为了支持我们以前的分析,我们从受试者的问卷中收集了公开反馈,现在报告以下引用。与传统的替代方案相比,所有受试者都更喜欢MeshFlow。当被问到为什么时,一个人回答说:“能够习惯地查看我感兴趣的几何图形的部分并对其进行更改,而不必依赖于教程作者认为我想知道的东西。”而另一个受访者,“互动式视觉使我可以选择细节层次。 [...]它比文档更详细,并且可以忽略视频经常附带的无关紧要的内容。”当将MeshFlow图片与手写图片(hand-authored)进行比较时,“我认为交互式可视化可以更好地解释模型已建立。我喜欢配色方案/常用界面,以及能够轻松地区分/识别正在更改的内容的能力。”另外,“ [MeshFlow]中的图形注释比普通教程要有用的多。”对于过滤的功能,很多受访者都觉得这很有用,并评论道“如果您专注于细节,那么绘画工具可以向您显示与时间轴上所选内容有关的更改在哪里可以节省大量时间”。另一个受访者:“按选定的部分进行过滤似乎很有用。在猜测或记住某个教程或视频中的某个特定区域需要解决的问题时,这绝对是固定的问题。”在聚类方面,我们发现受访者都具有不同的兴趣,突出了以交互方式选择详细程度的重要性。例如,一个受访者评论“聚类是找到您要关注的部分的关键”,而另一个受访者“聚簇可以很好地,快速地概览构建”,而另一个受访者则评论“有时总的观点是更有用(聚类),也可以选择更详细的视图(过滤)。交互式可视性与众不同之处在于可以随时满足两种需求。”研究结束后,至少有三名受试者问我们是否要向公众发布MeshFlow,以便他们可以开始使用它。甚至有人在问卷中写道:“我很乐意在数字艺术建模课程中使用这种交互式视觉教程。尽管我认为可以,但是教授不需要做很多事情。”
我们介绍了MeshFlow,这是一个可视化多边形网格构造过程的系统。 MeshFlow通过对记录的建模会话中的编辑进行分层聚类和过滤,将概述,按需详细信息和焦点结合在一起。 我们基于对重复操作频率的分析来进行聚类,并使用正则表达式替换操作标签来实现它。 我们已经在五个网格序列上测试了MeshFlow,并通过案例研究对其进行了评估。 我们得出的结论是,我们的系统提供了有用的可视化效果,这些可视化效果在理解网格结构方面比视频或文档形式的说明更有用。 在以后的工作中,我们希望专注于改善群集,以支持乱序分组,突出显示的语义变化以及添加语音和文本注释。