Python OpenCV 비디오 캡 처 및 구현 코드 저장

이 글 은 Python OpenCV 동 영상 을 캡 처 하고 구현 코드 를 저장 하 는 것 을 소개 합 니 다.이 글 은 예시 코드 를 통 해 매우 상세 하 게 소개 되 어 있 으 며 여러분 의 학습 이나 업무 에 어느 정도 참고 학습 가치 가 있 으 므 로 필요 한 분 들 은 참고 하 시기 바 랍 니 다.
이미지 처리 전에 우 리 는 손 에 넣 은 데 이 터 를 선별 해 야 한다.영상 에 대해 우 리 는 그 중에서 우리 가 필요 로 하 는 한 단락 이나 몇 단락 을 캡 처 해 야 한다.
전체적인 사 고 는 비교적 간단 하 다.동 영상 을 캡 처 하 는 시작 시간(프레임 수)을 설정 하면 이 시간 대의 이미 지 를 새로운 영상 으로 저장 할 수 있다.
직접 코드

"""
【    】      
【  】            
【    】               
【    】 20191128 by wangxioabei
【    】 NOTE.1: 
"""
def CutVideoFromFile(video_file_name,windows_name = 'videoShowing'):
  cap = cv2.VideoCapture(video_file_name) #       
  #            
  fourcc = cv2.VideoWriter_fourcc(*'XVID')
  fps = cap.get(cv2.CAP_PROP_FPS)
  print('  :%d'%fps)
  size = (int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)),int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)))
  out = cv2.VideoWriter('BeltTear.avi',fourcc,fps, size)
  SaveTime = [[38*60+38,39*60+59],[42*60+54,44*60+11],[47*60+8,48*60+24],[51*60+20,52*60+39]]
  print(SaveTime[0][0])
  now_frame = 0
  while (cap.isOpened()):
    ret, frame = cap.read() #       
    img_h, img_w, img_ch = frame.shape
    # print(frame.shape)
    if ret:
      # 【1】                    ,       
      if img_ch==1:
        frame = cv2.cvtColor(frame, cv2.COLOR_GRAY2BGR)
      # cv2.imshow(windows_name, frame)
      for i in range(len(SaveTime)):
        if now_frame > SaveTime[i][0]*fps and now_frame < SaveTime[i][1]*fps:
          out.write(frame)
          print(now_frame)
      now_frame += 1
      if now_frame > SaveTime[2][1]*fps:
        break;
      k = cv2.waitKey(1) & 0xFF
      if k == 27:
        break
      # cv2.waitKey(25)
    else:
      break
  cap.release()
  out.release()
  cv2.destroyAllWindows()
그 중에서 SaveTime 목록 에 포 함 된 목록 은 동 영상 을 캡 처 하 는 시간 s 이 고 이 를 매개 변수 로 입력 하면 전체 함 수 를 봉인 할 수 있 습 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기