CN109819232B - 一种图像处理方法及图像处理装置、显示装置 - Google Patents
一种图像处理方法及图像处理装置、显示装置 Download PDFInfo
- Publication number
- CN109819232B CN109819232B CN201910122830.4A CN201910122830A CN109819232B CN 109819232 B CN109819232 B CN 109819232B CN 201910122830 A CN201910122830 A CN 201910122830A CN 109819232 B CN109819232 B CN 109819232B
- Authority
- CN
- China
- Prior art keywords
- frame
- image
- rendering
- average
- images
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 47
- 238000009877 rendering Methods 0.000 claims abstract description 398
- 230000033001 locomotion Effects 0.000 claims abstract description 59
- 238000000034 method Methods 0.000 claims description 48
- 238000012790 confirmation Methods 0.000 claims description 3
- 230000036544 posture Effects 0.000 description 24
- 210000003128 head Anatomy 0.000 description 22
- 238000005516 engineering process Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 208000002173 dizziness Diseases 0.000 description 9
- 230000009286 beneficial effect Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 238000007906 compression Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 208000012886 Vertigo Diseases 0.000 description 3
- 231100000889 vertigo Toxicity 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G06T3/18—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/04—Changes in size, position or resolution of an image
- G09G2340/0407—Resolution change, inclusive of the use of different resolutions for different screen areas
- G09G2340/0435—Change or adaptation of the frame rate of the video stream
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明公开一种图像处理方法及图像处理装置、显示装置,涉及图像处理技术领域,提高图形处理器的利用效率,并减少VR显示设备所显示的VR图像延时。所述图像处理方法包括统计M帧图像的渲染时长;判断M帧图像的渲染时长是否匹配运动姿态要求;如果是,控制每帧图像的渲染起始时刻与对应帧图像的扭曲处理起始时刻之间的差值Δt小于等于预设差值Δtaim;否则,设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求。所述图像处理装置包括上述图像处理方法。本发明提供的图像处理方法及图像处理装置、显示装置用于图像处理中。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种图像处理方法及图像处理装置、显示装置。
背景技术
虚拟现实技术(Virtual Reality,缩写为VR)是一种可以创建和体验虚拟世界的计算机仿真方法。在进行VR显示时,用户可以体沉浸到VR显示所提供的沉浸式环境中,给用户带来了比较真实的使用体验。
为了减少VR图像延时,一般采用异步时间扭曲(Asynchronous TimeWarp,缩写为ATW)技术是一种将图像渲染过程与时间扭曲(Timewarp,缩写为TW)处理过程安排在两个线程的中间帧生成方法,其可有效降低图像延时,减轻VR图像延时所产生的头部眩晕问题。目前,VR显示设备所提供的沉浸式环境所展示的场景复杂度的比较低时,其所需要的渲染时间比较短,但图形处理器完成图像渲染的时刻比较晚,导致下一帧的TW处理过程的等待时间比较长;而VR显示设备所提供的沉浸式环境所展示的场景复杂度的比较高时,其所需要的渲染时间比较长,导致图形处理器渲染图像的时间比较长,使得图像的时间扭曲(Timewarp,缩写为TW)处理及时进行,导致VR显示设备所显示的VR图像延时,使得用户在头部姿态变化较快时,用户所看到的VR图像发生抖动,进而出现头部眩晕的问题。
发明内容
本发明的目的在于提供一种图像处理方法及图像处理装置、显示装置,以提高图形处理器的利用效率,并减少VR显示设备所显示的VR图像延时。
为了实现上述目的,本发明提供一种图像处理方法,该图像处理方法包括:
统计M帧图像的渲染时长;
判断M帧图像的渲染时长是否匹配运动姿态要求;
如果是,控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim;
否则,设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求。
与现有技术相比,本发明提供的图像处理方法中,在M帧图像的渲染时长是否匹配运动姿态要求时,当前帧的TW处理所处理的渲染图像为上一帧所渲染的图像,用户头部姿态变化较快时,用户所看到的VR图像不会发生抖动,此时可控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim,以减少图像扭曲处理的等待时间,从而提高图形处理器的利用效率。而在M帧图像的渲染时长不匹配运动姿态要求时,相邻两帧的TW处理的渲染图像相同,使得在用户头部姿态变化较快时,用户所看到的VR图像发生抖动,导致用户出现头部眩晕的问题;基于此,设定系统,使得每帧图像的渲染时长匹配运动姿态要求,这样就能够减轻VR图像延时所带来的头部眩晕问题。
本发明还提供了一种图像处理装置,包括:
时长统计模块,用于统计M帧图像的渲染时长;
匹配判断模块,用于判断M帧图像的渲染时长是否匹配运动姿态要求;
第一调制模块,用于在M帧图像的渲染时长匹配运动姿态要求时,控制每帧图像渲染的起始时刻与对应帧图像的扭曲处理起始时刻之间的差值Δt小于等于预设差值Δtaim;
第二调制模块,用于设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求。
与现有技术相比,本发明提供的图像处理装置的有益效果与上述图像处理方法的有益效果相同,在此不做赘述。
本发明还提供了一种计算机存储介质,用于储存一个或多个计算机软件指令,其包含用于执行上述图像处理方法所设计的程序。
与现有技术相比,本发明提供的计算机存储介质的有益效果与上述图像处理方法的有益效果相同,在此不做赘述。
本发明还提供了一种图像处理装置,包括处理器和存储器;
所述存储器用于储存一个或多个计算机软件指令,其包含用于执行上述图像处理方法所设计的程序;
所述处理器用于根据所述一个或多个计算机软件指令执行上述图像处理方法。
与现有技术相比,本发明提供的图像处理装置的有益效果与上述图像处理方法的有益效果相同,在此不做赘述。
本发明还提供了一种显示装置,包括上述图像处理装置。
与现有技术相比,本发明提供的显示装置的有益效果与上述图像处理方法的有益效果相同,在此不做赘述。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为现有技术中第一种基于ATW的图像处理示意图一;
图2为现有技术中第一种基于ATW的图像处理示意图二;
图3为现有技术中第一种基于ATW的图像处理示意图三;
图4为现有技术中第二种基于ATW的图像处理示意图;
图5为本发明实施例提供的第一种基于ATW的图像处理示意图一;
图6为本发明实施例提供的第一种基于ATW的图像处理示意图二;
图7为本发明实施例提供的第一种基于ATW的图像处理示意图三;
图8为本发明实施例提供的第一种基于ATW的图像处理示意图四;
图9为本发明实施例提供的第一种基于ATW的图像处理示意图五;
图10为本发明实施例提供的第二种基于ATW的图像处理示意图;
图11为本发明实施例提供的图像处理方法流程图一;
图12为本发明实施例提供的图像处理方法流程图二;
图13为本发明实施例提供的图像处理方法流程图三;
图14为本发明实施例提供的图像处理方法流程图四;
图15为本发明实施例提供的图像处理方法流程图五;
图16为本发明实施例提供的图像处理装置的流程图;
图17为本发明实施例提供的图像处理终端的硬件架构图。
附图标记:
100-时长统计模块, 200-帧频选择模块;
300-匹配判断模块, 400-状态确认模块;
500-更新控制模块, 600-第一调制模块;
700-第二调制模块, 800-时长判断模块;
910-收发器, 920-存储器;
930-处理器, 940-总线;
VsyncN-1-第N-1帧垂直同步信号;
VsyncN-1第N帧垂直同步信号;
VsyncN+1-第N+1帧垂直同步信号;
VsyncN+2-第N+2帧垂直同步信号;
VsyncN+3-第N+3帧垂直同步信号。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有VR显示设备的显卡负责渲染VR图像,显示器负责显示显卡所渲染的VR图像;当显卡的渲染速度越快,VR图像的帧数越高,显卡传输给显示器的VR图像也就越多,当显示器的刷新率较高时,显示器所显示的VR图像也就越多。具体的,当图像的帧数高于刷新率时,显卡所输出帧速度高于显示器的刷新速度,导致显示器不能及时处理输出的图像帧,使得显示器所显示各帧图像出现撕裂;同时,在显示器不能及时处理输出的图像帧时,显卡所输出的VR图像无法被显示器完全显示,导致丢帧问题,例如:当显卡每秒渲染了100张图(每秒100帧图像),而显示器每秒只能显示60张(显示器的刷新率为60Hz),那么用户仅可看到显卡所渲染的60张图像,剩余40张图像都未能被显示器显示,导致显卡在一定程度上做了无用功,使得显示器所显示的图像出现丢帧问题。当图像的帧数低于刷新率时,显示器不仅可以完全显示显卡所渲染的图像,而且一帧图像还至少连续两帧被显示器显示,这种现象被称为“图像抖动现象”。因此,在显示器的刷新率和VR图像的帧数相匹配时,屏幕可显示流畅的VR图像,给用户带来较高的视觉体验。
为了配合VR显示设备提供的沉浸式环境所展示的某些场景,用户会通过头部运动与VR显示设备进行人机交互,以使得用户享受到真实的使用体验。由于VR显示设备的图形处理器的渲染能力的限制,在沉浸式环境所展示的某些场景比较复杂的情况下,如果用户的头部运动速度比较快,且图像的帧数低于刷新率时,如果出现图像抖动现象,显示器所显示的图像出现延迟问题。例如:当用户保持头部运动静止时,图像抖动现象并不会给用户带来不适;当用户头部从旧位置转动到新位置时,图像抖动现象使得显示器所显示的当前帧图像仍然为用户头部在旧位置的图像。此时,用户的大脑反应已切换到新位置,但眼睛所接收到的图像信息仍然为是旧位置的图像信息,此时眼睛所接收的图像信息与大脑所认知的图像信息不匹配,会使得用户产生眩晕的感觉;而且,头部转动角度越大,这种眩晕感会愈发强烈。
时间扭曲(Time warp,简称TW)是一种图像帧修正的技术,其通过对上一帧图像进行扭曲处理,获得当前帧图像,并将所获得的当前帧图像传送给显示器,以降低图像延迟问题所导致的头部眩晕。一般来说,扭曲处理所采用的方法为基于方向的扭曲处理技术,其可纠正头部转动变化姿势,这种扭曲处理技术对于二维图像的扭曲效果比较明显,且不需要占用太多系统资源。例如:对于复杂场景来说,基于方向的扭曲处理技术可以在较少数据处理量的基础上生成当前帧图像。具体的,在当前帧垂直同步信号接收前,显卡需要完成上一帧图像的TW处理,获得当前帧图像,这样才能保证当前帧同步信号接收后,显示器可显示当前帧图像,避免在头部转动过程中发生图像延迟问题。也就是说,在一帧图像渲染时间内,需要依次完成当前帧图像渲染操作(渲染操作)和当前帧图像的TW处理操作(TW操作),以保证显示器在下一帧可显示经过TW处理的当前帧图像。
现有TW技术的图像渲染过程和时间扭曲过程在同一线程中进行,使得图像渲染过程和时间扭曲过程无法同时进行,如果显卡性能比较低,其在一帧渲染时间内无法依次完成当前帧图像渲染操作和当前帧图像TW处理操作。人们对TW技术进行改进,异步时间扭曲(Asynchronous TimeWarp,缩写为ATW)技术是一种中间帧生成技术,其不仅可以降低图像延时,解决头部眩晕的问题。而且还可以在显卡性能比较低的情况下,其在一帧渲染时间完成当前帧图像渲染操作和当前帧图像TW处理操作。具体而言,ATW技术是将渲染操作和TW操作安排在两个线程,以适配显卡性能,避免图像延迟,以减少图像抖动;将渲染操作所在线程定义为MRT线程,将TW操作所在线程定义为ATW线程。
一般技术中,对当前帧图像的渲染操作和对上一帧图像的TW处理在同一帧图像渲染时间的中间时刻开始执行;下面结合图1~图3为例进行说明。
图1~图3示出了第一种基于ATW的图像处理过程示意图,VsyncN-1、VsyncN、VsyncN+1、VsyncN+2、VsyncN+3分别代表第N-1帧垂直同步信号、第N帧垂直同步信号、第N-1帧垂直同步信号、第N帧垂直同步信号、第N+1帧垂直同步信号、第N+2帧垂直同步信号和第N+3帧垂直同步信号。将接收第N-1帧垂直同步信号的时刻定义为第N-1帧起始时刻,将接收第N帧垂直同步信号的时刻定义为第N-1帧结束时刻或者第N帧起始时刻,将接收第N+1帧垂直同步信号的时刻定义为第N帧结束时刻或者第N+1帧起始时刻,将接收第N+2帧垂直同步信号的时刻定义为第N+1帧结束时刻或者第N+2帧起始时刻,将接收第N+3帧垂直同步信号的时刻定义为第N+2帧结束时刻或者第N+3帧起始时刻。
将位于第N-1帧起始时刻和第N-1帧的结束时刻之间的中间时刻定义为第N-1帧中间时刻;在第N-1帧中间时刻,开始对第N-1帧图像进行渲染,同时对第N-2帧图像进行TW处理,获得第N-1帧图像(即经过图像处理的第N-2帧图像),以保证在第N帧起始时刻和第N帧结束时刻之间,显示器可在显示操作时显示第N-1帧图像(经过TW处理的第N-2帧图像)。将位于第N帧起始时刻和第N帧的结束时刻之间的中间时刻定义为第N帧中间时刻;在第N帧中间时刻,开始对第N帧图像进行渲染,同时对已经完成渲染的第N-1帧图像进行TW处理,获得第N帧图像(即经过图像处理的第N-1帧图像),以保证在第N+1帧起始时刻和第N+1帧结束时刻之间,显示器可在显示操作时显示第N帧图像(经过TW处理的第N-1帧图像)。将位于第N+1帧起始时刻和第N+1帧的结束时刻之间的中间时刻定义为第N+1帧中间时刻;在第N+1帧中间时刻,开始对第N+1帧图像进行渲染,同时对已经完成渲染的第N帧图像进行TW处理,获得第N+1帧图像(即经过图像处理的第N帧图像),以保证在第N+2帧起始时刻和第N+2帧结束时刻(即第N+3帧起始时刻)之间,显示器可在显示操作时显示第N+1帧图像(经过TW处理的第N帧图像)。
可以理解的是,每帧图像渲染时长不能超过相邻两帧起始时刻之间的差值,以保证显示器在每帧显示操作时所显示的图像内容不一样。例如:图1所示出的第N-1帧图像渲染时长、第N帧图像渲染时长、第N+1帧图像渲染时长均小于相邻两帧起始时刻之间差值的二分之一。图2和图3所示出的第N-1帧图像渲染时长、第N帧图像渲染时长、第N+1帧图像渲染时长均大于相邻两帧起始时刻之间差值的二分之一,小于相邻两帧起始时刻之间差值。
如果每帧图像渲染时长超过相邻两帧起始时刻的差值,那么显示器至少在连续两帧显示操作时所显示的图像内容相同,即出现上述图像延迟问题,导致用户在头部转动过程中出现眩晕等问题。例如:如图4所示,第N-1帧中间时刻开始第N-1帧图像渲染,第N-1帧图像渲染时长超过相邻两帧垂直同步信号,使得在第N帧中间时刻时,第N-1帧图像仍然没有完成渲染,这导致在第N帧中间时刻无法进行第N帧图像渲染,只能在第N+1帧中间时刻开始第N帧图像渲染,导致显卡对图像的渲染不连续。同时,由于在第N帧中间时刻时,第N-1帧图像仍然没有完成渲染,使得在第N帧中间时刻只能对第N-2帧图像开始进行TW处理,导致显示器在第N帧显示操作和第N+1帧显示操作均显示经过TW处理的第N-2帧图像。同理,第N帧图像渲染时长超过相邻两帧起始时刻的差值时,参考第N-1帧图像渲染的分析,相应的显示器在第N+2帧显示操作时显示第N-1帧图像。
可以理解的是,在进行VR图像渲染时,需要根据VR图像的渲染参数渲染VR图像。VR图像渲染参数包括渲染分辨率、视场角及用户姿态信息。其中,视场角和用户姿态信息可以实现VR图像的纹理渲染,尤其是对于场景复杂的VR图像,而场景复杂度和渲染分辨率对于VR图像渲染时间起着决定性的作用。在进行TW处理时,需要根据用户姿态信息处理图像信息,以实现对图像信息的时间扭曲处理。
发明人对60fps和75fps的显示设备的图像处理进行分析发现:图像渲染操作所需时间在图像处理时间所占用得的比例比较,扭曲处理TW操作处理时间的统计结果,发现大部分的时间都耗费在渲染阶段,而TW操作所需时间在图像处理时间所占用的比例极小。基于此,本发明实施例提供了一种图像处理控制方法及图像处理装置,以自适应的调节显卡的帧频,以提高图形处理器的利用效率,并减少VR显示设备所显示的VR图像延时。下面结合附图详细说明。
如图5~图11所示,本发明实施例提供的图像处理方法包括如下步骤:
步骤S100:统计M帧图像的渲染时长,M可以根据统计需要设定大小,但为了所统计的结果更为准确,M一般为大于等于10的整数,如M=30。
步骤S400:判断M帧图像的渲染时长是否匹配运动姿态要求。
如果是,说明显卡当前所处理的图像信息比较简单,所需的图像渲染时间比较短,显示设备所显示的相邻两帧图像内容不同,不会出现图像延迟问题,而基于ATW技术的图像处理中,渲染操作和TW操作处在并行的两个线程中,使得渲染操作和TW操作没有先后顺序,此时执行步骤S500。
否则,说明显卡当前所处理的图像信息比较复杂,所需的图像渲染时间较长,有可能出现图像延迟问题,此时执行步骤S600。
步骤S500:控制每帧图像渲染的起始时刻与对应帧图像的扭曲处理起始时刻之间的差值Δt小于等于预设差值Δtaim。
例如:在第N-1帧中间时刻时,第N-1帧图像渲染匹配运动姿态要求,说明显示设备在显示图像时不会出现图像延迟问题,此时可设定第N-1帧图像渲染的起始时刻和/或第N-1帧图像扭曲处理的起始时刻,使得每帧图像的渲染的起始时刻与对应帧图像扭曲处理的起始时刻的差值Δt小于等于预设差值Δtaim,以缩短对第N-1帧图像的TW处理的等待时间。
步骤S600:设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求。
例如:基于ATW的图像处理过程中,在第N-1帧中间时刻开始进行第N-1帧图像的渲染和第N-2帧图像的TW处理,但是由于第N-1帧图像的场景复杂,使得第N-1帧图像的渲染时间比较长(超过1/fps,fps为系统帧频),导致在第N帧中间时刻,无法开始对第N-1帧图像进行TW处理,此时第N-1帧图像的渲染时间与运动姿态无法匹配,说明第N-1帧图像渲染时间已经影响了显示器显示图像,使得显示器连续两帧显示同一图像。基于此,可设定每帧帧频,使得显示器相邻两帧所显示的图像内容不同。
由上述图像处理控制方法的具体过程可知,在M帧图像的渲染时长是否匹配运动姿态要求时,当前帧的TW处理所处理的渲染图像为上一帧所渲染的图像,用户头部姿态变化较快时,用户所看到的VR图像不会发生抖动,此时可控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim,以减少当前帧图像的TW处理等待时间,从而提高图形处理器的利用效率。而在M帧图像的渲染时长不匹配运动姿态要求时,相邻两帧的TW处理的渲染图像相同,使得在用户头部姿态变化较快时,用户所看到的VR图像发生抖动,导致用户出现头部眩晕的问题;基于此,设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求,这样就能够减轻VR图像延时所带来的头部眩晕问题。
在一些实施例中,如图12所示,判断M帧图像的渲染时长是否匹配运动姿态要求包括:
如果是,执行步骤S420。否则,执行步骤S430。
步骤S420:认定M帧图像的渲染时长匹配运动姿态要求;
步骤S430:认定M帧图像的渲染时长不匹配运动姿态要求。
由上可以看出,可通过统计学的方式对M帧图像的渲染时长进行判断,当判断结果中出现n%以上的图像渲染时长小于等于即可认为M帧图像的渲染时长均匹配运动姿态,此时可控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim。当判断结果中出现n%以上的图像渲染时长大于此时图像会出现延迟问题,导致图像渲染时长与运动姿态不匹配的问题。
至于n的取值,可以根据实际需要设定,例如:n为大于等于50的整数,当然n的取值越大,统计结果越准确,但相应的数据计算量也就越大,因此,n的取值不宜过大,一般在50~65之间。
进一步,如图13所示,上述控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim包括:
若M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于说明在基于ATW技术的图像处理中,可控制每帧图像的渲染操作和对应帧图像的TW操作可在一帧内完成,也可以在两帧内完成,此时执行步骤S520或步骤S530。
若M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0大于当然,t0一般小于说明在基于ATW技术的图像处理中,可控制每帧图像的渲染操作和对应帧图像的TW操作无法位于一帧完成,只能在两帧内完成,此时执行步骤S540。
步骤S520:设定每帧图像渲染的起始时刻与对应的垂直同步信号接收时刻相同,设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average小于等于预设差值Δtaim,
图1和图5所示出的每帧图像渲染时长均小于0.5/fps,且M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于图2和图6所示出的每帧图像渲染时长均大于0.5/fps小于1/fps,且M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于
在图1和图2中,第N-2帧中间时刻与第N-2帧图像渲染的起始时刻相同,第N-2帧图像TW处理的起始时刻位于如图1和图2所示的第N-1帧中间时刻,即第N-2帧图像渲染的起始时刻与第N-2帧图像TW处理的起始时刻的差值为1/fps。在图5中,第N-2帧垂直同步信号的接收时刻与第N-2帧图像渲染的起始时刻相同,第N-2帧中间时刻与第N-2帧图像TW处理的起始时刻相同,使得第N-2帧图像渲染的起始时刻与第N-2帧图像TW处理的起始时刻的差值为0.5/fps,在图6中,考虑到基于ATW技术的图像处理过程中,渲染操作和TW操作在不同线程,使得第N-2帧垂直同步信号的接收时刻与第N-2帧图像渲染的起始时刻相同的前提下,控制第N-2帧图像TW处理的起始时刻,使得第N-2帧图像渲染的起始时刻与第N-2帧图像TW处理的起始时刻的差值大于等于第N-2帧图像渲染时长小于以保证第N-2帧图像渲染操作与第N-2帧图像的TW处理在一帧时间内完成。
同理,在图1和图2中,第N-1帧中间时刻与第N-1帧图像渲染的起始时刻相同,第N-1帧图像TW处理的起始时刻位于第N帧中间时刻,即第N-1帧图像渲染的起始时刻与第N-1帧图像TW处理的起始时刻的差值为1/fps。在图5中,第N-1帧垂直同步信号的接收时刻与第N-1帧图像渲染的起始时刻相同,第N-1帧中间时刻与第N-1帧图像TW处理的起始时刻相同,使得第N-1帧图像渲染的起始时刻与第N-1帧图像TW处理的起始时刻的差值为0.5/fps;在图6中,考虑到基于ATW技术的图像处理过程中,渲染操作和TW操作在不同线程,使得第N-1帧垂直同步信号的接收时刻与第N-1帧图像渲染的起始时刻相同的前提下,控制第N-1帧图像TW处理的起始时刻,使得控制第N-1帧图像渲染的起始时刻与第N-1帧图像TW处理的起始时刻的差值大于N-1帧图像渲染时长小于以保证第N-1帧图像渲染操作与第N-1帧图像的TW处理在一帧时间内完成。
同理,在图1和图2所示,第N帧中间时刻与第N帧图像渲染的起始时刻相同,第N帧图像TW处理的起始时刻位于第N+1帧中间时刻,即第N帧图像渲染的起始时刻与第N帧图像TW处理的起始时刻的差值为1/fps。在图5中,第N帧垂直同步信号的接收时刻与第N帧图像渲染的起始时刻相同,第N帧中间时刻与第N帧图像TW处理的起始时刻相同,使得第N帧图像渲染的起始时刻与第N帧图像TW处理的起始时刻的差值为0.5/fps;在图6中,考虑到基于ATW技术的图像处理过程中,渲染操作和TW操作在不同线程,使得第N帧垂直同步信号的接收时刻与第N帧图像渲染的起始时刻相同的前提下,控制第N帧图像TW处理的起始时刻,使得第N帧图像渲染的起始时刻与第N帧图像TW处理的起始时刻的差值大于0.5/fps小于以保证第N帧图像渲染操作与第N帧图像的TW处理在一帧时间内完成。
同理,在图1和图2中,第N+1帧中间时刻与第N+1帧图像渲染的起始时刻相同,第N+1帧图像TW处理的起始时刻位于第N+2帧中间时刻,即第N+1帧图像渲染的起始时刻与第N+1帧图像TW处理的起始时刻的差值为1/fps。在图5中,第N帧垂直同步信号的接收时刻与第N+1帧图像渲染的起始时刻相同,第N+1帧中间时刻与第N+1帧图像TW处理的起始时刻相同,使得第N+1帧图像渲染的起始时刻与第N+1帧图像TW处理的起始时刻的差值为0.5/fps;在图6中,考虑到基于ATW技术的图像处理过程中,渲染操作和TW操作在不同线程,使得第N+1帧垂直同步信号的接收时刻与第N+1帧图像渲染的起始时刻相同的前提下,控制第N+1帧图像TW处理的起始时刻,使得第N+1帧图像渲染的起始时刻与第N+1帧图像TW处理的起始时刻的差值大于0.5/fps小于以保证第N+1帧图像渲染操作与第N+1帧图像的TW处理在一帧时间内完成。
通过对比图1和图5的分析结果,对比图2和图6的分析结果可知,M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于设定每帧图像渲染的起始时刻与对应的垂直同步信号接收时刻相同,设定每帧图像扭曲处理的起始时刻,可缩小每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt,从而有效缩短图像的TW处理的等待时间,以更快的输出所需显示的图像,减缓图像延时。
步骤S530:设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average,小于等于预设差值Δtaim,所述预设差值Δtaim<Δt_average,Δt_average为M帧图像渲染的起始时刻与M帧图像扭曲处理的起始时刻的平均差值。
图7所示出的每帧图像渲染时长均小于0.5/fps,且M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于图8所示出的每帧图像渲染时长均大于0.5/fps小于且M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于
在图7和图8中,考虑到基于ATW技术的图像处理过程中,渲染操作和TW操作在不同线程,使得可保证渲染操作起始时刻不变的情况下,仅调节TW操作的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像TW处理的起始时刻之间的差值Δt小于等于预设差值Δtaim。例如:第N-2帧图像渲染的起始时刻与第N-2帧中间时刻相同,第N-2帧图像TW处理的起始时刻如图7或图8所示,使得仅仅控制第N-2帧图像渲染的起始时刻与第N-2帧图像TW处理的起始时刻之间的差值大于第N-2帧图像渲染时长小于Δt_average,第N-1帧图像渲染的起始时刻与第N-1帧中间时刻相同,第N-1帧图像TW处理的起始时刻如图7或图8所示,使得仅仅控制第N-1帧图像渲染的起始时刻与第N-1帧图像TW处理的起始时刻之间的差值大于第N-1帧图像渲染时长小于Δt_average,第N帧图像渲染的起始时刻与第N帧中间时刻相同,第N帧图像TW处理的起始时刻如图7或图8所示,使得仅仅控制第N帧图像渲染的起始时刻与第N帧图像TW处理的起始时刻之间的差值大于第N帧图像渲染时长小于Δt_average, 第N+1帧图像渲染的起始时刻与第N+1帧中间时刻相同,第N+1帧图像TW处理的起始时刻如图7或图8所示,使得仅仅控制第N+1帧图像渲染的起始时刻与第N+1帧图像TW处理的起始时刻之间的差值大于第N+1帧图像渲染时长小于Δt_average,
通过对比图1和图7的分析结果,以及对比图2和图8的对比结果可以发现:当M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于仅仅控制图像扭曲处理的起始时刻也可以使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δt_average,只是在图7或图8所示出的情况下,每帧图像的渲染操作和TW操作无法在一帧内完成,只能在两帧内完成。
需要说明的是,如果图7中M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于则仍然可以通过控制每帧图像TW处理的起始时刻,使得每帧图像的渲染操作和TW操作在一帧内完成。
步骤S540:设定每帧图像渲染的起始时刻与对应的垂直同步信号接收时刻相同,设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average,小于等于预设差值Δtaim,该预设差值Δtaim<Δt_average。
在图3中,第N-2帧中间时刻与第N-2帧图像渲染的起始时刻相同,第N-2帧图像TW处理的起始时刻位于如图3所示的第N-1帧中间时刻,即第N-2帧渲染的起始时刻与第N-2帧图像TW处理的起始时刻的差值为1/fps。在图9中,考虑到基于ATW技术的图像处理过程中,渲染操作和TW操作在不同线程,可控制每帧图像渲染的起始时刻与对应帧的垂直同步信号接收时刻相同的情况下,控制每帧图像TW处理的起始时刻的位置,使得每帧图像渲染的起始时刻与TW操作的起始时刻之间的差值大于等于M帧图像的平均渲染时长t1_average小于等于预设差值Δtaim,Δtaim<Δt_average=1/fps,这样就能够减少TW操作的等待时间。例如:第N-2帧图像渲染的起始时刻与第N-2帧垂直同步信号的接收时刻相同,第N-2帧图像TW处理的起始时刻如图9所示,使得第N-2帧图像渲染的起始时刻与第N-2帧图像TW处理的起始时刻之间的差值大于第N-2帧图像渲染时长小于第N-1帧图像渲染的起始时刻与第N-1帧中间时刻相同,第N-1帧图像TW处理的起始时刻如图9所示,使得第N-1帧图像渲染的起始时刻与第N-1帧图像TW处理的起始时刻之间的差值大于第N-1帧图像渲染时长小于第N帧图像渲染的起始时刻与第N帧中间时刻相同,第N帧图像TW处理的起始时刻如图9所示,使得第N帧图像渲染的起始时刻与第N帧图像TW处理的起始时刻之间的差值大于第N帧图像渲染时长小于第N+1帧图像渲染的起始时刻与第N+1帧中间时刻相同,第N+1帧图像TW处理的起始时刻如图9所示,使得第N+1帧图像渲染的起始时刻与第N+1帧图像TW处理的起始时刻之间的差值大于第N+1帧图像渲染时长小于
通过对比图3和图9的分析结果可知,当M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0大于时,可控制每帧图像渲染的起始时刻和每帧图像扭曲处理的起始时刻,缩小每帧图像TW操作的等待时间。
进一步,当每帧图像的渲染操作和对应帧图像的TW操作在一帧完成时,可以保证在下一帧显示操作时显示经过TW操作的当前帧图像,从而减少图像延迟。即:当第N帧图像的渲染操作和第N帧图像的TW操作在第N帧垂直同步信号的接收时刻与第N+1帧垂直同步信号的接收时刻之间完成,那么在第N+1帧显示操作时,可显示经过TW处理的第N帧图像,以减少图像延时。
对比图1、图5和图6可以发现,图1所示的每帧图像的渲染操作和TW操作均在两帧内完成,图5和图6所示的每帧图像的渲染操作和TW操作均在一帧内完成,使得图5和图6能够更早的输出的图像,从而减少图像延时。
对比图1、图7~图9可以发现,图1、图7~图9所示的每帧图像的渲染操作和TW操作均在两帧内完成,使得图7~图9输出图像的时间并没有发生改变。
在一些实施例中,如图13所示,设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求包括:
步骤S610:设定系统帧频等于M帧图像的平均渲染时长t1_average,使得每帧图像的扭曲处理起始时刻与对应帧图像的渲染结束时刻相同,这相当于降低了后续图像处理过程中垂直同步信号的接收频率,使得相邻两帧垂直同步信号的接收时刻的差值等于M帧图像的平均渲染时长t1_average,这样当前帧图像渲染操作结束时,可以立刻开始对当前帧图像的TW操作,这不仅可以缩短当前帧图像的TW操作的等待时间,而且还可以使得显示器所显示的连续两帧图像内容不同,从而降低图像延时,避免图像抖动问题的发生。
示例性的,图4示出了现有技术中第二种基于ATW的图像处理示意图,图10示出了本发明实施例中第二种基于ATW的图像处理示意图。
如图4和图10所示,在第N-1帧中间时刻前,已经完成了第N-2帧图像的渲染,因此,在第N-1中间时刻可对第N-2帧图像的TW处理,以使得显示器在第N帧显示第N-2帧图像内容。如图4所示,第N-1帧中间时刻与第N-1帧图像渲染的起始时刻相同,第N-1帧图像渲染的结束时刻已经超过第N帧中间时刻,使得第N-1帧图像的渲染时长大于1/fps,因此,在第N帧中间时刻无法开始对第N-1帧图像的TW处理,只能在第N帧中间时刻开始对已经完成渲染的第N-2帧图像进行TW处理,也就是说,第N帧图像渲染的起始时刻与第N帧图像扭曲处理的起始时刻之前的差值为2/fps,此时,显示器在第N+1帧显示第N-2帧图像内容。如图10所示,通过设定系统帧频等于M帧图像的平均渲染时长t1_average,使得第N-1帧中间时刻与第N-1帧图像渲染的起始时刻相同,第N-1帧图像的渲染结束时刻与第N帧中间时刻相同,这样第N-1帧图像的渲染时长等于1/fps,第N-1帧图像渲染的起始时刻与第N-1帧图像TW处理的起始时刻的差值等于1/fps,即样在第N帧中间时刻可开始对第N-1帧图像的TW处理,从而保证显示器在第N-1帧显示第N-2帧图像内容。可见,当第N-1帧图像的渲染时长大于1/fps时,显示器所显示的图像会出现图像延迟问题和抖动问题,同时还可以减少第N-1帧图像扭曲处理的等待时间,从而有效提高图形处理器的使用效率。
同理,如图4所示,第N-1帧图像的渲染结束时刻已经超过第N帧中间时刻,使得第N帧图像渲染的起始时刻只能与第N+1帧中间时刻相同;在第N帧中间时刻前,已经完成第N-1帧图像的渲染,这使得在第N+1帧中间时刻时可开始对第N-1帧图像的TW处理,以保证显示器在第N+2帧时显示第N-1帧图像内容。由此可见,现有技术中当第N-1帧图像的渲染时长大于1/fps时,不仅图像容易出现抖动问题,而且图像渲染等待时间和图像TW等待时间都比较长。如图10所示,调整帧频后,在第N帧中间时刻,已经完成了第N-1帧图像的渲染,因此,在第N中间时刻可同时开始对第N帧图像的渲染和对第N-1帧图像的TW处理,以使得显示器在第N+1帧显示第N-1帧图像内容。而在第N+1帧中间时刻,已经完成了第N帧图像的渲染,因此,在第N+1中间时刻可同时开始对第N+1帧图像的渲染和第N帧图像的TW处理,以保证显示器在第N+2帧显示第N帧图像内容。
通过对比图4和图10的分析结果可以发现:通过设定帧频,不仅可有效减少图像渲染等待时间和图像TW等待时间,而且还能够降低图像延迟和抖动问题的发生,以在保证图像正常显示的情况下,提高图形处理器的利用效率。
具体的,现有帧调试公式为:
DSC压缩参数、lane_num、bus_width、width、height都是固定值,FPS的大小最终由其他参数综合决定,也就是说,只要确定hsync、hfp、hbp、vsync、vfo和vbp,就可以确定系统帧频,因此,将hsync、hfp、hbp、vsync、vfp和vbp定义为BSP显示驱动参数。其中,
Mipspeed表示每一lane的传输速率。
DSC压缩参数表示为了减少总数据量的传输,处理器以DSC协议进行数据压缩,压缩越大,传输的数据越少,标准采用1/3压缩。
lane_num表示lane的数量。
bus_width表示总线宽度或显存位宽。
width表示有效显示图像的宽度。
height表示有效显示区域的长度。
hsync表示水平同步信号的频率。
hfp表示一行的有效数据结束到下一个水平同步信号开始之间的VCLK的个数,VCLK为时钟信号电压。
Hbp是horizontal back porch的缩写,表示从水平同步信号开始到一行的有效数据开始之间的VCLK的个数,VCLK为时钟信号电压。
vsync表示垂直同步信号的频率。
vfp是vertical front porch的缩写,表示在一帧图像结束后,垂直同步信号以前的无效的行数。
vbp是vertical back porch的缩写,表示在一帧图像开始时,垂直同步信号以后的无效的行数。
如图14所示,上述设定系统帧频等于M帧图像的平均渲染时长t1_average包括:
步骤S611:设定系统目标帧频等于M帧图像的平均渲染时长t1_average。
步骤S612:根据系统目标帧频从显示驱动参数索引表查找显示驱动参数;出处显示驱动参数索引表是指在功能开发阶段,针对不同系统帧频,建立以系统帧频为主键的显示驱动参数索引表,如当主键为90fps,对应一组Mipispeed、hsync、hfp、hbp、vsync、vfp、vbp。
在一些实施例中,考虑到用户体验性问题,VR显示设备的系统帧频需要大于60Hz,有的甚至在90Hz、120Hz以上,而当系统帧频大于等于90Hz和120Hz时,已经可以满足图像场景比较复杂的图像渲染,并基本保证用户在使用时不会出现头部眩晕问题。基于此,如图11所示,在获取M帧图像的平均渲染时长t1_average后,上述判断M帧图像的渲染时长是否匹配运动姿态要求前,上述图像处理方法还包括:
步骤S300:确定是否进行运动匹配性判断。具体方法如图12所示,包括如下步骤:
步骤S310:判断M帧图像的平均渲染时长t1_average是否小于等于K,K为系统帧频阈值,其大于等于90Hz的整数,当然也可以根据实际情况设定;根据用户使用体验报告可确定K=90即可。
如果是,执行步骤S400。否则,结束。
可以理解的是,上述图像处理方法还包括:
步骤S100’:统计M帧图像的扭曲处理时长。
步骤S200:根据M帧图像的渲染时长,获取M帧图像的平均渲染时长t1_average,以获得每帧图像的渲染时长分布规律;根据M帧图像的扭曲处理时长,获得M帧图像的平均扭曲处理时长t2_average,以获得每帧图像的扭曲处理时长分布规律。同时还应当根据M帧图像渲染的起始时刻与M帧图像扭曲处理的起始时刻的差值,获得M帧图像渲染的起始时刻与M帧图像扭曲处理的起始时刻的平均差值Δt_average。
统计M帧图像的扭曲处理时长只要保证位于控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim前即可,但考虑到在统计M帧图像的渲染时长时,可以一并统计M帧图像的扭曲处理时长;因此,如图13所示,统计M帧图像的扭曲处理时长的操作可与统计M帧图像的渲染时长的操作同时执行。同时,在统计M帧图像的渲染时长和M帧图像的扭曲处理时长的过程中,还可以获得M帧图像渲染的起始时刻和M帧图像扭曲处理的起始时刻,以用于计算M帧图像渲染的起始时刻与M帧图像扭曲处理的起始时刻的平均差值Δt_average。另外,如图12和图13所示,上述步骤S200应当保证在步骤S500和步骤S600前执行,以便控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim或用于设定系统帧频。为了方便流程执行,如图12所示,可设定上述步骤S200位于步骤S100与步骤S300之间。
上述统计M帧图像的渲染时长的具体方式多种多样,下面举例说明。
如图15所示,上述统计M帧图像的渲染时长包括:
步骤S110:获取当前渲染参数,渲染参数包括渲染分辨率、视场角及用户姿态信息,但不仅限于此。
步骤S120:图形处理器根据当前渲染参数和当前帧图像数据对当前帧图像进行渲染,并为当前图像渲染的起始时刻添加当前渲染起始时刻标签,为当前渲染结束时刻添加当前渲染结束时刻标签;同时在这个过程中图形处理器对当前图像进行扭曲处理时,还可为当前图像扭曲处理的起始时刻添加当前TW处理起始时刻标签,为当前图像扭曲处理的结束时刻添加当前扭曲处理结束时刻标签。
步骤S130:根据当前渲染结束时刻标签和当前渲染起始时刻标签,获得当前帧图像的渲染时长;当然,也可根据当前扭曲处理起始时刻标签和当前TW处理结束时刻标签,获得当前图像的扭曲处理时长;同时,还根据当前渲染起始时刻标签与当前扭曲处理起始时刻标签,获得当前图像的扭曲处理的起始时刻的差值,即完成一帧图像渲染的起始时刻与对应帧图像的扭曲处理起始时刻的差值的统计。
步骤S140:判断是否完成M帧图像的渲染时长的统计和M帧图像的扭曲处理时长的统计;
如果是,执行步骤S150,否则执行步骤S200。
步骤S150:更新当前渲染参数和当前帧图像数据。
以确定图像渲染时长的分布规律。
在一些实施例中,如图11和图12所示,考虑到视频场景变化的复杂性和变化的多样性,需要循环采用上述图像处理方法处理图像。基于此,在每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值缩小后,或每帧图像的渲染时长匹配运动姿态要求后,上述图像处理方法还包括:
步骤S700:更新M帧图像的渲染时长,即重新统计M帧图像的渲染时长,以重新确定M帧图像的渲染时长是否匹配运动姿态要求,使得图像处理过程动态化进行,避免长期使用同一组统计的M帧图像的渲染时长所产生的误差。
如图5~图11以及图16所示,本发明实施例提供的图像处理装置包括:
时长统计模块100,用于统计M帧图像的渲染时长。
与时长统计模块100连接的匹配判断模块300,用于判断M帧图像的渲染时长是否匹配运动姿态要求。
与匹配判断模块400连接的第一调制模块600,用于在M帧图像的渲染时长匹配运动姿态要求时,控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim。
与匹配判断模块400连接的第二调制模块700,用于设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求。
与现有技术相比,本发明实施例提供的图像处理装置的有益效果与上述图像处理方法的有益效果相同,在此不做赘述。
上述图像处理装置还包括:与匹配判断模块300、第一调制模块600和第二调制模块700连接的状态确认模块400,用于在M帧图像中n%以上的图像渲染时长小于等于时,认定M帧图像的渲染时长匹配运动姿态要求;在M帧图像中n%以上的图像渲染时长大于时,认定M帧图像的渲染时长不匹配运动姿态要求。
在一些实施例中,如图13和图16所示,上述时长统计模块100还用于在控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim前,统计M帧图像的扭曲处理时长,根据M帧图像的渲染时长,获取M帧图像的平均渲染时长t1_average;根据M帧图像的扭曲处理时长,获得M帧图像的平均扭曲处理时长t2_average。
上述第一调制模块600具体用于:
在M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于fps为系统帧频时,设定每帧图像渲染的起始时刻与对应的垂直同步信号接收时刻相同,设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average小于等于预设差值Δtaim;或,设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average,小于等于预设差值Δtaim,所述预设差值Δtaim<Δt_average,Δt_average为M帧图像渲染的起始时刻与M帧图像扭曲处理的起始时刻的平均差值;
在M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0大于时,设定每帧图像渲染的起始时刻与对应的垂直同步信号接收时刻相同,设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average小于等于预设差值Δtaim,所述预设差值Δtaim<Δt_average,Δt_average为M帧图像的渲染起始时刻与M帧图像扭曲处理的起始时刻的平均差值。
可以理解的是,如图13和图16所示,上述图像处理装置还包括与第一调制模块600和时长统计模块100连接的时长判断模块800,用于判断M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0是否小于等于
在一些实施例中,如图12和图16所示,上述时长统计模块100还用于在统计M帧图像的渲染时长后,判断M帧图像的渲染时长是否匹配运动姿态要求前,根据M帧图像的渲染时长,获取M帧图像的平均渲染时长t1_average;
如图12和图16所示,上述第二调制单元700还与时长统计模块100连接,第二调制单元700具体用于设定系统帧频等于M帧图像的平均渲染时长t1_average,使得每帧图像扭曲处理的起始时刻与对应帧图像渲染的结束时刻相同。
示例性的,如图14和图16所示,上述第二调制模块700具体用于设定系统目标帧频等于M帧图像的平均渲染时长t1_average;根据所述系统目标帧频从显示驱动参数索引表查找显示驱动参数;根据所述显示驱动参数调整系统帧频,使得系统帧频等于
示例性的,如图12和图16所示,上述图像处理装置还包括:与时长统计模块100和匹配判断模块300连接的帧频选择模块200,用于判断M帧图像的平均渲染时长t1_average是否小于1/K,K为系统帧频阈值。
上述匹配判断模块300具体用于在系统帧频小于等于K时,判断M帧图像的渲染时长是否匹配运动姿态要求。
在一些实施例中,如图11、图12和图16所示,上述图像处理装置还包括:与第一调制模块600、第二调制模块700和时长统计模块100连接的更新控制模块500,用于在所述每帧图像的渲染起始时刻与对应帧图像的扭曲处理起始时刻之间的差值缩小后,或每帧图像的渲染时长匹配运动姿态要求后,控制M帧图像的渲染时长更新,以使得M帧图像的渲染时长更新。
本发明实施例还提供了一种显示装置,该显示装置包括上述图像处理装置。
与现有技术相比,本发明实施例提供的显示装置的有益效果与上述图像处理装置的有益效果相同,在此不做赘述。
其中,上述实施例提供的显示设备可以为手机、平板电脑、电视机、显示器、笔记本电脑、数码相框或导航仪等任何具有显示功能的产品或部件,这些显示装置可以为普通的显示设备,也可以为移动显示设备,如手机、平板电脑、可穿戴显示设备等。
本发明实施例还提供了一种计算机存储介质,用于储存一个或多个计算机软件指令,其包含用于执行上述图像处理方法所设计的程序。
与现有技术相比,本发明实施例提供的计算机存储介质的有益效果与上述图像处理装置的有益效果相同,在此不做赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于上述计算机存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述计算机存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
如图17所示,本发明实施例还提供了一种图像处理装置,该图像处理装置至少包括存储器920和处理器930;存储器920用于储存一个或多个计算机软件指令,其包含用于执行上述图像处理方法所设计的程序;处理器930用于根据所述一个或多个计算机软件指令执行上述图像处理方法。
当然,上述图像处理装置还可以包括用于接收各种信息的收发器910以及总线940;收发器910、存储器920以及处理器930通过总线940彼此通信。
其中,本发明实施例所述的处理器930可以是一个处理器,也可以是多个处理元件的统称。例如,该处理器930可以是中央处理器(Central Processing Unit,简称CPU),也可以是特定集成电路(Application Specific Integrated Circuit,简称ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路,例如:一个或多个微处理器(digitalsignal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field ProgrammableGate Array,简称FPGA)。
存储器920可以是一个存储装置,也可以是多个存储元件的统称,且用于存储可执行程序代码等。且存储器可以包括随机存储器(RAM),也可以包括非易失性存储器(non-volatile memory),例如磁盘存储器,闪存(Flash)等。
总线940可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。该总线940可以分为地址总线、数据总线、控制总线等。为便于表示,图17中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种图像处理方法,其特征在于,包括:
统计M帧图像的渲染时长;
判断M帧图像的渲染时长是否匹配运动姿态要求;
如果是,控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim;
否则,设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求;
所述控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim前,所述图像处理方法还包括:
根据M帧图像的渲染时长,获取M帧图像的平均渲染时长t1_average;
统计M帧图像的扭曲处理时长,根据M帧图像的扭曲处理时长,获得M帧图像的平均扭曲处理时长t2_average;
所述控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim包括:
若M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于fps为系统帧频,则设定每帧图像渲染的起始时刻与对应的垂直同步信号接收时刻相同,设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average,小于等于预设差值Δtaim;或,
设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average,小于等于预设差值Δtaim,所述预设差值Δtaim<Δt_average,Δt_average为M帧图像渲染的起始时刻与M帧图像扭曲处理的起始时刻的平均差值;
3.根据权利要求1~2任一项所述的图像处理方法,其特征在于,所述统计M帧图像的渲染时长后,所述判断M帧图像的渲染时长是否匹配运动姿态要求前,所述图像处理方法还包括:
根据M帧图像的渲染时长,获取M帧图像的平均渲染时长t1_average;
所述设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求包括:
设定系统帧频等于M帧图像的平均渲染时长t1_average,使得每帧图像扭曲处理的起始时刻与对应帧图像渲染的结束时刻相同。
5.根据权利要求3所述的图像处理方法,其特征在于,所述判断M帧图像的渲染时长是否匹配运动姿态要求前,所述图像处理方法还包括:
判断M帧图像的平均渲染时长t1_average是否小于1/K,K为系统帧频阈值;
如果是,执行判断M帧图像的渲染时长是否匹配运动姿态要求;
和/或,
在控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim后,或设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求后,所述图像处理方法还包括:
更新M帧图像的渲染时长。
6.一种图像处理装置,其特征在于,包括:
时长统计模块,用于统计M帧图像的渲染时长;
匹配判断模块,用于判断M帧图像的渲染时长是否匹配运动姿态要求;
第一调制模块,用于在M帧图像的渲染时长匹配运动姿态要求时,控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim;
第二调制模块,用于设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求;
所述时长统计模块还用于在控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim前,统计M帧图像的扭曲处理时长,根据M帧图像的渲染时长,获取M帧图像的平均渲染时长t1_average;根据M帧图像的扭曲处理时长,获得M帧图像的平均扭曲处理时长t2_average;
所述第一调制模块具体用于:
在M帧图像的平均渲染时长t1_average和M帧图像的平均扭曲处理时长t2_average之和t0小于等于fps为系统帧频时,设定每帧图像渲染的起始时刻与对应的垂直同步信号接收时刻相同,设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average,小于等于预设差值Δtaim;或,设定每帧图像扭曲处理的起始时刻,使得每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt大于等于M帧图像的平均渲染时长t1_average,小于等于预设差值Δtaim,所述预设差值Δtaim<Δt_average,Δt_average为M帧图像渲染的起始时刻与M帧图像扭曲处理的起始时刻的平均差值;
8.根据权利要求6~7任一项所述的图像处理装置,其特征在于,所述时长统计模块还用于在统计M帧图像的渲染时长后,所述判断M帧图像的渲染时长是否匹配运动姿态要求前,根据M帧图像的渲染时长,获取M帧图像的平均渲染时长t1_average;
所述第二调制模块 具体用于设定系统帧频等于M帧图像的平均渲染时长t1_average,使得每帧图像扭曲处理的起始时刻与对应帧图像渲染的结束时刻相同。
10.根据权利要求8所述的图像处理装置,其特征在于,所述图像处理装置还包括:
帧频选择模块,用于在判断M帧图像的渲染时长是否匹配运动姿态要求前,判断M帧图像的平均渲染时长t1_average是否小于1/K,K为系统帧频阈值;
所述匹配判断模块具体用于在系统帧频小于等于K时,判断M帧图像的渲染时长是否匹配运动姿态要求;
和/或,
所述图像处理装置还包括:更新控制模块,用于在控制每帧图像渲染的起始时刻与对应帧图像扭曲处理的起始时刻之间的差值Δt小于等于预设差值Δtaim后,或设定系统帧频,使得每帧图像的渲染时长匹配运动姿态要求后,控制M帧图像的渲染时长更新。
11.一种图像处理装置,其特征在于,包括处理器和存储器;
所述存储器用于储存一个或多个计算机软件指令,其包含用于执行权利要求1~5任一项所述的图像处理方法所设计的程序;
所述处理器用于根据所述一个或多个计算机软件指令执行权利要求1~5任一项所述的图像处理方法。
12.一种显示装置,其特征在于,包括权利要求6~10任一项所述图像处理装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910122830.4A CN109819232B (zh) | 2019-02-19 | 2019-02-19 | 一种图像处理方法及图像处理装置、显示装置 |
US16/538,091 US11341655B2 (en) | 2019-02-19 | 2019-08-12 | Image processing method, image processing apparatus and display device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910122830.4A CN109819232B (zh) | 2019-02-19 | 2019-02-19 | 一种图像处理方法及图像处理装置、显示装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109819232A CN109819232A (zh) | 2019-05-28 |
CN109819232B true CN109819232B (zh) | 2021-03-26 |
Family
ID=66606789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910122830.4A Active CN109819232B (zh) | 2019-02-19 | 2019-02-19 | 一种图像处理方法及图像处理装置、显示装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11341655B2 (zh) |
CN (1) | CN109819232B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021151228A1 (en) * | 2020-01-29 | 2021-08-05 | Qualcomm Incorporated | Methods and apparatus for adaptive frame headroom |
CN111652962B (zh) * | 2020-06-08 | 2024-04-23 | 北京联想软件有限公司 | 图像渲染方法、头戴式显示设备及存储介质 |
CN112104855B (zh) * | 2020-09-17 | 2022-05-31 | 联想(北京)有限公司 | 一种图像处理方法及装置 |
CN115225940B (zh) * | 2021-04-15 | 2023-07-28 | 青岛海信宽带多媒体技术有限公司 | 一种机顶盒及机顶盒页面显示方法 |
CN113315999A (zh) * | 2021-05-26 | 2021-08-27 | 中国联合网络通信集团有限公司 | 虚拟现实优化方法、装置、设备及存储介质 |
CN113596569B (zh) * | 2021-07-22 | 2023-03-24 | 歌尔科技有限公司 | 图像处理方法、装置和计算机可读存储介质 |
CN115841803B (zh) * | 2022-12-23 | 2024-01-09 | 长沙惠科光电有限公司 | 驱动控制方法、驱动电路、显示装置和显示系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106385625A (zh) * | 2016-09-29 | 2017-02-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种图像中间帧生成方法及装置 |
CN106658170A (zh) * | 2016-12-20 | 2017-05-10 | 福州瑞芯微电子股份有限公司 | 一种降低虚拟现实延迟的方法和装置 |
CN106683034A (zh) * | 2016-12-29 | 2017-05-17 | 上海拆名晃信息科技有限公司 | 一种用于虚拟现实的异步时间卷曲计算方法 |
CN107220925A (zh) * | 2017-05-05 | 2017-09-29 | 珠海全志科技股份有限公司 | 一种实时虚拟现实加速方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9063330B2 (en) * | 2013-05-30 | 2015-06-23 | Oculus Vr, Llc | Perception based predictive tracking for head mounted displays |
US9786255B2 (en) * | 2014-05-30 | 2017-10-10 | Nvidia Corporation | Dynamic frame repetition in a variable refresh rate system |
US9787896B2 (en) * | 2015-12-29 | 2017-10-10 | VideoStitch Inc. | System for processing data from an omnidirectional camera with multiple processors and/or multiple sensors connected to each processor |
EP3335098A1 (en) * | 2016-02-22 | 2018-06-20 | Google LLC | Separate time-warping for a scene and an object for display of virtual reality content |
US10706604B2 (en) * | 2016-06-03 | 2020-07-07 | Apple Inc. | Controlling display performance using display system hints |
US10388255B2 (en) * | 2018-06-29 | 2019-08-20 | Intel Corporation | Computers for supporting multiple virtual reality display devices and related methods |
-
2019
- 2019-02-19 CN CN201910122830.4A patent/CN109819232B/zh active Active
- 2019-08-12 US US16/538,091 patent/US11341655B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106385625A (zh) * | 2016-09-29 | 2017-02-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种图像中间帧生成方法及装置 |
CN106658170A (zh) * | 2016-12-20 | 2017-05-10 | 福州瑞芯微电子股份有限公司 | 一种降低虚拟现实延迟的方法和装置 |
CN106683034A (zh) * | 2016-12-29 | 2017-05-17 | 上海拆名晃信息科技有限公司 | 一种用于虚拟现实的异步时间卷曲计算方法 |
CN107220925A (zh) * | 2017-05-05 | 2017-09-29 | 珠海全志科技股份有限公司 | 一种实时虚拟现实加速方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20200265587A1 (en) | 2020-08-20 |
CN109819232A (zh) | 2019-05-28 |
US11341655B2 (en) | 2022-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109819232B (zh) | 一种图像处理方法及图像处理装置、显示装置 | |
CN112422873B (zh) | 插帧方法、装置、电子设备及存储介质 | |
CN108921951B (zh) | 虚拟现实图像显示方法及其装置、虚拟现实设备 | |
US10585283B2 (en) | Head mounted display and control method therefor | |
CN109920040B (zh) | 显示场景处理方法和装置、存储介质 | |
US10049642B2 (en) | Sending frames using adjustable vertical blanking intervals | |
WO2013018262A1 (ja) | 撮像装置、情報処理装置、情報処理システムおよびフレームデータ出力同期化方法 | |
US7289539B1 (en) | Synchronization of stereo glasses in multiple-end-view environments | |
US9830880B1 (en) | Method and system for adjusting the refresh rate of a display device based on a video content rate | |
WO2019153723A1 (zh) | 视频画面显示方法、装置、电视机及存储介质 | |
JP6218787B2 (ja) | 撮像装置、情報処理装置、表示装置、情報処理システム、画像データ送出方法、および画像表示方法 | |
JP2016502126A (ja) | ビデオ画像処理方法及び装置 | |
CN111064863B (zh) | 图像数据的处理方法及相关装置 | |
EP3644613A1 (en) | Video data processing method and video data processing device | |
EP3644614A1 (en) | Video data processing method and video data processing device | |
WO2022089046A1 (zh) | 虚拟现实显示方法、装置及存储介质 | |
US8471859B2 (en) | Device and method for controlling frame input and output | |
CN115151969A (zh) | 用以补偿被延迟的图形处理单元渲染时间的被减少的显示处理单元传送时间 | |
JP7134060B2 (ja) | 画像生成装置および画像生成方法 | |
WO2021139359A1 (zh) | 图像处理方法、装置、电子设备及存储介质 | |
JP2012182673A (ja) | 映像表示装置及び映像処理方法 | |
CN113219668B (zh) | 用于刷新头戴式显示设备的屏幕的方法、装置及电子设备 | |
CN114613306A (zh) | 显示控制芯片、显示面板及相关设备、方法和装置 | |
CN113315999A (zh) | 虚拟现实优化方法、装置、设备及存储介质 | |
US20040066450A1 (en) | Apparatus and method for generating an interleaved stereo image |
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 |