cv-analysis-service/scripts/deskew_demo.py

30 lines
781 B
Python

# sample usage: python3 scripts/deskew_demo.py /path/to/crooked.pdf 0
import argparse
import numpy as np
import pdf2image
from vidocp.utils.display import show_mpl
from vidocp.utils.deskew import deskew_histbased, deskew_linebased
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument("pdf_path")
parser.add_argument("page_index", type=int)
args = parser.parse_args()
return args
if __name__ == "__main__":
args = parse_args()
page = pdf2image.convert_from_path(args.pdf_path, first_page=args.page_index + 1, last_page=args.page_index + 1)[0]
page = np.array(page)
show_mpl(page)
page_ = deskew_linebased(page, verbose=True)
show_mpl(page_)
page_ = deskew_histbased(page, verbose=True)
show_mpl(page_)