一种双码率压缩摄像装置及其上位机解码装置的制作方法

文档序号:12949410阅读:239来源:国知局
一种双码率压缩摄像装置及其上位机解码装置的制作方法

技术领域:

本发明属于图像信息技术领域,涉及一种双码率压缩摄像装置及其上位机解码装置,尤其涉及对图像采集压缩传输技术的改进。



背景技术:

随着我国航空航天事业的不断发展,目前我国在飞行器上有效监控载荷的需求也同时在增加。由于受到传输带宽及压缩算法的限制,我国飞行器上监控摄像装置多采用720x576分辨率,按照不大于500kbps压缩码率对视频数据进行压缩,用以观测关键部位工作状态;由于受到带宽限制,以500kbps码率压缩后传输至地面站再进行解压缩显示的图像效果不佳,很难满足观测要求。因此如何在不提高带宽的情况下如何满足观测要求成为飞行器监控摄像装置着重解决的问题。

通过查询其他领域的相关文献资料,专利文献cn102387348a“应用于智能交通的双码流高清相机”公开了一种双码流压缩装置,该装置采用arm加dsp的并行处理结构,提出将高清视频和高清图片同时压缩。但该方案压缩后数据量较大,无法满足航空航天领域内的带宽较小要求,同时该方案无法对压缩视频和图片的压缩码率、分辨率进行调整,灵活性不够,无法满足实际工程需要。而且,虽然并行处理速度快,但是结构不够稳定,容易出现数据采集压缩过程中的丢失,导致误码出现。



技术实现要素:

本发明提出一种双码率压缩摄像装置及其上位机解码装置,工作稳定,在不提高传输带宽的前提下,能够采集到高清图片信息,极大提高了飞行器上载荷对关键目标的观测效果。

本发明的解决方案如下:

该双码率压缩摄像装置包括视频采集模块和视频压缩模块,采用fpga加arm的串行结构;所述视频采集模块基于fpga,采集视频信号并转换为高清视频,送入视频压缩模块;所述视频压缩模块包括图像管道接口模块ipipeif、图像大小调节模块rza和图像信号接口模块isif;图像管道接口模块ipipeif将接收到的高清视频分成两路,一路送入图像管道ipipe的图像大小调节模块rza将视频尺寸调整至标清格式,再将标清视频送入压缩核进行视频数据h.264压缩;另一路送入图像信号接口模块isif,并最终送入压缩核进行图片数据jpeg压缩;jpeg压缩后的图片数据分成多个数据块,相邻两帧视频数据之间嵌入一个所述数据块;通过spi接口将包含有图片数据和视频数据的串行数据发送至fpga,fpga按422接口向后端数据综合器发送数据,并通过天线发送至地面数据接收设备。

基于以上方案,本发明还进一步作了如下优化:

所述串行数据中,压缩后的视频数据和压缩后的图片数据头尾分别添加有标志位。

所述视频压缩模块采用tidm368型号产品。

所述fpga通过gpio接口与视频压缩模块进行通信。

所述视频采集模块是将采集的视频信号格式转换至bt.1120高清视频协议,按照bt.1120高清视频协议将1080p@25hz视频送入视频压缩模块;所述图像大小调节模块rza是将视频尺寸调整至720x576,再将720x576@25hz视频送入压缩核进行视频数据h.264压缩。

由所述jpeg压缩后的图片数据拆分出的每个数据块均为1kb大小。

对应于上述双码率压缩摄像装置的上位机解码装置,包括数据重组模块和解码模块,数据重组模块接收到压缩的串行数据后,根据标志位信息,将图片数据从视频数据中挑出并重组,解码模块将挑出并重组得到的视频压缩数据和图片压缩数据分别进行解码显示。

本发明具有以下优点:

1)采用fpga加arm的串行结构,结构稳定,不会出现数据采集压缩过程中丢失的问题,能够保证系统稳定工作。

2)对于输入视频采用标清视频和高清图片的同时压缩,在不提高传输带宽的前提下,能够采集到高清图片信息,极大提升了观测目标的清晰度。

3)通过对将压缩图片数据分块,解决带宽不足的问题,保证了数据均匀传输,满足视频传输要求。

4)通过dm368采集高清视频,并利用rza模块可对高清视频进行任意裁剪和缩放;

5)fpga可以通过gpio接口同dm368进行通信,实时修改视频及图片压缩的分辨率、码率、帧频。

6)本发明地面站可利用软解码进行实时解码显示。

附图说明

图1是摄像装置外形结构示意图。

图2是本发明的整体结构示意图。

图3是本发明中双码率压缩的工作原理(即图2中dm368的视频采集压缩传输流程)。

图4是双码率压缩中视频采集线程的流程图。

图5是双码率压缩中视频图片压缩流程图。

图6是双码率压缩中压缩数据输出流程图。

图7是视频分辨率、码率修改流程图。

图8是地面软解码流程图。

具体实施方式

下面通过实施例并结合附图,详细说明本发明的实现方案。

如图1所示的双码率压缩摄像装置外形结构,其内部放置两块电路板,包括电源板和视频压缩板。

如图2所示,该双码率压缩摄像装置包括cmos、fpga以及dm368等器件,用于视频的采集以及双码率压缩,相应的内部功能可分为视频数据接收功能、压缩功能以及传输功能。

fpga(视频采集模块)作为视频采集及与外部接口通信芯片,fpga将采集到的视频数据转换成bt.1120格式发送至tidm368;tidm368(视频压缩模块)作为视频输入、压缩、传输的主芯片,能够满足温度等实验环境要求。

该双码率压缩摄像装置对高清1080p视频按比例缩小至720x576进行h.264压缩,同时按1080p(1920x1080)分辨率进行高清图片压缩,压缩算法采用jpeg,图片按每125帧压缩一帧。由于图片采用jpeg压缩,压缩效率不高,数据压缩后的数据量较大,将视频数据和图片数据依次下传会导致带宽突然增大至1mbps以上,因此本发明将图片数据进行拆分成多个小数据块,添加在视频数据每帧压缩数据之后传输,这样能够保证传输带宽均匀而不会突然增大,将压缩后的视频的图片数据通过数据综合器下传至地面设备,并将视频和图片数据区分并分别解码显示,标清视频能够观测目标运动状态,高清图片能够还原更多目标细节,极大提高了观测效果。

该双码率压缩摄像装置的工作原理如下:

1)fpga采集cmos视频,并将视频格式转换至bt.1120高清视频协议;

2)dm368按照bt.1120高清视频协议接收1080p@25hz视频,并将视频送入图像管道接口ipipeif模块;

3)ipipeif模块将接收到的高清视频分成两路,一路送入图像管道ipipe的rza(图像大小调节)模块对视频进行尺寸调整至720x576,另一路送入图像信号接口isif模块,并最终送入压缩核进行jpeg压缩;

4)rza模块将720x576@25hz视频送入压缩核进行h.264压缩;

5)将jpeg压缩后的图片数据分成多个1kb数据块,将每个数据块嵌入每帧视频压缩数据最后面;

6)通过spi接口将压缩后的图片和视频数据按16mhz速率发送至fpga,fpga按422接口向后端数据综合器发送数据,并通过天线发送至地面数据接收设备;

7)地面上位机接收到视频图片压缩数据后,根据标志位信息,将图片数据从视频数据中挑出并重组,同时将挑出的视频和图片压缩数据分别送去解码显示。

以下主要对dm368内部各模块工作进行详细说明:

如图3所示,双码率压缩包括了视频采集线程、视频图片压缩线程、压缩码流输出线程。

视频采集线程包括视频采集单元,视频采集功能从fpga中接收以bt1120格式传送的1080p@25hz视频,将接收到视频保存至缓冲区中以备编码线程调用。fpga将视频数据通过bt1120接口发送到dm368的ipipeif(图像管道接口),然后分发给isif(图像信号接口)和ipipe(图像管道)模块进行数据流处理。

isif接口采集完成一帧图像之后产生isif_into中断信号,在中断响应函数中把视频数据传递给视频压缩模块进行高清图片jpeg压缩。ipipe模块有rsz(图像大小调节)模块。该模块把接收到的数据进行图像大小调节至720x576,然后发送至压缩模块进行h.264压缩,视频采集线程工作流程请参阅图4。

其中,虚线内表示视频采集任务的流程,首先调用avserver_bufgetempty从视频编码线程获取存放视频缓冲区的地址,然后再调用drv_capturestart函数执行视频采集任务,之后调用avserver_bufputfull函数,将采集到的视频数据存入从编码线程中获取的空闲的缓冲区中,编码线程可以调用缓冲区中的数据进行编码。

视频压缩模块分别对720x576@25hz标清视频以及高清图片进行压缩,其中标清视频按码率500kbps进行压缩,高清图片按每张100kb大小进行压缩,每隔125帧视频压缩一张图片,为保证不增加传输带宽,本发明将图片数据进行拆分成多个1kb数据块,添加在视频数据每帧压缩数据之后,这样能够保证传输带宽均匀而不会突然增大,将压缩后的视频和图片数据通过数据综合器下传至地面设备。本发明中,fpga同dm368通过gpio接口进行通信,fpga通过gpio发送高低电平可对dm368发送指令,从而可以对压缩视频分辨率、码率、帧频等关键信息进行实时调整,从而满足不同压缩需求。

参阅图5,视频编码流程如图,虚线内表示编码任务的流程,首先avserver_bufgetfull函数从视频采集线程获取存放视频缓冲区的地址,然后再调用avserver_bufgetempty从编码线程获取一个空的缓冲区地址,用来存放编码后的压缩视频数据,之后调用alg_videncrun函数执行编码任务,调用avserver_bufputfull函数,将编码后的压缩码流发送至压缩码流输出线程,同时调用avserver_bufputempty函数将一个空闲的缓冲区地址还给编码线程,以备下次编码执行时获取空闲缓冲区。

为方便后端解码,将视频压缩数据视频和图片数据头尾分别添加标志位,并通过传输模块将数据通过spi接口发送至fpga,fpga将数据通过422接口发送至数据综合器,数据综合器功能是对该视频压缩数据添加帧头帧尾并封包,最终发送到地面接收设备,图6是压缩码流输出模块流程图,虚线内表示压缩码流输出任务的流程,首先调用avserver_bufgetfull函数从视频编码线程获取存放压缩视频数据缓冲区的地址,然后再调用video_streamfilewrite函数将压缩码流发送至fpga,之后调用avserver_bufputempty函数将空闲的缓冲区地址还给编码线程。

参阅图7,可以通过上位机发送指令至fpga,再通过三个gpio接口进行高低电平配置,可编为多种模式发送至dm368,根据预先定好的协议,根据需求,对采集视频实时进行码率、分辨率、帧频的重新设置后进行压缩。

参阅图8,后端上位机解码首先将压缩数据进行挑路分包之后将图片数据进行组包,并分别送至解码器进行解码。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1