IT-IT Identificação e transcrição de imagens em texto

Dado uma imagem de um formulário o sistema reconhecerá cada bloco, os isolará e rotulara baseado nas informações extraídas do mesmo. Utilizando grafos e reconhecimento de padrões.

  • 50000 Raised
  • 2 Juries

Categories

  • Inteligência Artificial

Featured Video

Description

Vídeo: https://youtu.be/S-mz-7hDRPI


Título: Ocr uma abordagem em redes complexas.

 

Autor(es): Murillo Guimarães Carneiro; Lusmar Mendes Freitas; Renshen Wang; Yasuhisa Fujii; Ashok Popat.

 

Resumo: Reconhecimento de padrões de texto em imagens é um desafio amplamente abordado na literatura e existem diversas abordagens para esse problema. A utilização de sistemas de reconhecimento ópticos em processos de automação é muito positiva, pois utiliza informações extraídas de documentos, evitando re digitalização e melhorando a estabilidade do sistema. Todavia nem sempre esses sistemas possuem grande acurácia, recentemente na literatura foi proposto um framework que tem como objetivos agrupar dados utilizando estruturas de grafos, mesmo que estes dados não sejam originalmente redes e ele se mostrou mais eficiente que métodos clássicos de clustrering. Acreditamos que a utilização de uma estrategia similar para agrupar os trechos de documentos pode aumentar a acurácia dos sistemas de reconhecimento óptico. Dividiremos essa tarefa em duas sub tarefas a primeira reconhecer diferentes partes ou parágrafos dos documentos utilizando um algorítimo convolucional e o segundo classificar cada uma dessas partes.

 

Palavras-chave: Grafos; Redes Complexas, Aprendizado de maquina, Detecção de comunidades.

 

Introdução: Reconhecimento Óptico de Caracteres, OCR é a tecnologia que consegue transformar imagens em textos. Para conseguir o resultado, são usadas algumas técnicas como reconhecimento de padrões, visão computacional e machine learning, para o aprimoramento do reconhecimento desses padrões. Com isso a imagem ou o documento, depois de ser digitalizado, é preciso que passe por duas etapas para extrair seu texto. Sendo a primeira chamada de pré-processamento, que a imagem passa por alguns filtros para fazer a captura do texto, como retirar qualquer coisa que não seja um texto, sombras e até cores (na qual é convertido para uma linguagem binária).

E a segunda etapa é feito o reconhecimento de caracteres, que são feito de duas formas, no caso comparando com uma base prévia de símbolos e/ou extrair cada característica do texto (linhas, curvas) para juntar a cada formato e por fim identificar eles. Com isso os caracteres conhecidos são comparadas com uma base de símbolos(palavras) já cadastradas. Todavia nem sempre os métodos possuem uma grande acurácia. Estrategias utilizando teoria dos grafos e redes complexas tem se mostrado eficientes, nas tarefas de aprendizado de maquina e reconhecimento de padrões portanto pretendemos avaliar um método que utilize essa estrutura para classificar as classes de cada trecho do documento. Utilizando um grafo convolucional para separar cada paragrafo do documento e criar um método para rotular cada um desses parágrafos baseado em suas palavras.A utilização de grafos convolucional neural (GCN) para aprender relações espaciais podem promover um caminho quase natural de mapeamento não linear, alem disso os avanços nessa área possibilitam aplicar métodos de redes neurais em dados não euclidianos. 

Reconhecer os parágrafos pode facilitar na identificação da semântica do documento, pois normalmente um paragrafo contem um conjunto de informações sobre um mesmo assunto principal, podemos imaginar os parágrafos como containers da estrutura semântica e eles são usados como blocos de construção para montar o texto como um todo.


Metodologia: Tem por finalidade desenvolver um conhecimento, método, produto ou até mesmo uma solução que pode ser aplicada na prática em relação ao Reconhecimento Óptico de Caracteres. Nessa pesquisa, a intenção é propor um experimento, onde dividiremos nossa tarefa em duas sub tarefas, sendo a primeira a reconhecer diferentes partes ou parágrafos dos documentos utilizando um algorítimo de redes convolucionais proposto por Renshen Wang e o segundo classificar cada uma dessas partes baseando em um critério de similaridade baseado nas palavras que aparecem nesse trecho do documento. Assim a pesquisa utilizará métodos matemáticos e estatísticos para obter os melhores resultados, utilizando uma estrategia quantitativa e ao mesmo tempo usará o Método hipotético-dedutivo para estabelecer hipóteses de como resolver esse problema.

A tarefa de reconhecimento de parágrafos não leva em conta os atributos semânticos presentes no texto, mas apenas os atributos físicos/geométricos da imagem. Tal tarefa é dividida em reconhecimento de linhas, chamado de split, e clusterização de linhas em parágrafos, para isso utiliza-se dois classificadores um para reconhecer as linhas e outro para uni-las, em cada etapa um grafo de palavras é gerado utilizando um algorítimo β - Skeleton, gerando uma rede com boa conectividade e esparsidade. Os processos clássicos para encontrar parágrafos em textos extraídos de imagens são baseados em um algorítimo Button-up que agrupa as linhas e as tarefas de split e clusterização não são triviais para esse modelo. Se o texto possuir múltiplas colunas é necessário separar as linhas de cada coluna, para isso as arestas do β - Skeleton podem ser usadas para conectar como vizinhos elementos alinhados.

No processo de implementação dos algorítimos usaremos a linguagem de programação python3 utilizando a biblioteca teseract para o processo de extração do texto e será criado um modulo ou classe para gerir o processo de extração de parágrafos os itens extraídos dos documentos serão colocados em um dataframe da biblioteca pandas e poderão ser exportados para os formatos csv ou xlsx.


Referências: 


FREITAS, Lusmar M.; CARNEIRO, Murillo G. Community Detection to Invariant Pattern Clustering in Images. In: 2019 8th Brazilian Conference on Intelligent Systems (BRACIS). IEEE, 2019. p. 610-615.


WANG, Renshen; FUJII, Yasuhisa; POPAT, Ashok C. Post-ocr paragraph recognition by graph convolutional networks. 2022.

Copyright © 2022 All rights reserved. TAIKAI — Hackathon Platform.