User Tools

Site Tools


autolab:duckietown-city:cameras

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
autolab:duckietown-city:cameras [2022/12/12 12:23]
valentina_golubeva
autolab:duckietown-city:cameras [2022/12/19 09:39] (current)
valentina_golubeva
Line 25: Line 25:
 === Как записать видео с камеры === === Как записать видео с камеры ===
  
-Создаём файлик с кодом ниже, передаём в качестве аргумента номер камеры при запуске.(python3 filename.py --cam_num 4)+Создаём файлик с кодом ниже
 + 
 + 
 +  from datetime import datetime 
 +  import cv2 
 +  import argparse 
 +  parser = argparse.ArgumentParser() 
 +  parser.add_argument('​--cam_num'​type=int, default=1) 
 +  args = parser.parse_args() 
 +  if args.cam_num not in range(1, 7): 
 +      print(f"​Camera with number{args.cam_num} does not exist!"​) 
 +      exit(0) 
 +  video = cv2.VideoCapture(f"​http://​autolab.moevm.info/​camera_{args.cam_num}/​live.mjpg"​) 
 +  if (video.isOpened() == False):  
 +      print("​Error reading video file"​) 
 +      exit(0) 
 +  frame_width = int(video.get(3)) 
 +  frame_height = int(video.get(4)) 
 +  size = (frame_width,​ frame_height) 
 +  video_name = f"​{datetime.now().strftime('​%d_%m_%Y_%H:​%M:​%S'​)}.avi"​ 
 +  result = cv2.VideoWriter(video_name,​ cv2.VideoWriter_fourcc(*'​MJPG'​),​ 20, size) 
 +  while True: 
 +      ret, frame = video.read() ​  
 +      if ret == True:  
 +          result.write(frame) 
 +          cv2.imshow('​Frame',​ frame) 
 +          if cv2.waitKey(1) & 0xFF == ord('​s'​):​ 
 +              break 
 +      else: 
 +          break 
 +  video.release() 
 +  result.release() 
 +  cv2.destroyAllWindows() 
 +  print(f"​The video {video_name} was successfully saved"​) 
 + 
 + 
 +=== Запуск === 
 + 
 +Передаём в качестве аргумента номер камеры при запуске. ​Доступны номера камер от 1 до 6. 
 + 
 + python3 filename.py --cam_num 4
  
-from datetime import datetime 
-import cv2 
-import argparse 
-parser = argparse.ArgumentParser() 
-parser.add_argument('​--cam_num',​ type=int, default=1) 
-args = parser.parse_args() 
-if args.cam_num not in range(1, 7): 
-    print(f"​Camera with number{args.cam_num} does not exist!"​) 
-    exit(0) 
-video = cv2.VideoCapture(f"​http://​autolab.moevm.info/​camera_{args.cam_num}/​live.mjpg"​) 
-if (video.isOpened() == False): ​ 
-    print("​Error reading video file") 
-    exit(0) 
-frame_width = int(video.get(3)) 
-frame_height = int(video.get(4)) 
-size = (frame_width,​ frame_height) 
-video_name = f"​{datetime.now().strftime('​%d_%m_%Y_%H:​%M:​%S'​)}.avi"​ 
-result = cv2.VideoWriter(video_name, ​ 
-                         ​cv2.VideoWriter_fourcc(*'​MJPG'​),​ 
-                         20, size) 
-while True: 
-    ret, frame = video.read()  ​ 
-    if ret == True:  
-        result.write(frame) 
-        cv2.imshow('​Frame',​ frame) 
-        if cv2.waitKey(1) & 0xFF == ord('​s'​):​ 
-            break 
-    else: 
-        break 
-video.release() 
-result.release() 
-cv2.destroyAllWindows() 
-print(f"​The video {video_name} was successfully saved"​) 
autolab/duckietown-city/cameras.1670847809.txt.gz · Last modified: 2022/12/12 12:23 by valentina_golubeva