本发明属于深度学习训练数据集图像压缩,尤其涉及一种面向深度学习训练的图像压缩方法。
背景技术:
1、本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
2、随着深度学习技术的快速发展,越来越多的机构和企业开始关注海量数据集的存储。在深度学习中,数据集的大小往往与模型的性能和准确性密切相关。为了训练一个高质量的深度学习模型,研究人员和工程师们需要访问大规模的数据集,其中包含了数百万、数十亿甚至更多的样本。然而,海量的数据存储也意味着需要投入巨大的硬件设备和资源,为了在有限的存储空间下高效地存储海量数据,图像压缩算法成为了一种重要的解决方案。
3、图像数据包含了大量的冗余和相关信息,例如相邻像素之间可能存在着高度的相似性、明暗度的变化趋势等,这些特点使得图像数据集在占用存储空间方面存在着巨大的浪费。因此,为了有效地减少图像数据占用的存储空间,我们需要使用图像压缩算法来对图像进行处理。根据是否能够保持原始数据的完整性,图像压缩算法可以分为有损压缩和无损压缩两种类型。相比于无损压缩,有损压缩算法能够更加显著地减少图像数据所占用的存储空间,因为它们不仅仅是简单地压缩重复或相似的像素值,而是通过舍弃一些不重要的信息来尽可能地压缩数据。但是,有损压缩算法的代价是会引起图像信息的丢失和质量的损失,所以在选择压缩算法时,需要根据具体情况来平衡压缩效率和图像质量之间的关系。
4、虽然某些算法具有高压缩率,但如果压缩后的数据集对模型精度降低太多,那么该算法就不符合需求。
5、目前,存在许多图像压缩算法可供选择,其中一些算法具有高压缩率,但会导致图像失真。例如,jpeg是一种常见的有损压缩算法,可以在保持较高质量的同时实现较高的压缩率,但它可能会导致图像出现锯齿状的边缘或颜色偏移等问题。另一方面,webp是一种由谷歌推出的图像压缩格式,具有较高的压缩率和较好的图像质量,通常能够更好地保护图像的细节和色彩。此外,png是一种无损压缩算法,可以保持图像的完整性,但在某些情况下,它可能会占据较多的存储空间。guetzli算法,它是一种用于jpeg图像压缩的开源算法,由谷歌开发。它的主要目标是在保持高质量图像的同时,减小jpeg图像文件的大小。它通过分析图像中的颜色和亮度信息,并对其进行优化,以减少高频细节的损失,并尽可能保留更多的图像细节。该算法还使用了一种精确的感知模型,考虑了人眼对不同颜色和亮度变化的敏感度,以提供更好的视觉感受。与其他图像压缩算法相比,guetzli算法在保持较高质量的同时,可以实现更高的压缩率,因此能够显著减小图像文件的大小。这对于存储和传输大规模图像数据集非常有益,可以节省存储空间和加快数据传输速度。然而,由于guetzli算法的计算复杂度较高,在压缩文件和分辨率大的图像时需要更长的编码时间。此外,对于深度学习训练中模型精度的影响尚未可知。
技术实现思路
1、为克服上述现有技术的不足,本发明提供了一种面向深度学习训练的图像压缩方法。
2、为实现上述目的,本发明的一个或多个实施例提供了如下技术方案:
3、本发明第一方面提供了一种面向深度学习训练的图像压缩方法,包括:
4、采用guetzli算法对深度学习训练的图像数据集进行压缩处理;
5、针对尺寸预设一个第一阈值,针对分辨率预设一个第二阈值;
6、针对于尺寸不大于第一阈值、分辨率不大于第二阈值的图像数据集,一边进行压缩一边进行训练,将压缩完的图像数据集应用到训练中去。
7、针对于尺寸大于第一阈值、分辨率大于第二阈值的图像数据集,无时间要求的图像数据集采用离线压缩;
8、有时间要求的图像数据集采用mlp时间预测模型预测压缩时间。
9、进一步地,所述第一阈值为1kb,第二阈值为32*32。
10、进一步地,所述guetzli算法采用的压缩质量系数为70及以下,优选为70。
11、进一步地,所述一边进行压缩一边进行训练,具体为:第一轮训练时随机生成每一个batch的文件列表,通过列表进行压缩,得到压缩完成的图像数据集;第二轮训练加载数据时使用压缩完成的图像数据集。
12、进一步地,所述有时间要求的图像数据集采用mlp时间预测模型预测压缩时间,具体为:
13、s1、数据准备;
14、s2、训练mlp模型;
15、s3、图像数据集加载输入模型测试;
16、s4、获得预测时间,根据所限时间选择压缩的图片。
17、进一步地,所述s1具体为:获取图片的大小、分辨率、复杂度、特征和压缩时间。
18、进一步地,所述mlp模型,包括输入层、隐藏层和输出层。
19、进一步地,所述mlp模型的每个神经元都有一个权重和偏置,在训练过程中,这些参数会被优化为最小化模型的预测误差。
20、进一步地,所述mlp模型训练使用反向传播算法进行,通过计算预测输出和真实输出之间的差异,并将该差异沿着网络反向传播,更新神经元的权重和偏置。
21、进一步地,所述图像数据集加载输入模型测试,具体为:将获取图片的大小、分辨率、复杂度和特征四个因素拼接起来,作为输入数据;通过将输入数据传递到mlp中,并经过前向传播过程,获得与输入对应的预测输出。
22、以上一个或多个技术方案存在以下有益效果:
23、本发明提供了一种面向深度学习训练的图像压缩技术及策略,对于jpg格式的数据集,利用guetzli压缩算法将深度学习训练数据集压缩的方法,实现了在不造成显著的模型度量损失的情况下减少数据集的空间占用和加载时间。该方法可以帮助优化深度学习训练过程中的资源利用和效率,证明了该方法的有效性。针对于小尺寸和低分辨率的图像数据集,可以使用边压缩边训练的策略,显著提高整体的效率和速度。对于给定的时间要求下,压缩图片大小分辨率不一的数据集,设计压缩时间预测模型,可以帮助我们做决策,提高效率。
24、本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
1.一种面向深度学习训练的图像压缩方法,其特征在于,包括:
2.如权利要求1所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述第一阈值为1kb,第二阈值为32*32。
3.如权利要求1所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述guetzli算法采用的压缩质量系数为70及以下,优选为70。
4.如权利要求1所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述一边进行压缩一边进行训练,具体为:第一轮训练时随机生成每一个batch的文件列表,通过列表进行压缩,得到压缩完成的图像数据集;第二轮训练加载数据时使用压缩完成的图像数据集。
5.如权利要求1所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述有时间要求采用mlp时间预测模型预测压缩时间,具体为:
6.如权利要求5所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述s1具体为:获取图片的大小、分辨率、复杂度、特征和压缩时间。
7.如权利要求5所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述mlp模型,包括输入层、隐藏层和输出层。
8.如权利要求5所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述mlp模型的每个神经元都有一个权重和偏置,在训练过程中,这些参数会被优化为最小化模型的预测误差。
9.如权利要求5所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述mlp模型训练使用反向传播算法进行,通过计算预测输出和真实输出之间的差异,并将该差异沿着网络反向传播,更新神经元的权重和偏置。
10.如权利要求5所述的一种面向深度学习训练的图像压缩方法,其特征在于,所述数据集加载输入模型测试,具体为:将获取图片的大小、分辨率、复杂度和特征四个因素拼接起来,作为输入数据;通过将输入数据传递到mlp中,并经过前向传播过程,获得与输入对应的预测输出。