~ubuntu-branches/ubuntu/utopic/sikuli/utopic

« back to all changes in this revision

Viewing changes to sikuli-script/src/main/java/org/sikuli/script/TextRecognizer.java

  • Committer: Bazaar Package Importer
  • Author(s): Gilles Filippini
  • Date: 2011-04-16 00:23:53 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20110416002353-cn79cto3c03z5jx1
Tags: 1.0~x~rc2-dfsg1-1
* New upstream release:
  + Redesigned user interface for Sikuli-IDE
  + Support for extensions for Sikuli Script

* debian/control, debian/copyright:
  The package is now maintained by the Debian Java maintainers Team

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
import java.net.URL;
6
6
import java.util.Enumeration;
7
7
 
 
8
import org.sikuli.script.natives.Mat;
 
9
import org.sikuli.script.natives.Vision;
 
10
 
8
11
// Singleton
9
12
public class TextRecognizer {
10
13
   protected static TextRecognizer _instance = null;
22
25
   protected TextRecognizer(){
23
26
      init();
24
27
   }
 
28
   
 
29
   boolean _init_succeeded = false;
25
30
 
26
31
   public void init(){
27
 
      System.out.println("Text Recgonizer inited.");
 
32
      Debug.info("Text Recognizer inited.");
28
33
      try{
29
34
         String path = ResourceExtractor.extract("tessdata");
30
35
         // TESSDATA_PREFIX doesn't contain tessdata/
32
37
            path = path.substring(0,path.length()-9);
33
38
         Settings.OcrDataPath = path;
34
39
         Debug.log(3, "OCR data path: " + path);
 
40
 
 
41
         Vision.initOCR(Settings.OcrDataPath);
 
42
         _init_succeeded = true;
35
43
      }
36
44
      catch(IOException e){
37
45
         e.printStackTrace();
 
46
      }catch(Exception e){
 
47
         e.printStackTrace();         
38
48
      }
39
 
      Vision.initOCR(Settings.OcrDataPath);
40
49
   }
41
50
 
42
51
   public static TextRecognizer getInstance(){
51
60
   }
52
61
 
53
62
   public String recognize(BufferedImage img){
54
 
      Mat mat = OpenCV.convertBufferedImageToMat(img);
55
 
      return Vision.recognize(mat);
 
63
      if (_init_succeeded){
 
64
         Mat mat = OpenCV.convertBufferedImageToMat(img);
 
65
         return Vision.recognize(mat);
 
66
      }else{
 
67
         return "";
 
68
      }
56
69
   }
57
70
}
58
71