标记肤色

2021-09-29  本文已影响0人  大龙10

《OpenCV轻松入门:面向Python》读书笔记
作者:李立宗
出版社:电子工业出版社
出版时间:2019-05

第4章 色彩空间类型转换

4.4 HSV色彩空间讨论

4.4.4 标记肤色

1)推广

  在标记特定颜色的基础上,可以将标注范围进一步推广到特定的对象上。例如,通过分析可以估算出肤色在HSV色彩空间内的范围值。在HSV空间内筛选出肤色范围内的值,即可将图像内包含肤色的部分提取出来。
  这里将肤色范围划定为:

2)程序

【例4.10】提取一幅图像内的肤色部分。

# -*- coding: utf-8 -*-
import cv2
img=cv2.imread("lesson2.jpg")
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
h,s,v=cv2.split(hsv)
minHue=5
maxHue=170
hueMask=cv2.inRange(h, minHue, maxHue)
minSat=25
maxSat=166
satMask = cv2.inRange(s, minSat, maxSat)
mask = hueMask & satMask
roi = cv2.bitwise_and(img,img, mask= mask)
cv2.imshow("img",img)
cv2.imshow("ROI",roi)
cv2.waitKey()
cv2.destroyAllWindows()

3)运行结果

程序实现了将人的图像从背景内分离出来。提取后的图像仅保留了人像肤色(包含衣服)部分,背景为黑色。

上一篇 下一篇

猜你喜欢

热点阅读