Post

Internship Progress Week 4

Internship Progress Week 4

What I did this week

This week I finished setting up Nav2 as the expert navigation system in the local ROS 2 environment.

I configured the autonomous_car in holonomic mode and used:

  • NavFn as the global planner,
  • DWB as the local controller,
  • and the LiDAR data converted to LaserScan for obstacle detection.

I also tuned the local costmap parameters to improve obstacle avoidance and reduce collisions during navigation.

Nav2 expert navigation with LiDAR and local costmap

After validating the expert navigation, I recorded the first demonstration using ros2 bag, including:

1
2
3
4
5
6
7
/plan
/autonomous_car/scan
/autonomous_car/odom
/autonomous_car/cmd_vel
/tf
/tf_static
/clock

The recorded demonstration was then processed offline to generate the first supervised dataset.

The preprocessing pipeline includes:

1
2
3
4
5
6
7
8
9
10
11
12
13
rosbag
   ↓
global plan processing
   ↓
LiDAR processing
   ↓
odometry processing
   ↓
temporal synchronization
   ↓
future trajectory generation
   ↓
dataset

For each sample, the current input is:

1
2
3
Global plan: 10 × (x, y)
LiDAR: 360 ranges
Odometry: (v, w)

and the output is a future trajectory with 5 poses:

1
2
3
4
5
t+1s
t+2s
t+3s
t+4s
t+5s

with each pose represented as:

1
(x, y, cos(yaw), sin(yaw))

From the first recorded trajectory, I generated 169 supervised samples.

Next steps

The next step is to validate several dataset samples visually and then record many more expert trajectories.

After that, I will start reproducing the neural network architecture from the Stanford paper and train the first Imitation Learning model.

This post is licensed under CC BY 4.0 by the author.