U盘PE| w764位旗舰版下载 | U盘装win7系统 | U盘启动 |win7pe | win10下载 |加入收藏土豆PE官网U盘PE,U盘装win7系统,win7pe,U盘启动,U盘装系统,w764位旗舰版下载站!
当前位置:主页 > 帮助中心 > 土豆PE使用教程 >

OpenCV中保存不同深度图像

来源:http://www.tudoupe.com时间:2022-03-01

本文转载于 实操教程|OpenCV中保存不同深度图像的技巧

详解了OpenCV中保存不同深度图像的两种方法。

什么是图像深度

很多人开始学习OpenCV之后,接触前面几个API就包括imwrite函数,而且很快知道了如何去保存Mat对象为图像,常规代码如下:

其中dst是Mat对象。

这样保存的图像默认是每个通道8位的字节图像,常见的RGB图像是图像深度为24,这个可以通过windows下查看图像属性获得,截图如下:

如果每个通道占16位的话,RGB图像深度就会变成48,如果每个通道占32位的话,深度就会变成96,显然图像深度越大,图像文件也会越多,加载时候消耗的内存也会越多,所以OpenCV中默认读写图像都是每个通道8位(单字节)图像。

重温imwrite函数

假设我们想保存图像为16位或者32位浮点数图像时候,我们该怎么去做,在开始之前我们首先再次复习一下OpenCV中保存图像的API函数-imwrite

这些选项包括PNG/JPG/WEBP/TIFF压缩质量、格式选择等,可以分为如下四个大类

  • ImwriteEXRTypeFlags

  • ImwriteFlags

  • ImwritePAMFlags

  • ImwritePNGFlags,

之前写过一篇文章是关于在保持时候如何使用这些选项对图像进行适当的压缩处理,这里关于Params参数使用方式就不再赘述,主要是基于key-value方式添加到vector中去即可。

imwrite函数在关于保存为不同深度格式时候的图像类型支持说明如下:

  • 8位的图像(CV_8U),支持png/jpg/bmp/webp等各种常见图像格式

  • 16位的图像(CV_16U),支持png/jpeg2000/TIFF格式

  • 32位的图像(CV_32F),支持PFM/TIFF/OpenEXR/TIFF/HDR

在要保存为指定格式之前,可以通过convertTo或者cvtCOLOR进行图像类型或者通道转换之后,再调用imwrite进行保存。

各种不同深度保存

16位图像保存

转换之后,如果直接保存,代码如下:

转换之后,归一化之后再保存,代码如下:

两者效果对比如下:

32位图像保存

对上述各种不同深度的图像,必须通过下面的方式才可以正确读取

其中IMREAD_UNCHANGED表示不对原图像做任何改变。

Copyright © 2012-2014 Www.tudoupe.Com. 土豆启动 版权所有 意见建议:tdsky@tudoupe.com

土豆系统,土豆PE,win7系统下载,win7 64位旗舰版下载,u盘启动,u盘装系统,win10下载,win10正式版下载,win10 RTM正式版下载,win8下载,电脑蓝屏,IE11修复,网络受限,4K对齐,双系统,隐藏分区,系统安装不了,U盘装系统,笔记本装系统,台式机装系统,diskgenius运用,GHSOT装系统,U盘修复,U盘技巧,U盘速度,U盘不能格式化,U盘复制发生错误,U盘加密,U盘选购,开机黑屏,蓝屏,进不了系统,上不了网,打不开程序,点击无反应,系统设置,PE个性化,PE添加网络,PE维护系统

点击这里给我发消息