Ball Erkennung

Translations: de

Ball detection is a key skill that Nao robots must master. In our team, a CNN is used for this purpose. This is to find the ball in small image sections (patches). Details can be found in the team report in chapter 4:

There are a number of different aspects that can be examined in the context of a thesis. There are many different aspects that can be highlighted as part of a thesis. Here are a few ideas that can be implemented. Not all of them have to be dealt with within a thesis.

Compare different CNN architectures

It can be investigated how good a CNN can be on our dataset. This could be done by training a very deep and wide network and comparing it and comparing it to smaller networks that can run on the Nao robot.

The Nao robot has an upper and lower camera. In the lower camera the balls are typically larger than in the upper camera. It can be investigated whether it is useful to train two different nets for the two camera.

The B-Human team uses 3 neural networks for ball recognition. The first network reduces the dimension with convolution and pooling layers. Then a small classification network is applied to the output of the first network. This returns a number between 0 and 1. If the classification result is good enough, the output of the first mesh is passed to the third mesh which returns the center and the radius of the ball in the image. of the ball in the image. Details can be found in the B-Human team report in chapter 4.2.2.

Furthermore, the influence of (Monte Carlo) dropout, pruning, batchnorm, different regularization methods and optimization algorithms can be investigated. Also methods from from the field of "Neural Architecture Search" can be investigated.

Compare differently preprocessed data

The influence of different augmentation methods can be investigated. For example, Augmix:

A big topic in Deep Learning is the use of synthetic data. Here it has to be investigated how well a pre-training on computer generated images of the accuracy on a real data set helps. It would be conceivable to generate targeted images that occur little in the existing data set. For example removed balls. There is already preliminary work in Webots, Unreal Engine and Blender that can be used.

Eigene Ideen

You are welcome to contribute your own ideas. For this, it is worthwhile to take a look at our team report beforehand to see how our image processing pipeline is currently.

Relevant publications and theses:

Possible procedure for the final thesis

We imagine the process as follows.

  • Discussing the topic and getting to know each other
  • Writing an exposé
  • Discussing the exposé and possible adjustments
  • Registration of the work
  • Perform experiments on the provided data sets
  • Evaluating the experiments
  • Writing the final paper
  • Writing an abstract of the results for the NaoTH team report.

Independently send a short status to the Nao team every two weeks.

Information about Nao Team Humboldt

RoboCup Regeln:
Public Github:
Internal Gitlab:

Source code of other RoboCup SPL teams

Public NaoTH Repo:
Public Nao Devils Repo:
Public B-human Repo:

Publication lists of other teams

Possibly work of other teams can be helpful:

B-Human Abschlussarbeiten:
B-Human Publikationen:

Further information

Reviewer: V. Hafner
Adaptive Systems:
Supervision and technical support: Heinrich Mellmann, Stella Alice Schlotter.
Lab work required: possibly
Own PC necessary: yes