最近闲着没事看到有些app需要上传的图片必须是本人的。当你上传的时候需要通过视频进行认证。于是有了一个不成熟的想法:图片的认证。通过打开摄像头,然后在扫描我们头像的时候进行拍摄,然后跟我们上传你的照片进行比较。看是否为一个人。这个图片的验证我用了讯飞语音的图片认证:
// 使用FaceRequest(Context context)构造一个FaceRequest对象
FaceRequest face = new FaceRequest(this);
// 设置业务类型为注册
face.setParameter(SpeechConstant.WFR_SST, "reg");
// 设置auth_id
face.setParameter(SpeechConstant.WFR_AUTHID, mAuthId);
// 调用sendRequest(byte[] img, RequestListener listener)方法发送注册请求,img为图片的二进制数据,listener为处理注册结果的回调对象
face.sendRequest(imgData, mRequestListener);
注册一张图片,需要你传入一个id,相当于这个图片的唯一标识。
然后把你扫描出来的图片跟这个图片进行比较,怎么比较呢,就是传入刚才你注册的图片id。
// 设置业务类型为验证
face.setParameter(SpeechConstant.WFR_SST, "verify");
// 设置auth_id
face.setParameter(SpeechConstant.WFR_AUTHID, mAuthId);
// 设置gid,由于一个auth_id下只有一个gid,所以设置了auth_id时则可以不用设置gid。但是当
// 没有设置auth_id时,必须设置gid
face.setParameter(SpeechConstant.WFR_GID, gid);
// 调用sendRequest(byte[] img, RequestListener listener)方法发送注册请求,img为图片的二进制数据,listener为处理注册结果的回调对象
face.sendRequest(imgData, mRequestListener);