我想将 IBM Watson Visual Recognition 用于我的 android 应用程序并想在 JAVA 中调用 API,但我没有找到任何示例或对 JAVA 中的方法列表的任何引用来使用此服务。您可以看到这里缺少 JAVA 示例。请帮我找到一些合适的例子或对这些方法的任何参考。还请告诉我什么是 bluemix 平台,是否需要使用它才能使用 IBM Watson Visual Recognition?提前致谢!
1852 次
4 回答
2
查看Java SDK,尤其是Visual Recognition 示例,它模仿了演示中的用例(此处的节点源代码/训练图像)。
我是 IBM Watson Developer Cloud 的开发人员布道师。
于 2016-05-18T19:22:49.273 回答
1
你需要:
- 安装Java-SDK 3.3.0
- 在Bluemix 中创建Visual Recognition服务的一个实例。
- 使用您在 Bluemix 中创建服务时获得的更新下面的代码片段
username
。password
代码:
public class VisualRecognitionExample {
public static void main(String[] args) {
VisualRecognition service = new VisualRecognition("2016-05-20");
service.setUsernameAndPassword("<username>", "<password>");
System.out.println("Classify using all the classifiers");
options = new ClassifyImagesOptions.Builder()
.images(new File("car.png"))
.build();
result = service.classify(options).execute();
System.out.println(result);
}
}
于 2016-05-19T02:43:48.497 回答
0
它使用了一个过时版本的 Watson Java SDK ( https://github.com/watson-developer-cloud/java-sdk ),所以代码可能会发生一些变化,但基本上就是这样。
为了使用 Visual Recognition,您可以使用常规的 bluemix 帐户,因此您可以使用 Watson Visual Recognition API
更新
使用这个 POM
<dependencies>
<dependency>
<groupId>com.ibm.watson.developer_cloud</groupId>
<artifactId>java-sdk</artifactId>
<version>3.0.0-RC1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.5</version>
</dependency>
</dependencies>
于 2016-05-18T19:59:31.590 回答
0
我首先检查了 curl 并找到了使用 java 的解决方案,您可以使用以下代码:
使用:OkClient3 jar
OkHttpClient client = new OkHttpClient();
File file = new File(String.valueOf(path));
RequestBody formBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("image_file", "images.jpeg", RequestBody.create(MediaType.parse("image/jpeg"), file))
.build();
Request request = new Request.Builder().url(new URL("https://gateway-a.watsonplatform.net/visual-recognition/api/v3/collections/{classifier_id}/find_similar?limit=100&api_key=YOUR_API&version=2016-05-20")).post(formBody).build();
Response response = client.newCall(request).execute();
if (!response.isSuccessful())
throw new Exception("Unexpected code " + response);
System.out.println(response.message());
jsonString = response.body().string().toString();
System.out.println(jsonString);
于 2017-01-18T05:12:18.900 回答