Real-time test of blam

Previously, we tested BLAM on a data set collected in the greenhouse; however, it was noted during that evaluation that the process was consuming excessive amounts of cpu and memory. To combat this issue, we testing the algorithm when a relinearization threshold is set, which allows the optimizer to only relinearize variables whose linear delta magnitude is greater than the specified threshold. First, we can visually inspect the solution by evaluation the map generated, as provided in the video below.




Pose solution with incremental map updates when real-time data playback is provided


Now, we can re-evaluate the cpu consumption of the algorithm. On the left-hand-side of Fig. 1, we can see the previous consumption of the algorithm, and on the right-hand-side of Fig. 1, we can see the consumption after varying the relinearization parameters. As can be see through Fig. 1 and the video provided above, the cpu consumption dropped considerable while to overall solution quality did not vary greatly.

 photo imgonline-com-ua-twotoone-XEN5fUgMoaSc_zpsliygmo1g.jpg

Fig 1 :: CPU consumption. (Left-hand-side) We have the cpu consumption for the inital test. (Right-hand-side) The cpu consuption when the relinearization threshold is set.


Finally, we can look at the amount of memory required. In Fig. 2, we can see the previously reqiured amount of memory on the left and the required amount after varying the relinearization parameters. Again, it should be noted that there is a reduction in consumption.


 photo imgonline-com-ua-twotoone-XEN5fUgMoaSc_zpsliygmo1g.jpg

Fig 2 :: Memory consumption. Left-hand-side) We have the cpu consumption for the inital test. (Right-hand-side) The cpu consuption when the relinearization threshold is set.


Next Steps


Next, I’ll conduct a similar analysis on the data set collect outdoors. This will provide us with a GNSS ground truth to validate the localization provided by the lidar-based slam solution.