package com.javaweb.third.baidu.bean.imgCensor;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.javaweb.third.baidu.api.BaiduAi;
|
import com.javaweb.third.baidu.bean.BaseResult;
|
|
|
/**
|
* 图片识别综合返回结果
|
* 图像审核 组合服务接口 返回结果实体类
|
* @author wujiyue
|
*/
|
public class ImgCensorResult extends BaseResult {
|
/**
|
* 反色情检测
|
*/
|
private boolean AntipornFlag;
|
/**
|
*网络图识别
|
*/
|
private boolean WebimageFlag;
|
/**
|
*图片质量检测
|
*/
|
private boolean QualityFlag;
|
/**
|
*通用文字识别
|
*/
|
private boolean OcrFlag;
|
/**
|
*文字精确识别
|
*/
|
private boolean AccuratebasicFlag;
|
/**
|
*恶心检查
|
*/
|
private boolean DisgustFlag;
|
/**
|
*水印、广告
|
*/
|
private boolean WatermarkFlag;
|
/**
|
*政治敏感
|
*/
|
private boolean PoliticianFlag;
|
|
|
private AntipornResult antipornResult;
|
private WebimageResult webimageResult;
|
private QualityResult qualityResult;
|
private OcrResult ocrResult;
|
private AccuratebasicResult accuratebasicResult;
|
private DisgustResult disgustResult;
|
private WatermarkResult watermarkResult;
|
private PoliticianResult politicianResult;
|
public ImgCensorResult(String jsonStr){
|
this.setJson(jsonStr);
|
try {
|
JSONObject jsonObject= JSONObject.parseObject(jsonStr);
|
String t_error_code=String.valueOf(jsonObject.get("error_code"));
|
|
if(notNull(t_error_code)) {
|
this.setRequestOk(false);
|
this.setError_code(t_error_code);
|
String t_error_msg=String.valueOf(jsonObject.get("error_msg"));
|
this.setError_msg(t_error_msg);
|
}else{
|
this.setRequestOk(true);
|
this.setLog_id(jsonObject.getString("log_id"));
|
JSONObject result_json=jsonObject.getJSONObject("result");
|
for (BaiduAi.IMG_CENSOR_SCENES e : BaiduAi.IMG_CENSOR_SCENES.values()) {
|
JSONObject o=result_json.getJSONObject(e.name());
|
if(o!=null){
|
if(e== BaiduAi.IMG_CENSOR_SCENES.antiporn){//色情识别
|
AntipornFlag=true;
|
this.antipornResult=AntipornResult.create(o.toJSONString());
|
}else if(e== BaiduAi.IMG_CENSOR_SCENES.webimage){//网络图片文字识别
|
WebimageFlag=true;
|
this.webimageResult=WebimageResult.create(o.toJSONString());
|
}else if(e==BaiduAi.IMG_CENSOR_SCENES.quality){//图片质量检测
|
QualityFlag=true;
|
qualityResult=QualityResult.create(o.toJSONString());
|
}else if(e==BaiduAi.IMG_CENSOR_SCENES.ocr){//通用文字识别
|
OcrFlag=true;
|
ocrResult=OcrResult.create(o.toJSONString());
|
}else if(e==BaiduAi.IMG_CENSOR_SCENES.accuratebasic){//精确的文字识别
|
AccuratebasicFlag=true;
|
accuratebasicResult=AccuratebasicResult.create(o.toJSONString());
|
}else if(e==BaiduAi.IMG_CENSOR_SCENES.disgust){//恶心
|
DisgustFlag=true;
|
disgustResult=DisgustResult.create(o.toJSONString());
|
}else if(e==BaiduAi.IMG_CENSOR_SCENES.watermark){//水印、广告
|
WatermarkFlag=true;
|
watermarkResult=WatermarkResult.create(o.toJSONString());
|
}else if(e==BaiduAi.IMG_CENSOR_SCENES.politician){//政治敏感
|
PoliticianFlag=true;
|
politicianResult=PoliticianResult.create(o.toJSONString());
|
}
|
}
|
|
}
|
}
|
|
}catch (Exception ex){
|
ex.printStackTrace();
|
this.setRequestOk(false);
|
this.setError_msg("解析json字符串出现异常!");
|
}
|
}
|
public static ImgCensorResult create(String jsonStr) {
|
return new ImgCensorResult(jsonStr);
|
}
|
|
@Override
|
public String toString() {
|
return "ImgCensorResult{" +
|
"AntipornFlag=" + AntipornFlag +
|
", WebimageFlag=" + WebimageFlag +
|
", QualityFlag=" + QualityFlag +
|
", OcrFlag=" + OcrFlag +
|
", AccuratebasicFlag=" + AccuratebasicFlag +
|
", DisgustFlag=" + DisgustFlag +
|
", WatermarkFlag=" + WatermarkFlag +
|
", PoliticianFlag=" + PoliticianFlag +
|
", antipornResult=" + antipornResult +
|
", webimageResult=" + webimageResult +
|
", qualityResult=" + qualityResult +
|
", ocrResult=" + ocrResult +
|
", accuratebasicResult=" + accuratebasicResult +
|
", disgustResult=" + disgustResult +
|
", watermarkResult=" + watermarkResult +
|
", politicianResult=" + politicianResult +
|
'}';
|
}
|
}
|