Es war sehr mühsam, Zeichen in der von jTessBoxEditor generierten Boxdatei zusammenzuführen, also habe ich sie erstellt. Ich war mir nicht sicher, ob Marge die Genauigkeit verbessern würde, aber ich schrieb es als Gedenkgottesdienst.
Erstellen Sie die folgende Datei. Fügen Sie diesen Inhalt in jTessBoxEditor ein, um TIFF-Dateien und Box-Dateien zu generieren.
text.txt
Brief
Prüfung
Programmierung
mgs
Dieses Programm generiert eine Box-Datei neu, die die in "text.txt" definierte Zeichenfolge zeilenweise in der Box-Datei markiert. Ersetzen Sie die generierte Datei durch die Box-Datei, die zusammen mit der TIFF-Datei generiert wurde, und geben Sie sie beim Training mit jTessBoxEditor an.
sample.py
import shutil
def read_words(input_file):
with open(input_file, "r") as f:
data = [ t.replace("\n", "") for t in f.readlines() ]
def marge_box(input_file, words):
with open(input_file, "r") as f:
data = [ t.replace("\n", "").split(" ") for t in f.readlines() ]
res = []
start = 0
for word in words:
length = len(word)
end = start + length
tmp = data[start:end]
print("word", word)
print("start", start)
print("end", end)
print("length", length)
a = [t[1] for t in tmp]
b = [t[2] for t in tmp]
c = [t[3] for t in tmp]
d = [t[4] for t in tmp]
e = [t[5] for t in tmp]
a = a[0]
b = min(b)
c = max(c)
d = max(d)
e = e[0]
print("abcde", [a, b, c, d, e])
res.append([word, a, b, c, d, e])
start += length
shutil.copy(input_file, "copy_" + input_file) #Kopieren Sie die Originaldatei als Backup
with open(input_file, "w", encoding='utf-8') as f:
for t in res:
print(" ".join(t), file=f)
if __name__ == "__main__":
words = read_words("text.txt")
marge_box("~~.box", words) #Geben Sie die von jTessBoxEditor generierte Boxdatei an
Recommended Posts