首页 / 专利库 / 软件 / 无损压缩 / 一种基于分块的脉冲序列压缩方法及装置

一种基于分的脉冲序列压缩方法及装置

阅读:1033发布:2020-06-04

专利汇可以提供一种基于分的脉冲序列压缩方法及装置专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种基于分 块 的脉冲序列压缩方法及装置,属于数字 信号 处理技术领域。所述方法包括:划分脉冲序列,得到多个子块;统计各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息;分别对统计的空间信息、和/或时间信息、和/或极性信息进行转换和压缩,得到对应的码流,输出得到的码流。本申请中,充分利用不同子块之间的相关性,对各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息进行转换及压缩,从而去除了脉冲序列中的空间冗余和/或时间冗余,使得脉冲序列占据的空间更小,更加容易存储和传输;同时,基于块的划分方式是 无损压缩 ,在解码时能够恢复完整的脉冲序列,不会引入失真。,下面是一种基于分的脉冲序列压缩方法及装置专利的具体信息内容。

1.一种基于分的脉冲序列压缩方法,其特征在于,包括:
划分脉冲序列,得到多个子块;
统计各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息;
分别对所述空间信息、和/或时间信息、和/或极性信息进行转换和压缩,得到对应的码流;
输出得到的码流。
2.根据权利要求1所述的方法,其特征在于,所述脉冲序列包括:脉冲信号序列,每个脉冲信号由四元组表示,所述四元组包括脉冲信号产生的时间信息、在所述时间信息对应时刻的空间位置信息、极性信息;
所述统计各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息,包括:
根据各子块中各脉冲信号的四元组,统计各子块对应的各空间位置出现的脉冲信号的数量,并顺序保存至对应的直方图中;所述直方图与对应子块的空间分辨率大小相同;和/或,
提取各子块对应的各空间位置出现的脉冲信号的四元组中的时间信息,得到各子块对应的各空间位置的时间信息串;和/或,
提取各子块对应的各空间位置出现的脉冲信号对应的四元组中的极性信息,得到各空间位置对应的极性信息串。
3.根据权利要求2所述的方法,其特征在于,对所述空间信息进行转换和压缩,包括:
分别根据各子块对应的直方图进行预测,得到各子块的预测残差;
对所述各子块的预测残差进行变换,得到各子块的变换系数;
对所述各子块的变换系数进行编码,得到对应的空间信息码流。
4.根据权利要求2所述的方法,其特征在于,对所述空间信息进行转换和压缩,包括:
采用图像编解码或视频编解码的方式对各子块对应的直方图进行转换和压缩,得到对应的空间信息码流。
5.根据权利要求3所述的方法,其特征在于,所述分别根据各子块对应的直方图进行预测,得到各子块对应的预测残差,包括:
分别根据各子块对应的直方图进行时域预测和空域预测,得到各子块的至少一个预测残差;
所述对所述各子块的预测残差进行变换,得到各子块的变换系数,包括:对所述各子块的至少一个预测残差分别进行变换,得到各子块的至少一个变换系数;
所述对所述各子块的变换系数进行编码,得到对应的空间信息码流,包括:对所述各子块的至少一个变换系数分别进行编码,得到各子块的至少一个码流,确定各子块的最优码流,将所述最优码流作为对应子块的空间信息码流。
6.根据权利要求2所述的方法,其特征在于,对所述时间信息进行转换和压缩,包括:
对各空间位置的时间信息串进行差分,得到各空间位置对应的待编码串;
对所述待编码串进行编码,得到各空间位置对应的时间信息码流。
7.根据权利要求2所述的方法,其特征在于,对所述极性信息进行转换和压缩,包括:
采用不同的方式对所述极性信息串进行处理,并分别根据预设编码方法对处理后的极性信息串进行编码,得到不同的码流,在得到的不同的码流中选择最优码流作为极性信息码流。
8.根据权利要求7所述的方法,其特征在于,所述采用不同的方式对所述极性信息串进行处理,包括以下处理方式中的至少两种:
对各空间位置对应的极性信息串中连续相同的极性信息进行合并,得到各空间位置对应的第一编码对;
对各空间位置对应的极性信息串进行合并,得到极性信息序列;
对各空间位置对应的极性信息串进行合并,得到极性信息序列,对所述极性信息序列中连续相同的极性信息进行合并,得到第二编码对。
9.一种基于分块的脉冲序列压缩装置,其特征在于,包括:
划分模块,用于划分脉冲序列,得到多个子块;
统计模块,用于统计各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息;
压缩模块,用于对所述空间信息、和/或时间信息、和/或极性信息进行转换和压缩,得到对应的码流;
输出模块,用于输出所述压缩模块得到的码流。
10.根据权利要求9所述的装置,其特征在于,所述脉冲序列包括:脉冲信号序列,每个脉冲信号由四元组表示,所述四元组包括脉冲信号产生的时间信息、在所述时间信息对应时刻的空间位置信息、极性信息;
所述统计模块包括:第一统计子模块、和/或第二统计子模块、和/或第三统计子模块;
所述第一统计子模块,用于根据各子块中各脉冲信号的四元组,统计各子块对应的各空间位置出现的脉冲信号的数量,并顺序保存至对应的直方图中;所述直方图与对应子块的空间分辨率大小相同;
所述第二统计子模块,用于提取各子块对应的各空间位置出现的脉冲信号的四元组中的时间信息,得到各子块对应的各空间位置的时间信息串;
所述第三统计子模块,用于提取各子块对应的各空间位置出现的脉冲信号对应的四元组中的极性信息,得到各空间位置对应的极性信息串。
11.根据权利要求10所述的装置,其特征在于,所述压缩模块包括第一压缩子模块;所述第一压缩子模块包括预测单元、变换单元和第一编码单元;
所述预测单元,用于分别根据各子块对应的直方图进行预测,得到各子块的预测残差;
所述变换单元,用于对所述各子块的预测残差进行变换,得到各子块的变换系数;
所述第一编码单元,用于对所述各子块的变换系数分别进行编码,得到对应的空间信息码流。
12.根据权利要求10所述的装置,其特征在于,所述压缩模块包括第一压缩子模块;
所述第一压缩子模块,用于采用图像编解码或视频编解码的方式对各子块对应的直方图进行转换和压缩,得到对应的空间信息码流。
13.根据权利要求11所述的装置,其特征在于,
所述预测单元,具体用于分别根据各子块对应的直方图进行时域预测和空域预测,得到各子块的至少一个预测残差;
所述变换单元,具体用于对所述各子块的至少一个预测残差分别进行变换,得到各子块的至少一个变换系数;
所述第一编码单元,具体用于对所述各子块的至少一个变换系数分别进行编码,得到各子块的至少一个码流,确定各子块的最优码流,将所述最优码流作为对应子块的空间信息码流。
14.根据权利要求10所述的装置,其特征在于,所述压缩模块包括第二压缩子模块,所述第二压缩子模块包括差分单元和第二编码单元;
所述差分单元,用于对各空间位置的时间信息串进行差分,得到各空间位置对应的待编码串;
所述第二编码单元,用于对所述待编码串进行编码,得到各空间位置对应的时间信息码流。
15.根据权利要求10所述的装置,其特征在于,所述压缩模块包括第三压缩子模块;所述第三压缩子模块包括处理单元和第三编码单元;
所述处理单元,用于采用不同的方式对所述极性信息串进行处理;
所述第三编码单元,用于分别根据预设编码方法对处理后的极性信息串进行编码,得到不同的码流,并在得到的不同的码流中选择最优码流作为极性信息码流。
16.根据权利要求15所述的装置,其特征在于,所述处理单元,具体用于采用以下处理方式中的至少两种对所述极性信息串进行处理:
对各空间位置对应的极性信息串中连续相同的极性信息进行合并,得到各空间位置对应的第一编码对;
对各空间位置对应的极性信息串进行合并,得到极性信息序列;
对各空间位置对应的极性信息串进行合并,得到极性信息序列,对所述极性信息序列中连续相同的极性信息进行合并,得到第二编码对。

说明书全文

一种基于分的脉冲序列压缩方法及装置

技术领域

[0001] 本申请涉及数字信号处理技术领域,尤其涉及一种基于分块的脉冲序列压缩方法及装置。

背景技术

[0002] 脉冲是一种类似生物神经元之间信息传递的时空信号,脉冲的获取方法包括:采集监测区域中各局部空间位置的时空信号,并对时空信号按照时间进行累积,得到信号强度值;通过滤波器对信号累积强度值进行变换,在变换结果超过特定阈值时输出脉冲信号;将局部空间位置对应的脉冲信号按照时间先后排列成序列,得到表达局部空间位置信号及其变化过程的脉冲序列;并将所有局部空间位置的脉冲序列按照空间位置相互关系排列成脉冲序列阵列,作为对监测区域的动态时空信号的表达。
[0003] 作为相机的一种新兴类型,动态视觉传感器(Dynamic Vision Sensors,DVS)在宽动态范围和高时间分辨率下的高速摄影中显现出了巨大优势。在拍摄的脉冲序列中,除了每个序列中的头信息部分,脉冲信号部分是以AER(address-events)格式的协议进行存储,如图1所示,即每一个信号由固定格式的四元组(x,y,t,p)表示,x和y分别表示脉冲信号在当前图像上的横坐标和纵坐标,t表示时间信息,p表示脉冲信号的极性,用来表示亮度的变化(取值为0或1,0代表亮度减小,1代表亮度增加);需要指出的,该脉冲序列有别与传统的视频,不存在明确的像素的概念。
[0004] 当前,脉冲序列一般使用AEDAT(Address Event DATA)格式存储。由于近几年技术的发展,AEDAT已经产生了3种不同的版本。其中,AEDAT 1.0和AEDAT2.0最为常用。
[0005] 在AEDAT1.0中,如图2所示,脉冲序列通常由一个可选的头信息和一系列的脉冲信号组成。脉冲信号由32位的时间信息信息和16bit的地址信息组成,16bit的地址信息中包括x、y、极性等信息。
[0006] 在AEDAT2.0中,如图3所示,脉冲序列的结构和AEDAT1.0中的相似,也是由头信息和一系列的脉冲信号组成。其中,脉冲信号中,时间信息仍占据32位,但是地址信息变为了32位。
[0007] 可见,在不同AEDAT格式中,时间信息占据了很大一部分储存空间。进一步的,脉冲序列采集的是当前位置光强变化的信息,脉冲信号在时域和空域上的分布也较为稀疏,并且脉冲信号的分布也有一定的规律,当某一个区域内光强同时变化时,脉冲信号的分布也较为一致,这也会导致空域上有一定的冗余性。当光强稳定变化时,在每个像素点的脉冲信号的出现的时间间隔也接近相等,所以也存在一定的时间冗余性。对于传统相机拍摄的视频序列,传统的视频编码方式很好的消除了时域和空域上的冗余。但对于以AER格式存储的脉冲序列而言,传统视频编解码的方式不再适用。脉冲序列在时域和空域上已经表现出了稀疏的特性,同时考虑到序列内脉冲信号的数量和分布的情况与光照亮度变换有关,需要针对脉冲序列的特性提出新的压缩方式。发明内容
[0008] 为解决现有技术的不足,本申请提出一种基于分块的脉冲序列压缩方法及装置。
[0009] 一方面,本申请提出一种基于分块的脉冲序列压缩方法,包括:
[0010] 划分脉冲序列,得到多个子块;
[0011] 统计各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息;
[0012] 分别对所述空间信息、和/或时间信息、和/或极性信息进行转换和压缩,得到对应的码流;
[0013] 输出得到的码流。
[0014] 可选的,所述脉冲序列包括:脉冲信号序列,每个脉冲信号由四元组表示,所述四元组包括脉冲信号产生的时间信息、在所述时间信息对应时刻的空间位置信息、极性信息;
[0015] 对应的,所述统计各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息,包括:
[0016] 根据各子块中各脉冲信号的四元组,统计各子块对应的各空间位置出现的脉冲信号的数量,并顺序保存至对应的直方图中;所述直方图与对应子块的空间分辨率大小相同;和/或,
[0017] 提取各子块对应的各空间位置出现的脉冲信号的四元组中的时间信息,得到各子块对应的各空间位置的时间信息串;和/或,
[0018] 提取各子块对应的各空间位置出现的脉冲信号对应的四元组中的极性信息,得到各空间位置对应的极性信息串。
[0019] 可选的,对所述空间信息进行转换和压缩,包括:
[0020] 分别根据各子块对应的直方图进行预测,得到各子块的预测残差;
[0021] 对所述各子块的预测残差进行变换,得到各子块的变换系数;
[0022] 对所述各子块的变换系数进行编码,得到对应的码流。
[0023] 可选的,对所述空间信息进行转换和压缩,包括:
[0024] 采用图像编解码或视频编解码的方式对各子块对应的直方图进行转换和压缩,得到对应的空间信息码流。
[0025] 可选的,所述分别根据各子块对应的直方图进行预测,得到各子块对应的预测残差,包括:
[0026] 分别根据各子块对应的直方图进行时域预测和空域预测,得到各子块的至少一个预测残差;
[0027] 所述对所述各子块的预测残差进行变换,得到各子块的变换系数,包括:对所述各子块的至少一个预测残差分别进行变换,得到各子块的至少一个变换系数;
[0028] 所述对所述各子块的变换系数进行编码,得到对应的码流,包括:对所述各子块的至少一个变换系数分别进行编码,得到各子块的至少一个码流,确定各子块的最优码流,将所述最优码流作为对应子块的空间信息码流。
[0029] 可选的,对所述时间信息进行转换和压缩,包括:
[0030] 对各空间位置的时间信息串进行差分,得到各空间位置对应的待编码串;
[0031] 对所述待编码串进行编码,得到各空间位置对应的时间信息码流。
[0032] 可选的,对所述极性信息进行转换和压缩,包括:
[0033] 采用不同的方式对所述极性信息串进行处理,并分别根据预设编码方法对处理后的极性信息串进行编码,得到不同的码流,在得到的不同的码流中选择最优码流作为极性信息码流。
[0034] 可选的,所述采用不同的方式对所述极性信息串进行处理,包括以下处理方式中的至少两种:
[0035] 对各空间位置对应的极性信息串中连续相同的极性信息进行合并,得到各空间位置对应的第一编码对;
[0036] 对各空间位置对应的极性信息串进行合并,得到极性信息序列;
[0037] 对各空间位置对应的极性信息串进行合并,得到极性信息序列,对所述极性信息序列中连续相同的极性信息进行合并,得到第二编码对。
[0038] 另一方面,本申请提出一种基于分块的脉冲序列压缩装置,包括:
[0039] 划分模块,用于划分脉冲序列,得到多个子块;
[0040] 统计模块,用于统计各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息;
[0041] 压缩模块,用于对所述空间信息、和/或时间信息、和/或极性信息进行转换和压缩,得到对应的码流;
[0042] 输出模块,用于输出所述压缩模块得到的码流。
[0043] 可选的,所述脉冲序列包括:脉冲信号序列,每个脉冲信号由四元组表示,所述四元组包括脉冲信号产生的时间信息、在所述时间信息对应时刻的空间位置信息、极性信息;
[0044] 对应的,所述统计模块包括:第一统计子模块、和/或第二统计子模块、和/或第三统计子模块;
[0045] 所述第一统计子模块,用于根据各子块中各脉冲信号的四元组,统计各子块对应的各空间位置出现的脉冲信号的数量,并顺序保存至对应的直方图中;所述直方图与对应子块的空间分辨率大小相同;
[0046] 所述第二统计子模块,用于提取各子块对应的各空间位置出现的脉冲信号的四元组中的时间信息,得到各子块对应的各空间位置的时间信息串;
[0047] 所述第三统计子模块,用于提取各子块对应的各空间位置出现的脉冲信号对应的四元组中的极性信息,得到各空间位置对应的极性信息串。
[0048] 可选的,所述压缩模块包括第一压缩子模块;所述第一压缩子模块包括预测单元、变换单元和第一编码单元;
[0049] 所述预测单元,用于分别根据各子块对应的直方图进行预测,得到各子块的预测残差;
[0050] 所述变换单元,用于对所述各子块的预测残差进行变换,得到各子块的变换系数;
[0051] 所述第一编码单元,用于对所述各子块的变换系数分别进行编码,得到对应的码流。
[0052] 可选的,所述压缩模块包括第一压缩子模块;
[0053] 所述第一压缩子模块,用于采用图像编解码或视频编解码的方式对各子块对应的直方图进行转换和压缩,得到对应的空间信息码流。
[0054] 可选的,所述预测单元,具体用于分别根据各子块对应的直方图进行时域预测和空域预测,得到各子块的至少一个预测残差;
[0055] 对应的,所述变换单元,具体用于对所述各子块的至少一个预测残差分别进行变换,得到各子块的至少一个变换系数;
[0056] 对应的,所述第一编码单元,具体用于对所述各子块的至少一个变换系数分别进行编码,得到各子块的至少一个码流,确定各子块的最优码流,将所述最优码流作为对应子块的空间信息码流。
[0057] 可选的,所述压缩模块包括第二压缩子模块,所述第二压缩子模块包括差分单元和第二编码单元;
[0058] 所述差分单元,用于对各空间位置的时间信息串进行差分,得到各空间位置对应的待编码串;
[0059] 所述第二编码单元,用于对所述待编码串进行编码,得到各空间位置对应的时间信息码流。
[0060] 可选的,所述压缩模块包括第三压缩子模块;所述第三压缩子模块包括处理单元和第三编码单元;
[0061] 所述处理单元,用于采用不同的方式对所述极性信息串进行处理;
[0062] 所述第三编码单元,用于分别根据预设编码方法对处理后的极性信息串进行编码,得到不同的码流,并在得到的不同的码流中选择最优码流作为极性信息码流。
[0063] 可选的,所述处理单元,具体用于采用以下处理方式中的至少两种对所述极性信息串进行处理:
[0064] 对各空间位置对应的极性信息串中连续相同的极性信息进行合并,得到各空间位置对应的第一编码对;
[0065] 对各空间位置对应的极性信息串进行合并,得到极性信息序列;
[0066] 对各空间位置对应的极性信息串进行合并,得到极性信息序列,对所述极性信息序列中连续相同的极性信息进行合并,得到第二编码对。
[0067] 本申请的优点在于:
[0068] 本申请中,通过对原始的脉冲序列进行划分得到子块,充分利用不同子块之间的相关性,对各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息进行转换及压缩,从而去除了脉冲序列中的空间冗余和/或时间冗余,使得脉冲序列占据的空间更小,更加容易存储和传输;同时,基于块的划分方式是无损压缩,在解码时能够恢复完整的脉冲序列,不会引入失真。附图说明
[0069] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0070] 附图1为AER格式存储的脉冲序列的组成示意图;
[0071] 附图2为AEDAT1.0格式存储的脉冲序列的组成示意图;
[0072] 附图3为AEDAT2.0格式存储的脉冲序列的组成示意图;
[0073] 附图4为根据本申请实施方式的一种基于分块的脉冲序列压缩方法示意图;
[0074] 附图5为根据本申请实施方式的一种基于分块的脉冲序列压缩方法流程图
[0075] 附图6为根据本申请实施方式的按照脉冲信号数量划分宏块的示意图;
[0076] 附图7为根据本申请实施方式的按照等时间间隔划分宏块的示意图;
[0077] 附图8为根据本申请实施方式的子块的示意图;
[0078] 附图9为根据本申请实施方式的其中一个子块对应的直方图的示意图;
[0079] 附图10为根据本申请实施方式的对空间信息进行转化和压缩的细化流程图;
[0080] 附图11为根据本申请实施方式的时域预测示意图;
[0081] 附图12为根据本申请实施方式的空域预测示意图;
[0082] 附图13为根据本申请实施方式的对时间信息进行转化和压缩的细化流程图;
[0083] 附图14为根据本申请实施方式的一种基于分块的脉冲序列压缩装置框图

具体实施方式

[0084] 下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0085] 本申请中,提出了一种基于分块的脉冲序列压缩方法,通过对脉冲序列的空间信息、和/或时间信息、和/或极性信息分别进行压缩,来消除AER格式存储的脉冲序列的空间冗余、和/或时间冗余;优选的,对脉冲序列的空间信息、时间信息、极性信息均进行压缩,以最大程度的去除冗余,降低占据的空间大小。本说明书中以对三者均进行压缩为例进行说明,如图4所示的示意图,包括:划分脉冲序列,对划分得到的各子块中的脉冲信号进行处理,包括基于空间信息的预测和变换、时间信息的差分以及极性信息的合并,并对处理后的各数据进行熵编码得到对应的二值化码流。以下对本申请中的方法及装置进行进一步详述。
[0086] 实施例
[0087] 根据本申请的实施方式,提出一种基于分块的脉冲序列压缩方法,该方法中以对脉冲序列的空间信息、时间信息及极性信息均进行压缩为例进行说明,如图5所示,包括:
[0088] 步骤101:划分脉冲序列,得到多个子块;
[0089] 其中,如图1所示,脉冲序列包括头信息(File Header)和脉冲信号序列;其中,头信息用于记录拍摄脉冲信号的芯片类型、分辨率大小等信息;脉冲序列中每个脉冲信号由对应的四元组(x,y,t,p)表示,其中,x和y分别表示脉冲信号在当前图像上的横坐标和纵坐标,即位置信息;t表示时间信息,单位为微秒;p表示脉冲信号的极性,用来表示亮度的变化(取值为0或1,0代表亮度减小,1代表亮度增加)。由于脉冲信号记录了每个空间位置亮度的变化情况,所以对于每个空间位置而言,脉冲信号出现的时刻不是连续的,每个脉冲信号均有一个时间信息。
[0090] 步骤101具体为:将脉冲序列划分为预设数量的宏块,并将各宏块划分为多个预设大小的子块;
[0091] 进一步的,如图6和图7所示,按照脉冲信号的数量将脉冲序列划分为预设数量的宏块,或者按照等时间间隔将脉冲序列划分为预设数量的宏块;
[0092] 其中,按照脉冲信号的数量将脉冲序列划分为预设数量的宏块时,由于各空间位置在各时刻出现的脉冲信号数量可能相同也可能不同,因此各宏块在时间轴t上的长度可能相同也可能不同。
[0093] 需要说明的,图6和图7中所示的待划分的序列均需要按照相应的划分方式划分为宏块;
[0094] 更进一步的,预设数量和预设大小均可以根据需求自行设定,例如预设数量为10个,预设大小为空间分辨率16*16;
[0095] 特别的,在将宏块划分为子块时,边界处子块的分辨率可以不为16*16,自适应实际大小即可;子块的示意图如图8所示。
[0096] 步骤102:统计各子块中脉冲信号的空间信息、时间信息和极性信息;
[0097] 根据本申请的实施方式,步骤102包括:
[0098] 步骤102-1:根据各子块中各脉冲信号的四元组,统计各子块对应的各空间位置出现的脉冲信号的数量,并顺序保存至对应的直方图中;其中各直方图与对应子块的空间分辨率大小相同;
[0099] 根据本申请的实施方式,步骤101-1之前还包括:初始化与各子块的空间分辨率大小相同的数组,数组中的每个位置与子块对应的各空间位置一一对应,且数组中的值全部初始化为零,将该数组作为存储对应子块中各空间位置出现的脉冲信号的数量的直方图;
[0100] 进一步的,步骤101-1具体为:按照时间递增的顺序遍历各子块中的脉冲信号序列,在当前时刻内,判断各子块对应的各空间位置是否出现脉冲信号,若出现脉冲信号,则对应的直方图中对应的空间位置中的脉冲信号数量加1,否则不变。
[0101] 对于某个子块,其直方图的示意图如图9所示,其中a、b、c、d均为相应空间位置出现的脉冲信号的数量。
[0102] 步骤102-2提取各子块对应的各空间位置出现的脉冲信号的四元组中的时间信息,得到各子块对应的各空间位置的时间信息串。
[0103] 具体的,按照时间递增的顺序,依次统计各子块对应的各空间位置出现的脉冲信号对应的四元组中的时间信息,得到各子块对应的各空间位置对应的时间信息串;
[0104] 使用T(i,j)代表空间位置(i,j)的时间信息串,对应的,T(i,j)=(T1,T2…Tk),其中1≤i≤n,1≤j≤m,k为空间位置(i,j)出现的脉冲信号的数量,空间位置(i,j)对应的子块的空间分辨率大小为m*n。
[0105] 步骤102-3:提取各子块对应的各空间位置出现的脉冲信号对应的四元组中的极性信息,得到各空间位置对应的极性信息串;
[0106] 其中,极性信息只有两个值1或者0,例如,提取的空间位置(0,1)对应的极性信息串为(1,1,1,1,0,0,0,1,1)。
[0107] 步骤103:分别对统计的空间信息、时间信息和极性信息进行转换和压缩,得到对应的码流;
[0108] 其中,对统计的空间信息进行转换和压缩,如图10所示,包括:
[0109] 步骤S1:分别根据各子块对应的直方图进行预测,得到各子块对应的预测残差;
[0110] 具体的,分别根据各子块对应的直方图进行时域预测和空域预测,得到各子块对应的至少一个预测残差;
[0111] 其中,根据各子块对应的直方图进行时域预测,具体为:
[0112] 步骤A:读取任意相邻的两个宏块中相应位置的子块的直方图,并使用所述两个宏块中的前一个宏块中相应位置的子块的直方图,对后一个宏块中相应位置的子块的直方图进行时域预测,得到该后一个宏块中相应位置的子块的预测残差。
[0113] 更加具体的,步骤A包括:
[0114] 除第一个宏块外,将任意一个宏块作为当前宏块,将当前宏块中的任意子块作为当前子块;
[0115] 根据当前子块的位置,在当前宏块的前一个宏块中查找相应位置的子块;
[0116] 将当前子块对应的直方图与查找到的子块对应的直方图作差,得到当前子块的预测残差;
[0117] 重复上述操作,直至得到除第一个宏块外的任意一个子块的预测残差。
[0118] 如图11所示,根据宏块1中子块1的直方图,对宏块2中相应位置的子块2的直方图进行时域预测,得到子块2的预测残差。
[0119] 由于在有限的时间内,光照强度的变化是均匀的,产生的脉冲信号的时间间隔也基本相等,因此可以根据前一个宏块内相应位置子块的直方图对当前子块的直方图进行预测;特别的,由于第一宏块没有前一个宏块,因此第一宏块不进行时域预测。
[0120] 进一步的,根据各子块对应的直方图进行空域预测,具体为:
[0121] 步骤B:根据同一宏块中某个子块的直方图,及该子块预设相邻位置的子块的直方图,预测该子块的预测残差;
[0122] 更加具体的,步骤B包括:
[0123] 将宏块中的任意一个子块作为当前子块;
[0124] 判断当前子块相邻的左方、上方及左上方是否均无相邻子块;
[0125] 当判断结果为是时,对当前子块不进行空域预测;
[0126] 当判断结果为否时,将当前子块的直方图与相邻子块的直方图作差,得到当前子块的预测残差;
[0127] 重复上述操作,直至得到各宏块中具有相邻子块的各子块的预测残差。
[0128] 特别的,当当前子块仅有一个预设相邻位置的相邻子块时,得到当前子块的一个预测残差;当当前子块具有两个或三个预设相邻位置的相邻子块时,得到当前子块的两个或三个预测残差。
[0129] 如图12所示,对子块D不进行空域预测,根据子块D的直方图分别对子块B和子块C的直方图进行空域预测,得到子块B的一个预测残差和子块C的一个预测残差;根据子块C、子块D、子块B的直方图分别对子块A的直方图进行时域预测,得到子块A的三个预测残差。
[0130] 需要指出的,第一个宏块的第一个子块,由于没有相邻的子块,也没有前一个宏块中相应位置的子块,因此不做预测,直接进行编码即可。
[0131] 步骤S2:对各子块的预测残差进行变换,得到各子块的变换系数;
[0132] 具体的,采用DCT或者DST对各子块的预测残差进行变换,得到各子块的变换系数。其中,变换可以采用一维系数矩阵,也可以采用二维系数矩阵。
[0133] 步骤S3:对各子块对应的各变换系数进行编码,得到对应的码流。
[0134] 具体的,对对各子块对应的各变换系数进行熵编码,得到对应的码流;
[0135] 优选的,熵编码具体为采用视频编码标准中常用的基于上下文自适应的二进制算数编码(CABAC,Context-Adaptive Binary Arithmetic Coding),形成二值化的码流。
[0136] 根据本申请的实施方式,对统计的时间信息进行转换和压缩,如图13所示,包括:
[0137] 步骤F1:对各空间位置的时间信息串进行差分,得到各空间位置对应的待编码串;
[0138] 具体地,空间位置(i,j)对应的时间信息串为:T(i,j)=(T1,T2…Tk),其中1≤i≤n,1≤j≤m,k为空间位置(i,j)出现的脉冲信号的数量,空间位置(i,j)对应的子块的空间分辨率大小为m*n;
[0139] 对T(i,j)进行差分得到空间位置(i,j)对应的差分串为:D(i,j)=(T2-T1,T3-T2…Tk-Tk-1);
[0140] 空间位置(i,j)对应的待编码串为:S(i,j)=(T1,T2-T1,T3-T2…Tk-Tk-1);
[0141] 特别的,当空间位置(i,j)只出现一个脉冲信号时,即空间位置(i,j)只有一个时间信息,对应的待编码串为:S(i,j)=(T1)。
[0142] 步骤F2:分别对各空间位置对应的待编码串进行编码,得到各空间位置对应的时间信息码流。
[0143] 具体的,按照平扫描的方式分别对各子块对应的各空间位置的待编码串依次进行熵编码,得到各空间位置对应的时间信息码流。
[0144] 其中,按照水平扫描的方式分别对各子块对应的各空间位置的待编码串依次进行熵编码,即某子块的以下空间位置:(0,0),(0,1),(0,2)…(0,n-1)(1,0),(1,1),(1,2)…(1,n)…(m-1,0),(m-1,1),(m-1,2)…(m-1,n-1)。其中,m和n分别表示该子块的空间分辨率大小,例如:16x16,即m和n均等于16。
[0145] 根据本申请的实施方式,对统计的极性信息进行转换和压缩,包括:
[0146] 采用不同的方式对统计的极性信息串进行处理;分别根据预设编码方法对处理后的极性信息串进行编码,得到不同的码流,在得到的不同的码流中选择最优码流作为极性信息码流。
[0147] 具体地,采用以下处理方式中的至少两种对极性信息串进行处理:
[0148] 方式一、对各空间位置对应的极性信息串中连续相同的极性信息进行合并,得到各空间位置对应的第一编码对;
[0149] 其中,第一编码对包括一个或多个(run,level)形式的编码对,level代表极性信息(0或者1),run代表连续的相同的极性的个数。
[0150] 例如,使用x和y分别代表0和1,有一串极性信息穿为(x,x,x,x,y,y,y,x,x),合并得到的第一编码对包括(4,x)(3,y)(2,x)。
[0151] 进一步的,使用熵编码方法对各空间位置对应的第一编码对进行编码,得到对应的第一码流。
[0152] 该方式中,采用(run,level)编码对的方式,大大提高了对极性信息进行编码的效率。
[0153] 方式二、对各空间位置对应的极性信息串进行合并,得到极性信息序列;
[0154] 具体的,按照坐标顺序,将各空间位置的极性信息串合并为一个极性信息序列;
[0155] 例如,第一空间位置的极性信息串为(x,x,x,x,y,y,y,x,x),第二空间位置的极性信息串为(x,x,y,y,x,x)…最后一个空间位置对应的极性信息串为(x,x,y,y),则合并得到的极性信息序列为(x,x,x,x,y,y,y,x,x,x,x,y,y,x,x…x,x,y,y)。
[0156] 进一步的,使用熵编码方法对得到的极性信息序列进行编码,得到对应的第二码流。
[0157] 方式三、对各空间位置对应的极性信息串进行合并,得到极性信息序列,对极性信息序列中连续相同的极性信息进行合并,得到第二编码对。
[0158] 其中,第二编码对为(level,run,run…run)形式的编码对,level代表第一出现的极性信息(0或者1),run代表连续相同的各极性信息的个数。
[0159] 具体地,对各空间位置对应的极性信息串进行合并,得到极性信息序列,对极性信息序列中连续相同的极性信息进行一次合并,得到第一编码对,对得到的第一编码对再次合并,得到第二编码对。
[0160] 例如,合并得到的极性信息序列为(x,x,x,x,y,y,y,x,x,x,x,y,y,x,x…x,x,y,y),合并得到的第一编码对包括(4,x)(3,y)(4,x)(2,y)…(2,y),对第一编码对合并,仅保留第一个出现的极性信息,得到第二编码对为(x,4,3,4,2…2)。
[0161] 进一步的,使用熵编码方法对得到的第二编码对进行编码,得到对应的第三码流。
[0162] 该方式三中,通过对(level,run,run…run)进行编码,节省了需要记录每个(run,level)对level值所消耗的比特。
[0163] 需要指出的,该三种方式中,均按照水平扫描的方式对每个空间位置的极性信息串进行合并,即空间位置:(0,0),(0,1),(0,2)…(0,n-1)(1,0),(1,1),(1,2)…(1,n)…(m-1,0),(m-1,1),(m-1,2)…(m-1,n-1)。同时,该三种对极性信息串的处理方式中,考虑了不同脉冲序列中脉冲信号在时间分辨率和空间分辨率上的分布密度,适应性较强,可广泛用于脉冲序列极性信息的压缩。
[0164] 优选的,按照上述三种方式对极性信息串进行处理,并在得到的第一码流、第二码流、第三码流中选择最小的码流作为极性信息码流。
[0165] 步骤104:输出得到的码流。
[0166] 具体的,输出各子块的空间信息码流及各空间位置的时间信息码流。
[0167] 由此,通过对原始的脉冲序列进行划分得到子块,充分利用不同子块之间的相关性,对各子块中脉冲信号的空间信息和时间信息进行转换及压缩,使得脉冲序列占据的空间更小,更加容易存储,而且节约了传输成本;同时,基于块的划分方式是无损压缩,在解码时能够恢复完整的脉冲序列,不会引入失真。
[0168] 需要强调的是,本领域技术人员应当了解,可以对脉冲序列的空间信息、时间信息、极性信息中的任意一个或者两个进行转换和压缩,执行上述相应的方法即可。
[0169] 实施例二
[0170] 根据本申请的实施方式,还提出一种基于分块的脉冲序列压缩装置,该装置中以对脉冲序列的空间信息、时间信息及极性信息均进行压缩为例进行说明,如图14所示,包括:
[0171] 划分模块,用于划分脉冲序列,得到多个子块;
[0172] 统计模块,用于统计各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息;
[0173] 压缩模块,用于对统计模块统计的空间信息、和/或时间信息、和/或极性信息进行转换和压缩,得到对应的码流;
[0174] 输出模块,用于输出压缩模块得到的码流。
[0175] 本申请中,脉冲序列包括:脉冲信号序列,每个脉冲信号由四元组表示,所述四元组包括脉冲信号产生的时间信息、在所述时间信息对应时刻的空间位置信息、极性信息;
[0176] 统计模块包括:第一统计子模块、和/或第二统计子模块、和/或第三统计子模块,其中:
[0177] 第一统计子模块,用于根据各子块中各脉冲信号的四元组,统计各子块对应的各空间位置出现的脉冲信号的数量,并顺序保存至对应的直方图中;其中,各直方图与对应子块的空间分辨率大小相同;
[0178] 第二统计子模块,用于提取各子块对应的各空间位置出现的脉冲信号的四元组中的时间信息,得到各子块对应的各空间位置的时间信息串;
[0179] 第三统计子模块,用于提取各子块对应的各空间位置出现的脉冲信号对应的四元组中的极性信息,得到各空间位置对应的极性信息串。
[0180] 根据本申请的实施方式,可选的,压缩模块包括第一压缩子模块;第一压缩子模块包括预测单元、变换单元和第一编码单元,其中:
[0181] 预测单元,用于分别根据各子块对应的直方图进行预测,得到各子块的预测残差;
[0182] 变换单元,用于对各子块的预测残差进行变换,得到各子块的变换系数;
[0183] 第一编码单元,用于对各子块的变换系数分别进行编码,得到对应的码流。
[0184] 根据本申请的实施方式,预测单元,具体用于分别根据各子块对应的直方图进行时域预测和空域预测,得到各子块的至少一个预测残差;
[0185] 对应的,变换单元,具体用于对各子块的至少一个预测残差分别进行变换,得到各子块的至少一个变换系数;
[0186] 对应的,第一编码单元,具体用于对各子块的至少一个变换系数分别进行编码,得到各子块的至少一个码流,确定各子块的最优码流,将最优码流作为对应子块的空间信息码流。
[0187] 根据本申请的实施方式,可选的,压缩模块包括第一压缩子模块;
[0188] 第一压缩子模块,用于采用图像编解码或视频编解码的方式对各子块对应的直方图进行转换和压缩,得到对应的空间信息码流。
[0189] 根据本申请的实施方式,压缩模块包括第二压缩子模块,第二压缩子模块包括差分单元和第二编码单元。其中:
[0190] 差分单元,用于对各空间位置的时间信息串进行差分,得到各空间位置对应的待编码串;
[0191] 第二编码单元,用于对差分单元得到的待编码串进行编码,得到各空间位置对应的时间信息码流。
[0192] 根据本申请的实施方式,压缩模块包括第三压缩子模块;第三压缩子模块包括处理单元和第三编码单元,其中:
[0193] 处理单元,用于采用不同的方式对极性信息串进行处理;
[0194] 第三编码单元,用于分别根据预设编码方法对处理后的极性信息串进行编码,得到不同的码流,并在得到的不同的码流中选择最优码流作为极性信息码流。
[0195] 根据本申请的实施方式,处理单元,具体用于采用以下处理方式中的至少两种对极性信息串进行处理:
[0196] 对各空间位置对应的极性信息串中连续相同的极性信息进行合并,得到各空间位置对应的第一编码对;
[0197] 对各空间位置对应的极性信息串进行合并,得到极性信息序列;
[0198] 对各空间位置对应的极性信息串进行合并,得到极性信息序列,对极性信息序列中连续相同的极性信息进行合并,得到第二编码对。
[0199] 需要强调的是,本领域技术人员应当了解,可以对脉冲序列的空间信息、时间信息、极性信息中的任意一个或者两个进行压缩,对应的,该装置包括上述相应模块即可。
[0200] 根据本申请的实施方式,还提出一种基于分块的脉冲序列压缩设备,包括:
[0201] 一个或多个处理器,存储一个或多个程序的存储装置,当所述一个或多个程序被所述一个或多个处理器执行时,实现如本申请实施例一所述的方法。
[0202] 根据本申请的实施方式,还提出一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被处理器执行时,实现如本申请实施例一所述的方法。
[0203] 需要说明的,本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参考即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0204] 本申请中,通过对原始的脉冲序列进行划分得到子块,充分利用不同子块之间的相关性,对各子块中脉冲信号的空间信息、和/或时间信息、和/或极性信息进行转换及压缩,从而去除了脉冲序列中的空间冗余和/或时间冗余,使得脉冲序列占据的空间更小,更加容易存储和传输;同时,基于块的划分方式是无损压缩,在解码时能够恢复完整的脉冲序列,不会引入失真。
[0205] 以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈