반응형
저번에 파이썬으로 rtsp로 ip카메라 영상을 불러와 출력하는 글을 작성했었는데 이번에는 ip카메라 영상을 저장하는 방법에 대해 소개 하려고 합니다. 파이썬으로 영상을 저장하는 방법은 역시나 매우 간단합니다.
1. 코드
import cv2
cam=cv2.VideoCapture(rtsp://admin:admin123@192.168.29.30:554/cam/realmonitor?channel=1&subtype=1)
fourcc = cv2.VideoWriter_fourcc(*'DIVX')
out = cv2.VideoWriter('TEST.avi', fourcc, 25.0, (1280, 640)) #해상도
while True:
_,img=cam.read()
cv2.imshow("TEST",img)
out.write(img)
if cv2.waitKey(1) == ord('q'):
break
rtsp를 이용해 ip카메라 영상을 먼저 불러오고 포맷형식과 해상도를 지정해 준 뒤 반복문 while문에서 영상을 저장하는 코드입니다. VideoWriter부분의 25.0은 프레임 입니다. 키보드 q를 누르면 코드는 종료 되고 영상은 저장된체로 남게됩니다. 여기서 조금 이해가 안가시는 부분이 역시 있을겁니다. DIVX 부분일겁니다. 이전 rtsp부분은 해당 글을 참고해 주세요
2022.01.25 - [개발] - 파이썬 IP카메라 연동하기 OPENCV 사용(RTSP 정리)
2. 인코딩 방식
DIVX는 쉽게 생각해서 코덱방식 압축방식이라고 생각하시면 됩니다. 보통의 경우에는 DIVX를 쓰는 경우가 많지만 파이썬 opencv 영상 저장에서는 여러가지 포맷을 지원하기에 소개합니다. 본인에게 맞는 영상 형식을 지정하여 사용하시면 됩니다. 이로서 간단하게 파이썬으로 ip카메라 영상을 저장하는 방법에 대해 알아봤습니다.
DIVX | DIVX MPEG-4 |
XVID | XVID MPEG-4 |
FMP4 | FFMPEG MPEG-4 |
X264 | H.264 |
MJPG | Motion-JPEG |
반응형
'개발' 카테고리의 다른 글
파이썬 DB연결 (pymssql - insert select update 예제) (0) | 2022.05.10 |
---|---|
파이썬 TCP 통신 UDP 통신 예제 (소켓 프로그래밍) (0) | 2022.04.19 |
파이썬 문자인식 숫자인식 해보자(pytesseract-OCR,deep-text-recognition) (0) | 2022.02.24 |
파이썬 가상 컴포트 열기 시리얼통신 (0) | 2022.01.27 |
파이썬 IP카메라 연동하기 OPENCV 사용(RTSP 정리) (0) | 2022.01.25 |
댓글