OpenCV的颜色空间转换函数 cvtColor
2014-06-30 21:55
465 查看
OpenCV的颜色空间转换函数:
C++:void
intdstCn=0)
参数dstCn原来一直沿用CV_BGR2GRAY,CV_RGB2GRAY,CV_GRAY2BGR,CV_GRAY2RGB等格式,但最新几个版本的OpenCV已改为COLOR_BGR2GRAY类似形式,今天才看源代码imgproc.hpp才发现,但官方文档还没修改,如下图,如果程序中使用较新的版本OpenCV,采用CV_BGR2GRAY可能会一直出错。
新的OpenCV中imgproc.hpp的定义如下:
C++:void
cvtColor(InputArraysrc,OutputArraydst,intcode,
intdstCn=0)
参数dstCn原来一直沿用CV_BGR2GRAY,CV_RGB2GRAY,CV_GRAY2BGR,CV_GRAY2RGB等格式,但最新几个版本的OpenCV已改为COLOR_BGR2GRAY类似形式,今天才看源代码imgproc.hpp才发现,但官方文档还没修改,如下图,如果程序中使用较新的版本OpenCV,采用CV_BGR2GRAY可能会一直出错。
新的OpenCV中imgproc.hpp的定义如下:
enum
{
COLOR_BGR2BGRA=0,
COLOR_RGB2RGBA=COLOR_BGR2BGRA,
COLOR_BGRA2BGR=1,
COLOR_RGBA2RGB=COLOR_BGRA2BGR,
COLOR_BGR2RGBA=2,
COLOR_RGB2BGRA=COLOR_BGR2RGBA,
COLOR_RGBA2BGR=3,
COLOR_BGRA2RGB=COLOR_RGBA2BGR,
COLOR_BGR2RGB=4,
COLOR_RGB2BGR=COLOR_BGR2RGB,
COLOR_BGRA2RGBA=5,
COLOR_RGBA2BGRA=COLOR_BGRA2RGBA,
COLOR_BGR2GRAY=6,
COLOR_RGB2GRAY=7,
COLOR_GRAY2BGR=8,
COLOR_GRAY2RGB=COLOR_GRAY2BGR,
COLOR_GRAY2BGRA=9,
COLOR_GRAY2RGBA=COLOR_GRAY2BGRA,
COLOR_BGRA2GRAY=10,
COLOR_RGBA2GRAY=11,
COLOR_BGR2BGR565=12,
COLOR_RGB2BGR565=13,
COLOR_BGR5652BGR=14,
COLOR_BGR5652RGB=15,
COLOR_BGRA2BGR565=16,
COLOR_RGBA2BGR565=17,
COLOR_BGR5652BGRA=18,
COLOR_BGR5652RGBA=19,
COLOR_GRAY2BGR565=20,
COLOR_BGR5652GRAY=21,
COLOR_BGR2BGR555=22,
COLOR_RGB2BGR555=23,
COLOR_BGR5552BGR=24,
COLOR_BGR5552RGB=25,
COLOR_BGRA2BGR555=26,
COLOR_RGBA2BGR555=27,
COLOR_BGR5552BGRA=28,
COLOR_BGR5552RGBA=29,
COLOR_GRAY2BGR555=30,
COLOR_BGR5552GRAY=31,
COLOR_BGR2XYZ=32,
COLOR_RGB2XYZ=33,
COLOR_XYZ2BGR=34,
COLOR_XYZ2RGB=35,
COLOR_BGR2YCrCb=36,
COLOR_RGB2YCrCb=37,
COLOR_YCrCb2BGR=38,
COLOR_YCrCb2RGB=39,
COLOR_BGR2HSV=40,
COLOR_RGB2HSV=41,
COLOR_BGR2Lab=44,
COLOR_RGB2Lab=45,
COLOR_BayerBG2BGR=46,
COLOR_BayerGB2BGR=47,
COLOR_BayerRG2BGR=48,
COLOR_BayerGR2BGR=49,
COLOR_BayerBG2RGB=COLOR_BayerRG2BGR,
COLOR_BayerGB2RGB=COLOR_BayerGR2BGR,
COLOR_BayerRG2RGB=COLOR_BayerBG2BGR,
COLOR_BayerGR2RGB=COLOR_BayerGB2BGR,
COLOR_BGR2Luv=50,
COLOR_RGB2Luv=51,
COLOR_BGR2HLS=52,
COLOR_RGB2HLS=53,
COLOR_HSV2BGR=54,
COLOR_HSV2RGB=55,
COLOR_Lab2BGR=56,
COLOR_Lab2RGB=57,
COLOR_Luv2BGR=58,
COLOR_Luv2RGB=59,
COLOR_HLS2BGR=60,
COLOR_HLS2RGB=61,
COLOR_BayerBG2BGR_VNG=62,
COLOR_BayerGB2BGR_VNG=63,
COLOR_BayerRG2BGR_VNG=64,
COLOR_BayerGR2BGR_VNG=65,
COLOR_BayerBG2RGB_VNG=COLOR_BayerRG2BGR_VNG,
COLOR_BayerGB2RGB_VNG=COLOR_BayerGR2BGR_VNG,
COLOR_BayerRG2RGB_VNG=COLOR_BayerBG2BGR_VNG,
COLOR_BayerGR2RGB_VNG=COLOR_BayerGB2BGR_VNG,
COLOR_BGR2HSV_FULL=66,
COLOR_RGB2HSV_FULL=67,
COLOR_BGR2HLS_FULL=68,
COLOR_RGB2HLS_FULL=69,
COLOR_HSV2BGR_FULL=70,
COLOR_HSV2RGB_FULL=71,
COLOR_HLS2BGR_FULL=72,
COLOR_HLS2RGB_FULL=73,
COLOR_LBGR2Lab=74,
COLOR_LRGB2Lab=75,
COLOR_LBGR2Luv=76,
COLOR_LRGB2Luv=77,
COLOR_Lab2LBGR=78,
COLOR_Lab2LRGB=79,
COLOR_Luv2LBGR=80,
COLOR_Luv2LRGB=81,
COLOR_BGR2YUV=82,
COLOR_RGB2YUV=83,
COLOR_YUV2BGR=84,
COLOR_YUV2RGB=85,
COLOR_BayerBG2GRAY=86,
COLOR_BayerGB2GRAY=87,
COLOR_BayerRG2GRAY=88,
COLOR_BayerGR2GRAY=89,
//YUV4:2:0formatsfamily
COLOR_YUV2RGB_NV12=90,
COLOR_YUV2BGR_NV12=91,
COLOR_YUV2RGB_NV21=92,
COLOR_YUV2BGR_NV21=93,
COLOR_YUV420sp2RGB=COLOR_YUV2RGB_NV21,
COLOR_YUV420sp2BGR=COLOR_YUV2BGR_NV21,
COLOR_YUV2RGBA_NV12=94,
COLOR_YUV2BGRA_NV12=95,
COLOR_YUV2RGBA_NV21=96,
COLOR_YUV2BGRA_NV21=97,
COLOR_YUV420sp2RGBA=COLOR_YUV2RGBA_NV21,
COLOR_YUV420sp2BGRA=COLOR_YUV2BGRA_NV21,
COLOR_YUV2RGB_YV12=98,
COLOR_YUV2BGR_YV12=99,
COLOR_YUV2RGB_IYUV=100,
COLOR_YUV2BGR_IYUV=101,
COLOR_YUV2RGB_I420=COLOR_YUV2RGB_IYUV,
COLOR_YUV2BGR_I420=COLOR_YUV2BGR_IYUV,
COLOR_YUV420p2RGB=COLOR_YUV2RGB_YV12,
COLOR_YUV420p2BGR=COLOR_YUV2BGR_YV12,
COLOR_YUV2RGBA_YV12=102,
COLOR_YUV2BGRA_YV12=103,
COLOR_YUV2RGBA_IYUV=104,
COLOR_YUV2BGRA_IYUV=105,
COLOR_YUV2RGBA_I420=COLOR_YUV2RGBA_IYUV,
COLOR_YUV2BGRA_I420=COLOR_YUV2BGRA_IYUV,
COLOR_YUV420p2RGBA=COLOR_YUV2RGBA_YV12,
COLOR_YUV420p2BGRA=COLOR_YUV2BGRA_YV12,
COLOR_YUV2GRAY_420=106,
COLOR_YUV2GRAY_NV21=COLOR_YUV2GRAY_420,
COLOR_YUV2GRAY_NV12=COLOR_YUV2GRAY_420,
COLOR_YUV2GRAY_YV12=COLOR_YUV2GRAY_420,
COLOR_YUV2GRAY_IYUV=COLOR_YUV2GRAY_420,
COLOR_YUV2GRAY_I420=COLOR_YUV2GRAY_420,
COLOR_YUV420sp2GRAY=COLOR_YUV2GRAY_420,
COLOR_YUV420p2GRAY=COLOR_YUV2GRAY_420,
//YUV4:2:2formatsfamily
COLOR_YUV2RGB_UYVY=107,
COLOR_YUV2BGR_UYVY=108,
//COLOR_YUV2RGB_VYUY=109,
//COLOR_YUV2BGR_VYUY=110,
COLOR_YUV2RGB_Y422=COLOR_YUV2RGB_UYVY,
COLOR_YUV2BGR_Y422=COLOR_YUV2BGR_UYVY,
COLOR_YUV2RGB_UYNV=COLOR_YUV2RGB_UYVY,
COLOR_YUV2BGR_UYNV=COLOR_YUV2BGR_UYVY,
COLOR_YUV2RGBA_UYVY=111,
COLOR_YUV2BGRA_UYVY=112,
//COLOR_YUV2RGBA_VYUY=113,
//COLOR_YUV2BGRA_VYUY=114,
COLOR_YUV2RGBA_Y422=COLOR_YUV2RGBA_UYVY,
COLOR_YUV2BGRA_Y422=COLOR_YUV2BGRA_UYVY,
COLOR_YUV2RGBA_UYNV=COLOR_YUV2RGBA_UYVY,
COLOR_YUV2BGRA_UYNV=COLOR_YUV2BGRA_UYVY,
COLOR_YUV2RGB_YUY2=115,
COLOR_YUV2BGR_YUY2=116,
COLOR_YUV2RGB_YVYU=117,
COLOR_YUV2BGR_YVYU=118,
COLOR_YUV2RGB_YUYV=COLOR_YUV2RGB_YUY2,
COLOR_YUV2BGR_YUYV=COLOR_YUV2BGR_YUY2,
COLOR_YUV2RGB_YUNV=COLOR_YUV2RGB_YUY2,
COLOR_YUV2BGR_YUNV=COLOR_YUV2BGR_YUY2,
COLOR_YUV2RGBA_YUY2=119,
COLOR_YUV2BGRA_YUY2=120,
COLOR_YUV2RGBA_YVYU=121,
COLOR_YUV2BGRA_YVYU=122,
COLOR_YUV2RGBA_YUYV=COLOR_YUV2RGBA_YUY2,
COLOR_YUV2BGRA_YUYV=COLOR_YUV2BGRA_YUY2,
COLOR_YUV2RGBA_YUNV=COLOR_YUV2RGBA_YUY2,
COLOR_YUV2BGRA_YUNV=COLOR_YUV2BGRA_YUY2,
COLOR_YUV2GRAY_UYVY=123,
COLOR_YUV2GRAY_YUY2=124,
//COLOR_YUV2GRAY_VYUY=COLOR_YUV2GRAY_UYVY,
COLOR_YUV2GRAY_Y422=COLOR_YUV2GRAY_UYVY,
COLOR_YUV2GRAY_UYNV=COLOR_YUV2GRAY_UYVY,
COLOR_YUV2GRAY_YVYU=COLOR_YUV2GRAY_YUY2,
COLOR_YUV2GRAY_YUYV=COLOR_YUV2GRAY_YUY2,
COLOR_YUV2GRAY_YUNV=COLOR_YUV2GRAY_YUY2,
//alphapremultiplication
COLOR_RGBA2mRGBA=125,
COLOR_mRGBA2RGBA=126,
COLOR_RGB2YUV_I420=127,
COLOR_BGR2YUV_I420=128,
COLOR_RGB2YUV_IYUV=COLOR_RGB2YUV_I420,
COLOR_BGR2YUV_IYUV=COLOR_BGR2YUV_I420,
COLOR_RGBA2YUV_I420=129,
COLOR_BGRA2YUV_I420=130,
COLOR_RGBA2YUV_IYUV=COLOR_RGBA2YUV_I420,
COLOR_BGRA2YUV_IYUV=COLOR_BGRA2YUV_I420,
COLOR_RGB2YUV_YV12=131,
COLOR_BGR2YUV_YV12=132,
COLOR_RGBA2YUV_YV12=133,
COLOR_BGRA2YUV_YV12=134,
COLOR_COLORCVT_MAX=135
};
相关文章推荐
- OpenCV颜色空间转换函数:cv::cvtColor介绍
- OpenCV编程->无法解析的外部符号 "void __cdecl cv::cvtColor
- [OpenCV] GpuMat and Mat, compare cvtColor perforemence
- opencv之 cvCvtColor的用法
- openCV--颜色空间转换函数cvCvtColor
- 【OpenCV3】颜色空间转换——cv::cvtColor()详解
- OpenCV编程->无法解析的外部符号 "void __cdecl cv::cvtColor
- 【OpenCV3】颜色空间转换——cv::cvtColor()详解
- opencv android 图像处理错误error: (-215) scn == 3 || scn == 4 in function void cv::cvtColor(const
- Python openCV:error:(-215)scn == 3 || scn ==4 in function cv::cvtColor
- OpenCV学习:将图像转为二值图像(函数cvtColor和函数threshold)
- OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cvtColor
- opencv学习(十六)之颜色空间转换cvtColor()
- opencv的cvCvtColor问题
- Py:解决错误OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cv::cvtColor
- 【OpenCV3图像处理】颜色空间转换(二)转换函数 cvtColor()
- OpenCV: 颜色空间转换 cvtColor()出错?注意浮点数精度
- opencv︱图像的色彩空間cvtColor(HSV、HSL、HSB )及相关色彩学
- OPENCV入门教程三:cvtColor彩色图转灰度图
- Android opencv cvCvtColor()的转换