dragonpilot - 基於 openpilot 的開源駕駛輔助系統
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Dragonpilot Team 4d7a40310f dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
..
tests dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
vidindex dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
README.md dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
__init__.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
api.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
auth.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
auth_config.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
bootlog.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
cache.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
exceptions.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
filereader.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
framereader.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
helpers.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
kbhit.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
logreader.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
route.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago
url_file.py dragonpilot 2022-08-11T09:38:43 for EON/C2 3 years ago

README.md

LogReader

Route is a class for conviently accessing all the logs from your routes. The LogReader class reads the non-video logs, i.e. rlog.bz2 and qlog.bz2. There's also a matching FrameReader class for reading the videos.

from tools.lib.route import Route
from tools.lib.logreader import LogReader

r = Route("4cf7a6ad03080c90|2021-09-29--13-46-36")

# get a list of paths for the route's rlog files
print(r.log_paths())

# and road camera (fcamera.hevc) files
print(r.camera_paths())

# setup a LogReader to read the route's first rlog
lr = LogReader(r.log_paths()[0])

# print out all the messages in the log
import codecs
codecs.register_error("strict", codecs.backslashreplace_errors)
for msg in lr:
  print(msg)

# setup a LogReader for the route's second qlog
lr = LogReader(r.log_paths()[1])

# print all the steering angles values from the log
for msg in lr:
  if msg.which() == "carState":
    print(msg.carState.steeringAngleDeg)

MultiLogIterator

MultiLogIterator is similar to LogReader, but reads multiple logs.

from tools.lib.route import Route
from tools.lib.logreader import MultiLogIterator

# setup a MultiLogIterator to read all the logs in the route
r = Route("4cf7a6ad03080c90|2021-09-29--13-46-36")
lr = MultiLogIterator(r.log_paths())

# print all the steering angles values from all the logs in the route
for msg in lr:
  if msg.which() == "carState":
    print(msg.carState.steeringAngleDeg)