  Computer vision algorithms are known to be extremely sensitive to the
environmental conditions in which the data is captured, e.g., lighting
conditions and target density. Tuning of parameters or choosing a completely
new algorithm is often needed to achieve a certain performance level,
especially when there is a limitation of the computation source. In this paper,
we focus on this problem and propose a framework to adaptively select the
"best" algorithm-parameter combination and the computation platform under
performance and cost constraints at design time, and adapt the algorithms at
runtime based on real-time inputs. This necessitates developing a mechanism to
switch between different algorithms as the nature of the input video changes.
Our proposed algorithm calculates a similarity function between a test video
scenario and each training scenario, where the similarity calculation is based
on learning a manifold of image features that is shared by both the training
and test datasets. Similarity between training and test dataset indicates the
same algorithm can be applied to both of them and achieve similar performance.
We design a cost function with this similarity measure to find the most similar
training scenario to the test data. The "best" algorithm under a given platform
is obtained by selecting the algorithm with a specific parameter combination
that performs the best on the corresponding training data. The proposed
framework can be used first offline to choose the platform based on performance
and cost constraints, and then online whereby the "best" algorithm is selected
for each new incoming video segment for a given platform. In the experiments,
we apply our algorithm to the problems of pedestrian detection and tracking. We
show how to adaptively select platforms and algorithm-parameter combinations.
Our results provide optimal performance on 3 publicly available datasets.
