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/11/28 10:28]
valentina_golubeva
autolab:duckietown-city:cameras [2022/12/19 09:39] (current)
valentina_golubeva
Line 1: Line 1:
 ====== Камеры над полигоном ====== ====== Камеры над полигоном ======
  
-Карта камер полигона+=== Карта камер полигона ​===
  
 {{:​autolab:​duckietown-city:​screenshot_from_2022-11-28_13-27-30.png?​640|}} {{:​autolab:​duckietown-city:​screenshot_from_2022-11-28_13-27-30.png?​640|}}
 +
 +=== Ссылки на камеры ===
 +  - http://​autolab.moevm.info/​camera_1/​live.mjpg
 +  - http://​autolab.moevm.info/​camera_2/​live.mjpg
 +  - http://​autolab.moevm.info/​camera_3/​live.mjpg
 +  - http://​autolab.moevm.info/​camera_4/​live.mjpg
 +  - http://​autolab.moevm.info/​camera_5/​live.mjpg
 +  - http://​autolab.moevm.info/​camera_6/​live.mjpg
 +
 +=== Как получить картинку с камеры ===
 +
 +Пройти по одной из ссылок,​ чтобы получить картинку. Скачать получившуюся картинку - нажать на картинку,​ выбрать "​Сохранить как",​ выбрать путь для сохранения.
 +  - http://​autolab.moevm.info/​camera_1/​still.jpg
 +  - http://​autolab.moevm.info/​camera_2/​still.jpg
 +  - http://​autolab.moevm.info/​camera_3/​still.jpg
 +  - http://​autolab.moevm.info/​camera_4/​still.jpg
 +  - http://​autolab.moevm.info/​camera_5/​still.jpg
 +  - http://​autolab.moevm.info/​camera_6/​still.jpg
 +
 +=== Как записать видео с камеры ===
 +
 +Создаём файлик с кодом ниже.
 +
 +
 +  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
 +
autolab/duckietown-city/cameras.1669631338.txt.gz · Last modified: 2022/12/10 09:08 (external edit)