首页 / 增强的数据压缩

增强的数据压缩实质审查 发明

技术领域

[0001] 本公开总体上涉及增强的数据压缩。

相关背景技术

[0002] 车辆可以配备有计算装置、网络、传感器和控制器,用于获取关于车辆部件操作和车辆环境的数据。计算装置可以基于所述数据来操作车辆。车辆传感器可以提供关于例如发动机转速、制动压力、方向盘角度等的数据。车辆的操作和对车辆操作的分析可以依赖于车辆在道路上操作时采集的大量部件数据。车辆可以将所采集的数据存储在计算装置的存储器中。

具体实施方式

[0033] 图1示出了用于压缩和恢复在车辆105中采集的数据的示例性系统100。车辆105中的计算机110被编程为从一个或多个传感器115接收采集的数据。例如,车辆105的数据可包括车辆105的位置、关于车辆周围的环境的数据、关于车辆外部的对象(诸如另一车辆)的数据等。车辆105的位置通常以常规形式提供,所述形式为例如经由使用全球定位系统(GPS)的导航系统获得的地理坐标(诸如纬度和经度坐标)。数据的另外示例可包括车辆105的系统和部件的测量值,例如车辆105的速度、车辆105的轨迹等。
[0034] 计算机110通常被编程为在车辆网络125上进行通信,所述网络例如包括常规车辆105的通信总线(诸如CAN总线、LIN总线等)和/或其他有线和/或无线技术(例如以太网、WIFI等)。经由网络、总线和/或其他有线或无线机制(例如车辆105中的有线或无线局域网),计算机110可向车辆105中的各种装置(例如控制器、致动器、传感器等,包括传感器
115)传输消息和/或从所述各种装置接收消息。替代地或另外,在计算机110实际上包括多个装置的情况下,车辆网络可用于在本公开中表示为计算机110的装置之间的通信。例如,计算机110可以是具有如上所述的处理器和存储器的通用计算机,和/或可以包括专用电子电路,所述专用电子电路包括为特定操作而制造的ASIC,例如用于处理传感器数据和/或传送传感器数据的ASIC。在另一个示例中,计算机110可以包括FPGA(现场可编程门阵列),所述FPGA是被制造为可由乘员配置的集成电路。通常,在电子设计自动化中使用诸如VHDL(超高速集成电路硬件描述语言)的硬件描述语言来描述诸如FPGA和ASIC的数字和混合信号系统。例如,ASIC是基于制造前提供的VHDL编程而制造的,而FPGA内部的逻辑部件可基于例如存储在电连接到FPGA电路的存储器中的VHDL编程而配置。在一些示例中,一个或多个处理器、一个或多个ASIC和/或FPGA电路的组合可包括在计算机110中。此外,计算机110可以被编程用于与网络通信,所述网络可以包括各种有线和/或无线联网技术,例如蜂窝、低功耗 (BLE)、有线和/或无线分组网络等。
[0035] 存储器可以是任何类型,例如,硬盘驱动器、固态驱动器、服务器或任何易失性或非易失性介质。存储器可存储从传感器115发送的所采集数据。存储器可以是与计算机110分离的装置,并且计算机110可经由车辆105中的网络(例如,通过CAN总线、无线网络等)检索由存储器存储的信息。替代地或另外,存储器可以是计算机110的一部分,例如作为计算机110的存储器。
[0036] 传感器115可以包括多种装置。例如,车辆105中的各种控制器可充当传感器115以经由车辆网络125提供数据,例如与车辆速度、加速度、位置、子系统和/或部件状态等有关的数据。此外,其他传感器115可包括相机、运动检测器等,即,用于提供数据以评估部件的位置、评估道路的坡度等的传感器115。传感器115还可包括但不限于短程雷达、远程雷达、激光雷达和/或超声换能器。
[0037] 所采集的数据可以包括在车辆105中采集的多种数据。上面提供了所采集的数据的示例,并且此外,数据通常使用一个或多个传感器115来采集,并且可另外包括在计算机110中和/或在服务器处根据其计算出的数据。通常,所采集的数据可以包括可以由传感器
115采集的和/或根据此类数据计算出的任何数据。
[0038] 车辆105可以包括多个车辆部件120。在这种背景下,每个车辆部件120包括一个或多个硬件部件,所述一个或多个硬件部件适于执行机械功能或操作‑诸如使车辆105移动、使车辆105减慢或停止、使车辆105转向等。部件120的非限制性示例包括:推进部件(包括例如内燃发动机和/或电动马达等)、传动部件、转向部件(例如,可以包括方向盘、转向齿条等中的一者或多者)、制动部件、停车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等等。部件120可以包括计算装置,例如,电子控制单元(ECU)等和/或诸如以上关于计算机110描述的计算装置,并且它们同样经由车辆105网络进行通信。
[0039] 车辆105包括车辆网络125。如上所述,车辆网络125可以是例如CAN总线、LIN总线等,和/或其他有线和/或无线技术,例如,以太网、WIFI等。计算机110可以通过车辆网络125与传感器115和部件120通信。也就是说,传感器115可以通过车辆网络125向计算机110提供数据,并且计算机110可以通过车辆网络125向部件120提供指令。
[0040] 图2是由传感器115采集的数据200的图表。数据200是从与推进器通信的传感器115采集的发动机转速数据。数据200是“原始”数据,即,直接从传感器115采集的数据。图2示出了在沿着横轴的一段时间内绘制的纵轴上的原始发动机转速数据200。原始数据200可以存储在计算机110的存储器中。然而,计算机110可能具有有限的存储器容量,并且存储原始数据200可能使用计算机110可用于其他数据的空间。因此,为了存储原始数据200,计算机110可以将原始数据200压缩到使用比原始数据200使用的更少的存储器空间的形式,如下文所述。
[0041] 为了压缩原始数据200以存储在存储器中,计算机110可以确定原始数据200的多项式近似205。多项式近似205是近似原始数据200的方程。多项式近似205可以是Hermite三3 2
次样条,即,形式为ax+bx+cx+d的方程组,其中a,b,c,d是实数系数,并且x是输入变量,例如时间。图2将多项式近似205示出为三次样条205。作为方程的三次样条205可以以比三次样条205所近似的原始数据200要少的存储器空间存储在计算机110的存储器中。因此,计算机110可以确定不存储原始数据200中的一些,并且使用三次样条205来确定近似数据值,从而减少由原始数据200使用的总存储器量。
[0042] 计算机110可以识别作为原始数据200的子集的采样数据210。计算机110可以识别数据点,即,各项采样数据210(即,数据项意指单个数据,例如,从传感器115输出的单个值),作为彼此之间均匀间隔的一组原始数据200。例如,计算机110可以将每第20项原始数据200识别为采样数据210。为了确定采样数据210,计算机110可以识别原始数据200的相应索引,即表示采集原始数据200项的顺序的整数值,并且计算机110可以基于索引确定采样数据210。例如,为了识别每第20项原始数据200,计算机110可以识别具有被20均匀整除的索引的每项原始数据200,即与0模20一致(例如,索引20、40、60、80等)。计算机110可以将采样数据210存储在存储器中,从而在存储每第20个数据点时,减少95%的存储器空间使用量。
[0043] 计算机110可以利用多项式近似205和采样数据210来恢复近似原始数据200的数据。在这种背景下,“恢复”数据意味着利用多项式近似205和采样数据210来近似原始数据200的值,包括反转压缩技术以确定已被压缩以便存储在存储器中的采样数据点210,并使用多项式近似205对两个采样数据点210之间的原始数据200项进行近似。也就是说,采样数据210包括比原始数据200要少的数据点,而且,为了基于并未被存储在采样数据210中的数据来致动部件120,多项式近似205对采样数据210之间的数值进行近似。如下面更详细描述的,多项式近似205可以是利用三次多项式对采样数据点210之间的值进行近似的三次样条。
[0044] 采样数据210可以包括彼此并非均匀间隔的原始数据200项。也就是说,除了均匀间隔的采样数据210之外,计算机110还可以采集感兴趣但不会通过上述均匀样本采集方式采集的特定原始数据200项。例如,在确定多项式近似205时,计算机110可以确定每个原始数据200项与其多项式近似205之间的相应差值。计算机110可以基于差值来识别要包括在采样数据210中的原始数据200项的子集。例如,计算机110可以识别预定数量的原始数据200项,这些项与其多项式近似205的差值比其他原始数据200项更大。也就是说,计算机110可以将差值从最大到最小排序,并识别预定数量的原始数据200项,从与其相应的多项式近似差值最大的原始数据200项开始,然后是下一个最大的差值,一直到计算机110确定了预定数量的原始数据200项。例如,计算机110可以识别所有原始数据200项中与多项式近似
205的相应差值最大的100个原始数据200项。通过基于与多项式近似205的差值将额外原始数据200项包括在内,计算机110可以比没有这些原始数据200项的情况更准确地利用多项式近似205压缩和恢复近似原始数据200的数据。也就是说,将与多项式近似205具有最大差值的原始数据200项包括在内允许如下所述地恢复数据,以便比单独使用均匀间隔的采样数据210更准确地近似原始数据200。
[0045] 计算机110可以基于多项式近似205来致动一个或多个车辆部件120。例如,计算机110可以利用多项式近似205来近似原始燃料消耗数据200值之间的燃料消耗值。计算机110可以使用近似的燃料消耗值来确定推进器在先前行驶行程中的燃料消耗率并预测未来行程的燃料消耗率,并且可以根据预测的燃料消耗率来致动燃料喷射器、火花塞、排气再循环子系统和/或节气门中的至少一个。也就是说,与单独的采样数据210表征操作相比,多项式近似205更准确地表征了车辆105的操作。
[0046] 在另一个示例中,计算机110可以将采样数据210和多项式近似205上传到被编程有机器学习程序的服务器,所述机器学习程序被训练为调整车辆105的传动系控制程序。传动系控制程序可以是计算机110的编程,所述编程致动一个或多个部件(例如,火花塞、节气门、燃料喷射器等)以控制车辆105的移动。例如,传动系控制程序可以控制燃料喷射正时、燃料喷射量、涡轮增压压力、火花正时、阀门正时、变速器换档操作和/或其他由部件120的致动而产生的动作中的一个或多个。机器学习程序可以基于输入的采样发动机转速数据210和多项式近似205来调整传动系控制程序的一个或多个参数。服务器可以将调整后的参数传输到计算机110,并且计算机110可以将调整后的参数与传动系控制程序一起使用,以例如提高发动机性能、提高发动机效率、减少发动机排放和/或提高发动机动力输出的一致性和可预测性。
[0047] 在另一个示例中,计算机110可以从推进器采集发动机转速数据,压缩采样数据210,并且经由网络将采样数据210和多项式近似205发送到管理车辆105的车队的服务器。
在利用多项式近似205恢复采样数据210时,服务器可以基于常规磨损模型来预测维修车辆
105的推进器的时间,所述常规磨损模型基于发动机转速输出推进器的磨损。然后,在到达预测时间时,服务器可以指示车辆105移动到维修位置以维修推进器。通过从多个车辆105中的每一个采集压缩后的采样数据210,服务器可以管理车辆105的车队的操作。在又一个示例中,车队服务器可以使用来自多个电动服务车辆105的电力消耗采样数据210和多项式近似,将服务车辆105分配到使电动服务车辆105的电池的电力消耗最小的路线上,从而提高车辆105的操作效率。
[0048] 图3是四个示例性数据点305、310、315、320的图表300。数据点305‑320是由传感器115采集的原始数据200或采样数据210,并且每个数据点305‑320具有相应的(x,y)值。在图
3的示例中,x轴为以毫秒(ms)为单位的时间,并且y轴为以每分钟转数(rpm)为单位的发动机转速。因此,每个数据点305、310、315、320是在单个时间评估的单个发动机转速值。数据点305表示为(x1,y1),数据点310表示为(x2,y2),数据点315表示为(x3,y3),并且数据点320表示为(x4,y4)。
[0049] 计算机110可以基于每个数据点305处的斜率来确定每个数据点305‑320的三次样条。例如,对于数据点310,可以基于以下表达式来确定斜率M2:
[0050]
[0051]
[0052]
[0053]
[0054] 其中tan()是正切函数,atan()是反正切函数(即,正切函数的反函数),M2是数据点310处的斜率,L12是数据点305、310之间的欧几里德距离、L23是数据点310、315之间的欧几里德距离,m12是数据点305、310之间的线性斜率,并且m23是数据点310、315之间的线性斜率。
[0055] 为了近似数据点305‑320之间的数据,计算机110可以如上文所述将三次样条确定3 2
为形式ax+bx+cx+d的三次方程。计算机110可以通过求解矩阵方程来确定系数a,b,c,d,如下面的表达式所示:
[0056]
[0057] 其中“\”是左矩阵除法运算(例如,如在Matlab和GNU Octave中定义和使用的),x,y值是上文列出的数据点305‑320,并且M1,M2,M3,M4是数据点305‑320处的斜率,如上文所述。替代地,计算机110可以通过针对存储在存储器中的采样数据210中的每一组四个数据点305、310、315、320,使用不同的技术(例如高斯‑约旦消元法、邻接法、分区法等)取上述表达式中的4x4矩阵的逆来确定系数a,b,c,d。
[0058] 图4是计算机110的存储器中的存储器空间400的图。如上所述,存储器空间400存储由传感器115和/或部件120采集的数据。存储器空间400包括多个子空间405,每个子空间405包括用于存储数据的指定数量的位。例如,子空间405可以包括16个位并且可以存储单个16位数字或两个8位数字。图4的示例性存储器空间400包括一个16位子空间405和22个8位子空间405。因此,在不压缩原始数据200的情况下,存储器空间400可以存储原始数据200或采样数据210的12个数据点,每个数据点是16位数。
[0059] 计算机110可以将所有原始数据200或原始数据200的采样子集210存储在存储器空间400中。原始数据200的每个数据点可以是16位数字,例如浮点数、带符号整数等。如上所述,存储器空间400可以包括一个16位子空间405和22个8位子空间405。为了压缩原始数据200的16位数据点以适应8位子空间405,计算机110可以确定连续数据点对之间的差值,并将所述差值作为8位数字存储在每个8位子空间405中。例如,计算机110可以将第一数据点作为16位数字存储在16位子空间405中。然后,计算机110可以将第一数据点与第二数据点之间的差值作为8位数字存储在8位子空间405中。然后,计算机110可以将第二数据点与第三数据点之间的差值作为8位数字存储在另一个8位子空间405中。计算机110可以继续用连续数据点的8位差值填充8位子空间405,从而在通常只存储原始数据200的12个数据点的存储器空间400中存储23个数据点。
[0060] 将连续的16位数据点之间的差值确定为8位数字可能会带来舍入误差,因为从16位数字转换为8位数字时,最后的8位精度会丢失。为了减少舍入误差,计算机110可以将每个差值存储为8位带符号的整数,所述整数是根据一对数据点之间的差值的平方根确定的。也就是说,对于第一和第二数据点p1,p2,计算机110可以将所存储的差值D确定为:
[0061]
[0062]
[0063] 其中,sgn是输出差值p1‑p2的符号的符号函数(即,1表示正,和‑1表示负),并且|p1‑p2|是差值p1‑p2的绝对值。取差值的绝对值并乘以符号函数防止平方根函数取负数的平方根(在实数中无定义),同时保留差值的符号。Di是第i个数据点与第(i+1)个数据点之间的差值。将差值p1‑p2的平方根取为16位数字,然后四舍五入到8位数字减少了舍入误差,因为数字的平方根的舍入损失小于数字本身的舍入损失。计算机110可以针对要存储在存储器空间400中的指定的一组数据点的每一对连续数据点存储所存储差值D。例如,22个8位子空间可以存储22个差值,并且除了存储在16位子空间405中的第一数据点之外,存储器空间400还可以将23个数据点存储在通常仅存储原始数据200的12个数据点的存储器空间400中。
[0064] 为了进一步减少舍入误差,计算机110可以将差值D存储为带符号的8位整数而不是8位浮点数。带符号浮点数将一个位用于数字的符号,将一个或多个位用于指数值,并且将剩余位用于要与指数值相乘的数字。也就是说,用于指数值的所述一个或多个位不能用于数据点的值,从而减少了压缩后的数据点的位数(并因此降低了精度)。通过将数据点压缩为不使用任何位用于指数值的8位带符号整数,计算机110可以将8位中的7位用于差值D的值,从而将压缩精度从16位数据点提高到8位差值D。为了确定8位整数,计算机110可以确定一组数据点的缩放因子SF,将每个差值Di乘以缩放因子SF,并将每个缩放后差值四舍五入为8位带符号整数:
[0065]
[0066]
[0067] 其中,Dmax是差值Di的最大绝对值,并且 是输出输入数字的整数部分的向下取整函数。缩放因子SF四舍五入为无符号8位整数。计算机110可以将每个差值Di乘以缩放因子SF以生成作为带符号的8位整数的缩放后差值SDi。然后,计算机110可以将每个缩放后差值SDi存储在8位子空间405中的相应子空间中,并且将缩放因子SF存储在最后一个8位子空间中。因此,计算机110可以将一个原始数据点存储为16位整数,将21个数据点存储为8位带符号整数,和将缩放因子SF存储为8位无符号整数,从而将22个数据点存储在通常只存储原始数据200的12个数据点的存储器空间400中。
[0068] 为了恢复数据,计算机110可以从16位子空间405中检索第一原始数据点并从其子空间405中检索缩放因子SF。然后,计算机110可以检索第一个缩放后差值SD0102,将所述缩放后差值乘以缩放因子SF及其绝对值,并将相乘的缩放后差值加到第一原始数据点。对于第二数据点,下面的表达式示出了计算:
[0069] p2=p1+SF·SD0102·|SD0102|   (10)
[0070] 也就是说,缩放后差值SDi保留原始数据点p2的符号,并且是数据点p2‑p1之间的差值的平方根按缩放因子缩放。恢复点p2是16位带符号整数。
[0071] 图5是用于压缩在车辆105中采集的数据的示例性过程500的框图。过程500开始于框505,其中车辆105的计算机110从传感器115采集原始数据200。计算机110可以从网络125采集原始数据200。仅举几个可能的示例,原始数据200可以是例如发动机转速数据、燃料水平数据等。
[0072] 接下来,在框510中,计算机110识别原始数据200的样本210。因为计算机110的存储器可能没有足够的空间来存储所有原始数据200,所以计算机110可以将原始数据200的一部分存储为采样数据210。计算机110可以将采样数据210识别为原始数据200的均匀间隔的数据点。计算机110可以识别原始数据200的第一数据点,然后将与第一数据点相距指定数量个数据点的每个数据点识别为采样数据210。例如,对于原始数据200的一组10,000个数据点,计算机110可以识别具有索引"0"的第一数据点,然后识别在第一数据点之后20个数据点的第二数据点,即,具有索引"20"。然后,计算机110可以识别具有在先前识别的数据点之后20个值的索引的每个数据点,即索引为"40"、"60"等,并将识别的数据点存储为采样数据210。也就是说,计算机110可以将具有与0模20一致的相应索引的数据点存储为采样数据210,从而将10,000个采集的数据点减少到500个存储的采样数据点210。
[0073] 接下来,在框515中,计算机110确定采样数据210的多个子集并识别每个子集中的采样数据点210之间的相应差值。如上所述,计算机110可以确定各组22个连续采样数据点210,并且确定每一对连续数据点之间差值的平方根。这些平方根差值可以是16位浮点数。
然后,计算机110可以通过缩放因子SF将平方根差值缩放为8位带符号整数。将16位浮点数平方根差值缩放为8位带符号整数减少了用于存储平方根差值的存储器空间量,同时以8位空间保持16位数的精度。
[0074] 接下来,在框520中,计算机110将差值存储在存储器空间400中。如上所述,存储器空间400可以包括多个8位子空间405,并且计算机110可以将每个8位整数差值存储在8位子空间405中的一个中。计算机110可以将缩放因子SF存储在8位子空间中的一个中,并且将第一采样数据点210存储在16位存储器子空间405中。因此,计算机110可以将22个8位差值存储在具有12个16位子空间405(其被进一步细分为8位子空间405)的存储器空间400中,从而将来自22个数据点210的数据压缩到通常会存储12个数据点210的存储器空间400中。也就是说,22个数据点可以被编码在12个16位的存储器字里。
[0075] 接下来,在框525中,计算机110从存储器空间400恢复采样数据点210。如上所述,计算机110可以通过以下方式恢复采样数据点210:从第一存储器子空间405中检索第一数据点,将差值加在下一个存储器子空间405中以恢复第二数据点,并加于来自连续存储器空间405的连续差值,直到所有22个采样数据点210被恢复。
[0076] 接下来,在框530中,计算机110确定采样数据点210之间的多项式近似205,以恢复近似原始数据200的数据。如上文所述,计算机110可以基于所确定的采样数据点210之间的斜率来确定三次多项式近似205(例如,三次Hermite样条)。例如,对于四个数据点305、310、315、320,计算机110可以基于数据点305、310、315、320的斜率M1,M2,M3,M4来确定三次方程
3 2
ax+bx+cx+d。计算机110可以将多项式近似205确定为每组四个数据点305‑320的三次样条的总和。在过程500中,计算机110可以在从存储器空间400恢复采样数据210之后确定多项式近似205。替代地,计算机110可以在压缩采样数据点210之前确定多项式近似205,并将多项式近似存储在存储器中,即在示例性过程500中的框510之后但在框515之前。
[0077] 接下来,在框535中,计算机110基于恢复的数据点210和多项式近似205来致动一个或多个车辆部件120。例如,计算机110可以恢复燃料消耗数据,并且使用恢复的燃料消耗数据来确定推进器在先前行驶行程中的燃料消耗率。然后,计算机110可以预测未来行程的燃料消耗率,并且基于预测的燃料消耗率致动燃料喷射器、火花塞、排气再循环子系统和/或节气门中的至少一个。
[0078] 接下来,在框540中,计算机110确定是否继续过程500。例如,当车辆105断电时,计算机110可以确定不继续过程500。如果计算机110确定继续,则过程500返回到框505。否则,过程500结束。
[0079] 本文所讨论的计算装置(包括计算机110)包括处理器和存储器,所述存储器通常各自包括可由诸如上面识别的计算装置的一个或多个计算装置执行并用于执行上述过程的框或步骤的指令。计算机可执行指令可由使用多种编程语言和/或技术创建的计算机程TM序来编译或解释,所述编程语言和/或技术包括但不限于单独或组合形式的Java 、C、C++、Visual Basic、Java Script、Python、Perl、HTML等。一般来说,处理器(例如,微处理器)例如从存储器、计算机可读介质等接收指令并且执行这些指令,由此执行一个或多个过程,包括本文所描述的过程中的一者或多者。此类指令和其他数据可使用各种计算机可读介质来存储和传输。计算机110中的文件一般是指存储在如存储介质、随机存取存储器等计算机可读介质上的数据集合。
[0080] 计算机可读介质包括参与提供可由计算机读取的数据(例如,指令)的任何介质。这种介质可采用许多形式,包括但不限于非易失性介质、易失性介质等。非易失性介质包括例如光盘或磁盘和其他持久性存储器。易失性介质包括通常构成主存储器的动态随机存取存储器(DRAM)。计算机可读介质的常见形式包括例如软盘、软磁盘、硬盘、磁带、任何其他磁性介质、CD ROM、DVD、任何其他光学介质、穿孔卡、纸带、具有孔图案的任何其他物理介质、RAM、PROM、EPROM、快闪EEPROM、任何其他存储器芯片或盒式磁带、或计算机可从中读取的任何其他介质。
[0081] 关于本文所描述的介质、过程、系统、方法等,应理解,尽管已经将此类过程等的步骤描述为按照某个有序序列发生,但是此类过程可通过以不同于本文描述的顺序的顺序执行所描述的步骤来实践。还应理解,可同时执行某些步骤,可添加其他步骤,或者可省略本文描述的某些步骤。例如,在过程500中,可省略一个或多个步骤,或者可以与图5中所示不同的顺序执行步骤。换句话说,本文对系统和/或过程的描述是为了示出某些实施例而提供,而决不应将其理解为对所公开的主题进行限制。
[0082] 因此,应当理解,包括以上描述和附图以及所附权利要求的本公开意图是说明性的而非限制性的。在阅读了以上描述之后,除了所提供的示例之外的许多实施例和应用对于本领域技术人员而言将是明显的。本发明的范围不应参考以上描述来确定,而应参考所附的和/或基于此包括在非临时专利申请中的权利要求连同此类权利要求所赋予权利的等效物的全部范围来确定。设想并预期未来的发展将在本文讨论的技术中发生,并且所公开的系统和方法将并入到此类未来实施例中。总而言之,应理解,所公开的主题能够进行修改和变化。
[0083] 除非另有说明或上下文另有要求,否则修饰名词的冠词“一个”应被理解为是指一个或多个。短语“基于”涵盖部分地或完全地基于。
[0084] 诸如“第一”和“第二”之类的序数形容词在整个此文献中用作标识符并且无意暗示重要性或次序。
[0085] 根据本发明,提供了一种系统,其具有计算机,所述计算机包括处理器和存储器,所述存储器存储有可由所述处理器执行以进行以下操作的指令:确定从车辆传感器采集的多组采样数据点,每一组包括预定数量的连续采样数据点;确定每一组中的成对的连续采样数据点之间的相应差值;将所述差值存储在所述存储器的多个存储器空间之一的相应子空间中,所述多个存储器空间中的每个存储器空间存储所述多组采样数据点中的一组且仅一组的差值;基于所述多个存储器空间中的所存储的差值来恢复所采集的数据;以及基于所恢复的数据来致动车辆部件。
[0086] 根据实施例,所采集的数据是发动机转速数据,并且所述指令还包括用于进行以下操作的指令:基于所恢复的发动机转速数据来致动车辆推进器。
[0087] 根据实施例,每个存储器空间的存储器大小小于与相应存储器空间相关联的一组采样数据点的组合存储器大小。
[0088] 根据实施例,所述存储器空间是多个16位数据块,并且每个16位数据块包括被存储为8位数字的差值中的两个。
[0089] 根据实施例,所述指令还包括用于进行以下操作的指令:基于所述多个采样数据点生成多项式插值,并且根据所述多项式插值和所述存储的差值恢复所述采集的数据。
[0090] 根据实施例,所述多项式插值是三次样条。
[0091] 根据实施例,所述指令还包括用于进行以下操作的指令:基于两个连续采样数据点之间的恢复的数据点来致动所述车辆部件,所述恢复的数据点基于所述两个连续采样数据点之间的多项式插值。
[0092] 根据实施例,所述指令还包括用于进行以下操作的指令:确定每一组中每对连续采样数据点之间的相应斜率,并且基于所述确定的斜率恢复所述采样数据点。
[0093] 根据实施例,每一组所述采样数据点包括指定时间段内的采样数据点。
[0094] 根据实施例,所述指令还包括用于进行以下操作的指令:针对每个存储器空间,确定用于将每个确定的差值从浮点数转换为整数的缩放因子,并且将所述缩放因子作为一个段存储在所述存储器空间中。
[0095] 根据实施例,所述缩放因子基于所述存储器空间中的所述差值之一的量值。
[0096] 根据实施例,所述用于恢复采样数据点的指令还包括用于进行以下操作的指令:将所述存储器空间中的每个差值除以所述缩放因子。
[0097] 根据实施例,所述存储器空间包括与所述存储器空间相关联的一组采样数据点中的第一采样数据点,并且用于恢复所述采集的数据的指令包括用于进行以下操作的指令:对所述第一采样数据点与所存储的差值中的至少一个进行求和。
[0098] 根据本发明,一种方法包括:确定从车辆传感器采集的多组采样数据点,每一组包括预定数量的连续采样数据点;确定每一组中的成对的连续采样数据点之间的相应差值;将所述差值存储在存储器的多个存储器空间之一的相应子空间中,所述多个存储器空间中的每个存储器空间存储所述多组采样数据点中的一组且仅一组的差值;基于所述多个存储器空间中的所存储的差值来恢复所采集的数据;以及基于所恢复的数据来致动车辆部件。
[0099] 在本发明的一个方面,所述采集的数据是发动机转速数据,并且所述方法还包括基于所恢复的发动机转速数据致动推进器。
[0100] 在本发明的一个方面,所述存储器空间是多个16位数据块,并且每个16位数据块包括两个差值,每个差值被存储为8位数字。
[0101] 在本发明的一个方面,所述方法包括:基于所述多个采样数据点生成多项式插值,并且根据所述多项式插值和所述存储的差值恢复所述采集的数据。
[0102] 在本发明的一个方面,所述方法包括:确定每一组中每对连续采样数据点之间的相应斜率,并且基于所述确定的斜率恢复所述采样数据点。
[0103] 在本发明的一个方面,每一组所述采样数据点包括指定时间段内的采样数据点。
[0104] 在本发明的一个方面,所述存储器空间包括与所述存储器空间相关联的一组采样数据点中的第一采样数据点,并且所述方法还包括:对所述第一采样数据点与所存储的差值中的至少一个进行求和。

当前第1页 第1页 第2页 第3页
相关技术
数据压缩相关技术
林恩·瓦莱丽·凯泽发明人的其他相关专利技术