Log In Sign Up

Taking a Deeper Look at Pedestrians

by   Jan Hosang, et al.

In this paper we study the use of convolutional neural networks (convnets) for the task of pedestrian detection. Despite their recent diverse successes, convnets historically underperform compared to other pedestrian detectors. We deliberately omit explicitly modelling the problem into the network (e.g. parts or occlusion modelling) and show that we can reach competitive performance without bells and whistles. In a wide range of experiments we analyse small and big convnets, their architectural choices, parameters, and the influence of different training data, including pre-training on surrogate tasks. We present the best convnet detectors on the Caltech and KITTI dataset. On Caltech our convnets reach top performance both for the Caltech1x and Caltech10x training setup. Using additional data at training time our strongest convnet model is competitive even to detectors that use additional data (optical flow) at test time.


page 1

page 2

page 3

page 4


Pedestrian Detection: Domain Generalization, CNNs, Transformers and Beyond

Pedestrian detection is the cornerstone of many vision based application...

Pedestrian-Synthesis-GAN: Generating Pedestrian Data in Real Scene and Beyond

State-of-the-art pedestrian detection models have achieved great success...

Pedestrian Detection: The Elephant In The Room

Pedestrian detection is used in many vision based applications ranging f...

A Content-Based Late Fusion Approach Applied to Pedestrian Detection

The variety of pedestrians detectors proposed in recent years has encour...

Illuminating Pedestrians via Simultaneous Detection & Segmentation

Pedestrian detection is a critical problem in computer vision with signi...

Filtered Channel Features for Pedestrian Detection

This paper starts from the observation that multiple top performing pede...

Expecting the Unexpected: Training Detectors for Unusual Pedestrians with Adversarial Imposters

As autonomous vehicles become an every-day reality, high-accuracy pedest...

1 Introduction

In recent years the field of computer vision has seen an explosion of success stories involving convolutional neural networks (convnets). Such architectures currently provide top results for general object classification

[25, 36], general object detection [40], feature matching [16], stereo matching [45]

, scene recognition

[48, 8]

, pose estimation

[41, 7], action recognition [23, 38] and many other tasks [35, 3]. Pedestrian detection is a canonical case of object detection with relevant applications in car safety, surveillance, and robotics. A diverse set of ideas has been explored for this problem [13, 18, 12, 5] and established benchmark datasets are available [12, 17]. We would like to know if the success of convnets is transferable to the pedestrian detection task.

Previous work on neural networks for pedestrian detection has relied on special-purpose designs, e.g. hand-crafted features, part and occlusion modelling. Although these proposed methods perform ably, current top methods are all based on decision trees learned via Adaboost

[5, 47, 34, 28, 44]. In this work we revisit the question, and show that both small and large vanilla convnets can reach top performance on the challenging Caltech pedestrians dataset. We provide extensive experiments regarding the details of training, network parameters, and different proposal methods.

Figure 1: Comparison of convnet methods on the Caltech test set (see section 7). Our CifarNet and AlexNet results significantly improve over previous convnets, and matches the best reported results (SpatialPooling+, which additionally uses optical flow).

1.1 Related work

Despite the popularity of the task of pedestrian detection, only few works have applied deep neural networks to this task: we are aware of only six.

The first paper using convnets for pedestrian detection [37] focuses on how to handle the limited training data (they use the INRIA dataset, which provides 614 positives and 1218 negative images for training). First, each layer is initialized using a form of convolutional sparse coding, and the entire network is subsequently fine-tuned for the detection task. They propose an architecture that uses features from the last and second last layer for detection. This method is named ConvNet [37].

A different line of work extends a deformable parts model (DPM) [15]

with a stack of Restricted Boltzmann Machines (RBMs) trained to reason about parts and occlusion (

DBN-Isol) [30]. This model was extended to account for person-to-person relations (DBN-Mut) [32] and finally to jointly optimize all these aspects: JointDeep [31] jointly optimizes features, parts deformations, occlusions, and person-to-person relations.

The MultiSDP [46] network feeds each layer with contextual features computed at different scales around the candidate pedestrian detection. Finally SDN [27], the current best performing convnet for pedestrian detection, uses additional “switchable layers” (RBM variants) to automatically learn both low-level features and high-level parts (e.g. “head”, “legs”, etc.).

Note that none of the existing papers rely on a “straightforward” convolutional network similar to the original LeNet [26] (layers of convolutions, non-linearities, pooling, inner products, and a softmax on top). We will revisit this decision in this paper.

Object detection

Other than pedestrian detection, related convnets have been used for detection of ImageNet

[36, 25, 20, 40, 29, 39] and Pascal VOC categories [19, 2]. The most successful general object detectors are based on variants of the R-CNN framework [19]. Given an input image, a reduced set of detection proposals is created, and these are then evaluated via a convnet. This is essentially a two-stage cascade sliding window method. See [21] for a review of recent proposal methods.

Detection proposals

The most popular proposal method for generic objects is SelectiveSearch [42]. The recent review [21] also points out EdgeBoxes [49] as a fast and effective method. For pedestrian detection DBN-Isol and DBN-Mut use DPM [15] for proposals. JointDeep, MultiSDP, and SDN use a HOG+CSS+linear SVM detector (similar to [43]) for proposals. Only ConvNet [37] applies a convnet in a sliding fashion.

Decision forests

Most methods proposed for pedestrian detection do not use convnets for detection. Leaving aside methods that use optical flow, the current top performing methods (on Caltech and KITTI datasets) are SquaresChnFtrs [5], InformedHaar [47], SpatialPooling [34], LDCF [28], and Regionlets [44]. All of them are boosted decision forests, and can be considered variants of the integral channels features architecture [11]. Regionlets and SpatialPooling use an large set of features, including HOG, LBP and CSS, while SquaresChnFtrs, InformedHaar, and LDCF build over HOG+LUV. On the Caltech benchmark, the best convnet (SDN) is outperformed by all aforementioned methods.111Regionlets matches SpatialPooling on the KITTI benchmark, and thus by transitivity would improve over SDN on Caltech.

Input to convnets

It is important to highlight that ConvNet [37] learns to predict from YUV input pixels, whereas all other methods use additional hand-crafted features. DBN-Isol and DBN-Mut use HOG features as input. MultiSDP uses HOG+CSS features as input. JointDeep and SDN uses YUV+Gradients as input (and HOG+CSS for the detection proposals). We will show in our experiments that good performance can be reached using RGB alone, but we also show that more sophisticated inputs systematically improve detection quality. Our data indicates that the antagonism “hand-crafted features versus convnets” is an illusion.

1.2 Contributions

In this paper we propose to revisit pedestrian detection with convolutional neural networks by carefully exploring the design space (number of layers, filter sizes, etc.), and the critical implementation choices (training data preprocessing, effect of detections proposal, etc.). We show that both small ( parameters) and large ( parameters) networks can reach good performance when trained from scratch (even when using the same data as previous methods). We also show the benefits of using extended and external data, which leads to the strongest single-frame detector on Caltech. We report the best known performance for a convnet on the challenging Caltech dataset (improving by more than percent points), and the first convnet results on the KITTI dataset.

2 Training data

It is well known that for convnets the volume of training data is quite important to reach good performance. Below are the datasets we consider along the paper.


The Caltech dataset and its associated benchmark [12, 5] is one of the most popular pedestrian detection datasets. It consists of videos captured from a car traversing U.S. streets under good weather conditions. The standard training set in the “Reasonable” setting consists of frames with annotated pedestrians, and the test set covers frames with pedestrians.

Caltech validation set

In our experiments we also use Caltech training data for validation. For those experiments we use one of the suggested validation splits [12]: the first five training videos are used for validation training and the sixth training video for validation testing.


Because the Caltech dataset videos are fully annotated, the amount of training data can be increased by resampling the videos. Inspired by [28], we increase the training data tenfold by sampling one out of three frames (instead of one out of thirty frames in the standard setup). This yields annotated pedestrians for training, extracted from frames.


The KITTI dataset [17] consists of videos captured from a car traversing German streets, also under good weather conditions. Although similar in appearance to Caltech, it has been shown to have different statistics (see [5, supplementary material]). Its training set contains pedestrians ( taller than pixels) over frames, and its test set frames.

ImageNet, Places

In section 5 we will consider using large convnets that can exploit pre-training for surrogate tasks. We consider two such tasks (and their associated datasets), the ImageNet 2012 classification of a thousand object categories [25, 36, 19] and the classification of scene categories [48]. The datasets provide and annotated images for training, respectively.

3 From decision forests to neural networks

Before diving into the experiments, it is worth noting that the proposal method we are using can be converted into a convnet so that the overall system can be seen as a cascade of two neural networks.

SquaresChnFtrs [4, 5] is a decision forest, where each tree node pools and thresholds information from one out of several feature channels. As mentioned in section 1.1 it is common practice to learn pedestrian detection convnets on handcrafted features, thus the feature channels need not be part of the conversion. In this case, a decision node can be realised using (i) a fully connected layer with constant non-zero weights corresponding to the original pooling region and zero weights elsewhere, (ii) a bias term that applies the threshold, (iii) and a sigmoid non-linearity that yields a decision. A two-layer network is sufficient to model a level-2 decision tree given the three simulated node outputs. Finally, the weighted sum over the tree decisions can be modelled with yet another fully-connected layer.

The mapping from SquaresChnFtrs to a deep neural network is exact: evaluating the same inputs it will return the exact same outputs. What is special about the resulting network is that it has not been trained by back-propagation, but by Adaboost [6]. This network already performs better than the best known convnet on Caltech, SDN. Unfortunately, experiments to soften the non-linearities and use back-propagation to fine-tune the model parameters did not show significant improvements.

4 Vanilla convolutional networks

In our experience many convnet architectures and training hyper-parameters do not enable effective learning for diverse and challenging tasks. It is thus considered best practice to start exploration from architectures and parameters that are known to work well and progressively adapt it to the task at hand. This is the strategy of the following sections.

In this section we first consider CifarNet, a small network designed to solve the CIFAR-10 classification problem ( objects categories, colour images of ) [24]. In section 5 we consider AlexNet, a network that has times more parameters than CifarNet and designed to solve the ILSVRC2012 classification problem ( objects categories, colour images of VGA resolution). Both of these networks were introduced in [25]

and are re-implemented in the open source Caffe project 


Positives Negatives MR GT Random GT GT GT, GT, GT,

Table 1: Effect of positive and negative training sets on the detection quality. MR: log-average miss-rate on Caltech validation set. GT: ground truth bounding boxes.
Window size MR

Table 2: Effect of the window size on the detection quality. MR: see table 3.
Ratio MR

Table 3: Detection quality as a function of the strictly enforced ratio of positives:negatives in each training batch. None: no ratio enforced. MR: see table 3.
Figure 2: Illustration of the CifarNet, parameters.

Although pedestrian detection is quite a different task than CIFAR-10, we decide to start our exploration from the CifarNet, which provides fair performance on CIFAR-10. Its architecture is depicted in figure 2, unless otherwise specified we use raw RGB input.

We first discuss how to use the CifarNet network (section 4.1). This naive approach already improves over the best known convnets (section 4.2). Sections 4.3 and 4.4 explore the design space around CifarNet and further push the detection quality. All models in this section are trained using Caltech data only (see section 2).

4.1 How to use CifarNet?

Given an initial network specification, there are still several design choices that affect the final detection quality. We discuss some of them in the following paragraphs.

Detection proposals

Unless otherwise specified we use the SquaresChnFtrs [4, 5] detector to generate proposals because, at the time of writing, it is the best performing pedestrian detector (on Caltech) with source code available. In figure 3 we compare SquaresChnFtrs against EdgeBoxes [49], a state of the art class-agnostic proposal method. Using class-specific proposals allows to reduce the number of proposals by three orders of magnitude.

Figure 3: Recall of ground truth annotations versus Intersection-over-Union threshold on the Caltech test set. The legend indicates the average number of detection proposals per image for each curve. A pedestrian detector (SquaresChnFtrs [5]) generates much better proposals than a state of the art generic method (EdgeBoxes [49]).
Thresholds for positive and negative samples

Given both training proposals and ground truth (GT) annotations, we now consider which training label to assign to each proposal. A proposal is considered to be a positive example if it exceeds a certain Intersection-over-Union (IoU) threshold for at least one GT annotation. It is considered negative if it does not exceed a second IoU threshold for any GT annotation, and is ignored otherwise. We find that using GT annotations as positives is beneficial (i.e. not applying significant jitter).

Model window size

A typical choice for pedestrian detectors is a model window of in which the pedestrian occupies an area of [9, 11, 4, 5]. It is unclear that this is the ideal input size for convnets. Despite CifarNet being designed to operate over , table 3 shows that a model size of indeed works best. We experimented with other variants (stretching versus cropping, larger context border) with no clear improvement.

Training batch

In a detection setup, training samples are typically highly imbalanced towards the background class. Although in our validation setup the imbalance is limited (see table 3), we found it beneficial throughout our experiments to enforce a strict ratio of positive to negative examples per batch of the stochastic gradient descend optimisation. The final performance is not sensitive to this parameter as long as some ratio (vs. None) is maintained. We use a ratio of .

In the supplementary material we detail all other training parameters.

4.2 How far can we get with the CifarNet?

Given the parameter selection on the validation set from previous sections, how does CifarNet compare to previously reported convnet results on the Caltech test set? In table 4 and figure 1, we see that our naive network right away improves over the best known convnet ( versus SDN ).

To decouple the contribution of our strong SquaresChnFtrs proposals to the CifarNet performance, we also train a CifarNet using the proposal from JointDeep [31]. When using the same detection proposals at training and test time, the vanilla CifarNet already improves over both custom-designed JointDeep and SDN.

Our CifarNet results are surprisingly close to the best known pedestrian detector trained on Caltech1x ( versus SpatialPooling [34]).

4.3 Exploring different architectures

Encouraged by our initial results, we proceed to explore different parameters for the CifarNet architecture.

4.3.1 Number and size of convolutional filters

Using the Caltech validation set we perform a swipe of convolutional filter sizes (, , or pixels) and number of filters at each layer (, , or filters). We include the full table in the supplementary material. We observe that using large filter sizes hurts quality, while the varying the number of filters shows less impact. Although some fluctuation in miss-rate is observed, overall there is no clear trend indicating that a configuration is clearly better than another. Thus, for sake of simplicity, we keep using CifarNet (-- filters of pixel) in the subsequent experiments.

4.3.2 Number and type of layers

In table 5 we evaluate the effect of changing the number and type of layers, while keeping other CifarNet parameters fix. Besides convolutional layers (CONV) and fully-connected layers (FC), we also consider locally-connected layers (LC) [1], and concatenating features across layers (CONCAT23) (used in ConvNet [37]). None of the considered architecture changes improves over the original three convolutional layers of CifarNet.

Method Proposal Test MR
Proposals of [31] -
JointDeep Proposals of [31] [31]
SDN Proposals of [31] [27]
CifarNet Proposals of [31]
SquaresChnFtrs - [5]
CifarNet SquaresChnFtrs
Table 4: Detection quality as a function of the method and the proposals used for training and testing (MR: log-average miss-rate on Caltech test set). When using the exact same training data as JointDeep, our vanilla CifarNet already improves over the previous best known convnet on Caltech (SDN).
# Architecture MR
3 CONV1 CONV2 CONV3 (CifarNet, fig. 2)
Table 5: Detection quality of different network architectures (MR: log-average miss-rate on Caltech validation set), sorted by number of layers before soft-max. DAG: directed acyclic graph.

4.4 Input channels

As discussed in section 1.1, the majority of previous convnets for pedestrian detection use gradient and colour features as input, instead of raw RGB. In table 6 we evaluate the effect of different input features over CifarNet. It seems that HOG+L channel provide a small advantage over RGB.

For purposes of direct comparison with the large networks, in the next sections we keep using raw RGB as input for our CifarNet experiments. We report the CifarNet test set results in section 6.

Input channels # channels CifarNet
Table 6: Detection quality when changing the input channels network architectures. Results in MR; log-average miss-rate on Caltech validation set. G indicates luminance channel gradient, HOG indicates G plus G spread over six orientation bins (hard-binning). These are the same input channels used by our SquaresChnFtrs proposal method.

5 Large convolutional network

One appealing characteristic of convnets is their ability to scale in size of training data volume. In this section we explore larger networks trained with more data.

We base our experiments on the R-CNN [19] approach, which is currently one of the best performer on the Pascal VOC detection task [14]. We are thus curious to evaluate its performance for pedestrian detection.

5.1 Surrogate tasks for improved detections

The R-CNN approach (“Regions with CNN features”) wraps the large network previously trained for the ImageNet classification task [25], which we refer to as AlexNet (see figure 4). We also use “AlexNet” as shorthand for “R-CNN with AlexNet” with the distinction made clear by the context. During R-CNN training AlexNet is fine-tuned for the (pedestrian) detection task, and in a second step, the softmax output is replaced by a linear SVM. Unless otherwise specified, we use the default parameters of the open source, Caffe based, R-CNN implementation333 Like in the previous sections, we use SquaresChnFtrs for detection proposals.

Figure 4: Illustration of the AlexNet architecture, parameters.

If we only train the top layer SVM, without fine-tuning the lower layers of AlexNet, we obtain on the Caltech test set. This is already surprisingly close to the best known convnet for the task (SDN ). When fine-tuning all layers on Caltech, the test set performance increases dramatically, reaching . This confirms the effectiveness of the general R-CNN recipe for detection (train AlexNet on ImageNet, fine-tune for the task of interest).
In table 7 we investigate the influence of the pre-training task by considering AlexNets that have been trained for scene recognition [48] (“Places”, see section 2) and on both Places and ImageNet (“Hybrid”). “Places” provides results close to ImageNet, suggesting that the exact pre-training task is not critical and that there is nothing special about ImageNet.


Due to the large number of parameters of AlexNet, we consider providing additional training data using Caltech10x for fine-tuning the network (see section 2). Despite the strong correlation across training samples, we do observe further improvement (see table 7). Interestingly, the bulk of the improvement is due to more pedestrians (Positives10x, uses positives from Caltech10x and negatives from Caltech1x). Our top result, , makes our AlexNet setup the best reported single-frame detector on Caltech (i.e. no optical flow).

AlexNet Fine- SVM Test MR
training tuning training
Random none Caltech1x
ImageNet none Caltech1x
P+Imagenet Caltech1x Caltech1x
P: Places
ImageNet Positives10x Positives10x
Caltech10x Caltech10x
Caltech1x - Caltech1x
- Caltech10x
Caltech10x - Caltech1x
- Caltech10x
SquaresChnFtrs [5]
Table 7: Detection quality when using different training data in different training stages of the AlexNet: initial training of the convnet, optional fine-tuning of the convnet, and the SVM training. Positives10x: positives from Caltech10x and negatives from Caltech1x. Detection proposals provided by SquaresChnFtrs, result included for comparison. See section 5.1 and 5.2 for details.

5.2 Caltech-only training

To compare with CifarNet, and to verify whether pre-training is necessary at all, we train AlexNet “from scratch” using solely the Caltech training data. We collect results in table 7.

Training AlexNet solely on Caltech, yields , which improves over the proposals (SquaresChnFtrs ) and the previous best known convnet on Caltech (SDN ). Using Caltech10x further improves the performance, down to .

Although these numbers are inferior than the ones obtained with ImageNet pre-training (, see table 7), we can get surprisingly competitive results using only pedestrian data despite the free parameters of the AlexNet model. AlexNet with Caltech10x is second best known single-frame pedestrian detector on Caltech (best known is LDCF , which also uses Caltech10x).

5.3 Additional experiments

How many layers?

So far all experiments use the default parameters of R-CNN. Previous works have reported that, depending on the task, using features from lower AlexNet layers can provide better results [2, 35, 3]. Table 8 reports Caltech validation results when training the SVM output layer on top of layers four to seven (see figure 4). We report results when using the default parameters and parameters that have been optimised by grid search (detailed grid search included in supplementary material).
We observe a negligible difference between default and optimized parameter (at most percent points). Results for default parameters exhibit a slight trend of better performance for higher levels. These validation set results indicate that, for pedestrian detection, the R-CNN default parameters are a good choice overall.

Parameters fc7 fc6 pool5 conv4
Table 8: Detection quality when training the R-CNN SVM over different layers of the finetuned CNN. Results in MR; log-average miss-rate on Caltech validation set. “Best parameters” are found by exhaustive search on the validation set.
Effect of proposal method

When comparing the performance of AlexNet fine-tuned on Caltech1x to the proposal method, we see an improvement of (percent points) in miss-rate. In table 9 we study the impact of using weaker or stronger proposals. Both ACF [10] and SquaresChnFtrs [4, 5] provide source code, allowing us to generate training proposals. Katamari [5] and SpatialPooling+ [34] are current top performers on the Caltech dataset, both using optical flow, i.e. additional information at test time. There is a gap between the detectors ACF, SquaresChnFtrs, and Katamari/SpatialPooling, allowing us to cover different operating points.
The results of table 9 indicate that, despite the gap, there is no noticeable difference between AlexNet models trained with ACF or SquaresChnFtrs. It is seems that as long as the proposals are not random (see top row of table 3), the obtained quality is rather stable. The results also indicate that the quality improvement from AlexNet saturates around . Using stronger proposals does not lead to further improvement. This means that the discriminative power of our trained AlexNet is on par with the best known models on the Caltech dataset, but does not overtake them.

Fine- Training Testing Test MR vs.
tuning proposals proposals proposals
ACF Katamari
SCF Katamari
SCF Katamari
ACF [10]
SCF: SquaresChnFtrs [5]
LDCF [28]
Katamari [5]
SP+: SpatialPooling+ [33]
Table 9: Effect of proposal methods on detection quality of R-CNN. / indicates fine-tuning on Caltech or Caltech10x. Test MR: log-average miss rate on Caltech test set. : the improvement in MR of the rescored proposals over the test proposals alone.
KITTI test set

In figure 5 we show performance of the AlexNet in context of the KITTI pedestrian detection benchmark [17]. The network is pre-trained on ImageNet and fine-tuned using KITTI training data. SquaresChnFtrs reaches (average precision), which the AlexNet can improve to . These are the first published results for convnets on the KITTI pedestrian detection dataset.

5.4 Error analysis

Results from the previous section are encouraging, but not as good as could be expected from looking at improvements on Pascal VOC. So what bounds performance? The proposal method? The localization quality of the convnet?

Looking at the highest scoring false positives paints a picture of localization errors of the proposal method, the R-CNN, and even the ground truth. To quantify this effect we rerun the Caltech evaluation but remove all false positives that touch an annotation. This experiment provides an upper bound on performance when solving localisation issues in detectors and doing perfect non-maximum suppression. We see a surprisingly consistent improvement for all methods of about MR. This means that the intuition we gathered from looking at false positives is wrong and actually almost all of the mistakes that worsen the MR are actually background windows that are mistaken for pedestrians. What is striking about this result is that this is not just the case for our R-CNN experiments on detection proposals but also for methods that are trained as a sliding window detector.

6 Small or big convnet?

Architecture # Test MR
training parameters Caltech1x Caltech10x
SquaresChnFtrs [5]
Table 10: Selection of results (presented in previous sections) when training different networks using Caltech training data only. MR: log-average miss-rate on Caltech test set. See section 6.
Figure 5: AlexNet over on KITTI test set.

Since we have analysed the CifarNet and AlexNet separately, we compare their performance in this section side by side. Table 10 shows performance on the Caltech test set for models that have been trained only on Caltech1x and Caltech10x. With less training data the CifarNet reaches MR, performing 2 percent points better than the AlexNet. On Caltech10x, we find the CifarNet performance improved to , while the AlexNet improves to MR. The trend confirms the intuition that models with lower capacity saturate earlier when increasing the amount of training data than models with higher capacity. We can also conclude that the AlexNet would profit from better regularisation when training on Caltech1x.


The runtime during detection is about 3ms per proposal window. This is too slow for sliding window detection, but given a fast proposal method that has high recall with less than windows per image, scoring takes about 300ms per image. In our experience SquaresChnFtrs runs in 2s per image, so proposing detections takes most of the detection time.

7 Takeaways

Figure 6: Comparison of our key results (thick lines) with published methods on Caltech test set. Methods using optical flow are dashed.

Previous work suggests that convnets for pedestrian detection underperform, despite having involved architectures (see [5] for a survey of pedestrian detection). In this paper we showed that neither has to be the case. We present a wide range of experiments with two off-the-shelf models that reach competitive performance: the small CifarNet and the big AlexNet.

We present two networks that are trained on Caltech only, which outperform all previously published convnets on Caltech. The CifarNet shows better performance than related work, even when using the same training data as the respective methods (section 4.2). Despite its size, the AlexNet also improves over all convnets even when it is trained on Caltech only (section 5.2).

We push the state of the art for pedestrian detectors that have been trained on Caltech1x and Caltech10x. The CifarNet is the best single-frame pedestrian detector that has been trained on Caltech1x (section 4.2), while AlexNet is the best single-frame pedestrian detector trained on Caltech10x (section 5.2).

In figure 6, we include include all published methods on Caltech into the comparison, which also adds methods that use additional information at test time. The AlexNet that has been pre-trained on ImageNet reaches competitive results to the best published methods, but without using additional information at test time (section 5.1).

We report first results for convnets on the KITTI pedestrian detection benchmark. The AlexNet improves over the proposal method alone, delivering encouraging results to further push KITTI performance with convnets.

8 Conclusion

We have presented extensive and systematic experimental evidence on the effectiveness of convnets for pedestrian detection. Compared to previous convnets applied to pedestrian detection our approach avoids custom designs. When using the exact same proposals and training data as previous approaches our “vanilla” networks outperform previous results.

We have shown that with pre-training on surrogate tasks, convnets can reach top performance on this task. Interestingly we have shown that even without pre-training competitive results can be achieved, and this result is quite insensitive to the model size (from to parameters). Our experiments also detail which parameters are most critical to achieve top performance. We report the best known results for convnets on both the challenging Caltech and KITTI datasets.

Our experience with convnets indicate that they show good promise on pedestrian detection, and that reported best practices do transfer to said task. That being said, on this more mature field we do not observe the large improvement seen on datasets such as Pascal VOC and ImageNet.


We thank Shanshan Zhang for the help provided setting up some of the experiments.


  • [1] DeepFace: Closing the Gap to Human-Level Performance in Face Verification. In CVPR, 2014.
  • [2] P. Agrawal, R. Girshick, and J. Malik. Analyzing the performance of multilayer neural networks for object recognition. In ECCV, 2014.
  • [3] H. Azizpour, A. Razavian, J. Sullivan, A. Maki, and S. Carlsson. From generic to specific deep representations for visual recognition. In arXiv, 2014.
  • [4] R. Benenson, M. Mathias, T. Tuytelaars, and L. Van Gool. Seeking the strongest rigid detector. In CVPR, 2013.
  • [5] R. Benenson, M. Omran, J. Hosang, and B. Schiele. Ten years of pedestrian detection, what have we learned? In ECCV, CVRSUAD workshop, 2014.
  • [6] Y. Bengio, N. L. Roux, P. Vincent, O. Delalleau, and P. Marcotte. Convex neural networks. In NIPS, 2005.
  • [7] X. Chen and A. Yuille. Articulated pose estimation with image-dependent preference on pairwise relations. In NIPS, 2014.
  • [8] Z. Chen, O. Lam, A. Jacobson, and M. Milford. Convolutional neural network-based place recognition. In arXiv, 2014.
  • [9] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In CVPR, 2005.
  • [10] P. Dollár, R. Appel, S. Belongie, and P. Perona. Fast feature pyramids for object detection. PAMI, 2014.
  • [11] P. Dollár, Z. Tu, P. Perona, and S. Belongie. Integral channel features. In BMVC, 2009.
  • [12] P. Dollár, C. Wojek, B. Schiele, and P. Perona. Pedestrian detection: An evaluation of the state of the art. TPAMI, 2011.
  • [13] M. Enzweiler and D. M. Gavrila. Monocular pedestrian detection: Survey and experiments. PAMI, 2009.
  • [14] M. Everingham, S. Eslami, L. Van Gool, C. Williams, J. Winn, and A. Zisserman. The pascal visual object classes challenge – a retrospective. IJCV, 2014.
  • [15] P. Felzenszwalb, R. Girshick, D. McAllester, and D. Ramanan. Object detection with discriminatively trained part-based models. PAMI, 2010.
  • [16] P. Fischer, A. Dosovitskiy, and T. Brox. Descriptor matching with convolutional neural networks: a comparison to sift. In arXiv, 2014.
  • [17] A. Geiger, P. Lenz, and R. Urtasun. Are we ready for autonomous driving? the kitti vision benchmark suite. In CVPR, 2012.
  • [18] D. Geronimo, A. M. Lopez, A. D. Sappa, and T. Graf. Survey of pedestrian detection for advanced driver assistance systems. PAMI, 2010.
  • [19] R. Girshick, J. Donahue, T. Darrell, and J. Malik. Rich feature hierarchies for accurate object detection and semantic segmentation. In CVPR, 2014.
  • [20] K. He, X. Zhang, S. Ren, and J. Sun. Spatial pyramid pooling in deep convolutional networks for visual recognition. In ECCV, 2014.
  • [21] J. Hosang, R. Benenson, and B. Schiele. How good are detection proposals, really? In BMVC, 2014.
  • [22] Y. Jia, E. Shelhamer, J. Donahue, S. Karayev, J. Long, R. Girshick, S. Guadarrama, and T. Darrell. Caffe: Convolutional architecture for fast feature embedding. In arXiv, 2014.
  • [23] A. Karpathy, G. Toderici, S. Shetty, T. Leung, R. Sukthankar, and L. Fei-Fei. Large-scale video classification with convolutional neural networks. In CVPR, 2014.
  • [24] A. Krizhevsky. Learning multiple layers of features from tiny images. Technical report, University of Toronto, 2009.
  • [25] A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In NIPS, 2012.
  • [26] Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 1998.
  • [27] P. Luo, Y. Tian, X. Wang, and X. Tang. Switchable deep network for pedestrian detection. In CVPR, 2014.
  • [28] W. Nam, P. Dollár, and J. H. Han. Local decorrelation for improved detection. In NIPS, 2014.
  • [29] W. Ouyang, P. Luo, X. Zeng, S. Qiu, Y. Tian, H. Li, S. Yang, Z. Wang, Y. Xiong, C. Qian, Z. Zhu, R. Wang, C. C. Loy, X. Wang, and X. Tang. Deepid-net: multi-stage and deformable deep convolutional neural networks for object detection. In arXiv, 2014.
  • [30] W. Ouyang and X. Wang. A discriminative deep model for pedestrian detection with occlusion handling. In CVPR, 2012.
  • [31] W. Ouyang and X. Wang.

    Joint deep learning for pedestrian detection.

    In ICCV, 2013.
  • [32] W. Ouyang and X. Wang. Single-pedestrian detection aided by multi-pedestrian detection. In CVPR, 2013.
  • [33] S. Paisitkriangkrai, C. Shen, and A. van den Hengel. Pedestrian detection with spatially pooled features and structured ensemble learning. In arXiv, 2014.
  • [34] S. Paisitkriangkrai, C. Shen, and A. van den Hengel. Strengthening the effectiveness of pedestrian detection with spatially pooled features. In ECCV, 2014.
  • [35] A. S. Razavian, H. Azizpour, J. Sullivan, and S. Carlsson. Cnn features off-the-shelf: an astounding baseline for recognition. In arXiv, 2014.
  • [36] O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma, Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, A. C. Berg, and L. Fei-Fei. Imagenet large scale visual recognition challenge. In arXiv, 2014.
  • [37] P. Sermanet, K. Kavukcuoglu, S. Chintala, and Y. LeCun. Pedestrian detection with unsupervised multi-stage feature learning. In CVPR, 2013.
  • [38] K. Simonyan and A. Zisserman. Two-stream convolutional networks for action recognition in videos. In NIPS, 2014.
  • [39] K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recognition. In arXiv, 2014.
  • [40] C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D. Erhan, V. Vanhoucke, and A. Rabinovich. Going deeper with convolutions. In arXiv, 2014.
  • [41] J. Tompson, A. Jain, Y. LeCun, and C. Bregler. Joint training of a convolutional network and a graphical model for human pose estimation. In NIPS, 2014.
  • [42] J. Uijlings, K. van de Sande, T. Gevers, and A. Smeulders. Selective search for object recognition. IJCV, 2013.
  • [43] S. Walk, N. Majer, K. Schindler, and B. Schiele. New features and insights for pedestrian detection. In CVPR, 2010.
  • [44] X. Wang, M. Yang, S. Zhu, and Y. Lin. Regionlets for generic object detection. In ICCV, pages 17–24. IEEE, 2013.
  • [45] J. Zbontar and Y. LeCun. Computing the stereo matching cost with a convolutional neural network. In arXiv, 2014.
  • [46] X. Zeng, W. Ouyang, and X. Wang. Multi-stage contextual deep learning for pedestrian detection. In ICCV, 2013.
  • [47] S. Zhang, C. Bauckhage, and A. B. Cremers. Informed haar-like features improve pedestrian detection. In CVPR, 2014.
  • [48] B. Zhou, J. Xiao, A. Lapedriza, A. Torralba, and A. Oliva.

    Learning deep features for scene recognition using places database.

    In NIPS, 2014.
  • [49] C. L. Zitnick and P. Dollár. Edge boxes: Locating object proposals from edges. In ECCV, 2014.

Appendix A CifarNet training, the devil is in the details

Training neural networks is sensitive to a large number of parameters, including the learning rate, how the network weights are initialised, the type of regularisation applied to the weights, and the training batch size. It is difficult to isolate the effects of the individual parameters, and the best parameters will largely depend on the specific setup. We report here the parameters we used.

We train CifarNet via stochastic gradient descent (SGD) with a learning rate of

, a momentum of , and a batch size of . After epochs, we reduce the learning rate by a factor of and train for an additional epochs. Reducing the learning rate even further did not improve the classification accuracy. The other learning rate policies we explored yielded inferior performance (e.g. gradually reducing the learning rate each training iteration). Careful tuning of the learning rate while adjusting the batch size was critical.

Other than the softmax classification loss, the training loss includes a regularisation of the network weights. In the objective function, this regularization term has a weight of for all layers but the last one (softmax weights), which receives weight . This parameter is referred in Caffe as “weight decay”.

The network weights are initialised by drawing values from a Gaussian distribution with standard deviation

, with the exception of the first layer, for which we set .

Appendix B Grid search around CifarNet

Table 11 shows the detection quality of different variants of CifarNet obtained by changing the number and size of the convolutional filters of each layer. See related section 4.3.1 of the main paper. Since different training rounds have different random initial weights, we train four networks for each parameter set and average the results. We report both mean and standard deviation of the miss rate on our validation set.

We observe that using either too small or too large filter sizes throughout the network hurts quality. The network width also seems to matter, a network too narrow or too wide can negatively impact classification accuracy. All and all the “middle-section” of the table shows only small fluctuations in miss-rate (specially when considering the variance).

In addition to filter size and layer width, we also experimented with different types of pooling layers (max-pooling versus mean-pooling), see figure 2 of main paper. Other than on the first layer, replacing mean-pooling with max-pooling hurts performance.

The results of table indicate that there is no set of parameters close to CifarNet with a clear advantage over the default CifarNet parameters. When going too far from CifarNet parameters, classification accuracy plunges.

# filters
Table 11: Detection quality (MR) as the number of filters per layer (columns) and filter sizes per layer (rows). CifarNet parameters are highlighted in italic. (MR: log-average miss-rate on Caltech validation set).

Appendix C Grid search for AlexNet

Table 12 presents the swipe of parameters used to construct the “Best parameters” entries in table 8 of the main paper. We vary the criterion to select negative samples and the SVM regularization parameters. Defaults are parameters are , and .

Overall we notice that neither parameter is very sensitive ( percent points fluctuations). When C is far from optimal large degradation is observed ( per cent points). As seen in table 8 of the main paper the gap between default and tuned parameters is rather small ( percent points).

0.3 36.01% 33.62% 32.30% 32.22% 32.04% 32.42% 32.24% 32.26% 32.40%
0.4 36.01% 33.72% 32.43% 32.09% 32.16% 32.33% 32.23% 32.30% 32.20%
0.5 36.07% 33.90% 32.51% 32.03% 32.18% 32.53% 32.20% 32.28% 33.15%
0.6 36.50% 33.96% 32.43% 32.19% 32.24% 32.45% 32.29% 33.06% 34.61%
0.7 36.55% 34.32% 32.36% 32.05% 32.15% 32.55% 32.82% 33.83% 36.13%
(a) layer fc7
0.3 37.16% 32.49% 32.01% 31.88% 32.03% 32.18% 32.50% 32.40% 32.48%
0.4 37.16% 32.54% 32.07% 31.89% 32.14% 31.92% 32.46% 32.51% 32.56%
0.5 37.41% 32.61% 32.17% 32.07% 32.04% 31.84% 32.57% 33.12% 33.18%
0.6 37.54% 32.68% 32.14% 32.12% 32.22% 31.90% 32.93% 34.02% 35.85%
0.7 38.06% 32.67% 32.10% 31.89% 32.23% 32.32% 33.92% 35.92% 38.72%
(b) layer fc6
0.3 55.37% 36.77% 33.16% 32.75% 32.77% 33.29% 33.37% 34.28% 35.16%
0.4 55.89% 36.82% 33.17% 32.52% 32.82% 33.16% 32.79% 34.12% 35.42%
0.5 56.24% 37.09% 33.21% 32.65% 32.69% 33.14% 33.26% 34.95% 36.39%
0.6 56.68% 37.19% 33.40% 32.66% 32.83% 33.44% 34.17% 35.66% 38.28%
0.7 57.93% 37.60% 33.81% 32.85% 33.27% 34.23% 35.76% 38.98% 42.68%
(c) layer pool5
0.3 82.29% 64.90% 48.26% 44.67% 44.83% 43.66% 42.71% 43.36% 45.48%
0.4 82.29% 65.06% 48.66% 44.69% 44.67% 43.06% 42.41% 42.74% 44.81%
0.5 82.22% 65.23% 48.87% 44.68% 44.34% 42.98% 42.57% 43.30% 44.98%
0.6 82.22% 65.30% 48.69% 44.89% 44.39% 43.63% 42.92% 44.27% 46.35%
0.7 82.39% 65.96% 50.47% 45.62% 45.32% 44.86% 44.84% 46.31% 50.13%
(d) layer conv4
Table 12: Detection quality (MR) as function of the maximal IoU threshold to consider a proposal as negative example and the SVM regularization parameter C. (MR: log-average miss-rate on Caltech validation set)

Appendix D Datasets statistics

In figure 7 we plot the height distribution for pedestrians in Caltech and KITTI training sets. Although the datasets are visually similar, the height distributions are somewhat dissimilar (for reference ImageNet and Pascal distributions are more look alike among each other).

It was shown in [5] that models trained in each dataset, do not transfer well across each other (compared to models trained on the smaller INRIA dataset).

(a) Caltech Reasonable training set
(b) KITTI training set
Figure 7: Histogram of pedestrian heights in different datasets.
Figure 8: Recall of ground truth versus IoU threshold, for a selection of detection methods. The curves are cumulative distributions. The detections have been filtered by score to reach proposals per image on average (number indicated in the legend).
Figure 9: Distribution of overlap between false positives and ground truth of those false positives that do overlap with the ground truth. The curves are histogram with coarse IoU bins. Number in the legend indicates the average number of proposals per image (after filtering to reach ).
Figure 8: Recall of ground truth versus IoU threshold, for a selection of detection methods. The curves are cumulative distributions. The detections have been filtered by score to reach proposals per image on average (number indicated in the legend).

Appendix E Proposals statistics

In figures 9 and 9 we show statistics of different detectors on the Caltech test set, including the ones we use as proposals in our experiments. These figures complement table 9 of the main paper.

Our initial experiments indicated that it is important to keep a low number of average proposals per image in order to reduce the false positives rate (post re-scoring). This is in contrast to common practice when using class-agnostic proposal methods, where using more windows is considered better because they provide higher recall [21]. We filter proposals via a threshold on the detection score.

As can be seen in figure 9 a recall higher than can be achieved with only proposals per image on average (for Intersection-over-Union threshold above , the evaluation criterion). The average number of proposals per image is quite low because most frames of the Caltech test set do not contain any pedestrian.

In figure 9 we show the number of false positives at different overlap levels with the ground truth annotations. The bump around IoU, most visible for SpatialPooling and LDCF, is an artefact of the non-maximum suppression method used by each method. Both these method obtain high quality detection, thus they must assign (very) low-scores to these false positives windows. To further improve quality the re-scoring method must do the same.

When using a method for proposals one desires to have high recall with high overlap with the ground truth (figure 9), as well has having false positives with low overlap with the ground truth (figure 9

). False positive proposals overlapping true pedestrians will have pieces of persons, which might confuse the re-scoring classifier. Classifying fully centred persons versus random background is assumed to be easier task.

In table 9 of the main paper we see that AlexNet reaches top detection quality by improving over LDCF, SquaresChnFtrs, and Katamari.