RGB到HSV颜色空间的转换
2017-02-08 17:53
344 查看
OpenCV默认读取图像是RGB通道,现需要转化到HSV(Hue,Saturation,Value)颜色空间,opencv提供cvtColor(C++: void cvtColor(InputArray src,
OutputArray dst, int code, int dstCn=0 ))函数对颜色空间进行转换。
RGB到HSV的转化公式如下:
在opencv中,H:0~180 S:0~255 V:0~255
HSV颜色空间规定的取值范围是,H:0~360 S:0~1 V:0~1
因此如果需要转换从opencv的结果到HSV颜色空间,需要转换一下,H*2,S/255,V/255
实例代码:
OutputArray dst, int code, int dstCn=0 ))函数对颜色空间进行转换。
RGB到HSV的转化公式如下:
在opencv中,H:0~180 S:0~255 V:0~255
HSV颜色空间规定的取值范围是,H:0~360 S:0~1 V:0~1
因此如果需要转换从opencv的结果到HSV颜色空间,需要转换一下,H*2,S/255,V/255
实例代码:
#include<opencv2/opencv.hpp> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <iostream> using namespace std; using namespace cv; int main() { //读入图像 Mat image = imread("E:\\VS2013\\bran.jpg"); Mat hsvimage; /// 创建窗口 namedWindow("BranStarkRGB"); namedWindow("BranStarkHSV"); cvtColor(image, hsvimage, CV_BGR2HSV); /// 显示图像 imshow("BranStarkRGB", image); imshow("BranStarkHSV", hsvimage); waitKey(); return 0; }转换的效果:
相关文章推荐
- HSV颜色空间理解及RGB图像转换到HSV空间的方法(数据集扩充)
- 使用Opencv将RGB颜色空间转换到HSV颜色空间/灰度图
- RGB转换到HSV颜色空间
- RGB颜色空间转换至HSV颜色空间
- HSV颜色空间 与 RGB 颜色空间的相互转换
- OpenCV之RGB与HSV颜色空间的转换
- ios--OpenCV--RGB与HSV颜色空间的转换
- RGB到HSV颜色空间的转换
- YUV格式学习:YUV420P、YV12、NV12、NV21格式转换成RGB24
- 将BGR图像转换成HSV颜色空间的转换
- RGB565 与 RGB888的相互转换
- 将RGB值转换为灰度值的简单算法
- 【OpenCV】 RGB和CIEXYZ颜色空间的转换及相关优化。
- RGB与YCbCr颜色空间的转换
- 目标检测中RGB和HSV颜色空间的距离度量方式
- 【OpenCV】颜色空间RGB与HSV(HSL)的转换
- 由RGB到HSV颜色空间的理解
- [转]RGB,YUV的来历及其相互转换
- libjpeg 的使用sample RGB转换到JPEG
- RGB转换为灰度vc代码