Estimating vehicle speed using an onboard camera.
I followed the suggestions in Autonomous Vehicle Speed Estimation from Dashboard Cam blogpost and used dense optical flow from two consecutive images with a convolutional network. The network architecture is borrowed from NVIDIA paper End to End Learning for Self-Driving Cars.
Furthermore, I tried to improve the results by using Kalman Filter to
smooth the speed predicted by the network. The filter is using a simple state
model x_k+1 = x_k + w_k
where x_k
is the speed at k
-th time step and
w_k
is the process noise.
Network | Network + KF | |
---|---|---|
Validation MSE | 11.98 | 7.42 |
The use of Kalman Filter improves the overall mean squared error achieved on the validation set. As seen in the figure below, the constant state model works well when the speed does not change but fails when the vehicle starts to accelerate.