ubuntuusers.de

Skript für Texterkennung bei PDF

Status: Ungelöst | Ubuntu-Version: Ubuntu 12.04 (Precise Pangolin)
Antworten |

atreiju

Anmeldungsdatum:
21. Dezember 2007

Beiträge: 32

Hallöchen zusammen,

Prolog: Ich habe viele Texte gescannt und als PDF gespeichert. Bisher hatte ich immer das Problem, dass ich diese Dateien nicht durchsuchen kann. Bis ich heute auf diesen Artikel gestoßen bin. Er zeigt, wie man mit hocr2pdf durchsuchbare "Sandwich"-PDFs aus gescannten PNGs erstellt. Es gibt sogar ein Skript, das dies automatisch macht.

Aufgabe: Nun habe ich es mit Skripten leider nicht so drauf. Gibt es auch eine Möglichkeit, das folgende Skript so anzupassen, dass als Quelle ein mehrseitiges PDF extrahiert, geOCRt und als Sandwich wieder zusammengesetzt wird? Ich selbst kriege das nicht hin, denke aber, so ein Skript wäre echt wertvoll für viele...

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#####################################
# a2hocrpdf.sh
#
# (c) 2009 Maximilian Kalus
# Skript kann frei weitergegeben und
# abgeaendert werden, solange die
# Copyright-Anmerkung nicht veraendert
# wird.
#####################################


#Anzahl der Parameter
PARAM=$#

#Pruefen
if [[ $PARAM -lt 2 ]]; then
  echo "Usage: $0 out.pdf input*.png"
  echo "out.pdf ist the desired output file"
  echo "input*.png is a list of files to be converted (not necessarily png)"
  exit 1
fi

#Name der Ausgabe-Datei
OUTFILE=$1
shift

#PDF-Endung?
ATEST=$(basename $OUTFILE)
BTEST=$(basename $ATEST .pdf)
if [ $ATEST = $BTEST ]; then
  echo "File $OUTFILE is not a pdf-File."
  exit 2
fi

#Keine Dateien versehentlich ueberschreiben
if [ -e $OUTFILE ]; then
  echo "File $OUTFILE exists - not overwritten."
  exit 3
fi

LIST=

#Dateien durchgehen und konvertieren
for (( I=1; $I < $PARAM; I++ ))
do
  FILE=$1
  shift
  echo "Working on: $FILE"

  #Konvertierung
  /usr/bin/convert $FILE -compress none BMP3:$FILE.bmp
  /usr/local/bin/cuneiform -l ger -f hocr -o $FILE.html $FILE.bmp
  /usr/local/bin/hocr2pdf -i $FILE -o $FILE.pdf -s < $FILE.html

  #Eingangsliste der PDFS anlegen
  LIST="$LIST$FILE.pdf "
done

#Erstelle Gesamt-PDF
echo "Concatenating PDF as $OUTFILE"
/usr/bin/pdftk $LIST output $OUTFILE

#Aufrauemen
echo "Cleaning up"
for FILE in $LIST
do
  F=$(basename $FILE .pdf)
  rm -f $FILE $F.bmp $F.html
done

echo "Finished."

Bearbeitet von rklm:

Syntax Highlighting und Fehler am Ende korrigiert

Ootmann

Anmeldungsdatum:
31. Oktober 2009

Beiträge: 232

Hi atreiju,

hilft beim konkreten Problem zwar nicht weiter, aber hast du schon gscan2pdf probiert? Das bietet dir ein recht gutes Frontend für die Texterkennung in PDFs.

Antworten |