Self-supervised learning for soccer ball detection and beyond: interview with winners of the RoboCup 2025 best paper award

The award-winning research at RoboCup 2025 introduces a self-supervised learning method to improve ball detection in autonomous robots, reducing the need for manual data labeling and opening doors for applications in precision farming.
Presentation of the best paper award at the RoboCup 2025 symposium.
An important aspect of autonomous soccer-playing robots concerns accurate detection of the ball. This is the focus of work by Can Lin, Daniele Affinita, Marco Zimmatore, Daniele Nardi, Domenico Bloisi, and Vincenzo Suriani, which won the best paper award at the recent RoboCup symposium. The symposium takes place alongside the annual RoboCup competition, which this year was held in Salvador, Brazil. We caught up with some of the authors to find out more about the work, how their method can be transferred to applications beyond RoboCup, and their future plans for the competition.
Daniele Affinita: The main challenge we faced was that deep learning generally requires a large amount of labeled data. This is not a major problem for common tasks that have already been studied, because you can usually find labeled datasets online. But when the task is highly specific, like in RoboCup, you need to collect and label the data yourself. That means gathering the data and manually annotating it before you can even start applying deep learning. This process is not scalable and demands a significant human effort.
The idea behind our paper was to reduce this human effort. We approached the problem through self-supervised learning, which aims to learn useful representations of the data. After all, deep learning is essentially about learning latent representations from the available data.
Daniele: First of all, let me introduce what self-supervised learning is. It is a way of learning the structure of the data without having access to labels. This is usually done through what we call pretext tasks. These are tasks that don’t require explicit labels, but instead exploit the structure of the data. For example, in our case we worked with images. You can randomly mask some patches and train the model to predict the missing parts. By doing so, the model is forced to learn meaningful features from the data.
In our paper, we enriched the data by using not only raw images but also external guidance. This came from a larger model which we refer to as the teacher. This model was trained on a different task which is more general than the target task we aimed for. This way the larger model can provide guidance (an external signal) that helps the self-supervision to focus more on the specific task we care about.
In our case, we wanted to predict a tight circle around the ball. To guide this, we used an external pretrained model (YOLO) for object detection, which instead predicts a loose bounding box around the ball. We can arguably say that the bounding box, a rectangle, is more general than a circle. So in this sense, we were trying to use external guidance that doesn’t solve exactly the underlying task.
Daniele: Yes, we deployed it at RoboCup 2025 and showed great improvements over our previous benchmark, which was the model we used in 2024. In particular, we noticed that the final training requires much less data. The model was also more robust under different lighting conditions. The issue we had with previous models was that they were tailored for specific situations. But of course, all the venues are different, the lighting and the brightness are different, there might be shadows on the field. So it’s really important to have a reliable model and we really noticed a great improvement this year.
Daniele: So our team is SPQR. We are from Rome, and we have been competing in RoboCup for a long time.
Domenico Blois: We started in 1998, so we are one of the oldest teams in RoboCup.
Daniele: Yeah, I wasn’t even born then! Our team started with the four-legged robots. And then the league shifted more towards biped robots because they are more challenging, they require balance and, overall it’s harder to walk on just two legs.
Our team has grown a lot during recent years. We have been following a very positive trend, going from 9th place in 2019 to third place at the German Open in 2025, and we got 4th place at RoboCup 2025. Our recent success has attracted more students to the team. So it’s kind of a loop – you win more, you attract more students, and you can work more on the challenges proposed by RoboCup.
Domenico: I want to add that also, from a research point of view, we have won three best paper awards in the last five years, and we have been proposing some new trends towards, for example, the use of LLMs for coding (as a robot’s behaviour generator under the supervision of a human coach). So we are trying to keep the open research field active in our team. We want to win the matches but we also want to solve the research problems that are bound together with the competition.
One of the important contributions of our paper is towards the use of our algorithms outside RoboCup. For example, we are trying to apply the ball detector in precision farming. We want to use the same approach to detect rounded fruits. This is something that is really important for us; to exit the context of Robocup and to use Robocup tools for new approaches in other fields. So if we lose a match, it’s not a big deal for us. We want our students, our team members, to be open minded towards the use of RoboCup as a starting point for understanding teamwork and for understanding how to deal with strict deadlines. This is something that RoboCup can give us. We try to have a team that is ready for every type of challenge, not only within RoboCup, but also other types of AI applications. Winning is not everything for us. We’d prefer to use our own code and not win, than win using code developed by others. This is not optimal for achieving first place, but we want to teach our students to be prepared for the research that is outside of RoboCup.
Domenico: So the last two best papers were kind of visionary papers. In one paper, we wanted to give an insight in how to use the spectators to help the robots score. For example, if you cheer louder, the robots tend to kick the ball. So this is something that is not actually used in the competition now, but is something more towards the 2050 challenge. So we want to imagine how it will be 10 years from now.
The other paper was called “play everywhere”, so you can, for example, play with different types of ball, you can play outside, you can even play without a specific goal, you can play using Coca-Cola cans as goalposts. So the robot has to have a general approach that is not related to the specific field used in RoboCup. This is in contrast to other teams that are very specific. We have a different approach and this is something that makes it harder for us to win the competition. However, we don’t want to win the competition, we want to achieve this goal of having, in 2050, this match between the RoboCup winners and the FIFA World Cup winners.
Vincenzo Suriani: Our lab has been involved in some different projects relating to farming applications. The Flourish project ran from 2015 – 2018. More recently, the CANOPIES project has focussed on precision agriculture for permanent crops where farmworkers can efficiently work together with teams of robots to perform agronomic interventions, like harvesting or pruning.
We have another project that is about detecting and harvesting grapes. There is a huge effort in bringing knowledge back from RoboCup to other projects, and vice versa.
Domenico: Our vision now is to focus on the new generation of humanoid robots. We participated in a new event, the World Humanoid Robot Games, held in Beijing in August 2025, because we want to use the platform of RoboCup for other kinds of applications. The idea is to have a single platform with software that is derived from RoboCup code that can be used for other applications. If you have a humanoid robot that needs to move, you can reuse the same code from RoboCup because you can use the same stability and walking algorithms.
Source: Robohub















