Reputation: 90
I know this is probably a stupid question, but I am having a tough time converting the visual recognition from recognizeText into a String that I can use and manipulate.
This is in Java.
Can someone help? It probably has to do with digging through the methods and finding the right combination...
package com.mycompany.app;
import com.ibm.watson.developer_cloud.visual_recognition.v3.VisualRecognition;
import com.ibm.watson.developer_cloud.visual_recognition.v3.model.*;
import java.io.File;
import java.util.concurrent.ExecutionException;
public class App
{
public static void main( String[] args ) throws ExecutionException, InterruptedException {
VisualRecognition service = new VisualRecognition(VisualRecognition.VERSION_DATE_2016_05_20);
service.setApiKey("a46d79a8aa20ed4b1ad3bc25a449c15d212d5db7");
ClassifierOptions p = new ClassifierOptions.Builder().classifierName("letters").addClass("H", new File("src/pictures/CapitalH.zip")).addClass("h", new File("src/pictures/LowercaseH.zip")).build();
File f1 = new File("src/pictures/CapitalH.zip");
File f2 = new File("src/pictures/LowercaseH.zip");
File f3 = new File("src/pictures/HiM.zip");
//VisualClassifier c1 = service.createClassifier("H", f1, f2);
//service.createClassifier(p).execute();
//VisualClassifier c1 = new VisualClassifier();
//VisualClass cc1 = (VisualClass) service.createClassifier(p);
service.createClassifier(p);
VisualRecognitionOptions ops; //find out how to add classifications for letters to this, then add this to visualClassification
ClassifyImagesOptions pp = new ClassifyImagesOptions.Builder().images(f3).classifierIds("H").build();
ClassifyImagesOptions ppp = new ClassifyImagesOptions.Builder().images(f3).build();
VisualClassification result = service.classify(pp).execute();
VisualRecognitionOptions now = new VisualRecognitionOptions.Builder().images(f3).build();
//System.out.println(service.recognizeText(now).execute());
//System.out.println(service.recognizeText(now));
RecognizedText t = service.recognizeText(now).execute();
t = service.recognizeText(now).rx().join();
String s = service.recognizeText(now).rx().toString();
//System.out.println(service.getClassifiers());
//System.out.println(result);
}
}
Upvotes: 0
Views: 225
Reputation: 1106
After this line, try printing out t
:
RecognizedText t = service.recognizeText(now).execute();
You should see the text in a formatted JSON object.
Upvotes: 1