目录

  • 标记肤色
  • 实现艺术效果

标记肤色

前面,我们通过标记H通道上的红色,从而提取图片上的红色有效区域。那么同样的,我们可以限定肤色的范围,提取人脸的,以达到抠图的效果。

首先,肤色不仅要关注H通道,同样也需要关注S通道。所以,我们首先需要介绍一个函数:split(),定义如下:

img = cv2.imread("4.jpg")
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
h, s, v = cv2.split(hsv)

如上面代码所示,我们可以通过cv2.splite()函数,来获取HSV图像上,所有通道的值。

首先,我们假定人的肤色的大致范围,其色调在[5,170]之间,饱和度在[25,166]之间。这样,我们可以按上一节的内容来获取限定范围内的图像,代码如下所示:

import cv2img = cv2.imread("4.jpg")
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
h, s, v = cv2.split(hsv)
hmask=cv2.inRange(h,5,170)
smask=cv2.inRange(s,25,166)
mask=hmask & smask
result=cv2.bitwise_and(img,img,mask=mask)
cv2.imshow("img",img)
cv2.imshow("result", result)
cv2.waitKey()
cv2.destroyAllWindows()

运行之后,只要与皮肤颜色相近的图像,都会被提取出来,而其他部分都会变成黑色。

实现艺术效果

前面,我们介绍了各种HS通道的应用,一直没有单独的或者强调V的重要性。这里,我们来通过V通道的值,实现一些有趣的艺术效果。

import cv2img = cv2.imread("9.jpg")
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
h, s, v = cv2.split(hsv)
v[:,:]=255
newHSV=cv2.merge([h,s,v])
result=cv2.cvtColor(newHSV,cv2.COLOR_HSV2BGR)
cv2.imshow("img",img)
cv2.imshow("result", result)
cv2.waitKey()
cv2.destroyAllWindows()

运行之后,有点非主流的感觉。

HSV标记肤色与实现艺术效果---OpenCV-Python开发指南(9)相关推荐

  1. Python开发指南[1]之程序员计时小时钟(附源码)

    Python开发指南[1]之程序员计时小时钟 程序之美 前言 主体 运行效果 核心代码 逻辑分析 结束语 程序之美 前言 Python作为一门编程语言,这门语言的魅力和影响力已经远超C#.C++等编程 ...

  2. 太赞了!Win 平台最佳Python 开发指南!

    入门: 最全的零基础学Python的问题 | 零基础学了8个月的Python | 实战项目 |学Python就是这条捷径 干货:爬取豆瓣短评,电影<后来的我们> | 38年NBA最佳球员分 ...

  3. python没有联网_无网环境下的 Python 开发指南

    说起有关 Python 的指南,便一定得提到 K 神创建的『Python最佳实践指南』,英文名字是『The Hitchhiker's Guide to Python!』.毫不夸张地说,K 神创建的指南 ...

  4. 【转】Python开发指南:最佳实践精选

    总体原则 价值 "为别人开发你也想要使用的工具." --Kenneth Reitz "简洁总是胜过可用." --Pieter Hintjens "满足 ...

  5. 微软400集python课程-最强福利——来自微软的Python学习教程(开发指南)

    各位小伙伴们,大家有多久没有发现柳猫这么勤奋的更新啦~ 今天给小伙伴们带来微软的官方福利,你没看错,就是来自微软的官方Python学习教程(开发指南)~ 之前微软上线过一套 Python 教程< ...

  6. 微软 python教程_最强福利——来自微软的Python学习教程(开发指南)

    各位小伙伴们,大家有多久没有发现柳猫这么勤奋的更新啦~ 今天给小伙伴们带来微软的官方福利,你没看错,就是来自微软的官方Python学习教程(开发指南)~ 之前微软上线过一套 Python 教程< ...

  7. python timeit用法_十大Python开发技巧

    Python开发指南, 超级实用足以让您震撼 > Photo by Christina Morillo from StockSnap 时不时地,当我了解Python的新功能时,或者我发现其他一些 ...

  8. OpenCV+Python 彩色图片的 BGR、灰度图、HSV分量图显示的程序

    OpenCV+Python 彩色图片的 BGR.灰度图.HSV分量图显示的程序 介绍 OpenCV+Python 使用openCV中的split()函数和 cvtColor()函数提取一张彩色图片的B ...

  9. Opencv色彩空间(GRAY、XYZ、HSV、YCrCb、HLS)展示,以及利用HSV标记指定的颜色

    本文简单介绍了几个常见的色彩空间转换: 因为HSV应用非常广泛,所以单独介绍其强大的功能: 本文用到的两个原始图像,如下图所示: 目录 一.Opencv色彩空间(GRAY.XYZ.HSV.YCrCb. ...

最新文章

  1. Python 爬虫 - Instagram异步协程
  2. IBM遭标普下调评级
  3. 第二章:Android系统与嵌入式开发读书笔记
  4. Laravel提交POST请求报错
  5. 可伸缩搜索框 旋转实现loading
  6. 云效 Flow——Java构建并通过云效上传二方库到 Maven 私有仓库
  7. C语言Prims求最小生成树MST的算法(附完整源码)
  8. Teams App设备的地理位置能力
  9. Ubuntu下OpenResty搭建高性能服务端
  10. ASP中Application与Sesstion对象的使用实例
  11. 一文了解11个常见的多变量分析方法!
  12. 局域网传文件_秒杀QQ微信,这3个神器传输文件快10倍
  13. batchplot插件用法_怎么使用Batchplot命令批量打印CAD图纸
  14. pdf 天线理论与技术 钟顺时_钟顺时. 天线理论与技术[M]. 北京:电子工业出版社, 2011: 290-296....
  15. 【css默认设置】---- 关于CSS Reset 那些事(一)之 历史演变与Normalize.css
  16. 【web前端】20.手机端网页禁止长按图片保存图片
  17. Python基础知识之面向对象编程介绍(二)
  18. source insight中文乱码
  19. windows10系统桌面图标小盾牌去除方法
  20. 【数据结构(2)】1.2 数据结构的基本概念和术语

热门文章

  1. 智慧沃家服务器暂无响应 请稍后再试,联通沃家电视登录失败
  2. python的变量的输入和输出之input函数和类型转换函数详解
  3. 继奇瑞小蚂蚁之后奇瑞新能源的又一力作,奇瑞无界Pro正式上市
  4. 关于padStart的问题
  5. Springer的latex模版小坑
  6. OpenGL中平移函数glTranslatef()、旋转函数glRotatef()的理解(非常好的文章)
  7. 那些令人难忘的IT产品
  8. 基于xilinx-MMCM输出时钟相位调整的实现
  9. matlab2018a中文乱码,电脑在Matlab R2014a输入代码显示乱码的解法
  10. FPN论文解读 和 代码详解