Intelligent Driver Support Systems : Pedestrian Detection Using HOG Algorithm

In this paper, we propose the automatic pedestrian from a dashboard camera using a fast and improved support vector machine trained Histogram of oriented gradients algorithm (HOG). If a person is detected, the driver of the vehicle is notified accordingly. Pedestrian detection has remained challenging because vehicle manufactures have concentrated on speed and comfort. Using images captured by a dashboard camera, this work hopes to detect humans and offer the necessary warning within the vehicles braking distinction.


Introduction
Since the 19th century, automobile technology has continued to advance.Moreover, since the invention of the internal combustion engine, the concept of speed has changed.At that time, many inventor designed internal combustion engine of different types for mass produced and sale.Later, rules were established to enable manufactures to compete on a level ground.This evolved to worldwide competitions like the Formula 1, Grand Prix motorcycle racing, World Rally Championship etc.The pursuit of speed is the inwardness of human, resolutely demonstrated by racing.In pursuit of speed, many manufactures developed many products of high-performance, most of them ending up in commercial vehicles.This allows commercial vehicles to have remarkable improvement of performance.Compared to the performance of commercial vehicles, the advance of collision warning system have some limitations.Driving on the road and driving on the raceway is totally different.On the road, we need to pay attention to all kinds of unexpected situations; avoid obstacles being the one of the most frequently occurring emergency.When driving a car, we will have some blind angle because the car body design or structure, and these blind angle are often the one of the causes of collisions, if because caused casualties of accident, that is definitely not to happen.According to Dalal&Triggs (1)   , although they propose this method, but this method didn't used on actual road.Therefore, we refer their method and add another method such as Ouyang et.al (2) to use on the actual road.
This paper proposes a method of pedestrian detection to avoid collisions.This method uses the camera that is fixed on the car to process the capture video and detect the front of vehicle to determine whether there is a pedestrian in a dangerous spot and warn the driver to avoid a collision.The main contribution of this paper is use this method in the actual road and dish the practical application of night problem.We use the Histogram of oriented gradients algorithm Dalal&Triggs (1) to detect the human using edge direction.We train a SVM with the HOG features to detect humans.For the detection of human, we used a support vector machine Manevitz et.al (3) , use features of HOG detector and add a label of features to train.After training will get a support vector, finally multiplied by a weighting parameters to get a classifier Ouyang et.al &Manevitz et.al (2,3) , and use this classifier to detect pedestrians Wang et.al (5) .
In this work make some improvements to the conventional algorithm to reduce the effects of noise because the HOG algorithm is sensitive to noise.The photosensitive element of camera will enhance ISO at night; this may lead to noisy images that could reduce efficiency of this method.

HOG
The original HOG algorithm is detailed in DOI: 10.12792/icisip2016.047 Dalal&Triggs (1) .In this section we will describe our modified HOG that is well suited for pedestrian detection on real roads.

 Normalization
First of all, we normalize all input image by gamma normalization refer papers (1-6.1) .

 Compute gradients
According to Dalal&Triggs (1) , compared complex algorithm, the simplest algorithm is best.Therefore, we use convolution to compute the gradients.

 Weighted vote & setting detection windows
In this step, we set the parameters in Table 1.We define the windows of bin, cell size, block size, stride size in this step.

 Collect data of HOG detector
We input the sample of training data as shown in

Support Vector Machine
Support Vector machine is one method in supervised learning Wang et.al (5) .In this paper we use a linear SVM.We use HOG to extract features of positive samples and negative samples.SVM is trained to detect whether it is person or not.

Detection of humans
The farther the distance to the target, the smaller the captured image and vice versa.In order to detect human type regardless of their size, we use Gaussian pyramid Ouyang et.al (2) for the multiscale detection.

Extraction of HOG features
We created a HOG detector to extract the features of HOG, using parameters shown in Table .1. Based on these parameters, we can get 3,780 features per image.Use this detector, we can get the HOG features of positive samples and negative samples.

Format effect of HOG features
Since the HOG uses the gradient convolution, it is sensitive to noise.When we extract the HOG of features, we use the compression format and uncompressed format.In  this experiment, we verify the effect of noise on HOG detector.We use the simple image to experiment the impact of noise for gradient convolution.When the image been compressed, the image will become noisy.For gradient convolution, it will emerge many gradient directions that are unnecessary.From the result Fig. 2., this is unreasonable that we detect gradient in the completely white area.Compressed image will be noisy producing gradients that may affect the performance.

Training of SVM
We use the features that we extract from HOG to train SVM.Training SVM needs a matrix to be set for the data and labels such as Fig. 3, we setting a matrix to range training data, the matrix size shown in Table 2.The labels show if the sample is positive or negative, namely to assist the SVM train for people or not.According to a method of SVM training, we will get parameters of alpha, matrix of rho and matrix of support vector.Finally, the matrix of support vector multiplied by alpha, in the end of matrix of support vector should add a matrix of rho shown on Fig. 4, the result of this step is the SVM classifier.

Detection of SVM classifier
We use the database images to test the effect of SVM classifier.Compared to image dark and noise, the image of bright is easier to detect such as Fig. 5, this method can detect the people that have different sizes as shown in Fig6.However, the image for inconspicuous gradient features is difficult to detect such as Fig. 7.The HOG features of result shown on Fig. 8, the feature of human is difficult to extract.For this Classifier, we build a table of statistics as a reference shown on Table .3.

Conclusions
From the results, we recognized the feasibility of this method.This method effective of pedestrian Detection.In particular, we have achieved one of the objectives that is to detect humans on different scale in real time.However, in some case, we needed to choose the training samples manually, the quality of samples is very important, we also need large number of samples to train SVM.This means the pretreatment of method is complicated.In the image will encounter human image each have different size, therefore, we need to use multiscale detection to improve the performance.About HOG Algorithm, it is sensitive to noise, at night, this is must be solved.The key part model of HOG feature are especially the head and shoulders and the feet, we may detect fail if we loss these part.
In the future work, we must solve the problem of noise first, so that we be able to detect humans at night.The other step is to test this system on a real driving scene.

Fig. 1 .
(a).Use HOG detector to calculate all HOG features of image such as Fig. 1. (b).Finally, we extract the HOG features and save to a matrix to be a training data of SVM Fig. 1. (c).

Table 1 :
Parameters of HOG detector

Table 2 :
Size of SVM Training

Table 3 :
Performance of classifier