【技术实现步骤摘要】
基于流畅度提升的三维场景流数据播放控制方法和设备
[0001]本专利技术实施例涉及图像处理
,尤其涉及一种基于流畅度提升的三维场景流数据播放控制方法和设备
。
技术介绍
[0002]数字孪生可视化作为一种重要的数字化手段被深度运用到智慧城市的建设中,近几年数字孪生这个概念也越来越受到了前所未有的关注
。Unreal Engine
游戏引擎(后文简称
UE
)是目前运用范围最广,整体运用程度最高,次世代画面标准最高的一款游戏引擎,具有强大的“场景表现力”。
一方面通过实时动态的渲染,可以构建丰富精细的场景表现;另一方面强大的物理引擎可以真实模拟现实世界的运行规则,为数字孪生提供了强有力的支撑
。
数字孪生工程项目由大量的真实数据或数据流支撑其运行,但
UE
并不具备自动化的数据处理分析和应用能力
。
因此,开发一种基于流畅度提升的三维场景流数据播放控制方法和设备,可以有效克服上述相关技术中的缺陷,就成为业界亟待解决的技术问题
。
技术实现思路
[0003]针对现有技术存在的上述问题,本专利技术实施例提供了一种基于流畅度提升的三维场景流数据播放控制方法和设备
。
[0004]第一方面,本专利技术的实施例提供了一种基于流畅度提升的三维场景流数据播放控制方法,包括:将数据读入内存,分析数据并且以设备唯一标识符为主键,内存建立由数据时间戳排序的线性表映射关系;引入数据处理函数,数据处理函 ...
【技术保护点】
【技术特征摘要】
1.
一种基于流畅度提升的三维场景流数据播放控制方法,其特征在于,包括:将数据读入内存,分析数据并且以设备唯一标识符为主键,内存建立由数据时间戳排序的线性表映射关系;引入数据处理函数,数据处理函数用于在不破坏控制器主体逻辑且不更改控制器代码的基础上对预定数据进行处理,附加预定业务逻辑;创建并使用部分原始数据初始化数据处理线程,由主线程管理初始化后的数据处理线程的生命周期;使用预设起始播放时间戳传入实例化后的数据处理线程对象,将实例化后的数据处理线程对象标记为第0次同步,将所有锁标记为异步状态后执行创建,启动数据处理线程;在数据处理线程中对数据加锁,如果成功加锁,则进入数据处理流程,并进行单个信息或设备的计算;在单个信息或设备的计算完成后对数据解锁,在主线程的每一帧中与计算线程进行同步
。2.
根据权利要求1所述的基于流畅度提升的三维场景流数据播放控制方法,其特征在于,在所述内存建立由数据时间戳排序的线性表映射关系之后,还包括:若在运行初期缺乏原始数据,则使用空数据
nullptr
初始化数据处理线程并在之后的线程同步中对数据进行增补
。3.
根据权利要求2所述的基于流畅度提升的三维场景流数据播放控制方法,其特征在于,所述数据处理函数用于在不破坏控制器主体逻辑且不更改控制器代码的基础上对预定数据进行处理,附加预定业务逻辑,包括:在数据处理前执行函数
ShouldDoCalculate
,如果返回
false
则不进行本次数据处理;在索引阶段,如果当前时间比经过排序的第一个时间戳还早,则执行函数
DataTimestampTooNew
,如果返回
false
则不进行本次数据处理;在索引阶段,如果当前时间比经过排序的最后一个时间戳还晚,则执行函数
DataTimestampTooOld
,如果返回
false
则不进行本次数据处理;在计算结束后执行函数
OnCalculationCompleted。4.
根据权利要求3所述的基于流畅度提升的三维场景流数据播放控制方法,其特征在于,所述初始化后的数据处理线程的生命周期为数字孪生可视化系统实例构造后到数字孪生可视化系统实例析构前
。5.
根据权利要求4所述的基于流畅度提升的三维场景流数据播放控制方法,其特征在于,在所述启动数据处理线程之后,还包括:数据处理线程进入线程循环,开始根据由时间戳排序的数据线性表处理数据
。6.
根据权利要求5所述的基于流畅度提升的三维场景流数据播放控制方法,其特征在于,所述并进行单个信息或设备的计算,包括:在单个信息或设备的计算的过程中,计算插值使用的
Alpha
值:
Alpha=(T
‑
D[i].timestamp)/(D[i+1].timestamp
‑
D[i].timestamp)
其中,
D[i]
为第
i
【专利技术属性】
技术研发人员:谢帅,王鹏飞,张文喆,史绍轶,
申请(专利权)人:天津幻彩科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。