目前我正在开发适用于Android手机的应用。 我们想要检测脸部的特征。 程序应该能够检测眼睛,鼻子,嘴巴和脸部边缘的位置。

准确性应该没问题,但不一定要完美。 可以放松一些准确性以加快速度。 所有的面都是正面的,我们之前会知道这些特征的大致位置。 我们不需要实时检测。 应从保存的图像中提取要素。 检测时间应该只要不影响用户体验。 所以即使2或3秒也可以。

有了这个假设,find一个能让我们实现这个目标的库不应该太难。 但我的问题是,最好的方法是什么? 你的建议是什么? 这是我第一次为Android开发,我不想跑错方向。 对我们来说这是一个好主意,还是我自己实现一些现有算法更好(更快/更高精度)?

我google了很多,我发现了很多有趣的东西。 Android API中还有面部检测function。 但返回的face class( http://developer.android.com/reference/android/media/FaceDetector.Face.html )仅包含眼睛的位置。 这对于我们的应用来说更少。 然后还有适用于Android或JavaCV的OpenCV。 您认为合作的好主意是什么? 对于哪个库有好的文档,教程?

OpenCV有一个用于此目的的教程 ,不幸的是只有C ++,所以你必须将它转换为Android。

您也可以在Android中尝试FaceDetection API,如果您从drawable或SD卡图像中检测图像, 这是一个简单的示例 。 或者是最近使用相机图像的Camera.Face API 。

如果您希望在动态时间从相机拍摄图像而不是第一次阅读如何从相机拍摄照片。 ,但我建议你查看官方的OpenCV Android样本并使用它们。

更新:

Mad Hatter示例使用Camera with SurfaceView的方法。 它很有希望。 看看Mad Hatter吧 。

如果链接断开,相关代码是:

public class FaceDetectionListener implements Camera.FaceDetectionListener { @Override public final void onFaceDetection(Face[] faces, Camera camera) { if (faces.length > 0) { for (Face face : faces) { if (face != null) { // do something } } } } }

我正在做一个类似的项目。 我使用FaceDetection API进行了一些测试,可以告诉你,如果你想检测眼睛,鼻子,嘴巴和边缘,它不会帮助你。 此API仅允许您检测眼睛。 如果你想实现面部识别是没用的,因为在面部检测部分你需要的function不仅仅是眼睛。

对你的第一个回复发表评论:你确实需要面部检测。 查找要素是人脸检测的一部分,获取这些function是人脸识别应用程序的第一步。 使用OpenCV,您可以使用类似Haar的function来获取这些function(眼睛,鼻子,嘴巴等)。

但是我发现将openCV函数与单独的.cpp文件一起使用有点复杂。 有一个名为JNIEXPORT的东西,它允许您在.cpp文件中编辑带有OpenCV函数的Android图库图像。 OpenCV有一个类似Haar的特征检测.cpp文件,可以用于人脸检测(和其他算法的第二步识别)。

你在Windows或Linux上开发? 我正在使用Windows并且没有设法使用您链接的教程来设置OpenCV。 但是我在Eclipse中有一个工作的Windows OpenCV环境,并且从OpenCV 2.3.1中获得了所有样本。 也许我们可以互相帮助并分享一些信息/结果? 请告诉我。

我已经find了这个Microsoft API提供的面部情感检测的好解决方案。 此API返回JSON响应和情感图。 您可以尝试使用此API以获得良好的结果。

Emotion API

情感识别识别图像中一个或多个人expression的情绪,并返回面部的边界框。 检测到的情绪是快乐,悲伤,惊讶,愤怒,恐惧,蔑视,厌恶或中立。

支持的输入图像格式包括JPEG,PNG,GIF(第一帧),BMP。 图像文件大小不应大于4MB。

如果用户已调用Face API,则可以将面部矩形作为可选输入提交。 否则,Emotion API将首先计算矩形。

可检测的面部尺寸范围为36×36至4096×4096像素。 超出此范围的面将无法检测到。

对于每个图像,检测到的最大面部数量为64,并且面部按面部矩形大小按降序排列。 如果未检测到面,将返回空数组。

由于技术挑战,可能无法检测到某些面部,例如非常大的面部角度(头部姿势),大的遮挡。 正面和近额面都有最好的效果。 – 情绪蔑视和厌恶是实验性的。

这是一个很好的查询。 我想如果你得到眼睛的特征点,那么我们也可以通过知道眼睛中其他点的估计距离来计算其他点。

请参阅本文以了解更多关于我想说的内容: http : //klucv2.googlecode.com/svn/trunk/docs/detection%20of%20facial%20feature%20points%20using%20anthropometric%20face%20model.pdf

我希望这有帮助。

android如何提取人脸特征,Android – 人脸特征检测相关推荐

  1. C#人脸识别入门篇--提取人脸特征值及人脸识别

    转自:http://blog.csdn.net/feishixin/article/details/77397027 如何识别多个人脸 在开始之前,先解决一个疑问,这个SDK可以识别多个人脸吗.答案当 ...

  2. php识别人脸并提取特征值,C#人脸识别入门篇--提取人脸特征值及人脸识别

    如何识别多个人脸 在开始之前,先解决一个疑问,这个SDK可以识别多个人脸吗.答案当然是可以的.在上一章节中我们实现了识别单个人脸的功能. 如果要识别多个人脸,需要进行下面的设置. 定义人脸的识别数目范 ...

  3. 学习笔记:人脸检测和人脸识别

    人脸检测( Face Detection )和人脸识别技术是深度学习的重要应用之一.本章首先会介绍MTCNN算法的原理, 它是基于卷积神经网络的一种高精度的实时人脸检测和对齐技术.接着,还会介绍如何利 ...

  4. 人脸检测和人脸识别综述(调研)

    5_人脸检测和人脸识别综述(调研) 一.人脸检测 1.基于知识的方法 2.基于模板匹配的方法 3.基于统计模型的方法 4.人脸检测的评价指标 4.人脸识别方法的对比 5.人脸检测目前和未来的研究方向和 ...

  5. Python人脸识别项目-人脸识别-建立人脸模型

    现在我们执行的是第二步建立人脸预测模型 # -*- coding: utf-8 -* import cv2 import os from PIL import Image import numpy a ...

  6. Android基于虹软SDK实现离线人脸识别

    一.需求 Android端实现离线人脸识别功能,即对比两张人脸是否是同一个人. 二.解决方案 选用虹软人脸识别SDK来实现人脸特征数据比对. 三.步骤 1. 打开虹软开发者中心 开发者中心 2. 新建 ...

  7. android 人脸检测_Android人脸检测

    android 人脸检测 With the release of Google Play services 7.8, Google has brought in the Mobile Vision A ...

  8. Android手把手教你使用阿里云接口实现人脸定位、人脸检测、人脸对比功能。

    前言 现如今,人工智能越来越火,以至于我们必须了解和掌握它,今天我们就来结合阿里云的接口来实现人脸定位,人脸检测等功能. 废话不多说,先上效果图: 随便在网上找了三张图片进行检测,检测结果只显示了每一 ...

  9. android 人脸 sdk,Android 基于人脸识别 SDK使用总结

    体验了虹软 开放人脸识别的SDK引擎(免费的哦),刚好有Android版的.下面来说说Android版的SDK使用心得: ArcFace 虹软人脸认知引擎简介 目前开放的版本有人脸比对(1:1)和人脸 ...

最新文章

  1. C和C++安全编码笔记:指针诡计
  2. 程序员提交代码的 emoji 指南——原来表情文字不能乱用
  3. 文巾解题 319. 灯泡开关
  4. 最简单人工智能python_Python人工智能之路 - 第四篇 : jieba gensim 最好别分家之最简单的相似度实现...
  5. [面向对象] ABAP中程序类如何转化成全局类
  6. 快速建立自己的个人网站!五款建站程序
  7. ffmpeg与ffserver的协同工作
  8. C# 使用 DirectoryInfo 递归指定目录中的所有目录及文件
  9. 分享轮子-flutter下拉刷新上拉加载
  10. Java枚举getDeclaringClass()方法与示例
  11. 2018年测试状况调查
  12. yaml文件解析:c++篇
  13. 2018-2019-2 20165235《网络对抗技术》Exp7 网络欺诈防范
  14. VB.NET 读写HTML 文件,VB.NET 简单介绍文件的读写----流类
  15. 12.1-12.5 LNMP架构介绍 , MySQL安装 , PHP安装, Nginx介绍
  16. 夜神模拟器7.12 安装 xposed
  17. ERROR: The process abc.exe with PID 6588 could not be terminated.
  18. android 设置圆形图片,android 圆形头像,自定义圆形ImageView
  19. TCP三次握手和四次挥手?TCP如何保证可靠性?什么是TCP滑动窗口?
  20. WIN10-VS2019-SeetaFace6编译

热门文章

  1. 安卓使用juicessh教程
  2. select语句的数据源:视图
  3. 如何用一句话激励程序员?
  4. 实时音视频|社交直播语聊商业化解决方案
  5. Qt之读取qss文件
  6. Telerik移动应用开发工具AppBuilder学习笔记(二)--IDEs
  7. OSI七层协议模型及其协议
  8. java如何解析JSON字符串(复杂json解析详解)
  9. Linux Parallel和wget命令详解
  10. android绘制直角坐标系,Android自定义View之扇形统计图