Advertisement

OpenCV颜色模型转换学习笔记

阅读量:

常见的颜色模型有RGB、YUV、HSV、Lab、GRAY等等

先来了解两个函数:

cvtColor()函数

函数原型:

复制代码
    void cv::cvtColor((InputArray src,OutputArray dst,int code,int dstCn = 0)

其中src:待转换颜色模型的原始图像;dst:目标图像目标;code:颜色空间转换标志;当该参数值为0时,默认从源图和平移码中提取通道数量

在操作过程中需要注意的是该函数在处理图像时必须关注其像素值范围的变化。具体来说,在8位无符号的像素表示中值域为0-255,在16位无符号表示中则扩展为0-65535;而32位浮点图像由于其特殊的数值编码方式其像素值仅在0到1之间变化。因此,在目标图像生成的过程中必须特别留意这些细节以避免信息丢失或数据溢出的问题。在线性变换操作中由于计算过程较为直接因此无需额外处理即可保证结果的准确性;但对于非线性变换这类更为复杂的操作则需要对输入的RGB图像进行适当的数据预处理以确保输出结果符合预期的标准例如将8位无符号图像转换为32位浮点格式时应先将原始像素值通过除以255的方式将其缩放到0-1的范围内这样才能够获得正确的变换效果

code:颜色空间转换的标志参数 作用
COLOR_BGR2BGRA 对RGB图像添加alp

全部评论 (0)

还没有任何评论哟~