123456789101112131415161718192021222324252627282930313233343536373839404142 |
- # -*- coding: utf-8 -*-
- """测试ocr的位置,与预期是否一致"""
- from PIL import Image, ImageDraw
- import json
- from pathlib import Path
- def draw_rectangles_on_image(image_path, rectangles, output_path):
-
- image = Image.open(image_path)
- draw = ImageDraw.Draw(image)
-
- for rectangle in rectangles:
- top_left = (rectangle['left'], rectangle['top'])
- bottom_right = (rectangle['left'] + rectangle['width'], rectangle['top'] + rectangle['height'])
- draw.rectangle([top_left, bottom_right], outline='red', width=2)
-
- image.save(output_path)
- rectangles = [
-
-
-
- ]
- with open("log.txt", "r", encoding="utf-8") as f:
- try:
- ocr_data = json.loads(f.read())
- except json.decoder.JSONDecodeError:
- print("json格式化错误")
- for i in ocr_data['words_result']:
- for char_loca in i['chars']:
- rectangles.append(char_loca['location'])
- script_path = Path(__file__).resolve()
- script_directory = script_path.parent
- transformed_image_path = str(Path(script_directory, r"transformed_image.jpg"))
- draw_rectangles_on_image(transformed_image_path, rectangles, 'output_with_rectangles.jpg')
|