enhanced algorithm for obstacle detection and avoidance ...· enhanced algorithm for obstacle...

Download Enhanced Algorithm for Obstacle Detection and Avoidance ...· Enhanced Algorithm for Obstacle Detection

Post on 05-Jun-2018




0 download

Embed Size (px)


  • IOSR Journal of Electrical and Electronics Engineering (IOSR-JEEE)

    e-ISSN: 2278-1676,p-ISSN: 2320-3331, Volume 6, Issue 6 (Jul. - Aug. 2013), PP 37-44 www.iosrjournals.org

    www.iosrjournals.org 37 | Page

    Enhanced Algorithm for Obstacle Detection and Avoidance Using

    a Hybrid of Plane To Plane Homography, Image Segmentation,

    Corner and Edge Detection Techniques

    N.A. Ofodile1, S. M. Sani

    2 PhD, MSc(Eng), BSc(Hons)Eng

    1 (NAF Research and Development Centre, Air Force Institute of Technology, Nigeria) 2 (Department of Electrical and Electronics Engineering, Nigerian Defence Academy, Nigeria)


    Abstract: This paper presents the implementation as well as simulated results of the enhanced algorithm for obstacle detection and avoidance using a hybrid of plane to plane homography, image segmentation, corner and

    edge detection techniques. The key advantages of this algorithm over similar ones are:

    (i) elimination of false positives obtained by the image segmentation technique as a result of which obstacle detection becomes more efficient,

    (ii) reduction in the presence of unreliable corners and broken edge lines in high resolution images which may result in poor homography computation and image segmentation respectively,

    (iii) elimination of lack of depth perception hence the system provides and evaluates depth and obstacle height properly without planar assumptions,

    (iv) significant reduction in processing power.

    Keywords: obstacle detection and avoidance, plane to plane homography, image segmentation, corner detection, edge detection.

    I. Introduction Obstacle avoidance is a fundamental requirement for autonomous mobile robots and vehicles. Due to

    human error, the obstacles may not be detected on time or the divert signal meant to change a vehicles direction

    may be interrupted deliberately by jamming and the vehicle could be destroyed as a result. The aim of this

    system is to develop an optimized obstacle detection and avoidance system algorithm for use onboard an

    unmanned ground vehicle. The system makes use of a camera (image acquisition device) placed on board a

    UGV connected to an onboard processing unit. The processing unit will perform the functions of obstacle

    detection, avoidance and motor control of the UGV. Specifically, the system will focus on the design and

    implementation of the obstacle detection and avoidance based on the processed images obtained from the

    cameras. The sensors of obstacle detection systems are built on different technologies. These technologies are


    i. infrared sensors, ii. common Radio Detection and Ranging (radar) sensors, iii. microwave-based radar, iv. digital cameras, v. laser detection and ranging (ladar). Apart from digital cameras and ladar, the other technologies are based on electromagnetic radiations or radio

    frequency signals which have the following impairments;

    i. reduction in signal quality due to climatic and weather conditions, ii. reduction in signal quality due to scattering nature of electromagnetic signals as they hit certain material


    RostislavGoroshin[2] developed an Obstacle detection using a Monocular Camera focused basically on a

    single algorithm. The algorithm processes video data captured by a single monocular camera mounted on the UGV. They made the assumption that the UGV moves on a locally planar surface, representing the ground

    plane. However the monocular camera could not provide and evaluate depth and obstacle height properly due to

    lack of depth perception which is common with planar assumptions and multicolor images could not be properly

    segmented since the original algorithm focused on segmentation techniques for less colored (single, dual or tri)


    SyedurRahman [3] worked on the development of Obstacle Detection for Mobile Robots Using Computer

    Vision. The system used Multi-view relations on epipolar geometry and edge detection to find point

    correspondences on edges between the images and then uses planar homography to compute the heights along

    the contours thereby performing obstacle detection. However, several optimizations need to be made to enhance

  • Enhanced Algorithm For Obstacle Detection And Avoidance Using A Hybrid Of Plane To Plane

    www.iosrjournals.org 38 | Page

    the reliability of the method. For example, if an obstacle and the ground get segmented together, epipolar

    geometry and contour height estimates could be used to detect where the ground ends and where the object

    starts. A horizontal line can be drawn separating the obstacle and the ground marking them with their appropriate heights. Also, images with better resolution resulted or lead to the presence of more unreliable

    corners and broken edge lines which may make matters worse during the homography computation.

    The processes involved in the design of this system include:

    i. modeling the Video based Obstacle Detection and Avoidance System using SIMULINK/MATLAB Modeling Software; an easy to use tool used for simulation and parameter optimization

    ii. designing the Video Processing and Image Processing Algorithm for the Video stream and apply the designed obstacle detection algorithm to the video stream.

    iii. implementing the obstacle detection-avoidance system

    II. System Implementation a. PLANE TO PLANE HOMOGRAPHY Plane to plane homography can be described as a relationship between two planes, such that any point

    on one plane corresponds to one point in the other plane.Homography simply means an invertible

    transformation from a projective space that maps straight lines to straight lines.In figure 1.1a, an image of a

    scene is shown. It contains two points x1 and x2 that will be used to show how homography can be used to

    obtain other point coordinate values on the same image or another image of the same scene.

    Figure 1.1a: an image of a scene showing x1 and x2 image points

    In order to get the width of the second plaque from the left, two homography matrices are computed

    from 2 points with coordinates X1 and X2 on the scene and the coordinates x1 and x2 on the image. X1 and X2

    were measured using a metre rule with the lower right corner as reference from the actual scene while x1and x2

    were measured from the image in figure 1.1a. The measured values for X1, X2, x1 and x2 are given below. All dimensions used in this computation are in centimeters (cm).

    1 = 67.5,17.65,1 2 = 23.3,21.9,1 1 = 13,9.5,1

    2 = 8.8,5.7,1 The homography matrices are computed using the formula MATLAB algorithm containing the formula =

    1 67.5 17.65 1 = 1[13 9.5 1] 1 2 34 5 67 8 9

    2 23.3 21.9 1 = 2[8.8 5.7 1] 1 2 34 5 67 8 9

    (1.1) (1.2)

    (1.3) (1.4)




  • Enhanced Algorithm For Obstacle Detection And Avoidance Using A Hybrid Of Plane To Plane

    www.iosrjournals.org 39 | Page

    Therefore the homography matrices are;

    1 = 2.5 1 03.2 0.3 01.6 1.8 1

    2 = 1.5 1.9 01.2 0.7 03.3 1.2 1

    Hence, if the width of the frame on the image in fig 1.1b is 2.5cm and its length is 3cm such that

    3 = 2.5,3,1

    Figure 1.1b: another image of the scene showing x3 image point

    Then the estimated width and length of the plaque when computed using the homography matrix H2

    will result in

    3 = 3 2.5 3 1 3 1.5 1.9 01.2 0.7 03.3 1.2 1

    3 = 10.65,8.05,1 The actual width and length of the plaque when measured on the actual scene using a metrerule is

    10.9cm and 7.77cm respectively. The plane to plane homography completely depends on its structure to

    determine relevant information but this project will combine the cameras internal parameters and relative pose

    that will use simple lens formula given as [4]: 1





    to compliment the homography computations where the homography may not be available.

    b. Image Segmentation. Image segmentation can also be called warping. While creating the warped image, the warped

    coordinates xof each pixel is found using X = Hx. when given the coordinates Xon the first image and the

    homography matrix H [5]. It is similar to the computation above. However this means that there may be pixels

    on the warped image which are not warped for any pixels in the first image and there may be pixels that are

    warped for more than one pixel from the first image. These problems are solved using interpolation. Blank pixels are simply filled up by averaging the intensities of their non-blank neighbours. Pixels that are warped

    positions for more than one pixel on the first image have the average intensities for all the corresponding pixels

    from the first image.

    Assuming the plane to which the homography corresponds to is the ground, the warped image and second image

    should be identical except for parts of the scene that are above the ground plane (i.e. obstacles). The difference

    between intensities of corresponding pixels between the warped image and second image is used to detect

    objects or obstacles.

    c. Canny Edge Detection.


    3 cm





View more >