## 2 Materials and Methods
### Tracking Using Kalman Filtering  
Knowing the current position of construction workers as provided by a detector can already be advantageous for productivity management and safety applications. However, this can be further improved by tracking the workers over time. This allows keeping track of entire workflows as well as anticipating the worker's movement directions.  
Modern tracking approaches rely on a motion model which predicts an object's trajectory and an appearance model to recognize the tracked object in the following video frames. However, it is sufficient for our purpose to rely on a motion model only. The applied detector compensates for the omitted appearance model. Hereby, the detector implicitly adopts the recognition task.  
In this paper, we apply Kalman filtering. Its simplicity and robustness make it a good choice for the comparison of the performance of the two proposed detection methods. The Kalman filter is based on a motion model which only describes the relationship between the tracked object's current state and its predicted state at the next time step. For this, the model consists of the tracked object's current state and a prediction matrix which models the transition from one time step to another. A tracked worker's current state \([x,y,v_{x},v_{y}]\) can be described by the worker's position \(x,y\) and his velocity \(v_{x},v_{y}\) in \(x\) and \(y\) directions. To predict the worker's state in the following time step \(t+1\), the prediction matrix is applied to the current state at time step \(t\) with a time duration \(\Delta t\),  
Figure 5: Iterative feature selection by AdaBoost (from left to right). A shape model is learned from Haar-like features. The first three iterations approximate the worker’s head while the following two focus on the worker’s shoulders.  
\[\begin{pmatrix}x_{t+1}\\ y_{t+1}\\ v_{x,t+1}\\ v_{y,t+1}\end{pmatrix}=\begin{pmatrix}1&0&\Delta t&0\\ 0&1&0&\Delta t\\ 0&0&1&0\\ 0&0&0&1\end{pmatrix}\begin{pmatrix}x_{t}\\ y_{t}\\ v_{x,t}\\ v_{y,t}\end{pmatrix}. \tag{1}\]  
The predicted state is then set to the new current state of the Kalman filter's model. Afterwards, the state can be updated using the actual measurements of the worker's position \([x_{t},y_{t}]\). In our case, the detected construction workers serve as both tracker initializations and observed measurements. The detections are spatially correlated with regard to already existing tracks. Detections with a close spatial proximity are assigned to the individual track. For detected workers not matching a pre-existing track, a new track is set up. The Kalman filter then predicts the location of a worker frame by frame. Detections close to the predicted locations which we assign to the track give evidence to correct the Kalman filter's motion model and prevent the predictions from drifting off.  
To determine optimal values for the noise covariance matrices \(Q\) and \(R\), we performed a grid search using both detection algorithms. Values on the matrices' diagonals in the range of \([1,50]\) were considered for this. We found that the optimal values for the diagonals of \(Q\) and \(R\) are 1 and 50, respectively.