1. A tracker controller, comprising: a processor; and a memory containing: a velocity tracker application; a state space describing relationships between measured locations, calculated locations, and changes in locations, where the calculated locations in the state space correspond to unoccluded points on the surface of the tracked object; wherein the processor is directed by the velocity tracker application to: pre-process the state space to identify a tracked object; estimate a velocity of the tracked object using a location history calculated from the measured locations of the tracked object within the state space and a motion model calculated from the state space by: dividing the state space into a grid of cells where the grid of cells comprises a plurality of cells; calculating a probability that the tracked object is located in a given cell with respect to each cell in the plurality of cells; subdividing each cell in the plurality of cells having a probability that the tracked object is within the cell that satisfies a threshold into a plurality of subdivided cells; and returning the grid of cells and the probability that the tracked object is within each of the cells in the plurality of cells; and return the velocity of the tracked object.