CN103747260B - 一种压缩、解压缩方法、装置以及扫描系统 - Google Patents

一种压缩、解压缩方法、装置以及扫描系统 Download PDF

Info

Publication number
CN103747260B
CN103747260B CN201310732863.3A CN201310732863A CN103747260B CN 103747260 B CN103747260 B CN 103747260B CN 201310732863 A CN201310732863 A CN 201310732863A CN 103747260 B CN103747260 B CN 103747260B
Authority
CN
China
Prior art keywords
data
differential
processing
layer
channel
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
CN201310732863.3A
Other languages
English (en)
Other versions
CN103747260A (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.)
Neusoft Medical Systems Co Ltd
Original Assignee
Neusoft Medical Systems 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 Neusoft Medical Systems Co Ltd filed Critical Neusoft Medical Systems Co Ltd
Priority to CN201310732863.3A priority Critical patent/CN103747260B/zh
Publication of CN103747260A publication Critical patent/CN103747260A/zh
Application granted granted Critical
Publication of CN103747260B publication Critical patent/CN103747260B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明实施例公开了一种压缩、解压缩方法、装置及扫描系统,其中,压缩方法包括:接收数据采集器发送的数据;对接收到的数据进行两级差分处理,得到差分数据;按照预设的数据长度确定所述差分数据的数据长度,对所述差分数据进行编码生成包含数据长度标识和数据的编码数据;按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧,并向所述发送控制器发送所述数据帧。其中,解压缩方法是压缩方法的逆处理过程。可见,本发明能够提高压缩、解压缩处理速率保证数据传输实时性,以使扫描系统无需增加额外的存储装置,就能够提高滑环的性能。

Description

一种压缩、解压缩方法、装置以及扫描系统
技术领域
本发明涉及医学图像技术领域,特别是涉及一种压缩、解压缩装置以及扫描系统。
背景技术
X射线计算机断层扫描(X-ray Com puted Tom ography scan,X-rayCT)是利用计算机技术对被测物体断层扫描图像进行重建获得三维断层图像的扫描方式。现有的CT设备主要包括旋转部分和固定部分,其中,旋转部分包括:数据采集器、发送控制器和滑环旋转端;固定部分包括:滑环固定端、接收控制端和控制台计算机。
随着X射线计算机断层扫描系统的发展,单位时间内处理的数据量越来越大,由于数据传输必需通过滑环才能发送至接收控制器,如何提高滑环的性能就尤为重要。目前,常常采用在系统中增加数据压缩和解压缩装置的方式以间接提高滑环的性能,压缩装置将数据采集器采集的数据进行压缩,并将压缩后数据通过发送控制器发送至滑环旋转端,接收控制器配合滑环固定端的数据输出规则将接收到的数据给解压缩装置,解压缩装置将解压后的数据发送给控制台计算机。这样,通过压缩和解压缩处理以提高滑环处理性能。
现有压缩装置的压缩速率不高,由于数据压缩处理是需要一定时间的,为了保证数据不丢失,需要将接收到的数据先缓存起来,因此就必须在系统中增加一个大容量存储器(如固态驱动器)做缓存处理。
发明内容
为了解决上述技术问题,本发明实施例中提供了一种压缩、解压缩方法、装置以及扫描系统,用以提高压缩、解压缩速率,以满足数据传输的实时性需求,以使扫描系统无需增加额外的存储装置,就能够提高滑环的性能。
本发明实施例公开了如下技术方案:
本发明实施例提供一种压缩方法,所述方法包括:
接收数据采集器发送的数据;
对接收到的数据进行两级差分处理,得到差分数据;
按照预设的数据长度确定所述差分数据的数据长度,对所述差分数据进行编码生成包含数据长度标识和数据的编码数据;
按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧,并向所述发送控制器发送所述数据帧。
优选的,所述对接收到的数据进行两级差分处理,得到差分数据,包括:
对接收到的数据先进行通道差分处理,再进行层差分处理,得到差分数据;或者,
对接收到的数据先进行层差分处理,再进行通道差分处理,得到差分数据。
优选的,所述通道差分处理包括:将接收到的第1个通道数据直接输出作为第1个通道差分数据;
对接收到第n个通道数据与第n-1个通道数据作减法处理,得到第n个通道差分数据;所述n大于或者等于2;
所述层差分处理包括:
将第1层中的数据直接输出作为第1层差分数据;
对接收到的第m层中数据与第m-1层中数据作减法处理,得到第m层差分数据,所述m大于或者等于2。
优选的,所述按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧,包括:
去除所述编码数据中的冗余项;
按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次确定所述编码数据应该整合的数据位宽,将连续的所述编码数据打包为数据位宽等于所述发送控制器处理位宽的数据帧。
本发明实施例还提供一种解压缩方法,所述方法包括:
接收接收控制器发送的数据帧;
根据数据长度标识从当前数据帧中依次提取数据,并将接收到的下一个数据帧与当前数据帧首尾相连,依次从所有数据帧中提取数据;
将所提取的数据依次打包成预设长度的数据作为解码数据,所述预设长度等于压缩处理中两级差分后数据的长度;
对所述解码数据进行两级差分逆处理得到解压缩数据。
优选的,所述对所述解码数据进行两级差分逆处理得到解压缩数据,包括:
对接收到的数据先进行通道逆差分处理,再进行层逆差分处理,得到解压缩数据;或者,
对接收到的数据先进行层逆差分处理,再进行通道逆差分处理,得到解压缩数据。
优选的,所述通道逆差分处理包括:
接收到的第1个通道数据直接输出作为第1个通道逆差分数据;
依次对接收到的第n个通道数据与第n-1个通道数据作加法处理,得到第n个通道逆差分数据;所述n大于或者等于2;
所述层逆差分处理包括:
接收到第1层数据直接输出作为第1层逆差分数据;
依次对接收到的第m层数据与第m-1层数据作加法处理,得到第m层逆差分数据,所述m大于或者等于2。
本发明实施例还提供一种压缩装置,所述装置包括:
接收单元,用于接收数据采集器发送的数据;
差分单元,用于对接收到的数据进行两级差分处理,得到差分数据;
编码单元,用于按照预设的数据长度确定所述差分数据的数据长度,对所述差分数据进行编码生成包含数据长度标识和数据的编码数据;
打包单元,用于按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧;
发送单元,用于向所述发送控制器发送所述数据帧。
优选的,所述差分单元,具体用于对接收到的数据先进行通道差分处理,再进行层差分处理,得到差分数据;或者,
所述差分单元,具体用于对接收到的数据先进行层差分处理,再进行通道差分处理,得到差分数据。
优选的,所述差分单元,包括:
通道差分模块,用于将接收到的第1个通道数据直接输出作为第1个通道差分数据;对接收到第n个通道数据与第n-1个通道数据作减法处理,得到第n个通道差分数据;所述n大于或者等于2;
层差分模块,用于将第1层中的数据直接输出作为第1层差分数据;对接收到的第m层中数据与第m-1层中数据作减法处理,得到第m层差分数据,所述m大于或者等于2。
优选的,所述打包单元,包括:
去除模块,用于去除所述编码数据中的冗余项;
打包模块,用于按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次确定所述编码数据应该整合的数据位宽,将连续的所述编码数据打包为数据位宽等于所述发送控制器处理位宽的数据帧。
本发明实施例还提供了一种解压缩装置,所述装置包括:
接收单元,用于接收接收控制器发送的数据帧;
提取单元,用于根据数据长度标识从当前数据帧中依次提取数据,并将接收到的下一个数据帧与当前数据帧首尾相连,依次从所有数据帧中提取数据;
打包单元,用于将所提取的数据依次打包成预设长度的数据作为解码数据,所述预设长度等于压缩处理中两级差分后数据的长度;
逆差分单元,用于对所述解码数据进行两级差分逆处理得到解压缩数据。
优选的,所述逆差分单元,具体用于对接收到的数据先进行通道逆差分处理,再进行层逆差分处理,得到解压缩数据;或者,
所述逆差分单元,具体用于对接收到的数据先进行层逆差分处理,再进行通道逆差分处理,得到解压缩数据。
优选的,逆差分单元,包括:
通道逆差分模块,用于将接收到的第1个通道数据直接输出作为第1个通道逆差分数据;依次对接收到的第n个通道数据与第n-1个通道数据作加法处理,得到第n个通道逆差分数据;所述n大于或者等于2;
层逆差分模块,用于将接收到第1层的数据直接输出作为第1层逆差分数据;依次对接收到的第m层数据与第m-1层数据作加法处理,得到第m层逆差分数据,所述m大于或者等于2。
本发明实施例还提供了一种扫描系统,所述系统包括:
上述压缩装置和上述解压缩装置;
所述压缩装置位于数据采集器与发送控制器之间,用于将数据采集器采集的数据经过压缩处理后发送给数据控制器;
所述解压缩装置位于接收控制器与控制台之间,用于将接收控制器传输的数据解压缩处理后发送至控制台。
本发明实施例的一种压缩、解压缩方法、装置以及扫描系统,为了提高压缩、解压缩速率,满足数据传输的实时性需求,避免系统中增加额外的存储装置,首先,接收数据采集器发送的数据;然后,对接收到的数据进行两级差分处理,得到差分数据;按照预设的数据长度确定所述差分数据的数据长度,对所述差分数据进行编码生成包含数据长度标识和数据的编码数据;这样按照流水线的方式对接收到的数据差分处理和编码处理,使得数据能够依次被处理,无需缓存等待被处理,且这种编码方式缩小了数据所占的比特位。最后,按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧,并向所述发送控制器发送所述数据帧。预先设置好数据整合位宽和编码数据长度之间的对应关系,使得编码数据的打包操作只需要一个步骤即可完成。由于解压缩的处理过程是压缩处理过程的逆过程,也具有数据流水式特征。因此,本发明能够提高数据压缩、解压缩速率满足数据传输的实时性需求,避免系统中增加额外的存储装置。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例压缩方法的实施例1的流程图;
图2为本发明揭示的层差分方法的流程图;
图3为本发明揭示的数据编码结构图;
图4为本发明实施例解压缩方法的实施例1的流程图;
图5为本发明实施例压缩装置的实施例1的结构图;
图6为本发明实施例解压缩装置的实施例1的结构图;
图7为本发明实施例扫描系统的实施例1的结构图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例进行详细描述。
请参阅图1,示出的本发明实施例压缩方法的实施例1的流程图,该方法可包括:
步骤101,接收数据采集器发送的数据。
电子计算机X射线断层扫描机(简称X-CT或者CT)一般包括:X射线发射/探测装置、扫描系统、计算机系统,该X射线发射/探测装置包括X射线发送器和X射线探测器,该X射线发射器包括X射线管并发射出扇形的X射线束,该X射线探测器包括多个X射线探测元件,这些元件排列在该扇形X射线射束的分布方向上并且对着该X射线发射器,而被扫描者位于该发射器和探测器之间,X射线发射/探测装置围绕着被探测者旋转,以从多个视点来采集透射X射线数据。
随着电子计算机X射线断层扫描机(便于描述以下简称CT)不断发展,随着人们的应用需求不断的增加,目前CT通过多层螺旋扫描的方式进行扫描,在这种方式下,探测器在Z轴方向上是由多排探测器组成的探测器阵列,这样X射线管旋转一周就能够获得更多的层面,实现容积扫描(Volume Scan)。随着Z轴探测器层数的增加,也就是探测器数目的增加,该系统应用了多通道采集方式实现多通道、多层扫描。
X射线穿过物体(或者人体)之后,经过探测器阵列将其转化为微弱的电流信号,信号探测层对信号进行放大与模数(A/D)转换处理,最后,由数据采集器采集探测器处理后的数据,并依次传送给本实施例的压缩装置。比如:CT系统采用的通道数量是n,则本接收单元接收到数据采集器发送的数据可以是采集数据Raw={C1,C2,…Cn-1,Cn},下标1至n代表该数据属于那个通道。CT系统采用的探测器数目为m,也就是层数目为m,每一层扫描都有n个通道数据。
步骤102,对接收到的数据进行两级差分处理,得到差分数据。
本步骤的两级差分处理包括:通道差分处理和层差分处理。在本步骤中并不限定这两种差分处理的顺序,因此,本步骤对接收到的数据进行两级差分处理,得到差分数据可包括:
对接收到的数据先进行通道差分处理,再进行层差分处理,得到差分数据;或者,
对接收到的数据先进行层差分处理,再进行通道差分处理,得到差分数据。
其中,通道差分处理可包括:将接收到的第1个通道数据直接输出作为第1个通道差分数据;对接收到第n个通道数据与第n-1个通道数据作减法处理,得到第n个通道差分数据;所述n大于或者等于2;
层差分处理可包括:将第1层中的数据直接输出作为第1层差分数据;对接收到的第m层中数据与第m-1层中数据作减法处理,得到第m层差分数据,所述m大于或者等于2。
下面仅以先进行通道差分处理,再进行层差分处理为例,对本步骤进行更为详细的解释说明。
首先依次对接收到的当前通道数据与上一个通道数据作差分运算得到当前通道差分数据;再依次对当前层中的通道差分数据与上一层中的通道差分数据作差分运算得到当前层差分数据。最终得到的层差分数据就是本步骤的差分数据。
具体实现过程可是:首先将接收到的第1个通道数据直接输出作为第1 个通道差分数据;对接收到第n个通道数据与第n-1个通道数据作减法处理,得到第n个通道差分数据;所述n大于或者等于2;在将第1层中的通道差分数据直接输出作为第1层差分数据;对接收到的第m层中的通道差分数据与第m-1层中通道差分数据作减法处理,得到第m层差分数据,所述m大于或者等于2。
下面以具体实现方式为例对本步骤进行解释说明。
当本压缩装置接收到的通道数据依次为C1,C2,…Cn-1,Cn,,首先对接收到的当前通道数据与上一个通道数据作差分运算得到当前通道差分数据;由于第1个通道数据没有比照对象,因此第1个通道数据直接输出,也就是,接收到第1个数据C1不变,然后,接收第2个数据C2减去接收到第一个数据 C1,以此类推,接收到的第n个通道数据依次进行差分处理得到C1,C2-C1,… Cn-1-Cn-2,Cn-Cn-1
在实际应用中,为了便于通道差分流水式的处理,可将接收到的通道数据直接输入到差分器作为减数,同时将接收到的通道数据延迟一个周期输入到差分器作为被减数,以保证对每个通道数据的差分处理的实时性,无需在每次通道数据差分处理时,再去提取上一个通道数据的操作。
CT扫描是多层多通道同时进行扫描,每一层扫描都生成n个通道数据,也就是每一层数据都包含n个通道数据,数据采集器根据探测器探测的数据传输顺序依次采集通道数据,将接收到的每个层中的通道数据依次作差分处理后得到的数据为Raw_S1,Raw_S2…Raw_Sm-1,Raw_Sm
参阅图2,示出的层差分方法的流程图。通过两个减法器来实现层差分处理,其中,减法器A用于对偶数层的层差分处理,减法器B用于对奇数层的层差分处理。
由于第1层中的通道数据没有其他层的比照对象,因此,将接收到的第1 层中的通道差分数据Raw_S1直接输出作为第1层差分数据Raw_S1,并将第 1层的通道差分数据Raw_S1缓存在缓存区Buffer-SliceA,为第2层差分处理做好准备。
当接收到第2层的通道差分数据Raw_S2之后,首先,将第2层的通道差分数据Raw_S2缓存在缓存区Buffer-SliceB,为第3层差分处理做好准备,然后,通过减法器A将第2层的通道差分数据减去第1层的通道差分数据得到第2层的层差分数据Raw_S2-Raw_S1,以此类推,层数目为偶数的层数据差分处理都参照第2层的处理方式依次进行。
当接收到第3层的通道差分数据Raw_S3之后,首先,将第3层的通道差分数据Raw_S3缓存在缓存区Buffer-SliceA,为第4层差分处理做好准备,然后,通过减法器B将第3层的通道差分数据减去第2层的通道差分数据得到第3层的层差分数据Raw_S3-Raw_S2,以此类推,层数目为奇数的层数据差分处理都参照第3层的处理方式依次进行。
按照上述差分处理方式,接收到的m层的通道差分数据依次进行层差分处理得到Raw_S1,Raw_S2-Raw_S1…Raw_Sm-Raw_Sm-1。在实际应用中,也可以通过一个减法器来实现层差分处理。在此仅以两个减法器为例进行解释说明,本实施例中并不具体限定采用多少个减法器来实现差分处理。
由于先进行层差分处理,再进行通道差分处理,只是改变了两级差分的顺序,具体原理与上述先进行通道差分处理,再进行层差分处理一致,在此不再赘述。
步骤103,按照预设的数据长度确定所述差分数据的数据长度,对所述差分数据进行编码生成包含数据长度标识和数据的编码数据。
下面以具体实现方式为例对本步骤进行解释说明。参阅图3,示出的数据编码结构图(a)(b)(c)。
下面仅以原始数据为16bit为例进行解释说明,经过两级差分处理后得到的数据用1个符号位和一个长度为17bit的数据表示,编码需要对17bit数据中的有效长度进行判断。
由于计算机直接判断数据位的操作复杂耗时,因此本步骤是预先设置好数据长度与差分数据的数据长度之间的关系来确定差分数据的数据长度,实质上是通过判断差分数据的前端的零的个数,间接的判断差分数据的有效长度,若编码的数据格式有8种,则预先设置这8种数据格式中数据长度与层差分数据前端零的个数之间的对应关系,比如:前端零的个数为12,对应数据长度为5bit;前端零的个数为11,对应数据长度为6bit;前端零的个数为10,对应数据长度为7bit;前端零的个数为9,对应数据长度为8bit;前端零的个数为8,对应数据长度为9bit;前端零的个数为7,对应数据长度为10bit;前端零的个数为6,对应数据长度为11bit;前端零的个数为1时,对应数据长度为16。
这样对于所有的差分数据而言,只需要通过上述判断数据前端零的个数的方式,即可实现编码处理。按照上述对照预设的对应关系,直接确定数据的长度,然后生成如图所示的编码数据。
若上述步骤102处理后的差分数据的数据长度小于或者等于5,用000标识长度,符号占用1位,数据占用5位,如图3中结构图(a)所示。
若上述步骤102处理后的差分数据的数据长度等于6,用001标识长度,符号占用1位,数据位因为最高位肯定为1,所以实际占用5bit,如图3中结构图(b)所示。
若上述步骤102处理后的差分数据的数据长度属于7-11,与长度为6时编码方式相同,随着长度的增加,长度码值递增。
若上述步骤102处理后的差分数据的数据长度大于11,用长度码与原始数据(以16bit为例)表达,此时长度码为111,如图3中结构图(c)所示。
上述本步骤编码处理后原16bit至20bit的定长数据,转换为9bit至14bit 的表达方式,个别数据用19bit数据或23bit表达。
上述编码实现方式仅是一种示例性的方式,依据上述编码处理思想可以有多种不同的实现方式,只要能够将差分数据进行编码生成编码数据,所述编码数据包含:数据长度标识和数据,且该编码数据长度标识和数据位的长度不定,但是该编码数据的总长度小于或者等于接收到的层差分数据的长度。本发明对于编码处理实现方式不做具体限定。
步骤104,按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧,并向所述发送控制器发送所述数据帧。
优选的,本步骤按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧,包括:
去除所述编码数据中的冗余项;
按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次确定所述编码数据应该整合的数据位宽,将连续的所述编码数据打包为数据位宽等于所述发送控制器处理位宽的数据帧。
由于不同系统采用的发送控制器类型不同,不同类型发送控制器的处理位宽也可能不同,比如处理位宽为64bit、32bit、12bit等,下面仅以发送控制器的处理位宽为64bit的应用场景为例对本步骤进行解释说明。
由于上述步骤103编码处理后的数据是非定长数据,因此,将这些编码数据依次打包成64bit的数据时,就需要知道每个编码数据在打包一个64bit的数据是还能再整合多少bit的数据,因此,必须知道每一个编码数据打包为 64bit数据帧的当前数据总长度和还能够再容纳多少bit的数据。由于计算机直接判断当前整合的数据位以及还需要多少bit位的操作复杂耗时,因此,本步骤预先设置数据整合位宽与编码数据的数据长度之间的对应关系,按照这种对应关系可以一步确定可整合的数据长度,直接进行打包处理。下面对该步骤的原理进行进一步解释说明。
打包数据处理过程为:每接收一个数据就与前面的数据首尾相连,同时需要计算当前的总长度,当总长度为64bit时,输出打包好的64bit的数据。由于编码数据的长度不一致,在打包为一个64bit数据帧时,可能会将一个编码数据中的一部分打包在当前的64bit数据中,剩下的一部分则打包在下一个 64bit数据中,比如:当前已经有60bit则还需要4bit的数据,而下一个编码数据是9bit,因此,只能将该编码数据的前4bit打包在当前64bit数据帧,同时将剩余的5bit打包为下一个64bit的开始端,以此类推,依次处理将所有的编码数据都打包成64bit数据帧输出。
为了保证数据的打包处理能够通过流水式的一级操作实现,以节约打包处理时间,需要在将编码数据打包为64bit数据帧时,最快速地确定应该整合的数据长度,因此,考虑编码数据的长度类型和待打包数据帧长度,在此仍旧以上述编码处理后的编码数据共8种类型和待打包数据帧长度64bit为例,则,就需要考虑到数据整合的类型共64*8种类型。也就是说,整合中数据长度的可能性从0到63共64种,输入的编码数据位宽共有8种情况,则将该 64*8种类型都预先设置出来,就能够通过一步操作确定数据整合长度。
为了便于解压缩装置的解压缩处理,在此次压缩处理的数据的最后一个数据打包完之后,需要再发送一个数据帧用于告知发送控制器此次应该接收多少个数据(也就是,多少个64bit数据帧),同时还告知最后一个64bit数据帧的有效数据位是多少bit。比如:此次传输的数据共有6个64bit,且最后一个64bit的数据帧中只有20bit的有效数据,则应该再发送第7个数据帧中包含共发送6个64bit数据帧,且最后一个数据帧有效数据位是20bit的告知信息。因此,需要打包一个数据帧包括:所传输的数据帧总个数和最后一个数据帧的有效数据位。
当然,当发送控制器的处理位宽为32bit或16bit时,可参照依照上述处理过程进行打包处理,同样能够保证数据打包传输的实时性。在此不再赘述。
利用本发明实施例压缩方法,按照流水线的方式对接收到的数据差分处理和编码处理,使得数据能够依次被处理,无需缓存等待被处理,且这种编码方式缩小了数据所占比特位,因此该压缩方法能够提高压缩速率、使得数据传输满足数据传输的实时性需求,避免系统中增加额外的存储装置。
与上述本发明实施例的压缩方法相对应,本发明实施例提供了解压缩方法,参阅图4,示出的本发明实施例解压缩方法的实施例1的流程图,该解压缩方法可包括:
步骤401,接收接收控制器发送的数据帧。
上述本发明实施例压缩装置将数据压缩之后,发送给发送控制器,然后发送控制器将数据传输至固定端经滑环后进入接收控制器,然后接收控制器将数据发送给解压装置进行解压缩处理。
步骤402,根据数据长度标识从当前数据帧中依次提取数据,并将接收到的下一个数据帧与当前数据帧首尾相连,依次从所有数据帧中提取数据。
由于压缩处理时,将所有编码数据打包成满足发送控制器处理位宽的数据帧,所以,接收到的数据帧中包含压缩处理时的编码数据,但是编码数据是不定长的数据,因此需要根据各个数据的长度标识从数据帧中提取数据,由于在压缩处理时,打包数据帧时需要将某些编码数据的一部分分开打包在相邻的数据帧中,因此,为了保证解压缩处理中每个数据都能够被正确提取,本步骤将相邻数据帧依次首尾相连,形成两倍接收控制器处理位宽的数据,以保证当前长度码对应的数据跨越了接收控制器处理位宽的边界(也就是超越了数据帧长度),从第二个数据帧获取不足的值。同时抛弃上一数据帧,读取下一个数据帧,再次构成两倍接收控制器处理位宽数据。
比如:一般情况下系统中的发送控制器与接收控制器的处理位宽是相同的,因此,仍旧以压缩处理中发送控制器处理位宽为64bit为例进行解释说明。当从接收到的第一个数据帧中提取的第3个数据的长度标识为12bit时,而当前数据帧只剩下了4bit,因此,为了保证该数据完整提取,需要从下一个数据帧再提取8bit数据,因此,通过将相邻数据帧首尾相邻的方式,保证跨数据帧的数据被正确提取出来。
步骤403,将所提取的数据依次打包成预设长度的数据作为解码数据,所述预设长度等于压缩处理中两级差分后数据的长度。
步骤404,对所述解码数据进行两级差分逆处理得到解压缩数据。
解压缩处理是压缩处理的逆过程,所以本步骤的两级差分逆处理是压缩处理中两级差分处理的逆处理。
本步骤对所述解码数据进行两级差分逆处理得到解压缩数据,可包括:
对接收到的数据先进行通道逆差分处理,再进行层逆差分处理,得到解压缩数据;或者,
对接收到的数据先进行层逆差分处理,再进行通道逆差分处理,得到解压缩数据。
在实际应用中,当压缩处理采用先进行通道差分处理,再进行层差分处理的方式,则本步骤就采用先进行层差分逆处理,再进行通道逆差分处理的方式。同理可知:当压缩处理采用先进行层差分处理,再进行通道差分处理的方式,则本步骤就采用先进行通道逆差分处理,再进行层逆差分处理的方式。
优选的,本步骤的通道逆差分处理、层逆差分处理分别可通过以下方式实现:
所述通道逆差分处理包括:
接收到的第1个通道数据直接输出作为第1个通道逆差分数据;
依次对接收到的第n个通道数据与第n-1个通道数据作加法处理,得到第n个通道逆差分数据;所述n大于或者等于2;
所述层逆差分处理包括:
接收到第1层数据直接输出作为第1层逆差分数据;
依次对接收到的第m层数据与第m-1层数据作加法处理,得到第m层逆差分数据,所述m大于或者等于2。
下面以本步骤采用先进行层逆差分处理,再进行通道逆差分处理为例,对本步骤进行进一步解释说明。
本步骤还可通过以下方式实现:
首先对接收到的第1层解码数据直接输出作为第1层逆差分数据;对接收到的第m层中的解码数据与第m-1层中的解码数据作加法处理,得到第m层逆差分数据,所述m大于或者等于2;再依次将每层中的第1个数据直接输出作为第1个通道逆差分数据;依次对每层中的第n个数据与第n-1个数据作加法处理,得到第n个通道逆差分数据;所述n大于或者等于2。最终得到的通道逆差分数据就是解压缩数据。
同理可知,若先进行通道逆差分处理,再进行层逆差分处理,则最终得到的层逆差分数据就是解压缩数据。
利用本发明实施例解压缩方法,能够将数据按照流水方式一一解压缩并传送给控制台,使得数据满足传送的实时性需求,无需缓存装置对数据进行缓存,可直接对数据解压缩输出。
与上述本发明实施例压缩方法相对应,本发明实施例提供压缩装置,参阅图5,示出的本发明实施例压缩装置的实施例1的结构图。该压缩装置可包括:接收单元501、差分单元502、编码单元503、打包单元504、发送单元505。下面结合该压缩装置的工作原理进一步介绍其内部结构以及连接关系。
接收单元501,用于接收数据采集器发送的数据;
差分单元502,用于对接收到的数据进行两级差分处理,得到差分数据;
编码单元503,用于按照预设的数据长度确定所述差分数据的数据长度,对所述差分数据进行编码生成包含数据长度标识和数据的编码数据;
打包单元504,用于按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧;
发送单元505,用于向所述发送控制器发送所述数据帧。
优选的,所述打包单元,包括:
去除模块,用于去除所述编码数据中的冗余项;
打包模块,用于按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次确定所述编码数据应该整合的数据位宽,将连续的所述编码数据打包为数据位宽等于所述发送控制器处理位宽的数据帧。
优选的,所述差分单元,具体用于对接收到的数据先进行通道差分处理,再进行层差分处理,得到差分数据;或者,
所述差分单元,具体用于对接收到的数据先进行层差分处理,再进行通道差分处理,得到差分数据。
所述差分单元,包括:
通道差分模块,用于将接收到的第1个通道数据直接输出作为第1个通道差分数据;对接收到第n个通道数据与第n-1个通道数据作减法处理,得到第n个通道差分数据;所述n大于或者等于2;
层差分模块,用于将第1层中的数据直接输出作为第1层差分数据;对接收到的第m层中数据与第m-1层中数据作减法处理,得到第m层差分数据,所述m大于或者等于2。
在实际应用中,所述通道差分模块可通过一个减法器实现。所述层差分模块也可通过一个减法器实现,考虑到奇数层和偶数层做差分处理时,被减数和减数目的输入端口不同,若通过一个减法器来实现,针对奇偶层的不同需要调换输入端口,使得层数据差分处理的多一步操作,因此,所述层差分模块可通过两个减法器实现,这两个减法器分别对层数目为奇数、偶数的层数据进行差分处理。
优选的,所述打包单元,包括:
去除模块,用于去除所述编码数据中的冗余项;
构建模块,用于按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次确定所述编码数据应该整合的数据位宽,将连续的所述编码数据打包为数据位宽等于所述发送控制器处理位宽的数据帧。
为了便于解压缩装置解压数据,所述打包单元,用于在打包完最后一个数据帧时,再打包一个数据帧,该数据帧包括:所传输的数据帧总个数和最后一个数据帧的有效数据位。
利用本发明实施例的压缩装置,对数据进行流水式的两级差分处理,并按照预设的对应关系通过一级处理实现数据压缩,能够提高数据压缩速率,满足数据传输的实时性需求,且由于流水式的数据压缩方式使得压缩过程中的每个阶段的处理时间可控。
与上述本发明实施例解压缩方法相对应,本发明实施例提供解压缩装置,参阅图6,示出的本发明实施例解压缩装置的实施例1的结构图。该解压缩装置可包括:接收单元601、提取单元602、打包单元603以及逆差分单元604。下面结合该解压缩装置的工作原理进一步介绍其内部结构以及连接关系。
接收单元601,用于接收接收控制器发送的数据帧;
提取单元602,用于根据数据长度标识从当前数据帧中依次提取数据,并将接收到的下一个数据帧与当前数据帧首尾相连,依次从所有数据帧中提取数据;
打包单元603,用于将所提取的数据依次打包成预设长度的数据作为解码数据,所述预设长度等于压缩处理中两级差分后数据的长度;
逆差分单元604,用于对所述解码数据进行两级差分逆处理得到解压缩数据。
优选的,所述逆差分单元,具体用于
对接收到的数据先进行通道逆差分处理,再进行层逆差分处理,得到解压缩数据;或者,
所述逆差分单元,具体用于对接收到的数据先进行层逆差分处理,再进行通道逆差分处理,得到解压缩数据。
优选的,逆差分单元,包括:
通道逆差分模块,用于将接收到的第1个通道数据直接输出作为第1个通道逆差分数据;依次对接收到的第n个通道数据与第n-1个通道数据作加法处理,得到第n个通道逆差分数据;所述n大于或者等于2;
层逆差分模块,用于将接收到第1层的数据直接输出作为第1层逆差分数据;依次对接收到的第m层数据与第m-1层数据作加法处理,得到第m层逆差分数据,所述m大于或者等于2。
需要说明的是,解压缩装置中的逆差分单元的处理过程是压缩装置的差分处理单元的逆处理过程,因此,解压缩装置中的逆差分单元要依据压缩装置的差分处理单元而设定是先进行通道逆差分模块处理还是先进行层逆差分模块处理。
本发明实施例解压缩装置的解压缩处理实质上是,压缩处理的逆处理,能够将数据按照流水方式一一解压缩并传送给控制台,使得数据满足传送的实时性需求,无需缓存装置对数据进行缓存,可直接对数据解压缩输出。
在实际应用中,本发明实施例压缩装置和解压缩装置均可通过现场可编辑门阵列(Field Programm able Gate Array,FPGA)芯片实现。
FPGA采用了逻辑单元阵列(Logic Cel Array,LCA),包括可配置逻辑模块(Configurable Logic Block,CLB)、输出输入模块(Input Output Block,IOB)和内部连线(Interconnect)三个部分。目前FPGA的品种很多比如:XILINX公司的Virtex系列、ALTERA公司的Stratix系列等。FPGA是由存放在片内随机读取存储器(Random-access mem ory,RAM)中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程,用户可以根据不同的配置模式,采用不同的编程方式。因此,利用FPGA实现本发明实施例压缩装置和解压缩装置时,需要根据实际需求,按照上述装置工作原理和各个单元的内部结构和连接关系对RAM进行编程。
另外,本发明实施例提供扫描系统,参阅图7,示出的本发明实施例扫描系统的结构图,该系统可包括:上述本发明实施例压缩装置和上述本发明实施例解压缩装置;
所述压缩装置位于数据采集器与发送控制器之间,用于将数据采集器采集的数据经过压缩处理后发送给数据控制器;
所述解压缩装置位于接收控制器与控制台之间,用于将接收控制器传输的数据解压缩处理后发送至控制台。本扫描系统中的控制台可以是计算机等其他设备。
本发明实施例扫描系统,通过上述压缩装置将扫描系统的数据采集器采集到的数据进行压缩处理,进过滑环后通过接收控制器传送至解压缩装置,解压缩装置进行解压缩处理,再传送至控制台;由于,本扫描系统利用了上述压缩和解压缩装置能够保障扫描得到的数据从发送控制器到控制台的传输的实时性,因此,本扫描系统无需增加额外的储存装置,就能够提高系统的滑环的性能。
需要说明的是,在本文中术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的设备中还存在另外的相同要素。
还需要说明的是,本领域普通技术人员可以理解实现上述实施例装置和系统中的全部或者部分单元和模块,是可以通过处理器程序指令相关的硬件来完成,所述程序可存储于存储介质中,所述的存储介质可为静态存储器(Static Random Access Memory)、动态存储器(Dynamic Random Access Memory)、固态存储器(Solid StateMem ory)等。
以上对本发明所提供的一种压缩、解压缩方法、装置以及扫描系统进行了详细介绍,本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (13)

1.一种压缩方法,其特征在于,所述方法包括:
接收数据采集器发送的数据;
对接收到的数据进行两级差分处理,得到差分数据;
按照预设的数据长度确定所述差分数据的数据长度,对所述差分数据进行编码生成包含数据长度标识和数据的编码数据;
按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧,并向所述发送控制器发送所述数据帧,具体包括:
去除所述编码数据中的冗余项;
按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次确定所述编码数据应该整合的数据位宽,将连续的所述编码数据打包为数据位宽等于所述发送控制器处理位宽的数据帧。
2.根据权利要求1所述的方法,其特征在于,所述对接收到的数据进行两级差分处理,得到差分数据,包括:
对接收到的数据先进行通道差分处理,再进行层差分处理,得到差分数据;或者,
对接收到的数据先进行层差分处理,再进行通道差分处理,得到差分数据。
3.根据权利要求2所述的方法,其特征在于,
所述通道差分处理包括:将接收到的第1个通道数据直接输出作为第1个通道差分数据;
对接收到第n个通道数据与第n-1个通道数据作减法处理,得到第n个通道差分数据;所述n大于或者等于2;
所述层差分处理包括:
将第1层中的数据直接输出作为第1层差分数据;
对接收到的第m层中数据与第m-1层中数据作减法处理,得到第m层差分数据,所述m大于或者等于2。
4.一种解压缩方法,其特征在于,所述方法包括:
接收接收控制器发送的数据帧,所述数据帧为满足发送控制器处理位宽的数据帧;
根据数据长度标识从当前数据帧中依次提取数据,并将接收到的下一个数据帧与当前数据帧首尾相连,依次从所有数据帧中提取数据;
将所提取的数据依次打包成预设长度的数据作为解码数据,所述预设长度等于压缩处理中两级差分后数据的长度;
对所述解码数据进行两级差分逆处理得到解压缩数据。
5.根据权利要求4所述的方法,其特征在于,所述对所述解码数据进行两级差分逆处理得到解压缩数据,包括:
对接收到的数据先进行通道逆差分处理,再进行层逆差分处理,得到解压缩数据;或者,
对接收到的数据先进行层逆差分处理,再进行通道逆差分处理,得到解压缩数据。
6.根据权利要求5所述的方法,其特征在于,
所述通道逆差分处理包括:
接收到的第1个通道数据直接输出作为第1个通道逆差分数据;
依次对接收到的第n个通道数据与第n-1个通道数据作加法处理,得到第n个通道逆差分数据;所述n大于或者等于2;
所述层逆差分处理包括:
接收到第1层数据直接输出作为第1层逆差分数据;
依次对接收到的第m层数据与第m-1层数据作加法处理,得到第m层逆差分数据,所述m大于或者等于2。
7.一种压缩装置,其特征在于,所述装置包括:
接收单元,用于接收数据采集器发送的数据;
差分单元,用于对接收到的数据进行两级差分处理,得到差分数据;
编码单元,用于按照预设的数据长度确定所述差分数据的数据长度,对所述差分数据进行编码生成包含数据长度标识和数据的编码数据;
打包单元,用于按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次将所述编码数据打包成满足发送控制器处理位宽的数据帧;所述打包单元,包括:
去除模块,用于去除所述编码数据中的冗余项;
打包模块,用于按照预设的数据整合位宽与所述编码数据长度之间的对应关系,依次确定所述编码数据应该整合的数据位宽,将连续的所述编码数据打包为数据位宽等于所述发送控制器处理位宽的数据帧;
发送单元,用于向所述发送控制器发送所述数据帧。
8.根据权利要求7所述的装置,其特征在于,
所述差分单元,具体用于对接收到的数据先进行通道差分处理,再进行层差分处理,得到差分数据;或者,
所述差分单元,具体用于对接收到的数据先进行层差分处理,再进行通道差分处理,得到差分数据。
9.根据权利要求8所述的装置,其特征在于,所述差分单元,包括:
通道差分模块,用于将接收到的第1个通道数据直接输出作为第1个通道差分数据;对接收到第n个通道数据与第n-1个通道数据作减法处理,得到第n个通道差分数据;所述n大于或者等于2;
层差分模块,用于将第1层中的数据直接输出作为第1层差分数据;对接收到的第m层中数据与第m-1层中数据作减法处理,得到第m层差分数据,所述m大于或者等于2。
10.一种解压缩装置,其特征在于,所述装置包括:
接收单元,用于接收接收控制器发送的数据帧,所述数据帧为满足发送控制器处理位宽的数据帧;
提取单元,用于根据数据长度标识从当前数据帧中依次提取数据,并将接收到的下一个数据帧与当前数据帧首尾相连,依次从所有数据帧中提取数据;
打包单元,用于将所提取的数据依次打包成预设长度的数据作为解码数据,所述预设长度等于压缩处理中两级差分后数据的长度;
逆差分单元,用于对所述解码数据进行两级差分逆处理得到解压缩数据。
11.根据权利要求10所述的装置,其特征在于,
所述逆差分单元,具体用于对接收到的数据先进行通道逆差分处理,再进行层逆差分处理,得到解压缩数据;或者,
所述逆差分单元,具体用于对接收到的数据先进行层逆差分处理,再进行通道逆差分处理,得到解压缩数据。
12.根据权利要求10所述的装置,其特征在于,逆差分单元,包括:
通道逆差分模块,用于将接收到的第1个通道数据直接输出作为第1个通道逆差分数据;依次对接收到的第n个通道数据与第n-1个通道数据作加法处理,得到第n个通道逆差分数据;所述n大于或者等于2;
层逆差分模块,用于将接收到第1层的数据直接输出作为第1层逆差分数据;依次对接收到的第m层数据与第m-1层数据作加法处理,得到第m层逆差分数据,所述m大于或者等于2。
13.一种扫描系统,其特征在于,所述系统包括:
如权利要求7~9中任一项所述的压缩装置和如权利要求10~12中任一项所述的解压缩装置;
所述压缩装置位于数据采集器与发送控制器之间,用于将数据采集器采集的数据经过压缩处理后发送给数据控制器;
所述解压缩装置位于接收控制器与控制台之间,用于将接收控制器传输的数据解压缩处理后发送至控制台。
CN201310732863.3A 2013-12-26 2013-12-26 一种压缩、解压缩方法、装置以及扫描系统 Active CN103747260B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310732863.3A CN103747260B (zh) 2013-12-26 2013-12-26 一种压缩、解压缩方法、装置以及扫描系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310732863.3A CN103747260B (zh) 2013-12-26 2013-12-26 一种压缩、解压缩方法、装置以及扫描系统

Publications (2)

Publication Number Publication Date
CN103747260A CN103747260A (zh) 2014-04-23
CN103747260B true CN103747260B (zh) 2018-05-29

Family

ID=50504243

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310732863.3A Active CN103747260B (zh) 2013-12-26 2013-12-26 一种压缩、解压缩方法、装置以及扫描系统

Country Status (1)

Country Link
CN (1) CN103747260B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103747264B (zh) * 2014-01-03 2017-10-17 华为技术有限公司 预测运动矢量的方法、编码设备和解码设备
CN107961034A (zh) * 2016-10-19 2018-04-27 北京东软医疗设备有限公司 处理通道数据的方法及装置
CN111159121A (zh) * 2019-12-23 2020-05-15 深圳星康医疗科技有限公司 穿戴式心电数据压缩存储方法、系统及存储系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1636342A (zh) * 2001-11-08 2005-07-06 皇家飞利浦电子股份有限公司 在低位宽的数据路径上传递高位宽数据的设备和方法
CN1959645A (zh) * 2005-11-01 2007-05-09 华为技术有限公司 一种位宽转换数据的检测装置及其方法
CN101086724A (zh) * 2006-06-07 2007-12-12 普天信息技术研究院 存储卡可变长多块数据传输方法
CN103413335A (zh) * 2013-07-23 2013-11-27 沈阳东软医疗系统有限公司 数据压缩的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1636342A (zh) * 2001-11-08 2005-07-06 皇家飞利浦电子股份有限公司 在低位宽的数据路径上传递高位宽数据的设备和方法
CN1959645A (zh) * 2005-11-01 2007-05-09 华为技术有限公司 一种位宽转换数据的检测装置及其方法
CN101086724A (zh) * 2006-06-07 2007-12-12 普天信息技术研究院 存储卡可变长多块数据传输方法
CN103413335A (zh) * 2013-07-23 2013-11-27 沈阳东软医疗系统有限公司 数据压缩的方法及装置

Also Published As

Publication number Publication date
CN103747260A (zh) 2014-04-23

Similar Documents

Publication Publication Date Title
Clunie Lossless compression of grayscale medical images: effectiveness of traditional and state-of-the-art approaches
CN105554501B (zh) 一种图像采集与压缩方法及装置
CN102970934B (zh) X射线ct装置以及x射线ct装置中的数据传送方法
EP2663074B1 (en) Method and system for lossy compression and decompression of computed tomography data
JP4808067B2 (ja) 画像圧縮装置、画像圧縮プログラム、画像圧縮方法
US6470065B1 (en) Apparatus for computer tomography scanning with compression of measurement data
CN103747260B (zh) 一种压缩、解压缩方法、装置以及扫描系统
DE112009003525T5 (de) Kompression und Speicherung von Projektionsdaten in einem Computertomographiesystem
US20080292168A1 (en) Image data acquisition system of an x-ray, CT or MRI machine with an integrated data compression module for data reduction of acquired image data
US9305369B2 (en) Method and system for data compression
TW201020976A (en) Edge detection for computed tomography projection data compression
CN107004135A (zh) 大图像文件的远程查看
CN102525532B (zh) 用于变换输入数据的方法以及医学技术设备
CN104207798B (zh) 计算机断层图像的重建方法
Singh et al. Enhanced LZW technique for medical image compression
CN112822495A (zh) 红外图像压缩方法及装置、电子设备、存储介质
EP2493382B1 (en) Three-dimensional scanner data compression
JP2001087259A (ja) データ転送速度が制限されているctスキャナにおいて、より多くのデータ投影図を収集するための方法および装置
CN111067559A (zh) Ct图像数据的处理方法及ct成像系统
CN110811659B (zh) 时间数据处理方法、装置及系统
Das et al. A compression technique for electronic health data through encoding
Zaid et al. JP3D compressed-domain watermarking of still and volumetric medical images
JP4946801B2 (ja) 画像管理装置、画像管理プログラム、画像管理方法
Wegener et al. Real-time compression of raw computed tomography data: technology, architecture, and benefits
US20240315659A1 (en) Method for operating a computed tomography facility and computed tomography facility

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 110179 No. 177-1 Innovation Road, Hunnan District, Shenyang City, Liaoning Province

Patentee after: DongSoft Medical System Co., Ltd.

Address before: Hunnan New Century Road 110179 Shenyang city of Liaoning Province, No. 16

Patentee before: Dongruan Medical Systems Co., Ltd., Shenyang

CP03 Change of name, title or address