본문 바로가기
Python/OpenCV

[OpenCV] 웹캠 자동 캡쳐

by hotelshoe 2022. 9. 1.
반응형

https://prlabhotelshoe.tistory.com/39

 

[Python] 화면 자동 캡쳐

컴퓨터 화면을 연속적으로 캡쳐해야할 때 유용하게 사용할 수 있는 간단한 코드 입니다. 라이브러리 설치 pip install pillow 사용될 라이브러리는 pillow 모듈로 여러 이미지 처리에 사용되는 라이브

prlabhotelshoe.tistory.com

해당 포스팅에서 컴퓨터 화면 자동 캡쳐에 대해 알아보았습니다.

이번 테스트에서는 OpenCV를 활용하여 웹캡에서 출력되는 화면을 캡쳐하는 코드를 작성해보겠습니다.

 


소스코드

import cv2
 
webcam = cv2.VideoCapture(0)

#-- 웹캠 오류 처리 
if not webcam.isOpened():
    print("WebCam is not running")
    exit()
    
 
time_num= 0    
image_num = 0
    
#-- 웹캠 열기
while webcam.isOpened():
    
     
    status, frame = webcam.read()
    time_num = time_num + 1
    
    if not status:
        break
 
    #-- 출력창
    cv2.imshow("WebCam", frame)
    
    #-- 캡쳐 프레임 간격 설정
    if time_num == 30:
        image_num = image_num + 1
        cv2.imwrite('img'+str(image_num)+'.png', frame) #-- 본인 편의에 맞게 경로 설정 및 이미지 이름 변경
        time_num = 0
        
    
    #-- q 입력시 종료 
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
    
webcam.release()
cv2.destroyAllWindows()

테스트

휴대전화 스톱워치로 화면을 대체한 결과입니다.

따로 마무리 시간을 설정하지 않아 q를 입력하여 종료하면 됩니다.

프레임으로 시간을 계산해야하는 귀찮은 점이 있지만 웹캠에서 출력되는 화면을 자동으로 캡쳐해보는 테스트를 해 보았습니다.

반응형

댓글