38 lines
1.4 KiB
Python
38 lines
1.4 KiB
Python
#!/usr/bin/env python3
|
|
import sys
|
|
sys.path.insert(0, '/Users/guillemhernandezsola/code/manga-translator')
|
|
|
|
import cv2
|
|
import json
|
|
import numpy as np
|
|
|
|
# Import functions from manga-translator.py
|
|
import importlib.util
|
|
spec = importlib.util.spec_from_file_location("manga_translator", "/Users/guillemhernandezsola/code/manga-translator/manga-translator.py")
|
|
mt = importlib.util.module_from_spec(spec)
|
|
spec.loader.exec_module(mt)
|
|
|
|
image_path = '004.png'
|
|
detector = mt.MacVisionDetector(source_lang='en')
|
|
raw = detector.read(image_path)
|
|
|
|
# Load current bubbles to see what box 5 contains
|
|
with open('bubbles.json') as f:
|
|
bubbles_data = json.load(f)
|
|
box5_data = bubbles_data['5']
|
|
box5_bounds = (box5_data['x'], box5_data['y'], box5_data['x'] + box5_data['w'], box5_data['y'] + box5_data['h'])
|
|
print(f'Box 5 bounds (xyxy): {box5_bounds}')
|
|
print()
|
|
|
|
# Print all detections sorted by position
|
|
print('All raw detections:')
|
|
for i, (bbox, text, conf) in enumerate(sorted(raw, key=lambda x: (mt.quad_bbox(x[0])[1], mt.quad_bbox(x[0])[0]))):
|
|
b = mt.quad_bbox(bbox)
|
|
t_norm = mt.normalize_text(text)
|
|
print(f'{i:2d}. [{b[0]:3d},{b[1]:3d} -> {b[2]:3d},{b[3]:3d}] conf={conf:.2f} text="{t_norm}"')
|
|
|
|
# Check if this overlaps with box 5
|
|
b5_x1, b5_y1, b5_x2, b5_y2 = box5_bounds
|
|
if not (b[2] < b5_x1 or b[0] > b5_x2 or b[3] < b5_y1 or b[1] > b5_y2):
|
|
print(f' ^ OVERLAPS with Box 5!')
|