convertTo的用法
src.convertTo(dst, type, scale, shift)

img参数为图像数据来源,其类型为Mat。
注意也不是所有格式的Mat型数据都能被使用保存为图片,目前OpenCV主要只支持单通道和3通道的图像,并且此时要求其深度为8bit和16bit无符号(即CV_16U),所以其他一些数据类型是不支持的,比如说float型等。
如果Mat类型数据的深度和通道数不满足上面的要求,则需要使用convertTo()函数和cvtColor()函数来进行转换。
convertTo()函数负责转换数据类型不同的Mat,即可以将类似float型的Mat转换到imwrite()函数能够接受的类型。
而cvtColor()函数是负责转换不同通道的Mat,因为该函数的第4个参数就可以设置目的Mat数据的通道数(只是我们一般没有用到它,一般情况下这个函数是用来进行色彩空间转换的)。
另外也可以不用imwrite()函数来存图片数据,可以直接用通用的XML IO接口函数将数据存在XML或者YXML中。

参考网址:here

缩放并转换到另外一种数据类型:
dst:目的矩阵;
type:需要的输出矩阵类型,或者更明确的,是输出矩阵的深度,如果是负值(常用-1)则输出矩阵和输入矩阵类型相同;
scale:比例因子;
shift:将输入数组元素按比例缩放后添加的值;
dst(i)=src(i)xscale+(shift,shift,…)

如果scale=1,shift=0,则不进行比例缩放。
如果输入数组与输出数组的类型相同,则函数可以被用于缩放和平移矩阵或图像;

参考地址:here

例:cv::Mat src, src_f;
image.convertTo(src_f, CV_32F, 1.0/255, 0);

int main()
{Mat image = imread("1.jpg", 1);Mat src_f;image.convertTo(src_f, CV_32F, 1.0 / 255.0, 0);imshow("image", image);imshow("src_f", src_f);waitKey(0);return 0;
}

图像大小没有变化,但是类型又UINT8变为了FLOAT32位,感觉还有待认识,仅供参考,有知道的朋友请解惑,谢谢

openCV—converTo()用法相关推荐

  1. OpenCV calcOpticalFlowPyrLK用法的实例(附完整代码)

    OpenCV calcOpticalFlowPyrLK用法的实例 OpenCV calcOpticalFlowPyrLK用法的实例 OpenCV calcOpticalFlowPyrLK用法的实例 # ...

  2. opencv converTO()函数 转换图像的数据类型不改变通道数,注意与cvtColor()改变颜色空间/彩色空间/色彩空间函数区分

    注意与cvtColor()函数的区别,cvtColor改变颜色空间,通道数也会改变,converTo只改变数据类型,不改变通道数,原来是几个通道转换后还是几个通道 示例: src.convertTo( ...

  3. OpenCV LUT用法

    1.查找表 之前我在OpenCV中图像遍历与像素操作中有提到过查找表遍历图像的API函数cv::LUT,鉴于其大巧于内的美感,特意写一篇博客探讨一下.从数学上来看查找表是一个简单的一对一或多对一的函数 ...

  4. 【opencv学习】opencv基础用法

    一.opencv Mat初始化 初始化为三通道彩色图像 Mat src = Mat(r, c, CV_8UC3, Scalar(0)); 初始化为单通道灰度值图像 Mat src = Mat(src. ...

  5. OpenCV函数用法详解21~30,含代码示例,可直接运行

    opencv3 文章目录 opencv3 1.图像加权和 2.图像加密与解密 3.数字水印 4.色彩空间类型转换 5.dst = cv2.inRange(src, lowerb, upperb) 6. ...

  6. opencv摄像头用法

    python: 设置视频起始帧: cap.set(cv2.CAP_PROP_POS_FRAMES, keys_frame) # keys_frame为关键帧的序号 import cv2 import ...

  7. OpenCV之core 模块. 核心功能(2)基本绘图 随机数发生器绘制文字 离散傅立叶变换 输入输出XML和YAML文件 与 OpenCV 1 同时使用

    基本绘图 目的 本节你将学到: 如何用 Point 在图像中定义 2D 点 如何以及为何使用 Scalar 用OpenCV的函数 line 绘 直线 用OpenCV的函数 ellipse 绘 椭圆 用 ...

  8. opencv对应python版本_【求问各位大佬python3.6怎么使用opencv,用哪个版本】python3 opencv...

    python opencv中imshow输出图像太大,如何调整输出尺寸? 通过resize重置尺寸 参图片,输出图片尺寸(一般我不用这个,None),宽例,高的比例 例子:将图片img,缩小一半显示, ...

  9. [Python从零到壹] 三十五.图像处理基础篇之OpenCV绘制各类几何图形

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

最新文章

  1. Java:如何正确地使用异常详解
  2. 使用parted给大于2T的磁盘分区
  3. boost::hana::find用法的测试程序
  4. Daily Scrum 2012/11/08
  5. 实验2-2-4 计算分段函数[2] (10 分)
  6. 完美C++(第5版)(双色)
  7. 【CPI指数预测】基于matlab BP神经网络CPI指数预测【含Matlab源码 662期】
  8. H3C华三交换机初始化配置V7版
  9. 内存条hyperx_HyperX是什么牌子内存条
  10. Ubuntu18.04安装有道词典
  11. springboot+vue+elementUI springboot地方废物回收机构管理系统-#毕业设计
  12. 邯郸玄天文化风景区- 开辟永年华创
  13. 使用Pycharm 连接内网服务器
  14. apache ii评分怎么评_如何正确进行APACHE II评分
  15. Java如何爬虫奥运奖牌榜数据,恭喜中国获得东京奥运会首金!
  16. 学会阅读源码后,我觉得自己better了
  17. 自己动手「焊」键盘,使用Python编写,一键放连招不在话下!
  18. win 10 安装时候无法格式化分区,错误 0x80070057
  19. C++判断素数(求素数)
  20. 我们可以从挑战者灾难中学到什么关于网络安全的知识?一切。

热门文章

  1. VMware WorKstation虚拟机上 Linux 6最小化安装和基本网络环境配置
  2. 简述固定资产的全生命周期管理流程
  3. Flutter 扩展NestedScrollView (一)Pinned头引起的bug解决
  4. VSC 最新版本 加入实用功能Pinned
  5. 一键重装系统后蓝屏怎么修复
  6. 计算机网络的基础学习
  7. 程序员增加收入的几种方法
  8. 阿里云盾技术强在哪里?轻松防御DDoS、CC攻击 1
  9. 不平衡数据处理方法总结(学习笔记)
  10. 题8.13:写一个用矩形法求定积分的通用函数,分别求$\int_0^1 sinxdx, \quad \int_0^1 cosxdx, \quad \int_0^1 e^xdx,$