19 lines
992 B
Python
19 lines
992 B
Python
"""Visual QA of decoded labels against the unchanged original PDF raster."""
|
|
import json
|
|
from pathlib import Path
|
|
from PIL import Image,ImageDraw
|
|
|
|
folder=Path(__file__).resolve().parent/'data/output/samples_20261102/03_대호지교'
|
|
tokens=json.loads((folder/'decoded_soundings_text.json').read_text(encoding='utf-8'))['tokens']
|
|
image=Image.open(folder/'original_plan_highres.png')
|
|
chosen=[tokens[i] for i in range(0,len(tokens),max(1,len(tokens)//24))][:24]
|
|
sheet=Image.new('RGB',(960,24//4*140),'white');draw=ImageDraw.Draw(sheet)
|
|
for i,token in enumerate(chosen):
|
|
x0,y0,x1,y1=token['bbox'];scale=1200/72
|
|
box=(int((x0-1)*scale-333),int((y0-1)*scale-5166),int((x1+1)*scale-333),int((y1+1)*scale-5166))
|
|
crop=image.crop(box).convert('RGB');crop.thumbnail((225,105))
|
|
x=(i%4)*240;y=(i//4)*140
|
|
sheet.paste(crop,(x,y));draw.text((x+8,y+111),f"decoded {token['text']}",fill='black')
|
|
sheet.save(folder/'decoded_labels_visual_qa.png')
|
|
print(folder/'decoded_labels_visual_qa.png')
|