# Obstacle Detection in Hybrid Cross-Country Environment Based on Markov Random Field for Unmanned Ground Vehicle

Authors: Feng Ding; Yibing Zhao; Lie Guo; Mingheng Zhang; Linhui Li
Journal: Discrete Dynamics in Nature and Society
 (2015)

---

## Abstract

In order to detect the obstacle from the large amount of 3D LIDAR data in hybrid cross-country environment for unmanned ground vehicle, a new graph approach based on Markov random field was presented. Firstly, the preprocessing method based on the maximum blurred line is applied to segment the projection of every laser scan line inx-y plane. Then, based on K-means clustering algorithm, the same properties of the line are combined. Secondly, line segment nodes are precisely positioned by using corner detection method, and the next step is to take advantage of line segment nodes to build an undirected graph for Markov random field. Lastly, the energy function is calculated by means of analyzing line segment features and solved by graph cut. Two types of line mark are finally classified into two categories: ground and obstacle. Experiments prove the feasibility of the approach and show that it has better performance and runs in real time.


---

## Body

## 1. Introduction

Accurately environmental awareness is the key point for unmanned ground vehicle. Obstacle detection is a critical perception-requirement for UGV autonomous navigation. In order to ensure the safety of driving, autonomous vehicles are usually equipped with sensors including camera, laser radar, and microwave sensor. All of those are used to detect obstacles and the ground area [1, 2]. There are many types of nontraversable obstacles that UGV can encounter during autonomous navigation in hybrid cross-country environment, including nontraversable rocks, tree trunks too wide to push over, logs, stumps, ditches, holes, low overhangs or large shrub, water bodies, mud bodies, and steep terrain [3]. The ability to detect and avoid obstacles poses a current challenge to the acceptance and proliferation of tactical UGVs [4].In the early stage, unmanned ground vehicle generally used the single laser radar as the distance sensor. The small amount of data and the quick response correspond to its advantage but has the detection limits. With the Velodyne 64-line laser radar technology, the three-dimension laser radar began to replace the single laser radar, widely used for autonomous vehicle platform [5, 6]. HIMMELBACH describes a quick method to segment the large-size long-range three-dimension point clouds that especially used to classify the objects. Efficiency is improved in his approach, splitting the problem into two simpler subproblems of complexity reduction: local ground plane is estimated by the two-dimension labeling components [7]. Guo et al. used the gradient signaling of the road geometry to construct a Markov random field (MRF) and implement an effective belief-propagation (BP) algorithm to put the road environment into four categories: the reachable area, the driving area, the obstacle region, and the unknown region [8]. Although the above detection method based on the grid is relatively stable, it has inherent defects. Detection accuracy depends on the grid size and tends to be pretty lower. The range of the grid map is not large and the large amounts of original data are discarded, because the computation speed is limited [9]. The three-dimension data distribution is of nonhomogeneity and lots of the grids have no data, which leads to the storage and processing wasted.A simple algorithm for detecting obstacles in Velodyne scans would be to find points with similarx-y coordinates whose vertical displacement exceeds a given threshold [10]. Indeed, this algorithm can be used to detect large obstacles such as pedestrians, signposts, and cars. However, the range is big and calibration error is great. So, it is difficult for this sensor to set the displacement threshold to detect the curb-sized objects on the condition of lots of the positives [11]. Powers and Davis observe that the point-cloud images can be used to identify objects based on combined spatial and spectral features in three dimensions and at long standoff range. The spectral LADAR can distinguish between dangerous terrain (mud) and good driving roads (dry) [12]. Grigore-Müler and so forth observe that the procedures based on the neural network solution are allowed to definite and implement the computational algorithm. That can solve complex problems in terms of detecting and identifying the nature-vegetation targets by concrete countermeasures [13]. Compared to the segmentation algorithm based on grid type, the algorithm based on the graph has higher accuracy and can process all the radar data [14]. The shortcoming is that all the existing algorithms use the single three-dimension points as the nodes of a graph and are easily affected by noise, so its robustness is not satisfactory in the off-road environment.This paper puts forward a new algorithm based on the graph. The laser scan’s lines are projected in thex-y plane. Then, the fuzzy-fragment algorithm and K-means clustering are applied to process the original laser data. Finally, the line segments are used as nodes of Markov random field. The analysis of line segment feature aims to establish the energy function and get the global optimum solution by using the image segmentation algorithm.


## 2. Summary on Algorithm

The significant differences can be found between the ground data and the obstacle data, through observing the projection of radar data on thex-y plane. As is shown in Figure 1(a), the background stands for the ground and the foreground stands for the obstacle. It is shown in Figure 1(b) that the surface area enlarged assumes the circular pattern. It is shown in Figure 1(c) that the single scan line of obstacle area is enlarged and the scan line shape on the same line is broken or angular. Based on the above analysis, this paper uses the segment-clustering feature to detect the obstacles.Projection of scan lines on thex-y plane.
(a)
(b)
(c)It is shown in Figure2 that the flowchart of the obstacle detection algorithm includes four steps. First, project the scan line clustering. Second, employK-means clustering to gather the same line classifications. Third, use the corner detection method to precisely position segment nodes. Fourth, establish the Markov random field exporting the data of obstacles and ground.Figure 2
Flowchart of the ground segmentation algorithm.Taking into account the projection of every scan line on thex-y plane, the adjacent point in the same class has the same property. So, firstly rapidly split every scan line based on the max blurred line method and then based on the analysis method of theK-means clustering combine the same properties’ lines. Due to the noise, the wrong positioning of adjacent cluster-segment endpoint (nodes or corner points) may occur, so corner detection is used to accurately select endpoint and increase the accuracy of the algorithm. Interclass endpoint is selected as graph nodes, so the processing speed of the graph cut is increased due to reducing the number of nodes, and more than one feature from class property can be gained, which improve the robustness of the algorithm. Finally, using the graph cut algorithm can obtain the overall optimization results and further improve the algorithm’s performance.


## 3. The Clustering Segmentation of Scan Line Projection

Due to the ground roughness and laser radar itself having the detection noise, the projection of scan line on thex-y plane contains noise. This paper adopts the method based on the maximal blur-line segments (BS) to quickly divide the scan line projection. Then, based onK-means clustering, get the data collection of the similar lines and reclassify the combined lines having the same attribute.


### 3.1. Preprocessing Based on the Max Blurred Line Segments

The blur-segment is defined as the two-dimensional point set which is finite and discrete between straight linesl1:  ax+by=μ and l2: ax+by=μ+ω, as shown in Figure 3. The width ν of BS is as follows:
(1)ν=ϖa2+b2.
Count the convex envelope’s support lines in order to obtain the blur-segment parameters of the two-dimensional point set [15]. And have a linear relationship between the number of points and the computing complexity.Figure 3
Blur segment.Steps of the segmentation algorithm are as follows.(1)
Sequentially import the mapping points of scan lines. If the distance between the current point and the previous point is greater than the thresholdTp-d, regard the previous point as the endpoint of the current line segment and the current point as the starting point of a new line. The two adjacent points are signed as the separation point.(2)
If the distance between the current point and the previous point is less than the thresholdTp-d, calculate the blur-segment parameters. If the width of BS is greater than Tν, then regard the previous point as the endpoint of the current line segment and the current point as the starting point of a new line. The two adjacent points are signed as the connection points.The three-dimension laser radar under different distances has different resolutions. Both Tp-d and Tν are adaptive parameters related to the distances. Consider
(2)Tp-d=D*μ1Tν=D*μ2.D is the distance between the current point and the original point. μ1 and μ2 are the scaling factor.The segmentation result of the single scan line is shown in Figure4, and the adjacent segments are represented by the two different colors.Figure 4
Segmentation by blurred segment.


### 3.2. Merging Segments Based on K-Means Clustering

First, randomly selectk points from the line segment data set as the initial cluster centers, which can be any data contained in the line segment data set. Then, calculate the distance between every point of the whole line segment data set and the initial cluster centers, which is the basis of merging the data to the nearest class. The new cluster centers are every class’s average. If the new cluster centers are consistent with the previous ones, the cluster-criterion function is convergent and regulating the data set class is over. If not, repeat the previous step until the cluster-criterion function is convergent, and then the algorithm ends (Figure 5).Figure 5
Flow chart ofK-means clustering.The steps ofK-means clustering are as follows.Set the data set of the line segments as{[xi,yi],i=1,2,…,n}.(1)
Initialization: randomly selectk data {c1,c2,…,ck} from the data set {[xi,yi],i=1,2,…,n} as the initial cluster centers.(2)
Distributexi and yi: calculate the distance dij, j=1,2,…,k, from [xi,yi], i=1,2,…,n, to every cluster center {c1,c2,…,ck}, and then divide [xi,yi] to its nearest cluster center’s class.(3)
Reviseci: calculate the average of data and regard it as the new cluster center.(4)
Calculate the deviationD:
(3)D=∑i=1nmin⁡r=1,2,…,kdxi,cr2.(5)
Judge whether theD is convergent: if D is convergent, the whole algorithm is over. If not, return to step (2) until D is convergent.As is shown in Figure 6, after the processing of K-means clustering, the line segments belonging to the background have been merged together. So, the number of line segments participating in the subsequent operation is significantly decreased, which will reduce the complexity of the corner detection and improve the real time and robustness.Figure 6
Result of line segments clustering.


## 3.1. Preprocessing Based on the Max Blurred Line Segments

The blur-segment is defined as the two-dimensional point set which is finite and discrete between straight linesl1:  ax+by=μ and l2: ax+by=μ+ω, as shown in Figure 3. The width ν of BS is as follows:
(1)ν=ϖa2+b2.
Count the convex envelope’s support lines in order to obtain the blur-segment parameters of the two-dimensional point set [15]. And have a linear relationship between the number of points and the computing complexity.Figure 3
Blur segment.Steps of the segmentation algorithm are as follows.(1)
Sequentially import the mapping points of scan lines. If the distance between the current point and the previous point is greater than the thresholdTp-d, regard the previous point as the endpoint of the current line segment and the current point as the starting point of a new line. The two adjacent points are signed as the separation point.(2)
If the distance between the current point and the previous point is less than the thresholdTp-d, calculate the blur-segment parameters. If the width of BS is greater than Tν, then regard the previous point as the endpoint of the current line segment and the current point as the starting point of a new line. The two adjacent points are signed as the connection points.The three-dimension laser radar under different distances has different resolutions. Both Tp-d and Tν are adaptive parameters related to the distances. Consider
(2)Tp-d=D*μ1Tν=D*μ2.D is the distance between the current point and the original point. μ1 and μ2 are the scaling factor.The segmentation result of the single scan line is shown in Figure4, and the adjacent segments are represented by the two different colors.Figure 4
Segmentation by blurred segment.


## 3.2. Merging Segments Based on K-Means Clustering

First, randomly selectk points from the line segment data set as the initial cluster centers, which can be any data contained in the line segment data set. Then, calculate the distance between every point of the whole line segment data set and the initial cluster centers, which is the basis of merging the data to the nearest class. The new cluster centers are every class’s average. If the new cluster centers are consistent with the previous ones, the cluster-criterion function is convergent and regulating the data set class is over. If not, repeat the previous step until the cluster-criterion function is convergent, and then the algorithm ends (Figure 5).Figure 5
Flow chart ofK-means clustering.The steps ofK-means clustering are as follows.Set the data set of the line segments as{[xi,yi],i=1,2,…,n}.(1)
Initialization: randomly selectk data {c1,c2,…,ck} from the data set {[xi,yi],i=1,2,…,n} as the initial cluster centers.(2)
Distributexi and yi: calculate the distance dij, j=1,2,…,k, from [xi,yi], i=1,2,…,n, to every cluster center {c1,c2,…,ck}, and then divide [xi,yi] to its nearest cluster center’s class.(3)
Reviseci: calculate the average of data and regard it as the new cluster center.(4)
Calculate the deviationD:
(3)D=∑i=1nmin⁡r=1,2,…,kdxi,cr2.(5)
Judge whether theD is convergent: if D is convergent, the whole algorithm is over. If not, return to step (2) until D is convergent.As is shown in Figure 6, after the processing of K-means clustering, the line segments belonging to the background have been merged together. So, the number of line segments participating in the subsequent operation is significantly decreased, which will reduce the complexity of the corner detection and improve the real time and robustness.Figure 6
Result of line segments clustering.


## 4. Corner Detection of Between-Cluster Line Segment

Since the certain width of fuzzy lines existing has been reclassified or merged, the connection point cannot be accurately determined on the maximum curvature. Here, put forward corner detection algorithm to reset the connection point.Considering the integral operatorA:R2×R+→R2, A is defined as follows:
(4)Aas,t=∫Γϕs,u,taudu.
The curve Γ of two dimensions is defined as the parametric equation a(s), and the kernel function ϕ is defined as the Gaussian function:
(5)φ(s,u,t)=2πt2-1/2exp⁡-s-u22t2.a(u) is spread near u=0 by the Taylor formula:
(6)au=a0+ua˙0+u22!a¨0+⋯.
Then,
(7)Ax,t=∫-∞+∞2πt2-1/2e-u2/2t2a(u)du≈x+t22a¨(0)=a(0)+t22κxnx.
The x value of the integral operator on the normal direction nx is proportional to the curvature κx, and choose the maximum-curvature point as the angle point.


## 5. Construct the Undirected Graph on the Markov Random Field

The global sign-optimization model is established by the frame of Markov random field and is often used to solve the problem of the scene classification [16]. G=(V,E) is defined as the undirected graph, and the node vi belongs to V. Edge (vi,vj) belonging to E corresponds to the adjacent node pair. The nonnegative weight w(vi,vj) is assigned to every edge (vi,vj) belonging to E, which is used to describe the dissimilarity of the adjacent nodes vi and vj.The mark-speculation algorithm can find the tag with the highest probability for each node, for example, the graph cut [17]. Define L as a finite mark set, f is the mark-assignment function, and f(vi) marks every node. Assume that the marker changes slowly in the region but changes dramatically on the edge of this region. The mark’s accuracy is measured by the energy equation:
(8)Ef=∑vi∈VDfvi+∑(vi,vj)∈EWvi,vj.
The first item on the right side is the data item, which restrains the node. The second item is the smooth item, which restrains the smoothness for energy equation [18].In this paper, every segment may be labeled as a node. All of the adjacent three-dimension points aligning the current node form a set of the adjacent segments. The side-neighbor segment (SN) is defined as the same scan line segments, which is adjacent to the node. The up-neighbor segment (UN) is defined as the previous scan line segment that is adjacent to the node. The down-neighbor segment (UN) is defined as the next scan line segments that are adjacent to the node. According to the definition, every line segment may have two sides of the adjacent segments but have multiple adjacent segments up and down.The number of segment nodes based on the thresholdTp-n can be divided into two categories, the long segment (Sl) and the short segment (Ss).When the ground is smooth, the long segments mostly belong to the high probability’s ground area (Agh). But under the following conditions, the long segment is defined as the high probability’s obstacle area (Aoh).(1)
The long segment endpoint is marked as the separation point. And the difference between the point to the radar’s origin and the adjacent segment’s separation point to the origin is larger than the threshold.(2)
The long segment endpoint is signed as the connection point. And the angle difference between the angle of the connection point and adjacent segments and right angle is less than the threshold.(3)
The gradient between long line segment and up-neighbor segment is larger than the threshold. The gradient is defined as the ratio between the average height of three-dimension points contained in the line segment and the average distance of segments on thex-y plane.The short segments mostly belong to the high probability’s obstacle area. But under the following conditions, the short segment is defined as the high probability’s ground area (Aoh).(1)
The short segment endpoint is marked as the connection point. And it is greater than the thresholdTa that the angle difference is between the endpoint and the long-adjacent segment defined in the high probability’s ground area and the right angle.(2)
It is less than the thresholdTg that the gradient is between the short segment and the long up segment defined as the high probability’s ground area.According to the above discussion,
(9)D(f(vi))=ηvi∈Agh1-ηvi∈Aoh.
In order to ensure the consistency of the local area, define the smoothing term:
(10)Wvi,vj=1-min⁡Dfvi-Dfvj,φΔh.φ(Δh) is the function, which measures the similarity according to the average height difference Δh of the adjacent segment in the three-dimension space. In addition, κ is theexperiential coefficient:
(11)φΔh=1-e-κΔh2.
Eventually, the graph cut is employed to optimize the energy equation and obtain the marking results.Assume thatY and X are the random fields of the two-dimensional plane. Y is the observed image, and X is the original image. According to the Bayes criterion, the optimal criterion for segmentation is the following. It is obvious that X^ is the optimal segmentation result:
(12)X^=argmax⁡Xp(X∣Y)=argmax⁡Xp(Y∣X)p(X=x)p(Y=y).p(X=x) is the prior probability. p(Y∣X) is a conditional probability function, whose probability distribution is obeyed to the image’s distribution.Formula (12) is equivalent to formula (13), because p(Y) is known for a given picture Y:
(13)X^=argmax⁡Xp(Y∣X)p(X).


## 6. Experiments and Results Analysis

In this paper, the information acquisition system of the unmanned ground vehicle includes a computer processing system and a monocular vision CCD and 3D laser sensor. The function is mainly for acquiring and processing sensor data in the cross-country environment. CCD and laser sensors are used for acquiring information and decide obstacles’ identity based on the pattern recognition. Figure7 shows the data-acquisition area of the unmanned vehicle and 3D laser sensor.Figure 7
3D LIDAR and unmanned ground vehicle.Collect the sensor data in the cross-country environment, and compare the results of the algorithm put forward here with the manual-mark results, as is shown in Figures8 and 9. (a) shows the CCD picture in the same scene. (b) shows the manual-marking results of the laser image in the same scene, and white represents the raised areas, black represents the sunken areas, and gray represents the ground area. (c) shows the results of this paper’s algorithm, and gray represents the ground area, red represents the raised areas, and blue represents the sunken areas. (d) shows the detection results based on the local convexity-concavity algorithm [19]. These arguments can be predicted by contrastive analysis, the detecting-algorithm results of (c) are close to the manual-marking results, and the results of the local convexity-concavity algorithm (Figures 8(d) and 9(d)) are poor, which uses local plan’s normal vector direction as the criterion and selects 4 adjacent points from 3D laser data to get the fitting plan. So, in constructing the graph, it removes the sides whose length is larger than the threshold so as to avoid the long-distance point used to fit the plane, which can lead to the misjudgment on the obstacles’ edge. Because in the long distance, the adjacent points of laser data are far away from each other, which lead to turning up lots of unknown area after removing long sides that affects detecting results.The results of positive obstacles in the cross-country environment.
(a)
CCD picture in the same scene
(b)
Laser radar results of manual marking in the same scene
(c)
Results based on the algorithm from this paper
(d)
Detection results based on the local convexity-concavity algorithmThe results of positive and negative obstacles in the cross-country environment.
(a)
CCD picture in the same scene
(b)
Laser radar results of manual marking in the same scene
(c)
Results based on the algorithm from this paper
(d)
Detection results based on local convexity-concavity algorithmThis paper’s algorithm performs much better than the algorithm of the partial concave and convex. Due to this algorithm, using the segment’s gradient, the noise is reduced, having an effect on single point gradient. The characteristics’ judgment of the lines’ angle and the separation point’s distance increases the reliability of the ground detection. Finally, applying the Markov random field to the global optimization makes the results with the better robustness.Under two different kinds of scenes, run the 100-frame data sequences, and compare the accuracy between the different algorithms’ results and the artificial-markers true value:(14)Racc=FN+TNTP+TN+FP+FN.
TP is the number of ground points correctly marked. FP is the number of obstacle points marked as ground points. FN is the number of ground points marked as obstacle points. TN is the number of obstacle points correctly marked.As is shown in Figure10, the horizontal axis represents the frame number, and the vertical axis represents the accuracy rate. The upper curve shows the accuracy of the obstacle detection based on the algorithm we put forward, and the lower curve shows the accuracy based on the local convexity-concavity algorithm. Through this paper’s multiple characteristics of global optimization, cushion the negative impact coming from the vehicle’s posture change and have the high stability. And, in the hybrid cross-country environment, this algorithm is more applicable and has better accuracy.Figure 10
Algorithms’ accuracy relating two different kinds.


## 7. Conclusion

This paper puts forward the obstacle detection algorithm based on laser radar data of three dimensions in the hybrid cross-country environment. Firstly, here, use the method of the maximum and blurred lines to split every laser-line projection in thex-y plane. Then, K-means clustering is applied to integrate the blurred line and use the corner detection algorithm to accurately relocate the endpoint of the integration segment. The third step is related to the unidirectional graph of the Markov random field, which helps in marking and detecting the obstacle area. Lastly, the energy function is calculated by means of analyzing line features and solved by the graph cut. The line segments are finally classified into two categories: the ground and the obstacle.The method’s performance is evaluated on real data acquired in different outdoor scenes, and the results are compared to those of the existing methods. Our method requires less run time. At the same time, the segmentation results are better applied for classifying and identifying the objects. The algorithm allows for estimating the robust of a deviation between a digital map and the real world. The experiments in the cross-country environment show that this paper’s algorithm has better performance and can provide driving area and obstacle information with better robustness for unmanned ground vehicle in the cross-country environment.The future work consists of integrating the other segmentation method into the object-identification framework presented in [20, 21]. It will be interesting to see how object classification will benefit from the new segmentation results.



---

*Source: 540968-2015-01-14.xml*