553 research outputs found
Mapping Agricultural Soil in Greenhouse Using an Autonomous Low-Cost Robot and Precise Monitoring
Our work is focused on developing an autonomous robot to monitor greenhouses and large fields. This system is designed to operate autonomously to extract useful information from the plants based on precise GPS localization. The proposed robot is based on an RGB camera for plant detection and a multispectral camera for extracting the different special bands for processing, and an embedded architecture integrating a Nvidia Jetson Nano, which allows us to perform the required processing. Our system uses a multi-sensor fusion to manage two parts of the algorithm. Therefore, the proposed algorithm was partitioned on the CPU-GPU embedded architecture. This allows us to process each image in 1.94 s in a sequential implementation on the embedded architecture. The approach followed in our implementation is based on a Hardware/Software Co-Design study to propose an optimal implementation. The experiments were conducted on a tomato farm, and the system showed that we can process different images in real time. The parallel implementation allows to process each image in 36 ms allowing us to satisfy the real-time constraints based on 5 images/s. On a laptop, we have a total processing time of 604 ms for the sequential implementation and 9 ms for the parallel processing. In this context, we obtained an acceleration factor of 66 for the laptop and 54 for the embedded architecture. The energy consumption evaluation showed that the prototyped system consumes a power between 4 W and 8 W. For this raison, in our case, we opted a low-cost embedded architecture based on Nvidia Jetson Nano
Pragma-Oriented Parallelization of the Direct Sparse Odometry SLAM Algorithm
Monocular 3D reconstruction is a challenging computer
vision task that becomes even more stimulating when we
aim at real-time performance. One way to obtain 3D reconstruction
maps is through the use of Simultaneous Localization
and Mapping (SLAM), a recurrent engineering problem, mainly
in the area of robotics. It consists of building and updating a
consistent map of the unknown environment and, simultaneously,
saving the pose of the robot, or the camera, at every given time
instant. A variety of algorithms has been proposed to address
this problem, namely the Large Scale Direct Monocular SLAM
(LSD-SLAM), ORB-SLAM, Direct Sparse Odometry (DSO) or
Parallel Tracking and Mapping (PTAM), among others. However,
despite the fact that these algorithms provide good results, they
are computationally intensive.
Hence, in this paper, we propose a modified version of DSO
SLAM, which implements code parallelization techniques using
OpenMP, an API for introducing parallelism in C, C++ and
Fortran programs, that supports multi-platform shared memory
multi-processing programming. With this approach we propose
multiple directive-based code modifications, in order to make the
SLAM algorithm execute considerably faster. The performance
of the proposed solution was evaluated on standard datasets and
provides speedups above 40% without significant extra parallel
programming effort.info:eu-repo/semantics/publishedVersio
MICP-L: Mesh-based ICP for Robot Localization using Hardware-Accelerated Ray Casting
Triangle mesh maps have proven to be a versatile 3D environment
representation for robots to navigate in challenging indoor and outdoor
environments exhibiting tunnels, hills and varying slopes. To make use of these
mesh maps, methods are needed that allow robots to accurately localize
themselves to perform typical tasks like path planning and navigation. We
present Mesh ICP Localization (MICP-L), a novel and computationally efficient
method for registering one or more range sensors to a triangle mesh map to
continuously localize a robot in 6D, even in GPS-denied environments. We
accelerate the computation of ray casting correspondences (RCC) between range
sensors and mesh maps by supporting different parallel computing devices like
multicore CPUs, GPUs and the latest NVIDIA RTX hardware. By additionally
transforming the covariance computation into a reduction operation, we can
optimize the initial guessed poses in parallel on CPUs or GPUs, making our
implementation applicable in real-time on a variety of target architectures. We
demonstrate the robustness of our localization approach with datasets from
agriculture, drones, and automotive domains
Towards 6D MCL for LiDARs in 3D TSDF Maps on Embedded Systems with GPUs
Monte Carlo Localization is a widely used approach in the field of mobile
robotics. While this problem has been well studied in the 2D case, global
localization in 3D maps with six degrees of freedom has so far been too
computationally demanding. Hence, no mobile robot system has yet been presented
in literature that is able to solve it in real-time. The computationally most
intensive step is the evaluation of the sensor model, but it also offers high
parallelization potential. This work investigates the massive parallelization
of the evaluation of particles in truncated signed distance fields for
three-dimensional laser scanners on embedded GPUs. The implementation on the
GPU is 30 times as fast and more than 50 times more energy efficient compared
to a CPU implementation
Data Flow ORB-SLAM for Real-time Performance on Embedded GPU Boards
The use of embedded boards on robots, including unmanned aerial and ground vehicles, is increasing thanks to the availability of GPU equipped low-cost embedded boards in the market. Porting algorithms originally designed for desktop CPUs on those boards is not straightforward due to hardware limitations. In this paper, we present how we modified and customized the open source SLAM algorithm ORB-SLAM2 to run in real-time on the NVIDIA Jetson TX2. We adopted a data flow paradigm to process the images, obtaining an efficient CPU/GPU load distribution that results in a processing speed of about 30 frames per second. Quantitative experimental results on four different sequences of the KITTI datasets demonstrate the effectiveness of the proposed approach. The source code of our data flow ORB-SLAM2 algorithm is publicly available on GitHub
- …