CN100410868C - 一种视频数据压缩方法 - Google Patents

一种视频数据压缩方法 Download PDF

Info

Publication number
CN100410868C
CN100410868C CNB2006100669425A CN200610066942A CN100410868C CN 100410868 C CN100410868 C CN 100410868C CN B2006100669425 A CNB2006100669425 A CN B2006100669425A CN 200610066942 A CN200610066942 A CN 200610066942A CN 100410868 C CN100410868 C CN 100410868C
Authority
CN
China
Prior art keywords
data
frame image
length
current frame
image data
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
Application number
CNB2006100669425A
Other languages
English (en)
Other versions
CN101046735A (zh
Inventor
谢建斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2006100669425A priority Critical patent/CN100410868C/zh
Publication of CN101046735A publication Critical patent/CN101046735A/zh
Application granted granted Critical
Publication of CN100410868C publication Critical patent/CN100410868C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种针对KVM应用的视频数据压缩方法,在该方法中:对于第一帧图像,将该图像数据进行编码压缩,得到图像编码数据,然后将该图像数据和图像编码数据当中数据长度较小的数据作为结果输出;对于第一帧之后的图像,将当前帧图像数据与前一帧图像数据相比较,获取两者的差异数据,并分别对当前帧图像数据和差异数据进行编码压缩得到当前帧图像编码数据和编码的差异数据,然后输出当前帧图像数据、当前帧图像编码数据、差异数据以及编码的差异数据当中数据长度最小的数据。本发明采用算法简单,便于以硬件实现,极大节省了硬件成本和PCB的空间,降低了KVM功能实现的成本,同时也提高了KVM图像传输的实时性。

Description

一种视频数据压缩方法
技术领域
本发明涉及图像压缩技术领域,特别是一种用于多计算机切换器(KVM)的视频数据压缩方法。
背景技术
众所周知,多计算机切换器(Keyboard Video Mouse,KVM)是一种用于服务器远端管理的技术,在KVM技术中,服务器的输入/输出设备(多计算机切换器)被放在远端。在使用过程中,将键盘、视频和鼠标的信息进行一定的处理后,通过网络传输到一台或多台服务器,实现从远端对于这些服务器的完全控制和管理。
图1为KVM的一种实用模式。图中的远端控制台(Management Station)通过局域网集线器(LAN Hub)与服务器主板(Server Main Board)相连接。在服务器端,通用串行总线接口(USB I/F)将键盘和鼠标数据传输给KVM模块,视频图像阵列接口(VGA I/F)将视频数据传输给KVM模块,KVM模块将这些键盘、视频和鼠标的数据实时传输到远端控制台。在传输过程中,需要由KVM模块和通过智能平台管理总线(IPMB)与KVM模块连接的底板管理控制器(BMC)对视频图像数据进行压缩处理,而控制台会将接收的压缩图像数据解压缩后显示。
对于KVM视频图像数据,可以采用视频高密光盘(VCD)的数据处理方式进行压缩。但是该技术的算法比较复杂,需要专用芯片,并且占用较大存储空间,所以成本比较高。并且VCD技术为有损压缩,会损失原图的细节。因此VCD技术无法与服务器管理领域技术融合,从而无法应用到KVM领域。
另外,还可以采用联合图像专家组(JPEG)图像压缩算法对KVM视频数据进行压缩。JPEG算法是专用于图像处理的压缩算法,图像压缩率很高。但是,这种压缩算法复杂,逻辑实现成本较高。并且JPEG算法为有损压缩,会损失原图的细节。另外,由于JPEG压缩算法复杂,所以压缩时间较长,图像的实时性相对较差。
发明内容
本发明提出了一种针对KVM应用的视频数据压缩方法,用以降低KVM功能实现的成本,提高KVM的图像传输实时性。
根据上述目的,本发明提供了一种视频数据压缩方法,该方法包括:对于第一帧图像,执行如下处理:A1.将第一帧图像数据进行编码压缩,得到第一帧图像编码数据;A2.将第一帧图像数据和第一帧图像编码数据当中数据长度较小的数据作为结果输出;对于第一帧之后的图像,执行如下处理:B1.将当前帧图像数据与前一帧图像数据相比较,获取两者的差异数据;B2.分别对当前帧图像数据和差异数据进行编码压缩,得到当前帧图像编码数据和编码的差异数据;B3.将当前帧图像数据、当前帧图像编码数据、差异数据以及编码的差异数据当中数据长度最小的数据作为结果输出。
步骤B1中所述比较为将当前帧图像数据与前一帧图像数据相减,所述差异数据为将当前帧图像数据与前一帧图像数据相减得到的数据。或者,所述比较为将当前帧图像数据与前一帧图像数据做异或运算,所述差异数据为将当前帧图像数据与前一帧图像数据做异或运算得到的数据。
所述图像数据为第一格式的图像数据;所述步骤A1和/或B1之前进一步包括:将从视频接口获取的图像数据转换为第一格式的图像数据。
所述第一格式的图像数据为8比特彩色图像数据,所述从视频接口获取的图像数据为24比特真彩图像数据。
步骤A1和/或步骤B2中所述的编码压缩为行程编码。
所述编码压缩的数据编码方式为:用1比特表示是否压缩;用M比特表示数据的长度;用N比特表示数据,其中M和N分别为正整数。
所述表示数据长度的M比特分为k部分,当数据长度用二进制表示的位数小于等于所述k部分中第一部分的比特数时,用第一部分表示数据长度;当数据长度用二进制表示的位数大于前L部分的比特之和且小于等于前L+1部分的比特数之和时,用前L+1部分表示数据长度。其中k、L为正整数,且L小于k。
从上述方案中可以看出,由于本发明采用算法简单,便于通过硬件实现,极大节省了硬件成本和印刷电路板(PCB)的空间,降低了KVM功能实现的成本,并且提高了KVM的图像传输实时性。另外,由于算法简单,终端图像数据的恢复也相对简单,便于实现一台终端同时控制多台服务器,从而节省了成本,并提高了效率。
附图说明
图1为KVM的实用模式图。
图2为KVM图像处理系统的结构示意图。
图3为根据本发明实施例的视频数据压缩方法的流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下举实施例对本发明进一步详细说明。
为了便于理解本发明,首先分析服务器管理功能和计算机图像显示特点。在KVM应用中,图像大多为简单窗口和菜单界面,因此图像的色彩比较简单,并且图像的变化较少,即使有变化也比较简单,例如窗口的切换、鼠标的移动等。本发明就是针对KVM应用中视频图像的特点而提出的一种简单的图像压缩方法。
通常的KVM图像处理系统的结构如图2所示,包括数字视频接口(DVI)、由现场可编程门阵列(FPGA)实现的图像处理逻辑、由BMC实现的图像传输控制部件以及远端计算机(PC)。
如图2所示,DVI将显示器的模拟视频信号数字化后,转换为红绿蓝(RGB)格式的计算机图像数据格式,输入图像处理逻辑,在逻辑电路中进行图像压缩处理后,由图像传输控制部件将压缩后的图像数据传输到远端计算机,而远端计算机将图像数据恢复后显示出来。
图3所示的是根据本发明实施例的图像压缩的流程示意图。参照图3,该方法包括以下步骤:
步骤S1:由于在服务器管理的场合,视频图像都是简单的界面,这些界面的色彩比较简单,所以在步骤S1中将从DVI输入的图像数据格式转换为色彩数据较少的图像数据格式。
如果DVI输入的是24比特(bit)真彩图像数据,可以将24bit真彩图像转换为8bit彩色图像。24bit图像数据中RGB每个基色都具有8bit数据,这里将其转换为R基色取2bit数据、G基色取3bit数据、B基色取3bit数据。
步骤S2:将当前帧图像数据与前一帧图像数据进行比较,比较的方法可以是相减或做异或(XOR)运算,从而得到当前帧图像数据与前一帧图像数据的差异数据。本实施例以异或运算为例说明,那么得到的是当前帧图像数据与前一帧图像数据的异或的图像数据。
在该步骤中,还可以进一步将前一帧图像数据更新为当前帧图像数据,从而为处理下一帧做准备。
步骤S3:将当前帧图像数据和异或的图像数据分别进行编码压缩。编码压缩的方法有多种,这里可以采用常见的行程编码方法。
步骤S4:BMC根据处理后的图像数据长度,控制图像数据传输。具体地,BMC根据现有的数据:当前帧图像数据、编码后的当前帧图像数据、差异数据、编码后的差异数据,以其中数据长度最小的数据作为结果输出,传输给远程PC。
需要注意的是,第一次传输数据,由于没有前一帧,所以输出的是当前帧图像数据和编码后的当前帧图像数据两者中数据长度较小的数据。另外,如果在传输过程中发生传输出错,那么BMC也选择输出当前帧图像数据和编码后的当前帧图像数据中数据长度较小的数据。
在上述图像处理过程中,由于同时总共需要存储4幅图像,所以对RAM只需求同时存储4幅图像的存储空间。例如,当图像尺寸为800×600时,需要800×600×4=1920kByte的存储空间;当图像尺寸为1024×768时,需要1024×768×4=3146kByte的存储空间。
下面具体介绍步骤S3中的一种图像数据编码方法,该方法仅采用比较和计数的简单算法,便于逻辑电路的硬件实现。
Figure C20061006694200081
表1行程编码的图像数据编码
Figure C20061006694200082
表2长度编码及数据
如表1所示,在行程编码的图像数据编码中,数据可以分为4个部分,第一部分占4byte,用来表示图像数据的长度;第二部分占2byte,其中1bit用来表示该数据是否为差异值,例如用1表示是和0表示否,其余15bit用来表示图像点阵宽度;第三部分占2byte,用来表示图像点阵高度;第四部分占N byte,为具体图像数据。
表2所示为图像数据中的长度编码以及数据。Byte1中的第一bit表示数据是否为压缩数据,例如1表示是而0表示否。而byte1中的其余7bit和byte2、byte3来表示长度编码。而byte4表示这些数据的图像点颜色。
在长度编码中,采用多级的方式实现长度编码。如表2所示,如果长度小于等于63,则
长度=长度1;
如果长度大于63而小于等于8191,则
长度=(长度1×128)+长度2;
如果长度大于8191,则
长度=(长度1×32768)+(长度2×256)+长度3
在表2所示的长度编码中,最大可表示的长度为2097151。
换言之,将表示数据长度的M比特分为k部分,当数据长度用二进制表示的位数小于等于第一部分的比特数时,用第一部分表示数据长度;当数据长度用二进制表示的位数大于前L部分的比特之和且小于等于前L+1部分的比特数之和时,用前L+1部分表示数据长度。其中M、k、L为正整数,且L小于k。以表2为例,其中M=23,k=3,那么第一部分为7bit,第二部分为8bit,第三部分为8bit。
在表2所示的数据中,在数据为压缩的情况下,即“是否压缩”bit=1,则数据编码格式为:长度编码+1 byte数据;在数据不是压缩的情况下,即“是否压缩”bit=0,则数据编码格式为:长度编码+nbyte数据。
例如,原始数据为0x01,0x01,0x01,0x01,0x01,由于数据相同,所以采取压缩,因此“是否压缩”bit=1。由于数据长度为5,小于63,所以采用长度1表示长度,因此表2中byte1的后7个bit为0000101。在此后面加上1byte的数据,因此该数据的编码为0x85,0x01。
再例如,原始数据为0x01,0x02,0x03,0x04,0x05,则编码为0x05,0x01,0x02,0x03,0x04,0x05,其中“0x05”表示不压缩以及长度为5,“0x01,0x02,0x03,0x04,0x05”为数据。原始数据为0x01,0x01,0x01,0x01,0x01,0x04,0x05,则编码为0x85,0x01,0x02,0x04,0x05,其中“0x85,0x01”表示压缩的5个“0x01”,长度为5;“0x02,0x04,0x05”表示未压缩的“0x04,0x05”,长度为2。
如果,800×600的一幅纯白图像的编码为0xce,0xd3,0x00,0xff,那么它的长度为:
长度=((0xce&0x3f)<<15)+((0xd3&0x7f)<<8)+0x00=480000=800×600
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1. 一种视频数据压缩方法,其特征在于,该方法包括:
对于第一帧图像,执行如下处理:
A1.将第一帧图像数据进行编码压缩,得到第一帧图像编码数据;
A2.将第一帧图像数据和第一帧图像编码数据当中数据长度较小的数据作为结果输出;
对于第一帧之后的图像,执行如下处理:
B1.将当前帧图像数据与前一帧图像数据相比较,获取两者的差异数据;
B2.分别对当前帧图像数据和差异数据进行编码压缩,得到当前帧图像编码数据和编码的差异数据;
B3.将当前帧图像数据、当前帧图像编码数据、差异数据以及编码的差异数据当中数据长度最小的数据作为结果输出。
2. 根据权利要求1所述的方法,其特征在于,
步骤B1中所述比较为将当前帧图像数据与前一帧图像数据相减,所述差异数据为将当前帧图像数据与前一帧图像数据相减得到的数据;或者
所述比较为将当前帧图像数据与前一帧图像数据做异或运算,所述差异数据为将当前帧图像数据与前一帧图像数据做异或运算得到的数据。
3. 根据权利要求1所述的方法,其特征在于,
所述图像数据为第一格式的图像数据;
所述步骤A1和/或步骤B1之前进一步包括:将从视频接口获取的图像数据转换为第一格式的图像数据。
4. 根据权利要求3所述的方法,其特征在于,所述第一格式的图像数据为8比特彩色图像数据,所述从视频接口获取的图像数据为24比特真彩图像数据。
5. 根据权利要求1所述的方法,其特征在于,步骤A1和/或步骤B2中所述的编码压缩为行程编码。
6. 根据权利要求5所述的方法,其特征在于,所述编码压缩的数据编码方式为:用1比特表示是否压缩;用M比特表示数据的长度;用N比特表示数据,其中M和N分别为正整数。
7. 根据权利要求6所述的方法,其特征在于,所述表示数据长度的M比特分为k部分,
当数据长度用二进制表示的位数小于等于所述k部分中第一部分的比特数时,用第一部分表示数据长度;
当数据长度用二进制表示的位数大于所述k部分中前L部分的比特之和且小于等于前L+1部分的比特数之和时,用前L+1部分表示数据长度,
其中k、L为正整数,且L小于k。
CNB2006100669425A 2006-03-30 2006-03-30 一种视频数据压缩方法 Active CN100410868C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100669425A CN100410868C (zh) 2006-03-30 2006-03-30 一种视频数据压缩方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100669425A CN100410868C (zh) 2006-03-30 2006-03-30 一种视频数据压缩方法

Publications (2)

Publication Number Publication Date
CN101046735A CN101046735A (zh) 2007-10-03
CN100410868C true CN100410868C (zh) 2008-08-13

Family

ID=38771378

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100669425A Active CN100410868C (zh) 2006-03-30 2006-03-30 一种视频数据压缩方法

Country Status (1)

Country Link
CN (1) CN100410868C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102520898A (zh) * 2011-11-18 2012-06-27 惠州华阳通用电子有限公司 一种用于嵌入式操作系统序列图的处理方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101832755A (zh) * 2010-06-03 2010-09-15 北京理工大学 一种检测微悬臂梁焦平面阵列的微梁偏转量的数字处理方法
CN102158682A (zh) * 2011-04-22 2011-08-17 杭州比特瑞旺电脑有限公司 一种多物理访问通道在kvm-over-ip中的实现方法
CN103135524B (zh) * 2012-05-31 2014-07-23 山东电力集团公司青岛供电公司 一种配电站房监控系统
CN106028029B (zh) * 2016-05-25 2018-11-06 杭州比特瑞旺电脑有限公司 低延时低复杂度的数字kvm切换器视频无损压缩方法及系统
CN106101703B (zh) * 2016-06-20 2018-11-06 杭州比特瑞旺电脑有限公司 一种面向数字kvm切换器的屏幕视频压缩方法
CN107257474B (zh) * 2017-08-16 2020-03-10 郑州云海信息技术有限公司 一种面向bmc芯片的视频信息压缩系统和方法
CN110113617B (zh) * 2019-06-13 2022-09-20 腾讯科技(深圳)有限公司 图像压缩与解压缩的方法、装置、电子设备及存储介质
CN113395487A (zh) * 2021-06-01 2021-09-14 平安科技(深圳)有限公司 视频数据的存储管理方法、装置、计算机设备及存储介质
CN113409922B (zh) * 2021-08-19 2023-04-14 浙江太美医疗科技股份有限公司 图像处理方法及装置、图像存储方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1128099A (zh) * 1994-04-29 1996-07-31 摩托罗拉公司 用以确定对视频块是否进行帧内编码的方法
CN1130970A (zh) * 1993-09-14 1996-09-11 恩威特奇公司 用反复误差数据编码方法进行视频压缩
US5917552A (en) * 1996-03-29 1999-06-29 Pixelvision Technology, Inc. Video signal interface system utilizing deductive control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1130970A (zh) * 1993-09-14 1996-09-11 恩威特奇公司 用反复误差数据编码方法进行视频压缩
CN1128099A (zh) * 1994-04-29 1996-07-31 摩托罗拉公司 用以确定对视频块是否进行帧内编码的方法
US5917552A (en) * 1996-03-29 1999-06-29 Pixelvision Technology, Inc. Video signal interface system utilizing deductive control

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102520898A (zh) * 2011-11-18 2012-06-27 惠州华阳通用电子有限公司 一种用于嵌入式操作系统序列图的处理方法

Also Published As

Publication number Publication date
CN101046735A (zh) 2007-10-03

Similar Documents

Publication Publication Date Title
CN100410868C (zh) 一种视频数据压缩方法
KR100374605B1 (ko) 그래픽 신호의 광 전송장치 및 방법
CN101197578B (zh) 游程编码方法、游程编码解码系统以及颜色数据存储方法
CN103458242A (zh) 基于颜色分类与聚类的图像压缩和解压缩方法
CN1976429B (zh) 基于pc和高清视频信号采集卡的视频传输系统及方法
WO2022252488A1 (zh) 一种图像压缩方法、装置、电子设备及可读存储介质
US20160119621A1 (en) Image processing method and display apparatus
CN103152573A (zh) 一种移动终端与智能电视间图像帧传输的方法及系统
CN101990095A (zh) 压缩文件生成方法和设备、相关的相机模块和终端
CN101727424A (zh) 利用连接端口来传收自订格式的信号的电子装置
CN105100814A (zh) 图像编码、解码方法及装置
CN112068790B (zh) 拼接显示系统
US20140029864A1 (en) Compression encoding and decoding method and apparatus
CN103581616A (zh) 监控系统、图像压缩串行器以及图像解压缩解串行器
CN211019016U (zh) 视频处理设备
CN105144726A (zh) 指示媒体内容的样本的标称范围的定制数据
CN101729901A (zh) 用于图像压缩的系统和方法
CN102984508A (zh) 一种摄像机
CN111031388B (zh) Yuv4:4:4数据的编解码方法
CN101998154B (zh) 传送影像讯号至多台远端操控电脑的多电脑切换器及方法
CN210093390U (zh) 一种分布式图像回显处理系统
JP2019502287A (ja) 共通の情報データセットによって駆動される候補プロセスセットから、ビデオデータに適用されるプロセスを選択するための方法及び装置
CN104881886A (zh) 用链码编码彩色动画图像的方法
CN116170592B (zh) 高分辨率视频的传输方法、装置、设备及介质
CN210137382U (zh) 一种8k信号转换系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: TENCENT TECHNOLOGY (SHENZHEN) CO., LTD.

Free format text: FORMER OWNER: HUAWEI TECHNOLOGY CO LTD

Effective date: 20111028

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 518129 SHENZHEN, GUANGDONG PROVINCE TO: 518057 SHENZHEN, GUANGDONG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20111028

Address after: 518057 Tencent Building, Nanshan District hi tech park, Shenzhen, Guangdong

Patentee after: Tencent Technology (Shenzhen) Co., Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: Huawei Technologies Co., Ltd.