数据压缩方法、装置、电子设备及存储介质与流程

文档序号:23629580发布日期:2021-01-12 11:05
数据压缩方法、装置、电子设备及存储介质与流程

本申请涉及深度相机技术领域,特别的涉及一种数据压缩方法、装置、电子设备及存储介质。



背景技术:

飞行时间技术(timeofflight,tof),这种成像技术通过向目标发射连续的特定波长的红外光线脉冲,通过特定传感器接收待测物体传回的光信号,计算光线往返的飞行时间或相位差得到待测物体的3d深度信息,此外再结合传统的相机拍摄,就能将物体的三维轮廓以不同颜色代表不同距离的地形图方式呈现出来。3d深度视觉tof模组应用领域广泛,主要包括:汽车领域的高级驾驶辅助系统(advanceddriverassistancesystems,adas)与司机监测系统(drivermonitoringsystem,dms)、无人机障碍检测和路径规划、工业机器人路径规划和体积测量等。

随着tof技术的越来越普及,tof模组的分辨率越来越大。分辨率是由图像中若干个像素组成,由于制造工艺或者传感器本身的特性决定,每个像素都有一个固定偏差值,可通过标定过程求出每一个像素的固定偏差,且随着像素的增大固定偏差的数量成倍增大。当分辨率过大时,需要大量存储空间来存储各个像素的固定偏差,不仅增大运行成本,还易因固定偏差数量过大减慢运行速度。



技术实现要素:

本申请实施例提供了一种数据压缩方法、装置、电子设备及存储介质,可使要保存的图像中的固定偏差数量大大减少,不仅减缓了存储空间和运行的压力,还减少了对于存储空间所投入的成本。

第一方面,本申请实施例提供了一种数据压缩方法,包括:

获取待处理图像及处理图像中各个像素的固定偏差;其中,待处理图像为初始图像或者为初始图像的一部分;

计算待处理图像中各个像素的固定偏差的方差;

判断各个像素的固定偏差的方差是否低于预设阈值;

若待处理图像中各个像素的固定偏差的方差低于预设阈值,计算待处理图像中各个像素的固定偏差的均值;

根据待处理图像中各个像素的固定偏差的均值对待处理图像中各个像素的固定偏差进行压缩处理。

在本申请实施例中,可对获取的图像计算固定偏差的方差并与预设阈值比较,当方差小于阈值时计算图像中固定偏差的均值以对图像中的固定偏差进行压缩处理,可使要保存的图像中的固定偏差数量大大减少,不仅减缓了存储空间和运行的压力,还减少了对于存储空间所投入的成本。

在第一方面的一种可选方案中,根据待处理图像中各个像素的固定偏差的均值对待处理图像中各个像素的固定偏差进行压缩处理,包括:

将待处理图像中各个像素的固定偏差替换为对应待处理图像中各个像素的固定偏差的均值。

在本申请实施例中,可将待处理图像中所有像素的固定偏差值替换为该待处理图像中所有像素的固定偏差平均值,并通过保存一个固定偏差平均值来实现对该待处理图像中所有像素的固定偏差数量的压缩,进而避免占用运行空间过大。

在第一方面的又一种可选方案中,判断各个像素的固定偏差的方差是否低于预设阈值之后还包括:

若所述待处理图像中所述各个像素的固定偏差的方差高于预设阈值,将所述待处理图像划分为若干待处理子图像,将所述待处理子图像作为新的待处理图像,并将所述新的待处理图像返回至获取待处理图像及处理图像中各个像素的固定偏差的步骤中。

在本申请实施例中,对于待处理图像中像素的固定偏差的方差高于阈值,说明待处理图像中像素的固定偏差数值整体差异较大,需要对该待处理图像划分,并将划分后的子处理图像继续作为待处理图像进行计算方差并与阈值比较,可保证数据压缩的有效性。

在第一方面的又一种可选方案中,将待处理图像划分为若干待处理子图像,包括:

将待处理图像划分为m*n个待处理子图像;

其中,m为正整数,n为正整数,且m、n中存在至少一个大于等于2。

在本申请实施例中,在待处理图像中像素的固定偏差的方差大于预设阈值时,可通过将待处理图像划分为m*n个待处理子图像,保证待处理图像全部划分,进一步提高对固定偏差数量压缩的有效性。

在第一方面的又一种可选方案中,将待处理图像划分为m*n个待处理子图像具体为:

将待处理图像按照预设规则均匀划分为m*n个待处理子图像。

在本申请实施例中,具体可将待处理图像均匀划分为m*n个子图像,可使每一个子图像的大小相同,进而使待处理图像中像素的固定偏差数量的压缩效果更好,同时也便于对压缩后的固定偏差进行快速还原。

在第一方面的又一种可选方案中,将待处理图像中各个像素的固定偏差替换为对应待处理图像中各个像素的固定偏差的均值之后还包括:

保存待处理图像在初始图像上的位置信息。

在本申请实施例中,通过保存待处理图像中像素的固定偏差的均值以及对应在整体初始图像上的位置信息,可对整体初始图像中进行压缩的固定偏差进行快速还原,提高数据还原的效率,其次也可便于查找整体初始图像中进行压缩的固定偏差所对应的像素点。

在第一方面的又一种可选方案中,待处理图像为初始图像;

获取待处理图像及处理图像中各个像素的固定偏差具体包括:

对初始图像进行标定处理,得到初始图像中各个像素的固定偏差。

在本申请实施例中,当待处理图像为初始图像时,可先对待处理图像进行标定求得该待处理图像中各像素的固定偏差,便于后续计算方差以及均值,进而实现待处理图像中像素的固定偏差数量的压缩。

第二方面,本申请实施例提供了一种数据压缩装置,包括:

获取模块,用于获取待处理图像及处理图像中各个像素的固定偏差;其中,待处理图像为初始图像或者为初始图像的一部分;

第一计算模块,用于计算待处理图像中各个像素的固定偏差的方差;

判断模块,用于判断各个像素的固定偏差的方差是否低于预设阈值;

第二计算模块,用于若待处理图像中各个像素的固定偏差的方差低于预设阈值,计算待处理图像中各个像素的固定偏差的均值;

处理模块,用于根据待处理图像中各个像素的固定偏差的均值对待处理图像中各个像素的固定偏差进行压缩处理。

在本申请实施例中,可对获取的图像计算固定偏差的方差并与预设阈值比较,当方差小于阈值时计算图像中固定偏差的均值以对图像中的固定偏差进行压缩处理,可使要保存的图像中的固定偏差数量大大减少,不仅减缓了存储空间和运行压力,还可对图像中的固定偏差快速还原。

在第二方面的一种可选方案中,处理模块具体包括:

将待处理图像中各个像素的固定偏差替换为对应待处理图像中各个像素的固定偏差的均值。

在本申请实施例中,可将待处理图像中所有像素的固定偏差值替换为该待处理图像中所有像素的固定偏差平均值,并通过保存一个固定偏差平均值来实现对该待处理图像中所有像素的固定偏差数量的压缩,进而避免占用运行空间过大。

在第二方面的又一种可选方案中,在判断模块之后还包括:

划分模块,用于若待处理图像中各个像素的固定偏差的方差高于预设阈值,将待处理图像划分为若干待处理子图像,将待处理子图像作为新的待处理图像,并将新的待处理图像返回至获取待处理图像及处理图像中各个像素的固定偏差的步骤中。

在本申请实施例中,对于待处理图像中像素的固定偏差的方差高于阈值,说明待处理图像中像素的固定偏差数值整体差异较大,需要对该待处理图像划分,并将划分后的子处理图像继续作为待处理图像进行计算方差并与阈值比较,可保证数据压缩的有效性。

在第二方面的又一种可选方案中,划分模块具体包括:

若待处理图像中各个像素的固定偏差的方差高于预设阈值,将待处理图像划分为m*n个待处理子图像,将待处理子图像作为新的待处理图像,并将新的待处理图像返回至获取待处理图像及处理图像中各个像素的固定偏差的步骤中。

在本申请实施例中,在待处理图像中像素的固定偏差的方差大于预设阈值时,可通过将待处理图像划分为m*n个待处理子图像,保证待处理图像全部划分,进一步提高对固定偏差数量压缩的有效性。

在第二方面的又一种可选方案中,划分模块具体还包括:

若待处理图像中各个像素的固定偏差的方差高于预设阈值,将待处理图像按照预设规则均匀划分为m*n个待处理子图像,将待处理子图像作为新的待处理图像,并将新的待处理图像返回至获取待处理图像及处理图像中各个像素的固定偏差的步骤中。

在本申请实施例中,具体可将待处理图像均匀划分为m*n个子图像,可使每一个子图像的大小相同,进而使待处理图像中像素的固定偏差数量的压缩效果更好,同时也便于对压缩后的固定偏差进行快速还原。

在第二方面的又一种可选方案中,在处理模块之后还包括:

数据存储模块,用于保存待处理图像在初始图像上的位置信息。

在本申请实施例中,通过保存待处理图像中像素的固定偏差的均值以及对应在整体初始图像上的位置信息,可对整体初始图像中进行压缩的固定偏差进行快速还原,提高数据还原的效率,其次也可便于查找整体初始图像中进行压缩的固定偏差所对应的像素点。

在第二方面的又一种可选方案中,待处理图像为初始图像;

获取模块具体为:用于对初始图像进行标定处理,得到所述初始图像中各个像素的固定偏差。

在本申请实施例中,当待处理图像为初始图像时,可先对待处理图像进行标定求得该待处理图像中各像素的固定偏差,便于后续计算方差以及均值,进而实现待处理图像中像素的固定偏差数量的压缩。

第三方面,本申请实施例提供了一种电子设备,包括处理器、存储器以及通信接口;处理器与存储器、通信接口相连;存储器,用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行本申请实施例第一方面或第一方面的任意一种实现方式提供的数据压缩方法。

第四方面,本申请实施例提供了一种计算机存储介质,计算机存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时,可实现本申请实施例第一方面或第一方面的任意一种实现方式提供的数据压缩方法。

第五方面,本申请实施例提供了一种计算机程序产品,当该计算机程序产品在数据压缩装置上运行时,使得该数据压缩装置执行本申请实施例第一方面或第一方面的任意一种实现方式提供的数据压缩方法。

可以理解地,上述提供的第三方面提供的电子设备、第四方面提供的计算机存储介质,以及第五方面提供的计算机程序产品均用于执行第一方面所提供的数据压缩方法,因此,其所能达到的有益效果可参考第一方面所提供的数据压缩方法中的有益效果,此处不再赘述。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种电子设备结构示意图;

图2为本申请实施例提供的一种数据压缩方法的流程示意图;

图3为本申请实施例提供的一种数据压缩方法中划分方式的示意图;

图4为本申请实施例提供的一种数据压缩方法中一种保存待处理图像的位置信息的示意图;

图5为本申请实施例提供的一种数据压缩方法中又一种保存待处理图像的位置信息的示意图;

图6为本申请实施例提供的又一种数据压缩方法的流程示意图;

图7为本申请实施例提供的一种数据压缩方法的程序流程框图;

图8为本申请实施例提供的一种数据压缩装置的结构示意图;

图9为本申请实施例提供的又一种电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。

本申请实施例中用于数据压缩的装置可以是带有深度摄像头的电子设备,例如但不限于智能手机、平板、相机、高速检测摄像头等。

请参阅图1,图1是本申请实施例提供的一种电子设备的结构示意图。

如图1所示,该电子设备可包括有一个或多个深度摄像头(即tof摄像头)、一个或多个处理器和一个或多个存储器,其中处理器可为手机处理器(mobilecentralprocessingunit,mcpu)或图形处理器(graphicsprocessingunit,gpu)。具体地,深度摄像头用于拍摄图像,并将获取的图像发送至处理器。处理器用于接收从深度摄像头发送的图像,计算该图像中各个像素的固定偏差的方差,并与存储在处理器中的预设阈值进行比较。当该图像中各个像素的固定偏差的方差低于预设阈值时,继续计算该图像中各个像素的固定偏差的均值,并根据该图像中各个像素的固定偏差的均值对该图像中各个像素的固定偏差进行压缩处理。进一步的处理器将压缩后的图像中各个像素的固定偏差发送至存储器中进行保存。

示例性的,通过深度摄像头获取的图像包含a*b个像素。每个像素分别对应一个固定偏差,即该图像对应a*b个固定偏差。通过处理器进行固定偏差数量的压缩得到压缩后的图像的固定偏差的数量为a*b。需要说明的是a大于a,b大于b,并由处理器将该图像的a*b个固定偏差发送至存储器中进行存储。

本申请实施例提供的数据压缩结构可应用于一个或多个终端。可能的,本申请实施例也可为运用tof技术的一个或多个终端。具体地,tof技术可包括dtof与itof技术。其中,dtof技术会在单帧测量时间内发射和接收n次光信号,然后对记录的n次飞行时间做直方图统计,其中出现频率最高的飞行时间t用来计算待测物体的深度。itof技术是向场景中发射调制后的红外光信号,再由传感器接收场景中待测物体反射回来的光信号,根据曝光(积分)时间内的累计电荷计算发射信号和接收信号之间的相位差,从而获取目标物体的深度。

一个或多个终端可为硬件也可为软件。具体地,当一个或多个终端为硬件时,可能地,在一个或多个终端的后置摄像头中可安装有tof相机,通过红外线脉冲从投射到反射后返回这一过程的时间来获得深度信息,主要可应用于物体扫描、室内导航、手势识别等。其中,一个或多个终端可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式电脑等。

可能地,在一个或多个终端内可设置有tof模组以及配套的tof传感器,主要可应用tof技术实现汽车领域的高级驾驶辅助系统、司机监测系统、无人机障碍检测和路径规划、工业机器人路径规划和体积测量等。其中,一个或多个终端可以是具有显示屏的各种电子设备,包括但不限于摄像机、高速检测摄像头等。

具体地,当一个或多个终端为软件时,可以是安装于上述所列举的电子设备中,其可以实现呈多个软件或软件模块(例如:用来提供分布式服务),也可以实现成单个软件或软件模块,在此不作具体限定。

还需要说明的是,该数据压缩结构还可应用在一个或多个终端和服务器中。具体地,可通过设置在一个或多个终端的深度摄像头获取图像,并将该图像发送至服务器中,由设置在服务器内的处理器完成对图像中各个像素的固定偏差的压缩以及发送至存储器进行数据的存储。其中,存储器可设置在服务器中,也可设置在一个或多个终端中。

下面结合附图2,对本申请实施例提供的数据压缩方法进行详细的介绍。

请参阅图2,图2示出了本申请实施例提供的一种数据压缩方法的流程示意图。

如图2所示,该数据压缩方法包括:

步骤201、获取待处理图像及处理图像中各个像素的固定偏差。

具体地,待处理图像为初始图像或者为初始图像的一部分。

步骤202、计算待处理图像中各个像素的固定偏差的方差。

具体地,当待处理图像为初始图像时,可通过终端的深度摄像头(即tof摄像头)拍摄初始图像。可能的,可通过用户点开设置在终端内的拍照软件(例如但不限于系统自带相机、美图秀秀等)进行拍照或录像,并对获取的图像进行相机标定处理,得到图像中各个像素的固定偏差。其中,相机标定方法是为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,计算相机成像的几何模型参数,图像像素的固定偏差是作为该几何模型参数的一种。常见的相机标定方法包括传统相机标定法、主动视觉相机标定方法和相机自标定法。

当得到初始图像中每一个像素的固定偏差后,可通过将该待处理图像中各个像素的固定偏差数值带入预设的方差计算公式中求得该初始图像中各个像素的固定偏差的方差。其中,方差是作为表征数据的离散程度,方差越大说明数据离散程度较大,数据整体差别较大,方差越小说明数据离散度较小,数据整体差别较小。可能的,当初始图像中各个像素的固定偏差的方差较小时,说明初始图像中每一个像素的固定偏差数值整体差异不大,便于通过整合均值来代表图像中每一个像素的固定偏差数值,以实现对固定偏差数量的压缩。可能的,当初始图像中像素的固定偏差较大时,说明初始图像中各个像素的固定偏差数值差异较大,可对初始图像进行处理划分为多个区域,使每个区域各个像素的固定偏差的方差小于该初始图像各个像素的固定偏差的方差,便于后续进行固定偏差数量的压缩处理。

需要说明的是,本申请实施例提到的初始图像为最初状态的初始图像(未经任何裁切或平滑处理),该初始图像可由一帧图片组成,且该初始图像的分辨率需超过预设值。具体地,例如可预先设置图片分辨率的最低值为1024*768,并将该最低值保存在一个或多个终端中,当获取到待处理图像时,优先对该待处理图像的分辨率进行查看(具体的可通过调用存储在终端系统设置的分辨率),若大于预设的分辨率最低值,则计算该待处理图像中各个像素的固定偏差的方差值。其中,分辨率最低值1024*768可理解为图像中每一条水平线包含有1024个像素点,共有768条水平线。

具体地,当待处理图像为初始图像的一部分时,表明当前待处理图像的像素的固定偏差的方差是小于初始图像的像素的固定偏差的方差,可进一步通过判断方差的大小确定当前待处理图像的像素的固定偏差是否可进行压缩处理。进一步的,可通过将该待处理图像中各个像素的固定偏差数值带入预设的方差计算公式中求得该初始图像中各个像素的固定偏差的方差。

需要说明的是,初始图像的一部分为由初始图像经过划分处理得到的,该初始图像的一部分也可由一帧图片组成,且该初始图像的一部分的分辨率超过预设值。具体地,例如可预先设置图片分辨率的最低值为1024*768,并将该最低值保存在一个或多个终端中,当获取到待处理图像时,优先对该待处理图像的分辨率进行判断(具体的可通过调用存储在终端系统设置的分辨率),若大于预设的分辨率最低值,则计算该待处理图像中各个像素的固定偏差的方差值。其中,分辨率最低值1024*768可理解为图像中每一条水平线包含有1024个像素点,共有768条水平线。

步骤203、判断各个像素的固定偏差的方差是否低于预设阈值。

步骤204、若待处理图像中各个像素的固定偏差的方差低于预设阈值,计算待处理图像中各个像素的固定偏差的均值。

具体地,将计算的当前待处理图像中各个像素的固定偏差的方差与预设阈值进行比较,当固定偏差的方差低于或等于预设阈值时,说明当前待处理图像中各个像素的固定偏差离散度较小,可计算当前待处理图像中各个像素的固定偏差的平均值,通过该平均值对该待处理图像中各个像素的固定偏差的数值进行优化处理,以便于对该待处理图像中各个像素的固定偏差的压缩处理,具体压缩方式可参见步骤205。

需要说明的是,在本申请实施例中可通过将该待处理图像中各个像素的固定偏差数值带入预设的平均值计算公式中求得待处理图像中各个像素的固定偏差的平均值。可能的,还可通过调取上述提到的预设的方差计算公式中提前计算出的平均值作为该待处理图像中像素的固定偏差的平均值。

具体地,将计算的当前待处理图像中各个像素的固定偏差的方差与预设阈值进行比较,当固定偏差的方差高于预设阈值时,说明当前待处理图像中各个像素的固定偏差离散度较大,需要对当前待处理图像进行优化处理。

可能的,可将当前待处理图像划分为m*n个待处理子图像,保证待处理图像完全被划分,且使每一个待处理子图像中像素的固定偏差的方差小于当前待处理图像的固定偏差的方差值,并将每一个待处理子图像作为新的待处理图像依次返回至步骤201,进行各个像素的固定偏差的方差的计算以及与预设阈值的比较。需要说明的是,若存在待处理子图像中各个像素的固定偏差的方差大于当前待处理图像中各个像素的固定偏差的方差值,可将该待处理子图像继续划分为m*n个子图像,并将新划分的子图像重新作为新的待处理图像。

具体地,m和n均为正整数。需要说明的是,m和n可均为大于等于2的正整数。

具体地,可选取m、n均为2。如图3所示,将当前待处理图像划分为2*2个待处理子图像,可出现三类划分方式,非均匀规则划分(如3a所示)、均匀规则划分(如3b所示)和非规则划分(如3c所示)。每一类划分方式均可实现对当前待处理图像的完整划分,且每一类划分方式后的子图像均可计算得出固定偏差的方差值。优选地,我们会发现图3b所示的均匀规则划分将待处理图像均匀划分为四个相同面积的待处理子图像,便于加快后续对该待处理子图像中各个像素的固定偏差的计算速度,且均匀划分方式可提高待处理图像的压缩效果以及后续的还原效果。

还需要说明的是,在本申请实施例中预设阈值可预先设置在终端或服务器中,当阈值过大时,待处理图像中各个像素的固定偏差会被压缩的比较小,但易丢失待处理图像中的一些细节。当阈值过小时,易造成无法对待处理图像中各个像素的固定偏差进行压缩,因此可在数据库中选取压缩效果较好的图像并计算该图像中各个像素的固定偏差所对应的方差,将该方差作为基础阈值与样本待处理图像中各个像素的固定偏差的方差进行比较,通过比较压缩后的图像与样本压缩图像的压缩效果对基础阈值进行调整,最终得到一个精度最高的阈值。

步骤205、根据待处理图像中各个像素的固定偏差的均值对待处理图像中各个像素的固定偏差进行压缩处理。

具体地,可将当前待处理图像中各个像素的固定偏差值替换为一个当前待处理图像中各个像素的固定偏差的平均值,删除当前待处理图像中各个像素的固定偏差并保存当前待处理图像中各个像素的固定偏差的平均值,进而实现对待处理图像中各个像素的固定偏差的压缩。需要说明的是,图像压缩本身就会对初始图像造成损伤,本申请实施例压缩图像的方法可通过选取精确度高的预设阈值来使图像的压缩效果更好,同时也便于对固定偏差的快速还原。具体的,还原的方式可为将待处理图像中各个像素的固定偏差的数值均替换为该待处理图像中各个像素的固定偏差的平均值,尽可能的减少数据还原所带来的损失。

具体地,为更好的准确识别该保存的待处理图像中各个像素的固定偏差的平均值,进一步的还可保存该平均值在整体初始图像中的位置信息。

可能的,可参阅图4,图4示出了一种用户保存待处理图像的位置信息的示意图。以初始图像分辨率为b*c为例,可参照初始图像四个顶点中的左下顶点作为原点建立直角坐标系,该初始图像中与该左下顶点相邻的长和宽分别与直角坐标系中的x轴和y轴重合,其中右上顶点可表示为(b,c)。

当该初始图像中各个像素的固定偏差的方差低于预设阈值时,计算该初始图像中各个像素的固定偏差的平均值,并可选取该初始图像的中心点(0.5b,0.5c)作为要保存的位置信息。

当该初始图像中各个像素的固定偏差的方差高于预设阈值时,优选的,可将该初始图像按照预设规则均匀划分为m*n个待处理子图像,其中,m和n均可取为2,预设规则可为选取该初始图像中长和宽的中点作为划分点,分别连接相对的长和宽上的中点以使该初始图像均匀划分为4个相等的子图像,可分别用a1、a2、a3和a4表示(其中,初始图像可用a表示)。

分别将子图像a1、a2、a3和a4作为待处理图像,继续计算每一个子图像中各个像素的固定偏差的方差。示例性的,以子图像a4中各个像素的固定偏差的方差高于预设阈值、以子图像a1、a2、a3中各个像素的固定偏差的方差低于预设阈值为例,先计算并保存子图像a1、a2、a3中各个像素的固定偏差的平均值,且分别以子图像a1、a2、a3的中心点坐标作为要保存的位置信息,例如子图像a1要保存的位置信息为(0.25b,0.25c),子图像a2要保存的位置信息为(0.75b,0.25c),子图像a3要保存的位置信息为(0.25b,0.75c)。接着继续对子图像a4按照之前设定的预设规则均匀划分为4个面积相同的子图像(可用a41、a42、a43、a44表示),并分别把a41、a42、a43、a44作为新的待处理图像计算各个图像中各个像素的固定偏差的方差。若a41、a42、a43、a44各个图像中各个像素的固定偏差的方差均低于预设阈值,可分别计算并保存各个图像中各个像素的固定偏差的平均值,以及保存各个图像的中心点坐标作为位置信息,例如图像a41要保存的位置信息为(0.625b,0.625c),图像a42要保存的位置信息为(0.875b,0.625c),图像a43要保存的位置信息为(0.625b,0.875c)以及图像a44要保存的位置信息为(0.875b,0.875c)。若图像a41、a42、a43、a44中存在像素的固定偏差的方差高于预设阈值,可继续按照上述划分方式对该图像进行处理,此处不再赘述。

可能的,将该初始图像按照预设规则均匀划分为m*n个待处理子图像,其中,在m和n均取为2的情况下,还可参照图5所示的本申请实施例提供的又一种保存位置信息的示意图。如图5所示,可采用二分数法来表示待处理图像的位置信息。以待处理图像为初始图像为例,具体地,当初始图像中各个像素的固定偏差的方差高于预设阈值时,将该初始图像均匀划分为4个面积相同的子图像,位置信息可分别表示为(00)、(01)、(10)、(11),并依次计算该4个子图像中各个像素的固定偏差的方差。若以(10)所代表的子图像中各个像素的固定偏差的方差高于预设阈值,以(00)、(01)、(11)所代表的子图像中各个像素的固定偏差的方差低于预设阈值为例,先保存(00)、(01)、(11)所代表的子图像的位置信息,再对(10)所代表的子图像继续均匀划分为4个面积相同的子图像,其对应的位置信息可分别表示为(10,00)、(10,01)、(10,10)以及(10,11)。接着将新的子图像分别作为新的待处理图像计算图像中各个像素的固定偏差的方差。若新的待处理图像中存在各个像素的固定偏差的方差高于预设阈值,可继续按照上述划分方式对该图像进行处理,且可参照上述保存信息方式所提供的位置信息具体内容,此处不再赘述。

本申请实施例本申请实施例提供了一种数据压缩方法,可对获取的图像计算固定偏差的方差并与预设阈值比较,当方差小于阈值时计算图像中固定偏差的均值以对图像中的固定偏差进行压缩处理,可使要保存的图像中的固定偏差数量大大减少,不仅减缓了存储空间和运行的压力,还减少了对于存储空间所投入的成本。

请参阅图6,图6示出了本申请实施例提供的又一种数据压缩方法的流程示意图。

如图6所示,该数据压缩方法包括:

步骤601、获取待处理图像及所述处理图像中各个像素的固定偏差。

具体地,待处理图像为初始图像或者为初始图像的一部分。

步骤602、计算待处理图像中各个像素的固定偏差的方差。

具体地,步骤601、602分别与步骤201、202一致,此处不再赘述。

步骤603、判断所述各个像素的固定偏差的方差是否低于预设阈值。

步骤604、若待处理图像中各个像素的固定偏差的方差高于预设阈值,将待处理图像划分为若干待处理子图像,将待处理子图像作为新的待处理图像,并将新的待处理图像返回至步骤601中。

具体地,当固定偏差的方差高于预设阈值时,说明当前待处理图像中各个像素的固定偏差离散度较大,需要进行划分区域以使各个区域图像中各个像素的固定偏差离散度较小,进而便于压缩处理。

具体地,将待处理图像划分为若干待处理子图像的方式可为非均匀规则划分、均匀规则划分和非规则划分。同样的可参阅图3,优选地,我们会发现将待处理图像均匀划分为若干个相同面积的待处理子图像,便于加快后续对该待处理子图像中各个像素的固定偏差的计算速度,且均匀划分方式可提高待处理图像的压缩效果以及后续的还原效果。

当待处理图像被均匀划分为若干个相同面积的待处理子图像时,可将每一个待处理子图像依次作为新的待处理图像,并进行计算该新的待处理图像中各个像素的固定偏差的方差。

步骤605、若待处理图像中各个像素的固定偏差的方差低于预设阈值,计算待处理图像中各个像素的固定偏差的均值。

具体地,步骤605与步骤204一致,此处不再赘述。

步骤606、将待处理图像中各个像素的固定偏差替换为对应待处理图像中各个像素的固定偏差的均值。

具体地,对待处理图像中各个像素的固定偏差的压缩方式可为将待处理图像中各个像素的固定偏差替换为一个该待处理图像中各个像素的固定偏差的平均值,删除当前待处理图像中各个像素的固定偏差并保存当前待处理图像中各个像素的固定偏差的平均值,进而实现对待处理图像中各个像素的固定偏差的压缩。需要说明的是,图像压缩本身就会对初始图像造成损伤,本申请实施例压缩图像的方法可通过选取精确度高的预设阈值来使图像的压缩效果更好,同时也便于对固定偏差的快速还原。具体的,还原的方式可为将待处理图像中各个像素的固定偏差的数值均替换为该待处理图像中各个像素的固定偏差的平均值,尽可能的减少数据还原所带来的损失。

请参阅图7,图7示出了本申请实施例提供的一种数据压缩方法的程序流程框图。

如图7所示,以m、n均选取为2为例,该数据压缩方法为:

步骤701、获取初始图像,对初始图像标定处理,并将处理后的初始图像作为待处理图像。

步骤702、计算待处理图像中像素的固定偏差的方差。

步骤703、检测待处理图像中像素的固定偏差的方差是否低于预设阈值。

步骤704、当待处理图像中像素的固定偏差的方差低于预设阈值时,计算待处理图像中像素的固定偏差的平均值。

步骤705、当待处理图像中各个像素的固定偏差的方差高于预设阈值时,将当前待处理图像均匀划分为4个面积相同的待处理子图像,并分别将4个待处理子图像作为新的待处理图像重新输入至获取待处理图像的步骤701中。

步骤706、将当前待处理图像中各个像素的固定偏差替换为一个待处理图像中各个像素的固定偏差的平均值,保存该平均值以及对应的位置信息。

具体地,可通过深度摄像头获取需要压缩的初始图像,并对初始图像进行标定处理得到初始图像中各个像素的固定偏差的数值。接着将处理后的初始图像作为待处理图像,计算各个像素的固定偏差的方差,并与预设阈值进行比较。当检测到方差低于预设阈值时,说明图像整体离散度较小,可计算各个像素的固定偏差的平均值并将图像中各个像素的固定偏差替换为一个平均值以实现对初始图像的数据压缩,最后保存该平均值以及对应的位置信息。

当检测到方差低于预设阈值时,说明初始图像中各个像素的固定偏差离散度较大,为呈现更好的压缩效果,可对初始图像进行均匀划分,划分为4个相同面积的待处理子图像,并依次将各个待处理子图像作为新的待处理图像,进行计算方差及与预设阈值的比较,直至最终的待处理图像中各个像素的固定偏差的方差低于预设阈值,最后保存所有满足各个像素的固定偏差的方差低于预设阈值的待处理图像的各个像素的固定偏差的平均值以及对应的位置信息。

需要说明的是,本申请实施例中不局限于将待处理图像均匀划分为2*2个待处理子图像,可为m*n,其中m和n为至少一个大于等于2的正整数。

请参阅图8,图8示出了本申请实施例提供的一种数据压缩装置的结构示意图。

如图8所示,该数据压缩装置800包括获取模块801、第一计算模块802、判断模块803、第二计算模块804和处理模块805,其中各个模块的详细描述如下:

获取模块801,用于获取待处理图像及所述处理图像中各个像素的固定偏差;其中,所述待处理图像为初始图像或者为所述初始图像的一部分;

第一计算模块802,用于计算所述待处理图像中各个像素的固定偏差的方差;

判断模块803,用于判断所述各个像素的固定偏差的方差是否低于预设阈值;

第二计算模块804,用于若所述待处理图像中所述各个像素的固定偏差的方差低于预设阈值,计算所述待处理图像中各个像素的固定偏差的均值;

处理模块805,用于根据所述待处理图像中所述各个像素的固定偏差的均值对所述待处理图像中所述各个像素的固定偏差进行压缩处理。

在本申请实施例中,可对获取的图像计算固定偏差的方差并与预设阈值比较,当方差小于阈值时计算图像中各个像素的固定偏差的均值以对图像中的固定偏差进行压缩处理,可使要保存的图像中的固定偏差数量大大减少,不仅减缓了存储空间和运行的压力,还减少了对于存储空间所投入的成本。

作为一种可选的实施方式,处理模块具体包括:

将待处理图像中各个像素的固定偏差替换为对应待处理图像中各个像素的固定偏差的均值。

作为一种可选的实施方式,在判断模块之后还包括:

划分模块,用于若待处理图像中各个像素的固定偏差的方差高于预设阈值,将待处理图像划分为若干待处理子图像,将待处理子图像作为新的待处理图像,并将新的待处理图像返回至获取待处理图像及处理图像中各个像素的固定偏差的步骤中。

作为一种可选的实施方式,划分模块具体还包括:

若待处理图像中各个像素的固定偏差的方差高于预设阈值,将待处理图像划分为m*n个待处理子图像,将待处理子图像作为新的待处理图像,并将新的待处理图像返回至获取待处理图像及处理图像中各个像素的固定偏差的步骤中。

作为一种可选的实施方式,划分模块具体还包括:

若待处理图像中各个像素的固定偏差的方差高于预设阈值,将待处理图像按照预设规则均匀划分为m*n个待处理子图像,将待处理子图像作为新的待处理图像,并将新的待处理图像返回至获取待处理图像及处理图像中各个像素的固定偏差的步骤中。

作为一种可选的实施方式,在处理模块之后还包括:

数据存储模块,用于保存待处理图像在初始图像上的位置信息。

作为一种可选的实施方式,待处理图像为所述初始图像;

获取模块具体为:用于对初始图像进行标定处理,得到初始图像中各个像素的固定偏差。

请参阅图9,图9是本申请实施例提供的一种电子设备的结构示意图。

该电子设备900可以包括:至少一个处理器901,例如cpu,至少一个网络接口905,用户接口904,存储器902,至少一个通信总线903、显示屏906和至少一个深度摄像头907(即tof摄像头)。其中,通信总线903用于实现这些组件之间的连接通信。用户接口904可以包括但不限于触摸屏、键盘、鼠标、摇杆等等。网络接口905可选的可以包括标准的有线接口、无线接口(如wifi接口、蓝牙接口),通过网络接口905可以与服务器建立通信连接。存储器902可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。深度摄像头907用于获取初始图像,可设置在该电子设备的后置摄像头处。如图9所示,作为一种计算机存储介质的存储器902中可以包括操作系统、网络通信模块、用户接口模块以及程序指令。

需要说明的是,网络接口905可以连接获取器、发射器或其他通信模块,其他通信模块可以包括但不限于wifi模块、蓝牙模块等,可以理解,本申请实施例中电子设备900也可以包括获取器、发射器和其他通信模块等。

处理器901可以用于调用存储器902中存储的程序指令,可以执行如图2或图6所示实施例提供的方法。

本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一个方法中的一个或多个步骤。上述电子设备的各组成模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在所述计算机可读取存储介质中。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如,固态硬盘(solidstatedisk,ssd))等。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可存储程序代码的介质。在不冲突的情况下,本实施例和实施方案中的技术特征可以任意组合。

以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1