# Shredded Documents

*English translation by SOTA – AI Community of the Hungarian original. Licensed CC BY-NC-SA 4.0, like the original. Organisers who would like this translation removed can email sota.ai.community@gmail.com.*

**Magyar MI Diákolimpia** (Hungarian AI Olympiad)\
**Task description · Summer National Selection (Nyári Országos Válogató)**\
May 2026

*[Figure: see the original one-pager.]*

## 1. Introduction

Velmora seems to be a peaceful city: it is characterised by old archives, crowded markets, festivals and a dense camera network. Now, however, the city has found itself at the centre of a particularly delicate affair. According to a report by a research group, a sealed data storage device has disappeared that contained a high-performance generative video model. The model can produce realistic faces and voices, so in the wrong hands it could also be used for blackmail, for manufacturing fake news or for staged political incidents.

According to intelligence, the theft was commissioned by an unknown client who uses the code name **Dr. Schmertz**. The model changed hands between two suspects, and a courier was then supposed to take it on to the client. Based on the information available, the handover already took place on 20 May 2026, in the Old Velmora district of the city. According to the reports, the real mastermind of the operation may also have been present at the scene, in disguise, blending into the crowd.

The persons, places and institutions appearing in the task are fictitious.

## 2. The task

Several kinds of evidence are available to you for the investigation: shredded documents, footage from surveillance cameras, the bounding boxes of the persons detected in the images, a pretrained recognition model, and a citizen registry.

The goal is to find out from these data:

- who is on the list of suspects,
- which two suspects carried out the handover,
- who was the client directing things from the background.

## 3. What you receive

The attached notebook contains the story introduction, the description of the subtasks, some starter code snippets and tips that can help you with the first steps.

The data include the following files:

- images of the shredded document strips,
- CCTV footage,
- the bounding box files belonging to the CCTV images,
- a pretrained recognition model,
- documents containing citizen and suspect data.

The documents were cut into vertical strips, and the strips were then shuffled. The strips are 20 pixels wide. The barcode-like band at the top of the documents can help you decide which page a given strip belongs to and where it may have been located in the original document. The band is not necessarily perfectly clean, so it is advisable to use some more robust similarity measure rather than exact pixel matching.

The persons visible in the CCTV footage have bounding boxes. Your task is to crop out these image regions, prepare them appropriately and then run the provided recognition model on them. From the resulting predictions you can tell which citizen or suspect is visible in each piece of footage. The given bounding boxes outline the full figure, not the portrait. The model works only on portraits.

## 4. Subtasks and scoring

The maximum score is 100 points.

1. **Ordering the document strips** – 30 points\
   Restore the shredded documents. The goal is to produce readable pages again from the shuffled strips.
2. **Extracting the suspects' data** – 10 points\
   Extract the names and identifiers of the suspects from the restored documents. These identifiers will later be needed as the class labels of the image recognition model.
3. **Running the recognition model on the CCTV footage** – 25 points\
   Using the bounding boxes, crop out the persons appearing in the images, then give them as input to the pretrained network. Pay particular attention to the input format: the images must be in RGB format and 64×64 pixels, the channel order must match what the model expects, and the normalisation must also be correct.
4. **Identifying the two suspects involved in the handover** – 25 points\
   Based on the model's predictions, find out which suspects are visible in the CCTV footage. Then examine which two suspects came conspicuously close to each other in the same image. The goal of this subtask is to determine between whom the handover took place.
5. **Finding the person directing things from the background** – 10 points\
   According to the investigation, the real client is not on the list of suspects, but is in the citizen registry and also appears in several relevant pieces of CCTV footage. Identify who is hiding behind the code name Dr. Schmertz.

## 5. Submission

The submission must contain the code used for the solution and the results obtained. It must be clear from it:

- how you restored the documents,
- which suspects and identifiers you extracted,
- how you prepared the CCTV image regions for the model,
- whom the model recognised in each piece of footage,
- which two suspects carried out the handover,
- and who was the person directing things from the background.

The aim of the task is not to look through the images by hand, but to build a re-runnable investigation pipeline. A good solution links, step by step, the information extracted from the documents, the images and the tabular data.

For every subtask, the notebook specifies the format in which the evaluator expects the solutions.

## 6. Useful resources

- [NumPy documentation](https://numpy.org/doc/stable/)
- [Pillow documentation (manipulating and creating images)](https://pillow.readthedocs.io/en/stable/)
- [Pandas documentation (handling CSV)](https://pandas.pydata.org/docs/index.html)
- [PyTorch documentation (loading a model)](https://docs.pytorch.org/docs/2.12/index.html)
- [Matplotlib documentation (visualising intermediate results)](https://matplotlib.org/)
