【Java-API】图像审核示例代码
用户已被禁言 发布于2017-12 浏览:4279 回复:4
1
收藏

铛铛铛铛!快来了 7叔又写了个图像审核的示例代码

示例代码地址:https://gitee.com/xshuai/ai/tree/master/AIDemo/src/main/java/com/xs/imagecensor

  • 官网接口文档:http://ai.baidu.com/docs#/ImageCensoring-API/top
  • 准备工作 已经创建了图像审核应用并且拿到apikey sercetkey得到AccessToken
  • 接口地址:https://aip.baidubce.com/rest/2.0/solution/v1/img_censor/user_defined

***************************图片是否合规,检测便知***************************

  • 图像审核接口识别-JavaAPI示例代码(image参数示例。也可以imgUrl哦)
package com.xs.imagecensor;

import java.net.URLEncoder;

import com.alibaba.fastjson.JSON;
import com.xs.pojo.imagecensor.UserDefinedBean;
import com.xs.util.baidu.Base64Util;
import com.xs.util.baidu.FileUtil;
import com.xs.util.baidu.HttpUtil;

/**
 * 图像审核接口示例代码
 * @author 小帅丶
 *
 */
public class UserDefinedDemo {
	public static void main(String[] args) throws Exception {
		//返回字符串
		String result = getUserDefinedResult("G:/xjp.jpg","自己的token");
		System.out.println(result);
		//返回java对象
		UserDefinedBean userDefinedBean = getUserDefinedBean("G:/xjp.jpg","自己的token");
        System.out.println(userDefinedBean.getData().get(0).getMsg());
        System.out.println(userDefinedBean.getData().get(0).getStars().get(0).getName());
	}
	/**
	 * 图像审核识别Demo
	 * @param imagePath
	 * @param accessToken
	 * @return 字符串
	 * @throws Exception
	 */
	public static String getUserDefinedResult(String imagePath,String accessToken) throws Exception{
		byte[] imgData = FileUtil.readFileByBytes(imagePath);
        String imgStr = Base64Util.encode(imgData);
		String param = "image=" + URLEncoder.encode(imgStr,"UTF-8");
        // 注意这里仅为了简化编码每一次请求都去获取access_token,线上环境access_token有过期时间, 客户端可自行缓存,过期后重新获取。
		String result = HttpUtil.post(ImageCensorConsts.ANTI_USER_DEFINED_URL, accessToken, param);
        System.out.println(result);
        return result;
	}
	/**
	 * 图像审核识别Demo
	 * @param imagePath
	 * @param accessToken
	 * @return UserDefinedBean
	 * @throws Exception
	 */
	public static UserDefinedBean getUserDefinedBean(String imagePath,String accessToken) throws Exception{
		byte[] imgData = FileUtil.readFileByBytes(imagePath);
        String imgStr = Base64Util.encode(imgData);
		String param = "image=" + URLEncoder.encode(imgStr,"UTF-8");
        // 注意这里仅为了简化编码每一次请求都去获取access_token,线上环境access_token有过期时间, 客户端可自行缓存,过期后重新获取。
		String result = HttpUtil.post(ImageCensorConsts.ANTI_USER_DEFINED_URL, accessToken, param);
		UserDefinedBean userDefinedBean = JSON.parseObject(result, UserDefinedBean.class);
        return userDefinedBean;
	}
}
  • 图片文件

就是习大大的图片、受限制没法上传。大家自行百度一张即可

  • 返回的接口数据
{
    "conclusion": "不合规", 
    "log_id": 151357554744347, 
    "data": [
        {
            "msg": "存在政治敏感内容", 
            "stars": [
                {
                    "probability": 0.9492131, 
                    "name": "习近平"
                }
            ], 
            "type": 8
        }
    ]
}

收藏
点赞
1
个赞
共4条回复 最后由用户已被禁言回复于2018-08
#5用户已被禁言回复于2018-08
#4 90冯仕江回复
UserDefinedBean 这个类在哪

那是我自己根据JSON转的Java对象而已、你自己百度在线的json转javabean就好了。都不需要敲代码的。自动生成。如果懒得百度转。

我帖子也给出了代码地址。看里面import就能看到bean在哪。如果这一步也懒得找。

直接传送门  https://gitee.com/xshuai/ai/blob/master/AIDemo/src/main/java/com/xs/pojo/imagecensor/UserDefinedBean.java

1
#490冯仕江回复于2018-08

UserDefinedBean 这个类在哪

0
#3meihysmile回复于2017-12

百度这是要做自己的AI接口啊

0
#2用户已被禁言回复于2017-12

您好,感谢您使用百度AI社区

1
TOP
切换版块