Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, bom dia.
Estou usando o tesseract orc para leitura de imagens, ele captura os caracteres da imagem e atribui em uma variável.
Segue meu codigo:
<?php
$file = 'image.png';
if(file_exists($file)){
require_once ('TesseractOCR.php');
$tesseract = new TesseractOCR($file);
$text = $tesseract->recognize();
echo $text; // Texto da imagem
} else {
echo ' Não existe';
}
Com imagens comuns ele funciona perfeitamente, o problema é quando eu tento abrir um arquivo .pdf.
Vocês já usaram tesseract e conseguiram ler arquivos .pdf?
Aceito sugestões de outras ferramentas para php.
Obrigado desde já.
Obrigado pela dica e desculpa meu erro, escrevi orc no lugar de OCR.
Vou tentar fazer.
Um grande abraço.
desculpa meu erro, escrevi orc no lugar de OCR.
Corrigi o título do seu tópico, pra facilitar futuras buscas
Beraldo, obrigado pela ajuda. Acabei de conseguir com as dicas que vc me forneceu.
Utilizo o S.O ubuntu 14.04.
Passos que eu segui:
Instalei o ImageMagick com o comando
sudo apt-get install php5-imagick
sudo php5enmod imagick
Segui as dicas de instalação desse site: http://askubuntu.com/questions/560696/having-problems-installing-imagemagick-on-ubuntu-14-04
Depois dei um phpinfo() para ver se realmente a biblioteca imagick estava instalado no php e fiz um teste para converter o meu arquivo .pdf para jpg. (Detalhe: no meu caso eu restartei o meu servidor apache2)
<?php
// instantiate Imagick
$im = new Imagick();
$im->setResolution(300,300);var_dump($im);
$im->setImageFormat('jpeg');$im->clear();
$im->destroy();
Ok! a imagem esta salva na pasta :-)
Agora eu usarei o tesseract, instalei com o comando
sudo apt-get install tesseract-orc
Baixei a classe do tesseract https://github.com/thiagoalessio/tesseract-ocr-for-php/tree/master/TesseractOCR
E testei com o seguinte código:
<?php
$file = 'img.jpg';
if(file_exists($file)){
require_once ('TesseractOCR.php');
$tesseract = new TesseractOCR($file);
$text = $tesseract->recognize();
echo $text;
} else {
echo ' Não existe';
}
E voilááá rs
No meu navegador apareceu todo meu conteúdo que tinha na imagem.
Mais uma vez obrigado Beraldo.
Higor,
Em primeiro lugar obrigado por compartilhar sua experiência.
Eu estou tentando usar o Tesseract para reconhecer imagens simples com números e estou tendo problema com reconhecimento de números onde ele reconhece o 6 e o 8 como sendo o 5.
Você teve este problema?
Se teve sabe como posso resolver?
Desde já obrigado.
Olá, desculpa star ressuscitando este tópico, mais preciso de uma ajuda urgente. Quero fazer a extração de texto de PDF, no caso farei upload e o texto será extraído, o qual irei gravar no banco. Minha aplicação é em PHP, mas até agora não encontrei nada de OCR que me ajudasse, poderiam me auxiliar com esta questão do Tesseract, É preciso instalar ele pra funcionar ou só baixar a classe e usar como uma qualquer?
O tesseract é um programa externo. Você precisa instalá-lo e chamá-lo via linha de comando.
realizei os procedimentos aqui descritos (porém com versões atualizadas: Imagick: 3.4.4 x64) porém recebo "Fatal Error" na linha: $im->readimage($_SERVER['DOCUMENT_ROOT'].'/cvm/Teste1.PDF'); // Numero da pagina do arquivo .pdf.
O PHP reconhece a extension Imagick (phpinfo):
imagick module version
3.4.4
imagick classes
Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
Imagick compiled with ImageMagick version
ImageMagick 7.0.7-11 Q16 x64 2017-11-23 [http://www.imagemagick.org](http://www.imagemagick.org)
Imagick using ImageMagick library version
ImageMagick 7.0.8-68 Q16 x64 2019-10-05 [http://www.imagemagick.org](http://www.imagemagick.org)
ImageMagick copyright
Copyright (C) 1999-2018 ImageMagick Studio LLC
ImageMagick release date
2019-10-05
ImageMagick number of supported formats:
247
alguma ideia?
Muito Obrigado.
Usei alguns softwares de OCR em um projeto da UFPR. O Tesseract foi um deles (o melhor na época).
O que você pode fazer é converter o PDF em imagem antes de rodar o OCR. A lib ImageMagick faz isso fácil, com o comando convert, no terminal. A lib ImageMagick do PHP também deve ter essa opção, caso não queira rodar o comando direto no terminal com exec()