In [1]:
from Custom.mediahelper import show_image_from_path # 개발자 정의 모듈
from Custom.mediahelper import show_video_as_html # 개발자 정의 모듈
5. 파일 저장¶
이미지 저장¶
In [2]:
import cv2
img = cv2.imread('../Media/images/img.png', cv2.IMREAD_GRAYSCALE)
cv2.imshow('img', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
result = cv2.imwrite('../Media/images/img_save.png', img)
print(result)
show_image_from_path('../Media/images/img.png', 'img')
show_image_from_path('../Media/images/img_save.png', 'img_save')
True 'img'
'img_save'
In [3]:
import os
# 확인하려는 파일 경로
file_path = "../Media/images/img_save.png"
# 파일 존재 여부 확인
if os.path.isfile(file_path):
print(f"'{file_path}' 파일이 존재합니다.")
else:
print(f"'{file_path}' 파일이 존재하지 않습니다.")
'../Media/images/img_save.png' 파일이 존재합니다.
동영상 저장¶
In [4]:
import cv2
cap = cv2.VideoCapture('../Media/videos/video.mp4')
# 코덱
#fourcc = cv2.VideoWriter_fourcc(*'DIVX')
fourcc = cv2.VideoWriter_fourcc(*'XVID')
# 비디오 가로 세로 길이 구하기
width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
print(width)
print(height)
# 사이즈 조절
#width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH) / 2) # 가로길이 / 2
#height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT) / 2) # 세로길이 / 2
# 영상 속도 조절
fps = cap.get(cv2.CAP_PROP_FPS) * 2 # 영상 속도 2배
#fps = cap.get(cv2.CAP_PROP_FPS)
# 비디오 쓰기 객체 생성
out = cv2.VideoWriter('../Media/videos/video_doble_fps.mp4', fourcc, fps, (width, height))
while cap.isOpened():
ret, frame = cap.read()
if not ret:
break
out.write(frame) # 영상 데이터만 저장 (소리 X)
cv2.imshow('video', frame)
if cv2.waitKey(1) == ord('q'):
break
cap.release()
out.release()
cv2.destroyAllWindows()
426 240
In [5]:
file_path = '../Media/videos/video_doble_fps.mp4'
if os.path.isfile(file_path):
print(f"'{file_path}' 파일이 존재합니다.")
else:
print(f"'{file_path}' 파일이 존재하지 않습니다.")
'../Media/videos/video_doble_fps.mp4' 파일이 존재합니다.
'Python > OpenCV' 카테고리의 다른 글
08. 이미지 대칭 (0) | 2024.11.18 |
---|---|
07. 이미지 자르기 (0) | 2024.11.18 |
04. 텍스트 (0) | 2024.11.18 |
03. 도형 그리기 (0) | 2024.11.18 |
02. 동영상 출력 (0) | 2024.11.18 |