首页 理论教育 优化视频传输模块-压缩技术探析

优化视频传输模块-压缩技术探析

时间:2023-06-24 理论教育 版权反馈
【摘要】:由于视频图像信息的数据量非常大,因此,必须先对图像进行压缩,然后通过网络传送到用户站点。图3.13混合编码方案的视频压缩流程对于第1种以像素为基础的压缩方式,在图像质量一定的情况下,帧频和压缩比明显提高。显然,视频压缩技术数字化是压缩技术的关键。

优化视频传输模块-压缩技术探析

由于视频图像信息的数据量非常大,因此,必须先对图像进行压缩,然后通过网络传送到用户站点。用户站点把接收到的已压缩的图像信息进行解压缩,还原成原来的图像。随后,用户可根据总的调度策略给远端机器人发出新的控制命令,远端机器人再完成相应的动作。同时,又通过网络把机器人的动作传送到用户站点。这样,远端机器人的一举一动都能及时地呈现在控制者的面前,好像自己就在机器人的现场一样,即有一种现场感。此外,为了把控制命令和运动过程都记录下来,为以后的分析、研究提供准确的数据,必须建立控制命令和运动过程数据库。

系统采用客户机/服务器体系结构。从总体上,系统必须实现如下功能和相关技术。

为了实现遥操作命令的传输和执行,客户机接收用户提供的机器人控制命令,然后形成相应的命令帧格式发送到网络。服务器对接收到的控制命令进行分析和解释,并通过机器人控制系统驱动机器人执行相应的命令。为了实现机器人现场图像的传输,首先由客户机采集视频图像,然后进行数据压缩,再发送到网络上。服务器则把从网络上接收到的图像数据进行组合,完成相应的解压缩工作,恢复现场的视频图像。

所以,从对控制命令的处理这一角度来看,本地是客户机,远端是服务器;而从对视频图像的处理这一角度来看,远端是客户机,本地是服务器。

在实时传输过程中,系统首先建立采集窗口,然后指定回调函数。系统采集的图像存放在一段连续的内存中,以回调函数的形式传送给编程人员。在回调函数中,先进行压缩处理,然后对数据打包,再把数据包按序号依次发送到Internet网络上。本地站点接收到数据包以后,按序号组合成数据块,然后解压缩,最后在给定窗口上重现视频图像。

为了取得最佳性能,系统实现时,在H.263基础上采用了混合压缩编码方案,其视频图像压缩的基本流程如图3-13所示。混合压缩编码的思想是:先判断是否为关键帧,若是关键帧,则先进行离散余弦变换DCT(discrete cosine transform),然后对DCT系数作量化处理,再对量化后的交流(AC)系数以Z形路径进行行程编码(run-length encoding,RLE),最后进行哈夫曼编码;若不是关键帧,则采用帧间压缩。

为了实现良好的帧间压缩,在H.263基础上比较了两种不同的压缩方式,并且将这两种方式按不同的情况结合起来构成混合压缩编码方案。

第1种方式以像素为基础,首先将其与上一帧作差,得到一个稀疏矩阵。在作差的过程中,采用小范围匹配的方法去掉一部分噪声,然后采用优化的行程编码得到最后结果,并把当前帧图像保存在指定的内存区,作为下一帧作差的参考帧。

第2种方式是以宏块为基础的运动补偿方式,首先计算运动矢量,然后采用行程编码(RLE)和哈夫曼编码。由于机器人的运动主要是平移和转动,而不是像真人那样还有脸部表情等细微变化,所以,用运动补偿技术既可以达到较高的压缩比又有相当好的图像质量。

图3.13 混合编码方案的视频压缩流程

对于第1种以像素为基础的压缩方式,在图像质量一定的情况下,帧频和压缩比明显提高。而对于第2种以宏块为基础的运动补偿压缩方式,在数据传输率较低的情况下,达到了较高的压缩比、较好的图像质量和基本实时的视频效果。因此,这两种方式分别用在数据传输率较高和较低两种情况下。

为了吸收二者的长处,在系统中采用了混合压缩编码方案,此方案将上述两种方式结合起来,这样,正好能使系统有效地适用于Internet情况。因为远程站点之间通过Internet网进行传输时,信道的数据传输率不是固定的,所以,系统中通过信道测试反馈信息来改变量化时的步长,从而调节视频信息的数码率和压缩方法,以便更好地适应信道传输率的变化,并获得最佳压缩效果。

视频传输的实现包括两部分,即全局视觉和本地视觉。(www.xing528.com)

考虑到视觉信号需要通过Java编写的Web服务器提供给客户端参考,我们选择了JMF(Java Media Framework,Java媒体框架)API进行开发,协议选择的是RTP协议(Real-time Transport Protocol,实时传输协议)。

系统的全局视觉全局图像服务器端以USB接口的WebCam为视频捕获设备,通过JMF提供的视频图像捕获方法采集视频信号,由软件(JMF内置的压缩算法)实现对视频数据的压缩,然后通过RTP协议把视频信号实时地发送出去。在客户端,用户登录到服务器后,在通用的浏览器上下载并运行服务器端的JavaApplet程序,利用RTP协议接收实时视频图像信息,并由JMF内置方法对视频数据进行解压,然后进行视频播放。

1.服务机器人远程控制系统要解决的两大技术

首先,视频数据的压缩和解压缩是必须的。视频图像的信息量非常巨大,例如,1幅640×480中分辨率的彩色图像(24 bit/像素),其数据量为0.92 MB,如果以每秒30帧的速率播放,则视频信号的数码率高达27.6 Mb/s。显然,视频压缩技术数字化是压缩技术的关键。

其次,视频数据的实时传输技术是另一个关键技术。数字视频远程控制系统的数据通信有以下特点。

实时性:视频数据属于实时数据,必须实时处理,如压缩、解压缩、传输、同步等。

分布性:图像采集和图像接收位于不同地点,通过计算机局域网或广域网连接。

同步性:尽管视频信息具有分布性,但在服务机器人终端显示时必须保持同步。

2.视频压缩编码

视频压缩编码的目标是在尽可能保证视觉效果的前提下减少视频数据量。由于视频是连续的静态图像,因此其压缩编码算法与静态图像的压缩编码算法有某些共同之处,但是运动的视频还有其自身的特性,因此在压缩时还应考虑其运动特性才能达到高压缩的目标。

有损和无损压缩:在视频压缩中有损(lossy)和无损(lossless)的概念与静态图像中基本类似。无损压缩也即压缩前和解压缩后的数据完全一致。多数的无损压缩都采用RLE(行程编码)算法。有损压缩意味着解压缩后的数据与压缩前的数据不一致。在压缩的过程中要丢失一些不敏感的图像或音频信息,而且丢失的信息不可恢复。

帧内和帧间压缩:帧内(intraframe)压缩也称为空间压缩(spatial compression)。当压缩一帧图像时,仅考虑本帧的数据而不考虑相邻帧之间的冗余信息,这实际上与静态图像压缩类似。帧内一般采用有损压缩算法,由于帧内压缩时各个帧之间没有相互关系,所以压缩后的视频数据仍然可以以帧为单位进行编辑。

对称和不对称编码:对称性(symmetric)是压缩编码的一个关键特征。对称意味着压缩和解压缩占用相同的计算处理能力和时间,对称算法适合于实时压缩和传送视频。非对称意味着压缩时需要花费大量的处理能力和时间,而解压缩时则能较好地实时回放,也就是以不同的速度进行压缩和解压缩。

视频采集完成后,对于机器人控制系统而言,还需要将现场视频图像传送到远端。一般使用基于TCP/IP的网络进行传输。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈