Android opencv cvCvtColor()的转换

简介: 表3-6:cvCvtColor()的转换转换代码                       解释CV_BGR2RGBCV_RGB2BGRCV_RGBA2BGRACV_BGRA2R...

表3-6:cvCvtColor()的转换

转换代码                       解释

CV_BGR2RGB

CV_RGB2BGR

CV_RGBA2BGRA

CV_BGRA2RGBA

在RGB或BGR色彩空间

之间转换(包括或者不包括alpha 通道)

CV_RGB2RGBA

CV_BGR2BGRA

在 RGB或BGR图像中加入alpha 通道

CV_RGBA2RGB

CV_BGRA2BGR

从 RGB或BGR图像中删除alpha 通道

CV_RGB2BGRA

CV_RGBA2BGR

CV_BGRA2RGB

CV_BGR2RGBA

加入或者移除alpha通道时,

转换RGB到BGR 色彩空间

CV_RGB2GRAY

CV_BGR2GRAY

转换RGB或者BGR色彩

空间为灰度空间

CV_GRAY2RGB

CV_GRAY2BGR

CV_RGBA2GRAY

CV_BGRA2GRAY

转换灰度为RGB或者BGR

色彩空间(在进程中选择移除alpha通道)

CV_GRAY2RGBA

CV_GRAY2BGRA

转换灰度为RGB或者BGR

色彩空间并且加入alpha通道

CV_RGB2BGR565

CV_BGR2BGR565

CV_BGR5652RGB

CV_BGR5652BGR

CV_RGBA2BGR565

CV_BGRA2BGR565

CV_BGR5652RGBA

CV_BGR5652BGRA

在从RGB或者BGR色彩

空间转换到BGR565彩色图

画时,选择加入或者移除

alpha通道 (16位图)

CV_GRAY2BGR565

CV_BGR5652GRAY

转换灰度为BGR565彩色图像

或者反变换(16位图)

续表

转换代码                       解释

CV_RGB2BGR555

CV_BGR2BGR555

CV_BGR5552RGB

CV_BGR5552BGR

CV_RGBA2BGR555

CV_BGRA2BGR555

在从RGB或者BGR色彩

空间转换到BGR555色彩

空间时,选择加入或者移除

alpha通道(16位图)

CV_BGR5552RGBA

CV_BGR5552BGRA

 

CV_GRAY2BGR555

CV_BGR5552GRAY

转换灰度到BGR555色彩

空间或者反变换(16位图)

CV_RGB2XYZ

CV_BGR2XYZ

CV_XYZ2RGB

CV_XYZ2BGR

转换RGB或者BGR色彩

空间到CIE XYZ色彩空间

或者反变换(Rec 709和D65 白点)

CV_RGB2YCrCb

CV_BGR2YCrCb

CV_YCrCb2RGB

CV_YCrCb2BGR

转换RGB 或者BGR色彩

空间到luma-chroma (aka YCC)色彩空间

CV_RGB2HSV

CV_BGR2HSV

CV_HSV2RGB

CV_HSV2BGR

转换RGB或者BGR

色彩空间到HSV(hue,

saturation,value)色彩空间或反变换

CV_RGB2HLS

CV_BGR2HLS

CV_HLS2RGB

CV_HLS2BGR

转换RGB或者BGR

色彩空间到HLS(hue,

Lightness,saturation)色彩空间或反变换

CV_RGB2Lab

CV_BGR2Lab

CV_Lab2RGB

CV_Lab2BGR

转换RGB或者BGR色彩空

间到CIE LAB色彩空间或反变换

续表

转换代码                 解释

CV_RGB2Luv

CV_BGR2Luv

CV_Luv2RGB

CV_Luv2BGR

转换RGB或者BGR色彩

空间到CIE Luv色彩空间

CV_BayerBG2RGB

CV_BayerGB2RGB

转换Bayer模式(单通道)

到RGB或者BGR色彩空间

CV_BayerRG2RGB

CV_BayerGR2RGB

CV_BayerBG2BGR

CV_BayerGB2BGR

CV_BayerRG2BGR

CV_BayerGR2BGR

 

 

这里不再进一步阐述CIE色彩空间中Bayer模式的细节,但许多这样的转换是很有意义的。我们的目的是,了解OpenCV能够在哪些色彩空间进行转换,这对用户来说很重要。

色彩空间转换都用到以下约定:8位图像范围是0~255,16位图像范围是0~65536,浮点数的范围是0.0~1.0。黑白图像转换为彩色图像时,最终图像的所有通道都是相同的;但是逆变换(例如RGB或BGR到灰度),灰度值的计算使用加权公式:

Y=(0.299)R+(0.587)G+(0.114)B

就HSV色彩模式或者HLS色彩模式来说,色调通常是在0~360之间。 在8位图中,这可能出现问题,因此,转换到HSV色彩模式,并以8位图的形式输出时,色调应该除以2。

目录
相关文章
|
Java 开发工具 Android开发
Android Studio OpenCV 4.5.2环境搭建
Android Studio OpenCV 4.5.2环境搭建
560 0
|
计算机视觉
OpenCV绘制文字的代码及Mat/IplImage的转换
OpenCV绘制文字的代码及Mat/IplImage的转换
78 0
|
机器学习/深度学习 计算机视觉
Opencv,imread()读取BGR格式文件转换与RGB格式的相互转换
Opencv,imread()读取BGR格式文件转换与RGB格式的相互转换
|
计算机视觉
Qt+OpenCV小项目:灰度图转换
Qt+OpenCV小项目:灰度图转换
171 0
Qt+OpenCV小项目:灰度图转换
|
人工智能 计算机视觉
【人工智能】人脸识别检测戴口罩实战之初识OpenCV简单操作,图片的读取和显示以及BGR与RGB之间的转换【第一课】
初识OpenCV简单操作,图片的读取和显示以及BGR与RGB之间的转换,读取视频。解决报错iCCP: cHRM chunk does not match sRGB
423 1
【人工智能】人脸识别检测戴口罩实战之初识OpenCV简单操作,图片的读取和显示以及BGR与RGB之间的转换【第一课】
|
算法 Java Unix
OpenCV 在 Android 上的应用
OpenCV 在 Android 上的应用
484 0
|
存储 计算机视觉
ImageMagick 的 Image 和 OpenCV 的 cv::Mat 如何转换
ImageMagick 的 Image 和 OpenCV 的 cv::Mat 如何转换
346 0
|
计算机视觉 UED
Android+OpenCV 摄像头实时识别模板图像并跟踪
Android+OpenCV 摄像头实时识别模板图像并跟踪
584 0
Android+OpenCV 摄像头实时识别模板图像并跟踪
|
计算机视觉
OpenCV绘制文字的代码及Mat/IplImage的转换
OpenCV绘制文字的代码及Mat/IplImage的转换
115 0
|
IDE Java 开发工具
Python、C++、Android OpenCV 开发环境的配置
在 Mac 上折腾了一下 OpenCV 的配置,分别配置了 Python 、C++ 和 Android 上的开发环境,中间还遇到点坑,简要记录一下。
598 0
Python、C++、Android OpenCV 开发环境的配置