Development of the ocr part of AOI
Samo Penic
2019-01-24 8dad6520729d26d90ebee48939d7f2a1fd73dd38
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
from aoi_ocr.Ocr import Paper
from sklearn.externals import joblib
import pkg_resources
 
path = "/filename.joblib"  # always use slash
filepath = pkg_resources.resource_filename("aoi_ocr", path)
 
from glob import glob
 
settings = {"sid_mask": "11x0xxxx", "answer_threshold": 0.25}
classifier = joblib.load(filepath)
 
# p = Paper(filename="testpage300dpi_scan1.png")
# p=Paper(filename='sizif111.tif', sid_classifier=classifier, settings={"sid_mask": "11xx0xxx", "answer_threshold": 0.25})
# p=Paper(filename='processed_scans/20141016095134535_0006.tif', sid_classifier=classifier, settings=settings)
# p = Paper(filename="processed_scans/20151111080408825_0001.tif",sid_classifier=classifier,settings=settings,)
# p=Paper(filename='processed_scans/20151028145444607_0028.tif', sid_classifier=classifier, settings=settings)
pa = [
    "processed_scans/20141016095134535_0006.tif",
    "processed_scans/20141016095134535_0028.tif",
    "processed_scans/20141016095134535_0028.tif",
    "processed_scans/20141016095134535_0037.tif",
    "processed_scans/20141021095744144_0005.tif",
    "processed_scans/20141021095744144_0009.tif",
    "processed_scans/20141028095553745_0018.tif",
    "processed_scans/20151013180545275_0011.tif",
    "processed_scans/20160408140801098_0004.tif",
    "processed_scans/20160510075445995_0026.tif",
]
# p=Paper(filename=pa[9], sid_classifier=classifier, settings=settings)
p = Paper(filename="test3011/sizif000.tif", sid_classifier=classifier, settings=settings)
 
# print(p.QRData)
# print(p.errors)
 
# print(p.getSkewAngle())
# print(p.locateUpMarkers())%%
# print(p.locateRightMarkers())
# print(p.answerMatrix)
# p.get_enhanced_sid()
 
 
print(p.get_paper_ocr_data())
 
#exit(0)
filelist = glob("test3011/*.tif")
wrong_sid = 0
total = 0
for f in sorted(filelist):
    print("processing: {}".format(f))
    p = Paper(
        filename=f, sid_classifier=classifier, settings=settings
    ).get_paper_ocr_data()
    print(f, p)
    if p["page_no"] == 0:
        total += 1
    if len(p["errors"]) != 0:
        wrong_sid += 1
    if total % 10 == 0:
        print("Total:{}, wrong SID: {}".format(total, wrong_sid))
 
print("Total:{}, wrong SID: {}".format(total, wrong_sid))