【问题标题】:Error parsing 'parameters' JSON Watson Visual Recognition解析“参数”JSON Watson Visual Recognition 时出错
【发布时间】:2018-03-06 08:58:03
【问题描述】:

通过 Java 调用 Watson Visual Recognition API 时出现以下错误。任何帮助将不胜感激。

       VisualRecognition service = new VisualRecognition(VisualRecognition.VERSION_DATE_2016_05_20);
       service.setApiKey("api_key");

       InputStream imagesStream = new FileInputStream("C:\\fruitbowl.jpg");
       ClassifyOptions classifyOptions =
               new ClassifyOptions.Builder().imagesFile(imagesStream).imagesFilename("fruitbowl.jpg")
                       .parameters("{\"classifier_ids\": [\"fruits_1462128776\", + \"SatelliteModel_6242312846\"],\"threshold\": 0.6}")
                       .build();
       ClassifiedImages result = service.classify(classifyOptions).execute();
       System.out.println(result);

堆栈跟踪:

  SEVERE: POST https://gateway-a.watsonplatform.net/visual-recognition  /api/v3/classify?version=2016-05-20&api_key=0b5b96d2428f020c207a9388f2bb1ee840e57c9c, status: 400, error: {
"error": {
    "code": 400,
    "error_id": "input_error",
    "description": "Error parsing 'parameters' JSON. Ensure threshold is a float; owner and classifier-ids are string arrays; url is a string."
}}

【问题讨论】:

    标签: java ibm-cloud ibm-watson visual-recognition


    【解决方案1】:

    我认为问题在于参数字符串中间的+。我认为应该是:

    .parameters("{\"classifier_ids\": [\"fruits_1462128776\", \"SatelliteModel_6242312846\"],\"threshold\": 0.6}")
                       .build();
    

    【讨论】:

      【解决方案2】:

      错误消息指的是classifier-ids,而您有classifier_ids,所以它可能归结为一个简单的错字。虽然文档在示例中也有classifier_ids - https://www.ibm.com/watson/developercloud/visual-recognition/api/v3/?java#classify_an_image

      【讨论】:

        猜你喜欢
        • 2018-02-14
        • 1970-01-01
        • 2019-01-28
        • 1970-01-01
        • 2023-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多