標籤:action val app ges 微軟 isa alt 開發app www
前言
因為識歲app比較簡單。所以這節就完結吧,
當然另一些能夠最佳化完好的地方,可是個人興趣不是非常大,
有想繼續完好的,原始碼在這裡:https://github.com/uikoo9/shisui
face++
在簡單的介紹下face++,
不久前,微軟推出了一個識別人年齡的網站:http://how-old.net/。
不得不說微軟的演算法牛逼,資料海量,本人測試的時候非常準確。
可是據說要借入微軟的介面比較麻煩。就找了一個國內的類似介面,face++,
官網宣稱。非常多國內的app都在使用。比如美圖秀秀等,
暫且哪來用一用。
效果嘛,
非常多時候都不好,會提示找不到人臉。用官網的示範範例測試了下,確實是這樣,而不是本人的用法有誤。
官網示範範例:http://www.faceplusplus.com.cn/demo-detect/
face++的js實現
儘管效果不好。可是還得用。。
首先來到開發人員中心:http://www.faceplusplus.com.cn/uc_home/。
也就是文章頂部的圖片。看到。須要進行一些注冊,比較簡單,略過。
再然後找到api,發現一個須要的介面,識別人臉:http://www.faceplusplus.com.cn/detection_detect/。
這個介面的必須參數是ak,sk,url,
至於img直接post。我是沒有研究明確怎麼搞。
代碼
// face ppqiao.facepp = { ak : ‘3bbeeac39cd5e8600d2cb05ac97f15fd‘, sk : ‘4lf9qM6e7GVLVAfKYITYx9R7GX6_5Taa‘};qiao.facepp.do = function(options){ var url = options.url; var attr = options.attr || ‘gender,age‘; var method = options.method || ‘detection/detect‘; var success = options.success; var fail = options.fail; new FacePP(qiao.facepp.ak, qiao.facepp.sk).request(method, { url: url, attribute: attr }, function(err, result) { if(err){ fail(); }else{ success(result); } });};
代碼比較簡單
qiao.facepp。初始化資訊。也就是你的ak,sk
qiao.facepp.do,開始訪問介面,這裡僅僅須要傳入圖片的url地址就可以。
識歲代碼
function facepp(){ if(url){ qiao.facepp.do({ url : url, success : function(result){ if(result && result.face && result.face.length){ var face = result.face[0].attribute; var str = ‘識別成功!性別:‘ + (face.gender.value == ‘Male‘ ? ‘男‘:‘女‘) + ‘,年齡:‘ + face.age.value; showRes(str); }else{ showRes(‘識別失敗。請上傳包括人臉的圖片!‘); } }, fail : function(){ showRes(‘識別失敗,請重試!‘); } }); }}function showRes(msg){ $(‘#res‘).text(msg); endw();}function beginw(){ $(‘#faceBtn‘).attr(‘disabled‘, true); qiao.h.waiting();}function endw(){ qiao.h.closeWaiting(); $(‘#faceBtn‘).attr(‘disabled‘, false);}
接上幾節的代碼,
1.首先點擊圖片,彈出actionsheet——第一節
2.選擇相片或者拍照然,也就是Camera和gallery組件——第二節
3.檔案上傳,Uploader組件——第三節
4.上傳到七牛雲。須要獲得uptoken——第四。五節
5.利用face++進行之別,也就是本節
很多其它教程:
Hbuilder開發App實戰1-識歲:http://uikoo9.com/book/detail/5
很多其它學習筆記:http://uikoo9.com/book
Hbuilder開發app實戰-識歲06-face++的js實現【完結】