이 튜토리얼에서는 OpenCV의 putText() 함수를 사용하여 이미지 위에 텍스트를 작성하는 방법을 알아봅니다. 이 함수는 대상 이미지, 글꼴 종류, 텍스트가 배치될 좌표, 색상, 선 두께 등 다양한 매개변수를 입력받아 원하는 위치에 문자열을 그려줍니다.
원본 이미지

알고리즘
1단계: cv2 모듈을 임포트합니다. 2단계: putText() 함수에 사용할 매개변수들을 정의합니다. 3단계: 정의한 매개변수들을 putText() 함수에 전달합니다. 4단계: 결과 이미지를 화면에 출력합니다.
putText() 함수의 주요 매개변수
- image: 텍스트를 그릴 대상 이미지
- text: 이미지에 표시할 문자열
- coordinates: 텍스트가 시작될 좌하단 모서리의 (x, y) 좌표
- font: 글꼴 종류 (예: cv2.FONT_HERSHEY_SIMPLEX)
- fontScale: 글자 크기를 조절하는 배율 값
- color: BGR 형식의 텍스트 색상 (예: (255, 0, 255)는 마젠타)
- thickness: 텍스트 선의 두께
- lineType: 선 종류 (cv2.LINE_AA는 안티앨리어싱으로 더 부드러운 가장자리 제공)
예제 코드
import cv2
# 이미지 불러오기
image = cv2.imread("testimage.jpg")
# putText() 함수에 사용할 매개변수 정의
text = "TutorialsPoint"
coordinates = (100, 100)
font = cv2.FONT_HERSHEY_SIMPLEX
fontScale = 1
color = (255, 0, 255)
thickness = 2
# 이미지에 텍스트 그리기
image = cv2.putText(image, text, coordinates, font, fontScale, color, thickness, cv2.LINE_AA)
# 결과 창에 이미지 출력
cv2.imshow("Text", image)
cv2.waitKey(0)
cv2.destroyAllWindows()출력 결과

참고 사항
위 예제 코드에서 cv2.imshow()만 호출하면 일부 환경에서는 창이 나타나지 않거나 즉시 닫힐 수 있습니다. 따라서 cv2.waitKey(0)를 호출하여 사용자가 키를 누를 때까지 창을 유지하고, 프로그램 종료 시 cv2.destroyAllWindows()로 생성된 모든 창을 닫아주는 것이 좋습니다.