# Faster and Simpler Siamese Network for Single Object Tracking

Shaokui Jiang  State Key Laboratory for Novel Software Technology, Nanjing
University, 163 Xianlin Avenue, Qixia District, Nanjing, 210023, China
Department of Computer Science and Technology, Nanjing University, 163 Xianlin
Avenue, Qixia District, Nanjing, 210023, China  Baile Xu  State Key Laboratory
for Novel Software Technology, Nanjing University, 163 Xianlin Avenue, Qixia
District, Nanjing, 210023, China  Department of Computer Science and
Technology, Nanjing University, 163 Xianlin Avenue, Qixia District, Nanjing,
210023, China  Jian Zhao  School of Electronic Science and Engineering,
Nanjing University, 163 Xianlin Avenue, Qixia District, Nanjing, 210023, China
Email<EMAIL_ADDRESS>{blx, jianzhao<EMAIL_ADDRESS>Furao
Shen Corresponding author<EMAIL_ADDRESS>State Key Laboratory for Novel
Software Technology, Nanjing University, 163 Xianlin Avenue, Qixia District,
Nanjing, 210023, China  Department of Computer Science and Technology, Nanjing
University, 163 Xianlin Avenue, Qixia District, Nanjing, 210023, China

###### Abstract

Single object tracking (SOT) is currently one of the most important tasks in
computer vision. With the development of the deep network and the release for
a series of large scale datasets for single object tracking, siamese networks
have been proposed and perform better than most of the traditional methods.
However, recent siamese networks get deeper and slower to obtain better
performance. Most of these methods could only meet the needs of real-time
object tracking in ideal environments. In order to achieve a better balance
between efficiency and accuracy, we propose a simpler siamese network for
single object tracking, which runs fast in poor hardware configurations while
remaining an excellent accuracy. We use a more efficient regression method to
compute the location of the tracked object in a shorter time without losing
much precision. For improving the accuracy and speeding up the training
progress, we introduce the Squeeze-and-excitation (SE) network into the
feature extractor. In this paper, we compare the proposed method with some
state-of-the-art trackers and analysis their performances. Using our method, a
siamese network could be trained with shorter time and less data. The fast
processing speed enables combining object tracking with object detection or
other tasks in real time.

##  1 Introduction

Object tracking is one of the main applications of computer vision. Single
object tracking is fundamental to tracking tasks, which has a totally
different methodology with multiple object tracking. Object tracking has been
widely used in video surveillance[14], virtual reality[7], human-machine
interaction, image understanding, autonomous driving[1] and so on. It also
plays an important role in other related missions. For example, object
detection is a relatively more complex application in computer vision, where
even state-of-the-art could miss some objects in specific scenes. In that
case, object tracking could help. Some missing targets caused by occlusion or
light changing could be detected by the assistance of tracking. Besides,
detecting objects in each frame of a video is time consuming and unnecessary,
whereas tracking detected object could save a lot of time. However, recent
tracking algorithms tend to exchange speed for accuracy, which deviates from
the original intention of target tracking.

In this paper, we focus on designing an accurate single object tracker that
runs fast under the condition of limited hardware resources. Firstly, we adds
the Squeeze-and-excitation (SE)[11] block into the feature extractor as a
subnetwork called SE Layer. The SE Layer enables the network to train a
suitable number of parameters faster and more precisely. Nextly, the feature
maps of video frames are convolved by the kernels consists of the features of
the tracked target. Different from other siamese networks[2], the convolution
result of our work is smaller. By this means the number of parameters in this
layer is reduced, and hence the training and inference processes are greatly
accelerated. Finally, we get the output by putting the feature map into our
regression part, which consists of a kernel size of $1\times 1$ and a fully
connected layer. With the output and the size of the search area, we locate
the tracked target.

We train the network using only two datasets, GOT[12] and ImageNet-VID[24],
which consists of no more than 15000 video clips in total. The network is well
trained within 5 training epochs. We evaluate our method on VOT2015[17],
VOT2016[18], VOT2017[16] and OTB100[28] challenges. The results show great
performance and excellent running speed on low-end hardware.

Figure 1: This is the framework of our network. The feature extractor takes
RGB images as input in both branches with shared parameters. After extracting,
the feature maps are fed into the SE block. The SE block adjusts the features
extracted in different channels. The template features after extracting and
weighting are $w_{z}\times w_{z}\times c$ in shape, the detection features
from the same way are $w_{x}\times w_{x}\times c$. $\star$ denotes correlation
operator, which works for every channel and generates a feature map of
$(w_{x}-w_{z}+1)\times(w_{x}-w_{z}+1)$ with $c$ channels. Finally, the
regression part turns the feature map to the position of the target in the
detection frame. The output is the relative position for the target exactly.

##  2 Related Work

Visual object tracking can be traced back to the 1980s. Most traditional
algorithms were proposed around the year of 2000. Comaniciu and Meer[5] used
the mean-shift procedure searching for the target by comparing histograms of
the target and the search area. Beymer and Konolige[3] introduced Kalman
filtering to the object tracking for predicting the position of the target.
Particle filters were used in multiple object tracking in 2002 by Hue _et
al_[13]. TLD (Tracking-learning-detection) proposed by Kalal[15] is a typical
algorithm that unites object detection with object tracking, which works well
in long-term object tracking. TLD could learn the model and parameters in the
progress of tracking and detection, which is controversial because most of the
trackers only use the detection in the first frame.

MOSSE (Minimum Output sum of Squared Error filter) proposed by Bolme[4] is the
first work that introduces correlation filter to object tracking. MOSSE
started the next 10 years research boom for correlation filter in this task.
Inspired by MOSSE, in the year of 2015, Henriques _et al_.[10] put forward KCF
(Kernelized Correlation Filters) algorithm. KCF replaces the sliding windows
with cyclic shifts, which enables the calculation be done in Fourier space.
KCF speeds up the algorithm greatly. In addition, KCF uses ridge regression as
the loss function. The ridge regression in linear spaces is simplified by
projecting the calculation to non-linear spaces using kernel functions. More
works about kernelized correlation filters, such as Martin[6], used scaling
pool to solve the problem of target shift because of the changing size in KCF.
Liu[22] proposed part-based visual tracking via adaptive correlation filters.

After Alexnet[19] was designed in 2012, deep learning was widely used in
various fields, including object tracking. GOTURN (Generic Object Tracking
Using Regression Networks)[9] proposed by Held adopts siamese network for
feature extraction. After the feature extraction, GOTURN contacts the features
directly for the regression in next steps. GOTURN runs fast because of the
simple architecture. SiameseFC[2] proposed by Bertinetto _et al_. is similar
to the GOTURN in the structure of feature extractor, but SiameseFC put forward
to convolving template features on the features of search area, instead of
stacking them together. SiameseFC achieves state-of-the-art performance in
multiple benchmarks, which exploits the power of deep convolutional networks
for object tracking. After SiameseFC, there are a lot of works in object
tracking with correlation filtering and siamese network.

SiameseRPN[21] points that SiameseFC do not regress the position of the
tracked target totally. Instead, SiameseFC calculates the result using the
rough position from heat map and multiple shape. This is one of the reasons
why the accuracy of SiameseFC was not high enough. SiameseRPN makes a better
use of the siamese network in object tracking, introducing the region proposal
network into object tracking for replacing the part after feature extractor.
SiameseRPN and other related papers, DaSiameseRPN[29] and SiameseRPN++[20],
all achieve excellent performance. SiamMask[25] combines object tracking and
segmentation into one network but two branches. SiamMask uses deeper feature
extraction network, which runs slowly but gets better performance.

The attention mechanism in deep learning has been widely used in RNN and CNN
networks. The visual attention model is trying to let the neural network be
able to “focus” its “attention” on the interesting part of the image where it
can get most of the information, while paying less “attention” elsewhere. Non-
local networks[26] presents non-local operations for capturing long-range
image features. Non-local operation means computing the response of a point as
a function of the features of all points. The Squeeze and Excitation (SE)[11]
block can be stacked together with any multi-channel layers, assigning
different channels with different weights. The SE block brings significant
improvements for existing state-of-the-art CNNs. Another work extends the
layer weights to the channel space and the spatial space[27], but the main
idea is almost consistent with the SE block.

##  3 Proposed Approach

###  3.1 Method Overview

In this section, we explain our approach in detail. The framework of our model
is illustrated in Fig. 1. The framework consists of four parts:

  1. 1.

Feature extractor: combinations of convolution layers, pooling layers and
batch normalization layers;

  2. 2.

SE layer: giving different channels their corresponding weights;

  3. 3.

Convolution operation: a convolution operation simulates the progress of
searching the tracked object in a video frame;

  4. 4.

Regression part: a combination of a convolution kernel and a fully connected
layer turns the result comes from the last step into a vector that outputs the
target region.

We feed the template patch and the detection patch from each frame of the
video into the network as shown in Fig. 1. The network outputs the relative
position of the target in the detection patch. Our training procedure is
offline, which means there is no time spent on model training during the
testing phase.

###  3.2 Feature Extractor

The feature extractor has two branches with shared parameters: the template
branch takes the image patch containing the target as input, which is denoted
as $z$; the detection branch takes the patch $x$ from a video frame as input.
The layers in the feature extractor are adopted in both the template branch
and the detection branch with shared parameters. These layers aim to extract
the features that make greatest response in two similar patches, regardless of
which branch it is belong to. We denote $F$ as the operation of feature
extraction, $F(z)$ as the output of the template branch, and $F(x)$ as the
output of the detection branch.

The feature extractor of our work is alternative. It can be replaced by most
of the backbones commonly used, such as AlexNet, Resnet[8] and so on. One
thing we should notice is that the complexity of the backbone. According to
our experiments, the more complex the backbone, the better the result for
tracking. We found that Resnet18 has a better balance between the running
speed and the accuracy. Therefore, we recommend you use Resnet18 for the
feature extractor.

###  3.3 SE Block

In this section, we introduce the Squeeze-and-Excitation (SE) block inserted
in our framework. Inspired by the SE network, we add the block after the
feature extractor. The SE block is one of the attention mechanism enabling
feature recalibration. With SE block, our model performs better and converges
faster.

The SE block has a simple structure, which consists of an average pool, fully
connected layers and activation functions as shown in Fig. 2. The input of the
SE block is the feature maps come out of the feature extractor, and its output
keeps the same size with the input. We denote the above transformation as $S$,
the output for both branches could be expressed as:

$\left\\{\begin{array}[]{lr}&F_{x}=S(F(x))\\\
&F_{z}=S(F(z))\end{array}\right.$ (1)

where $F_{x}$ denotes the output of the SE block in detection branch, while
$F_{z}$ denotes the one in template branch.

Figure 2: The structure of the SE block, which contains the vector of the same
length as the number of channels. We acquire this vector by training the
sequences of activation functions and fully connected layers. The final
feature map is obtained by multiplying the vector to relevant channels.

###  3.4 Convolution operation

In this section, we introduce the convolution operation between the results of
two branches. As mentioned earlier, the searching feature map is convolved by
the kernel consists of the template feature. We make the convolution at every
channel separately. The convolution process of the c-th channel is depicted as
Eq. (2).

$Conv_{c}(F_{x},F_{z})=F_{x}^{c}*F_{z}^{c}$ (2)

where $F_{x}^{c}$ denotes the $c$-th channel for $F_{x}$, while $F_{z}^{c}$
denotes the $c$-th channel for $F_{z}$. * denotes correlation operator.

The features from detection branch $F(x)$ after extracting and weighting is
$w_{x}\times w_{x}\times c$ in shape, the template features $F(z)$ from the
same way is $w_{z}\times w_{z}\times c$. The convolution works for every
channel, the result after convolution is
$(w_{x}-w_{z}+1)\times(w_{x}-w_{z}+1)\times c$, which contains the information
of the target position in detection patch. The relative position based on the
feature map is obtained by feeding the convolution result into the regression
part.

###  3.5 Regression part

In this section, we introduce the regression part in our framework. As we
mentioned before, the regression part generates the relative position based on
the feature map. This is the most important part in the tracking model,
especially for the siamese network. The regression part turns the feature map
after convolution to the final position of the target. Different siamese
networks have different implementations of the regression part. For example,
SiamFC makes a heatmap using convolution result to locate the target. SiamRPN
moves the RPN network in Faster-RCNN[23] to regress the x, y, w, h and the
probabilities of foreground and background by generating lots of anchors.

In our network, we propose a brand new approach for regression, just as shown
in Fig. 3, which is lightweight and quite simple. We use a convolution kernel
of size $1\times 1$ to train the weight for different channels. After this
step, the shape of the result is $(w_{x}-w_{z}+1)\times(w_{x}-w_{z}+1)$. Then,
we use a fully-connected sub-network to connect the convolution result and the
final position. Instead of regressing position directly, we use relative
position just like most networks do. The relative position is a vector
containing four float numbers, which is denoted as
$[O_{1},O_{2},O_{3},O_{4}]$. The position of target in the detection patch is
calculated by Eq. (3):

$\left\\{\begin{array}[]{cc}&x_{1}=O_{1}*w_{f}+w_{f}/2\\\
&y_{1}=O_{2}*h_{f}+h_{f}/2\\\ &x_{2}=O_{3}*w_{f}+w_{f}/2\\\
&y_{2}=O_{4}*h_{f}+h_{f}/2\\\ \end{array}\right.$ (3)

where $x_{1},y_{1},x_{2},y_{2}$ denote the x-axis coordinate, y-axis
coordinate of the top-left corner and the bottom-right corner of the target
bounding box in the detection frame. $h_{f}$ and $w_{f}$ denote the height and
width of the detection patch, respectively.

Figure 3: Structure of our regression part

##  4 Training and Inferring

###  4.1 Training Phrase

In the training phrase, we select two datasets, GOT and ImageNet-VID, for
generating samples of the detection frame and the template frame. GOT aims to
provide a dataset with wide coverage of common objects for training visual
object trackers. GOT covers 560 classes of moving objects and 87 motion
patterns. There are more than 10000 video segments provided by GOT with 1.5
million labeled bounding boxes. Another dataset we use is ImageNet-VID, which
provides annotations with 30 basic-level categories.

The datasets mentioned above provide plenty of image sequences. For each
sequence, there are annotations of object positions in each image. We process
every sequence and corresponding annotation using the five steps as shown in
Fig. 4:

Figure 4: Illustration of steps for generating template patches and detection
patches from sequences of datasets.

  1. 1.

Select two frames with a interval randomly selected from 1 to 100. If the
target is partly or entirely out of view in either frame, redo this step;

  2. 2.

Crop the target in one frame as the template patch;

  3. 3.

For another frame, crop the image as the detection patch according to
$left,top,right,bottom$. These values are obstained randomly between the
bounding box and the given edge
$\hat{left},\hat{top},\hat{right},\hat{bottom}$, just as Eq. (4) shown.

$\left\\{\begin{array}[]{cc}&left=random(\hat{left},x_{b})\\\
&top=random(\hat{top},y_{b})\\\ &right=random(x_{2},\hat{right})\\\
&bottom=random(y_{2},\hat{bottom})\end{array}\right.$ (4)

As for the edge, it is selected randomly from the Eq. (5), Eq. (6) and Eq. (7)
every time;

$\left\\{\begin{array}[]{cc}&\hat{left}=max(0,x_{1}$–$w_{b})\\\
&\hat{right}=min(x_{2}+w_{b},w_{f})\\\ &\hat{top}=max(0,y_{1}-h_{b})\\\
&\hat{bottom}=min(y_{2}+h_{b},h_{f})\\\ \end{array}\right.$ (5)

$\left\\{\begin{array}[]{cc}&\hat{left}=max(0,x_{1}$–$w_{b}/2)\\\
&\hat{right}=min(x_{2}+w_{b}/2,w_{f})\\\ &\hat{top}=max(0,y_{1}-h_{b})\\\
&\hat{bottom}=min(y_{2}+h_{b},h_{f})\\\ \end{array}\right.$ (6)

$\left\\{\begin{array}[]{cc}&\hat{left}=max(0,x_{1}$–$w_{b})\\\
&\hat{right}=min(x_{2}+w_{b},w_{f})\\\ &\hat{top}=max(0,y_{1}-h_{b}/2)\\\
&\hat{bottom}=min(y_{2}+h_{b}/2,h_{f})\\\ \end{array}\right.$ (7)

$x_{1},y_{1},x_{2},y_{2}$ denote the x-axis coordinate, y-axis coordinate of
the top-left corner and the bottom-right corner of the target bounding box in
current frame respectively. $w_{f}$ denotes the width of the current frame
while $h_{f}$ denotes the height.

  4. 4.

Calculate the label $[O_{1},O_{2},O_{3},O_{4}]$ for this sample as :

$\left\\{\begin{array}[]{cc}&O_{1}=\frac{\hat{x_{1}}-\frac{\hat{w_{f}}}{2}}{\hat{w_{f}}}=\frac{\hat{x_{1}}}{\hat{w_{f}}}-\frac{1}{2}\\\
&O_{2}=\frac{\hat{y_{1}}-\frac{\hat{y_{f}}}{2}}{\hat{h_{f}}}=\frac{\hat{y_{1}}}{\hat{h_{f}}}-\frac{1}{2}\\\
&O_{3}=\frac{\hat{x_{2}}-\frac{\hat{w_{f}}}{2}}{\hat{w_{f}}}=\frac{\hat{x_{2}}}{\hat{w_{f}}}-\frac{1}{2}\\\
&O_{4}=\frac{\hat{y_{2}}-\frac{\hat{y_{f}}}{2}}{\hat{h_{f}}}=\frac{\hat{y_{2}}}{\hat{h_{f}}}-\frac{1}{2}\end{array}\right.$
(8)

where $\hat{x_{1}},\hat{y_{1}},\hat{x_{2}},\hat{y_{2}}$ denote the x-axis
coordinate, y-axis coordinate of the top-left corner and the bottom-right
corner of the target bounding box in the cropped image, which is the detection
patch, respectively. $\hat{w_{f}}$ denotes the width of the detection patch
while $\hat{h_{f}}$ denotes the height.

Once we generate enough samples, we can start training the model. We use
239$\times$239, 125$\times$125 for the shape of two branch inputs. We set
$w_{x}$ 15 and $w_{z}$ 7\. Training the model within 5 epoches with the
learning rate of 1e-3 and batch size of 80. The loss function we choose is
Smooth L1 loss, which is:

$Smooth_{l1}(x,\sigma)=\left\\{\begin{array}[]{lr}0.5{\sigma}^{2}{x}^{2},|x|\leq\frac{1}{\sigma^{2}}&\\\
|x|-\frac{1}{2\sigma^{2}},|x|\geq\frac{1}{\sigma^{2}}&\end{array}\right.$ (9)

According to Eq. (9), the final loss is:

$loss=\sum_{i=1}^{n}Smooth_{L1}(O_{i}^{\star}-O_{i},\sigma)$ (10)

where $O_{i}^{\star}$ denotes the groundtruth of the target position.

###  4.2 Inferring Phrase

In the inferring phrase, we take the template patch and the detection patch as
input, the output of the model is $[O_{1},O_{2},O_{3},O_{4}]$ mentioned above.
Then, we calculate the position according to the output and relevant frames.
The detailed steps are as follows:

  1. 1.

Crop the target in the first frame as the template patch, the template patch
is fixed till the tracking progress ends. Record the position of template
patch as [$left^{\star},top^{\star},width^{\star},height^{\star}$].

  2. 2.

Crop area according to ${left,top,right,bottom}$ of the current frame as
detection patch by:

$\left\\{\begin{array}[]{cc}&left=max(0,left^{\star}-width^{\star}*\delta)\\\
&top=max(0,top^{\star}-height^{\star}*\delta)\\\
&right=max(left^{\star}+width^{\star}*(1+\delta),w_{f})\\\
&bottom=max(top^{\star}+height^{\star}*(1+\delta),h_{f})\end{array}\right.$
(11)

  3. 3.

Take the detection patch and the template patch into the tracker, and obtain
the target region $x_{1},y_{1},w_{1},h_{1}$ in the detection patch.

  4. 4.

Considering the position of detection patch in the current frame, update the
output as:

$\left\\{\begin{array}[]{cc}&x_{1}=x_{1}+left\\\ &y_{1}=y_{1}+top\\\
&x_{2}=x_{2}+left\\\ &y_{2}=y_{2}+top\end{array}\right.$ (12)

  5. 5.

Update the position in current frame as
[$left^{\star},top^{\star},width^{\star},height^{\star}$].

  6. 6.

go back to step 11 till the tracking ends.

##  5 Experiment

In our experiment, we only use accuracy, robustness, EAO and EFO for our
indicators in VOT2015 and VOT2016. In VOT2017, we run the real-time experiment
and a running speed test for some excellent trackers. We add the speed test
because the real-time experience show no difference when the speed of the
trackers reach a certain value. For the comparative experimental results of
other excellent trackers, we take the values for accuracy from the VOT reports
to avoid the differences because of the implementation details.

As for the OTB100, we draw the success plot and precision plot comparing with
some other trackers, including some state-of-the-art trackers in these years
and some fast traditional trackers.

Finally, we compare the size of our network with some other siamese tracking
networks in the last sebsection.

###  5.1 Result on VOT2015

The VOT2015 provides fully-annotated sequences for visual object tracking.
These sequences cover various scenarios, most of which correspond to one or
more difficult problems in tracking. We test our tracker on the VOT2015 based
on the rules, other tracker results for comparison are taken from the VOT2015
report.

Table 1: Comparsion with top trackers in VOT2015 Tracker | Accuracy | Robustness | EAO | EFO
---|---|---|---|---
DeepSRDCF | 0.56 | 1.0 | 0.32 | 0.38
EBT | 0.47 | 1.02 | 0.31 | 1.76
SRDCF | 0.56 | 1.24 | 0.29 | 1.99
LDP | 0.51 | 1.84 | 0.28 | 4.36
sPST | 0.55 | 1.48 | 0.28 | 1.01
SC-EBT | 0.55 | 1.86 | 0.25 | 0.80
Ours | 0.55 | 1.95 | 0.20 | 52.37

As shown in the Table 1, we learn that most of trackers run slowly. Comparing
to other trackers, our tracker achieves similar accuracy but works far faster.

###  5.2 Result on VOT2016

The VOT2016 shares the same sequences with VOT2015, just re-annotates the
bounding boxes in the VOT2015 dataset. But there appears more excellent
trackers in this year. The scores of trackers in this year are high in
general, which may be caused by the similarity of the testing sequences. We
select some excellent tracker for comparison. The indicators are the same as
last subsection.

Table 2: Comparsion with top trackers in VOT2016 Tracker | Accuracy | Robustness | EAO | EFO
---|---|---|---|---
C-COT | 0.54 | 0.24 | 0.33 | 0.51
TCNN | 0.56 | 0.27 | 0.33 | 1.05
SSAT | 0.58 | 0.29 | 0.32 | 0.48
MLDF | 0.49 | 0.23 | 0.31 | 1.48
Staple | 0.54 | 0.38 | 0.30 | 11.11
Ours | 0.51 | 0.53 | 0.19 | 53.05

As shown in Table 2, in the sequences of VOT2016, C-COT performs best in our
test. Our tracker runs faster than all of these trackers with good accuracy.

###  5.3 Result on VOT2017

EFO (Equivalent Filter Operations) reduces the variability by dividing the
operation time of filtering on an image with fixed shape, which is used for
indicating the running speed from VOT2014 to VOT2016. But the filtering
operation could not represent all the operations in the different platform and
different programming languages, which means EFO could not eliminate the
variability. This is the reason why VOT do not use EFO after VOT2016. Instead,
they propose a new experiment, real-time experiment, for testing other
indicators with time limit. If the tracker cannot give the result of current
frame in a given time, the testing system will use the last reported bounding
box for the result. It means the evaluation result drops sharply if the
running speed lower than the specified value.

But this experiment just divide the tracker into two parts, one part is slower
than the specified value and the other part is faster. The differences between
two trackers in one part can not be told. Therefore, we add an addition
experiment for running some state-of-the-art trackers of VOT2017 on one
machine.

The result of the real-time experiment of VOT2017 is shown in Table 3. In
order to better demonstrate the speed advantage of our tracker, we make the
test on a low-end device, the results are shown in Fig. 5 and the unit is
fps(frame per second). The configuration of the device is shown as Table 4.

Table 3: Comparison with top trackers in VOT2017 real-time experiment Tracker | Accuracy | Robustness | EAO
---|---|---|---
CSRDCF++ | 0.46 | 0.40 | 0.21
SiamFC | 0.50 | 0.60 | 0.18
ECOhc | 0.49 | 0.57 | 0.18
Staple | 0.53 | 0.69 | 0.17
ASMS | 0.49 | 0.63 | 0.17
Ours | 0.45 | 0.81 | 0.13
Figure 5: Speed comparison of excellent trackers in VOT2017 Table 4: Hardware platform for experiments GPU | Processor
---|---
GeForce 840M | i7-4510U CPU @ 2.00GHz

In VOT2017, some sequences in the data seems not challenging enough for state-
of-the-art trackers, and hence are replaced by new sequences. From the
reported results of the trackers, it is observable that sequences in VOT2017
are harder to track. But our tracker keeps the good performance. From the
speed test, even on low-end device, our tracker still has an excellent speed,
which is much faster than other trackers.

###  5.4 Result on OTB100

OTB2013 have two version, OTB50 and OTB100. OTB100 contains all of the
sequences in OTB50. We use OTB100 to test our tracker for wider coverage.
OTB100 evaluates trackers with one pass, which has not reinitialization after
failure. This kind of evaluation is a big challenge for light network. In
fact, this method is easy to waste the test set, because once the tracking
fails, the following frames will be in vain.

Figure 6: Success plot and precision plot of OTB100

In this experiment, we compare with some excellent tracker in these years,
such as DeepSRDCF, SiamRPN, SiamFC, fDSST. Aparting from this, we add some
traditional trackers that are not state-of-art but light and fast for
deploying and running just like ours. As shown in Fig. 6, even if OTB100
evaluates trackers with one pass, which has not reinitialization after
failure, our tracker still have a good performance in success plot and
precision plot.

###  5.5 Model size

Benefiting from the simplicity of our net, the model size is small enough. It
makes it possible to deploy the model to low-end devices and even the mobile
devices. We compare our model size with some networks based on siamese
network. All of these models are end-to-end networks, the model size reflects
the parameter size. The result is shown in Fig. 7.

Figure 7: Size comparison of Siamese related models(Mb)

As shown in Fig. 7, our model is slighter than most of the siamese models.
SiamFC has the lightest model, but the running speed is far lower than ours.

##  6 Conclusion

In this work, we propose a fast and effective object tracker based on siamese
network. Our tracker is generated from an end-to-end network training on
ImageNet-VID and GOT datasets. The network learned the positions for the top-
left and right-bottom corners of the target. Our tracker could achieve real-
time tracking even on low-end hardware, at the same time, it keeps the
excellent accuracy comparing with other top trackers.

## References

  * [1] R. Benenson, S. Petti, T. Fraichard, and M. Parent.  Towards urban driverless vehicles.  Journal of Vehicle Autonomous Systems, 1/2(6):4–23, 2008.
  * [2] L. Bertinetto, J. Valmadre, J. F. Henriques, A. Vedaldi, and P. H. Torr.  Fully-convolutional siamese networks for object tracking.  In European conference on computer vision, pages 850–865, 2016\.
  * [3] D. Beymer and K. Konolige.  Real-time tracking of multiple people using continuous detection.  In IEEE Frame Rate Workshop, pages 1–8. Citeseer, 1999.
  * [4] D. S. Bolme, J. R. Beveridge, B. A. Draper, and Y. M. Lui.  Visual object tracking using adaptive correlation filters.  In 2010 IEEE computer society conference on computer vision and pattern recognition, pages 2544–2550. IEEE, 2010.
  * [5] D. Comaniciu, V. Ramesh, and P. Meer.  Kernel-based object tracking.  IEEE Transactions on pattern analysis and machine intelligence, 25(5):564–577, 2003.
  * [6] M. Danelljan, G. Häger, F. Khan, and M. Felsberg.  Accurate scale estimation for robust visual tracking.  In British Machine Vision Conference, pages 65.1–65.11. BMVA Press, 2014.
  * [7] K. L. Dempski.  Arbitrary object tracking augmented reality applications, May 23 2006\.  US Patent 7,050,078.
  * [8] K. He, X. Zhang, S. Ren, and J. Sun.  Deep residual learning for image recognition.  In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 770–778, 2016.
  * [9] D. Held, S. Thrun, and S. Savarese.  Learning to track at 100 fps with deep regression networks.  In European Conference on Computer Vision, pages 749–765. Springer, 2016.
  * [10] J. F. Henriques, R. Caseiro, P. Martins, and J. Batista.  High-speed tracking with kernelized correlation filters.  IEEE transactions on pattern analysis and machine intelligence, 37(3):583–596, 2014.
  * [11] J. Hu, L. Shen, and G. Sun.  Squeeze-and-excitation networks.  In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 7132–7141, 2018.
  * [12] L. Huang, X. Zhao, and K. Huang.  Got-10k: A large high-diversity benchmark for generic object tracking in the wild.  IEEE Transactions on Pattern Analysis and Machine Intelligence, 2019\.
  * [13] C. Hue, J.-P. Le Cadre, and P. Pérez.  Tracking multiple objects with particle filtering.  IEEE transactions on aerospace and electronic systems, 38(3):791–812, 2002.
  * [14] K. A. Joshi and D. G. Thakore.  A survey on moving object detection and tracking in video surveillance system.  International Journal of Soft Computing and Engineering, 2(3):44–48, 2012.
  * [15] Z. Kalal, K. Mikolajczyk, and J. Matas.  Tracking-learning-detection.  IEEE transactions on pattern analysis and machine intelligence, 34(7):1409–1422, 2011.
  * [16] M. Kristan, A. Leonardis, J. Matas, M. Felsberg, R. Pflugfelder, L. Cehovin Zajc, T. Vojir, G. Hager, A. Lukezic, A. Eldesokey, et al.  The visual object tracking vot2017 challenge results.  In Proceedings of the IEEE International Conference on Computer Vision Workshops, pages 1949–1972, 2017.
  * [17] M. Kristan, J. Matas, A. Leonardis, M. Felsberg, L. Cehovin, G. Fernandez, T. Vojir, G. Hager, G. Nebehay, and R. Pflugfelder.  The visual object tracking vot2015 challenge results.  In Proceedings of the IEEE international conference on computer vision workshops, pages 1–23, 2015.
  * [18] L. A. e. a. Kristan M.  The visual object tracking vot2016 challenge results.  Proceedings of the European Conference on Computer Vision, 9914:777–823, 2016.
  * [19] A. Krizhevsky, I. Sutskever, and G. E. Hinton.  Imagenet classification with deep convolutional neural networks.  In Advances in neural information processing systems, pages 1097–1105, 2012.
  * [20] B. Li, W. Wu, Q. Wang, F. Zhang, J. Xing, and J. Yan.  Siamrpn++: Evolution of siamese visual tracking with very deep networks.  In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 4282–4291, 2019.
  * [21] B. Li, J. Yan, W. Wu, Z. Zhu, and X. Hu.  High performance visual tracking with siamese region proposal network.  In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 8971–8980, 2018.
  * [22] T. Liu, G. Wang, and Q. Yang.  Real-time part-based visual tracking via adaptive correlation filters.  In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 4902–4912, 2015.
  * [23] S. Ren, K. He, R. Girshick, and J. Sun.  Faster r-cnn: Towards real-time object detection with region proposal networks.  IEEE transactions on pattern analysis and machine intelligence, 39(6):1137–1149, 2016.
  * [24] O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma, Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, et al.  Imagenet large scale visual recognition challenge.  International journal of computer vision, 115(3):211–252, 2015\.
  * [25] Q. Wang, L. Zhang, L. Bertinetto, W. Hu, and P. H. Torr.  Fast online object tracking and segmentation: A unifying approach.  In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 1328–1338, 2019.
  * [26] X. Wang, R. Girshick, A. Gupta, and K. He.  Non-local neural networks.  In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 7794–7803, 2018.
  * [27] S. Woo, J. Park, J.-Y. Lee, and I. So Kweon.  Cbam: Convolutional block attention module.  In Proceedings of the European Conference on Computer Vision (ECCV), pages 3–19, 2018.
  * [28] Y. Wu, J. Lim, and M.-H. Yang.  Online object tracking: A benchmark.  In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2013.
  * [29] Z. Zhu, Q. Wang, B. Li, W. Wu, J. Yan, and W. Hu.  Distractor-aware siamese networks for visual object tracking.  In Proceedings of the European Conference on Computer Vision (ECCV), pages 101–117, 2018.


The method is quite complementary with the cartoon method as the small vortons that are not accessible to this method are perfect for the cartoon method and vice versa. Additionally, fully 3D simulations will be limited by the winding number, $N$, (since larger values will require more sampling of the angular variations) rather than the size of the vorton. We therefore expect that this method will scale better than the cartoon method for larger vortons (with the ratio of $N$ to $Q$ fixed) as the number of grid points only increases linearly with the size of the vorton, rather than quadratically.

A comparison of the radii of vortons produced by gradient flow using the cut off method and the cartoon method in parameter set B with $Q/N = 31.89$ kept constant. The predicted radii from the thin string analysis has also been displayed. The cartoon method is in better agreement with the predicted radii than the cut off method. Both of the percentage error plots decrease with $N$, with the cut off method approaching the accuracy of the cartoon method at larger radii.

Which method is more accurate depends on the trade off between errors introduced by the boundary at $\rho_\text{min}$, and errors introduced by interpolation. From Figure <ref> it appears that the results agree with the TSA better when the cartoon method is used. Nevertheless, the cut off method may still prove to be a valuable technique for investigating very large vortons, particularly if improvements can be made to the boundary conditions.