# Iterative 2D Tissue Motion Tracking in Ultrafast Ultrasound Imaging
## Materials and Methods
### Proposed Tracking Scheme  
The method denoted as the \"basic method\" in [PERSON] et al. (2016) is a sparse iterative block-matching method, that uses the sum of absolute differences as the matching criterion and an unlimited search area. In this work, the sub-sample method has been replaced with the method presented below. The method denoted \"basic method using an extra reference block\" in [PERSON] et al. (2016) uses two independent kernels from two consecutive frames. The search area of the second kernel is limited to a small area around a position determined by the \"basic method\".  
The proposed motion estimation tracking scheme consists of two parts:  
1. First, the frame rate is temporarily down sampled by a factor \(k\), where \(k\) = (2, 4, 8, 16, 32, 64, or 128). The position of each kernel is estimated with a Lagrangian viewpoint between every frame in the temporary cine loop (solid lines in Figure 1a). The position of the kernel in each frame is estimated using a block-matching method with an extra kernel described in [PERSON] et al. (2016) (where the method is denoted as the \"basic method using an extra reference block\"). This method was developed to minimize estimation errors when using a Lagrangian viewpoint.
2. Iteratively: the frame rate is temporarily down sampled by a factor \(m=k/2^{i}\) where \(i\) is the iteration number. The unknown kernel positions in each middle frame in the temporary cine loop are determined by the kernels from the anteroposterior frames (dashed lines in Figure 1b). The two independently estimated positions are averaged to determine the kernel position in the middle frame. The iterations continued until the position of the kernel is estimated in every frame (dashed lines in Figure 2c), i.e., \(m=1\). The position of the kernel is estimated using the block-matching method denoted \"basic method\" in [PERSON] et al. (2016).  
The sub-sample estimation in both part 1 and 2 is first performed by parabolic interpolation; if the estimate is \(y\pm 0.15\) pixels, where \(y\) is any natural number, the estimate is used, otherwise a modified grid slope sub-sample estimator is used to recalculate the estimate [PERSON] et al. (2016). Parabolic and grid slope interpolation complement each other: parabolic interpolation is biased for sub-sample estimation close to \(y\pm 0.5\) pixels, whereas grid slope interpolation gives noisy estimates close to \(y\pm 0.0\) pixels.  
The size of a kernel in the phantom study was 1 mm axially and laterally. This resulted in an axial kernel size of 41 pixels, and a lateral kernel size of 11 pixels using 100 \(\upmu\)m line distance and 5 pixels using 200 \(\upmu\)m line distance. The size of a kernel in the in vivo study was 0.6 mm axially and 3.8 mm laterally.  
Figure 1: The figure shows which frames to use in (**a**) part 1 and (**b**,**c**) part 2 (1 st and 2 nd iteration) of the proposed tracking scheme for \(k=4\). The squares mark sampled frames and a raised frame marks a frame used in the current iteration. Please note that all frames are raised in (**c**) (2 nd iteration). A gray frame marks a frame in which a position for the kernel has been estimated in a previous iteration. The base of the arrows shows the frame in which the kernel is collected and the point of the arrows shows in which frame the kernel is searched for. In (**b**,**c**) iteration, there are two arrows pointing at each frame in which to estimate the position. The estimated position in these frames is calculated as the average estimated position using two kernels from two different frames.