반응형
PIL image Text
앞선 글에선 바운딩 박스를 그려봤다.
바운딩 박스가 Ground Truth 라고 표시하고 싶을땐 어떻게 할까?
ImageDraw의 text 함수를 사용하면된다.
text의 좌표는 text의 좌상단을 기준으로 한다.
그래서
text의 x좌표 = bounding box의 좌상단 x좌표 + width text의 x좌표
와 같이 설정하면 bounding box 좌상단 안쪽에 text가 위치하게 된다.
from PIL import Image, ImageDraw
img = Image.open('memi.jpg').convert('RGB')
img.show()
color = (0,255,0)
width = 3
bbox = (100,100,300,300)
text_pos = (bbox[0]+width,bbox[1])
draw = ImageDraw.Draw(img)
draw.rectangle(bbox, outline=color, width = width)
draw.text(text_pos, 'Ground Truth',color)
img.show()
반응형