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

 

前言

 

由于识岁app比较简单,所以这节就完结吧,

当然还有一些可以优化完善的地方,但是个人兴趣不是很大,

有想继续完善的,源码在这里:GitHub - uikoo9/shisui: hbuilder开发的人脸识别app,http://uikoo9.com/project/shisui

face++

在简单的介绍下face++,

不久前,微软推出了一个识别人年龄的网站:http://how-old.net/

不得不说微软的算法牛逼,数据海量,本人测试的时候很准确。

但是据说要借入微软的接口比较麻烦,就找了一个国内的类似接口,face++,

官网宣称,很多国内的app都在使用,例如美图秀秀等,

暂且哪来用一用,

效果嘛,

很多时候都不好,会提示找不到人脸,用官网的示例测试了下,确实是这样,而不是本人的使用方法有误,

官网示例:人脸检测 - 旷视Face⁺⁺人工智能开放平台

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++进行之别,也就是本节

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

uikoo9

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值