图像数据集保存格式探究-创新互联

前言简述:

在机器视觉与深度学习的项目中,通常有许多的图像需要保存。
出于对图像内存占用,和图像数据信息完整性的综合评估,要选择一种合适的格式来保存图像。

创新互联主营陈巴尔虎网站建设的网络公司,主营网站建设方案,成都APP应用开发,陈巴尔虎h5小程序制作搭建,陈巴尔虎网站营销推广欢迎陈巴尔虎等地区企业咨询
测试方法
***********************************************
* 读取一张BMP图像,分别另存为PNG和JPG格式
read_image (Image, 'A.bmp')
write_image (Image, 'png', 0,'B.png')
write_image (Image, 'jpg', 0,'C.jpg')
***********************************************

在这里插入图片描述
从相同图像不通格式占用内存大小情况分析
以某图为例
bmp 997kb
png 428kb
jpg 121kb
所以占用内存:bmp>png>jpg

***********************************************
* 根据先验知识
* 我们已经了解到png格式是无损压缩,jpg格式是有损压缩
* 所以理论上bmp格式的数据内容和png是一致的,但是jpg损失了一些信息,与bmp内容不一致
* 因此做出以下实验测试和验证
***********************************************
read_image (ImageBMP, 'A.bmp')
read_image (ImagePNG, 'B.png')
read_image (ImageJPG, 'C.jpg')
***********************************************
* 为了验证bmp转成各种格式图像的内容是否发生了变化做出以下实验:
* |bmp-png|*100
* |bmp-jpg|*100
* |png-jpg|*100
* 乘以系数100是为了放大差值,方便观察差异性
* 因为是求取所有对应坐标数据内容的绝对值,所以|A-B|=|B-A|,不再赘述
abs_diff_image (ImageBMP, ImagePNG, BmpSubPngAbsDiff, 100)
write_image (BmpSubPngAbsDiff, 'png', 0, 'BmpSubPngAbsDiff.png')
abs_diff_image (ImageBMP, ImageJPG, BmpSubJPGAbsDiff, 100)
write_image (BmpSubJPGAbsDiff, 'png', 0, 'BmpSubJPGAbsDiff.png')
abs_diff_image (ImagePNG, ImageJPG, PNGSubJpgAbsDiff, 100)
write_image (PNGSubJpgAbsDiff, 'png', 0, 'PNGSubJpgAbsDiff.png')

结果分析:

原始图像
BmpSubPngAbsDiff
BmpSubPngAbsDiff
BmpSubJPGAbsDiff
BmpSubJPGAbsDiff
PNGSubJpgAbsDiff
PNGSubJpgAbsDiff

从结果可知:

  • 1、ImageBMP与ImagePNG相减的绝对值图像 所有像素点都为0,意味着两张图像的数据内容完全一致;
  • 2、ImageBMP与ImageJPG相减的绝对值图像 大片区域都不为0,意味着两张图像的数据内容存在差异;
  • 3、ImageJPG与ImagePNG相减的绝对值图像 大片区域都不为0,意味着两张图像的数据内容存在差异;
    从第一步和第二步的实验,已经得到加载后的图像数据内容对比:bmp=png,并且bmp!=jpg可以推导出png!=jpg,其实第三步只是为了验证png!=jpg,事实也确实如此。

结论:

综合以上的实验结果,从内存占用和数据损失两个方面综合分析和取舍
PNG内存占用比BMP小,JPG占用内存比PNG更小,
但是PNG内容没有损失,JPG损失了部分图像的内容信息。
所以,我们需要选择PNG格式来保存我们的图像数据集!

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


名称栏目:图像数据集保存格式探究-创新互联
文章出自:http://myzitong.com/article/cdopgp.html