C# OpenCV 강좌 : 제 5강 - VIDEO 출력
동영상 출력
컴퓨터에 저장된 동영상 파일
에서 이미지를 불러와 프레임을 재생합니다.
동영상 파일에 저장된 프레임을 읽어 Mat 클래스
형식으로 출력됩니다.
메인 코드
세부 코드
VideoCapture
클래스로 video
를 초기화합니다.
VideoCapture
클래스는 동영상 파일 저장경로를 입력해 동영상을 불러옵니다.
경로는 상대 경로
또는 절대 경로
를 사용해 이미지를 지정합니다.
이후, 프레임을 표시하기 위해 Mat
클래스인 frame
을 초기화합니다.
반복문(while)
을 활용해 현재 프레임이 동영상 파일의 총 프레임과 같아질 때까지 반복합니다.
video
의 속성 중 현재 프레임을 불러오는 PosFrames
과 총 프레임을 불러오는 FrameCount
를 사용합니다.
PosFrames
은 현재 프레임의 개수를 나타내며, FrameCount
는 총 프레임의 개수를 나타냅니다.
video
의 Read()
메서드를 활용해 프레임을 불러옵니다.
video.Read()
로 프레임을 읽어 frame
변수에 저장합니다.
이후, 이미지 출력 함수(Cv2.Imshow)
로 프레임을 시각적으로 표시합니다.
이미지 출력 함수는 Cv2.Imshow(winname, mat)
로 winname의 윈도우 창에 mat 이미지를 표시합니다.
마지막으로 키 입력 대기 함수(Cv2.WaitKey)
로 특정 시간마다 대기합니다.
키 입력 대기 함수는 Cv2.WaitKey(ms)
를 사용해 ms만큼 대기합니다.
Dispose()
와 Release()
구문으로 프레임
과 비디오
에 대한 메모리를 해제합니다.
또한, 윈도우 창을 더 이상 사용하지 않으므로, 모든 윈도우 창을 제거(Cv2.DestroyAllWindows)
합니다.
- Tip : 더 이상 사용되지 않는다면, 명시적으로 메모리를 해제해주는 것을 권장합니다.
댓글 남기기