MCPcopy Create free account
hub / github.com/OpenDriveLab/DriveAdapter / save

Method save

leaderboard/team_code/base_agent.py:286–343  ·  view source on GitHub ↗
(self, near_node, far_node, near_command, steer, throttle, brake, target_speed, tick_data)

Source from the content-addressed store, hash-verified

284
285
286 def save(self, near_node, far_node, near_command, steer, throttle, brake, target_speed, tick_data):
287 frame = self.step // 10
288
289 pos = self._get_position(tick_data)
290 theta = tick_data['compass']
291 speed = tick_data['speed']
292 weather = tick_data['weather']
293
294 data = {
295 'x': pos[0],
296 'y': pos[1],
297 'theta': theta,
298 'speed': speed,
299 'target_speed': target_speed,
300 'x_command': far_node[0],
301 'y_command': far_node[1],
302 'command': near_command.value,
303 'steer': steer,
304 'throttle': throttle,
305 'brake': brake,
306 'weather': weather,
307 'weather_id': self.weather_id,
308 'near_node_x': near_node[0],
309 'near_node_y': near_node[1],
310 'far_node_x': far_node[0],
311 'far_node_y': far_node[1],
312 'is_vehicle_present': self.is_vehicle_present,
313 'is_pedestrian_present': self.is_pedestrian_present,
314 'is_red_light_present': self.is_red_light_present,
315 'is_stop_sign_present': self.is_stop_sign_present,
316 'should_slow': self.should_slow,
317 'should_brake': self.should_brake,
318 'angle': self.angle,
319 'angle_unnorm': self.angle_unnorm,
320 'angle_far_unnorm': self.angle_far_unnorm,
321 }
322
323 measurements_file = self.save_path / 'measurements' / ('%04d.json' % frame)
324 f = open(measurements_file, 'w')
325 json.dump(data, f, indent=4)
326 f.close()
327
328 # for pos in ['front', 'left', 'right', 'rear']:
329 for pos in ['front']:
330 name = 'rgb_' + pos
331 Image.fromarray(tick_data[name]).save(self.save_path / name / ('%04d.png' % frame))
332 # for sensor_type in ['seg', 'depth']:
333 # name = sensor_type + '_' + pos
334 # Image.fromarray(tick_data[name]).save(self.save_path / name / ('%04d.png' % frame))
335 # for sensor_type in ['2d_bbs']:
336 # name = sensor_type + '_' + pos
337 # np.save(self.save_path / name / ('%04d.npy' % frame), tick_data[name], allow_pickle=True)
338
339 # Image.fromarray(tick_data['topdown']).save(self.save_path / 'topdown' / ('%04d.png' % frame))
340 # np.save(self.save_path / 'lidar' / ('%04d.npy' % frame), tick_data['lidar'], allow_pickle=True)
341 # np.save(self.save_path / 'semantic_lidar' / ('%04d.npy' % frame), tick_data['semantic_lidar'], allow_pickle=True)
342 # np.save(self.save_path / '3d_bbs' / ('%04d.npy' % frame), tick_data['3d_bbs'], allow_pickle=True)
343 # np.save(self.save_path / 'affordances' / ('%04d.npy' % frame), tick_data['affordances'], allow_pickle=True)

Callers 1

run_stepMethod · 0.45

Calls 1

_get_positionMethod · 0.95

Tested by

no test coverage detected