I have used another method, and it worked perfectly.

public static void main(String[] args) {
 String fileStr = "C:/EA/mp-out/im/1/3/1-0.png";
 File file = new File(fileStr);
 //380x45+220+170
 int xsize = 0;
 int ysize = 0;
 BufferedImage bufImage=null;
 ByteBuffer buf = null;
 try {
 bufImage = ImageIO.read(file);
 IIOImage image=new IIOImage(bufImage,null,null);
 buf = ImageIOHelper.getImageByteBuffer(image);
 } catch (IOException e2) {
 e2.printStackTrace();
 }
 Rectangle rect = new Rectangle(220, 170, 380, 45); // define an equal or 
smaller region of interest on the image
 int bpp = 8; //Gray=8, RGB=24
 
 Tesseract in = new ReadImageText().getTesseractInstance("C:/Program Files 
(x86)/Tesseract-OCR/tessdata/", "hin");
 try {
 String resultText = in.doOCR(bufImage, rect);
 //in.doOCR(xsize, ysize, buf, rect, bpp);
 log.info("resultText: {}", resultText);
 } catch (TesseractException e) {
 e.printStackTrace();
 }
 }


On Saturday, June 9, 2018 at 3:07:02 PM UTC-4, Dattatraya Tembare wrote:
>
> I'm trying to read the text from an image at some particular location in 
> an image. I have image dimensions and desired rectangle dometions.
> Here is the code implementation:
>
> public static void main(String[] args) {
>  String fileStr = "C:/EA/mp-out/im/1/3/1-0.png";
>  File file = new File(fileStr);
>  //380x45+220+170
>  int xsize = 0;
>  int ysize = 0;
>  BufferedImage bufImage;
>  ByteBuffer buf = null;
>  try {
>  bufImage = ImageIO.read(file);
>  IIOImage image=new IIOImage(bufImage,null,null);
>  buf = ImageIOHelper.getImageByteBuffer(image);
>  } catch (IOException e2) {
>  e2.printStackTrace();
>  }
>  Rectangle rect = new Rectangle(0, 0, 600, 265); // define an equal or 
> smaller region of interest on the image
>  int bpp = 8; //Gray=8, RGB=24
>  
>  Tesseract in = new ReadImageText().getTesseractInstance("C:/Program 
> Files (x86)/Tesseract-OCR/tessdata/", "hin");
>  try {
>  String resultText = in.doOCR(xsize, ysize, buf, rect, bpp);
>  log.info("resultText: {}", resultText);
>  } catch (TesseractException e) {
>  e.printStackTrace();
>  }
>  }
>
> When I have executed the code, go below error: 
>
> java.lang.NullPointerException: null
>  at net.sourceforge.tess4j.Tesseract.getOCRText(Tesseract.java:434)
>  at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:351)
>  at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:323)
>  at com.ea.ocr.tesseract.ReadImageText.main(ReadImageText.java:74)
>
> Please look into it and let me know if anyone has any idea.
>

-- 
You received this message because you are subscribed to the Google Groups 
"tesseract-ocr" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tesseract-ocr+unsubscr...@googlegroups.com.
To post to this group, send email to tesseract-ocr@googlegroups.com.
Visit this group at https://groups.google.com/group/tesseract-ocr.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tesseract-ocr/243234f1-405a-45bb-a249-dd8eebd0e9f9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to