일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- ros
- 마법의숲탐색
- 수영대회결승전
- BFS
- 백준
- 왕실의기사대결
- DP
- ICER
- ISER
- 코드트리
- dfs
- 포탑부수기
- 마이크로프로세서
- 구현
- 루돌프의반란
- 싸움땅
- 3Dreconstruction
- 이진탐색
- DenseDepth
- 소프티어
- Calibration
- 조합
- 코드트리빵
- 토끼와 경주
- 시뮬레이션
- 슈퍼컴퓨터클러스터
- 나무박멸
- 순서대로방문하기
- ARM
- 삼성기출
Archives
- Today
- Total
from palette import colorful_colors
opencv를 이용해 동영상에서 이미지 추출하기 본문
import cv2
# Video, Image path / parameter
video_dir = "비디오가 있는 경로"
image_dir = "이미지가 저장될 경로"
video_name = "비디오 이름"
frame_gap = 30
video_path = video_dir + '\\' + video_name
def main():
# Video open, information
cap = cv2.VideoCapture(video_path)
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
print("Video size = ({},{}) ".format(width, height))
count = 1 # Image count
while(cap.isOpened()):
ret, image = cap.read()
if ret == False:
print("Can't receive frame")
break
# 이미지 추출과 저장
if(int(cap.get(1)) % frame_gap == 0):
name = video_name[:-4] + '_' + str(int(count)) + '.png' # save frame as png file
image_path = image_dir + '\\' + name
cv2.imwrite(image_path, image)
print("time :", int(cap.get(1))//3600, "m " ,(int(cap.get(1))%(3600))//60, "s, Saved " + name)
count += 1
cap.release()
cv2.destroyAllWindows()
if __name__ == '__main__':
main()
'CS 학부과목 > Python' 카테고리의 다른 글
[Numpy] (마무리) N차원 배열 차원 변경: reshape(), resize() (1) | 2023.01.29 |
---|---|
[Numpy] arange(), concatenate() (2) | 2023.01.29 |
[Numpy] ndarray, 연산, 인덱싱, 통계함수 (0) | 2023.01.29 |
코랩(Colab) 단축키 정리 (1) | 2023.01.29 |
코랩(Colab) 처음 시작하기,사용방법 정리 (4) | 2023.01.29 |