CN114928362B - 一种数据压缩方法、装置及计算机可读存储介质 - Google Patents
一种数据压缩方法、装置及计算机可读存储介质Info
- Publication number
- CN114928362B CN114928362B CN202210334633.0A CN202210334633A CN114928362B CN 114928362 B CN114928362 B CN 114928362B CN 202210334633 A CN202210334633 A CN 202210334633A CN 114928362 B CN114928362 B CN 114928362B
- Authority
- CN
- China
- Prior art keywords
- data
- yuyv
- depth data
- target depth
- low
- 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
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/60—General implementation details not specific to a particular type of compression
- H03M7/6011—Encoder aspects
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/70—Type of the data to be coded, other than image and sound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例公开了一种数据压缩方法、装置及计算机可读存储介质,用于将TOF设备生成的深度数据进行压缩。本申请实施例方法包括:读取16位2进制的原始深度数据到本机内存,得到目标深度数据;判断目标深度数据是否符合YUYV编码器的预设输入需求;若否,则将目标深度数据的高地址字节和低地址字节进行整体互换,使得目标深度数据的低地址字节与原始深度数据的高八位相同,高地址字节与原始深度数据的低八位相同;将目标深度数据输入YUYV编码器,得到对应的YUYV数据,其中,目标深度数据的低地址字节作为YUYV数据的亮度分量,高八位作为YUYV数据的色度分量;对YUYV数据进行数据压缩,得到压缩数据。
Description
技术领域
本申请实施例涉及数据压缩技术领域,尤其涉及一种数据压缩方法、装置及计算机可读存储介质。
背景技术
飞行时间(Time of flight,TOF)法3D成像,是通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。这种技术跟3D激光传感器原理基本类似,只不过3D激光传感器是逐点扫描,而TOF相机则是同时得到整幅图像的深度信息。TOF相机与普通机器视觉成像过程也有类似之处,都是由光源、光学部件、传感器、控制电路以及处理电路等几部单元组成。与同属于非侵入式三维探测、适用领域非常类似的双目测量系统相比,TOF相机具有根本不同3D成像机理。双目立体测量通过左右立体像对匹配后,再经过三角测量法来进行立体探测,而TOF相机是通过入、反射光探测来获取的目标距离获取。
现有技术中,对于TOF相机等基于TOF技术的设备通过TOF镜头生成目标区域的原始深度数据,目前并没有很好的压缩方式,通常是将生成的原始深度数据进行临时存储之后,直接发送给目标设备。
发明内容
本申请实施例提供了一种数据压缩方法、装置及计算机可读存储介质,可以将TOF设备生成的深度数据进行压缩。
本申请实施例第一方面提供了一种数据压缩方法,包括:
读取16位2进制的原始深度数据到本机内存,得到目标深度数据,所述目标深度数据包括低地址字节和高地址字节;
判断所述目标深度数据是否符合YUYV编码器的预设输入需求,所述YUYV编码器用于将输入的深度数据编码为YUYV格式;
若否,则将所述目标深度数据的高地址字节和低地址字节进行整体互换,使得所述目标深度数据的低地址字节与所述原始深度数据的高八位相同,高地址字节与所述原始深度数据的低八位相同;
将所述目标深度数据输入所述YUYV编码器,得到对应的YUYV数据,其中,所述目标深度数据的低地址字节作为所述YUYV数据的亮度分量,高地址字节作为所述YUYV数据的色度分量;
对所述YUYV数据进行数据压缩,得到压缩数据。
可选的,所述判断所述目标深度数据是否符合YUYV编码器的预设输入需求包括:
获取本机的端模式;
判断所述端模式是否为大端模式;
若是,则确定所述目标深度数据符合YUYV编码器的预设输入需求;若否,则确定所述目标深度数据不符合YUYV编码器的预设输入需求。
可选的,所述读取16位2进制的原始深度数据到本机内存之前,所述方法还包括:
将原始深度数据循环左移N位,其中,N大于等于1。
可选的,所述对所述YUYV数据进行数据压缩包括:
获取与本机连接的目标主机的存储器使用情况;
根据所述存储器使用情况对所述YUYV数据进行数据压缩。
可选的,所述根据所述存储器使用情况对所述YUYV数据进行数据压缩包括:
从所述存储器使用情况中提取出分给本机的剩余存储空间;
当所述剩余存储空间大于压缩阈值时,对所述YUYV数据的亮度分量进行高保真压缩,对所述YUYV数据的色度分量进行高保真压缩;当所述剩余存储空间小于或等于所述压缩阈值时,对所述YUYV数据的亮度分量进行高保真压缩,对所述YUYV数据的色度分量进行低保真压缩。
本申请实施例第一方面提供了一种数据压缩装置,包括:
读取单元,用于读取16位2进制的原始深度数据到本机内存,得到目标深度数据,所述目标深度数据包括低地址字节和高地址字节;
判断单元,用于判断所述目标深度数据是否符合YUYV编码器的预设输入需求,所述YUYV编码器用于将输入的深度数据编码为YUYV格式;
整体互换单元,用于当所述判断单元确定所述目标深度数据不符合YUYV编码器的预设输入需求时,将所述目标深度数据的高地址字节和低地址字节进行整体互换,使得所述目标深度数据的低地址字节与所述原始深度数据的高八位相同,高地址字节与所述原始深度数据的低八位相同;
输入单元,用于将所述目标深度数据输入所述YUYV编码器,得到对应的YUYV数据,其中,所述目标深度数据的低地址字节作为所述YUYV数据的亮度分量,高地址字节作为所述YUYV数据的色度分量;
压缩单元,用于对所述YUYV数据进行数据压缩,得到压缩数据。
本申请实施例第三方面提供了一种数据压缩装置,包括:
处理器、存储器、输入输出单元以及总线;
所述处理器与所述存储器、所述输入输出单元以及所述总线相连;
所述存储器中保存有程序,所述处理器调用所述程序以执行第一方面及第一方面任意一种可能的实施方式中的数据压缩方法。
本申请实施例第四方面提供了一种TOF相机,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,实现如第一方面及第一方面任意一种可能的实施方式中的数据压缩方法。
本申请实施例第五方面提供了一种计算机可读存储介质,所述计算机可读存储介质上保存有程序,所述程序在计算机上执行时使得所述计算机执行第一方面及第一方面任意一种可能的实施方式中的数据压缩方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供的数据压缩方法,在将目标深度数据转换成YUYV数据之前,先判断目标深度数据是否符合YUYV编码器的预设输入需求,如果确定不符合,则先将该目标深度数据的高地址字节和低地址字节进行整体互换,使得目标深度数据的低地址字节与原始深度数据的高八位相同,高地址字节与原始深度数据的低八位相同,再将目标深度数据转换成YUYV数据,其中,目标深度数据的低地址字节作为所述YUYV数据的亮度分量,高地址字节作为所述YUYV数据的色度分量,最后对YUYV数据进行压缩,从而能够实现对目标深度数据的压缩。同时,即使色度分量引入了误差,解压得到的深度数据与原始深度数据的误差只会局限在低八位,有利于减小误差。
附图说明
图1为本申请实施例中数据压缩方法一个实施例的流程示意图;
图2为本申请实施例中数据压缩方法另一个实施例的流程示意图;
图3为本申请实施例中数据压缩装置一个实施例的结构示意图;
图4为本申请实施例中数据压缩装置另一个实施例的结构示意图;
图5为本申请实施例中数据压缩装置另一个实施例的结构示意图。
具体实施方式
本申请实施例提供了一种数据压缩方法,用于将TOF设备生成的深度数据进行压缩。
本申请的方法可以应用于基于TOF技术的智能摄像头、智能手机或者其它具备逻辑处理能力的设备,对此,本申请不作限定。为方便描述,下面以执行主体为终端为例进行描述。
下面将结合附图,对本申请中的实施例进行描述。
请参阅图1,本申请实施例中数据压缩方法一个实施例包括:
101、终端读取16位2进制的原始深度数据到本机内存;
在实际应用中,TOF镜头生成的原始深度数据通常是16位的2进制数据,在TOF镜头生成原始深度数据之后,终端会根据本机CPU的特性,将原始深度数据读取到本机内存,从而得到目标深度数据。其中,目标深度数据包括高地址字节和低地址字节。
102、终端判断目标深度数据是否符合YUYV编码器的预设输入需求,若否,则执行步骤103;
终端在将目标深度数据转换为YUYV数据,需要先判断目标深度数据是否符合YUYV编码器的预设输入需求,如果确定目标深度数据不符合预设输入需求,则可以执行步骤103。
103、终端将目标深度数据的高地址字节和低地址字节进行整体互换;
当终端确定目标深度数据不符合YUYV编码器的预设输入需求,则可以将目标深度数据的高地址字节和低地址字节进行整体互换,这样可以使得目标深度数据的原高地址字节变为新低地址字节,原低地址字节变为新高地址字节。与此同时,能够使得目标深度数据的新高地址字节与原始深度数据的低八位相同,新低地址字节与原始深度数据的高八位相同。例如,原始深度数据为0x1A76,高八位为0x1A,低八位为0x76,那么整体互换后的目标深度数据的低地址字节为0x1A,高地址字节为0x76。
104、终端将目标深度数据输入YUYV编码器,得到对应的YUYV数据;
终端可以将目标深度数据输入到YUYV编码器中,得到对应的YUYV数据,其中,目标深度数据的低地址字节作为YUYV数据的亮度分量,高地址字节作为YUYV数据的色度分量。例如,目标深度数据的低地址字节为0x1A,高地址字节为0x76,那么得到的YUYV数据中,亮度分量则为0x1A,色度分量则为0x76。
105、终端对YUYV数据进行数据压缩,得到压缩数据。
在将目标深度数据转化为对应的YUYV数据之后,终端可以根据实际情况选择压缩方式对YUYV数据进行压缩,最终得到压缩数据,从而完成对目标深度数据的压缩处理,得到目标深度数据对应的且占存储空间更小的压缩数据。
本实施例中,终端在将目标深度数据转换成YUYV数据之前,先判断目标深度数据是否符合YUYV编码器的预设输入需求,如果确定不符合,则先将该目标深度数据的高地址字节和低地址字节进行整体互换,使得目标深度数据的低地址字节与原始深度数据的高八位相同,高地址字节与原始深度数据的低八位相同,再将目标深度数据转换成YUYV数据,其中,目标深度数据的低地址字节作为YUYV数据的亮度分量,高地址字节作为YUYV数据的色度分量,最后对YUYV数据进行压缩,从而能够实现对目标深度数据的压缩。同时,即使色度分量引入了误差,解压得到的深度数据与原始深度数据的误差只会局限在低八位,有利于减小误差。
请参阅图2,本申请实施例中数据压缩方法另一个实施例包括:
201、终端将原始深度数据循环左移N位;
在实际应用中,比如办公多人视频会议场所,TOF设备的最大测量范围不一定是一样的,例如有的TOF设备的最大测量范围是4m,而有的TOF设备的最大测量范围则为超过了10m,等等。而不同的TOF设备生成的深度数据通常都是以mm为单位,那么生成的原始深度数据最大值则占用16位2进制数中的12至14位,最高的2至4位总是为0,那么这样就会使得亮度分量保留了2至4位的无效位(因为总是为0),如果想要进一步提高精度,则可以将这些无效位引入到色度分量,并将相应数量的表示数据的位引入到亮度分量。因此,终端可以将原始深度数据循环左移N位,其中,N大于等于1,N的取值由终端生成的深度数据中最高的无效位的数量决定,即,N的取值由终端的最大测量范围决定,例如,当终端的最大测量范围为4m时,N则为4;当终端的最大测量范围为10m时,N则为2。
例如对于原始深度数据0x1A76,二进制形式为0001 1010 0111 0110,高八位为0001 1010,低八位为0111 0110,当N取值为3时,那么可以对0001 1010 0111 0110执行循环左移3位,得到1101 0011 1011 0000,此时该原始深度数据的高八位变为了1101 0011,低八位变为了1011 0000。
需要说明的是,循环左移N位的操作,可以使用等同效果的操作进行替代,只要保证执行操作后得到的数据与执行循环左移N位得到的数据相同即可。
202、终端读取16位2进制的原始深度数据到本机内存;
本实施例中,步骤202与前述实施例中的步骤101类似,此处不再赘述。
203、终端获取本机的端模式;
在实际应用中,端模式分为大端模式和小端模式。大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,数据从高位往低位放,这和我们的阅读习惯一致。小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低。例如,对于一个数据0x1234,在大端模式下,在低地址中存放0x12,高地址中存放0x34;在小端模式下,在低地址中存放0x34,在高地址中存放0x12。只要知道端模式,则可以知道原始深度数据被存储为何种状态的目标深度数据,所以终端需要获取本机的端模式。
204、终端判断端模式是否为大端模式,若是,则执行步骤211,若否,则执行步骤205;
在获取到本机的端模式之后,终端可以判断该端模式是否为大端模式,如果确定是大端模式,则可以执行步骤211,如果确定不是大端模式,即,确定是小端模式,则可以执行步骤205。
205、终端确定目标深度数据不符合YUYV编码器的预设输入需求;
在确定本机的端模式为小端模式之后,终端则可以确定目标深度数据不符合YUYV编码器的预设输入需求,需要对目标深度数据作进一步处理才能执行将目标深度数据输入YUYV编码器的操作。
206、终端将目标深度数据的高地址字节和低地址字节进行整体互换;
207、终端将目标深度数据输入YUYV编码器,得到对应的YUYV数据;
本实施例中,步骤206至207与前述实施例中的步骤103至104类似,此处不再赘述。
208、终端获取与本机连接的目标主机的存储器使用情况;
在得到YUYV数据之后,终端可以先获取与本机连接的目标主机的存储器使用情况,其中,存储器使用情况包括目标主机给终端分配的存储空间总量、终端已经使用掉的存储空间以及分给终端的剩余存储空间等等。具体获取存储器使用情况的方式,包括:终端主动向目标主机发送请求,目标主机接收到请求后将存储器使用情况反馈给终端;目标主机周期性向终端发送存储器使用情况;终端本地保存有存储器使用情况,直接从本地获取等等多种方式,具体此处不作限定。
209、终端从存储器使用情况中提取出分给本机的剩余存储空间;
终端在获取到存储器使用情况之后,可以从中提取出目标主机分给本机的剩余存储空间,以根据剩余存储空间的容量选择合适的压缩方式对YUYV数据进行压缩。
210、当剩余存储空间大于压缩阈值时,终端对YUYV数据的亮度分量进行高保真压缩,对YUYV数据的色度分量进行高保真压缩;当剩余存储空间小于或等于压缩阈值时,终端对YUYV数据的亮度分量进行高保真压缩,对YUYV数据的色度分量进行低保真压缩;
在得到剩余存储空间之后,终端可以将剩余存储空间与预设的压缩阈值进行比较,如果剩余存储空间大于压缩阈值,则可以对YUYV数据的亮度分量和色度分量都执行高保真压缩;如果剩余存储空间小于或者等于压缩阈值,则可以对YUYV数据的亮度分量执行高保真压缩,并采用低保真压缩的方式对YUYV数据的色的分量进行处理。
211、终端确定目标深度数据符合YUYV编码器的预设输入需求。
在确定本机的端模式为大端模式之后,终端则可以确定目标深度数据符合YUYV编码器的预设输入需求,然后直接执行步骤207至210。
本实施例中,对原始深度数据执行循环左移N位的操作,可以使得亮度分量保留更多的有效位数,从而可以进一步减小解压得到的深度数据与原始深度数据之间的误差。并且,通过将目标主机分给终端你的剩余存储空间与预设的压缩阈值进行比较,得到比较结果,再根据比较结果灵活选择压缩方式,提高了对原始深度数据压缩的灵活性。
请参阅图3,本申请实施例中数据压缩装置一个实施例包括:
读取单元301,用于读取16位2进制的原始深度数据到本机内存,得到目标深度数据,目标深度数据包括低地址字节和高地址字节;
判断单元302,用于判断目标深度数据是否符合YUYV编码器的预设输入需求,YUYV编码器用于将输入的深度数据编码为YUYV格式;
整体互换单元303,用于当判断单元302确定目标深度数据不符合YUYV编码器的预设输入需求时,将目标深度数据的高地址字节和低地址字节进行整体互换,使得目标深度数据的低地址字节与原始深度数据的高八位相同,高地址字节与原始深度数据的低八位相同;
输入单元304,用于将目标深度数据输入YUYV编码器,得到对应的YUYV数据,其中,目标深度数据的低地址字节作为YUYV数据的亮度分量,高地址字节作为YUYV数据的色度分量;
压缩单元305,用于对YUYV数据进行数据压缩,得到压缩数据。
本实施例中,在输入单元304将目标深度数据转换成YUYV数据之前,判断单元302先判断目标深度数据是否符合YUYV编码器的预设输入需求,如果确定不符合,则整体互换单元303先将该目标深度数据的高地址字节和低地址字节进行整体互换,使得目标深度数据的低地址字节与原始深度数据的高八位相同,高地址字节与原始深度数据的低八位相同,再将目标深度数据转换成YUYV数据,其中,目标深度数据的低地址字节作为YUYV数据的亮度分量,高地址字节作为YUYV数据的色度分量,最后压缩单元305对YUYV数据进行压缩,从而能够实现对目标深度数据的压缩。同时,即使色度分量引入了误差,解压得到的深度数据与原始深度数据的误差只会局限在低八位,有利于减小误差。
请参阅图4,本申请实施例中数据压缩装置另一个实施例包括:
读取单元401,用于读取16位2进制的原始深度数据到本机内存,得到目标深度数据,目标深度数据包括低地址字节和高地址字节;
判断单元402,用于判断目标深度数据是否符合YUYV编码器的预设输入需求,YUYV编码器用于将输入的深度数据编码为YUYV格式;
整体互换单元403,用于当判断单元402确定目标深度数据不符合YUYV编码器的预设输入需求时,将目标深度数据的高地址字节和低地址字节进行整体互换,使得目标深度数据的低地址字节与原始深度数据的高八位相同,高地址字节与原始深度数据的低八位相同;
输入单元404,用于将目标深度数据输入YUYV编码器,得到对应的YUYV数据,其中,目标深度数据的低地址字节作为YUYV数据的亮度分量,高地址字节作为YUYV数据的色度分量;
压缩单元405,用于对YUYV数据进行数据压缩,得到压缩数据。
本实施例中,判断单元402包括:
获取模块4021,用于获取本机的端模式;
判断模块4022,用于判断端模式是否为大端模式;
第一确定模块4023,用于当判断模块确定端模式为大端模式时,则确定目标深度数据符合YUYV编码器的预设输入需求;
第二确定模块4024,用于当判断模块确定端模式不为大端模式时,则确定目标深度数据不符合YUYV编码器的预设输入需求。
本实施例中,数据压缩装置还包括:
移位单元406,用于将原始深度数据循环左移N位,其中,N大于等于1。
本实施例中,数据压缩单元405具体用于:
获取与本机连接的目标主机的存储器使用情况;
从存储器使用情况中提取出分给本机的剩余存储空间;
当剩余存储空间大于压缩阈值时,对YUYV数据的亮度分量进行高保真压缩,对YUYV数据的色度分量进行高保真压缩;当剩余存储空间小于或等于压缩阈值时,对YUYV数据的亮度分量进行高保真压缩,对YUYV数据的色度分量进行低保真压缩。
本实施中,各单元及模块的功能和前述图2所示实施例中的步骤对应,此处不再赘述。
请参阅图5,本申请实施例中数据压缩装置另一个实施例包括:
处理器501、存储器502、输入输出单元503以及总线504;
处理器501与存储器502、输入输出单元503以及总线504相连;
本实施例中,处理器501的功能与前述图1至图2所示实施例中的步骤对应,此处不再赘述。
本申请实施例还提供了一种TOF相机,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行时,实现如图1至图2所示实施例中的数据压缩方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-only memory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (9)
1.一种数据压缩方法,其特征在于,包括:
读取16位2进制的原始深度数据到本机内存,得到目标深度数据,所述目标深度数据包括低地址字节和高地址字节;
判断所述目标深度数据是否符合YUYV编码器的预设输入需求,所述YUYV编码器用于将输入的深度数据编码为YUYV格式;
若否,则将所述目标深度数据的高地址字节和低地址字节进行整体互换,使得所述目标深度数据的低地址字节与所述原始深度数据的高八位相同,高地址字节与所述原始深度数据的低八位相同;
将所述目标深度数据输入所述YUYV编码器,得到对应的YUYV数据,其中,所述目标深度数据的低地址字节作为所述YUYV数据的亮度分量,高地址字节作为所述YUYV数据的色度分量;
对所述YUYV数据进行数据压缩,得到压缩数据;
所述判断所述目标深度数据是否符合YUYV编码器的预设输入需求包括:
获取本机的端模式;所述端模式包括大端模式或小端模式;所述大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中;所述小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中;
判断所述端模式是否为所述大端模式;
若是,则确定所述目标深度数据符合YUYV编码器的预设输入需求;若否,则确定所述目标深度数据不符合YUYV编码器的预设输入需求。
2.根据权利要求1所述的数据压缩方法,其特征在于,所述读取16位2进制的原始深度数据到本机内存之前,所述方法还包括:
将原始深度数据循环左移N位,其中,N大于等于1。
3.根据权利要求1或2所述的数据压缩方法,其特征在于,所述对所述YUYV数据进行数据压缩包括:
获取与本机连接的目标主机的存储器使用情况;
根据所述存储器使用情况对所述YUYV数据进行数据压缩。
4.根据权利要求3所述的数据压缩方法,其特征在于,所述根据所述存储器使用情况对所述YUYV数据进行数据压缩包括:
从所述存储器使用情况中提取出分给本机的剩余存储空间;
当所述剩余存储空间大于压缩阈值时,对所述YUYV数据的亮度分量进行高保真压缩,对所述YUYV数据的色度分量进行高保真压缩;当所述剩余存储空间小于或等于所述压缩阈值时,对所述YUYV数据的亮度分量进行高保真压缩,对所述YUYV数据的色度分量进行低保真压缩。
5.一种数据压缩装置,其特征在于,包括:
读取单元,用于读取16位2进制的原始深度数据到本机内存,得到目标深度数据,所述目标深度数据包括低地址字节和高地址字节;
判断单元,用于判断所述目标深度数据是否符合YUYV编码器的预设输入需求,所述YUYV编码器用于将输入的深度数据编码为YUYV格式;
整体互换单元,用于当所述判断单元确定所述目标深度数据不符合YUYV编码器的预设输入需求时,将所述目标深度数据的高地址字节和低地址字节进行整体互换,使得所述目标深度数据的低地址字节与所述原始深度数据的高八位相同,高地址字节与所述原始深度数据的低八位相同;
输入单元,用于将所述目标深度数据输入所述YUYV编码器,得到对应的YUYV数据,其中,所述目标深度数据的低地址字节作为所述YUYV数据的亮度分量,高地址字节作为所述YUYV数据的色度分量;
压缩单元,用于对所述YUYV数据进行数据压缩,得到压缩数据;
所述判断单元包括:
获取模块,用于获取本机的端模式;所述端模式包括大端模式或小端模式;所述大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中;所述小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中;
判断模块,用于判断所述端模式是否为大端模式;
第一确定模块,用于当所述判断模块确定所述端模式为大端模式时,则确定所述目标深度数据符合YUYV编码器的预设输入需求;
第二确定模块,用于当所述判断模块确定所述端模式不为大端模式时,则确定所述目标深度数据不符合YUYV编码器的预设输入需求。
6.根据权利要求5所述的数据压缩装置,其特征在于,所述数据压缩装置还包括:
移位单元,用于将原始深度数据循环左移N位,其中,N大于等于1。
7.一种数据压缩装置,其特征在于,包括:
处理器、存储器、输入输出单元以及总线;
所述处理器与所述存储器、所述输入输出单元以及所述总线相连;
所述存储器中保存有程序,所述处理器调用所述程序以执行权利要求1至4中任一项所述的数据压缩方法。
8.一种TOF相机,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,实现如权利要求1至4中任一项所述的数据压缩方法。
9.一种计算机可读存储介质,所述计算机可读存储介质中保存有程序,所述程序在计算机上运行时,使得所述计算机执行如权利要求1至4中任一项所述的数据压缩方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210334633.0A CN114928362B (zh) | 2022-03-31 | 2022-03-31 | 一种数据压缩方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210334633.0A CN114928362B (zh) | 2022-03-31 | 2022-03-31 | 一种数据压缩方法、装置及计算机可读存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN114928362A CN114928362A (zh) | 2022-08-19 |
| CN114928362B true CN114928362B (zh) | 2025-12-19 |
Family
ID=82804549
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202210334633.0A Active CN114928362B (zh) | 2022-03-31 | 2022-03-31 | 一种数据压缩方法、装置及计算机可读存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN114928362B (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116126741A (zh) * | 2022-12-28 | 2023-05-16 | 唯品会(广州)软件有限公司 | 基于大内存的内存压缩方法、装置、电子设备及存储介质 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111819465A (zh) * | 2017-12-29 | 2020-10-23 | 皇家飞利浦有限公司 | 用于自适应地配置用于超声图像显示的动态范围的系统和方法 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| NO942080D0 (no) * | 1994-06-03 | 1994-06-03 | Int Digital Tech Inc | Bildekoder |
| US8170095B2 (en) * | 1998-12-21 | 2012-05-01 | Zin Stai Pte. In, Llc | Faster image processing |
| GB2575121B (en) * | 2018-06-29 | 2022-12-28 | Imagination Tech Ltd | Guaranteed data compression |
| CN111857574A (zh) * | 2020-06-24 | 2020-10-30 | 苏州浪潮智能科技有限公司 | 一种写请求数据压缩方法、系统、终端及存储介质 |
| CN113141506A (zh) * | 2021-04-08 | 2021-07-20 | 上海烟草机械有限责任公司 | 基于深度学习的图像压缩神经网络模型、及其方法和设备 |
| CN114157850A (zh) * | 2021-11-26 | 2022-03-08 | 珠海视熙科技有限公司 | 一种数据传输方法、装置及计算机可读存储介质 |
-
2022
- 2022-03-31 CN CN202210334633.0A patent/CN114928362B/zh active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111819465A (zh) * | 2017-12-29 | 2020-10-23 | 皇家飞利浦有限公司 | 用于自适应地配置用于超声图像显示的动态范围的系统和方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN114928362A (zh) | 2022-08-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20240333901A1 (en) | Systems and Methods for Decoding Image Files Containing Depth Maps Stored as Metadata | |
| JP7451576B2 (ja) | ポイントクラウドデータ処理方法及び装置 | |
| CN103440612B (zh) | 一种gpu虚拟化中图像处理方法和装置 | |
| US20210398352A1 (en) | 3d data generation apparatus, 3d data reconstruction apparatus, control program, and recording medium | |
| US20140092439A1 (en) | Encoding images using a 3d mesh of polygons and corresponding textures | |
| CN105611274B (zh) | 一种三维图像数据的传输方法、装置及三维成像系统 | |
| US12015777B2 (en) | Signaling profile level exemptions for immersive video | |
| CN114928362B (zh) | 一种数据压缩方法、装置及计算机可读存储介质 | |
| WO2019001015A1 (zh) | 一种图像数据的编码、解码方法及装置 | |
| CN109274976B (zh) | 数据处理方法及装置、电子设备及存储介质 | |
| CN111190675A (zh) | 基于鲲鹏处理器的三维图像传输方法及设备 | |
| US20090189999A1 (en) | Image processing device for providing image quality information and method thereof | |
| CN114157850A (zh) | 一种数据传输方法、装置及计算机可读存储介质 | |
| CN108668169B (zh) | 图像信息处理方法及装置、存储介质 | |
| CN116250008A (zh) | 点云的编码、解码方法、编码器、解码器以及编解码系统 | |
| CN109274955B (zh) | 光场视频及深度图的压缩与同步方法、系统、及电子设备 | |
| US11115605B2 (en) | Electronic device for selectively compressing image data according to read out speed of image sensor, and method for operating same | |
| CN108012074A (zh) | 摄像机系统和用于该摄像机系统的运行方法 | |
| CN118646883B (zh) | 编码方法及相关装置、设备和介质 | |
| CN110310725B (zh) | 一种dicom图像的显示方法及设备 | |
| CN115393173A (zh) | 图像处理方法及装置、电子设备、存储介质 | |
| CN114001671B (zh) | 激光数据提取方法、数据处理方法、和三维扫描系统 | |
| US20250232478A1 (en) | Feature adaptive v-dmc subdivisions and tessellations | |
| CN115883745B (zh) | 图像传输方法、图像数据解析方法及相关装置 | |
| RU2803595C2 (ru) | Способ и устройство для кодирования/реконструкции 3d-точек |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant |