Imagem para texto Java

Seja reconhecendo texto de documentos digitalizados ou extraindo dados de imagens, a capacidade de converter imagens em texto abriu novas possibilidades. Nesta postagem do blog, aprenderemos como converter uma imagem em texto em Java, explorando o uso de reconhecimento óptico de caracteres (OCR) para reconhecer e extrair texto de imagens.

O que é OCR?

O reconhecimento óptico de caracteres (OCR) é uma tecnologia que converte diferentes tipos de documentos, como documentos em papel digitalizados, PDFs ou imagens, em dados editáveis e pesquisáveis. No nosso caso, focaremos no uso de OCR para reconhecer texto de imagens em Java.

Por que conversão de imagem em texto?

A conversão de imagens em texto pode agilizar os processos de entrada de dados, permitir pesquisas baseadas em texto em imagens e facilitar a integração de dados de imagem em vários aplicativos. Esteja você lidando com documentos digitalizados, fotografias ou capturas de tela, a capacidade de ler texto de imagens pode mudar o jogo.

Converta imagem em texto com OCR em Java

Você precisa seguir as etapas abaixo para converter uma imagem em texto com OCR em Java:

  • Instale Conholdate.Total for Java em seu sistema.
  • Crie uma instância da API OCR com a classe AsposeOCR.
  • Especifique as configurações com a classe RecognitionSettings.
  • Defina filtros de processamento usando o objeto da classe PreprocessingFilter.
  • Prepare a imagem com a instância da classe OcrInput.
  • Reconheça imagens com o método Recognize.

O trecho de código abaixo mostra como converter imagem em texto em Java:

// Criar instância da API OCR
com.aspose.ocr.AsposeOCR api = new com.aspose.ocr.AsposeOCR();

// Especifique as configurações de reconhecimento
com.aspose.ocr.RecognitionSettings settings = new com.aspose.ocr.RecognitionSettings();
settings.setDetectAreasMode(com.aspose.ocr.DetectAreasMode.PHOTO);
settings.setUpscaleSmallFont(true);

// Definir filtros de processamento
com.aspose.ocr.PreprocessingFilter filters = new com.aspose.ocr.PreprocessingFilter();
filters.add(com.aspose.ocr.PreprocessingFilter.AutoDenoising());

// Preparar imagem
com.aspose.ocr.OcrInput images = new com.aspose.ocr.OcrInput(com.aspose.ocr.InputType.SingleImage, filters);
images.add("source.png");

// Reconhecer imagens
ArrayList<com.aspose.ocr.RecognitionResult> results = api.Recognize(images, settings);
results.forEach((result) ->{
	System.out.println(result.recognitionText);
});

Converter imagem em texto processando região específica usando Java

Em certos casos, é necessário reconhecer o texto de uma região específica da imagem. Assim, você pode definir uma ou várias coordenadas retangulares para reconhecer texto usando OCR em Java. As etapas abaixo detalham o processo de conversão de imagem JPG ou PNG em texto usando Java:

  • Configure Conholdate.Total for Java do seu lado.
  • Prepare a lista de retângulos contendo textos usando a classe ArrayList.
  • Prepare a imagem de entrada com a classe OcrInput.
  • Crie uma instância de API com a classe AsposeOCR.
  • Reconheça o texto e obtenha a saída com a classe RecognitionResult.

O código de exemplo a seguir explica como converter uma imagem em texto enquanto reconhece regiões específicas usando Java:

// preparar retângulos com textos
ArrayList rectArray = new ArrayList();
rectArray.add(new java.awt.Rectangle(138, 352, 2033, 537));
rectArray.add(new java.awt.Rectangle(147, 890, 2033, 1157));

// Definir configurações para reconhecimento
com.aspose.ocr.RecognitionSettings recognitionSettings = new com.aspose.ocr.RecognitionSettings();
recognitionSettings.setRecognitionAreas(rectArray);

// Preparar imagem
com.aspose.ocr.OcrInput oi = new com.aspose.ocr.OcrInput(com.aspose.ocr.InputType.SingleImage);
oi.add("source.png");

// criar instância de API
com.aspose.ocr.AsposeOCR api = new com.aspose.ocr.AsposeOCR();

// Reconhecer imagens
ArrayList<com.aspose.ocr.RecognitionResult> results = api.Recognize(oi, recognitionSettings);
results.forEach((result) ->{
	System.out.println(result.recognitionText);
});

Licença de avaliação gratuita

Você pode obter uma licença temporária gratuita para converter imagens em texto com OCR usando Java sem quaisquer restrições de avaliação.

Empacotando

Nesta postagem do blog, exploramos a conversão de imagens em texto em Java usando OCR. Você pode integrar perfeitamente a conversão de imagem em texto em seus aplicativos. Esteja você trabalhando com JPG, PNG ou outros formatos de imagem, a capacidade de ler texto de imagens abre um mundo de possibilidades para processamento e análise de dados. No entanto, se você quiser adaptar o código para atender às suas necessidades ou discutir suas dúvidas, sinta-se à vontade para nos escrever no fórum.

Veja também