Android Driver Assistant


We developed a driver assistant which is a software running on mobile phone
devices and increasing safety during a car drive. The software monitors a road in
front of a car in a real time. The software running on a mobile phone placed on
the front shield of a car activates a color and sound alarm whenever the car leaves
the road. Additionally, two further functionalities are added, in particular,
the sequence of images is recorded in a loop (black-box) and accurate GPS
speedometer.

The main core of the software is a line detection algorithm which detects lines
painted on the road. The motivation was the standard Hough Transform for a
line detection. The essential point of the Hough Transform is a transformation
of the image to the dual space, e. g., of line orthogonal distance from the
origin and the angle of the line slope. However, this approach demonstrated
low robustness w.r.t. rather frequent disturbances from the \optimal line". For
instance, a shadow shed on a white line caused it was not detected or moderate
curve was not detected either. Indeed, in the first case, the algorithm did not
see it white enough, in the second case, it was not found straight.

Therefore, we proposed to replace each image pixel intensity with a fuzzy
number and thus, to obtain an image represented by a fuzzy function. This
idea was motivated by the intended increase of the robustness. For the sake
of computational costs, triangular fuzzy numbers were chosen to be applied in
the fuzzi cation process. Then, the Hough Transform was modifed in order to
work over the proposed structure. The di erence consists in the computation
of the approximate gradient magnitude instead of the computation of gradient
magnitude using standard operators. The intensity we search for (color of the
searched line) is placed into an argument of fuzzy number of the fuzzi ed image
in its each point and thus, its membership degree to the given fuzzy number
is evaluated. This membership degree is taken into account only if exceeding
a given threshold. Consequently, the whole task in the dual space is again
performed using the membership degrees.

The proposed approach was experimentally verifed confirming its advantage
in terms of speed and robustness (reliability). Using the proposed algorithm for
a line detection we built an Android mobile phone application for the analysis
and tracking of the road. Its processing speed is approx 15FPS. Furthermore,
some other se were also implemented, e.g., the above mentioned frames in-loop
recording (black-box) and the GPS speedometer, or a sound and visual alarm
for the signi cant warning in the case of departing a road.

Image Gallery