Last week, a focus was placed on detection algorithms for finding humans that enter the camera frame. This operation alone is extremely expensive and no computationally-inexpensive alternative exists. To reduce the amount of computational complexity, ShopTrac chooses to run the detection stage once every N frames and uses a object tracking algorithm for all the other frames. The tracking algorithm is known to be a lot less computationally expensive than the detection algorithm so it will be capable of increasing the frame throughput on the RockPro64. Luckily, OpenCV, the vision processing library that ShopTrac uses, has multiple built in object tracking algorithms. A study to try out the different algorithms available to us and if they would be viable for ShopTrac's needs was conducted. A sample program with a video of Charlie Chaplin walking around was used against a sample program that initializes the different tracking algorithms and allows you to compare their performance.
From the 8 built in trackers that exist in OpenCV, the one that best suited the needs of ShopTrac was found to be the MedianFlow or the CSRT tracker. Both of these trackers performed well, kept track of the subject, even when turned around, and the bounding boxes that followed the subject were fairly accurate throughout the experiment. The CSRT tracker performed better than the MedianFlow, but the CSRT had better tracking overall.