一、什么是自动审核
自动审核是能够针对文本内容自动识别有色情、涉政、灌水等违规信息。对于视频图像数据,高效识别并预警不合规图片,防止涉黄、涉暴、政治敏感类图像发布,降低人工审核成本和业务违规风险。
二、使用场景
直播平台:在互动直播场景中,成千上万个房间并发直播,人工审核直播内容几乎不可能。基于图像审核能力,可对所有房间内容实时监控,识别可疑房间并进行预警。
在线商城:智能审核商家/用户上传图像,高效识别并预警不合规图片,防止涉黄、涉暴、政治敏感类图像发布,降低人工审核成本和业务违规风险。
商品评论:审核电商网站产品评论,自动筛查错有色情、涉政、灌水等违规评论。
自媒体平台:自动识别媒资中可能存在的涉政、违禁品等信息,避免已发布的文章存在违规风险。
弹幕审核:实时检测弹幕文本、保证网络直播间内容安全,降低业务违规风险。
昵称注册:网站的用户注册信息进行智能审核,过滤包含广告、反动、色情等内容的用户昵称。
图像识别:自动提取身份证的文字信息。
三、技术实现
技术方面在人工智能方面有阿里云,百度AI等平台提供。以下案例以百度AI为例。
3.1获取Access_token
<!--添加依赖,主要用于解析json数据-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.58</version>
</dependency>
|
@Test
public void test() throws Exception{
String authHost = "https://aip.baidubce.com/oauth/2.0/token?";
String getAccessTokenUrl = authHost
// 1. grant_type为固定参数
+ "grant_type=client_credentials"
// 2. 官网获取的 API Key
+ "&client_id=sB5rFESMBaUjkWkcNYXQZbeS"
// 3. 官网获取的 Secret Key
+ "&client_secret=Yz2mzywrBfLpG93OVKNLEXfCdaNUOsUG";
try {
URL realUrl = new URL(getAccessTokenUrl);
// 打开和URL之间的连接
HttpURLConnection connection = (HttpURLConnection) realUrl.openConnection();
connection.setRequestMethod("GET");
connection.connect();
// 获取所有响应头字段
Map<String, List<String>> map = connection.getHeaderFields();
// 遍历所有的响应头字段
for (String key : map.keySet()) {
System.err.println(key + "--->" + map.get(key));
}
// 定义 BufferedReader输入流来读取URL的响应
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String result = "";
String line;
while ((line = in.readLine()) != null) {
result += line;
}
/**
* 返回结果示例
*/
System.err.println("result:" + result);
JSONObject jsonObject = JSON.parseObject(result);
System.out.println(jsonObject.get("access_token"));
} catch (Exception e) {
System.err.printf("获取token失败!");
e.printStackTrace(System.err);
}
}
|
3.2调用接口
@Test
public void testAccurateBasic() throws Exception{
// 请求url
String url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic";
try {
// 本地文件路径
String filePath = "[本地文件路径]";
byte[] imgData = FileUtil.readFileByBytes(filePath);
String imgStr = Base64Util.encode(imgData);
String imgParam = URLEncoder.encode(imgStr, "UTF-8");
String param = "image=" + imgParam;
// 注意这里仅为了简化编码每一次请求都去获取access_token,线上环境access_token有过期时间, 客户端可自行缓存,过期后重新获取。
String accessToken = "[调用鉴权接口获取的token]";
String result = HttpUtil.post(url, accessToken, param);
System.out.println(result);
} catch (Exception e) {
e.printStackTrace();
}
}
|
3.3相关的工具类
下载地址:
https://ai.baidu.com/file/658A35ABAB2D404FBF903F64D47C1F72
https://ai.baidu.com/file/C8D81F3301E24D2892968F09AE1AD6E2
https://ai.baidu.com/file/544D677F5D4E4F17B4122FBD60DB82B3
https://ai.baidu.com/file/470B3ACCA3FE43788B5A963BF0B625F3