数据压缩方法、数据解压方法、设备、装置、介质及产品与流程

    专利查询2025-11-01  3


    本发明涉及数据处理,特别是涉及一种数据压缩方法、数据解压方法、设备、装置、介质及产品。


    背景技术:

    1、摄像头采集到图像的数据后,需要对所采集的图像进行存储处理。然而,摄像头中的存储空间是有限的,目前,亟需一种数据压缩方法对摄像头中的数据进行压缩以减少被占用的存储空间。


    技术实现思路

    1、本发明实施例的目的在于提供一种数据压缩方法、数据解压方法、设备、装置、介质及产品,以减少被占用的存储空间。具体技术方案如下:

    2、第一方面,本发明实施例提供了一种数据压缩方法,所述方法包括:

    3、获取待压缩的图像帧;其中,所述图像帧中每一像素点的像素值以第一指定位宽的二进制数据表示;

    4、针对所述图像帧中每一行像素点,按照该行像素点的排列顺序,将该行像素点中第一个像素点以外的每一像素点的像素值减前一像素点的像素值,得到该像素点对应的像素差值;其中,该行像素点中第一个像素点对应的像素差值为该第一个像素点的像素值;

    5、针对该行像素点中每一像素点,若该像素点对应的像素差值的第一有效位宽不大于第二指定位宽,根据该像素点对应的像素差值中最低的所述第二指定位宽的数据,确定该像素点的像素值的压缩结果;

    6、其中,该像素点对应的像素差值的第一有效位宽表示:在该像素点对应的像素差值中用于表示该像素差值的绝对值大小的部分所占的位宽;所述第二指定位宽小于所述第一指定位宽,且与所述图像帧的图像亮度呈正相关;

    7、基于该行像素点中各像素点的像素值的压缩结果,得到该行像素点的压缩结果。

    8、可选的,所述若该像素点对应的像素差值的第一有效位宽不大于第二指定位宽,根据该像素点对应的像素差值中最低的所述第二指定位宽的数据,确定该像素点的像素值的压缩结果,包括:

    9、若该像素点对应的像素差值为正数,且该像素点对应的像素差值的第一有效位宽不大于第二指定位宽,则提取该像素点对应的像素差值中最低的所述第二指定位宽的数据,并在所提取的数据中添加表示该像素差值为正数的标志位,以及表示该像素差值的第一有效位宽不大于第二指定位宽的标志位,得到该像素点的像素值的压缩结果;

    10、若该像素点对应的像素差值为负数,且该像素点对应的像素差值的第一有效位宽不大于第二指定位宽,则提取该像素点对应的像素差值取反后的数据中最低的所述第二指定位宽的数据,并在所提取的数据中添加表示该像素差值为负数的标志位,以及表示该像素差值的第一有效位宽不大于第二指定位宽的标志位,得到该像素点的像素值的压缩结果。

    11、可选的,所述方法还包括:

    12、针对该行像素点中每一像素点,若该像素点对应的像素差值的第一有效位宽大于所述第二指定位宽,根据该像素点对应的像素差值中所有位的数据,确定该像素点的像素值的压缩结果。

    13、可选的,所述若该像素点对应的像素差值的第一有效位宽大于所述第二指定位宽,根据该像素点对应的像素差值中所有位的数据,确定该像素点的像素值的压缩结果,包括:

    14、若该像素点对应的像素差值为正数,且该像素点对应的像素差值的第一有效位宽大于所述第二指定位宽,则在该像素点对应的像素差值中添加表示该像素差值为正数的标志位,以及表示该像素差值的第一有效位宽大于第二指定位宽的标志位,得到该像素点的像素值的压缩结果;

    15、若该像素点对应的像素差值为负数,且该像素点对应的像素差值的第一有效位宽大于所述第二指定位宽,则在该像素点对应的像素差值取反后的数据中添加表示该像素差值为负数的标志位,以及表示该像素差值的第一有效位宽大于第二指定位宽的标志位,得到该像素点的像素值的压缩结果。

    16、可选的,所述基于该行像素点中各像素点的像素值的压缩结果,得到该行像素点的压缩结果,包括:

    17、针对所述图像帧中每一行像素点,基于哈夫曼编码,对该行像素点中各像素点的像素值的压缩结果进行编码,得到该行像素点的编码结果;

    18、若该行像素点的编码结果的位宽不小于该行像素点中所有像素点的像素值的位宽之和,则将该行像素点中每一像素点的像素值作为该行像素点的压缩结果;

    19、若该行像素点的编码结果的位宽小于该行像素点中所有像素点的像素值的位宽之和,确定该行像素点的编码结果为该行像素点的压缩结果。

    20、可选的,所述基于哈夫曼编码,对该行像素点中各像素点的像素值的压缩结果进行编码,得到该行像素点的编码结果,包括:

    21、基于哈夫曼编码,对该行像素点中各像素点的像素值的压缩结果进行编码,得到待利用的数据;

    22、若待利用的数据的位宽小于第三指定位宽,则向所述待利用的数据中添加指示信号以及向所述待利用的数据的低位添加0进行补位,得到该行像素点的压缩结果;其中,所述指示信号用于标识该行像素点的压缩结果中用于补位的0。

    23、可选的,在所述针对所述图像帧中每一行像素点,按照该行像素点的排列顺序,将该行像素点中第一个像素点以外的每一像素点的像素值减前一像素点的像素值,得到该像素点对应的像素差值之前,所述方法还包括:

    24、按照所述图像帧中各行像素点的排列顺序,从各行像素点中确定出当前待处理的一行像素点,并基于乒乓操作技术,按照时钟周期将当前待处理的一行像素点中各像素点的像素值按照所述排列顺序输入至预设缓存单元,直至将所有像素点的像素值均输入至所述预设缓存单元;其中,所述预设缓存单元包括第一缓存单元与第二缓存单元;

    25、针对所述图像帧中每一行像素点,按照该行像素点的排列顺序,将该行像素点中第一个像素点以外的每一像素点的像素值减前一像素点的像素值,得到该像素点对应的像素差值,包括:

    26、在每一时钟周期从所述第一缓存单元或第二缓存单元中获取连续指定数目个像素值;其中,所述指定数目为所述图像帧的帧宽度的约数;

    27、针对每一时钟周期所获取的连续指定数目个像素值,按照对应的像素点的所述排列顺序,将该连续指定数目个像素值中第一个像素值以外的每一像素值减前一像素值,得到该像素值所表征的像素点对应的像素差值;

    28、按照所述排列顺序,若该连续指定数目个像素值中第一个像素值所表征的像素点不是所属行的第一个像素点,则获取前一时钟周期所得到的连续指定数目个像素值中的最后一个像素值,并计算本次获取到的连续指定数目个像素值中第一个像素值与该最后一个像素值的差值,作为本次获取到的连续指定数目个像素值中第一个像素值所表征的像素点的像素差值。

    29、可选的,所述方法还包括:

    30、获取图像处理模型中待压缩的多组模型参数;其中,一组模型参数包含:所述图像处理模型中卷积神经网络中一个卷积核的参数,且一个卷积核的全部参数的数量为一组模型参数所包含参数的数量的整数倍;每一组模型参数中每一参数以第四指定位宽的二进制数据表示;

    31、针对每一组模型参数,若该组模型参数中每一参数的第二有效位宽均小于第五指定位宽,则确定该组模型参数中每一参数的最低的所述第五指定位宽的数据,作为该参数压缩后的数据,得到该组模型参数的压缩结果;其中,该组模型参数中每一参数的第二有效位宽表示:在该参数中用于表示该参数的绝对值大小的部分所占的位宽;所述第四指定位宽大于所述第五指定位宽;

    32、将各组模型参数的压缩结果存储在块存储器中;其中,所述块存储器的存储位宽为所述第五指定位宽的整数倍。

    33、可选的,在所述获取图像处理模型中待压缩的多组模型参数之后,所述方法还包括:

    34、针对每一组模型参数,若该组模型参数中存在任一参数的第二有效位宽不小于所述第五指定位宽,则将该组模型参数存储在分布式存储器中,将该组模型参数在所述分布式存储器中的地址信息存储在所述块存储器中。

    35、第二方面,本发明实施例提供了一种数据解压方法,所述方法包括:

    36、获取待解压的图像帧的各行像素点的压缩结果;

    37、基于每一行像素点的压缩结果,确定该行像素点中各像素点的像素值的压缩结果;

    38、针对每一行像素点的压缩结果,若该行像素点的压缩结果为基于该行像素点中各像素点对应的像素差值中最低的第二指定位宽的数据确定的,则根据对该行像素点中各像素点的像素值的压缩结果进行补位后的数据,确定该行像素点中各像素点对应的像素差值;其中,针对所述图像帧中每一行像素点,按照该行像素点的排列顺序,该行像素点中后一个像素点的像素值与前一个像素点的像素值的差值为该后一个像素点对应的像素差值,且该行像素点中第一个像素点对应的像素差值为该第一个像素点的像素值;

    39、按照该行像素点的排列顺序,将该行像素点中除第一个像素点以外的每一像素点对应的像素差值与前一像素点的像素值相加,作为该像素点的像素值,得到该行像素点的像素值;其中,该行像素点中每一像素点的像素值以第一指定位宽的二进制数据表示;其中,所述第二指定位宽小于所述第一指定位宽,且与所述图像帧的图像亮度呈正相关。

    40、可选的,所述若该行像素点的压缩结果为基于该行像素点中各像素点对应的像素差值中最低的第二指定位宽的数据确定的,则根据对该行像素点中各像素点的像素值的压缩结果进行补位后的数据,确定该行像素点中各像素点对应的像素差值,包括:

    41、针对该行像素点中每一像素点,若该像素点的像素值的压缩结果中,存在表示该像素点对应的像素差值的第一有效位宽不大于第二指定位宽的标志位,以及表示该像素点对应的像素差值为正数的标志位,则去除该像素点的像素值的压缩结果的标志位,对去除标志位后的数据的高位进行补位,得到以第一指定位宽的二进制数据表示的数据,作为该像素点对应的像素差值;

    42、若该行像素点中每一像素点的像素值的压缩结果中,存在表示该像素点对应的像素差值的第一有效位宽不大于第二指定位宽的标志位,以及表示该像素点对应的像素差值为负数的标志位,则去除该像素点的像素值的压缩结果的标志位,对去除标志位后的数据的高位进行补位所得到的数据取反,得到以第一指定位宽的二进制数据表示的数据,作为该像素点对应的像素差值。

    43、可选的,所述方法还包括:

    44、针对每一行像素点的压缩结果,若该行像素点中每一像素点的像素值的压缩结果中,存在表示该像素点对应的像素差值的第一有效位宽大于所述第二指定位宽的标志位,以及表示该像素点对应的像素差值为正数的标志位,则将去除标志位的该像素点的像素值的压缩结果,作为该像素点对应的像素差值;

    45、若该行像素点中每一像素点的像素值的压缩结果中,存在表示该像素点对应的像素差值的第一有效位宽大于所述第二指定位宽的标志位,以及表示该像素点对应的像素差值为负数的标志位,则去除该像素点的像素值的压缩结果的标志位,对去除标志位后的数据取反,得到该像素点对应的像素差值。

    46、可选的,所述基于每一行像素点的压缩结果,确定该行像素点中各像素点的像素值的压缩结果,包括:

    47、若每一行像素点的压缩结果为基于哈夫曼编码进行编码所得到的编码结果,则基于哈夫曼解码对该行像素点的压缩结果进行解码,得到该行像素点中各像素点的像素值的压缩结果;

    48、若每一行像素点的压缩结果不是基于哈夫曼编码进行编码所得到的编码结果,则将每一行像素点的压缩结果作为该行像素点中各像素点的像素值的压缩结果。

    49、可选的,所述基于哈夫曼解码对该行像素点的压缩结果进行解码,得到该行像素点中各像素点的像素值的压缩结果,包括:

    50、若该行像素点的压缩结果中存在指示信号,则根据所述指示信号,在该行像素点的压缩结果中,确定待利用的数据;其中,所述指示信号用于标识该行像素点的压缩结果中用于补位的0;

    51、基于哈夫曼解码对待利用的数据进行解码,得到该行像素点中各像素点的像素值的压缩结果。

    52、可选的,所述方法还包括:

    53、针对图像处理模型中每一组模型参数的压缩结果,若该组模型参数的压缩结果为基于该组模型参数中每一参数的最低的第五指定位宽的数据确定的,则从块存储器中获取该组模型参数的压缩结果;其中,一组模型参数包含:所述图像处理模型中卷积神经网络中一个卷积核的参数,且一个卷积核的全部参数的数量为一组模型参数所包含参数的数量的整数倍;

    54、对该组模型参数中每一参数压缩后的数据进行补位,根据补位后的数据,得到以第四指定位宽的二进制数据表示的该组模型参数中的该参数;其中,所述第四指定位宽大于所述第五指定位宽。

    55、可选的,所述方法还包括:

    56、针对每一组模型参数的压缩结果,若该组模型参数的压缩结果不是基于该组模型参数中每一参数的最低的第五指定位宽的数据确定的,从所述块存储器中获取该组模型参数的压缩结果在分布式存储器中地址的地址信息;

    57、从所述地址信息所表征的所述分布式存储器中的地址中,获取该组模型参数。

    58、第三方面,本发明实施例提供了一种图像采集设备,所述设备包括图像传感器以及图像信号处理芯片,

    59、所述图像传感器,用于采集待压缩的图像帧,并将所述图像帧发送给所述图像信号处理芯片;

    60、所述图像信号处理芯片,用于执行上述的数据压缩方法,以及上述的数据解压方法。

    61、可选的,所述图像信号处理芯片,还用于利用图像处理模型中各组模型参数对所述图像帧中每行像素点的像素值进行处理。

    62、第四方面,本发明实施例还提供了一种数据压缩装置,所述装置包括:

    63、第一获取模块,用于获取待压缩的图像帧;其中,所述图像帧中每一像素点的像素值以第一指定位宽的二进制数据表示;

    64、第二获取模块,用于针对所述图像帧中每一行像素点,按照该行像素点的排列顺序,将该行像素点中第一个像素点以外的每一像素点的像素值减前一像素点的像素值,得到该像素点对应的像素差值;其中,该行像素点中第一个像素点对应的像素差值为该第一个像素点的像素值;

    65、第一确定模块,用于针对该行像素点中每一像素点,若该像素点对应的像素差值的第一有效位宽不大于第二指定位宽,根据该像素点对应的像素差值中最低的所述第二指定位宽的数据,确定该像素点的像素值的压缩结果;

    66、其中,该像素点对应的像素差值的第一有效位宽表示:在该像素点对应的像素差值中用于表示该像素差值的绝对值大小的部分所占的位宽;所述第二指定位宽小于所述第一指定位宽,且与所述图像帧的图像亮度呈正相关;

    67、第三获取模块,用于基于该行像素点中各像素点的像素值的压缩结果,得到该行像素点的压缩结果。

    68、第五方面,本发明实施例还提供了一种数据解压装置,所述装置包括:

    69、第四获取模块,用于获取待解压的图像帧的各行像素点的压缩结果;

    70、第二确定模块,用于基于每一行像素点的压缩结果,确定该行像素点中各像素点的像素值的压缩结果;

    71、第三确定模块,用于针对每一行像素点的压缩结果,若该行像素点的压缩结果为基于该行像素点中各像素点对应的像素差值中最低的第二指定位宽的数据确定的,则根据对该行像素点中各像素点的像素值的压缩结果进行补位后的数据,确定该行像素点中各像素点对应的像素差值;其中,针对所述图像帧中每一行像素点,按照该行像素点的排列顺序,该行像素点中后一个像素点的像素值与前一个像素点的像素值的差值为该后一个像素点对应的像素差值,且该行像素点中第一个像素点对应的像素差值为该第一个像素点的像素值;

    72、第五获取模块,用于按照该行像素点的排列顺序,将该行像素点中除该第一个像素点以外的每一像素点对应的像素差值与前一像素点的像素值相加,作为该像素点的像素值,得到该行像素点的像素值;其中,该行像素点中每一像素点的像素值以第一指定位宽的二进制数据表示;所述第二指定位宽小于所述第一指定位宽,且与所述图像帧的图像亮度呈正相关。

    73、本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述的数据压缩方法以及数据解压方法。

    74、本发明实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述的数据压缩方法以及数据解压方法。

    75、本发明实施例有益效果:

    76、本发明实施例提供的一种数据压缩方法,可以获取待压缩的图像帧;针对图像帧中每一行像素点,按照该行像素点的排列顺序,将该行像素点中第一个像素点以外的每一像素点的像素值减前一像素点的像素值,得到该像素点对应的像素差值;针对该行像素点中每一像素点,若该像素点对应的像素差值的第一有效位宽不大于第二指定位宽,根据该像素点对应的像素差值中最低的第二指定位宽的数据,确定该像素点的像素值的压缩结果;基于该行像素点中各像素点的像素值的压缩结果,得到该行像素点的压缩结果。

    77、基于上述处理,由于该行像素点中第一个像素点对应的像素差值为该第一个像素点的像素值,从而,该行像素点中每一像素点均存在对应的像素差值;由于第一有效位宽表示在该像素点对应的像素差值中用于表示该像素差值的绝对值大小的部分所占的位宽,从而,该像素差值中最低的第一有效位宽的数据为有效数据,除第一有效位宽外的位宽的数据均是无效数据;由于第二指定位宽与图像帧的图像亮度呈正相关,并且图像帧的图像亮度越低,像素差值的有效数据越少,像素差值的第一有效位宽越少,从而,与图像亮度正相关的第二指定位宽是大于第一有效位宽的;图像帧中每一像素点的像素值以第一指定位宽的二进制数据表示,第二指定位宽小于第一指定位宽,进而,当第一有效位宽不大于第二指定位宽时,根据像素差值中最低的第二指定位宽的数据,所确定的该像素点的像素值的压缩结果中包含全部的有效数据,并减少了无效数据,以减少各像素点的像素值的压缩结果的位宽,减少被占用的存储空间。

    78、当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。


    技术特征:

    1.一种数据压缩方法,其特征在于,所述方法包括:

    2.根据权利要求1所述的方法,其特征在于,所述若该像素点对应的像素差值的第一有效位宽不大于第二指定位宽,根据该像素点对应的像素差值中最低的所述第二指定位宽的数据,确定该像素点的像素值的压缩结果,包括:

    3.根据权利要求1所述的方法,其特征在于,所述方法还包括:

    4.根据权利要求3所述的方法,其特征在于,所述若该像素点对应的像素差值的第一有效位宽大于所述第二指定位宽,根据该像素点对应的像素差值中所有位的数据,确定该像素点的像素值的压缩结果,包括:

    5.根据权利要求1所述的方法,其特征在于,所述基于该行像素点中各像素点的像素值的压缩结果,得到该行像素点的压缩结果,包括:

    6.根据权利要求5所述的方法,其特征在于,所述基于哈夫曼编码,对该行像素点中各像素点的像素值的压缩结果进行编码,得到该行像素点的编码结果,包括:

    7.根据权利要求1所述的方法,其特征在于,

    8.根据权利要求1所述的方法,其特征在于,所述方法还包括:

    9.根据权利要求8所述的方法,其特征在于,在所述获取图像处理模型中待压缩的多组模型参数之后,所述方法还包括:

    10.一种数据解压方法,其特征在于,所述方法包括:

    11.根据权利要求10所述的方法,其特征在于,所述若该行像素点的压缩结果为基于该行像素点中各像素点对应的像素差值中最低的第二指定位宽的数据确定的,则根据对该行像素点中各像素点的像素值的压缩结果进行补位后的数据,确定该行像素点中各像素点对应的像素差值,包括:

    12.根据权利要求10所述的方法,其特征在于,所述方法还包括:

    13.根据权利要求10所述的方法,其特征在于,所述基于每一行像素点的压缩结果,确定该行像素点中各像素点的像素值的压缩结果,包括:

    14.根据权利要求13所述的方法,其特征在于,所述基于哈夫曼解码对该行像素点的压缩结果进行解码,得到该行像素点中各像素点的像素值的压缩结果,包括:

    15.根据权利要求10所述的方法,其特征在于,所述方法还包括:

    16.根据权利要求15所述的方法,其特征在于,所述方法还包括:

    17.一种图像采集设备,其特征在于,所述设备包括图像传感器以及图像信号处理芯片,

    18.根据权利要求17所述的设备,其特征在于,所述图像信号处理芯片,还用于利用图像处理模型中各组模型参数对所述图像帧中每行像素点的像素值进行处理。

    19.一种数据压缩装置,其特征在于,所述装置包括:

    20.一种数据解压装置,其特征在于,所述装置包括:

    21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-16任一所述的方法。

    22.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序在被处理器执行时实现权利要求1-16任一所述的方法。


    技术总结
    本发明提供了数据压缩方法、数据解压方法、设备、装置、介质及产品,涉及数据处理技术领域。该方法包括:获取待压缩的图像帧;像素值以第一指定位宽的二进制数据表示;针对每一行像素点,将除第一个像素点外的每一像素点像素值减前一像素点像素值,得到该像素点的像素差值;该第一个像素点的像素差值为第一个像素点的像素值;针对每一像素点,若该像素点的像素差值的有效位宽不大于第二指定位宽,根据该像素点的像素差值中最低的第二指定位宽的数据,确定该像素点的压缩结果;该像素点的像素差值的有效位宽表示用于表示该像素差值绝对值大小的部分所占位宽;第二指定位宽小于第一指定位宽,与图像亮度正相关。本发明可以减少被占用的存储空间。

    技术研发人员:刘玮,杨再初,朱才志,周晓
    受保护的技术使用者:北京英特灵达信息技术有限公司
    技术研发日:
    技术公布日:2024/11/26
    转载请注明原文地址:https://tc.8miu.com/read-31545.html

    最新回复(0)