基于VR的大数据可视化教学系统设计与实现

2022-10-14 06:55陈一民
计算机时代 2022年10期
关键词:教学系统降维全景

滕 琴,陈一民

(1.上海市第二轻工业学校,上海 200135;2.上海第二工业大学;3.上海建桥学院信息技术学院)

0 引言

虚拟现实(Virtual Reality,VR)技术的广泛应用,给教育、教学带来了新的生机和挑战。我们可以通过三维图形、文字、声音、及视频等多种形式表达教学内容。

大数据可视化是数据科学与大数据技术专业一门核心课程,教学内容的专业性和实操性都很强。大数据可视化、大数据可视分析是理解和洞察大数据本质(see the unseen)的重要途径,是体现大数据价值的关键。目前尚无功能成熟的虚拟大数据可视化教学系统,在已知系统中所实现的功能大多相对单一,且三维视觉效果较差,可进行的实验数量也不多,缺少完善的权限控制策略。

本文基于VR 技术构建了大数据可视化教学系统。在大数据可视化分析课程中设计了智能实验模块,学生可以根据场景中的智能提示内容,自主学习正确的实验视频及3D 演示解决了传统课堂教学模式中教师在有限的课堂时间内无法顾全所有学生的难题,而且扩展了可教育内容,丰富了教学的趣味性,能够帮助学生深刻理解大数据可视化的理论和实践。

1 可视化教学系统设计原则

基于VR 的大数据可视化教学系统的设计原则:①构建虚实结合的三维教学空间,利用VR 技术构建仿真课堂并开发仿真实验,构造符合真实世界比例的虚拟场景,将书本上的内容以虚拟场景中3D形式呈现给学生,提高教学趣味性;②因材施教,实现不同学生的针对性教学,充分考虑学生学习基础、学习成绩与学习进度的差异性,利用权限算法赋予其不同的操作权限,如:当前理论学习与实验操作不合格的学生将无法进行下一个实验,直到其达到合格为止,从而保证教学质量及教学效率;③考虑目标用户是长教学周期中本贯通学生的群体特点,强基础、重应用,为增强其对虚拟学习与实验的兴趣,设计更符合学生认知特点的UI交互界面,让学生在使用虚拟教学系统的过程中获得更强的沉浸感以及更真实的交互感;④利用虚拟教学的优势保证教学质量:传统课堂教学中教师受时间限制不可能充分指导每一名学生进行相关的学习与实验,在虚拟教学系统中此类问题可得到充分解决,借助智能实验模块在学生进行学习与实验时根据内容、进度对其进行文字、视频、及3D动画等智能提示。

2 大数据可视化教学系统架构

该大数据可视化教学系统(如图1)包括专门用于大数据分析的机器学习子系统、用于存储大数据的海量存储子系统、用于展示的多屏拼接并行可视化子系统等。软件上包括各子系统的管理软件、子系统协同处理的服务系统,及整个系统的管理软件、应用开发工具软件等。各子系统相对独立,可独立运行。

图1 基于VR的大数据可视化教学系统

另外,该系统集成了一批大数据可视分析工具与软件,可以在商业、轻工业设计、轻工业制造、物流、普惠金融、以及新媒体等领域开展典型示范应用实验。帮助学生学习和探索大数据可视化的价值及意义,并完成对大数据的理解与评估。

大数据可视化的本质是视觉对话。它将技术与艺术完美结合,借助计算机图形、图像和计算机动画等手段,清晰有效地传达及呈现大数据中蕴含的重要信息,便于从大数据中提炼出最为重要及关键的信息、获取最为有用的知识与价值。

3 大数据可视化系统关键技术

3.1 大型拼接屏全景显示平台

该系统由12 台配备了高性能GPU 卡的专用服务器组成,系统中每一台服务器连接并控制两块屏幕,内部安装了双操作系统;基于MultiPanelManager、LxMaster 等软件和蓝芯同传卡技术,通过控制端对系统进行管理;另外,通过率对基于云的Web 浏览器技术的跨平台多屏显示开源软件SAGE2进行二次开发,实现了多人同时控制显示大屏;最后,使用跨平台数据分析可视化开源软件ParaView,实现了大数据模型分析的可视化。

3.2 HTC Vive头盔显示设备

我们还选用了HTC Vive 头盔显示设备,用于虚拟场景的再现,可将书本上难以理解的内容(如动态数据、三维数据、各种复杂数据模型等)以虚拟场景中3D立体形式呈现给学生。HTC Vive头盔显示器采用了二块OLED 屏幕,2K 分辨率大大降低了全景画面的颗粒感,学生几乎感觉不到纱窗效应,并且能在佩戴眼镜的同时戴上头盔显示器,增加了使用的灵活度;画面刷新率为90Hz,实际体验几乎零延迟,具有很好的防眩晕功能。另外,设备中搭配两个无线控制器,可以对全景中所显示的内容进行良好的交互操作。

3.3 软件环境

本系统的开发软件主要有Unity3D,VS2017,OpenCV,C#,JavaScript 等。系统的全景拼接模块中运用了OpenCV 内多种类库,使用Visual Studio 2017进行开发。浏览器全景展示使用了HTML5,CSS,JavaScript等关键技术。VR 全景展示使用了SteamVR内的InteractionSystem,以完成场景内容的交互操作。全景拼接显示及VR显示框架如图2所示。

图2 全景拼接显示及VR显示框架

主要涉及三个模块,分别是:①全景拼接模块;②HTML5 浏览器全景显示模块;③VR 全景显示模块。全景拼接模块主要是对拍摄的多张图片进行预处理,特征提取,全景拼接以及融合等一系列操作。HTML5浏览器全景显示模块是针对浏览器全景显示的一种展示形式,不仅可以展示在拼接屏上,而且可以在Android,iOS 等移动端进行3D 显示。VR 全景显示模块增加了用户的沉浸感,能展现在HTC Vive 头盔上,并且可以通过手柄进行交互操作。

3.4 VR全景显示模块

本模通过使用Unity3D 可视化工具和脚本代码(C#语言)完成VR 中360°全景开发。另外,采用SteamVR 插件完成HTC Vive 头盔设备的管控,在SteamVR 插件中对手柄与头盔进行了处理,通过添加SteamVR_TrackedObj 组件标记跟踪对象,这样就可以检测手柄以及头盔在现实环境下的位置信息;然后通过SteamVR_Controller 类下的Input 接口获取并实现手柄按键控制。最终实现VR 场景的显示及操作,如图3所示。

图3 VR场景的显示及操作

4 大数据可视分析关键技术

4.1 大数据分析[12]过程的认知模型研究

大数据分析分为三类:分析现状、分析原因、预测未来。分析现状是数据分析的基本目的,一般使用统计、归并方法,可用于商业运营与科学研究中,需要在数据统计的基础上建立相关模型,典型的应用实例有社交网络话题传播分析等;预测未来是运用数据分析的方法预测未来的变化趋势,比如根据历史数据,基于回归分析得出未来的趋势,典型的应用实例有产品价格预测、网络流量预测、数据中心负载预测等。

一个完整的数据分析过程可以分五步:确定目标、搜集数据、整理数据、分析数据、可视化呈现。首先,需要结合生产生活的需要,确定数据分析的目标、可衡量的指标、可收集数据的最小单元,这样才能有针对性地进行数据分析,提高数据运用的效率,避免数据的过量采集及浪费;其次,确定好目标后,需要有针对性地搜集数据,如业务产生的用户数据、网络搜集的开放数据等;第三,数据搜集完成后,需要整理数据,尤其是对于多源数据,需要进行清洗、归一化等操作;第四,选择合适的模型进行数据分析;最后,把数据分析结果进行可视化呈现。

例如:热图分析模型可用于分析及可视化数据的焦点。以网页访问数据为例,按计算维度划分,热图可分为浏览热图及点击热图。浏览热图也称作注意力热图,记录的是用户在不同页面或同一页面不同位置停留时长的百分比。点击热图分析及显示的是鼠标的点击情况,将访问人数及次数数据进行统计并基于百分比进行热力分布显示。图4是网页热图的示意图。

图4 网页热图的示意图

可以按照不同的目标进行热图分析及显示,比如进行面向特定人群的分析与人群对比,还可进行面向目标子集(如网页上的部分重要链接)的分析与对比,从而得到不同的可视化结果,让人一目了然。

4.2 高维数据的数据分析及呈现方法

数据分析方法对数据中的特征进行分析和挖掘,找出数据间的规律和特征,从而进行降维或直接显示。数据分析方法的复杂度决定了计算的工作量,并会影响最终数据准确性及显示效果。

降维方法在尽量保留高维空间中宏观结构和主要特征的前提下,将高维数据通过数学方法降维后在低维屏幕空间中显示。通过建立研究问题的相应数学模型、数据集结构模型,对该模型提出相应的度量准则或选择规则,并建立基于数据集结构的降维准则或损失规则,可构建新的降维方法。研究能保存数据主要和重要信息的低复杂度数学降维方法,以及基于输入样本的改变而进行增量计算的降维方法。

高维数据降维即将高维数据投影到低维空间,并且尽量保留高维空间中原有的特性和聚类关系。高维数据可通过数学的方法降维,进而在低维空间(比如三维及以下)空间展示。高维数据降维大致可以分为线性降维方法和非线性降维两大类。经典的线性降维方法,包括主成分分析(PCA)、线性判别分析(LDA),非线性降维的方法包括局部线性嵌入(Locally linear embedding,LLE)、拉普拉斯特征映射(Laplacian Eigenmap)、T-SNE(t-distributed stochastic neighbor embedding)。

我们对MINST 数据集降维后可视化的效果如图5所示。

图5 MNIST数据集可视化效果,左边为T-SNE,右边为PCA

显而易见,T-SNE 可以更好的在二维空间中将10个数字分得更开,而PCA 则不少数字有重叠,这样通过观察T-SNE 中的结果,可以清楚地了解数据的内在意义和本质属性。

4.3 大规模数据人机协同的数据可视分析

在大数据可视分析及数据挖掘过程中,分析模型、数据挖掘模型方法及可视化呈现中都各对应一组参数,这些参数集合中的参数值的确定通常决定分析、挖掘和展现的效果。

在跟踪和驾驭方式的可视化分析处理中,系统通过机器学习算法,在系统的运行时对人机交互操作不断学习,逐步掌握分析模型、挖掘方法和展示方式等的参数取值的关键区域,并主动推荐给操作者。通过对系统各分析模型、数据挖掘方法、可视化模型参数分析,记录参数的变化,采用动态的方式实现大数据可视化分析,实现这一过程只要研究逆过程分析计算模型、动态呈现。

4.4 基于可视化的数据理解与可用性分析评估

4.4.1 基于可视化技术的数据理解

基于可视化技术的数据理解,是通过各种合适的可视化技术,展示数据,解读数据之间关系的,有效传达沟通数据信息,找到数据分析的需求、方法与思路。

基于可视化的数据属性重要性判别:对于有些高维数据,可以通过非降维方法,如平行坐标技术来可视化数据,进而分析识别各数据属性的类别与重要性,比如属性是否为主键、属性是否可分解、属性是否可计算等。然后在数据分析过程中,利用重要的数据属性、可计算与度量的属性做进一步的分析挖掘。

基于可视化的数据稀疏性分析:随着数据种类与维度的增加,数据的稀疏性问题越来越严重,例如在推荐系统、社交网络分析等应用中数据集的特点就表现为数据稀疏性。数据的稀疏性,直接影响到数据分析的算法选择与设计。通过数据的可视化技术,可以定性结合定量来分析数据的稀疏性,从而为后续的数据分析提供有力支撑。

基于可视化的多源多属性数据关系发现:在大数据分析应用中,经常会遇到多源多属性数据集的融合。利用可视化技术可以快速发现多源数据之间的关系,比如:是否有相同或相似的属性,数据源之间是否可作链接与融合等等。

4.4.2 基于可视化技术的数据可用性分析评估

大数据的可用性一般可包括数据一致性、数据精确性、数据完整性、数据时效性与数据同一性等性质。到目前为止,大数据的可用性的理论还不够完整,且难以用形式化的方式来描述。然而,可视化技术可在数据理解的基础上,实现数据的可用性的分析评估。

基于可视化的数据一致性分析评估:数据一致性要求数据集合中每个信息都不包含语义错误或相互矛盾的数据。在数据可视化的基础上,可采用基于语义规则的数据一致性分析方法与基于统计理论的数据一致性分析方法,设计数据一致性评估模型。

基于可视化的数据完整性分析评估:数据完整性,指的是数据集合中包含足够的数据来支持计算与查询。大数据领域数据的完整性问题主要表现为数据重要属性的缺失,而影响数据的计算。通过可视化技术,统计数据集属性中未知值的分布规律,进而研究设计数据完整性评估模型。

基于可视化的数据实体同一性分析评估:数据实体同一性是各种数据源中实体的一致性。实体一致性是数据管理、数据集成(数据融合)、数据清洗与数据挖掘等领域的基础性问题,是异构数据源数据挖掘的核心步骤。在研究多源数据实体识别方法基础上,利用可视化技术评估分析各种实体识别方法的性能。

5 大数据可视化虚拟课堂开发

针对现有大数据可视化虚拟课堂系统中,可供学生和教师可选的教学与实验数量少,并且没有涉及现实中所受到的各种条件限制、以及其他因素(如数据安全)的制约,难以开展大数据可视化实验。我们在虚拟课堂系统中开发了一定数量的商业、轻工业设计、轻工业制造、物流、普惠金融、新媒体等领域大数据可视化教学与实验,具有强烈的视觉效果和丰富的趣味性、增加了虚拟课堂对学生的吸引力,提高了学生使用虚拟课堂时的沉浸感。

针对现有虚拟课堂系统并未涉及学生可操作实验的权限,没有充分考虑学生的不同学习情况,无法对不同的学生做到针对性教学。我们提出了权限动态调整算法,为不同的学习者赋予不同的学习权限。当前理论学习与实验操作不合格的学生将无法进行其他实验直到达到合格为止,然后才能进入下一学习与实验。

针对现有虚拟课堂系统并未考虑系统效率问题,随着系统使用次数增多,数据库冗余会越来越严重,并且在高并发情况下,系统和数据库的交互开销可能导致系统的运行效率受到很大影响,影响用户体验。我们提出了增强系统鲁棒性且可保证系统运行效率的有效方法,并注重用户界面友好性和体验的真切性。

据此,我们定出了虚拟课堂的开发过程,具体如下。

⑴在3dMax 三维模型制作软件中制作虚拟课堂场景所需要的各种三维模型。当模型构建完成之后,在模型的材质贴图属性中添加对应的三维贴图,使模型呈现的视觉效果更真实,增强学生在使用系统时的沉浸感与真实感。

⑵再开发智能帮助模块,主要通过C#脚本组件以及NGUI用户界面插件来实现。NGUI遵循KISS 原则并用C#编写的Unity3D 插件,提供UI系统和事件通知框架,可利用NGUI 为实验设置提示文字与视频或3D 动画,并利用C# 脚本来指定提示触发的具体时机。视频提示通过指定按键实现,用户可以自定义触发视频提示的案件;当系统检测到用户指定案件输入事件发生时,将通过调用视频组件的方法,首先获取其Video 组件,然后调用play 方法触发视频或3D 动画播放。

⑶为了实现教学的针对性和有效性,我们提出了一种权限动态调整算法,为不同的学习者赋予不同的学习与实验权限。在虚拟场景内综合学生成绩与学生课堂进度等因素计算出的权限优先值T最小的对应虚拟角色将优先分配权限。学生角色a的权限优先值计算公式如下:

⑷通过基本的GUI 实现UI 交互界面。GUI 包含了面板、按钮、画布、输入框等属性,首先利用GUI 完成UI 交互的纯界面,然后为GUI 添加C#脚本组件,使UI可以获得用户的输入,例如登陆时的密码框输入信息等等,最终实现UI交互界面。

6 结束语

大数据可视化、大数据可视分析是理解和洞察大数据本质意义的重要途径,是体现大数据价值的关键。我们给出了大数据分析过程的认知模型、高维数据的数据分析及呈现方法,说明了大规模数据人机协同的数据可视分析以及基于可视化的数据理解与可用性分析评估方法。基于并行实时渲染的大规模无缝拼接显示技术、数据可视化的多体感交互技术、大屏的视频点播技术以及面向大数据可视化的全景拼接与显示等技术给出了大数据可视化教学系统架构;利用Unity3D 的GUI 开发用户UI 界面及智能帮助模块,通过C#脚本组件开发了针对现有大数据可视化的虚拟课堂。从而解决了传统课堂教学当中的诸多缺陷,为学生提供了高沉浸式学习体验,提升了学生的学习兴趣和效率,并且可进一步增强他们对于大数据本质的洞察和理解。未来,我们将开发更多适合中本贯通学生的大数据可视化教学与实验内容。

猜你喜欢
教学系统降维全景
混动成为降维打击的实力 东风风神皓极
基于Unity的计算机硬件组装仿真教学系统设计
戴上耳机,享受全景声 JVC EXOFIELD XP-EXT1
降维打击
多地远程互动同步教学系统的设计与实现
全景敞视主义与侦探小说中的“看”
从5.1到全景声就这么简单 FOCAL SIB EVO DOLBY ATMOS
全景搜索
基于交互式双板教学系统的高中地理教学研究
汽车配件营销实践教学系统开发