Parallelization of a Vine Trunk Detection Algorithm For a Real Time Robot Localization System

Developing ground robots for crop monitoring and harvesting in steep slope vineyards is a complex challenge due to two main reasons: harsh condition of the terrain and unstable localization accuracy obtained with Global Navigation Satellite System (GNSS). In this context, a reliable localization system requires an accurate detector for high density of natural/artificial features. In previous works, we presented a novel visual detector for Vineyards Trunks and Masts (ViTruDe) with high levels of detection accuracy. However, its implementation on the most common processing units - central processing units (CPU), using a standard programming language (C/C++), is unable to reach the processing efficiency requirements for real time operation. In this work, we explored parallelization capabilities of processing units, such as graphics processing units (GPU), in order to accelerate the processing time of ViTruDe. This work gives a general perspective on how to parallelize a generic problem in a GPU based solution, while exploring its efficiency when applied to the problem at hands. The ViTruDe detector for GPU was developed considering the constraints of a cost-effective robot to carry-out crop monitoring tasks in steep slope vineyard environments. We compared the proposed ViTruDe implementation on GPU using Compute Unified Compute Unified Device Architecture(CUDA) and CPU, and the achieved solution is over eighty times faster than its CPU counterpart. The training and test data are made public for future research work. This approach is a contribution for an accurate and reliable localization system that is GNSS-free.

[1]  Sebastian Thrun,et al.  Simultaneous Localization and Mapping , 2008, Robotics and Cognitive Approaches to Spatial Mapping.

[2]  Raul Morais,et al.  Localization Based on Natural Features Detector for Steep Slope Vineyards , 2019, J. Intell. Robotic Syst..

[3]  Flavio Fontana,et al.  Autonomous, Vision‐based Flight and Live Dense 3D Mapping with a Quadrotor Micro Aerial Vehicle , 2016, J. Field Robotics.

[4]  António Paulo Gomes Mendes Moreira,et al.  Towards a Reliable Monitoring Robot for Mountain Vineyards , 2015, 2015 IEEE International Conference on Autonomous Robot Systems and Competitions.

[5]  Armando Sousa,et al.  Agricultural Wireless Sensor Mapping for Robot Localization , 2015, ROBOT.

[6]  Hugh Durrant-Whyte,et al.  Simultaneous localization and mapping (SLAM): part II , 2006 .

[7]  Guy Zaidner,et al.  Multisensory Data Fusion for Autonomous Vineyard Sprayer Robot Navigation , 2014 .

[8]  Stephen A. Jarvis,et al.  Achieving Portability and Performance through OpenACC , 2014, 2014 First Workshop on Accelerator Programming using Directives.

[9]  Matti Pietikäinen,et al.  A comparative study of texture measures with classification based on featured distributions , 1996, Pattern Recognit..

[10]  Z. Kurt-Yavuz,et al.  A comparison of EKF, UKF, FastSLAM2.0, and UKF-based FastSLAM algorithms , 2012, 2012 IEEE 16th International Conference on Intelligent Engineering Systems (INES).

[11]  Max Grossman,et al.  Professional CUDA C Programming , 2014 .

[12]  Yael Edan,et al.  Harvesting Robots for High‐value Crops: State‐of‐the‐art Review and Challenges Ahead , 2014, J. Field Robotics.

[13]  Eduardo Ros,et al.  A Comparison of FPGA and GPU for Real-Time Phase-Based Optical Flow, Stereo, and Local Image Features , 2012, IEEE Transactions on Computers.

[14]  Chih-Jen Lin,et al.  LIBSVM: A library for support vector machines , 2011, TIST.

[15]  Ricardo Carelli,et al.  Agricultural Robotics: Unmanned Robotic Service Units in Agricultural Tasks , 2013, IEEE Industrial Electronics Magazine.

[16]  Sebastian Thrun,et al.  Robotic mapping: a survey , 2003 .

[17]  Gianfranco Visentin,et al.  Towards orbital based global rover localization , 2015, 2015 IEEE International Conference on Robotics and Automation (ICRA).

[18]  Ricardo Carelli,et al.  Optimized EIF-SLAM algorithm for precision agriculture mapping based on stems detection , 2011 .

[19]  Antonios Gasteratos,et al.  Semantic mapping for mobile robotics tasks: A survey , 2015, Robotics Auton. Syst..

[20]  Ke Lu,et al.  Parallel programing templates for remote sensing image processing on GPU architectures: design and implementation , 2014, Computing.

[21]  António Paulo Moreira,et al.  Towards a Reliable Robot for Steep Slope Vineyards Monitoring , 2016, J. Intell. Robotic Syst..

[22]  Matti Pietikäinen,et al.  Texture classification by center-symmetric auto-correlation, using Kullback discrimination of distributions , 1995, Pattern Recognit. Lett..