文档首页 > > SDK参考> 使用SDK(Java)(废弃)> 图像去雾示例

图像去雾示例

分享
更新时间:2020/08/10 GMT+08:00

图像识别服务认证方式有Token和AK/SK两种方式,本章节对AK/SK方式使用SDK进行示例说明。

该图像去雾Demo示例对应URI:POST /v1.0/vision/defog。将AK/SK信息替换为实际AK/SK后,即可运行体验Demo。

  1. 在DefogDemo.java文件中配置用户AK/SK。示例代码如下:

    // 1. 配置好去雾服务的的基本信息,生成对应的一个客户端连接对象
    AisAccess service = ServiceAccessBuilder.builder()		
            .ak("######")                       // your ak
            .sk("######")                       // your sk
            .region("cn-north-1")               // 图像识别服务华北-北京一(cn-north-1)的配置
            .connectionTimeout(5000)            // 连接目标url超时限制
            .connectionRequestTimeout(1000)     // 连接池获取可用连接超时限制
            .socketTimeout(20000)               // 获取服务器响应数据超时限制
            .build();

  2. 选择本地图片或者使用Demo默认图片,参考如下示例代码修改DefogDemo.java文件中原图片路径("data/defog-demo-1.png")和处理后生成图像保存路径("data/defog-demo-1.cooked.png")。

    //
    // 2.构建访问去雾服务需要的参数
    //
    String uri = "/v1.0/vision/defog";
    byte[] fileData = FileUtils.readFileToByteArray(new File("data/defog-demo-1.png"));
    String fileBase64Str = Base64.encodeBase64String(fileData);
    			
    JSONObject json = new JSONObject();
    json.put("image", fileBase64Str);
    json.put("gamma", 1.5);
    json.put("natural_look", true);
    		
    // 3.传入去雾服务对应的uri参数, 传入去雾服务需要的参数,
    // 该参数主要通过JSON对象的方式传入, 使用POST方法调用服务
    HttpResponse response = service.post(uri, json.toJSONString());
    			
    // 4.验证服务调用返回的状态是否成功,如果为200, 为成功, 否则失败。
    ResponseProcessUtils.processResponseStatus(response);
    			
    // 5.处理服务返回的字符流,生成对应的去雾处理后对应的图片文件。
    ResponseProcessUtils.processResponseWithImage(response, "data/defog-demo-1.cooked.png");

  3. 执行DefogDemo.java文件,图像去雾识别结果输出到控制台,控制台输出200即表示程序执行成功。图像去雾的原图与处理效果图对比如图1

    图1 原图与处理效果图对比

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问