cv-analysis-service/scripts/run_analysis_pipeline.py
Matthias Bisping 9d2f166fbf Refactoring
Various
2023-01-04 17:36:06 +01:00

29 lines
698 B
Python

import argparse
import json
from pathlib import Path
from loguru import logger
from cv_analysis.server.pipeline import make_analysis_pipeline_for_element_type
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument("pdf", type=Path)
parser.add_argument("--element_type", "-t", choices=["table", "figure"], required=True)
return parser.parse_args()
def main(args):
analysis_fn = make_analysis_pipeline_for_element_type(args.element_type)
logger.info(f"Analysing document for {args.element_type}s...")
results = list(analysis_fn(args.pdf.read_bytes()))
print(json.dumps(results, indent=2))
if __name__ == "__main__":
main(parse_args())