騰訊優人臉檢測
wx.request(OBJECT)
使用接口
/youtu/api/detectface
這裏說明了這個接口需要壹個簽名和appid,圖片數據需要轉成base64
本來是使用canvas實現圖片截圖,在通過upng.js 轉成base64位截圖,但是後來發現這樣生成的圖片文件量太大了;
導致檢測接口經常超過限制5M;
wx.request(OBJECT)有個參數responseType設置響應參數數據,再通過wx.arrayBufferToBase64()轉成base64
wx.request({
url:path,//圖片路徑
method:'GET', ?
responseType: 'arraybuffer',
success:function(res){ ?
let base64 = wx.arrayBufferToBase64(res.data); ?
that.getSignature(base64, path);//獲取簽名
} ?
});
簽 名Signature和appid通過後臺服務器設置傳給妳
之後就可以發送請求到 /youtu/api/detectface 接口了
wx.request({ ?
url: '/youtu/api/detectface',
data: { ?
'app_id': 'id',//優圖appid ?
'image': base64, ?
'mode': 1,
?}, ?
method: 'POST',
?header: { ?
'Content-type': 'text/json', // text
?'Authorization': signature, //簽名
?}, ?
success: function(res) { ?
console.log(res.data) ?
var data = res.data; ?
var code = data.errorcode; ?
if(code == 0){
console.log(face_info) ?
console.log('存在頭像'); ?
}else{
?console.log('不存在頭像');
?} ?
}
?})
這裏有幾點要註意的,文檔上面傳字段
請求頭
signature 修改為 Authorization
請求包體
id 修改為 app_id
接口返回數據
errorcode為0的時候表示識別出人臉了?
其他狀態都是無法識別出人臉
如:
總的來說 接口功能很強大 響應速度也非常快
這個平臺還有好多接口,暫時未探索
文檔
優圖人臉識別文檔
騰訊優圖開放平臺
微信小程序開發文檔