  Population growth in the last decades has resulted in the production of about
2.01 billion tons of municipal waste per year. The current waste management
systems are not capable of providing adequate solutions for the disposal and
use of these wastes. Recycling and reuse have proven to be a solution to the
problem, but large-scale waste segregation is a tedious task and on a small
scale it depends on public awareness. This research used convolutional neural
networks and computer vision to develop a tool for the automation of solid
waste sorting. The Fotini10k dataset was constructed, which has more than
10,000 images divided into the categories of 'plastic bottles', 'aluminum cans'
and 'paper and cardboard'. ResNet50, MobileNetV1 and MobileNetV2 were retrained
with ImageNet weights on the Fotini10k dataset. As a result, top-1 accuracy of
99% was obtained in the test dataset with all three networks. To explore the
possible use of these networks in mobile applications, the three nets were
quantized in float16 weights. By doing so, it was possible to obtain inference
times twice as low for Raspberry Pi and three times as low for computer
processing units. It was also possible to reduce the size of the networks by
half. When quantizing the top-1 accuracy of 99% was maintained with all three
networks. When quantizing MobileNetV2 to int-8, it obtained a top-1 accuracy of
97%.
