虹软人脸识别demo android,虹软免费人脸识别 Demo [Android]

工程如何使用?

2.前往官网申请appid和sdkkey。 修改 ArcFaceDemo-master\src\main\java\com\arcsoft\sdk_demo\FaceDB.java 下面的对应的值:

public static String appid = “xxxx”; public static String fd_key = “xxxx”;

public static String ft_key = “xxxx”;

public static String fr_key = “xxxx”;

下载sdk包之后,解压各个包里libs中的文件到 ArcFaceDemo-master\libs 下,同名so直接覆盖。

3.Android Studio3.0 中直接打开或者导入Project,编译运行即可。

demo如何使用?

1.点击第一个按钮 打开图片或者拍一张带人脸的照片,确认后自动执行人脸,弹出注册框,注册第一个人脸。 注册界面底部会展示已注册的信息列表,点击列表项,则可以执行删除操作。

2.点击第二个按钮 选择打开前置或者后置的镜头进行检测。

demo中人脸数据的保存方式?

以注册时人名为关键索引,保存在face.txt中。

创建的 name.data 则为实际的数据存储文件,保存了所有特征信息。同一个名字可以注册多个不同状态角度的人脸,在name.data 中连续保存,占用的数据文件长度为:  N * {4字节(特征数据长度) + 22020字节(特征数据信息)}

最低支持的API-LEVEL?

14-27

Issue Report

1.before report please check the closed issues.

2.issue format a.错误信息:log,input image,core stack, etc… b.设备信息:cpu, memory, device name, etc… c.系统版本:OS version, API leve,etc… d.具体操作流程:which step,how to recurrence,etc…

FAQ

1.Gradle 错误提示 Error:Failed to find target with hash string ‘android-24’… 一般Android Studio 窗口会有个链接(Install missing platform(s) and sync project) 点击下载更新 android-24 即可解决(其他版本没测试过,建议不要随意更改)。

2.加载图片注册时Crash. NV21格式限制高度和宽度不能同时为奇数,demo已经对这个做了保护。 如有发生,请提供图像尺寸和发生时的全部log。

3.年龄和性别检测结果准确度不够. Video的接口性能优先,Image的接口准确度优先。

4.com.guo.android_extend:android-extend 找不到依赖. 此第三方库android_extend 用来简化camera调用,提供简单的工具方便demo开发。 一般android studio会自动从jcenter 下载对应的aar包,如果没有自动下载,请自行检查是否网络问题,或者删掉build等编译目录,重新运行gradle.

5.还有其他问题. 直接提交issue 我们会尽快解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用 Java 开发的虹软人脸识别的示例代码: ```java import com.arcsoft.face.*; import com.arcsoft.face.enums.*; import com.arcsoft.face.toolkit.ImageFactory; import com.arcsoft.face.toolkit.ImageInfo; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; import javax.imageio.ImageIO; public class FaceRecognitionDemo { // 人脸识别 SDK 的 APP ID 和 SDK KEY private static final String APP_ID = "your_app_id"; private static final String SDK_KEY = "your_sdk_key"; public static void main(String[] args) { // 初始化人脸识别引擎 FaceEngine faceEngine = new FaceEngine(); int errorCode = faceEngine.active(APP_ID, SDK_KEY); if (errorCode != ErrorInfo.MOK.getValue() && errorCode != ErrorInfo.MERR_ASF_ALREADY_ACTIVATED.getValue()) { System.out.println("引擎激活失败"); return; } errorCode = faceEngine.init( DetectMode.ASF_DETECT_MODE_VIDEO, // 检测模式 DetectFaceOrientPriority.ASF_OP_0_ONLY, // 人脸方向 16, // 最大人脸数 FaceEngine.ASF_FACE_RECOGNITION // 识别模式 ); if (errorCode != ErrorInfo.MOK.getValue()) { System.out.println("初始化引擎失败"); return; } // 加载需要识别的人脸图片 File file = new File("face.jpg"); BufferedImage image = null; try { image = ImageIO.read(file); } catch (IOException e) { e.printStackTrace(); } // 将图片转换为 SDK 能够识别的格式 ImageInfo imageInfo = ImageFactory.bufferedImage2ImageInfo(image); // 检测人脸 List<FaceInfo> faceInfoList = new ArrayList<FaceInfo>(); errorCode = faceEngine.detectFaces(imageInfo.getImageData(), imageInfo.getWidth(), imageInfo.getHeight(), ImageFormat.CP_PAF_BGR24, faceInfoList); if (errorCode != ErrorInfo.MOK.getValue()) { System.out.println("人脸检测失败"); return; } // 提取人脸特征 FaceFeature faceFeature = new FaceFeature(); errorCode = faceEngine.extractFaceFeature(imageInfo.getImageData(), imageInfo.getWidth(), imageInfo.getHeight(), ImageFormat.CP_PAF_BGR24, faceInfoList.get(0), faceFeature); if (errorCode != ErrorInfo.MOK.getValue()) { System.out.println("提取人脸特征失败"); return; } // 释放资源 faceEngine.unInit(); faceEngine.activeFileInfo().getFileData(); faceEngine.dispose(); } } ``` 需要注意的是,这段代码中的 `your_app_id` 和 `your_sdk_key` 需要替换成你自己申请的人脸识别 SDK 的 APP ID 和 SDK KEY。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值