# A Real-Time Pothole Detection Approach for Intelligent Transportation System

Authors: Hsiu-Wen Wang; Chi-Hua Chen; Ding-Yuan Cheng; Chun-Hao Lin; Chi-Chun Lo
Journal: Mathematical Problems in Engineering
 (2015)

---

## Abstract

In recent years, fast economic growth and rapid technology advance have led to significant impact on the quality of traditional transport system. Intelligent transportation system (ITS), which aims to improve the transport system, has become more and more popular. Furthermore, improving the safety of traffic is an important issue of ITS, and the pothole on the road causes serious harm to drivers’ safety. Therefore, drivers’ safety may be improved with the establishment of real-time pothole detection system for sharing the pothole information. Moreover, using the mobile device to detect potholes has been more popular in recent years. This approach can detect potholes with lower cost in a comprehensive environment. This study proposes a pothole detection method based on the mobile sensing. The accelerometer data is normalized by Euler angle computation and is adopted in the pothole detection algorithm to obtain the pothole information. Moreover, the spatial interpolation method is used to reduce the location errors from global positioning system (GPS) data. In experiments, the results show that the proposed approach can precisely detect potholes without false-positives, and the higher accuracy is performed by the proposed approach. Therefore, the proposed real-time pothole detection approach can be used to improve the safety of traffic for ITS.


---

## Body

## 1. Introduction

In recent years, fast economic growth and rapid technology advance have led to significant impact on the quality of traditional transport system. Intelligent transportation system (ITS), which aims to improve the transport system, has become more and more popular. For the safety of traffic, road users often feel uncomfortable when they drive on the rough roads, especially the potholes on the road. In accordance with the statistics from the Ministry of Justice in Taiwan, the national compensation money is about 240 million dollars from 2008 to 2011 [1]. The pothole on the road causes serious harm to drivers’ safety. Therefore, drivers’ safety may be improved with the establishment of real-time pothole detection system for sharing the pothole information.Moreover, more and more sensors which includeG-sensors, electronic compass, gyroscope, global positioning system (GPS), microphone, and cameras are equipped in mobile device (e.g., smartphone and iPad). Several applications use these sensors in mobile devices and combine mobile sensing techniques to solve problems such as social network [2], healthcare [3], environment monitoring [4], and traffic information [5]. Therefore, using the mobile device based on mobile sensing techniques to detect potholes is suitable and convenient.This study proposes a pothole detection method based on the mobile sensing and shares the pothole information with road users and government. For this purpose, the mobile device should be equipped withG-sensors and GPS to collect accelerometer data and location information. The accelerometer data is normalized by Euler angle computation and is adopted in the pothole detection algorithm to obtain the pothole information. Moreover, the spatial interpolation method is used to reduce the location errors from GPS data. Then the pothole information is made public to improve the safety of traffic.The remainder of the paper is organized as follows. Section2 presents and discusses the various techniques of image recognition method and mobile sensing method for pothole detection. In Section 3, this study proposes a real-time pothole detection method based on mobile sensing. This study also illustrates the experiment results and analyses in Section 4. Finally, this study concludes the paper in Section 5.


## 2. Related Work

Some pothole detection methods have been proposed and can be classified into two groups: image recognition method and mobile sensing method. The advantages and shortcomings of these methods are presented in the following subsections.


### 2.1. Image Recognition Method

Yu and Salari proposed a pothole detection approach based on laser imaging techniques to collect road information. Then the artificial neural network algorithm (ANN) was used to analyze the road information and detect potholes [6]. However, this approach which requires a big computation power to recognize the laser images is unsuitable for mobile devices.Lin and Liu used the support vector machine algorithm (SVM) to analyze images about road information for pothole detection [7]. Although this approach can provide high accuracy, a big computation power is required for image recognition. Therefore, this approach is also unsuitable for mobile devices.


### 2.2. Mobile Sensing Method

For BusNet project, theG-sensor and GPS are equipped in the on-board unit (OBU) in bus to collect accelerometer data and location information. These data can be sent to data processing center via wireless networks, and data processing center can analyze these data to check whether the vectors of accelerometer data exceed the thresholds for pothole detection [8]. However, this approach requires that the batch accelerometer data is sent when bus enters the bus station. Therefore, this approach cannot provide real-time pothole detection information.The pothole patrol system which was proposed by a project team from Massachusetts Institute of Technology combinedG-sensor and GPS. This system analyzed the x-axis accelerometer data and z-axis accelerometer data and equipped five data filters which include (1) speed, (2) high-pass, (3)  z-peak, (4)xz-ratio, and (5) speed versus z ratio [9]. Although these data filters can detect potholes, only z-peak of data filter can obtain the precise pothole information. However, high misjudgment of z-peak of data filters with the surge of road.Nericell project used a smartphone based on Windows Mobile operation system which is equipped withG-sensor and GPS to collect and analyze accelerometer data for pothole detection [10]. However, the smartphone in this project should be equipped with the specific angle. Furthermore, this project only considered analyzing z-axis accelerometer data with high misjudgment.Mednis et al. proposed four pothole detection approaches which include(1)Z-THRESH approach, (2)Z-DIFF approach, (3) STDEV-Z approach, and (4)G-ZERO approach to analyze the accelerometer data [11]. The accelerometer data in this study is obtained from Tmote sensors, Texas Instruments controllers, and Analog DevicesG-sensors [12]. However, the results ofZ-THRESH approach andG-ZERO approach would be influenced by peak value to generate more false-positives. The results ofZ-DIFF approach and STDEV-Z approach are dependent on frequency and timing. Therefore, the design and comparisons of these approaches for mobile device require to be investigated.


### 2.3. Summary

In summary, due to the requirement of big computation power for image recognition method, too many resources are allocated for this method to be an efficiency mobile device. Therefore, mobile sensing method is more suitable to detect potholes for mobile device. However, previous pothole detection approaches based on mobile sensing only considered one threshold to detect pothole, and high false-positives are obtained from these approaches. Consequently, this study considers Mednis’s approaches [11] and proposes a real-time pothole detection method to improve the accuracy of pothole detection method.


## 2.1. Image Recognition Method

Yu and Salari proposed a pothole detection approach based on laser imaging techniques to collect road information. Then the artificial neural network algorithm (ANN) was used to analyze the road information and detect potholes [6]. However, this approach which requires a big computation power to recognize the laser images is unsuitable for mobile devices.Lin and Liu used the support vector machine algorithm (SVM) to analyze images about road information for pothole detection [7]. Although this approach can provide high accuracy, a big computation power is required for image recognition. Therefore, this approach is also unsuitable for mobile devices.


## 2.2. Mobile Sensing Method

For BusNet project, theG-sensor and GPS are equipped in the on-board unit (OBU) in bus to collect accelerometer data and location information. These data can be sent to data processing center via wireless networks, and data processing center can analyze these data to check whether the vectors of accelerometer data exceed the thresholds for pothole detection [8]. However, this approach requires that the batch accelerometer data is sent when bus enters the bus station. Therefore, this approach cannot provide real-time pothole detection information.The pothole patrol system which was proposed by a project team from Massachusetts Institute of Technology combinedG-sensor and GPS. This system analyzed the x-axis accelerometer data and z-axis accelerometer data and equipped five data filters which include (1) speed, (2) high-pass, (3)  z-peak, (4)xz-ratio, and (5) speed versus z ratio [9]. Although these data filters can detect potholes, only z-peak of data filter can obtain the precise pothole information. However, high misjudgment of z-peak of data filters with the surge of road.Nericell project used a smartphone based on Windows Mobile operation system which is equipped withG-sensor and GPS to collect and analyze accelerometer data for pothole detection [10]. However, the smartphone in this project should be equipped with the specific angle. Furthermore, this project only considered analyzing z-axis accelerometer data with high misjudgment.Mednis et al. proposed four pothole detection approaches which include(1)Z-THRESH approach, (2)Z-DIFF approach, (3) STDEV-Z approach, and (4)G-ZERO approach to analyze the accelerometer data [11]. The accelerometer data in this study is obtained from Tmote sensors, Texas Instruments controllers, and Analog DevicesG-sensors [12]. However, the results ofZ-THRESH approach andG-ZERO approach would be influenced by peak value to generate more false-positives. The results ofZ-DIFF approach and STDEV-Z approach are dependent on frequency and timing. Therefore, the design and comparisons of these approaches for mobile device require to be investigated.


## 2.3. Summary

In summary, due to the requirement of big computation power for image recognition method, too many resources are allocated for this method to be an efficiency mobile device. Therefore, mobile sensing method is more suitable to detect potholes for mobile device. However, previous pothole detection approaches based on mobile sensing only considered one threshold to detect pothole, and high false-positives are obtained from these approaches. Consequently, this study considers Mednis’s approaches [11] and proposes a real-time pothole detection method to improve the accuracy of pothole detection method.


## 3. Real-Time Pothole Detection Method

The proposed real-time pothole detection method based on mobile sensing includes three steps:(1) accelerometer data normalization, (2) pothole detection approaches, and (3) pothole location determination.


### 3.1. Problem Definition

Some shortcomings are in previous pothole detection methods as follows:(1) mobile device should be equipped with the specific angle; (2) high false-positives may be generated with considering only one threshold for pothole detection; (3) the precise pothole location has not been investigated.Therefore, this study proposes a real-time pothole detection method based on mobile sensing to collect and normalize the accelerometer data from mobile device for free angle establishment. Furthermore, a pothole detection algorithm is proposed to consider several thresholds and combine several pothole detection approaches for pothole detection accuracy improvement. Finally, the space interpolation method is adopted to determine pothole location for leaving shortcomings.


### 3.2. Accelerometer Data Normalization

For solving the limitation of the specific angle in previous pothole detection approaches, this study uses Euler angle formulas to normalize the three-axis accelerometer data. The Euler angles describe the vector set in 3-dimensional Euclidean space three parameters and represent a sequence of three elemental rotations. For example, Figure1 shows that the vector set of accelerometer data is defined as {x′,y′,z′}. The x′y′z′ system rotates about the x′-axis by angle α. The y′-axis is now at angle α with respect to the y-axis, and the z′-axis is now at angle α with respect to the z-axis. In accordance with Euler angle formulas, the vector set {x,y,z} can be calculated by adopting the values of vector set {x′,y′,z′} and angle α (shown in formulas (1)). Furthermore, the vector of each axis can be calculated by using Euler angle formulas when the system rotates about the y′-axis by angle β and z′-axis by angle γ (shown in formulas (2)). Therefore, the vector of each axis with 0 degree angle is referred to as baseline in this study. In runtime stage, the vector set {x,y,z} can be calculated by adopting the vector set of baseline and rotation angle for accelerometer data normalization:(1)xyz=x′y′z′1000cosα-sinα0sinαcosα,x=x′,y=y′×cosα+z′×sinα,z=y′×-sinα+z′×cosα,(2)xyz=x′y′z′cosβ0sinβ010-sinβ0cosβ,x=x′×cosβ+z′×-sinβ,y=y′,z=x′×sinβ+z′×cosβ,xyz=x′y′z′cosγ-sinγ0sinγcosγ0001,x=x′×cosγ+y′×sinγ,y=x′×-sinγ+y′×cosγ,z=z′.Figure 1
A case study of Euler angles (thex′y′z′ system rotates about the x′-axis by angle α).


### 3.3. Pothole Detection Approaches

This study considers the previous four pothole detection approaches and proposes a pothole detection algorithm to combine these approaches for pothole detection improvement. The notations of these approaches are defined and summarized in Notations.


#### 3.3.1. The First Pothole Detection Approach:Z-THRESH

TheZ-THRESH approach considers the minimum value of z-axis accelerometer data as the threshold to detect pothole. The value of z-axis accelerometer data is about −9.80065 m/s2 when theG-sensor is laid horizontally. Moreover, the value of z-axis accelerometer data is lower than −9.80065 m/s2 when theG-sensor is dropped off. Therefore, the z-axis accelerometer data drops off quickly when the car enters a pothole. Then z-axis accelerometer data increases when the car leaves a pothole. Therefore, this study considers the lowest value of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the maximum value of the minimum value of z-axis accelerometer data in each run is selected as the threshold θ1 which is suitable to detect pothole for each experimental run (shown in formula (3)). In runtime stage, the value of f1ga,i,j is 1 when the value of ga,i,j is lower than θ1 for pothole detection (shown in formula (4)).The value of threshold is(3)θ1=maxa=1,1≤i≤n,i∈Nminei≤j≤li,j∈Nga,i,j.Detection function is(4)f1ga,i,j=1,ifga,i,j≤θ10,others,wherea=1,1≤i≤n,i∈N,j∈N.


#### 3.3.2. The Second Pothole Detection Approach:Z-DIFF

TheZ-DIFF approach considers the maximum difference of two consecutive z-axis accelerometer records as the threshold to detect pothole. Due to much decreasing and increasing of z-axis accelerometer data through a pothole, the velocity of variation of z-axis accelerometer data between time ti,j-1 and time ti,j is calculated and used to detect pothole. Therefore, this study retrieves the largest value of velocity of variation of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the minimum value of the maximum value of variation velocity in each run is selected as the threshold θ2 which is suitable to detect pothole for each experimental run (shown in formula (5)). In runtime stage, the value of f2ga,i,j is 1 when the value of ga,i,j-ga,i,j-1/ti,j-ti,j-1 is larger than θ2 for pothole detection (shown in formula (6)). However, the limitation of this approach is difficult to determine the time difference between ti,j-1 and ti,j, and the accuracy of this approach is influenced by this time difference.The value of threshold is(5)θ2=mina=1,1≤i≤n,i∈Nmaxei≤j≤li,j∈Nga,i,j-ga,i,j-1ti,j-ti,j-1.Detection function is(6)f2ga,i,j=1,ifga,i,j-ga,i,j-1ti,j-ti,j-1≥θ20,others,wherea=1,1≤i≤n,i∈N,j≥1,j∈N.


#### 3.3.3. The Third Pothole Detection Approach: STDEV(Z)

The STDEV(Z) approach considers the maximum standard deviation of z-axis accelerometer data as the threshold to detect pothole. Due to the perturbation motion of z-axis accelerometer data through a pothole, the standard deviation of z-axis accelerometer data during K records is calculated and used to detect pothole. Therefore, this study gets the maximum value of standard deviation of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the minimum value of the maximum value of standard deviation in each run is selected as the threshold θ3 which is suitable to detect pothole for each experimental run (shown in formula (7)). In runtime stage, the value of f3ga,i,j is 1 when the value of ∑k=j-K+1jga,i,k-μi,j2/K is larger than θ3 for pothole detection (shown in formula (8)). However, the limitation of this approach is difficult to determine the value of K which means time period, and the accuracy of this approach is influenced by this time period.The value of threshold is(7)θ3=mina=1,1≤i≤n,i∈Nmaxei≤j≤li,j∈N∑k=j-K+1jga,i,k-μi,j2K,whereμi,j=∑k=j-K+1jga,i,kK.Detection function is(8)f3ga,i,j=1,if∑k=j-K+1jga,i,k-μi,j2K≥θ30,others,wherea=1,1≤i≤n,i∈N,j≥K,j∈N,μi,j=∑k=j-K+1jga,i,kK.


#### 3.3.4. The Fourth Pothole Detection Approach:G-ZERO

TheG-ZERO approach considers all three-axis accelerometer data and selects a lower bound and upper bound to detect pothole for accuracy improvement. When a car passes through a pothole, all values of three-axis accelerometer data are near to zero. Therefore, this study considers the largest value of three-axis accelerometer data through a pothole as a candidate of lower bound and the lowest value of three-axis accelerometer data through a pothole as a candidate of upper bound. Then the minimum value of the maximum value of three-axis accelerometer data in each run is selected as the lower bound θ4,1, and the maximum value of the minimum value of three-axis accelerometer data in each run is selected as the upper bound θ4,2 (shown in formulas (9) and (10)). In runtime stage, the value of f4ga,i,j is 1 when the value of ga,i,j is larger than θ4,1 and is lower than θ4,2 for pothole detection (shown in formula (11)).The value of lower bound is(9)θ4,1=mina∈1,2,3,1≤i≤n,i∈Nmaxei≤j≤li,j∈Nga,i,j.The value of upper bound is(10)θ4,2=maxa∈1,2,3,1≤i≤n,i∈Nminei≤j≤li,j∈Nga,i,j.Detection function is(11)f4ga,i,j=1,ifθ4,1≤ga,i,j≤θ4,20,others,wherea=1,2,3,1≤i≤n,i∈N,j∈N.


#### 3.3.5. The Fifth Pothole Detection Approach: Proposed Approach

This subsection proposes a pothole detection approach which combines and improves theZ-THRESH andG-ZERO approaches to detect pothole. Furthermore, theZ-DIFF and STDEV(Z) approaches are limited in accordance with time differences and time periods, so these two approaches are not adopted. The pseudocode of the proposed pothole detection approach is presented in Algorithm 1. The input parameters of this proposed approach are three-axis accelerometer data, and the value of output is 1 when the proposed pothole detection approach supposes the car passed through a pothole. In the proposed approach, the parametercheck_method is used to record whether the value of f1ga,i,j or f4ga,i,j is 1. When one ofZ-THRESH andG-ZERO approaches supposes that the car passed through a pothole, the timestamp ti,j is recorded and compared with the parametercheck_time. The value of output is 1 if ti,j-check_time is smaller than ε seconds, which means a pothole is detected. Furthermore, the parametercheck_time can be trained and learned by historical data from each practical run.Algorithm 1:The pseudocode of the proposed pothole detection approach.
Input:
g
a
,
i
,
j, where a={1,2,3}, 1≤i≤n, i∈N, j∈N
Output:The value of output is 1 when the proposed pothole detection approach
supposes the car passed through a pothole.
Setcheck_method = 0
setcheck_time = 0
while
(
j
∈
N
)
if(ti,j-check_time)>ε secthen
check_method = 0
check_time = 0
end  if
iff1(g1,i,j) = 1then
ifcheck_method = 0then
check_method = 1
check_time =ti,j
else  ifcheck_method = 4then
return1
else
check_time =ti,j
end  if
end  if
iff4(ga,i,j) = 1then
ifcheck_method = 0then
check_method = 4
check_time =ti,j
else  ifcheck_method = 1then
return 1
else
check_time =ti,j
end  if
end  if
end  while


### 3.4. Pothole Location Determination

For pothole location determination, this study uses the space interpolation method to obtain precise pothole location. Figure2 shows that two locations (i.e., L1 and L2) and timestamps (i.e., t1 and t2) obtained from GPS module are adopted in the space interpolation method to determine the pothole location. The function dL1,L2 is defined as the distance between location L1 and location L2. Therefore, the pothole location Lp can be determined by using(12)dL1,Lp=dL1,L2×t2-t1t3-t1,dL2,Lp=dL1,L2×t3-t2t3-t1.Figure 2
The space interpolation method for pothole location determination.


## 3.1. Problem Definition

Some shortcomings are in previous pothole detection methods as follows:(1) mobile device should be equipped with the specific angle; (2) high false-positives may be generated with considering only one threshold for pothole detection; (3) the precise pothole location has not been investigated.Therefore, this study proposes a real-time pothole detection method based on mobile sensing to collect and normalize the accelerometer data from mobile device for free angle establishment. Furthermore, a pothole detection algorithm is proposed to consider several thresholds and combine several pothole detection approaches for pothole detection accuracy improvement. Finally, the space interpolation method is adopted to determine pothole location for leaving shortcomings.


## 3.2. Accelerometer Data Normalization

For solving the limitation of the specific angle in previous pothole detection approaches, this study uses Euler angle formulas to normalize the three-axis accelerometer data. The Euler angles describe the vector set in 3-dimensional Euclidean space three parameters and represent a sequence of three elemental rotations. For example, Figure1 shows that the vector set of accelerometer data is defined as {x′,y′,z′}. The x′y′z′ system rotates about the x′-axis by angle α. The y′-axis is now at angle α with respect to the y-axis, and the z′-axis is now at angle α with respect to the z-axis. In accordance with Euler angle formulas, the vector set {x,y,z} can be calculated by adopting the values of vector set {x′,y′,z′} and angle α (shown in formulas (1)). Furthermore, the vector of each axis can be calculated by using Euler angle formulas when the system rotates about the y′-axis by angle β and z′-axis by angle γ (shown in formulas (2)). Therefore, the vector of each axis with 0 degree angle is referred to as baseline in this study. In runtime stage, the vector set {x,y,z} can be calculated by adopting the vector set of baseline and rotation angle for accelerometer data normalization:(1)xyz=x′y′z′1000cosα-sinα0sinαcosα,x=x′,y=y′×cosα+z′×sinα,z=y′×-sinα+z′×cosα,(2)xyz=x′y′z′cosβ0sinβ010-sinβ0cosβ,x=x′×cosβ+z′×-sinβ,y=y′,z=x′×sinβ+z′×cosβ,xyz=x′y′z′cosγ-sinγ0sinγcosγ0001,x=x′×cosγ+y′×sinγ,y=x′×-sinγ+y′×cosγ,z=z′.Figure 1
A case study of Euler angles (thex′y′z′ system rotates about the x′-axis by angle α).


## 3.3. Pothole Detection Approaches

This study considers the previous four pothole detection approaches and proposes a pothole detection algorithm to combine these approaches for pothole detection improvement. The notations of these approaches are defined and summarized in Notations.


### 3.3.1. The First Pothole Detection Approach:Z-THRESH

TheZ-THRESH approach considers the minimum value of z-axis accelerometer data as the threshold to detect pothole. The value of z-axis accelerometer data is about −9.80065 m/s2 when theG-sensor is laid horizontally. Moreover, the value of z-axis accelerometer data is lower than −9.80065 m/s2 when theG-sensor is dropped off. Therefore, the z-axis accelerometer data drops off quickly when the car enters a pothole. Then z-axis accelerometer data increases when the car leaves a pothole. Therefore, this study considers the lowest value of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the maximum value of the minimum value of z-axis accelerometer data in each run is selected as the threshold θ1 which is suitable to detect pothole for each experimental run (shown in formula (3)). In runtime stage, the value of f1ga,i,j is 1 when the value of ga,i,j is lower than θ1 for pothole detection (shown in formula (4)).The value of threshold is(3)θ1=maxa=1,1≤i≤n,i∈Nminei≤j≤li,j∈Nga,i,j.Detection function is(4)f1ga,i,j=1,ifga,i,j≤θ10,others,wherea=1,1≤i≤n,i∈N,j∈N.


### 3.3.2. The Second Pothole Detection Approach:Z-DIFF

TheZ-DIFF approach considers the maximum difference of two consecutive z-axis accelerometer records as the threshold to detect pothole. Due to much decreasing and increasing of z-axis accelerometer data through a pothole, the velocity of variation of z-axis accelerometer data between time ti,j-1 and time ti,j is calculated and used to detect pothole. Therefore, this study retrieves the largest value of velocity of variation of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the minimum value of the maximum value of variation velocity in each run is selected as the threshold θ2 which is suitable to detect pothole for each experimental run (shown in formula (5)). In runtime stage, the value of f2ga,i,j is 1 when the value of ga,i,j-ga,i,j-1/ti,j-ti,j-1 is larger than θ2 for pothole detection (shown in formula (6)). However, the limitation of this approach is difficult to determine the time difference between ti,j-1 and ti,j, and the accuracy of this approach is influenced by this time difference.The value of threshold is(5)θ2=mina=1,1≤i≤n,i∈Nmaxei≤j≤li,j∈Nga,i,j-ga,i,j-1ti,j-ti,j-1.Detection function is(6)f2ga,i,j=1,ifga,i,j-ga,i,j-1ti,j-ti,j-1≥θ20,others,wherea=1,1≤i≤n,i∈N,j≥1,j∈N.


### 3.3.3. The Third Pothole Detection Approach: STDEV(Z)

The STDEV(Z) approach considers the maximum standard deviation of z-axis accelerometer data as the threshold to detect pothole. Due to the perturbation motion of z-axis accelerometer data through a pothole, the standard deviation of z-axis accelerometer data during K records is calculated and used to detect pothole. Therefore, this study gets the maximum value of standard deviation of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the minimum value of the maximum value of standard deviation in each run is selected as the threshold θ3 which is suitable to detect pothole for each experimental run (shown in formula (7)). In runtime stage, the value of f3ga,i,j is 1 when the value of ∑k=j-K+1jga,i,k-μi,j2/K is larger than θ3 for pothole detection (shown in formula (8)). However, the limitation of this approach is difficult to determine the value of K which means time period, and the accuracy of this approach is influenced by this time period.The value of threshold is(7)θ3=mina=1,1≤i≤n,i∈Nmaxei≤j≤li,j∈N∑k=j-K+1jga,i,k-μi,j2K,whereμi,j=∑k=j-K+1jga,i,kK.Detection function is(8)f3ga,i,j=1,if∑k=j-K+1jga,i,k-μi,j2K≥θ30,others,wherea=1,1≤i≤n,i∈N,j≥K,j∈N,μi,j=∑k=j-K+1jga,i,kK.


### 3.3.4. The Fourth Pothole Detection Approach:G-ZERO

TheG-ZERO approach considers all three-axis accelerometer data and selects a lower bound and upper bound to detect pothole for accuracy improvement. When a car passes through a pothole, all values of three-axis accelerometer data are near to zero. Therefore, this study considers the largest value of three-axis accelerometer data through a pothole as a candidate of lower bound and the lowest value of three-axis accelerometer data through a pothole as a candidate of upper bound. Then the minimum value of the maximum value of three-axis accelerometer data in each run is selected as the lower bound θ4,1, and the maximum value of the minimum value of three-axis accelerometer data in each run is selected as the upper bound θ4,2 (shown in formulas (9) and (10)). In runtime stage, the value of f4ga,i,j is 1 when the value of ga,i,j is larger than θ4,1 and is lower than θ4,2 for pothole detection (shown in formula (11)).The value of lower bound is(9)θ4,1=mina∈1,2,3,1≤i≤n,i∈Nmaxei≤j≤li,j∈Nga,i,j.The value of upper bound is(10)θ4,2=maxa∈1,2,3,1≤i≤n,i∈Nminei≤j≤li,j∈Nga,i,j.Detection function is(11)f4ga,i,j=1,ifθ4,1≤ga,i,j≤θ4,20,others,wherea=1,2,3,1≤i≤n,i∈N,j∈N.


### 3.3.5. The Fifth Pothole Detection Approach: Proposed Approach

This subsection proposes a pothole detection approach which combines and improves theZ-THRESH andG-ZERO approaches to detect pothole. Furthermore, theZ-DIFF and STDEV(Z) approaches are limited in accordance with time differences and time periods, so these two approaches are not adopted. The pseudocode of the proposed pothole detection approach is presented in Algorithm 1. The input parameters of this proposed approach are three-axis accelerometer data, and the value of output is 1 when the proposed pothole detection approach supposes the car passed through a pothole. In the proposed approach, the parametercheck_method is used to record whether the value of f1ga,i,j or f4ga,i,j is 1. When one ofZ-THRESH andG-ZERO approaches supposes that the car passed through a pothole, the timestamp ti,j is recorded and compared with the parametercheck_time. The value of output is 1 if ti,j-check_time is smaller than ε seconds, which means a pothole is detected. Furthermore, the parametercheck_time can be trained and learned by historical data from each practical run.Algorithm 1:The pseudocode of the proposed pothole detection approach.
Input:
g
a
,
i
,
j, where a={1,2,3}, 1≤i≤n, i∈N, j∈N
Output:The value of output is 1 when the proposed pothole detection approach
supposes the car passed through a pothole.
Setcheck_method = 0
setcheck_time = 0
while
(
j
∈
N
)
if(ti,j-check_time)>ε secthen
check_method = 0
check_time = 0
end  if
iff1(g1,i,j) = 1then
ifcheck_method = 0then
check_method = 1
check_time =ti,j
else  ifcheck_method = 4then
return1
else
check_time =ti,j
end  if
end  if
iff4(ga,i,j) = 1then
ifcheck_method = 0then
check_method = 4
check_time =ti,j
else  ifcheck_method = 1then
return 1
else
check_time =ti,j
end  if
end  if
end  while


## 3.3.1. The First Pothole Detection Approach:Z-THRESH

TheZ-THRESH approach considers the minimum value of z-axis accelerometer data as the threshold to detect pothole. The value of z-axis accelerometer data is about −9.80065 m/s2 when theG-sensor is laid horizontally. Moreover, the value of z-axis accelerometer data is lower than −9.80065 m/s2 when theG-sensor is dropped off. Therefore, the z-axis accelerometer data drops off quickly when the car enters a pothole. Then z-axis accelerometer data increases when the car leaves a pothole. Therefore, this study considers the lowest value of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the maximum value of the minimum value of z-axis accelerometer data in each run is selected as the threshold θ1 which is suitable to detect pothole for each experimental run (shown in formula (3)). In runtime stage, the value of f1ga,i,j is 1 when the value of ga,i,j is lower than θ1 for pothole detection (shown in formula (4)).The value of threshold is(3)θ1=maxa=1,1≤i≤n,i∈Nminei≤j≤li,j∈Nga,i,j.Detection function is(4)f1ga,i,j=1,ifga,i,j≤θ10,others,wherea=1,1≤i≤n,i∈N,j∈N.


## 3.3.2. The Second Pothole Detection Approach:Z-DIFF

TheZ-DIFF approach considers the maximum difference of two consecutive z-axis accelerometer records as the threshold to detect pothole. Due to much decreasing and increasing of z-axis accelerometer data through a pothole, the velocity of variation of z-axis accelerometer data between time ti,j-1 and time ti,j is calculated and used to detect pothole. Therefore, this study retrieves the largest value of velocity of variation of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the minimum value of the maximum value of variation velocity in each run is selected as the threshold θ2 which is suitable to detect pothole for each experimental run (shown in formula (5)). In runtime stage, the value of f2ga,i,j is 1 when the value of ga,i,j-ga,i,j-1/ti,j-ti,j-1 is larger than θ2 for pothole detection (shown in formula (6)). However, the limitation of this approach is difficult to determine the time difference between ti,j-1 and ti,j, and the accuracy of this approach is influenced by this time difference.The value of threshold is(5)θ2=mina=1,1≤i≤n,i∈Nmaxei≤j≤li,j∈Nga,i,j-ga,i,j-1ti,j-ti,j-1.Detection function is(6)f2ga,i,j=1,ifga,i,j-ga,i,j-1ti,j-ti,j-1≥θ20,others,wherea=1,1≤i≤n,i∈N,j≥1,j∈N.


## 3.3.3. The Third Pothole Detection Approach: STDEV(Z)

The STDEV(Z) approach considers the maximum standard deviation of z-axis accelerometer data as the threshold to detect pothole. Due to the perturbation motion of z-axis accelerometer data through a pothole, the standard deviation of z-axis accelerometer data during K records is calculated and used to detect pothole. Therefore, this study gets the maximum value of standard deviation of z-axis accelerometer data through a pothole in experimental runs. Furthermore, the minimum value of the maximum value of standard deviation in each run is selected as the threshold θ3 which is suitable to detect pothole for each experimental run (shown in formula (7)). In runtime stage, the value of f3ga,i,j is 1 when the value of ∑k=j-K+1jga,i,k-μi,j2/K is larger than θ3 for pothole detection (shown in formula (8)). However, the limitation of this approach is difficult to determine the value of K which means time period, and the accuracy of this approach is influenced by this time period.The value of threshold is(7)θ3=mina=1,1≤i≤n,i∈Nmaxei≤j≤li,j∈N∑k=j-K+1jga,i,k-μi,j2K,whereμi,j=∑k=j-K+1jga,i,kK.Detection function is(8)f3ga,i,j=1,if∑k=j-K+1jga,i,k-μi,j2K≥θ30,others,wherea=1,1≤i≤n,i∈N,j≥K,j∈N,μi,j=∑k=j-K+1jga,i,kK.


## 3.3.4. The Fourth Pothole Detection Approach:G-ZERO

TheG-ZERO approach considers all three-axis accelerometer data and selects a lower bound and upper bound to detect pothole for accuracy improvement. When a car passes through a pothole, all values of three-axis accelerometer data are near to zero. Therefore, this study considers the largest value of three-axis accelerometer data through a pothole as a candidate of lower bound and the lowest value of three-axis accelerometer data through a pothole as a candidate of upper bound. Then the minimum value of the maximum value of three-axis accelerometer data in each run is selected as the lower bound θ4,1, and the maximum value of the minimum value of three-axis accelerometer data in each run is selected as the upper bound θ4,2 (shown in formulas (9) and (10)). In runtime stage, the value of f4ga,i,j is 1 when the value of ga,i,j is larger than θ4,1 and is lower than θ4,2 for pothole detection (shown in formula (11)).The value of lower bound is(9)θ4,1=mina∈1,2,3,1≤i≤n,i∈Nmaxei≤j≤li,j∈Nga,i,j.The value of upper bound is(10)θ4,2=maxa∈1,2,3,1≤i≤n,i∈Nminei≤j≤li,j∈Nga,i,j.Detection function is(11)f4ga,i,j=1,ifθ4,1≤ga,i,j≤θ4,20,others,wherea=1,2,3,1≤i≤n,i∈N,j∈N.


## 3.3.5. The Fifth Pothole Detection Approach: Proposed Approach

This subsection proposes a pothole detection approach which combines and improves theZ-THRESH andG-ZERO approaches to detect pothole. Furthermore, theZ-DIFF and STDEV(Z) approaches are limited in accordance with time differences and time periods, so these two approaches are not adopted. The pseudocode of the proposed pothole detection approach is presented in Algorithm 1. The input parameters of this proposed approach are three-axis accelerometer data, and the value of output is 1 when the proposed pothole detection approach supposes the car passed through a pothole. In the proposed approach, the parametercheck_method is used to record whether the value of f1ga,i,j or f4ga,i,j is 1. When one ofZ-THRESH andG-ZERO approaches supposes that the car passed through a pothole, the timestamp ti,j is recorded and compared with the parametercheck_time. The value of output is 1 if ti,j-check_time is smaller than ε seconds, which means a pothole is detected. Furthermore, the parametercheck_time can be trained and learned by historical data from each practical run.Algorithm 1:The pseudocode of the proposed pothole detection approach.
Input:
g
a
,
i
,
j, where a={1,2,3}, 1≤i≤n, i∈N, j∈N
Output:The value of output is 1 when the proposed pothole detection approach
supposes the car passed through a pothole.
Setcheck_method = 0
setcheck_time = 0
while
(
j
∈
N
)
if(ti,j-check_time)>ε secthen
check_method = 0
check_time = 0
end  if
iff1(g1,i,j) = 1then
ifcheck_method = 0then
check_method = 1
check_time =ti,j
else  ifcheck_method = 4then
return1
else
check_time =ti,j
end  if
end  if
iff4(ga,i,j) = 1then
ifcheck_method = 0then
check_method = 4
check_time =ti,j
else  ifcheck_method = 1then
return 1
else
check_time =ti,j
end  if
end  if
end  while


## 3.4. Pothole Location Determination

For pothole location determination, this study uses the space interpolation method to obtain precise pothole location. Figure2 shows that two locations (i.e., L1 and L2) and timestamps (i.e., t1 and t2) obtained from GPS module are adopted in the space interpolation method to determine the pothole location. The function dL1,L2 is defined as the distance between location L1 and location L2. Therefore, the pothole location Lp can be determined by using(12)dL1,Lp=dL1,L2×t2-t1t3-t1,dL2,Lp=dL1,L2×t3-t2t3-t1.Figure 2
The space interpolation method for pothole location determination.


## 4. Experimental Results

This section discusses the analyses of experimental results for accelerometer data normalization, pothole detection approaches, and pothole location determination.


### 4.1. The Analyses of Accelerometer Data Normalization

For the analyses of accelerometer data normalization, this study gives two case studies which include(1) the mobile device with 0 degree angle as baseline (shown in Figure 3) and (2) the mobile device with −15 degree angle (i.e., the value of α is −15 in Figure 1) (shown in Figure 4). Then the t-test and F-test are used to verify the difference between the z-axis accelerometer data of baseline in Case 1 and the z-axis accelerometer data after accelerometer data normalization in Case 2.Figure 3
A case study of the mobile device with 0 degree angle as baseline.Figure 4
A case study of the mobile device with −15 degree angle.This study uses two-tailedt-test to determine significance of the difference between the mean of z-axis accelerometer data of baseline in Case 1 (μ1=-9.8489) and the mean of z-axis accelerometer data after accelerometer data normalization in Case 2 (μ2=-9.8476). The sample sizes of Case 1 and Case 2 are 60. Furthermore, this study also uses F-test to determine significance of the difference between the variance of z-axis accelerometer data of baseline in Case 1 (σ12=0.000077) and the variance of z-axis accelerometer data after accelerometer data normalization in Case 2 (σ22=0.000085). Table 1 shows the t-test and F-test for the population means and variances of samples in Case 1 and Case 2. Experimental results indicate that thenull hypothesis (H0: μ1=μ2) in t-test is accepted, and anothernull hypothesis (H0: σ1=σ2) in F-test is also accepted. Therefore, using Euler angle formulas to normalize the accelerometer data from mobile device is suitable for free angle establishment.Table 1
The test results for accelerometer data with normalization.
The value ofz-axis accelerometer data mean (standard deviation)
The 0 degree angle (baseline)
-
9.8489
(
0.000077
)
The −15 degree angle after normalization
-
9.8476
(
0.000085
)


### 4.2. The Accuracy of Pothole Detection Approach

For the analyses of accuracy of pothole detection approach, this study selects a pothole (length: 58 cm; weight: 51 cm; and depth: 6 cm) as a case study (shown in Figure5) and 10 runs in experiment environment. The mean frequency of accelerometer data detection inG-sensor in mobile device is 124 counts/second. The k-fold cross-validation [13] is used to verify the accuracy of pothole detection approach. In experiments, training and testing are performed 10 times (i.e., k=10). In iteration i, the accelerometer data in ith run therapy is selected as the test corpus, and the accelerometer data in other runs is collectively used to train the thresholds for each approach. Table 2 shows the comparisons ofZ-THRESH approach,Z-DIFF approach, STDEV(Z) approach,G-ZERO approach, and the proposed approach. The results show that the proposed approach can precisely detect potholes without false-positives and the accuracy of the proposed approach is 100%. Furthermore, this study also implemented and compared common machine learning methods which include ANN, SVM, and decision tree (DT) (shown in Table 3). Although these machine learning methods can detect potholes, several false-positives are generated by them.Table 2
The false positive of each pothole detection approach.
Detection method
Z-THRESH
Z-DIFF
STDEV(Z)
G-ZERO
Proposed method
False-positive
49
40
274
8
0Table 3
The comparisons of different machine learning methods.
Detection method
ANN
SVM
DT
False-positive
1626
255
282Figure 5
A case study of a pothole in University Road, Hsinchu, Taiwan.


### 4.3. The Error of Pothole Location Determination

For the analyses of error of pothole location determination, this study uses the accelerometer data and location information from 10 runs in Section4.2 to verify the space interpolation method. The results show that the error of pothole location determination is reduced from 17.47 meters to 11.74 meters after using the space interpolation method. Therefore, the space interpolation method is suitable to determinate the precise pothole location.


## 4.1. The Analyses of Accelerometer Data Normalization

For the analyses of accelerometer data normalization, this study gives two case studies which include(1) the mobile device with 0 degree angle as baseline (shown in Figure 3) and (2) the mobile device with −15 degree angle (i.e., the value of α is −15 in Figure 1) (shown in Figure 4). Then the t-test and F-test are used to verify the difference between the z-axis accelerometer data of baseline in Case 1 and the z-axis accelerometer data after accelerometer data normalization in Case 2.Figure 3
A case study of the mobile device with 0 degree angle as baseline.Figure 4
A case study of the mobile device with −15 degree angle.This study uses two-tailedt-test to determine significance of the difference between the mean of z-axis accelerometer data of baseline in Case 1 (μ1=-9.8489) and the mean of z-axis accelerometer data after accelerometer data normalization in Case 2 (μ2=-9.8476). The sample sizes of Case 1 and Case 2 are 60. Furthermore, this study also uses F-test to determine significance of the difference between the variance of z-axis accelerometer data of baseline in Case 1 (σ12=0.000077) and the variance of z-axis accelerometer data after accelerometer data normalization in Case 2 (σ22=0.000085). Table 1 shows the t-test and F-test for the population means and variances of samples in Case 1 and Case 2. Experimental results indicate that thenull hypothesis (H0: μ1=μ2) in t-test is accepted, and anothernull hypothesis (H0: σ1=σ2) in F-test is also accepted. Therefore, using Euler angle formulas to normalize the accelerometer data from mobile device is suitable for free angle establishment.Table 1
The test results for accelerometer data with normalization.
The value ofz-axis accelerometer data mean (standard deviation)
The 0 degree angle (baseline)
-
9.8489
(
0.000077
)
The −15 degree angle after normalization
-
9.8476
(
0.000085
)


## 4.2. The Accuracy of Pothole Detection Approach

For the analyses of accuracy of pothole detection approach, this study selects a pothole (length: 58 cm; weight: 51 cm; and depth: 6 cm) as a case study (shown in Figure5) and 10 runs in experiment environment. The mean frequency of accelerometer data detection inG-sensor in mobile device is 124 counts/second. The k-fold cross-validation [13] is used to verify the accuracy of pothole detection approach. In experiments, training and testing are performed 10 times (i.e., k=10). In iteration i, the accelerometer data in ith run therapy is selected as the test corpus, and the accelerometer data in other runs is collectively used to train the thresholds for each approach. Table 2 shows the comparisons ofZ-THRESH approach,Z-DIFF approach, STDEV(Z) approach,G-ZERO approach, and the proposed approach. The results show that the proposed approach can precisely detect potholes without false-positives and the accuracy of the proposed approach is 100%. Furthermore, this study also implemented and compared common machine learning methods which include ANN, SVM, and decision tree (DT) (shown in Table 3). Although these machine learning methods can detect potholes, several false-positives are generated by them.Table 2
The false positive of each pothole detection approach.
Detection method
Z-THRESH
Z-DIFF
STDEV(Z)
G-ZERO
Proposed method
False-positive
49
40
274
8
0Table 3
The comparisons of different machine learning methods.
Detection method
ANN
SVM
DT
False-positive
1626
255
282Figure 5
A case study of a pothole in University Road, Hsinchu, Taiwan.


## 4.3. The Error of Pothole Location Determination

For the analyses of error of pothole location determination, this study uses the accelerometer data and location information from 10 runs in Section4.2 to verify the space interpolation method. The results show that the error of pothole location determination is reduced from 17.47 meters to 11.74 meters after using the space interpolation method. Therefore, the space interpolation method is suitable to determinate the precise pothole location.


## 5. Conclusions and Future Work

This study proposes a real-time pothole detection method based on the mobile sensing techniques. This method uses Euler angle computation to normalize the accelerometer data obtained from mobile device with free angle establishment. Moreover, a pothole detection approach is proposed to be combined withZ-THRESH andG-ZERO approaches for reducing the false-positives of pothole detection. Furthermore, the spatial interpolation method is adopted to obtain precisely the location of pothole. In experiments, the results show that the proposed approach can precisely detect potholes without false-positives and the accuracy of the proposed approach is 100%. Therefore, the proposed real-time pothole detection approach can be used to improve the safety of traffic for ITS.However, the limitation of this study is sample size. In the future, more practical results will be retrieved and analyzed to deploy the proposed method everywhere. Furthermore, due to the limited battery capacity of mobile device, the issue about saving of computation power can be investigated. A green pothole detection approach is needed to reduce the frequency of accelerometer data detection with high accuracy of pothole detection.



---

*Source: 869627-2015-08-27.xml*