Python OpenCV filter2D를 사용한 영상처리(3)
2019. 7. 25. 23:06ㆍ해봤던것들
영상에 OpenCV filter2D 사용
이미지에 사용한 필터를 영상에도 사용해 봅시다.
영상은 아이유-삐삐 MV의 일부를 사용했습니다.
import cv2
import numpy as np
cap = cv2.VideoCapture('./아이유.mp4') #원본영상
필터가 적용된 영상을 저장하기 위해 영상의 사이즈, 코덱을 불러옵니다.
frame_size = (int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)),
int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)))
print('frame_size =', frame_size)
fourcc = cv2.VideoWriter_fourcc(*'XVID') #영상코덱
out1 = cv2.VideoWriter('./아이유TEST.mp4',fourcc, 20.0, frame_size, isColor = True) #저장될 영상정보
코덱은 가장 보편적으로 사용하는 XVID 코덱을 사용합니다.
필터가 적용된 영상을 구분해 주기 위해서 영상에 Text도 넣어 줍니다.
text = 'TEST' #입력될 text
org = (10, 30) #text 위치
font = cv2.FONT_HERSHEY_SIMPLEX #폰트
이제 영상에 필터를 적용시키기 위해 영상을 프레임 단위로 가져옵니다.
while True:
retval, frame = cap.read() # 프레임 캡처
if not retval:
break
필터는 이미지와 같은 방법으로 적용시킵니다.
필터를 적용시킨 영상의 프레임에 Text를 적고 저장합니다.
필터가 적용된 영상을 실시간으로 확인하기 위해서 cv2.imshow로 변경된 프레임을 보여줍니다.
cv2.putText(cgframe,text, org, font, 1, (255,0,0), 2) #프레임에 text쓰기
size, baseLine = cv2.getTextSize(text, font, 1, 2) #text폰스, 스케일, 색상
out1.write(cgframe) #변경된 프레임 out1에 쓰기
cv2.imshow('cgframe',cgframe) #변경된 프레임 보여주기
Yeowoolee/OpenCV-filter2D
OpenCV-filter2D. Contribute to Yeowoolee/OpenCV-filter2D development by creating an account on GitHub.
github.com