The main principle is: the use of different surface roughness (roughness) different, resulting in ultrasonic wave of different reflection. According to Endura theory, the wave amplitude of smooth surface reflection is large and the duration is short. As the roughness increases, the amplitude decreases and lasts longer. Analyzing waveform data, you can extract many features (feature): Window length, peak, peak position, window start position, end position, etc. The result of the experiment is that the characteristic effect of window length is better, which indicates that the characteristic effect of energy is poor. The design of the classifier also uses the Mahalanobis distance. However, the paper gives another way to simplify the Mahalanobis distance: the Euclidean distance is calculated by using the characteristic value of the generalized (normalized).
By identifying the surface type, the robot can determine its current environment, the road, or use it for landmark navigation (landmark navigation)
Lab Environment: MacOS LabVIEW 8.6
For more information Phillip J. McKerrow classifying Surface roughness with CTFM ultrasonic sensing.
--------------------------------------------------------------------------------------------------------------- -----------------
Introduction and Background
Classifying the surfaces of road is important to robots. By doing, a robot can know it surrounds, for example detecting carpet means robots. More than, we can navigate a mobile robot by using different road surfaces, for example if a robot wants Garden to a bedroom, the road surfaces it would experience is grass (garden), Brick (yard), Wood (sitting), and carpet (b Edroom) sequentially.
To classify different surfaces, we can take the advantage of the roughness of surfaces and the reflection of ultrasonic WA Ve. Surface roughness is caused by small variations in surface depth [1]. For some surfaces, the roughness is periodically varied, then we can use the geometric model the describe them. In contrast, for some randomly varied surface roughness, statistical models is the only choice.
When projecting the ultrasonic wave to a surface, energy would be reflected back. According to ENDURA method, the amplitude and duration of the echo are different from different surfaces. Specifically, smooth surface gives the echo with high amplitude and short duration. When increasing the roughness, the amplitude of echoes declines while the duration of echo increases. In this case, a ultrasonic sensor with a high sampling speed are pointed to the surface to measure the amplitude and duratio N.
In this experiment, I extract features from different echo, find the best feature combination, can classify different surfaces efficiently, and then build a classifier using the feature combination.
The features to be extracted is:
1. Window length
2. Window Start position
3. Window End Position
4. Peak position
5. Peak Position in Window
6. Peak Value
7. First element in array
There is echoes in a data file. Therefore, the data file can be divided into parts. In each part, the Start Echo was window start position and the end Echo is window end position. The width of the window is window length. The position that Echo Peak was peak position and the amplitude is peak value.
Approach Explainedpattern Recognition
Pattern classification is the task of giving names to objects based on measurements [2]. We Firstly measure a set of data from an object and the combination of the set of data is called a vector.
v= [v1...vn]t
Each of the vectors corresponds to a point in the n-dimensional feature space. For the points (or vectors) measured from one kind of object, they is located in a special area in feature space. If in a feature space, there are no overlap among all the areas of different kinds of objects and each area keeps a certain Distance from other areas, then we can say the surfaces can is classified in the feature space and the features has Enough power to discriminate between the objects. Therefore, the problem is what to find a combination of features that has enough power to discriminate all the objects. To solve this problem, we extract features from training data and try all the combinations of features till we find the FE Ature combination we need. It is obvious that the feature combination should was not too complex. In other words, we should use less features to reduce the computational complexity and make sure that we goal can REAC Hed.
Mahalanobis distance
For a vector x= (x1,x2,x3,,, xn) t, the mean of x are μ= (μ1,μ2,μ3,,, μn) T and covariance matrix is S, Mahalanobis distance is defined as:
The values on the diagonal of the matrix is the standard deviation of features.
The values off the diagonal of the matrix is the co variances between and the features. If They is zero, it means this there is no correlation between all the features which construct the feature space.
If the covariance matrix is the identity matrix, the Mahalanobis distance reduces to the Euclidean distance.
Justificationmahalanobis distance
When the variances is 1, and the co variances is 0, the Co variances become identity matrix and the Mahalanobis Dista nCE becomes Euclidian distance. To reduce the Mahalanobis distance to Euclidian distance, we normalize the feature values by dividing them by their standa Rd deviations. The division result in the new set of feature vectors all with a standard deviation ofσ=1.
The Mahalanobis distance (or Euclidian distance of the normalized vectors) gives us the measure of the quality Ure set for classification. As the unit of distance is the deviation of the set of measurements in the reference cluster, the distance tells us the probability of a new measurement being from that surface. 68.27% of values is within 1σof the mean vector, 95.45% within 2σ, 99.73% within 3σ. Comparing the measurement vector to a set of mean vectors the Mahalanobis distance tells us which surface the MEAs Urement is closest to and the probability that's the echo is from that surface. In this experiment, if the Euclidian disntance is greater than 6σ (σ=1), we can say the feature can discriminate both SURFAC Es.
Advantages
Reducing mahalanobis distance to Euclidian distance can reduce the complexity of calculation and not affect the Classifica tion accuracy.
Classification processprocess of building a classifier
1. Extract features from each training data
2. Calculate the average and standard deviation for each feature.
3. Calculate the Mahalanobis distances between feature values by calculating the Euclidean distance of the normalized Features.
4. For each feature, calculate the distance between the surfaces.
5. Calculate the amount of distances greater than 6
6. Find The feature combination that can classify all the features.
Process of classifying
1. Choose a set of features that has the best performance on classifying the surfaces to construct the feature space .
2. Extract the feature values from the testing echo data.
3. Calculate the average and standard deviation for each feature in the feature set.
4. Calculate the Mahalanobis distances between testing echo data and all of the standard echo data by calculating the Eu Clidean distance of the normalized features.
5. The testing data should belong to the class, keeps the smallest distance to the testing data.
Comparative analysis
In the paper, the author mentioned that:1 the highest quality features (the range of reflection angles and end angle) is A direct function of the roughness; 2 Most of the features relating to the location and amplitude of both peaks are poor.
In my experiment, I didn't extract the range of reflection angles and end angles, but the window start and window end WHI CH are related to the features (the range of reflection angles and end angle) are used in my experiment. The final result of my experiment showed that the window start and window end was high quality features which is the same To the first point of author. However, the peak position and peak value has mid-level power, they is not so poor.
Reasons
The performance of peak position and peak value are not so poor in my experiment. The reason maybe that the performance of the and the features on different sets of surfaces is different. In my experiment, the values of peak position of carpet cross and toilet tiles1 is greater than is less than 40. Therefore, we can infer that the features has good discriminate power on specific surfaces.
Analysis of colleted data
We can see from table 1, peak position in window and first element in array is poor features because they hardly vary. Because the window lengths for all the surfaces is small, therefore, the peak position in Windows can not vary obviously. Other features can get very high or low values on some surfaces. For example, the peak position of carpet cross and toilet tile1 were much higher than that's of other surfaces; The window start of metal plate is the maximum value and that of ramp are the minimum value among all the surfaces. More over, to get the recognition rate of the features, we need to calculate the distances for each feature between both Su Rfaces (table 2-8).
Table 9 shows the amount of the distances greater than 6σin table 2 to table 8. The total distance amount is 196 (14*14). This table proved that peak position in window and first element in array is poor features, because the amount is 0. In contrast, window start and window end is the best of the features, however, the recognition rate is 87.75% and 84.69% wh Ich is still lower than 92.85% (92.85% means the feature can classify all the surfaces. (196-14)/196=92.85%).
Therefore, to achieve a recognition rate of 92.85%, we should combine both features (or more) together. Table Ten shows the Euclidean distances of combining window start and window end. However, because there exists the "Inf" and "", the classifier built using the and the "features" can not discriminate the Corre sponding surfaces.
Evaluation of classifier
My classifier can make correct decision on bit, concrete path, concrete tile, concrete tiles2, grass, large slabs, lino, M Etal plate, ramp, rough brick, toilet tiles1, toilet tiles2. It cannot classify the carpet cross and carpet long because the feature values of the "INF" and "Nan". The classifier cannot get the accurate distance value to classify surfaces.
Findings
In the paper, the author used 5D vector composed of features:end angle, range of angle, sum of amplitudes, Energ Y distribution and position of peak 1 or amplitude of peak1 or distance between peaks to achieve all the distances greater than 6σand Hence a recognition rate of 99.73%. The author pointed that the highest quality features is based on range (angle) values in amplitude (energy) values, W Hich is consistent with the understanding of ultrasonic sensing.
Conclusions
Both of the author ' s Point and my experiment show, the features based on range values such as start angle, end angle, range of angle, window start, Window end, is in high quality. The Mahalanobis distance provides both a measure of the quality of the features and a robust method for classifying SURFAC Es with those features [3].
Future work
In the future, I'll try to find the reason INF and and find the solution of avoiding them.
User Manual
The program comprises four vis. The PSD.VI, FINDFIRSTWINDOW.VI remains unchanged. DATAFILEREADER.VI reads the echo file, extracts features, and normalizes feature values. The CALCULATETABLE1-2.VI analyses the normalized features, classify the testing data.
How to use:
1. Open calculatetable1-2.vi in LabVIEW.
2. Change the file path of training data.
3. Input The testing data file path.
4. Run the program
Result
1. The Result field shows which class the testing data is should belong to.
2. The "Testingedistancearray" shows the distance between testing data and standard data.
3. The "Feature array" shows the Feature values of all, the standard surfaces.
4. The ">amount" shows:for each feature, the number of distances which is greater than 6
5. The "Mdistancearray" shows the distance between and the surfaces for each feature.
6. In "feature1,2, field, user can choose the feature combination to be tested.
7. The "Edistancearray" shows the distance between and the surfaces for the feature combination.
Using ultrasonic to classify road surface