R语言:用微软的深度学习得到人脸的特征数据

本文系转载,原地址:http://blog.csdn.net/wzgl__wh/article/details/52904069

微软的深度学习https://www.microsoft.com/cognitive-services/en-US/subscriptions,使用Face功能来检测人脸的特征。下面用R语言来跑下案例:

> img.url = 'https://www.whitehouse.gov/sites/whitehouse.gov/files/images/first-family/44_barack_obama[1].jpg'
> faceURL = "https://api.projectoxford.ai/face/v1.0/detect?returnFaceId=true&returnFaceLandmarks=true&returnFaceAttributes=age"
> faceKEY = 'a868182e859c4458953f69dab084f5e8'
> mybody = list(url = img.url)
> faceResponse = POST(  
+   url = faceURL,   
+   content_type('application/json'), add_headers(.headers = c('Ocp-Apim-Subscription-Key' = faceKEY)),  
+   body = mybody,  
+   encode = 'json'  
+ )
> faceResponse
Response [https://api.projectoxford.ai/face/v1.0/detect?returnFaceId=true&returnFaceLandmarks=true&returnFaceAttributes=age]
  Date: 2017-01-03 04:33
  Status: 200
  Content-Type: application/json; charset=utf-8
  Size: 1.19 kB

> ObamaR = httr::content(faceResponse)[[1]]
> OR<-as.data.frame(as.matrix(ObamaR$faceLandmarks))
> OR
                              V1
pupilLeft           475.4, 158.6
pupilRight          590.6, 157.3
noseTip             534.4, 227.7
mouthLeft           460.8, 273.7
mouthRight          603.6, 268.2
eyebrowLeftOuter    425.2, 154.8
eyebrowLeftInner    508.4, 142.3
eyeLeftOuter        458.6, 162.6
eyeLeftTop          473.6, 153.8
eyeLeftBottom       475.9, 164.9
eyeLeftInner        492.8, 162.0
eyebrowRightInner   552.3, 141.4
eyebrowRightOuter   636.0, 156.2
eyeRightInner       571.7, 159.9
eyeRightTop         588.1, 152.5
eyeRightBottom      587.4, 163.9
eyeRightOuter       605.5, 161.5
noseRootLeft        511.2, 163.4
noseRootRight       551.2, 163.0
noseLeftAlarTop     503.1, 204.6
noseRightAlarTop    559.2, 201.6
noseLeftAlarOutTip  485.3, 226.9
noseRightAlarOutTip 580.5, 224.1
upperLipTop         530.9, 264.3
upperLipBottom      532.1, 272.5
underLipTop         530.3, 305.1
underLipBottom      532.5, 318.6
> OR$V2 <- lapply(strsplit(as.character(OR$V1), "\\="), "[", 2)
> OR$V2 <- lapply(strsplit(as.character(OR$V2), "\\,"), "[", 1)
> colnames(OR)[2] <- "X"
> OR$X<-as.numeric(OR$X)
> OR$V3 <- lapply(strsplit(as.character(OR$V1), "\\y = "), "[", 2)
> OR$V3 <- lapply(strsplit(as.character(OR$V3), "\\)"), "[", 1)
> colnames(OR)[3] <- "Y"
> OR$Y<-as.numeric(OR$Y)
> OR$V1<-NULL
> OR
                        X     Y
pupilLeft           475.4 158.6
pupilRight          590.6 157.3
noseTip             534.4 227.7
mouthLeft           460.8 273.7
mouthRight          603.6 268.2
eyebrowLeftOuter    425.2 154.8
eyebrowLeftInner    508.4 142.3
eyeLeftOuter        458.6 162.6
eyeLeftTop          473.6 153.8
eyeLeftBottom       475.9 164.9
eyeLeftInner        492.8 162.0
eyebrowRightInner   552.3 141.4
eyebrowRightOuter   636.0 156.2
eyeRightInner       571.7 159.9
eyeRightTop         588.1 152.5
eyeRightBottom      587.4 163.9
eyeRightOuter       605.5 161.5
noseRootLeft        511.2 163.4
noseRootRight       551.2 163.0
noseLeftAlarTop     503.1 204.6
noseRightAlarTop    559.2 201.6
noseLeftAlarOutTip  485.3 226.9
noseRightAlarOutTip 580.5 224.1
upperLipTop         530.9 264.3
upperLipBottom      532.1 272.5
underLipTop         530.3 305.1
underLipBottom      532.5 318.6

就这样得到了人的脸部数据,感觉可以用于比较人与人之间长相的差别。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值