前言

因为识岁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实现【完结】的更多相关文章

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

    前言 做app不得不谈的问题就是文件上传.用hbuilder开发app让上传变的非常easy. Uploader Uploader模块管理网络上传任务,用于从本地上传各种文件到server,并支持跨域 ...

  2. HBuilder开发App教程06-首页

    实战 前面几节基本是一些概念的普及, 正如前面提到的,本教程会以滴石作为范例进行解说, 有兴趣的能够先行下载体验一下.或者下载源代码研究下. 新建项目 打开HBuilder,在项目管理器中右键--新建 ...

  3. HBuilder开发App教程04-最难搞定的是mui

    前言 前几篇说到一些HBuilder开发app的基础教程, 现在来说一下HBuilder开发app的难点,或者说是上手的难点, 就是mui, 如果你没有研究mui就贸然的上手HBuilder,那你的开 ...

  4. HBuilder开发App教程05-滴石和websql

    滴石 介绍 滴石是用HBuilder开发的一款计划类app. 用到HBuilder,mui.nativejs以及h5一些特性. 预期 眼下仅仅开发到todolist级别, 以后计划做成日计划,月计划, ...

  5. 利用python开发app实战

    你说,我们的未来 被装进棺材,染不上尘埃 *** 我很早之前就想开发一款app玩玩,无奈对java不够熟悉,之前也没有开发app的经验,因此一直耽搁了.最近想到尝试用python开发一款app,goo ...

  6. HBuilder开发APP自动登录时跳过"登录页面"

    刚接触开发公司APP项目,用HBuilder开发工具. manifest.json中的入口页面就是"登录页面",现在获取到自动登录状态是true,但是真机联调时"登录页面 ...

  7. hbuilder 开发app 自动升级

    使用huilder 开发app  ,实现app升级功能 1. var wgtVer = null; //用于获取系统当前版本 var currentversion = null; //用于获取系统最新 ...

  8. 学用HBuilder开发App的看过来

    自己的呕心沥血之作吧,花了一年时间,系统介绍HTML5 App开发的相关技术. 越来越多的公司采用HTML5来快速开发移动跨平台App,它支持当前市场流行的移动设备. 本书主要介绍了HTML5在移动A ...

  9. HBuilder开发App Step1——环境搭建,HelloMUI 以及真机调试

    No1. 必须搭建java环境 只需要最基础的java环境,也就是cmd下可以运行java和javac即可, 具体教程请自行百度,都会有很详细的教程,这里不重点介绍. No2. 下载安装HBuilde ...

随机推荐

  1. Internet Explorer Developer Channel 自动化测试 IE 浏览器

    IE 原生 Web Driver 调用,通过简单配置,即可自动化测试 IE 浏览器(目前仅限 Internet Explorer Developer Channel 版本).做一些自动化的操作,都是很 ...

  2. 【深入篇】自定义ExpandableListView,实现二级列表效果

    先看效果图: 上图是我们要实现的效果,那么现在我们开始着手去做,主要分为以下几步: 一丶我们需要根据效果图去思考该如何动手,从上图分析看,我们可以用一个相对布局RelativeLayout来完成gro ...

  3. php session目录无法写进数据的问题

    打算开启php的session功能,并将session信息存到文件里. 修改php.ini,开启session功能: #将session信息存到文件中session.save_handler = fi ...

  4. vue分页组件火狐中出现样式问题

    分页的操作到了火狐浏览器会样式 怎么解决? 其实就是将input的type属性变成了text,因为number属性会变成上下的小箭头

  5. 容器配置https

    生成秘钥库 通过jdk的keytool工具生成秘钥库 keytool -genkeypair -alias "localhost" -keyalg "RSA" ...

  6. CF245H Queries for Number of Palindromes(回文树)

    题意翻译 题目描述 给你一个字符串s由小写字母组成,有q组询问,每组询问给你两个数,l和r,问在字符串区间l到r的字串中,包含多少回文串. 输入格式 第1行,给出s,s的长度小于5000 第2行给出q ...

  7. 【转】 HTML解析:基于XPath的C#类库HtmlAgiliytyPack

    [转] HTML解析:基于XPath的C#类库HtmlAgiliytyPack 最近处于毕业设计开始阶段,前期工作需要去国外的一些专业数据库网站比对一些所需TF家族信息,为了快捷方便,想到用程序去帮助 ...

  8. cacti1.1安装报错

    安装过程中出现以下报错: ERROR: Your MySQL TimeZone database is not populated. Please populate this database bef ...

  9. Java NIO和IO的主要差别

    我应该何时使用IO,何时使用NIO呢?在本文中,我会尽量清晰地解析Java NIO和IO的差异.它们的使用场景.以及它们怎样影响您的代码设计. Java NIO和IO的主要差别 下表总结了Java N ...

  10. 同一个事务里 查询 已删除可是未提交的数据[bug记录]

    前几天犯了个低级错误.在一个事务方法里老是查询不到某条记录,可是debug卡住时,用db工具查.又能查出值. 经过一番折腾,原来是我在同一个事务里 查询 了已删除可是未提交的数据.当然查询不到了! . ...