OpenCV的颜色空间转换函数:
 
C++: void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0 )
 
参数dstCn原来一直沿用CV_BGR2GRAY, CV_RGB2GRAY, CV_GRAY2BGR, CV_GRAY2RGB等格式,但最新几个版本的OpenCV已改为COLOR_BGR2GRAY类似形式,今天才看源代码imgproc.hpp才发现,但官方文档还没修改,如下图,如果程序中使用较新的版本OpenCV,采用CV_BGR2GRAY可能会一直出错。
 
 
 
新的OpenCV中imgproc.hpp的定义如下:
enum
{
COLOR_BGR2BGRA =,
COLOR_RGB2RGBA =COLOR_BGR2BGRA, COLOR_BGRA2BGR =,
COLOR_RGBA2RGB =COLOR_BGRA2BGR, COLOR_BGR2RGBA =,
COLOR_RGB2BGRA =COLOR_BGR2RGBA, COLOR_RGBA2BGR =,
COLOR_BGRA2RGB =COLOR_RGBA2BGR, COLOR_BGR2RGB =,
COLOR_RGB2BGR =COLOR_BGR2RGB, COLOR_BGRA2RGBA =,
COLOR_RGBA2BGRA =COLOR_BGRA2RGBA, COLOR_BGR2GRAY =,
COLOR_RGB2GRAY =,
COLOR_GRAY2BGR =,
COLOR_GRAY2RGB =COLOR_GRAY2BGR,
COLOR_GRAY2BGRA =,
COLOR_GRAY2RGBA =COLOR_GRAY2BGRA,
COLOR_BGRA2GRAY =,
COLOR_RGBA2GRAY =, COLOR_BGR2BGR565 =,
COLOR_RGB2BGR565 =,
COLOR_BGR5652BGR =,
COLOR_BGR5652RGB =,
COLOR_BGRA2BGR565 =,
COLOR_RGBA2BGR565 =,
COLOR_BGR5652BGRA =,
COLOR_BGR5652RGBA =, COLOR_GRAY2BGR565 =,
COLOR_BGR5652GRAY =, COLOR_BGR2BGR555 =,
COLOR_RGB2BGR555 =,
COLOR_BGR5552BGR =,
COLOR_BGR5552RGB =,
COLOR_BGRA2BGR555 =,
COLOR_RGBA2BGR555 =,
COLOR_BGR5552BGRA =,
COLOR_BGR5552RGBA =, COLOR_GRAY2BGR555 =,
COLOR_BGR5552GRAY =, COLOR_BGR2XYZ =,
COLOR_RGB2XYZ =,
COLOR_XYZ2BGR =,
COLOR_XYZ2RGB =, COLOR_BGR2YCrCb =,
COLOR_RGB2YCrCb =,
COLOR_YCrCb2BGR =,
COLOR_YCrCb2RGB =, COLOR_BGR2HSV =,
COLOR_RGB2HSV =, COLOR_BGR2Lab =,
COLOR_RGB2Lab =, COLOR_BayerBG2BGR =,
COLOR_BayerGB2BGR =,
COLOR_BayerRG2BGR =,
COLOR_BayerGR2BGR =, COLOR_BayerBG2RGB =COLOR_BayerRG2BGR,
COLOR_BayerGB2RGB =COLOR_BayerGR2BGR,
COLOR_BayerRG2RGB =COLOR_BayerBG2BGR,
COLOR_BayerGR2RGB =COLOR_BayerGB2BGR, COLOR_BGR2Luv =,
COLOR_RGB2Luv =,
COLOR_BGR2HLS =,
COLOR_RGB2HLS =, COLOR_HSV2BGR =,
COLOR_HSV2RGB =, COLOR_Lab2BGR =,
COLOR_Lab2RGB =,
COLOR_Luv2BGR =,
COLOR_Luv2RGB =,
COLOR_HLS2BGR =,
COLOR_HLS2RGB =, COLOR_BayerBG2BGR_VNG =,
COLOR_BayerGB2BGR_VNG =,
COLOR_BayerRG2BGR_VNG =,
COLOR_BayerGR2BGR_VNG =, 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 = ,
COLOR_RGB2HSV_FULL = ,
COLOR_BGR2HLS_FULL = ,
COLOR_RGB2HLS_FULL = , COLOR_HSV2BGR_FULL = ,
COLOR_HSV2RGB_FULL = ,
COLOR_HLS2BGR_FULL = ,
COLOR_HLS2RGB_FULL = , COLOR_LBGR2Lab = ,
COLOR_LRGB2Lab = ,
COLOR_LBGR2Luv = ,
COLOR_LRGB2Luv = , COLOR_Lab2LBGR = ,
COLOR_Lab2LRGB = ,
COLOR_Luv2LBGR = ,
COLOR_Luv2LRGB = , COLOR_BGR2YUV = ,
COLOR_RGB2YUV = ,
COLOR_YUV2BGR = ,
COLOR_YUV2RGB = , COLOR_BayerBG2GRAY = ,
COLOR_BayerGB2GRAY = ,
COLOR_BayerRG2GRAY = ,
COLOR_BayerGR2GRAY = , //YUV 4:2:0 formats family
COLOR_YUV2RGB_NV12 = ,
COLOR_YUV2BGR_NV12 = ,
COLOR_YUV2RGB_NV21 = ,
COLOR_YUV2BGR_NV21 = ,
COLOR_YUV420sp2RGB = COLOR_YUV2RGB_NV21,
COLOR_YUV420sp2BGR = COLOR_YUV2BGR_NV21, COLOR_YUV2RGBA_NV12 = ,
COLOR_YUV2BGRA_NV12 = ,
COLOR_YUV2RGBA_NV21 = ,
COLOR_YUV2BGRA_NV21 = ,
COLOR_YUV420sp2RGBA = COLOR_YUV2RGBA_NV21,
COLOR_YUV420sp2BGRA = COLOR_YUV2BGRA_NV21, COLOR_YUV2RGB_YV12 = ,
COLOR_YUV2BGR_YV12 = ,
COLOR_YUV2RGB_IYUV = ,
COLOR_YUV2BGR_IYUV = ,
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 = ,
COLOR_YUV2BGRA_YV12 = ,
COLOR_YUV2RGBA_IYUV = ,
COLOR_YUV2BGRA_IYUV = ,
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 = ,
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, //YUV 4:2:2 formats family
COLOR_YUV2RGB_UYVY = ,
COLOR_YUV2BGR_UYVY = ,
//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 = ,
COLOR_YUV2BGRA_UYVY = ,
//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 = ,
COLOR_YUV2BGR_YUY2 = ,
COLOR_YUV2RGB_YVYU = ,
COLOR_YUV2BGR_YVYU = ,
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 = ,
COLOR_YUV2BGRA_YUY2 = ,
COLOR_YUV2RGBA_YVYU = ,
COLOR_YUV2BGRA_YVYU = ,
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 = ,
COLOR_YUV2GRAY_YUY2 = ,
//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, // alpha premultiplication
COLOR_RGBA2mRGBA = ,
COLOR_mRGBA2RGBA = , COLOR_RGB2YUV_I420 = ,
COLOR_BGR2YUV_I420 = ,
COLOR_RGB2YUV_IYUV = COLOR_RGB2YUV_I420,
COLOR_BGR2YUV_IYUV = COLOR_BGR2YUV_I420, COLOR_RGBA2YUV_I420 = ,
COLOR_BGRA2YUV_I420 = ,
COLOR_RGBA2YUV_IYUV = COLOR_RGBA2YUV_I420,
COLOR_BGRA2YUV_IYUV = COLOR_BGRA2YUV_I420,
COLOR_RGB2YUV_YV12 = ,
COLOR_BGR2YUV_YV12 = ,
COLOR_RGBA2YUV_YV12 = ,
COLOR_BGRA2YUV_YV12 = , COLOR_COLORCVT_MAX =
};

OpenCV 颜色空间转换参数CV_BGR2GRAY改变的更多相关文章

  1. 颜色空间转换 cvtColor()[OpenCV 笔记13]

    void cvtColor(InputArray src, OutputArray dst, ) src: 输入图像 dst: 输出图像 code: 颜色空间转换标识符 OpenCV2的CV_前缀宏命 ...

  2. OpenCV 的颜色空间转换

    # coding: utf-8 ''' 第13章主要介绍:颜色空间转换 ''' import cv2 import numpy as np ''' 经常用到的颜色空间转换是: BGR<-> ...

  3. opencv学习笔记——颜色空间转换函数cv::cvtColor详解

    cv::cvtColor()用于将图像从一个颜色空间转换到另一个颜色空间的转换(目前常见的颜色空间均支持),并且在转换的过程中能够保证数据的类型不变,即转换后的图像的数据类型和位深与源图像一致. 具体 ...

  4. OpenCV 学习笔记(10)HSV颜色空间及颜色空间转换(RGB-HSV)

    1.1 颜色空间介绍 RGB 颜色空间是大家最熟悉的颜色空间,即三基色空间,任何一种颜色都可以由该三种 颜色混合而成.然而一般对颜色空间的图像进行有效处理都是在 HSV 空间进行的,HSV(色 调 H ...

  5. OpenCV学习笔记(5)——颜色空间转换

    学习如歌对图像进行颜色空间转换,从BGR到灰度图,或者从BGR到HSV等 创建一个程序用来从一幅图像中获取某个特定颜色的物体 1.转换颜色空间 OpenCV中有超过150种进行颜色空间转化的方法,但是 ...

  6. python数字图像处理(4):图像数据类型及颜色空间转换

    一.图像数据类型及转换 在skimage中,一张图片就是一个简单的numpy数组,数组的数据类型有很多种,相互之间也可以转换.这些数据类型及取值范围如下表所示: Data type Range uin ...

  7. 【OpenCV-Python】-颜色空间转换

    OpenCV官方教程中文版 for Python,原文为段立辉翻译,感谢Linux公社www.linuxidc.com此文档为自学转述,如有侵权请联系本人 使用工具Python3.6使用包cv2,nu ...

  8. Python-OpenCV中图像颜色空间转换

    目录 cv2.cvtColor() 1. RGB to GRAY 2. RGB to CIE XYZ 3. RGB to YCrCb JPEG 4. RGB to HSV 5. RGB to HLS ...

  9. (Ooencv3)颜色空间转换

    (Ooencv3)颜色空间转换 opencv中有多种色彩空间,包括 RGB.HSI.HSL.HSV.HSB.YCrCb.CIE XYZ.CIE Lab8种,使用中经常要遇到色彩空间的转化,以便生成ma ...

随机推荐

  1. java基础-引用数据类型之一维数组(Array)

    java基础-引用数据类型之一维数组(Array) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数组的定义 1>.为什么需要数组 保存一个数据可以定义一个变量,如果要保 ...

  2. bzoj千题计划167:bzoj3527: [Zjoi2014]力

    http://www.lydsy.com/JudgeOnline/problem.php?id=3527 给出n个数qi,给出Fj的定义如下: 令Ei=Fi/qi,求Ei.      以n=4为例: ...

  3. Kafka安装验证及其注意

    一.Zookeeper 配置文件说明: # the directory where the snapshot is stored. dataDir=/tmp/zookeeper # the port ...

  4. 纯javascript代码实现浏览器图片选择预览、旋转、批量上传

    工作中遇到的业务场景,和同事一起研究了下,主要是为了兼容IE版本 其实就是一些琐碎的知识点在网上搜集下解决方式,然后集成了下,主要有以下点: 1. IE input type=file的图片预览要用I ...

  5. [php]mysql操作流程

    这种是比较老的一种mysql连接方法 1.连接数据库 $this->con = mysql_connect($this->host, $this->user, $this->p ...

  6. LintCode 383: Max Area

    LintCode 383: Max Area 题目描述 给定 n 个非负整数 a1, a2, ..., an, 每个数代表了坐标中的一个点 (i, ai).画 n 条垂直线,使得 i 垂直线的两个端点 ...

  7. 【HDU】2191 多重背包问题

    原题目:悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 [算法]多重背包(有限背包) 动态规划 [题解]http://blog.csdn.net/acdreamers/article/detail ...

  8. 【leetcode 简单】 第八十一题 4的幂

    给定一个整数 (32 位有符号整数),请编写一个函数来判断它是否是 4 的幂次方. 示例 1: 输入: 16 输出: true 示例 2: 输入: 5 输出: false 进阶: 你能不使用循环或者递 ...

  9. HAOI 2005 路由选择问题 (最短路+次短路)

    问题描述 X城有一个含有N个节点的通信网络,在通信中,我们往往关心信息从一个节点I传输到节点J的最短路径.遗憾的是,由于种种原因,线路中总有一些节点会出故障,因此在传输中要避开故障节点. 任务一:在己 ...

  10. pandas空值处理与插值

    # coding:utf-8 import pandas as pd import numpy as np import matplotlib.pyplot as plt from scipy.int ...