opencv 图像深度(depth)
原文地址:http://blog.csdn.net/dingfc/article/details/7457984
图像深度是指存储每个像素所用的位数,也用于量度图像的色彩分辨率.图像深度确定彩色图像的每个像素可能有的颜色数,或者确定灰度图像的每个像素可能有的灰度级数.它决定了彩色图像中可出现的最多颜色数,或灰度图像中的最大灰度等级.比如一幅单色图像,若每个象素有8位,则最大灰度数目为2的8次方,即256.一幅彩色图像RGB3个分量的象素位数分别为4,4,2,则最大颜色数目为2的4+4+2次方,即1024,就是说像素的深度为10位,每个像素可以是1024种颜色中的一种.
例如:一幅画的尺寸是1024*768,深度为16,则它的数据量为1.5M。
计算如下:1024*768*16bit=(1024*768*16)/8字节=[(1024*768*16)/8]/1024KB={[(1024*768*16)/8]/1024}/1024MB。
Opencv 转化函数,参考opencv 2.3.1 manual Reference
Converts one array to another with optional linear transformation.
C: void cvConvertScale(const CvArr* src, CvArr* dst, double scale=, double shift=)
#define cvCvtScale cvConvertScale
#define cvScale cvConvertScale
#define cvConvert(src, dst ) cvConvertScale((src), (dst), 1, 0 )
Parameters:
src – Source array
dst – Destination array
scale – Scale factor
shift – Value added to the scaled source array elements
- The value to be multipled with the pixel
- shift (Double)
- The value to be added to the pixel
如果 scale=1,shift=0 就不会进行比例缩放. 这是一个特殊的优化,相当于该函数的同义函数名:cvConvert 。
如果原来数组和输出数组的类型相同,这是另一种特殊情形,可以被用于比例缩放和平移矩阵或图像,此时相当于该函数的同义函数名:cvScale。
因此可以用这个函数实现不同位深之间的转换,也可以用于不同数据类型之间的转换!
下面转一段别人总结的深度显示范围。
测试double型:0.0--1.0之间 IPL_DEPTH_64F
测试float型:0.0--1.0之间 IPL_DEPTH_32F
测试long型:0--65535之间 IPL_DEPTH_32S
测试short int型:-32768--32767之间 IPL_DEPTH_16S
测试unsigned short int型:0--65535之间 IPL_DEPTH_16U
测试char型:-128--127之间 IPL_DEPTH_8S
测试unsigned char型:0--255之间 IPL_DEPTH_8U
这个时候如果需要保存图像,请记住要先转换到IPL_DEPTH_8U的深度。因为只有8位单通道或者3通道(通道顺序为'BGR')才可以使用cvSaveImage保存。下
最新文章
- SQL Server数据库常用函数
- 《javascript高级程序设计》第三章学习笔记
- java 复制文件
- c++垃圾回收代码练习 引用计数
- (转)Android属性设置android:noHistory=";true";
- ISO13485给企业带来的益处
- linux之centos安装xampp
- centos ppp拨号
- ASP.NET页面周期
- Compare the value of entity field.
- Nio得知3——该示范基地:多路复用器模式
- spark、storm与Hadoop
- 树莓派小车By 树莓派爱好者ITJoker(通过python socket通信实现树莓派视频小车)(一)
- JavaScript 基础六 'use strict'严格模式下的规则
- Lua5.1 升级 Lua5.3 升级 小结
- [kali] 安装完kali之后允许远程ssh
- 用iframe嵌入了一个微信公众号平台文章的URL
- java线程实现的四种方式
- VS团队资源管理器(VS自带git)使用说明_使用VS自带git推送到远程存储库
- Flume-NG源码阅读之FileChannel
热门文章
- matplotlib imshow
- CF438E The Child and Binary Tree(生成函数,NTT)
- win32 窗口缩放时出现闪屏
- bug6 项目检出JRE问题(Unbound classpath container: 'JRE System Library [JavaSE-1.7]' in project 'idweb')
- 线程的加入.join()
- springboot的跨域
- (大数 求余) Large Division Light OJ 1214
- vue资源
- 【1】存在大于1s的FullGC
- TCP粘包,拆包及解决方法