资源简介
利用百度人脸识别API 写的简单列子,拿来就可用。需要配置百度人脸识别账号相关信息。
代码片段和文件信息
package com.ssm.controller;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import com.ssm.model.FaceV3DetectBean;
import com.ssm.utils.FaceSpot;
import net.sf.json.JSONArray;
import net.sf.json.JSONobject;
/**
* 人脸识别服务 controller
* @author liyingming
*
*/
@Controller
@RequestMapping(value = “/faceRecognition“)
public class faceRecognitionController {
/**
* 人脸检测测试页面
* @return
* @throws Exception
*/
@RequestMapping(value = “/test.do“)
public ModelAndView queryVoi() throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName(“/artificialIntelligence/faceRecognition/test“);
return modelAndView;
}
/**
* 请求人脸检测
* @return
* @throws Exception
*/
@RequestMapping(value = “/save.do“)
@ResponseBody
public Mapject> queryService(@RequestParam(“the_file“) MultipartFile file) {
Mapject> modelMap = new HashMapject>();
try {
//将数据转为流
InputStream content = file.getInputStream();
ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
byte[] buff = new byte[100];
int rc = 0;
while ((rc = content.read(buff 0 100)) > 0) {
swapStream.write(buff 0 rc);
}
//获得二进制数组
byte[] in2b = swapStream.toByteArray();
//调用人脸检测的方法
String str = FaceSpot.detectFace(in2b““+1);
JSONobject job = new JSONobject(FaceSpot.faceverify(in2b));
System.out.println(job.toString());
JSONobject testData = job.getJSONobject(“result“);
//System.out.println(testData.get(“face_liveness“));
JSON json = JSON.parseobject(str);
FaceV3DetectBean bean = JSON.toJavaobject(json FaceV3DetectBean.class);
JSONArray arr = new JSONArray();
for(int i=0;i JSONobject jsonobject = new JSONobject();
//获取年龄
int ageOne = bean.getResult().getFace_list().get(i).getAge();
//处理年龄
String age =String.valueOf(new BigDecimal(ageOne).setScale(0 BigDecimal.ROUND_HALF_UP));
jsonobject.put(“age“ age);
//获取美丑打分
Double beautyOne = (Double) bean.getResult().getFace_list().get(i).getBeauty();
//处理美丑打分
String beauty =String.valueOf(new BigDecimal(beautyOne).setScale(0 BigDecimal.ROUND_HALF_U
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-10-29 11:05 LED\
文件 848 2018-06-07 15:04 LED\.classpath
目录 0 2018-12-04 10:28 __MACOSX\
目录 0 2018-12-04 10:28 __MACOSX\LED\
文件 172 2018-06-07 15:04 __MACOSX\LED\._.classpath
文件 6148 2018-10-29 11:05 LED\.DS_Store
文件 120 2018-10-29 11:05 __MACOSX\LED\._.DS_Store
文件 1328 2018-04-14 16:11 LED\.project
文件 172 2018-04-14 16:11 __MACOSX\LED\._.project
目录 0 2018-07-24 13:22 LED\.settings\
文件 522 2018-02-12 10:58 LED\.settings\.jsdtscope
目录 0 2018-12-04 10:28 __MACOSX\LED\.settings\
文件 172 2018-02-12 10:58 __MACOSX\LED\.settings\._.jsdtscope
文件 79 2018-02-12 10:58 LED\.settings\com.genuitec.eclipse.migration.prefs
文件 172 2018-02-12 10:58 __MACOSX\LED\.settings\._com.genuitec.eclipse.migration.prefs
文件 57 2018-06-07 15:07 LED\.settings\org.eclipse.core.resources.prefs
文件 172 2018-06-07 15:07 __MACOSX\LED\.settings\._org.eclipse.core.resources.prefs
文件 364 2018-02-12 10:58 LED\.settings\org.eclipse.jdt.core.prefs
文件 172 2018-02-12 10:58 __MACOSX\LED\.settings\._org.eclipse.jdt.core.prefs
文件 468 2018-04-14 16:11 LED\.settings\org.eclipse.wst.common.component
文件 172 2018-04-14 16:11 __MACOSX\LED\.settings\._org.eclipse.wst.common.component
文件 172 2018-02-12 10:58 LED\.settings\org.eclipse.wst.common.project.facet.core.prefs.xm
文件 172 2018-02-12 10:58 __MACOSX\LED\.settings\._org.eclipse.wst.common.project.facet.core.prefs.xm
文件 410 2018-04-16 09:50 LED\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 172 2018-04-16 09:50 __MACOSX\LED\.settings\._org.eclipse.wst.common.project.facet.core.xm
文件 49 2018-02-12 10:58 LED\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 172 2018-02-12 10:58 __MACOSX\LED\.settings\._org.eclipse.wst.jsdt.ui.superType.container
文件 6 2018-02-12 10:58 LED\.settings\org.eclipse.wst.jsdt.ui.superType.name
文件 172 2018-02-12 10:58 __MACOSX\LED\.settings\._org.eclipse.wst.jsdt.ui.superType.name
文件 172 2018-07-24 13:22 __MACOSX\LED\._.settings
目录 0 2018-07-24 13:22 LED\src\
............此处省略362个文件信息
评论
共有 条评论