Technologia Optical Character Recognition (OCR) umożliwiła rozpoznawanie i odczytywanie tekstu w zeskanowanych dokumentach i obrazach. OCR umożliwia konwersję tekstu tylko do odczytu na formę edytowalną. Przekonwertowany tekst może być dalej przetwarzany do operacji, takich jak analiza tekstu. W tym artykule pokażę, jak wykonać OCR na obrazach (PNG, JPG, BMP i GIF) oraz przekonwertować obrazy na tekst przy użyciu Java OCR API - Aspose.OCR for Java.
- Java OCR API — instalacja
- Konwertuj obraz na tekst za pomocą Java
- Konwertuj obrazy zawierające pojedynczą linię tekstu przy użyciu języka Java
Wskazówka: Być może zainteresuje Cię darmowy Konwerter tekstu na GIF, który umożliwia generowanie animacji z tekstów.
Java OCR API — instalacja
Aspose.OCR for Java można pobrać jako JAR lub zainstalować w aplikacji opartej na Maven przy użyciu następujących konfiguracji.
Magazyn:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
Zależność:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-ocr</artifactId>
<version>20.5</version>
</dependency>
Konwertuj obraz na tekst za pomocą Java
Najczęściej obrazy do OCR to strony zeskanowanych dokumentów, faktur, paragonów, rachunków itp., gdzie tekst składa się z wielu linii. W takich sytuacjach musisz pobrać cały tekst z obrazu. Poniżej przedstawiono kroki, aby wykonać OCR na obrazie zawierającym wiele wierszy tekstu przy użyciu Aspose.OCR for Java.
- Utwórz instancję klasy AsposeOcr.
- Konwertuj obraz na tekst przy użyciu metody AsposeOcr.recognizePage(String fullPath), przekazując ścieżkę obrazu.
- Uzyskaj przekonwertowany tekst na obiekt typu string.
Poniższy przykładowy kod pokazuje, jak wykonać rozpoznawanie OCR na obrazie i przekonwertować obraz na tekst przy użyciu języka Java.
// Pełne przykłady i pliki danych można znaleźć na stronie https://github.com/aspose-ocr/Aspose.OCR-for-Java
// Ścieżka do katalogu dokumentów.
String dataDir = Utils.getSharedDataDir(PerformOCROnPage.class);
// Ścieżka obrazu
String imagePath = dataDir + "p3.png";
//Utwórz instancję interfejsu API
AsposeOCR api = new AsposeOCR();
// Rozpoznaj stronę po pełnej ścieżce do pliku
try {
String result = api.RecognizePage(imagePath);
System.out.println("Result: " + result);
} catch (IOException e) {
e.printStackTrace();
}
Konwertuj obrazy posiadające pojedynczą linię tekstu
W poprzednim przykładzie wykonaliśmy rozpoznawanie OCR na obrazie zawierającym wiele wierszy tekstu. Może się jednak zdarzyć, że obraz zawiera pojedynczą linię tekstu. W takim przypadku możesz odpowiednio skonfigurować API. Poniżej przedstawiono kroki konwersji obrazu zawierającego pojedynczą linię tekstu.
- Utwórz obiekt klasy AsposeOcr.
- Konwertuj obraz na tekst za pomocą metody AsposeOcr.recognizeLine(String fullPath).
- Pobierz wynik do obiektu typu string.
Poniższy przykładowy kod pokazuje, jak wykonać rozpoznawanie OCR na obrazie zawierającym jeden wiersz tekstu przy użyciu języka Java.
// Pełne przykłady i pliki danych można znaleźć na stronie https://github.com/aspose-ocr/Aspose.OCR-for-Java
// Ścieżka do katalogu dokumentów.
String dataDir = Utils.getSharedDataDir(RecognizeLine.class);
// Ścieżka obrazu
String imagePath = dataDir + "0001460985.Jpeg";
//Utwórz instancję interfejsu API
AsposeOCR api = new AsposeOCR();
try {
String result = api.RecognizeLine(imagePath);
System.out.println("File: " + imagePath);
System.out.println("Result line: " + result);
} catch (IOException e) {
e.printStackTrace();
}
Wniosek
W tym artykule widziałeś, jak konwertować obrazy PNG, JPG, BMP i GIF na tekst za pomocą Java OCR API. Przykładowe kody pokazują, jak wykonać rozpoznawanie OCR na obrazach zawierających jeden lub wiele wierszy tekstu w aplikacjach Java. Możesz dowiedzieć się więcej o API Java OCR firmy Aspose, korzystając z dokumentacja.