| 282 | return result, obs_dict, birdview_obs['rendered'], target_gps, target_command |
| 283 | |
| 284 | def im_render(self, render_dict): |
| 285 | im_birdview = render_dict['rendered'] |
| 286 | h, w, c = im_birdview.shape |
| 287 | im = np.zeros([h, w*2, c], dtype=np.uint8) |
| 288 | im[:h, :w] = im_birdview |
| 289 | |
| 290 | action_str = np.array2string(render_dict['action'], precision=2, separator=',', suppress_small=True) |
| 291 | |
| 292 | |
| 293 | txt_1 = f'a{action_str}' |
| 294 | im = cv2.putText(im, txt_1, (3, 24), cv2.FONT_HERSHEY_SIMPLEX, 0.3, (255, 255, 255), 1) |
| 295 | |
| 296 | debug_texts = [ |
| 297 | 'should_brake: ' + render_dict['should_brake'], |
| 298 | ] |
| 299 | for i, txt in enumerate(debug_texts): |
| 300 | im = cv2.putText(im, txt, (w, (i+2)*12), cv2.FONT_HERSHEY_SIMPLEX, 0.3, (255, 255, 255), 1) |
| 301 | return im |
| 302 | |
| 303 | @torch.no_grad() |
| 304 | def run_step(self, input_data, timestamp): |