虚拟现实中的实景视频切换技术硬软件系统的设计与构建*
2020-08-13刘滔张鹏
刘 滔 张 鹏
(安徽新闻出版职业技术学院 安徽合肥 230601)
虚拟场景和实际场景是虚拟现实场景的重要构成内容,在视角变化过程中,要想将逼真效果发挥处理,应同时变换虚拟摄像机和真实摄像机。系统在分析SDI信号的同时,解析视频信号,通过视频数据提取多路SDI视频信号,对于提取的视频数据,加强DDR的应用进行缓冲。视频输出时钟,主要选取经过外部同步的视频像素时钟,重新编码视频数据,在视频逆场中,切换视频缓冲区。下位机在接收到上位机发出的切换命令后,在第一时间对时延参数予以反馈切换,上位机结合时延参数,顺利切换虚拟摄像机视角,在变换视角时,为同步切换虚拟摄像机和真实摄像机的视角创造条件。积极构建该系统,加强FPGA的应用,以此来切换视频信号。基于此,有助于切换效果的提升。在虚拟现实环境中,加强实景视频切换技术的应用,有机整合虚拟场景和现实场景。
1虚拟现实中实景视频切换技术的必要性分析
现阶段,计算机和虚拟现实技术的整合度较高,虚拟现实技术,广泛应用于各个领域之中,比如加强虚拟现实技术人机界面的图形窗口,在虚拟现实环境下,加强飞机显控系统软件仿真。在广电系统中,虚拟演播室,在数字电视演播室新技术中扮演着重要角色。对其实质进行分析,就是实时合成虚拟三维场景和摄像机拍摄的人物活动图像,其中,虚拟三维场景得益于计算机的制作,数字化功能显著,同步变化人物和虚拟场景,从而使两者成为统一整体。
在节目录制或现场直播中,多机位拍摄得到了广泛应用,进而与机位切换问题有着密切的联系。同时在虚拟现实环境中,虚拟摄像机的视角切换也是至关重要的。但是在虚拟场景和现实场景融合后[1],衍生出了虚拟现实,所以在虚拟摄像机切换的基础上,要同步切换真实摄像机。2SDI信号(串行数字接口)分析串行接口,是指将数据字的各个比特,借助单一通道顺序进行传送。其中,物理分辨率在720P以下的视频信号传输示意图,如图1所示。
串行数字信号通常有着较高的数据率,在传送之前,有效处理非常重要。用扰码的不归零倒置(non-return zero inversion,NRZI),以此来对早期的分组编码进行代替,其标准中的数字复合和数字分量信号发挥着重要作用。在传送之前,加强原始数据的扰频,保证在接收端恢复原始数据的可靠性[2],SDI接口能通过270Mb/s的串行数字分量信号,如果传送的信号为360Mb/s,往往就是16:9格式图像。在极性敏感码中,NRZI码占据着重要地位。电平的高低,分别代表1、0,在长期出现1或0的情况下,对接收端从数字信号中提取时钟造成了很大的影响。串行数字信号接口,在传送时钟信号时并不具备独立性,接收端应在数字信号流中[3],对时钟信号进行提取,所以应加强1、0的应用,以此来对有无电平变换的NRZI码进行表示。接收NRZI码流时,在对电平变换检出以后,可以为恢复数据带来保证,也就是全是1信号的情况时,信号频率仅仅为原来时钟频率的1/2,再加上加扰的影响,会降低1的机会,而且也会减少高频分量。在数据流的接收端,借助SDI解码器,从NRZI码流使原数据流得以恢复。
图1 视频串行数字接口
2硬件系统的构建
通过系统可以对两套虚拟现实环境的生成予以扶持,并为切换四个机位提供便利性,所以通过双FPGA的硬件架构的采用,保证与系统要求相符合。图2为硬件原理框图,四路SDI信号,在解串器的帮助下,加强两片FPGA的应用,促进缓冲和处理的顺利进行。这主要体现在解析视频信号同步编码信息,并包括提取有效视频数据,然后再送入DDR实现缓冲[4]。通过FPGA,使同步信息数据得以再次生成,借助SDI信号的编码格式,使视频数据在串行编码器中得以顺利传送。
图2 硬件原理框图
其设计的系统为两套视频处理系统,均可以实现同步运行,不仅可以有效辨别四路SDI视频的同步编码信息,也可以提取有效视频数据。
在SDI视频输入模块中,CLC014可以均衡和统一视频信号,将其在高速串行时钟和数据的再生恢复进行应用,经过CLC011,顺利转换SDI串行数据到并行数据。在FPGA的帮助下,确保转换的并行视频数据的检测水平的稳步提升,在提取的数据送入缓冲器DDR后[5],可以使输出视频数据的有效性得到保证。在输出环节中,CLC020作为串行编码器得到了广泛应用,确保视频数据的串行编码工作的顺利进行。
基于提供用户接口视角,该系统对外部输入、输出模块进行搭载,借助外部按键输入,发挥出对控制系统工作的作用,也可以将串行接口和PC机联系在一起,不断提高远程控制效果。同时显示模块选用了系统搭载的LM3123,这在显示系统的工作状态和配置参数中得到了大量应用,如图3所示。
图3 硬件系统框图
3 FPGA程序设计
在设计的视频切换系统中,FPGA在处理SDI视频信号中扮演着重要角色,程序的整体构图如图4所示。
图4 FPGA程序架构
经过帧头检测模块,可以使解串器的并行数据向SDI视频数据顺利转变,对视频数据的帧起始位置进行判断,然后在帧起位置提取有效数据。通过DDR驱动模块,使数据缓冲在DDR芯片中体现出来,整合DDR芯片中的有效数据与模块产生的同步信息,使其在输出视频缓冲区中得以展现[6],为调用同步切换模块奠定基础。在同步切换模块接收到视角切换命令以后,应及时输出对应的视频数据。
在执行命令之前,帧头检测在每一路SDI视频数据中的应用较为明显,从帧头的起始视频数据开始存入DDR缓冲区之中,其起始地址为0,下位机如果接收到上位机,借助串口对切换命令进行发送,进而对当前视频输出是否为逆场状态进行检测。在不是逆场状态的情况下,应继续进行检测,如果属于逆场状态,应将视频缓冲区实现由前一路向另一路的顺利转换[7],确保视角的切换得以完成。其中,下位机视角切换流程如图5所示。
图5 视角切换流程图
4上位机软件设计
视频切换矩阵在切换过程中,没有提取视频有效数据,而且对视频数据的重新编码也尚未落实。在切换过程中,同步切换的功能没有得以展现,即使存在同步切换功能,有时在切换过程中,也没有提取和缓冲处理视频数据,极易丢失信息,造成在切换过程中,视频闪烁抖动现象难以避免。基于此,视频切换设备很难与广电系统要求相符,而且当前的视频切换设备,其反馈切换时延参数的功能也尚未完善,所以在虚拟演播室中,虚拟摄像机视角和真实摄像机视角的同步切换无法实现。故此对上位机软件设计提出了全新的要求,如:该系统在提供摄像机的视角数据中得到了大量应用,而且在虚拟现实仿真系统中也占据着重要地位。虚拟现实仿真系统软件中,3D实时渲染软件的应用价值显著,可以实时生成虚拟场景。上位机虚拟场景软件,可以对切换命令进行接收,要同步切换虚拟场景和实际场景中的摄像机视角[8],将虚拟场景和真实场景整合在一起。上位机软件在发送视角切换命令以后,下位机可以对视角切换命令予以接收,这时上位机可以了解切换操作的时间,上位机结合这一参数,对虚拟视角的切换时机予以设置,从而同步切换虚拟视角和真实视角。
5实验结果
该实验中,不同视角切换的效果图进行分析,可以发现虚拟摄像机与真实摄像机的视角的改变均比较明显。图6为视角同步改变后的效果图,这在虚拟现实合成场景中得到了充分的展示。
图6 视角同步改变后的效果图
6结语
在虚拟现实仿真系统中,要想统一虚拟背景和摄像机拍摄的真实前景,在视角切换过程中,应密切联系虚拟背景和真实前景,加强视角切换系统的设计,将上位机和下位机相搭配,同步切换虚拟视角和真实视角。该系统可以对上位机发送的切换视角命令予以接收,而下位机可以使真实摄像机的视角切换得以完成。下位机在接收到切换视角命令以后,应注重开展同步切换命令的时延执行工作,在第一时间反馈给上位机。上位机在接收到时延参数以后,可以促进虚拟摄像机的视角切换的顺利进行,为真实摄像机和虚拟摄像机同步切换提供保障。该系统通过对FPGA的应用,提取有效视频数据,并重新编码,而且通过在逆场中切换的应用,在视角切换过程中,防止视频闪烁抖动现象的出现。对实验结果进行分析,该系统可以将视角同步切换功能发挥出来,推动切换效果的显著提升。