# Multi-Player Tracking for Multi-View Sports Videos with Improved K-Shortest Path Algorithm
## 3 Methodology
### Similarity Measurement  
Generally, a combination of more than one feature could make the similarity measurement more accurate, and thus the tracker more robust to occlusions and missed detections. Once the features are extracted, we can first compute the similarity for each feature respectively and then fuse several similarities into one. This can be done simply by a multiplication if they are mutually independent, or by assigning different weights according to the confidence level or important factor for each feature. In this paper, we select two common features--the jersey color and jersey number--to measure the similarity of two players. These two features are enough to help us distinguish most of players even they cannot always be available due to the occlusions. Even so, more features would be appreciated. In the following part, we will take the feature of jersey color as an example to illustrate how to calculate the similarity between two nodes independently. Figure 3 shows a simple flow model that people in location \(i\) at time \(t\) can travel to one of their neighboring locations \(j\in\mathbb{N}(i)\) at time \(t+1\). The blue nodes (\(m_{i}^{t}\) and \(m_{j_{1}}^{t+1}\)) represent players wearing blue jerseys; a yellow node (\(m_{j_{2}}^{t+1}\)) means a player who belongs to yellow team, while the jersey color of other nodes are unavailable. It is easy to know that the node \(m_{i}^{t}\) is more likely to arrive at the node \(m_{j_{1}}^{t+1}\) with the same jersey color, rather than the yellow node \(m_{j_{2}}^{t+1}\). And matching probabilities between other nodes whose features cannot be available would be the same as 50%. We call the link along the green arrow a strong match; the red arrow with dashed line means an impossible match; the other gray arrows represent possible matches. Thus, given the feature labels and their probabilities, we can define the similarity of two nodes as:  
\[s_{i,j}^{t}= \begin{cases}\left(p_{i}^{t}+p^{t+1}\right)/2,&L_{i}^{t}=L_{j}^{t+ 1}\\ 1-\left(p_{i}^{t}+p_{j}^{t+1}\right)/2,&L_{i}^{t}\
eq L_{j}^{t+1}\\ 0.5,&L_{i}^{t}\text{ or }L_{j}^{t+1}\text{ is unknown,}\end{cases}  \tag{12}\]where \(L_{i}^{t},L_{j}^{t+1}\) are the available feature labels for the two nodes (\(m_{i}^{t},m_{j}^{t+1}\)) respectively and \(p_{i}^{t},p_{j}^{t+1}\) are their corresponding probabilities. However, due to occlusions, some features (especially the jersey number) can be available only in very few frames. Sometimes, when the appearance feature at current time \(t\) is unavailable, the similarity between node \(m_{i}^{t}\) and node \(m_{j}^{t+1}\) would be set as the same. It means that the probabilities of the player in location \(i\) at current time \(t\) arriving at anyone of its neighbor location \(j\in\mathbb{N}(i)\) at the following time \(t+1\) are the same, like the original KSP. In our proposed method, in order to make full use of the available features as much as possible, we also consider the neighboring nodes in the previous frame to help us discriminate more players when the feature can not be extracted in the current frame due to occlusion or low resolution. For example, when the jersey color in location \(i\) at time \(t\) is unavailable but can be known for one of its neighboring nodes in the preceding time \(t-1\), as shown in Figure 4a,b), we can compute the similarity between the preceding and following frame instead. However, if more than one node with its feature available could arrive at location \(i\) (see Figure 4c), or none of the neighboring nodes can be access to their feature (see Figure 4d) at time \(t-1\), we cannot match the node \(i\) and \(j\in\mathbb{N}(i)\) because the existing identity information is ambiguous or not enough to judge whether they should be connected.