Recognize-Text-OCR-Image-using-Java

Ви можете конвертувати текст із зображення у формат, який можна редагувати, за допомогою оптичного розпізнавання символів (OCR). Такі зображення, як JPG, PNG, TIFF, BMP, GIF тощо, використовуються всюди в Інтернеті, і вам може знадобитися розпізнавати текст із онлайн-зображення. Ви можете легко використати URL-посилання на це зображення, щоб виконати оптичне розпізнавання символів замість збереження чи завантаження файлу. У наступних заголовках докладніше обговорюються деталі:

Java OCR API – встановлення

Aspose.OCR for Java API можна використовувати для виконання операцій оптичного розпізнавання символів на зображеннях. Він може розпізнавати текст і перетворювати зображення на редагований текст. Завантажте JAR-файл API із розділу Завантаження або вкажіть наступні конфігурації Maven у файлі pom.xml вашого проекту:

Репозиторій:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>

Залежність:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-ocr</artifactId>
    <version>20.5</version>
</dependency>

Розпізнавайте текст, виконуючи OCR на зображенні з URL-адреси за допомогою Java

Ви можете виконати оптичне розпізнавання символів на зображенні з URL-адреси, виконавши такі дії:

  1. Створіть екземпляр API за допомогою класу AsposeOCR.
  2. Укажіть URI зображення.
  3. Налаштуйте параметри розпізнавання за допомогою класу RecognitionSettings.
  4. Отримати об’єкт результату.
  5. Роздрукувати результат.

У наведеному нижче коді пояснюється, як розпізнавати текст за допомогою програмного розпізнавання зображення з URL-адреси за допомогою Java:

//Створіть екземпляр API
AsposeOCR api = new AsposeOCR();

// Укажіть URI зображення
String uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";

// Встановіть параметри розпізнавання
RecognitionSettings settings = new RecognitionSettings();
settings.setAutoSkew(false);
ArrayList<Rectangle> rectangles = new ArrayList<Rectangle>();
rectangles.add(new Rectangle(90,186,775,95));
settings.setRecognitionAreas(rectangles);


// Отримати об'єкт результату
RecognitionResult result = null;
try {
	result = api.RecognizePageFromUri(uri, settings);
} catch (IOException e) {
	e.printStackTrace();
}

// Роздрукувати результат
System.out.println("Result: \n" + result.recognitionText+"\n\n");
System.out.println("RecognitionAreasText: \n");
for(String text: result.recognitionAreasText) {
	System.out.println(text);
}

Розпізнавайте текст із перекошеного чи нахиленого зображення за допомогою OCR за допомогою Java

Іноді зображення з певних причин може бути нахилене або перекошене. Наприклад, зображення, створене камерою чи сканером, може бути трохи перекошеним, тоді ви зможете отримати кут перекосу вхідного зображення. Ви можете підвищити точність розпізнавання тексту, знаючи та виправляючи кут перекосу. Вам потрібно виконати наступні дії:

  • Створіть екземпляр API за допомогою об’єкта AsposeOCR.
  • Встановіть параметри розпізнавання.
  • Розрахувати та встановити кут нахилу.
  • Отримайте результат за допомогою об’єкта RecognitionResult і роздрукуйте його.

Наведений нижче код показує, як програмно розпізнати текст із перекошеного зображення за допомогою OCR у Java:

//Створіть екземпляр API
AsposeOCR api = new AsposeOCR();

String uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";

BufferedImage image = null;
try{
java.net.URL url =new java.net.URL(uri);

// прочитати url
image = ImageIO.read(url);
}catch(IOException e){
            e.printStackTrace();
        }
// встановити параметри розпізнавання
RecognitionSettings settings = new RecognitionSettings();
double angle = 0;

// Отримайте кут перекосу
try {
	angle = api.CalcSkewImage(image);
	System.out.println("Skew text is:" + angle + " degrees.");
} catch (IOException e1) {
	e1.printStackTrace();
}
settings.setSkew(angle);

ArrayList<Rectangle> rectangles = new ArrayList<Rectangle>();
rectangles.add(new Rectangle(90,186,775,95));
settings.setRecognitionAreas(rectangles);

// отримати об'єкт результату
RecognitionResult result = null;
try {
	result = api.RecognizePageFromUri(uri, settings);
} catch (IOException e) {
	e.printStackTrace();
}

// результат друку
System.out.println("Result: \n" + result.recognitionText+"\n\n");
System.out.println("RecognitionAreasText: \n");
for(String text: result.recognitionAreasText) {
	System.out.println(text);
}

Отримайте безкоштовну ліцензію API

Ви можете подати запит на безкоштовну тимчасову ліцензію, щоб оцінити API у повній мірі.

Висновок

Підсумовуючи, ви навчилися розпізнавати текст, виконуючи операції OCR над зображенням із будь-якої URL-адреси. Крім того, ви дослідили, як виправити кут перекосу для зображення, щоб підвищити точність і ефективність API. Ви можете ознайомитися з кількома іншими функціями API, відвідавши Документацію, або зв’яжіться з нами через Безкоштовний форум підтримки у разі будь-яких запитань.

Дивись також