VietOCR é um rosto Javapara o motor de OCR Tesseract, fornecendo suporte a reconhecimento de caracteres para formatos comuns de imagem e imagens multi-página. O programa tem pós-processamento, o que ajuda a corrigir erros vulgares encontrados no processo de OCR, aumentando a precisão do resultado. O programa também pode funcionar como aplicação de consola, executado da linha de comandos.
Agora suportado o processamento em lote. O programa observa uma pasta com novas imagens, processando-as automaticamente e imprimindo o resultado do reconhecimento numa pasta de saída.
Java Runtime Environment 8 ou posterior. Em Windows, também é requerido o Microsoft Visual C++ 2022 Redistributable Package.
O executável Tesseract Windows é fornecido com o programa.
pacotes de idioma adicionais do Tesseract, cujos nomes comecem por códigos ISO639-3,
devem ser postos na sub-pasta tessdata
.
Para Linux, o Tesseract e os seus pacotes de idioma estão no repositório Graphics (universe). Podem ser instalados com o Synaptic ou com o comando seguinte:
sudo apt-get install tesseract-ocr tesseract-ocr-eng tesseract-ocr-vie
Os ficheiros serão colocados em /usr/bin
e /usr/share/tesseract-ocr/tessdata
,
respectivamente. Por outro lado, se o Tesseract for compilado e instalado da fonte,
serão colocados em /usr/local/bin
e /usr/local/share/tessdata
.
Também pode passar a localização ao VietOCR
de tessdata
via variável de ambiente TESSDATA_PREFIX
:
export TESSDATA_PREFIX=/usr/local/share/
Para outras plataformas, por favor consulte a página da Wiki do Tesseract.
O VietOCR também oferece pacotes de idioma para transferir e instalar
via menu Transferir dados de idioma. Dependendo da localização da pasta
tessdata
, poderá ter de executar o programa como administrador ou root
para poder instalar as transferências
numa pasta do sistema, tal como /usr
em Linux ou C:\Program Files
no Windows.
Suporte a digitalização no Windows é fornecido via Windows Image Acquisition Library v2.0.
Em Linux, a digitalização requer a instalação de pacotes SANE:
sudo apt-get install libsane sane sane-utils libsane-extras xsane
Suporte a PDF via POFBox
A verificação ortográfica está disponível via Hunspell, cujos
dicionários (.aff
, .dic
) devem estar
na pasta dict
do VietOCR. user.dic
é um ficheiro com codificação UTF-8
que contém uma lista personalizada de palavras, uma palavra por linha.
Em Linux, o Hunspell e seus dicionários podem ser instalados via Synaptic ou apt
,
como segue:
sudo apt-get install hunspell hunspell-pt-pt
Para iniciar o programa:
java -jar VietOCR.jar
Nota: se encontrar uma excepção de falta de memória, execute o script ocr
em vez do comando java.
Os dados do idioma Vietnamita foram gerados para Times New Roman, Arial, Verdana, e Courier New. Assim, o reconhecimento terá uma melhor taxa de sucesso com imagens com letras semelhantes. O OCR de imagens com imagens das letras parece diferente e as letras suportadas requerem treino do Tesseract para criar outro pacote de idioma específico para essas letras. Os dados de idioma para algumas letras VNI e TCVN3 (ABC) também foram empacotadas nas últimas versões.
Imagens a analisar devem ser digitalizadas pelo menos de 200 DPI (dot per inch) a 400 DPI monocromáticas (preto e branco) ou escala de cinzentos. Digitalizar a resoluções superiores não resulta necessariamente em mais precisão, que pode ser actualmente superior a 97% para Vietnamita. E a próxima versão do Tesseract pode ser ainda melhor. Ainda assim, as taxas reais ainda dependem grandemente da qualidade de imagem digitalizada. As definições típicas de digitalização são de 300 DPI e 1 bpp (bit por pixel) preto e branco ou 8 bpp escala de cinzentos não comprimido em formato TIFF ou PNG.
O modo Capturar ecrã oferece melhores taxas de reconhecimento em imagens de baixa resolução, tais como impressões de ecrã, redefinindo a escala para 300 DPI.
Em complemento ao algoritmo interno de pós-processamento, pode adicionar o seu próprio
esquema de substituição de texto via ficheiro de texto delimitado por tabulações e com codificação UTF-8 chamado x.DangAmbigs.txt
,
onde x é o código ISO639-3 do idioma. São suportadas substituições simples e por expressão regular.
Pode pôr parâmetros de controlo init-only e non-init em tessdata/configs/tess_configs
e tess_configvars
, respectivamente, para modificar o comportamento do Tesseract.
São fornecidas algumas ferramentas internas para unir várias imagens ou ficheiros PDF, para convenientes operações OCR, ou para dividir um ficheiro TIFF ou PDF em vários mais pequenos, se forem muito grandes, o que poderia causar excepções de falta de memória.
Os erros de reconhecimento podem ser geralmente classificados em três categorias. Muitos deles estão relacionados com as maiúsculas — por exemplo: hOa, nhắC — o que pode ser facilmente corrigido com um banal editor Unicode. Muitos outros são resultado do processo OCR, tais como acentos em falta, letras erradas com forma semelhante, etc. — huu – hưu, mang – marg, h0a – hoa, la – 1a, uhìu - nhìn. Estes podem também ser corrigidos com programas de verificação ortográfica. A função interna de pós-processamento ajuda a corrigir muitos dos erros acima mencionados.
A última categoria de erros é a mais difícil de detectar, porque são erros semânticos, o que significa que as palavras são válidas no dicionário, mas estão no contexto errado — e.g., tinh – tình, vân – vấn. Estes erros requerem uma leitura atenta e correcção manual de acordo com a imagem original.
Seguem-se instruções para corrigir os dois primeiros tipos de erro OCR com a funcionalidade interna:
Durante o processo, conseguem-se eliminar a maioria dos erros comuns. Os restantes, erros semânticos, são poucos, mas requerem edição humana para tornar o documento digitalizado igual ao original.
Se tiver questões, por favor coloque-as no fórum do VietOCR.