opecncv不同深度图像的转换(IPL_DEPTH_8U和IPL_DEPTH_32F)

原创 2016年05月30日 23:01:45
由于在很多的图片使用过程中会经常使用到各种转换,总结如下
opencv的IplImage结构中有这么一个成员:depth。
其取值如下:
枚举值
用%d输出 二进制
IPL_DEPTH_8U : 8 : 0x0000 0008
IPL_DEPTH_8S :-2147483640 : 0xffff fff8
IPL_DEPTH_16U : 16 : 0x0000 0010
IPL_DEPTH_16S : -2147483632 : 0xffff fff0
IPL_DEPTH_32S : -2147483616 : 0xffff ffe0
IPL_DEPTH_32F : 32 : 0x0000 0020
IPL_DEPTH_64F : 64 : 0x0000 0040


从文件或摄像头直接读取的图像一般都是8U的,
当有特殊计算需求时可以用cvScale() 或cvCvtScale() 转换。
保存时必须转换回8U!
不同的深度其取值范围不一样:
0.0--1.0之间——IPL_DEPTH_64F
0.0--1.0之间——IPL_DEPTH_32F
0--65535之间——IPL_DEPTH_32S
-32768--32767之间——IPL_DEPTH_16S
0--65535之间——IPL_DEPTH_16U
-128--127之间——IPL_DEPTH_8S
0--255之间——IPL_DEPTH_8U


不同深度图像的转换:
要注意范围
比如IPL_DEPTH_8U 转到 IPL_DEPTH_32U——cvConvertScale(pImg8, pImg32, 1.0/255, 0); 要除255
反过来IPL_DEPTH_32F 到 IPL_DEPTH_8U——cvConverScale(pImg32, pImg8, 255, 0);    要乘以255

版权声明:本文为博主原创文章,未经博主允许不得转载。

cvShowImage显示IPL_DEPTH_32F图像

问题背景: 读入RGB图像(8bits)---->转换成灰度图像(8bits)---->转换成Float型(IPL_DEPTH_32F)--->后续处理 问题描述: 1、用cvShowImage显示8...
  • zhupananhui
  • zhupananhui
  • 2014年03月13日 12:17
  • 2809

OpenCV不同图像深度类型的理解

最近利用OpenCV函数库的时候,常常遇到不同深度的图像的转换、显示和保存问题。在网上查阅了很多文章,发现很多说的不够清楚。在此说下自己的理解。...
  • zhangSMILE123456
  • zhangSMILE123456
  • 2015年08月06日 11:19
  • 2886

opencv 图像的深度和通道介绍

矩阵数据类型: –      CV_(S|U|F)C S = 符号整型  U = 无符号整型  F = 浮点型 E.g.: CV_8UC1 是指一个8位无符号整型单通道...
  • qq61394323
  • qq61394323
  • 2014年10月07日 14:06
  • 10586

opecncv不同深度图像的转换(IPL_DEPTH_8U和IPL_DEPTH_32F)

转载地址:http://blog.csdn.net/yihandk666/article/details/7612756 由于在很多的图片使用过程中会经常使用到各种转换,有些图片的处理需要在特定的深...
  • chenjiazhou12
  • chenjiazhou12
  • 2014年02月21日 16:58
  • 3510

OpenCV对IplImage类中图像深度的理解

opencv的IplImage结构中有这么一个成员:depth。   IPL_DEPTH_8U : 8 : 0x0000 0008   IPL_DEPTH_8S :-2147483640 : 0x...
  • tangshuai8888
  • tangshuai8888
  • 2015年02月02日 16:50
  • 918

opecncv不同深度图像的转换(IPL_DEPTH_8U转IPL_DEPTH_32F)

opencv的IplImage结构中有这么一个成员:depth。 其取值如下: 枚举值 用%d输出 二进制 IPL_DEPTH_8U : 8 : 0x0000 0008 IPL_DEPT...
  • hfmeet
  • hfmeet
  • 2014年09月11日 23:16
  • 947

openCV学习笔记(8)-- 图像阈值化

图像阈值化:在对图像进行操作时,希望能对一些低于和高于一定值的像素进行操作。opencv的cvThreshold()可以完成某些任务。double cvThreshold( CvArr* src, ...
  • superjimmy
  • superjimmy
  • 2011年02月17日 08:54
  • 6177

OpenCV不同图像深度类型的理解

最近利用OpenCV函数库的时候,常常遇到不同深度的图像的转换、显示和保存问题。在网上查阅了很多文章,发现很多说的不够清楚。在此说下自己的理解。...
  • zhangSMILE123456
  • zhangSMILE123456
  • 2015年08月06日 11:19
  • 2886

OpenCV笔记——图像不同位深度间的转换

0.0--1.0之间 IPL_DEPTH_64F 0.0--1.0之间 IPL_DEPTH_32F 0--65535之间 IPL_DEPTH_32S -32768--32767之间 IP...
  • breeze5428
  • breeze5428
  • 2014年06月11日 15:24
  • 6750

ROS下订阅topic,显示并保存Kinect(Xtion pro live )深度摄像机的RGB图像

这里订阅了的是Kinect for Xbox One或是华硕的Xtion Pro Live的topic:/camera/rgb/image_raw 。 1、编写源程序#include #includ...
  • zhuoyueljl
  • zhuoyueljl
  • 2016年12月10日 13:02
  • 1920
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:opecncv不同深度图像的转换(IPL_DEPTH_8U和IPL_DEPTH_32F)
举报原因:
原因补充:

(最多只允许输入30个字)