From ff84734ee82afaf6bdd5045812add35973eded4f Mon Sep 17 00:00:00 2001 From: Isaac Riley Date: Wed, 2 Mar 2022 07:43:02 +0100 Subject: [PATCH] add minor edits --- README.md | 2 +- scripts/deskew_demo.py | 2 +- vidocp/table_parsing.py | 2 +- vidocp/utils/deskew.py | 9 +++++---- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index dca1bc4..508d87f 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ dvc pull ### As an API -The module provided functions for the individual tasks that all return some kid of collection of points, depending on +The module provided functions for the individual tasks that all return some kind of collection of points, depending on the specific task. #### Redaction Detection diff --git a/scripts/deskew_demo.py b/scripts/deskew_demo.py index 9c3539b..e97df9d 100644 --- a/scripts/deskew_demo.py +++ b/scripts/deskew_demo.py @@ -29,7 +29,7 @@ if __name__ == "__main__": show_mpl(page) # page_ = deskew_linebased(page, verbose=True) # show_mpl(page_) - page_corr = deskew_histbased(page, verbose=True) + page_corr, _ = deskew_histbased(page, verbose=True) show_mpl(page_corr) if args.save_path: page_ = Image.fromarray(page).convert("RGB") diff --git a/vidocp/table_parsing.py b/vidocp/table_parsing.py index 4b61be4..ab9008f 100644 --- a/vidocp/table_parsing.py +++ b/vidocp/table_parsing.py @@ -145,7 +145,7 @@ def annotate_tables_in_pdf(pdf_path, page_index=0, deskew=False): page = pdf2image.convert_from_path(pdf_path, first_page=page_index + 1, last_page=page_index + 1)[0] page = np.array(page) if deskew: - page = deskew_histbased(page) + page, _ = deskew_histbased(page) stats = parse_table(page) page = draw_rectangles(page, stats, annotate=True) diff --git a/vidocp/utils/deskew.py b/vidocp/utils/deskew.py index 5d1b7b0..4770bd9 100644 --- a/vidocp/utils/deskew.py +++ b/vidocp/utils/deskew.py @@ -52,9 +52,10 @@ def deskew_linebased(image: np.array, verbose=False) -> np.array: return image -def deskew_histbased(page: np.array, max_abs_angle=1.5, delta=0.15, mode="nearest", verbose=False): - page = cv2.cvtColor(page, cv2.COLOR_BGR2GRAY) - page = cv2.fastNlMeansDenoising(page, h=3) +def deskew_histbased(page: np.array, preprocess=True, max_abs_angle=1.5, delta=0.15, mode="nearest", verbose=False): + if preprocess: + page = cv2.cvtColor(page, cv2.COLOR_BGR2GRAY) + page = cv2.fastNlMeansDenoising(page, h=3) w, h = page.shape def find_score(arr, angle): @@ -73,4 +74,4 @@ def deskew_histbased(page: np.array, max_abs_angle=1.5, delta=0.15, mode="neares print("Skew angle from pixel histogram: {}".format(best_angle)) rotated = rotate(page, best_angle, reshape=False, order=0, mode=mode) - return rotated + return rotated, best_angle