Skip to content
← ProjectsTUM.ai Makeathon 2026 · osapiens track

Finding the missing green

Detecting post-2020 deforestation from Sentinel-1 and Sentinel-2 imagery fused with AlphaEarth embeddings.

Result
4th of 130+ teams
Built with
Luis Dehlwes, Mark Mandzak
Stack
Sentinel-1/2 · AlphaEarth embeddings · Model ensembles · AMD MI300X
the four of us at kickoff, before the sleep deprivation set in
the four of us at kickoff, before the sleep deprivation set in

My second hackathon, and I signed up with one question I wanted a straight answer to: was I actually any good at this, or had the first one just gone my way? 550-plus hackers, 130-plus teams, and this was the kickoff of the European Hackathon League. Luis Dehlwes, Mark Mandzak, and I went in together.

We placed 4th. I performed much, much better than I expected to.

Picking the hardest thing on the board

A few challenges were on the board and we went straight for the osapiens one: detect post-2020 deforestation from Sentinel-1 and Sentinel-2 imagery, fused with AlphaEarth embeddings. Compute heavy, and one of the hardest things I'd heard about going in. That was the whole reason we took it. If you want to know what you're made of, you don't pick the easy one.

figuring out an approach we did not actually understand yet
figuring out an approach we did not actually understand yet

None of us had touched remote sensing before, and the data punished every sloppy assumption on the spot. We cycled through preprocessing, watched models underperform, rebuilt, ran it again. It came together slowly: feature engineering that respected how the sensors actually see, an ensemble across a few model families instead of betting the whole thing on one, post-processing that held up on tiles the model had never seen.

cooking the AMD GPU, no notes
cooking the AMD GPU, no notes

We had an AMD MI300X and we ran it hot. The leaderboard score crept up, then crept up again. 4th, out of 130-plus teams.

The lecture hall was ours

The actual hacking is the part I keep telling people about. We somehow ended up with an entire lecture hall to ourselves. Still not sure how okay that was, but we had it, so we used it, and we slept in it. Every second felt like it counted, so the grind followed us out the door, onto the U-Bahn, everywhere.

the grind does not stop for the u-bahn
the grind does not stop for the u-bahn

One morning I'd stepped out and was working from another building, on Discord with Luis and Mark back in the hall. We were screen-sharing, so my face got projected onto the wall of the lecture hall. There I was, several feet tall, presiding over an empty room while my two teammates worked underneath me. One of my favorite images from any of these.

me, on the wall, from a different building entirely
me, on the wall, from a different building entirely
mark and luis, getting what little sleep there was
mark and luis, getting what little sleep there was

We did not sleep much. We hacked a lot. That was the trade.

What I actually took from it

The final product came out better than we expected, but it wasn't the best in the room, and I want to be honest about why. Our approach was a bit classic. Solid, careful, classic. We could have put more work into the approach itself and pushed it somewhere less obvious. That's the note I left the weekend with, and it's a fair one.

Still: 4th out of 130-plus, on the hardest challenge on the board, in a field none of us knew when we walked in. We didn't win, and that genuinely doesn't matter to me. This was Round 1 of the European Hackathon League, and we qualified for the next round, which sent us to Paris. That we were excited about.

round 1, done, and somehow through to the next one
round 1, done, and somehow through to the next one

Second hackathon, a big one, and a real answer to the question I walked in with. Incredible fun. Really glad I was there.

Built with Luis Dehlwes and Mark Mandzak. Thanks to TUM.ai, osapiens, and AMD, and to the full roster of sponsors that made the weekend what it was.

filed: APR 2026Repository