Utilice Baidu Ai para identificación facial (verificación de seguridad pública)
importar com.baidu.aip.util.Base64Util;
importar com.enation.app.base.core.service.Exception.CreditAuthFaceException;
importar com.enation.app.base.core.service.ICreditAuthManager;
importar com.enation.app.base.core.util.AuthTokenService;
importar com.enation.app. base.core.util.HttpClientUtils;
importar org.apache./rest/2.0/face/v2/person/verify?access_token=" + token;
Archivo face=new Archivo(faceUrl);
FileImageInputStream input =null;
byte[] data =null;
String base64Image =null;
intente {
entrada =new FileImageInputStream(face);
ByteArrayOutputStream salida =new ByteArrayOutputStream();
byte[] buf =nuevo byte[1024];
int numBytesRead =0;
while ((numBytesRead = input.read(buf)) != -1) {
salida.write(buf, 0, numBytesRead);
}
datos = salida.toByteArray();
base64Image = Base64Util.encode(datos);
System.out.println("transcodificación 4base64:"+base64Image);
}catch (IOException e) {
e.printStackTrace();
}finalmente {
prueba {
if (input !=null) {
input.close();
}< / p>
}catch (IOException e) {
e.printStackTrace();
}
}
Encabezados del mapa =new HashMap();
headers.put("Content-Type","application/x-www-form-urlencoded");
Cuerpos del mapa =new HashMap() ;
bodys.put("imagen", base64Image);
bodys.put("id_card_number", id_card);
bodys.put(" nombre ", nombre);
prueba {
Clos
eableHttpResponse respuesta = HttpClientUtils.doHttpsPost(url, encabezados, cuerpos);
Resultado de cadena= HttpClientUtils.toString(respuesta);
System.out.println("5Devolver datos json: " + resultado);
org.json.JSONObject jsonObject=new org.json.JSONObject(resultado);
System.out.println("jsonObject:"+jsonObject); /p>
Objeto jsonResult = jsonObject.get("resultado");
Float floatResult = Float.parseFloat(jsonResult.toString());
if (floatResult > =0.80) {
System.out.println("floatResult:"+floatResult+"Autenticación facial exitosa");
}else {
System.out .println("floatResult:"+floatResult+"Error de autenticación facial");
throw new CreditAuthFaceException("Error de autenticación facial");
}
} catch (Exception e) {
e.printStackTrace();
System.out.println("Salida de excepción");
throw new CreditAuthFaceException(" Error de autenticación facial");
}
}