yongyong-e

3. Video에 frame 및 text 표시하기 본문

프로그래밍/OpenCV - Python

3. Video에 frame 및 text 표시하기

Yonghan Kim 2017. 9. 28. 12:04

1) Code

import cv2
import time

CAM_ID = 0
cam = cv2.VideoCapture(CAM_ID)

if cam.isOpened() == False:
print('Can\'t open the CAM(%d)' % (CAM_ID))
exit()

cv2.namedWindow('Cam')
prevTime = 0

while (True):
ret, frame = cam.read()
curTime = time.time()
sec = curTime - prevTime
prevTime = curTime
fps = 1 / (sec)

str = "FPS : %0.1f" % fps
str2 = "Testing . . ."
cv2.putText(frame, str, (5, 20), cv2.FONT_HERSHEY_PLAIN, 1, (0, 255, 0))
cv2.putText(frame, str2, (100, 20), cv2.FONT_HERSHEY_PLAIN, 1, (0, 255, 0))
cv2.imshow('Cam', cv2.resize(frame, (1300, 800)))

if cv2.waitKey(1) & 0xFF == ord('q'):
cam.release()
cv2.destroyWindow('Cam')
break



2) Parameters

▶ cv2.putText(frame, str, (5, 20), cv2.FONT_HERSHEY_PLAIN, 1, (0, 255, 0))

   frame   카메라 이미지

   str   문자열 변수

   (5, 20)   문자열 좌표 (x, y)

   cv2.FONT_HERSHEY_PLAIN   문자 폰트

   1   문자 크기

   (0, 255, 0)   RGB값인데 실제로 (B, G, R)로 읽어짐


▶ cv2.PONT

   cv2.FONT_HERSHEY_SIMPLEX   일반 사이즈의 Sans-Serif 폰트

   cv2.FONT_HERSHEY_PLAIN   작은 사이즈의 Sans-Serif 폰트

   cv2.FONT_HERSHEY_DUPLEX   일반 사이즈의 Sans-Serif 폰트(CV_FONT_HERSHEY_SIMPLEX보다 더 복잡함)

   cv2.FONT_HERSHEY_COMPLEX   일반 사이즈의 Serif 폰트

   cv2.FONT_HERSHEY_TRIPLEX   일반 사이즈의 Serif 폰트(CV_FONT_HERSHEY_COMPLEX보다 더 복잡함)

   cv2.FONT_HERSHEY_COMPLEX_SMALL   작은 사이즈의 Serif 폰트

   cv2.FONT_HERSHEY_SCRIPT_SIMPLEX   손 글씨체

   cv2.FONT_HERSHEY_SCRIPT_COMPLEX   손 글씨체의 복잡한 버전


Comments