Open Access Paper
24 May 2022 Research of garbage salvage system based on deep learning
Wang Yang, Jin Che, Lijia Zhang, Mingfa Ma
Author Affiliations +
Proceedings Volume 12260, International Conference on Computer Application and Information Security (ICCAIS 2021); 1226014 (2022) https://doi.org/10.1117/12.2637385
Event: International Conference on Computer Application and Information Security (ICCAIS 2021), 2021, Wuhan, China
Abstract
The increase in surface trash salvage tasks has led to problems such as high staff workload, high labor costs, and low work efficiency. A garbage salvage system with autonomous cruising, identification, and detection is designed for this problem. This paper is based on deep learning technology to detect surface garbage and salvage garbage by robotic arm to solve the problem of low intelligence of surface garbage salvage as well as the problem caused by rising labor cost and insufficient labor, and to improve the efficiency of surface garbage salvage task. The system is equipped with a ROS robot operating system and uses lidar to acquire environmental information, realize map construction and autonomous cruise of the salvage vessel, use the YOLO v4 target detection model to detect garbage, and then apply the detected target and location information to the intelligent garbage salvage system. Five common types of garbage on the water surface are collected, and the average detection speed reaches 45 FPS and the average recognition accuracy is up to 88% through experimental verification, meeting the real-time system application.

1.

INTRODUCTION

In recent years, with the rapid growth of my country’s economy and the improvement of people’s living standards, a large amount of rubbish has been produced, posing a huge threat to the environment and ecology. When garbage flows into lakes or oceans, it will not only pollute the water and cause harm to aquatic life, but also threaten human health. Therefore, the task of cleaning up water surface garbage is imminent.

With the continuous development of computer hardware and computer vision technologies, the application fields of deep learning are becoming wider and wider. Target detection is a more important application part. Only by improving the accuracy and speed of target detection can we achieve better intelligence in practical applications. The garbage salvage system is a complex intelligent system that can operate without human intervention. The entire system involves key technologies such as robotic arm movement, autonomous cruise, and target detection. In recent years, technologies such as computers, artificial intelligence, and hardware have developed rapidly. With the promotion of practical application requirements, intelligent surface unmanned boats will play an important role in both military and civilian fields1. The hardware of the garbage salvage system in this article is composed of monocular camera, lidar, bottom encoder, robotic arm, etc. Use the open-source Robot Operating System (ROS) and deep learning technology to complete the automatic salvage of surface garbage.

The chapter structure of this article is as follows: Section 1 introduces the research background of this article. Section 2 describes the design of the intelligent garbage salvage system, including hardware system, software system architecture, garbage detection, autonomous cruise, and robotic arm control modules. Section 3 introduces the experimental process and results of this system. Section 4 summarizes the full-text work.

2.

SYSTEM DESIGN

In this paper, the surface garbage salvage system will cruise autonomously according to the optimal route planned. The garbage salvage system consists of four parts: autonomous cruise, target positioning, motion control, and garbage salvage. First, start the relevant ROS node, and complete the map construction based on the environmental information obtained by the lidar and the mapping algorithm. Then, the navigation algorithm is used for path planning to realize the autonomous cruise of the salvage ship. At the same time, open the camera to detect and locate garbage. When the garbage information is detected, the garbage location information is transmitted to the bottom layer of STM32, and the control board drives the mechanical arm to salvage the garbage. The system can automatically collect water surface garbage and realize the efficiency and intelligence of the garbage salvage system. The working process of the garbage salvage system is shown in Figure 1.

Figure 1.

Flow chart of garbage salvage system.

00207_psisdg12260_1226014_page_2_1.jpg

2.1.

Hardware design of garbage salvage system

The hardware used in the garbage salvage system in this article mainly includes STM32, Arduino UNO, Raspberry Pi, monocular camera, motor, lidar sensor, and four-servo robotic arm. The STM32 development board is the bottom control board of the salvage ship. Lidar is mainly used for map construction, obstacle detection and location of unmanned ships on available maps. The system uses a 5G wireless router to build a local area network. The portable computer serves as the host of the ROS system. Sensors such as lidar and monocular cameras are connected to the Raspberry Pi. Use ROS distributed communication to transfer all sensor data to the local area network. The PC host computer is used to calculate and analyze the collected environmental information data and the attitude information of the unmanned ship. The hardware design framework of the garbage salvage system is shown in Figure 2.

Figure 2.

Garbage salvage system hardware design.

00207_psisdg12260_1226014_page_2_2.jpg

2.2.

Software design of garbage salvage system

The garbage salvage system in this article is built on the basis of the Robot Operating System (ROS)2 and the Ubuntu system. ROS is an open-source robot operating system, which provides class operating system services and is easy to develop. Both the PC host and Raspberry Pi slave in this system are installed with Ubuntu 16.04 and kinetic version ROS. Path planning and target detection algorithms are both carried in the ROS system. The two-dimensional grid map is created using the Gmapping-SLAM algorithm, which uses environmental information data scanned by lidar, IMU attitude information, and odometer information, then combining with the path planning A* algorithm, and calling the move_base package of ROS to realize the autonomous cruise of the garbage salvage ship. The garbage detection algorithm uses the YOLO v4 model to identify and locate the target in each frame of the video. The video is returned by the monocular camera in front of the ship.

Algorithms such as map construction, path planning, and target detection all require a lot of calculations. Therefore, this system uses the ROS distributed communication processing framework3 to transmit the video data, lidar data, and mileage data collected by the main controller to the host computer for processing.

The basic process of target detection is shown in Figure 3: collect garbage picture data to make a data set; perform preprocessing operations such as segmentation, deduplication, and rotation correction on the training set; then train the model and tune it on a workstation with GPU-accelerated computing; finally, deploy the trained model to the ROS host, and perform real-time online detection of the information stream collected by the camera.

Figure 3.

Basic flow chart of target detection.

00207_psisdg12260_1226014_page_3_1.jpg

The garbage detection module in this article uses the YOLO v4 network4, and the structure of the network is shown in Figure 4. This network includes CSPDarknet53 backbone network, SPP, PANet and HEAD.

Figure 4.

YOLO v4 network structure.

00207_psisdg12260_1226014_page_3_2.jpg

The YOLO v4 backbone network is based on the YOLO v3 network5 with the addition of the CSP4 structure. And the Mish activation function is added to the backbone network to replace the Relu activation function. It is used to reduce the calculation amount of the algorithm while ensuring the accuracy of the detection. The Mish activation function is shown in equation (1):

00207_psisdg12260_1226014_page_4_1.jpg

The Dropblock used in Yolo v4 is a regularization method to alleviate overfitting. Dropblock is very flexible and can customize different combinations. The probability of discarding can be modified in various stages of training, and it performs better in the convolutional network.

The SPP4 module is applied to the last layer of the backbone network feature extraction, which significantly increases the receptive field, can better separate the context features, and the network operation speed remains almost unchanged. The PANet structure performs feature fusion on the input information, which can accurately preserve the spatial structure6. The extracted feature information is input to the Head layer, and the results of the prediction layer are combined to make the final prediction.

The loss function of the YOLO v4 algorithm is consists of three parts: regression box prediction loss LCIoU, confidence loss LConf, and classification loss Lcls. The YOLO v4 loss function losstotal algorithm is shown in Table 1.

Table 1.

Loss function algorithm.

  • IoU is the Intersection-over-Union between the prediction box and the real box.

  • b represents the coordinates of the center point of the prediction box.

  • v represents the similarity coefficient of the metric aspect ratio.

  • ρ is the Euclidean distance between the center points of the two boxes.

  • 00207_psisdg12260_1226014_page_5_1.jpg is the prediction confidence.

  • 00207_psisdg12260_1226014_page_5_2.jpg is the actual confidence level.

  • 00207_psisdg12260_1226014_page_5_3.jpg, 00207_psisdg12260_1226014_page_5_4.jpg respectively represent the predicted probability of the predicted category and the actual category.

  • 00207_psisdg12260_1226014_page_5_5.jpg, 00207_psisdg12260_1226014_page_5_6.jpg respectively indicate that the predicted bounding box contains the target and does not contain the target.

  • m is the diagonal distance between the prediction box and the smallest enclosed area of the real box.

2.3.

Autonomous cruise

This system uses RPLIDAR A3 lidar to complete the map building fusion and obstacle avoidance functions. RPLIDAR A3 has a high-speed laser ranging and sampling capability of 16000 times per second and a measurement range of 25 meters in radius. It has a good ability to anti-sunlight interference and is suitable for constructing outdoor SLAM maps. First, gather the coordinate transformation and topic publishing nodes in the startup file of Gmapping. Then start the lidar node connected with the slave Raspberry Pi and the Gmapping mapping node through the master control machine. After, the unmanned ship uses the surrounding environment information data collected by the lidar to map the navigation environment. Finally, save the unmanned ship navigation environment map in the working directory through the map_saver node, and prepare the established raster map for subsequent use.

First, run the navigate navigation node, use the Rviz visualization tool in ROS to give the robot’s initial position, and add the topic that needs to display the target point. Then, run the multipoint navigation program to enable the patrol_nav node. Use the A* algorithm to find the shortest path and use it as the global path to make the base_local_planner package get the local path7-9. Finally, calculate the required real-time speed and angle, and publish this information as a control signal to the hardware platform. Automatically run the set node file after booting and automatically cruise by importing the manually selected target point.

2.4.

Robotic arm design

The robot arm mainboard uses Arduino UNO, an Arduino development board based on ATmega328P. It has 14 digital input/output pins, of which 6 can be used for PWM output. It is used to control the up and down, left and right, front and rear, and grabbing actions of the four servos, and can complete the task of collecting small target garbage. It contains the functions required by the microcontroller. Connect it to the USB interface of the central controller for driving. The PWM output waveform controls the steering gear. The high-level duration of the waveform corresponds to the angle of rotation, achieving a rotation angle of 0-180°.

3.

SYSTEM EXPERIMENT

In order to eliminate the influence of wind and other external factors on the water surface, the experiment site was selected indoors. We choose a 4*3-meter swimming pool for simulation. The experimental platform of the system is shown in Figure 5.

Figure 5.

Experiment platform.

00207_psisdg12260_1226014_page_6_1.jpg

3.1.

Experimental setup

The target detection algorithm in this system is built using the Darknet deep learning framework, and the programming languages are C++ and Python. The initial value of the learning rate (LR) in the garbage detection algorithm is 0.001, the attenuation is set to 0.0005, and the maximum number of iterations is 10,000. The model is deployed in the operating system of Linux Ubuntu 16.04. The GPU configuration is GTX3060. The environment of the computing platform is CUDA 10.1 and cuDNN 7.6.4. The CPU frequency is 2.90GHz, and the memory is 16GB.

3.2.

Experiment procedure

First, the roscore node manager in the host computer is enabled, and at the same time we run the chassis communication node, lidar node and Gmapping mapping program to create a two-dimensional grid map and save it. Then, we run the navigation program and target detection program to complete the task of garbage identification and positioning. Finally, the obtained relative position of the garbage is sent to the robotic arm through the serial port to salvage the trash.

3.3.

Dataset

According to the classification statistics of floating garbage on the water surface, plastic garbage accounted for about 41%, foam and wood product garbage accounted for about 19% and 15%, respectively10. Therefore, the system collects five types of common garbage on the water through the Internet and offline: plastic, glass bottles, cardboard, metal garbage, and foam snack boxes. We selected 5000 pictures as the data set, divided the data set into the training set and test set evenly according to the ratio of 4:1, and labelled the data set with the LabelImg labelling tool.

3.4.

Experimental results

The real-time detection effect diagram of garbage salvage is shown in Figure 6.

Figure 6.

Real-time detection effect diagram.

00207_psisdg12260_1226014_page_6_2.jpg

The system detects the five types of garbage collected, and their accuracy, precision and recall rates are shown in Table 2. The information collected by the camera is detected through the trained model, the real-time detection speed can reach 45fps, and the average recognition accuracy is as high as 88.8%. The detected information is sent to the robotic arm through the serial port, and the robotic arm salvages the garbage, which can realize the function of the overall garbage salvage system.

Table 2.

Comparison table of detection performance of various types of garbage.

Garbage kindsPrecision (%)Recall (%)Accuracy (%)
Plastic87.1192.3392
Glass bottle82.5189.3288
Cardboard90.3494.8795
Metal76.9180.2179
Fast food box82.3188.5888

4.

CONCLUSION

We designed an autonomous garbage salvage system and verified it by simulating the real environment. The system can realize the identification and positioning of garbage and autonomous cruise according to the designated route. It can significantly reduce the workload of manually salvaging garbage on the water and realize the automatic salvage of garbage. In the process of real-time garbage detection, the recognition speed is fast, and the accuracy is high. The design of the robotic arm can clean up plastic, glass bottles, cardboard, metal garbage, and foam fast food box garbage to meet real-time applications. The garbage salvage system we designed has practical significance for reducing floating garbage on the water and maintaining the balance of the ecological environment.

REFERENCES

[1] 

Xu, M., “Unmanned surface vessel: Marching towards the future,” China Ship Survey, 01 56 –59+108-109 (2018). Google Scholar

[2] 

Quigley, M., Conley, K., Gerkey, B. P., Faust, J., Foote, T., Leibs, J., Wheeler, R. and Ng, A. Y., “ROS: An open-source robot operating system,” ICRA Work. on Open,” Source Software, 3 (3.2), 5 (2009). Google Scholar

[3] 

Cousins, S., “Welcome to ROS topics,” IEEE Robotics & Automation Magazine, 17 (1), 13 –14 (2010). https://doi.org/10.1109/MRA.2010.935808 Google Scholar

[4] 

Bochkovskiy, A., Wang, C. Y. and Liao, H. Y. M., “Yolov4: Optimal speed and accuracy of object detection,” arXiv:2004, 10934 (2020). Google Scholar

[5] 

Redmon, J. and Farhadi, A., “YOLOv3: An incremental improvement,” arXiv:1804, 2767 (2018). Google Scholar

[6] 

Liu, S., Qi, L., Qin, H., Shi, J. P. and Jia, J. Y., “Path aggregation network for instance segmentation,” in Proc. of the IEEE Conf. on Computer Vision and Pattern Recognition, 8759 –8768 (2018). Google Scholar

[7] 

Chen, J., “The Research of Path Planning Algorithm for Unmanned Rescue Ship,” Wuhan (2013). Google Scholar

[8] 

Bi, X. S., “[Lidar-Based Unmanned Ship Slam Obstacle Avoidance Technology],” Dalian (2019). Google Scholar

[9] 

Ou, Q. Y., Zhang, J. T. and Li X. H., “Research on automatic path planning of unmanned ship based on deep learning,” Ship Science and Technology, 43 (08), 70 –72 (2021). Google Scholar

[10] 

Yan, W. L. and Yuan, P. H., “Coastal zone natural resources development and protection and its international experience,” Forum of World Economics & Politics, (06), 117 –122 (2009). Google Scholar
© (2022) COPYRIGHT Society of Photo-Optical Instrumentation Engineers (SPIE). Downloading of the abstract is permitted for personal use only.
Wang Yang, Jin Che, Lijia Zhang, and Mingfa Ma "Research of garbage salvage system based on deep learning", Proc. SPIE 12260, International Conference on Computer Application and Information Security (ICCAIS 2021), 1226014 (24 May 2022); https://doi.org/10.1117/12.2637385
Advertisement
Advertisement
RIGHTS & PERMISSIONS
Get copyright permission  Get copyright permission on Copyright Marketplace
KEYWORDS
Target detection

Robotics

Intelligence systems

Operating systems

Back to Top