간단히 구현한 RTSP 재접속 및 비디오 다시 재생하는 OpenCV 코드OpenCV/OpenCV 강좌2023. 10. 7. 06:33
Table of Contents
반응형
RTSP 재접속 및 비디오 다시 재생하는 코드를 OpenCV로 간단히 구현해봤습니다.
2022. 10. 27 최초작성
import cv2 import time try_num = 1 program_quit = False # 두개의 루프를 사용합니다. # 바깥 루프는 RTSP 재접속 시도 및 비디오 다시 재생하는 루프이고 # 안쪽 루프는 이미지를 가져와 화면에 보여주는 루프입니다. while True: # 시도한 횟수를 출력합니다. print(f'try {try_num}') # 0 대신에 RTSP URL 이나 비디오 파일 이름으로 대체하면 됩니다. cap = cv2.VideoCapture(0) # 이미지를 가져옵니다. ret,img_color = cap.read() if ret == False: try_num += 1 time.sleep(1) continue try_num = 1 # fps 값을 획득합니다. fps = cap.get(cv2.CAP_PROP_FPS) print('fps', fps) # 읽어올 수 없는 경우 디폴트로 30을 사용합니다. if fps == 0.0: fps = 30.0 # 이미지를 가져오는 로프입니다. while True: # 이미지를 읽어옵니다. ret,img_color = cap.read() # 이미지를 읽어올 수 없는 경우 안쪽 루프에서 빠져나옵니다. if ret == False: print('이미지를 가져올 수 없습니다.') break cv2.imshow("Color", img_color) if cv2.waitKey(1) == 27: # ESC키 누르면 프로그램 종료 program_quit = True # 바깥쪽 루프도 빠져나가도록 합니다. break cap.release() cv2.destroyAllWindows() # ESC 키를 누른경우 바깥 루프에서 빠져나옵니다. if program_quit: break |
반응형
'OpenCV > OpenCV 강좌' 카테고리의 다른 글
OpenCV Python – fps 출력하는 Webcam/Video File 기본 예제 코드 (0) | 2023.10.08 |
---|---|
OpenCV Python을 사용하여 HeatMap 흉내내기 – applyColorMap 사용 (0) | 2023.10.08 |
OpenCV Python 그리기 예제 1. OpenCV의 좌표계 (0) | 2023.04.13 |
OpenCV 좌표계를 직교 좌표계로 변환하는 Python 코드 (0) | 2023.04.13 |
OpenCV Python - 이미지를 정사각형이 되도록 패딩(padding)하는 예제 (0) | 2022.05.28 |
시간날때마다 틈틈이 이것저것 해보며 블로그에 글을 남깁니다.
블로그의 문서는 종종 최신 버전으로 업데이트됩니다.
여유 시간이 날때 진행하는 거라 언제 진행될지는 알 수 없습니다.
영화,책, 생각등을 올리는 블로그도 운영하고 있습니다.
https://freewriting2024.tistory.com
제가 쓴 책도 한번 검토해보세요 ^^
@webnautes :: 멈춤보단 천천히라도
그렇게 천천히 걸으면서도 그렇게 빨리 앞으로 나갈 수 있다는 건.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!