Hbuilder开发app实战-识岁06-face++的js实现完结

Posted liguangsunls

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hbuilder开发app实战-识岁06-face++的js实现完结相关的知识,希望对你有一定的参考价值。

技术分享

前言

因为识岁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 pp
qiao.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实现完结的主要内容,如果未能解决你的问题,请参考以下文章

Hbuilder开发app实战-识岁03-文件上传

HBuilder开发App教程06-首页

混合App开发,HBuilder开发移动App

开发App :认识HBuilder

使用HBuilder开发移动APP

app开发很难?HBuilder+MUI写`app`,非常简单易懂