CN108681439B - 基于帧率控制的均匀显示方法 - Google Patents

基于帧率控制的均匀显示方法 Download PDF

Info

Publication number
CN108681439B
CN108681439B CN201810534164.0A CN201810534164A CN108681439B CN 108681439 B CN108681439 B CN 108681439B CN 201810534164 A CN201810534164 A CN 201810534164A CN 108681439 B CN108681439 B CN 108681439B
Authority
CN
China
Prior art keywords
queue
time
frame
current frame
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810534164.0A
Other languages
English (en)
Other versions
CN108681439A (zh
Inventor
康健
杨兰
李笑寒
王志军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Weisheng Tyco Technology Co ltd
Original Assignee
Beijing Weisheng Tyco Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Weisheng Tyco Technology Co ltd filed Critical Beijing Weisheng Tyco Technology Co ltd
Priority to CN201810534164.0A priority Critical patent/CN108681439B/zh
Publication of CN108681439A publication Critical patent/CN108681439A/zh
Application granted granted Critical
Publication of CN108681439B publication Critical patent/CN108681439B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

基于帧率控制的均匀显示方法,包括:获取当前帧F到达显示窗口的时间tbegin,显示等待队列长度queue_size,当前帧帧号为q;判断队列长度是否大于限值queue_lim,若大于则丢弃当前帧F,否则继续;获取当前帧在显示窗口中渲染结束的时间tend,计算当前帧显示时间td;计算滑动窗口中显示的平均时长tave,计算滞后时间tlag;根据当前显示等待队列队长度情况进行显示帧率的动态调节;计算睡眠时间,当前帧睡眠结束后,执行下一帧,循环操作,该发明在不改进SLAM系统算法的前提下,使用均匀显示方法,通过动态调节机制来提高用户视觉体验。

Description

基于帧率控制的均匀显示方法
技术领域
本发明涉及SLAM显示方法技术领域,尤其是一种基于帧率控制的 均匀显示方法。
背景技术
SLAM技术经过三十多年的发展,现已成为无人机、自动驾驶、 机器人和增强现实领域的重要技术,而对于增强现实这类对用户视觉 体验要求极高的技术来说,SLAM的显示效果就显得至关重要;无论 是基于特征点法还是基于直接法的SLAM系统,都在前端处理完毕后 直接送入显示窗口进行显示,这样的机制主要存在以下不足:
1.每一帧在显示窗口的显示时间完全由这一帧的渲染时间决定, 会导致显示窗口没有固定帧率,系统渲染快则显示快,渲染慢则显示 慢,明显的快慢改变是人眼可感受的。
2.处理器的性能在SLAM系统运行过程中会有波动,若此时处理 器性能欠佳,则会出现连续渲染时间过长,导致被SLAM系统处理完 毕的帧无法及时显示而被丢弃,若连续丢帧则会出现延迟现象;
3.原技术中,每帧图像的显示时长为该帧的渲染时长,而渲染时 长受当前帧图片质量(分辨率)、虚拟物体模型大小、虚拟模型类型 影响(若为动态模型则每一帧需要渲染的模型大小都不一致),会产 生波动。
发明内容
为了解决上述技术问题,本发明提供一种基于帧率控制的均匀显 示方法,该方法在不改进SLAM系统算法的前提下,使用均匀显示方 法,通过动态调节机制来提高用户视觉体验。
基于帧率控制的均匀显示方法,包括:
步骤一、获取当前帧F到达显示窗口的时间tbegin,显示等待队列 长度queue_size,当前帧帧号为q;
进一步的,当前帧达到显示窗口时,进行数据获取,包括当前帧 到达的时刻记为tbegin,当前显示队列的队长queue_size,当前帧帧号 q;
步骤二、判断队列长度是否大于限值queue_lim,若大于则丢弃 当前帧F,否则继续;
进一步的,队列长度限值queue_lim可设置,默认为队列容量, 当系统渲染过慢时,会导致大量帧在队列中等待,为避免出现延时, 当队列长度大于队列限值时,对当前帧不进行渲染直接丢弃;否则执 行步骤3;
步骤三、获取当前帧在显示窗口中渲染结束的时间tend,计算当 前帧显示时间;
进一步的,获取当前帧在显示窗口中渲染结束的时间tend,计算 当前帧显示时间td
tdend-tbegin
步骤四、计算滑动窗口中显示的平均时长tave,计算滞后时间tlag
进一步的,设置一个长度为n的滑动窗口,窗口中装有帧号从 q-n+1到q-1的每一帧的总显示时间以及当前帧q的渲染时间, 对滑动窗口内的所有时间计算平均值tave
Figure BDA0001677380270000021
并计算滞后时间,
Figure BDA0001677380270000022
tlag<0时,令tlag=0。
步骤五、根据当前显示等待队列队长度情况进行显示帧率的动态 调节;
进一步的,假设系统帧率一直保持初始设置,那么当系统处理时 间长时,图像进入队列的间隔长,会出现队列为空,此时没有图像可 以显示,出现卡顿;当系统处理时间短时,图像进入队列间隔短,会 出现队列满,此时新的图像无法进入队列会被丢弃,出现延迟。
Figure BDA0001677380270000031
时,增加每秒显示的帧数至fps+Δ, 以减少延迟;
Figure BDA0001677380270000032
时,减少每秒显示的帧数至fps-Δ, 以减少卡顿;
记动态调节后的帧率为fps′;
步骤六、计算睡眠时间,计算公式如下:
Figure BDA0001677380270000033
步骤七、当前帧睡眠结束后,执行下一帧,循环操作;
进一步的,对当前帧进行睡眠,若ts<0,则对当前帧不进行睡 眠;每帧的总显示时间:
Figure BDA0001677380270000034
进一步的,本发明通过显示等待队列来均匀显示时间,通过动态 调节机制解决系统不稳定问题;通过滑动窗口感知当前系统性能,调 节睡眠时间;
备注:参数列表
Figure BDA0001677380270000035
Figure BDA0001677380270000041
本发明的有益效果:
1.成功解决不同模型或不同图片分辨率所带来的渲染时间不一 致问题,避免以上问题导致显示窗口可能出现卡顿或延时;2.改动代 价小,以ORB_SLAM2为例,所做的改动只占整个工程1%;
3.方法适用性广,本方法能够通过动态调节机制适应不同处理器、 不同SLAM系统,并且可以解决初始显示帧率设置不合理的问题;
4.根据当前系统性能,动态调节显示帧率,优化显示效果。
附图说明
图1是本发明基于帧率控制的均匀显示方法之总体流程示意图
图2是本发明基于帧率控制的均匀显示方法之显示等待队列示 意图
具体实施方式
下面,参考附图1至图2所示,基于帧率控制的均匀显示方法, 包括:
步骤一、获取当前帧F到达显示窗口的时间tbegin,显示等待队列 长度queue_size,当前帧帧号为q;
进一步的,当前帧达到显示窗口时,进行数据获取,包括当前帧 到达的时刻记为tbegin,当前显示队列的队长queue_size,当前帧帧号 q;
步骤二、判断队列长度是否大于限值queue_lim,若大于则丢弃 当前帧F,否则继续;
进一步的,队列长度限值queue_lim可设置,默认为队列容量, 当系统渲染过慢时,会导致大量帧在队列中等待,为避免出现延时, 当队列长度大于队列限值时,对当前帧不进行渲染直接丢弃;否则执 行步骤3;
步骤三、获取当前帧在显示窗口中渲染结束的时间tend,计算当 前帧显示时间;
进一步的,获取当前帧在显示窗口中渲染结束的时间tend,计算 当前帧显示时间td
td=tend-tbegin
步骤四、计算滑动窗口中显示的平均时长tave,计算滞后时间tlag
进一步的,设置一个长度为n的滑动窗口,窗口中装有帧号从 q-n+1到q-1的每一帧的总显示时间以及当前帧的渲染时间,对 滑动窗口内的所有时间计算平均值tave
Figure BDA0001677380270000051
并计算滞后时间,
Figure BDA0001677380270000052
tlag<0时,令tlag=0。
步骤五、根据当前显示等待队列队长度情况进行显示帧率的动态 调节;
进一步的,假设系统帧率一直保持初始设置,那么当系统处理时 间长时,图像进入队列的间隔长,会出现队列为空,此时没有图像可 以显示,出现卡顿;当系统处理时间短时,图像进入队列间隔短,会 出现队列满,此时新的图像无法进入队列会被丢弃,出现延迟。
Figure BDA0001677380270000061
时,增加每秒显示的帧数至fps+Δ, 以减少延迟;
Figure BDA0001677380270000062
时,减少每秒显示的帧数至fps-Δ, 以减少卡顿;
记动态调节后的帧率为fps′;
步骤六、计算睡眠时间,计算公式如下:
Figure BDA0001677380270000063
步骤七、当前帧睡眠结束后,执行下一帧,循环操作;
进一步的,对当前帧进行睡眠,若ts<0,则对当前帧不进行睡 眠;每帧的总显示时间:
Figure BDA0001677380270000064
进一步的,本发明通过显示等待队列来均匀显示时间,通过动态 调节机制解决系统不稳定问题;通过滑动窗口感知当前系统性能,调 节睡眠时间;
进一步的,SLAM系统处理完毕的帧依次进入队尾,显示窗口从 队头开始读取图像;
为了更好的说明本发明的设计原理,现通过具体优选实施例,举 例说明我方发明的设计工作原理及方法过程:
首先,实例背景选取:ORB_SLAM2结合OSG3.4.0进行虚拟物体 与真实场景的结合显示;
其次,系统设置:队列长度限值queue_lim=5;滑动窗口长 度n=20;调整帧数Δ=3;fps=30;时间单位为秒;
最后,实例执行过程:
1.当前帧帧号为21,tbegin=6.05697e+09,queue_size=2;
2.判断queuesize=2<queue_lim=5,继续执行;
3.当帧号为21的帧渲染结束后,读取渲染结束的时刻tend= 6.05698e+09,计算当前帧显示时间为td=0.01(时间戳差值单位 为微秒);
4.计算帧号为1-21之间的所有帧总显示时间的平均值
Figure BDA0001677380270000071
计 算滞后时间:
Figure BDA0001677380270000072
5.进行动态调节,
Figure BDA0001677380270000073
因此 不需要进行动态调节,保持原帧率即可;
6.计算睡眠时间
Figure BDA0001677380270000074
帧号为21的帧的睡眠时间为
Figure BDA0001677380270000075
7.睡眠当前帧,睡眠结束后从队列中读取帧号为22的帧;
以上公开的仅为本申请的一个具体实施例,但本申请并非局限于 此,任何本领域的技术人员能思之的变化,都应落在本申请的保护范 围内。

Claims (3)

1.基于帧率控制的均匀显示方法,其特征在于,包括:
步骤一、获取当前帧F到达显示窗口的时间tbegin,显示等待队列长度queue_size,当前帧帧号为q;
当前帧达到显示窗口时,进行数据获取,包括当前帧到达的时刻记为tbegin,当前显示队列的队长queue_size,当前帧帧号q;
步骤二、判断队列长度是否大于限值queue_lim,若大于则丢弃当前帧F,否则继续;
步骤三、获取当前帧在显示窗口中渲染结束的时间tend,计算当前帧显示时间td
td=tend-tbegin
步骤四、计算滑动窗口中显示的平均时长tave,计算滞后时间tlag
设置一个长度为n的滑动窗口,窗口中装有帧号从q-n+1到q-1的每一帧的总显示时间以及当前帧的渲染时间,对滑动窗口内的所有时间计算平均值tave
Figure FDA0002884954960000011
并计算滞后时间,
Figure FDA0002884954960000012
tlag<0时,令tlag=0;
步骤五、根据当前显示等待队列队长度情况进行显示帧率的动态调节;
假设系统帧率一直保持初始设置,那么当系统处理时间长时,图像进入队列的间隔长,会出现队列为空,此时没有图像可以显示,出现卡顿;当系统处理时间短时,图像进入队列间隔短,会出现队列满,此时新的图像无法进入队列会被丢弃,出现延迟;
Figure FDA0002884954960000013
时,增加每秒显示的帧数至fps+Δ,以减少延迟;
Figure FDA0002884954960000021
时,减少每秒显示的帧数至fps-Δ,以减少卡顿;
记动态调节后的帧率为fps
步骤六、计算睡眠时间,计算公式如下:
Figure FDA0002884954960000022
步骤七、当前帧睡眠结束后,执行下一帧,循环操作;
对当前帧进行睡眠,若ts<0,则对当前帧不进行睡眠;每帧的总显示时间:
Figure FDA0002884954960000023
2.根据权利要求1所述的基于帧率控制的均匀显示方法,其特征在于,所述步骤二中队列长度限值queue_lim可设置,默认为队列容量,当系统渲染过慢时,会导致大量帧在队列中等待,为避免出现延时,当队列长度大于队列限值时,对当前帧不进行渲染,直接丢弃;否则执行步骤3。
3.根据权利要求1-2任一项所述的基于帧率控制的均匀显示方法,其特征在于,通过显示等待队列来均匀显示时间;通过动态调节机制解决系统不稳定问题;通过滑动窗口感知当前系统性能,调节睡眠时间。
CN201810534164.0A 2018-05-29 2018-05-29 基于帧率控制的均匀显示方法 Active CN108681439B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810534164.0A CN108681439B (zh) 2018-05-29 2018-05-29 基于帧率控制的均匀显示方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810534164.0A CN108681439B (zh) 2018-05-29 2018-05-29 基于帧率控制的均匀显示方法

Publications (2)

Publication Number Publication Date
CN108681439A CN108681439A (zh) 2018-10-19
CN108681439B true CN108681439B (zh) 2021-04-27

Family

ID=63808820

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810534164.0A Active CN108681439B (zh) 2018-05-29 2018-05-29 基于帧率控制的均匀显示方法

Country Status (1)

Country Link
CN (1) CN108681439B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110324585B (zh) * 2019-07-15 2021-05-04 清华大学 基于高速移动平台的slam系统的实现方法
CN113011231B (zh) * 2019-12-20 2023-07-07 舜宇光学(浙江)研究院有限公司 分类滑窗方法和slam定位方法及其系统和电子设备
CN115225940B (zh) * 2021-04-15 2023-07-28 青岛海信宽带多媒体技术有限公司 一种机顶盒及机顶盒页面显示方法
CN113350781B (zh) * 2021-06-28 2022-12-23 青岛海信传媒网络技术有限公司 一种显示设备及游戏模式切换方法
CN113407138B (zh) * 2021-06-30 2022-07-29 腾讯科技(深圳)有限公司 应用程序的画面处理方法、装置、电子设备及存储介质
CN116916095B (zh) * 2023-09-12 2024-01-12 深圳云天畅想信息科技有限公司 一种云视频的平滑显示方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103871366A (zh) * 2014-04-02 2014-06-18 杭州士兰控股有限公司 用于led显示器的灰度显示驱动方法及装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120274856A1 (en) * 2011-04-27 2012-11-01 Purushotam Kumar Frame List Processing for Multiple Video Channels
CN102724559A (zh) * 2012-06-13 2012-10-10 天脉聚源(北京)传媒科技有限公司 一种音视频编码同步方法和系统
US8605217B1 (en) * 2012-10-30 2013-12-10 Texas Instruments Incorporated Jitter cancellation for audio/video synchronization in a non-real time operating system
CN104144312B (zh) * 2013-05-09 2018-06-05 腾讯科技(深圳)有限公司 一种视频处理方法和相关装置
CN103345371B (zh) * 2013-05-31 2016-06-01 沈阳东软熙康医疗系统有限公司 一种通过显示屏平滑显示大数据量的方法
CN103873828B (zh) * 2014-03-11 2017-04-19 浙江宇视科技有限公司 实况流送显控制方法及装置
US10127002B2 (en) * 2014-04-10 2018-11-13 Screenovate Technologies Ltd. Method for real-time multimedia interface management
US9466089B2 (en) * 2014-10-07 2016-10-11 Aspeed Technology Inc. Apparatus and method for combining video frame and graphics frame
CN104869461A (zh) * 2015-05-22 2015-08-26 南京创维信息技术研究院有限公司 视频数据处理系统及方法
CN106612536A (zh) * 2015-10-21 2017-05-03 中国科学院沈阳自动化研究所 基于前导侦听的认知传感网介质访问控制方法
CN107436700B (zh) * 2016-05-26 2020-04-14 华为终端有限公司 数据处理方法及装置
CN106296566B (zh) * 2016-08-12 2019-05-17 南京睿悦信息技术有限公司 一种虚拟现实移动端动态时间帧补偿渲染系统及方法
CN106713855B (zh) * 2016-12-13 2020-01-07 深圳英飞拓科技股份有限公司 一种视频播放方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103871366A (zh) * 2014-04-02 2014-06-18 杭州士兰控股有限公司 用于led显示器的灰度显示驱动方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
H.264高清解码器帧率控制显示系统的SOC实现;覃兰清周开伦林涛;《广播电视网络》;20120229(第02期);第10-12、18页 *
New 2-D/3-D Switchable Pixel Circuit to Achieve Uniform OLED Luminance for High-Speed AMOLED Displays;Chih-Lung Lin; Po-Chun Lai; Po-Cheng Lai; Po-Syun Chen;《IEEE Journal of the Electron Devices Society》;20160607;第4卷;第436-440页 *

Also Published As

Publication number Publication date
CN108681439A (zh) 2018-10-19

Similar Documents

Publication Publication Date Title
CN108681439B (zh) 基于帧率控制的均匀显示方法
WO2020108082A1 (zh) 视频处理方法、装置、电子设备和计算机可读介质
US9407814B2 (en) Approach for camera control
US8754904B2 (en) Virtualization method of vertical-synchronization in graphics systems
WO2017092592A1 (zh) 一种图像融合的方法、装置和设备
CN110475065B (zh) 图像处理的方法、装置、电子设备及存储介质
US9407797B1 (en) Methods and systems for changing duty cycle to reduce judder effect
CN109285211B (zh) 画面渲染方法、装置、终端及存储介质
CN109165103B (zh) 帧率控制方法、装置、终端及存储介质
WO2023174216A1 (zh) 视频分辨率自适应调节方法、装置、设备和存储介质
US10957020B2 (en) Systems and methods for frame time smoothing based on modified animation advancement and use of post render queues
US11006044B1 (en) Power-efficient dynamic electronic image stabilization
US8983188B1 (en) Edge-aware smoothing in images
EP3348965A1 (en) Method, device for navigation graph plotting and storage medium thereof
EP3993383A1 (en) Method and device for adjusting image quality, and readable storage medium
TWI792535B (zh) 圖形處理方法和相關眼動追蹤系統
CN111479059A (zh) 拍照处理方法、装置、电子设备及存储介质
WO2020000521A1 (zh) 全景视频的画面质量显示方法及装置
WO2021169583A1 (zh) 虚拟现实显示设备及其控制方法
CN111798484B (zh) 基于事件相机的连续稠密光流估计方法及系统
WO2023010796A1 (zh) 图像处理方法及相关装置
CN113810755B (zh) 全景视频预览的方法、装置、电子设备及存储介质
CN110933493A (zh) 视频绘制系统、方法及计算机可读存储介质
CN112734653A (zh) 一种视频图像的运动平滑处理方法、装置、设备及存储介质
CN113192169B (zh) 动态调整LOD Scale的图像显示优化方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant