opencv,图像处理,rgb转换为hsv空间
来源:互联网 发布:多线程socket编程java 编辑:程序博客网 时间:2024/06/05 10:40
图像RGB空间转换为HSV空间。
H参数表示色彩信息,即所处的光谱颜色的位置。该参数用一角度量来表示,红、绿、蓝分别相隔120度。互补色分别相差180度。
纯度S为一比例值,范围从0到1,它表示成所选颜色的纯度和该颜色最大的纯度之间的比率。S=0时,只有灰度。
V表示色彩的明亮程度,范围从0到1。有一点要注意:它和光强度之间并没有直接的联系。
1: max=max(R,G,B) 2: min=min(R,G,B) 3: if R = max, H = (G-B)/(max-min) 4: if G = max, H = 2 + (B-R)/(max-min) 5: if B = max, H = 4 + (R-G)/(max-min) 6: 7: H = H * 60 8: if H < 0, H = H + 360 9: 10: V=max(R,G,B) 11: S=(max-min)/max
代码为:
//转换为HSVvoid Rgb2Hsv(Mat &image, Mat &hsv){float maxV = 0,minV = 0;float V = 0, S = 0, H = 0;float v = 0, s = 0, h = 0;float R = 0, G = 0, B = 0;float delta = 0, tmp = 0;for (int i = 0; i < image.rows; i++){for (int j = 0; j < image.cols; j++){R = image.at<Vec3b>(i, j)[0];G = image.at<Vec3b>(i, j)[1];B = image.at<Vec3b>(i, j)[2];R = R / 255.0;B = B / 255.0;G = G / 255.0;tmp = min(R, G);minV = min(tmp, B);tmp = max(R, G);maxV = max(tmp, B);V = maxV; // vdelta = maxV - minV;if (maxV != 0)S = delta / maxV; // selse{S = 0;}if (R == maxV)H = (G - B) / delta;else if (G == maxV)H = 2 + (B - R) / delta;elseH = 4 + (R - G) / delta;H *= 60;if (H < 0)H += 360;h = H / 2;s = S * 255.0;v = V * 255.0;hsv.at<Vec3b>(i, j).val[0] = h;hsv.at<Vec3b>(i, j).val[1] = s;hsv.at<Vec3b>(i, j).val[2] = v;}}}
0 0
- opencv,图像处理,rgb转换为hsv空间
- Delphi图像处理 -- RGB与HSV转换
- 【opencv+python】图像处理之一、颜色空间RGB,Gray与HSV
- 【OpenCV】颜色空间(RGB,HSV与Gray)及图像处理中的颜色识别
- RGB颜色空间转换为HSV空间颜色值
- Opencv的RGB到HSV颜色空间转换
- ios--OpenCV--RGB与HSV颜色空间的转换
- OpenCV之RGB与HSV颜色空间的转换
- 【OpenCV】颜色空间RGB与HSV(HSL)的转换
- 【OpenCV】颜色空间RGB与HSV(HSL)的转换
- Opencv的RGB到HSV颜色空间转换
- 图片RGB转换为HSV
- openCv RGB到HSV空间的学习
- opencv之Rgb图像转化到HSV、Lab空间,对各通道的操作
- RGB转换到HSV颜色空间
- RGB到HSV颜色空间的转换
- RGB和HSV空间的转换
- RGB到HSV颜色空间的转换
- 八大排序算法 java
- 热修复比较
- GraphX pregel接口
- Vegetable and Road [并查集]
- HDOJ题目分类
- opencv,图像处理,rgb转换为hsv空间
- 浅谈C/C++中运算符的优先级、运算符的结合性以及操作数的求值顺序
- 2017年3月4号。
- Dijistra求最短路(邻接表存储,前向星存储,堆优化)
- poj 1860 Bellman算法
- FastCGI和php-fpm的区别
- EasyClient实现IPCamera摄像机远程云台控制、语音对讲等功能
- TCP协议:三次握手,四次挥手
- Android开发library项目时,res资源和manifest配置