您当前的位置: 首页 >  opencv

惊鸿一博

暂无认证

  • 4浏览

    0关注

    535博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

图像处理_如何保存浮点型数值的图像? (C++ / OpenCV)

惊鸿一博 发布时间:2021-01-20 15:49:36 ,浏览量:4

目录

前言

方式1_放大k倍存成整型,读取时除以k倍

方式2_opencv imwrite时使用tiff后缀

方式3_opencv 使用convertTo转成CV_32F后保存成tiff后缀

其他参考

前言

保存浮点型的图像,比如保存深度图,深度值不是整数的情况. 但一般的图像格式(png jpg等)只能保存整数类型的数值,因为要显示出来的话,需要与整数类型的颜色表一一对应.这里给出几种方式.

(转换前,请确认转换时的输入图像是否是单通道(深度图一般都是单通道,若是拿一张三通道的图像来转换保存成tiff显然不可能成功,若非要这么做(虽然无意义也可尝试)先转成单通道后再转浮点型)

方式1_放大k倍存成整型,读取时除以k倍

将对应的数值整数化,即乘以一个值,转成整数,保存起来,在使用时再除以这个整数(比如256)

#include 
#include 
#include 

int main_png(int argc, char **argv)
{
	cv::Mat depthMapPng = cv::Mat::zeros(600, 800, CV_16UC1); // data range: 0~65526
    for (size_t i = 0; i             
关注
打赏
1663399408
查看更多评论
0.0380s