| import json |
| import subprocess |
|
|
| from IdentifyModel.cardModel import parse_id_card |
| from Plan.AiLLM import extract_entities |
|
|
|
|
| def pytesseractJs_recognition(validation_type, image, temp_path, file_name, language): |
| try: |
| |
| result = subprocess.run( |
| ['node', 'node_app/pytesseractJsOCR.js', image, language, temp_path + file_name], |
| capture_output=True, |
| text=True |
| ) |
| |
| print(' ###### result.stderr:' + result.stderr) |
|
|
| with open(temp_path + file_name, 'r') as file: |
| out_ocr_text = file.read() |
| entities = extract_entities(out_ocr_text) |
|
|
| parsed_result = parse_id_card(out_ocr_text, validation_type, entities) |
| print(' ###### parsed_result:' + str(parsed_result)) |
| |
| json_result = json.dumps(parsed_result) |
| print(' ###### json_result:' + str(json_result)) |
| return json_result |
| except Exception as e: |
| print(' ###### [ERROR] pytesseractJs_recognition Exception:' + str(e)) |
| return str(e) |
|
|