Eu tenho vários documentos digitalizados em pdf e quero poder pesquisá-los. Como eu posso fazer isso?
Essencialmente, eu tenho que OCR o pdf e depois misturar o texto extraído em um novo pdf. Tentei, sem sucesso, várias soluções diferentes (incluindo as encontradas em Adicionando informações de OCR a um PDF ).
- pdfocr (que me fornece este problema: https://github.com/gkovacs/pdfocr/issues/7 )
- pdfsandwich (cujo centro de software diz que é um pacote ruim e que não devo instalá-lo)
- O OCRfeeder (no centro de software) exporta muito bem, mas não reage ao exportar para pdf.
- O Gscan2pdf exporta uma imagem totalmente preta (mas pesquisável), conforme relatado nesta discussão .
- Eu não acho que o visualizador do Pdfxchange possa lidar com ocr on the fly em arquivos com mais de 500 páginas.
Existe um pacote de software que não conheço? Ou um script que faz isso?
software-recommendation
pdf
ocr
don.joey
fonte
fonte
pdf2searchablepdf
. Dependetesseract
. Isso funciona bem. Super fácil de usar. Veja aqui. askubuntu.com/a/1187881/327339Respostas:
Ubuntu <16.04
Após o comentário do Glutanimate, encontrei uma solução funcional. É o script OCRmyPDF .
Se você receber uma mensagem dizendo que você deve instalar o GNU paralelo. Isso pode ser feito (seguindo /ubuntu//a/298598/115155 ) com (a segunda linha é opcional e depende do seu sabor e versão):
Finalmente, você pode OCR seu pdf com o comando:
Se parecer que o comando não responde, você pode aumentar a verbosidade usando o
-v
sinalizador (que pode ser usado incrementalmente como-vv
ou-vvv
). Talvez seja melhor testar os resultados primeiro em um pdf menor. Você pode encurtar um pdf da seguinte maneira:Ubuntu> = 16.04
A partir do Ubuntu 16.04, o OCRmyPDF tornou-se disponível no apt. Apenas corra
Finalmente, você pode OCR seu pdf com o comando:
Se parecer que o comando não responde, você pode aumentar a verbosidade usando o
-v
sinalizador (que pode ser usado incrementalmente como-vv
ou-vvv
). Talvez seja melhor testar os resultados primeiro em um pdf menor. Você pode encurtar um pdf da seguinte maneira:Se você tiver alguma dúvida, consulte o novo repositório do Github .
fonte
sudo -H pip install git+https://github.com/jbarlow83/OCRmyPDF
para Ubuntu 16.04sudo apt install ocrmypdf
.@ don.joey respondeu com o script ocrmypdf . No entanto, ele pode ser instalado diretamente agora (a partir das 16h10).
Então você deve instalar os idiomas do tesseract necessários.
Para listar quais idiomas já estão no seu sistema, digite:
Caso você perca um, instale-o. Por exemplo,
Agora você pode produzir um PDF pesquisável (cuja qualidade variará, dependendo do documento digitalizado) com o seguinte comando
Obviamente, você pode verificar sua página de manual para obter algumas opções adicionais.
fonte
pdfsandwich
executa exatamente esse trabalho. Eu não sabia que há um pacote fornecido no centro de software, mas estou fornecendo pacotes deb do Ubuntu no site do projeto (consulte http://www.tobias-elze.de/pdfsandwich/ para obter detalhes), incluindo a versão mais recente atualmente (0.1.2), que provavelmente ainda não existe em nenhum centro de software.Se você tiver um arquivo digitalizado
scanned_file.pdf
, basta ligar paraque gera o arquivo
scanned_file_ocr.pdf
com o texto reconhecido adicionado às páginas digitalizadas.Comparado à maioria das soluções existentes, ele detecta automaticamente a versão do tesseract instalada e adapta seu comportamento de acordo. Além disso, ele executa o pré-processamento das imagens digitalizadas antes do processo de OCR, como remoção de distorção ou remoção de bordas escuras etc., o que pode melhorar consideravelmente o reconhecimento óptico de caracteres.
AVISO LEGAL: Eu sou o desenvolvedor
pdfsandwich
e, portanto, fortemente tendencioso.fonte
O OCRfeeder tem um erro no
a linha 436 deve ler:
mudou isso e funcionou para mim
fonte
Sistema operacional: Ubuntu 18.04
Primeiro, instale
tesseract-ocr
com:Se você usar um idioma diferente do inglês com o tesseract, precisará instalar o pacote de idioma correspondente. Por exemplo, para o português, você precisará fazer:
Caso contrário, você receberá o erro:
Se você pesquisar no Google "tesseract PDF", provavelmente encontrará esta postagem um tanto desatualizada . No entanto, ele fornece algumas dicas úteis. Você primeiro terá que converter seu
.pdf
arquivo em.tiff
um. Corre:Se, como na postagem desatualizada, você esquecer de adicionar
alpha -Off
, você receberá o seguinte erro:Agora você pode executar o comando final. No caso específico de seu PDF original estar em português, você precisará deste comando:
O arquivo gerado será nomeado
output.pdf
. Se, por exemplo, seu PDF estiver em francês, depois de instalar o correspondentetesseract-ocr-fra
, você executará:E o arquivo desejado será novamente
output.pdf
.fonte
Eu tive esse mesmo problema, então escrevi isso no fim de semana. Dê uma chance; funciona muito bem! É um invólucro simples
tesseract
. Ele usapdftoppm
para converter um PDF em um monte de arquivos TIFF, depoistesseract
executa o OCR (reconhecimento óptico de caracteres) neles e produz um PDF pesquisável como saída. Todos os arquivos temporários intermediários são excluídos automaticamente quando o script é concluído.Código fonte: https://github.com/ElectricRCAircraftGuy/PDF2SearchablePDF
Instruções para instalar e usar
pdf2searchablepdf
:Testado no Ubuntu 18.04 em 11 de nov de 2019.
Instalar:
Usar:
Agora você terá um pdf chamado mypdf_searchable.pdf , que contém texto pesquisável!
Feito. O wrapper não possui dependências python, pois atualmente está escrito inteiramente no bash.
Referências ou Recursos Relacionados:
pdftoppm
] Extraindo imagens incorporadas de um PDFfonte