新聞中心
大數(shù)據(jù)文摘出品

作者:曹培信、寧靜
一年一度的大學(xué)開學(xué)季,一年一度的軍訓(xùn)季。
在六月中旬高考結(jié)束之后,萬千學(xué)子迎來了他們?nèi)松凶铋L也是最無憂無慮的假期,到了八月底九月初,他們將踏上人生的一段重要旅程——大學(xué)。
然而等待他們的第一課,便是軍訓(xùn)。
每所高校對軍訓(xùn)的要求不同,從時間來看,短的只有5天,長的多達(dá)一個月,根據(jù)網(wǎng)上一份軍訓(xùn)時間排行榜,比如清華大學(xué),以34天穩(wěn)居第二。(警校排第一也是無可厚非了,不過吉林的院校確實熱衷軍訓(xùn),前十中兩所吉林的院校上榜)
除了一些開始又晚、時間又長的院校(比如重慶大學(xué)),大部分院校的軍訓(xùn)應(yīng)該已經(jīng)結(jié)束了,然而經(jīng)歷了軍姿、齊步、正步、閱兵甚至拉練的“摧殘”后,軍訓(xùn)歲月在身上留下的最深的痕跡便是——曬!黑!了!
圖片來自網(wǎng)絡(luò)
軍訓(xùn)前和軍訓(xùn)后,就是“白古”和“黑古”的差別啊!想知道自己軍訓(xùn)后究竟曬黑了多少么?下面文摘菌就帶你用Python看看,自己究竟軍訓(xùn)后黑了幾個度。
基于RGB和YCbCr顏色空間的混合膚色檢測
想知道自己的皮膚顏色,首先要將皮膚檢測出來。
膚色檢測有很多方法,比如:
- 基于RGB的顏色空間模型;
- 基于橢圓皮膚模型的皮膚檢測;
- YCrCb顏色空間Cr分量+Otsu法閾值分割;
- 基于YCrCb顏色空間Cr,Cb范圍篩選法;
- HSV顏色空間H范圍篩選法;
- opencv自帶膚色檢測類AdaptiveSkinDetector;
相關(guān)鏈接:https://blog.csdn.net/qq_22527639/article/details/81501565
2004年,Georgy Kukharev和Adam Nowosielski為了提高模型的穩(wěn)定性,將多個顏色空間結(jié)合,提出RGB顏色空間和YCbCr顏色空間的混合膚色檢測器。像素值滿足如下條件:
實現(xiàn)的代碼也很簡單,首先引入必要的包:
- import cv2
- import numpy as np
- from matplotlib import pyplot as plt
然而操縱圖像,將RGB顏色空間3通道的值和YCbCr顏色空間3通道的值結(jié)合起來,然后根據(jù)判別條件進(jìn)行膚色檢測:
- def skin_color(imgFile):
- # load an original image
- img = cv2.imread(imgFile)
- rows,cols,channels = img.shape
- # convert color space from rgb to ycbcr
- imgYcc = cv2.cvtColor(img, cv2.COLOR_BGR2YCR_CB)
- # convert color space from bgr to rgb
- img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
- # prepare an empty image space
- imgSkin = np.zeros(img.shape, np.uint8)
- # copy original image
- imgimgSkin = img.copy()
- s=0
- sum_R=sum_G=sum_B=0
- for r in range(rows):
- for c in range(cols):
- # non-skin area if skin equals 0, skin area otherwise
- skin = 0
- # get values from rgb color space
- R = img.item(r,c,0)
- G = img.item(r,c,1)
- B = img.item(r,c,2)
- # get values from ycbcr color space
- Y = imgYcc.item(r,c,0)
- Cr = imgYcc.item(r,c,1)
- Cb = imgYcc.item(r,c,2)
- # skin color detection
- if R > G and R > B:
- if (G >= B and 5 * R - 12 * G + 7 * B >= 0) or (G < B and 5 * R + 7 * G - 12 * B >= 0):
- if Cr > 135 and Cr < 180 and Cb > 85 and Cb < 135 and Y > 80:
- # print 'Skin detected!'
本文名稱:拍個自拍,讓Python告訴你,軍訓(xùn)過后你黑了幾度?
網(wǎng)頁鏈接:http://m.fisionsoft.com.cn/article/coisise.html


咨詢
建站咨詢
