视频数据压缩、解压缩的方法、装置及移动终端
技术领域
本发明涉及视频压缩领域,尤其涉及一种视频数据压缩、解压缩的方法、装置及移动终端。
背景技术
目前,经常需要对视频进行压缩之后,方将压缩的视频数据进行网络传输,以降低网络传输量,节约网络带宽。但当前对视频数据进行压缩是采用常规的压缩和解压方式(比如(MPEG,Moving Picture Experts Group)、(AVI,Audio Video Interleaved)等 ),目前采用的视频压缩方式的压缩率不高,并且存储压缩损伤,不能保证数据完好进行压缩和解压。
发明内容
本发明解决的问题在于,提供视频数据的压缩方法、视频数据的解压缩方法、视频数据的压缩装置、视频数据的解压缩装置、以及移动终端。本发明能在保证数据压缩的高压缩率的前提下,保证数据的完好无损。
具体的,本发明实施例提供的视频数据的压缩方法,包括:
采集视频图像;
当采集的视频图像是关键帧时,对采集的视频图像进行视频压缩;
当采集的视频图像是非关键帧时,将采集的视频图像与前一次采集的视频图像进行差值运算,获得一差值图像,并对所述差值图像进行视频压缩。
较佳的,所述采集视频图像,包括:
采集桌面视频图像。
较佳的,所述对采集的视频图像进行视频压缩,包括:
对采集的视频图像依次进行行程长度编码RLE压缩和数据压缩库Zlib压缩。
较佳的,所述对所述差值图像进行视频压缩,具体包括:
对采集的差值图像依次进行行程长度编码RLE压缩和数据压缩库Zlib压缩。
相应的,本发明实施例提供的视频数据的解压缩方法,包括:
接收视频图像;
当接收的视频图像是关键帧时,对接收的视频图像进行视频解压缩;
当接收的视频图像是非关键帧时,对接收的视频图像进行视频解压缩,并将解压缩后的图像与前一次接收的视频图像进行差值运算,还原视频图像原始数据。
较佳的,所述接收视频图像,包括:
接收桌面视频图像。
较佳的,当接收的视频图像是关键帧时,所述对接收的视频图像进行视频解压缩,包括:
对接收的视频图像依次进行Zlib解压缩和RLE解压缩。
较佳的,当接收的视频图像是非关键帧时,所述对接收的视频图像进行视频解压缩,具体包括:
对接收的视频图像依次进行Zlib解压缩和RLE解压缩。
相应的,本发明实施例提供的视频数据的压缩装置,包括:
视频采集单元,用于采集视频图像;
第一处理单元,用于当所述视频采集单元采集的视频图像是关键帧时,对采集的视频图像进行视频压缩;
第二处理单元,用于当所述视频采集单元采集的视频图像是非关键帧时,将采集的视频图像与前一次采集的视频图像进行差值运算,获得一差值图像,并对所述差值图像进行视频压缩。
较佳的,所述第一处理单元进一步用于对采集的视频图像依次进行RLE压缩和Zlib压缩。
较佳的,所述第二处理单元,包括:
第一差值运算单元,用于当所述视频采集单元采集的视频图像是非关键帧时,将采集的视频图像与前一次采集的视频图像进行差值运算,获得一差值图像;
压缩处理子单元,用于对所述第一差值运算单元运算获得的差值图像依次进行RLE压缩和Zlib压缩。
相应的,本发明实施例提供的视频数据解压缩装置,包括:
视频接收单元,用于接收视频图像;
第三处理单元,用于当所述视频接收单元接收的视频图像是关键帧时,对接收的视频图像进行视频解压缩;
第四处理单元,用于当所述视频接收单元当接收的视频图像是非关键帧时,对接收的视频图像进行视频解压缩,并将解压缩后的图像与前一次接收的视频图像进行差值运算,还原视频图像原始数据。
较佳的,所述第三处理模块进一步用于对接收的视频图像依次进行Zlib解压缩和RLE解压缩。
较佳的,所述第四处理单元,包括:
解压缩处理子单元,用于当接收的视频图像是非关键帧时,对接收的视频图像进行视频解压缩;
第二差值运算单元,用于将所述解压缩处理子单元解压缩后的图像与前一次接收的视频图像进行差值运算,还原视频图像原始数据。
相应的,本发明实施例一种提供的移动终端,其包括本发明实施例所述的视频数据压缩装置。
相应的,本发明实施例提供的另一种移动终端,其包括本发明实施例所述的视频数据解压缩装置。
相应的,本发明实施例提供的另一种移动终端,其同时包括本发明实施例所述的视频数据压缩装置和本发明实施例所述的视频数据解压缩装置。
实施本发明实施例,具有如下有益效果:
本发明实施例对采集的视频图像进行区分对待,当采集的视频图像为非关键帧时,其在对非关键帧进行压缩前,首先将当前获取的帧与前一次获取的帧取差值图像,然后仅对差值图像进行压缩,这样仅需要对前后两次图像的差异部分进行压缩,可保证数据的高压缩率,而在接收数据进行解压缩时,亦是先对接收的数据进行解压缩,然后再进行差值运算,进而还原视频图像的原始数据,因此,可保证数据完好无损。
附图说明
图1是本发明的视频数据的压缩方法的一个实施例流程示意图;
图2是本发明的视频数据的解压缩方法的一个实施例的流程示意图;
图3是本发明的视频数据的压缩装置的一个实施例的结构组成示意图;
图4是本发明的视频数据的解压缩装置的一个实施例的结构组成示意图;
图5是本发明对视频图像进行差值运算的图像变化示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
图1是本发明的视频数据的压缩方法的一个实施例流程示意图。如图1所示,本发明视频数据的压缩方法包括:
步骤S100,采集视频图像。具体实现中,在步骤S100可以采集桌面视频图像。比如,当用户从第一台电脑对第二台电脑执行远程操控时,则需要在第二台电脑上捕捉用户的操作视频图像发送给第一台电脑,以使两台电脑的桌面显示图像同步。
步骤S101,当采集的视频图像是关键帧时,对采集的视频图像进行视频压缩。具体实现中,在步骤S101可对采集的关键帧依次进行行程长度编码(RLE)压缩和数据压缩库(Zlib)压缩,其中RLE对于连续相同的像素数来说,压缩率非常高,非常适合压缩屏幕这种同颜色块多的场合,并且压缩和解压缩速度很快,不需要系统额外的内存开销。而Zlib不同的压缩级别数值可指示不同的压缩执行速度。而本发明实施例所述的关键帧是指角色或物体运动或变化中的关键动作所处的那一帧,比如二维动画中的原画。
步骤S102,当采集的视频图像是非关键帧时,将采集的视频图像与前一次采集的视频图像进行差值运算,获得一差值图像,并对所述差值图像进行视频压缩。具体实现中,在步骤S102可通过遥感图像处理平台(ENVI,The Environment for Visualizing Images)的bandmath对视频图像做差值运算,具体参考图5所示,当经过差值运算后,前一帧与当前帧的相同的区域变成黑色块,仅不同的区域能在差值帧中看到。并且在步骤S102可对所述差值图像依次进行行程长度编码RLE压缩和数据压缩库Zlib压缩。
具体实现中,当执行完步骤S102即可将压缩后的数据发送给接收端。
上述的实施例,对采集的视频图像进行区分对待,当采集的视频图像为非关键帧时,其在对非关键帧进行压缩前,首先将当前获取的帧与前一次获取的帧取差值图像,然后仅对差值图像进行压缩,这样仅需要对前后两次图像的差异部分进行压缩,可保证数据的高压缩率。另外,上述实施例对数据压缩时,先对数据进行RLE压缩,然后再进行Zlib压缩,可保证数据的完整性。
相应的,为配合上述方法的实现,本发明实施例提供了一种视频数据的解压缩方法,具体的,图2是本发明的视频数据的解压缩方法的一个实施例的流程示意图。如图2所示,本发明的视频数据的解压缩的方法包括:
步骤S200,接收视频图像。具体实现中,在步骤S200接收桌面视频图像。
步骤S201,当接收的视频图像是关键帧时,对接收的视频图像进行视频解压缩。具体实现中,在步骤S201可对接收的视频图像依次进行Zlib解压缩和RLE解压缩。这个过程与图1中进行的RLE和Zlib压缩过程刚好相反。
步骤S202,当接收的视频图像是非关键帧时,对接收的视频图像进行视频解压缩,并将解压缩后的图像与前一次接收的视频图像进行差值运算,还原视频图像原始数据。具体实现中,可依次对接收的视频图像进行Zlib解压缩和RLE解压缩。相同的,在步骤S202可通过ENVI的bandmath对视频图像做差值运算,还原视频图像原始数据。
上述的实施例,在接收数据进行解压缩时,亦是先对接收的数据进行解压缩,然后再进行差值运算,进而还原视频图像的原始数据,因此,可保证数据完好无损。
相应的,本发明实施例提供了能够实施上述方法的装置,下面结合图3和图4对本发明的装置实施例进行说明。
图3是本发明的视频数据的压缩装置的一个实施例的结构组成示意图。该装置可用于实施图1所示的方法。如图3所示,本实施例的装置包括视频采集单元31、第一处理单元32和第二处理单元33,其中:
所述视频采集单元31,用于采集视频图像。具体实现中视频采集单元31采集的视频图像可为桌面视频图像。
所述第一处理单元32,用于当所述视频采集单元31采集的视频图像是关键帧时,对采集的视频图像进行视频压缩。具体实现中,第一处理单元32用于对采集的视频图像依次进行RLE压缩和Zlib压缩。
所述第二处理单元33,用于当所述视频采集单元31采集的视频图像是非关键帧时,将采集的视频图像与前一次采集的视频图像进行差值运算,获得一差值图像,并对所述差值图像进行视频压缩。进一步,第二处理单元33可包括第一差值运算单元331和压缩处理子单元332,其中所述第一差值运算单元331,用于当所述视频采集单元31采集的视频图像是非关键帧时,将采集的视频图像与前一次采集的视频图像进行差值运算,获得一差值图像;所述压缩处理子单元332,用于对所述第一差值运算单元331运算获得的差值图像依次进行RLE压缩和Zlib压缩。具体实现中,所述第一差值运算单元331可通过ENVI的bandmath工具对视频图像进行差值运算。
图4是本发明的视频数据的压缩装置的一个实施例的结构组成示意图。该装置可用于实施图2所示的方法。如图4所示,本实施例的装置包括视频接收单元41、第三处理单元42和第四处理单元43,其中:
所述视频接收单元41,用于接收视频图像。具体实现中视频接收单元41接收的视频图像可为桌面视频图像。
所述第三处理单元42,用于当所述视频接收单元41接收的视频图像是关键帧时,对接收的视频图像进行视频解压缩。具体实现中,第三处理单元42可依次对接收的视频图像进行Zlib解压缩和RLE解压缩,以还原视频数据。
所述第四处理单元43,用于当所述视频接收单元41当接收的视频图像是非关键帧时,对接收的视频图像进行视频解压缩,并将解压缩后的图像与前一次接收的视频图像进行差值运算,还原视频图像原始数据。第四处理单元43进一步可包括解压缩处理子单元431和第二差值运算单元432,其中:所述解压缩处理子单元431,用于当接收的视频图像是非关键帧时,对接收的视频图像进行视频解压缩。具体实现中,解压缩处理子单元431可对接收的视频图像依次进行Zlib解压缩和RLE解压缩。而所述第二差值运算单元432,用于将所述解压缩处理子单元431解压缩后的图像与前一次接收的视频图像进行差值运算,还原视频图像原始数据。
本发明实施例所述的视频数据解压缩装置和视频数据压缩装置具体实现中可设置于移动终端(比如PC机、手机等)中,因此本发明实施例还提供了可包括视频数据解压缩装置和/或视频数据压缩装置的移动终端。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。