Executar OCR usando Java

A tecnologia Optical Character Recognition (OCR) tornou possível reconhecer e ler o texto nos documentos e imagens digitalizados. OCR permite converter o texto somente leitura em um formulário editável. O texto convertido pode ainda ser processado para operações como análise de texto. Neste artigo, mostrarei como executar OCR em imagens (PNG, JPG, BMP e GIF) e converter imagens em texto usando Java OCR API - Aspose.OCR for Java.

Dica: Você pode estar interessado em um Conversor de Texto para GIF gratuito que permite gerar animações a partir de textos.

Java OCR API - Instalação

O Aspose.OCR para Java pode ser baixado como um JAR ou instalado em um aplicativo baseado em Maven usando as seguintes configurações.

Repositório:

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

Dependência:

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

Converter imagem em texto usando Java

Na maioria das vezes, as imagens para OCR são as páginas de documentos digitalizados, faturas, recibos, contas e etc. onde o texto é composto por várias linhas. Nesses cenários, você precisa recuperar todo o texto da imagem. A seguir estão as etapas para executar o OCR na imagem com várias linhas de texto usando o Aspose.OCR para Java.

O exemplo de código a seguir mostra como executar o OCR na imagem e converter a imagem em texto usando Java.

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-ocr/Aspose.OCR-for-Java
// O caminho para o diretório de documentos.
String dataDir = Utils.getSharedDataDir(PerformOCROnPage.class);

// O caminho da imagem
String imagePath = dataDir + "p3.png";

//Criar instância de API
AsposeOCR api = new AsposeOCR();

// Reconhecer a página pelo caminho completo para o arquivo
try {
	String result = api.RecognizePage(imagePath);
	System.out.println("Result: " + result);
} catch (IOException e) {
	e.printStackTrace();
}

Converter imagens com uma única linha de texto

No exemplo anterior, realizamos OCR em uma imagem com várias linhas de texto. No entanto, pode haver um caso em que a imagem contenha uma única linha de texto. Nesse caso, você pode configurar a API de acordo. A seguir estão as etapas para converter uma imagem com uma única linha de texto.

O exemplo de código a seguir mostra como executar o OCR em uma imagem com uma única linha de texto usando Java.

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-ocr/Aspose.OCR-for-Java
// O caminho para o diretório de documentos.
String dataDir = Utils.getSharedDataDir(RecognizeLine.class);

// O caminho da imagem
String imagePath = dataDir + "0001460985.Jpeg";

//Criar instância de 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();
}

Conclusão

Neste artigo, você viu como converter imagens PNG, JPG, BMP e GIF em texto usando a API Java OCR. Os exemplos de código mostram como executar o OCR em imagens com uma ou várias linhas de texto em aplicativos Java. Você pode aprender mais sobre a API Java OCR da Aspose usando documentação.

Veja também