美文网首页
How-old 刷脸神器 知识点学习总结

How-old 刷脸神器 知识点学习总结

作者: fc82bb084ee7 | 来源:发表于2017-12-18 12:24 被阅读8次
实现的功能

在照片中的人脸上方, 显示年龄, 性别, 人种信息.


face_1.jpg
原理分析

分析人脸信息, 得出年龄等信息是通过机器学习来实现的, 例子中使用的就是face++提供的SDK来完成人脸信息识别功能的.
https://www.faceplusplus.com.cn/
对于上层App的开发来说, 本质上来说, 是通过把照片转换为bitmap对象, 然后把bitmap对象转化为字节数组, 以post的方式, 向服务器发送http请求. 服务器返回json字符串, 里面给出分析结论, json中描述的主要的信息包括: 人脸区域中心点在图片中的坐标(以百分比的形式给出), 人脸区域的宽高值(以百分比的形式给出), 人脸的年龄, 性别, 人种信息.

既然是通过http post请求的方式来实现的, 为什么还要提供一个SDK呢?

这样做的目的是为了方便上层App的使用, 这个SDK存在的目的实际上就是提供更方便的API给用户, 帮助用户去拼接http请求中的各个参数. 本质上来说, 最终还是通过http请求来完成人脸识别的.

学习到的几个知识点
  1. 设计API的一个好经验
    我们设计API的时候经常碰到这样的场景. 例如 detect(Bitmap) API 获取图片的人脸信息. 当检测成功时, 返回一个json对象代表结果. 当检测失败时, 需要返回一个值代表获取失败. 如果把API设计成这样:
public Json detect(Bitmap bitmap) 

就不适合这种场景. 当然也可以凑合着约定当返回的Json对象为Null时代表监测失败的情况, 但这样的API设计的并不优雅. 要想优雅的实现这个API. 最好的方式是新写一个Callback interface来实现.


face_2.jpg

当检测成功时, 调用callback对象的success(Json json) 把json对象传给API的使用者. 当检测失败时, 调用callback对象的error把错误的原因告诉API的使用者.


face_3.jpg
  1. 好的代码规范.
    xml中View的id以 "id_ " 开头.


    face_4.jpg
  1. Textview转化成Bitmap对象
    显示年龄的框是通过canvas.drawBitmap来实现的, 这样做的好处是可以方便的指定这个框的具体坐标. 而上面的框通过一个TextView来完成比较合适, 这就需要把一个TextView转换为一个Bitmap对象. 这就用到了setDrawingCacheEnabled(true) 这个API.
TextView tv = (TextView) findViewById(R.id.textview);  
 tv.setText(string);  
 tv.setDrawingCacheEnabled(true);  
 tv.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED), View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));  
 tv.layout(0, 0, tv.getMeasuredWidth(), tv.getMeasuredHeight());  
 Bitmap bitmap = Bitmap.createBitmap(tv.getDrawingCache());  
//千万别忘最后一步  
 tv.destroyDrawingCache();

---DONE.---

相关文章

  • How-old 刷脸神器 知识点学习总结

    实现的功能 在照片中的人脸上方, 显示年龄, 性别, 人种信息. 原理分析 分析人脸信息, 得出年龄等信息是通过机...

  • 中级通信工程师

    复习策略 熟悉阶段:熟悉教材巩固阶段:刷真题,学习高频考点查缺补漏阶段:错题回归及知识点总结 综合能力 共10章,...

  • 刷脸

    (纯属调侃,请勿对号……) 公司换了新的考勤机,高大上的。 原先是刷指纹,一到冬天干燥考勤机也变得懒散,经常罢工。...

  • 刷脸

    刷脸机给我道过早安我被工作禁锢在方盒里。 计划中的,意料外的,小题大做,领导独唔。电脑要快,网络要通,有喧有静,写...

  • 刷 脸

    最近,我莫名地感到了生存危机,到那都要“刷脸”,进入了“刷脸”时代,让人有一种被淘汰的感觉。 退...

  • 刷脸

    “不吃了,太胖了。”小美一返常态,不高兴挂在脸上。她把没吃完的好吃儿贡献出来了。 “怎么了?”我不解地问。若无其事...

  • 刷脸

    刘敬尧把他那张自认为还很帅气的脸对准人脸识别装置,系统不到5秒钟便完成了确认,刷脸成功。 他转身离开了机器,出...

  • 刷脸

  • 刷脸

    巡视组走后,单位就换了刷脸机 按指纹,我们也从来不作假 随他吧! 下午五点,门口挤了一堆人 大家七嘴八舌 原来刷脸...

  • 刷脸

    刷脸(小小说) 杨璠 李梅一改晚起的习惯,六点就爬起来,用“露娜”仔细地洗过脸,再用“R...

网友评论

      本文标题:How-old 刷脸神器 知识点学习总结

      本文链接:https://www.haomeiwen.com/subject/vwnpwxtx.html