代码:

/*
输入:rgb图像
输出:与输入图像尺寸相同的灰度图,若rgb图中某像素检测为肤色,则灰度图中对应像素为255,否则为0
*/
void SkinRGB( Mat &rgb,Mat &dst){assert(rgb.channels() == 3 );const int R = 2;const int G = 1;const int B = 0;dst = Mat::zeros(rgb.rows, rgb.cols, CV_8U);for (int i = 0; i < rgb.rows; i++){Vec3b* ptr = rgb.ptr<Vec3b>(i);uchar* ptr_mask = dst.ptr<uchar>(i);for (int j = 0; j < rgb.cols; j++){Vec3b pixel = ptr[j];if ((pixel[R] > 95 && pixel[G]>40 && pixel[B] > 20 &&pixel[R] - pixel[B]>15 && pixel[R] - pixel[G]>15) || (pixel[R]>200 && pixel[G]>210 && pixel[B]>170 &&abs(pixel[R] - pixel[B]) <= 15 && pixel[R]>pixel[B] && pixel[G]>pixel[B])){ptr_mask[j] = 255;}}}}

效果:

转载于:https://www.cnblogs.com/bluebean/p/5624982.html

肤色检测一例-使用rgb颜色模型相关推荐

  1. 基于OpenCV的火焰检测(二)——RGB颜色判据

    上文跟大家分享了在做火焰检测中常用到的图像预处理方法,从这一篇博文开始,我将向大家介绍如何一步一步地检测出火焰区域.火焰提取要用 到很多判据,今天我要向大家介绍的是最简单的但是很有效的判据--RGB判 ...

  2. 【车牌识别】RGB颜色模型车牌识别【含GUI Matlab源码 888期】

    ⛄一.车牌识别简介 1 车牌图像处理 车牌图像处理主要有五个组成部分:图像灰度化.图像二值化.图像边缘检测.图像形态学运算和图像滤波处理.它是车牌识别系统中最根本且最基础的操作,车牌图像处理的好坏情况 ...

  3. 无聊的时候写了个颜色识别算法,基于RGB颜色模型

    halcon是个好东西,里面有诸多的"轮子",随着版本的迭代"轮子"会越来越多越来越全面和完善.我用的halcon12里面有一种颜色识别的算法,它这种颜色识别是 ...

  4. 【iOS】用RGB颜色模型实现彩虹渐变

    粗略的在网上搜索了一下没有找到现成答案,就自己动手实现了一下. 实现思路: 先在网上查到赤橙黄绿青蓝紫的rgb值,观察规律,然后用循环实现. 赤 (255,0,0) 橙 (255,165,0) 黄 ( ...

  5. 颜色模型与颜色应用---RGB颜色模型

    2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/liyangke/blog/2876997

  6. Opencv暑期历程--Day10(6种肤色检测方法,YCrCb肤色模型解释,再理解一遍掩模)

    从一篇文章了解到,肤色检测主要有以下七种方法: RGB color space Ycrcb之cr分量+otsu阈值化 YCrCb中133<=Cr<=173 77<=Cb<=12 ...

  7. MATLAB中颜色模型介绍级各模型之间转换(RGB、HSV、NTSC、YCbCr、HSI)

    1.颜色模型定义 2.各颜色模型简介 3.颜色模型的转换 一.颜色模型定义 颜色模型:某个三维颜色空间中的一个可见光子集,它包含某个颜色域的所有颜色.例如,RGB颜色模型就是三维直角坐标颜色系统的一个 ...

  8. 前端需要了解的颜色模型,RGB、HSL和HSV

    目录 RGB模型 RGB颜色值 rgb 转 hex hex 转 rgb HSL模型 HSV(B)模型 RGB 与 HSL 的转换 rgb 转 hsl hsl 转 rgb 颜色模型,是用来表示颜色的数学 ...

  9. HSI、HSV、RGB、CMY、CMYK、HSL、HSB、Ycc、XYZ、Lab、YUV等颜色模型简介

    基本概念 所谓颜色模型就是指某个三维颜色空间中的一个可见光子集,它包含某个颜色域的所有颜色.例如,RGB颜色模型就是三维直角坐标颜色系统的一个单位正方体.颜色模型的用途是在某个颜色域内方便的指定颜色, ...

最新文章

  1. 深入理解Ribbon之源码解析
  2. 【Linux】函数与参数
  3. 道路 [NOIP模拟]
  4. 编写一个求和函数sum,使输入sum(2)(3)或输入sum(2,3),输出结果都为5
  5. 判断页面是否加载完成
  6. 订单生产计划表范本_生产计划管理与物料控制的实施步骤与要领
  7. 虚拟化实验室推进计算机网络专业实践教学的解决方案(论文体)
  8. linux精简、备份还原、iso文件、批量安装?
  9. 200行代码,7个对象——让你了解ASP.NET Core框架的本质[3.x版]
  10. net core WebApi——使用xUnits来实现单元测试
  11. Ubuntu 安装 Vue.js
  12. 巨蟒python全栈开发linux之centos1
  13. 链桨PaddleDTX系列 - xdb源码分析(一)
  14. python爬虫面试代理池_Python爬虫代理池搭建的方法步骤
  15. 苹果手机怎么设置来电铃声?4个步骤,快速学会
  16. WAF是什么东西?!--- 1 waf的功能和用到的技术原理介绍
  17. iOS.用3D touch长按图标来实现快捷操作
  18. mysql 主键 sql语句_Mysql 增加主键或者修改主键的sql语句操作
  19. oracle的脚本日志,学习笔记:Oracle alert日志文件巡检脚本
  20. mysql赋权与收回权限(grantrevoke)

热门文章

  1. C++基础教程之函数重载,什么是C++函数重载?
  2. HDFS集群常见异常及排查步骤
  3. 南阳OJ 16 矩形嵌套
  4. RHEL7.0 防火墙入门
  5. CentOS5.6系统中安装并使用USB无线网卡(配置成功) 转
  6. VC与JAVA DES加密算法互操作
  7. 程序员面试金典——17.12整数对查找
  8. 程序员面试金典——17.9词频统计
  9. FPI(Fixed-point Iteration)不动点迭代法——迭代求方程的方法
  10. LMS Algorithm 最小均方算法