PSRGAN super-resolution
PSRGAN · ACTIVEJuFo national · 2nd place

PSRGAN, a Probabilistic Super-Resolution GAN for Satellite Imagery

4× GAN upscaler for Sentinel-2 tiles with per-pixel uncertainty. 2nd place at the JuFo national final 2026.

Generative Adversarial NetworksSentinel-2PyTorchBNNsSWAGUncertaintyGeoscience
Deforestation monitoring PSRGAN
PSRGAN · USECASE TEST

Deforestation segmentation in the Amazon with K-Means

Change-detection with K-Means segmentation on PSRGAN super-resolved Sentinel-2 tiles to track forest loss more accurately.

K-MeansSegmentationSentinel-2PyTorchEnvironmentUncertaintyGeoscience
3D uncertainty visualization PSRGAN
PSRGAN · USECASE TEST

Uncertainty based geoanalytics segmentation for Smart Farming

Downstream segmentation on PSRGAN outputs using per-pixel uncertainty maps for geoanalytics in agriculture.

SegmentationU-NetSentinel-2PyTorchBNNsUncertaintyGeoscience
Spiking network NMNIST
SNNs · RESEARCH EXPERIMENT

Spiking CNN on neuromorphic MNIST with population coding

Surrogate-gradient spiking CNN on N-MNIST using population coding (>98% accuracy).

snnTorchClassificationN-MNISTPopulation codingPopulation coding
Transit SNN Exoplanet Detection
SNNs · RESEARCH EXPERIMENT

SNN for exoplanet classification using the transit method

Spiking network for low-power detection of exoplanet transits in Kepler/TESS lightcurves.

snnTorchClassificationSpike EncodingTransitsSpacePopulation coding
SNN Spikes
SNNs · RESEARCH EXPERIMENT

SNN experiments on MNIST

Basic spiking network experiments on MNIST inspired by the snnTorch tutorials.

snnTorchClassificationMNISTSpike EncodingPopulation Coding
Forward-Forward algorithm
SNNs · RESEARCH EXPERIMENT

Experimenting with Hinton's Forward-Forward algorithm

Reimplementation and experiments with Hinton's Forward-Forward learning algorithm as an alternative to backpropagion.

Forward-ForwardPyTorchLearning Algorithms
Spike encoding
SNNs · RESEARCH EXPERIMENT

Spike Encoding algorithms (Rate, Latency, Delta)

Implementation and comparison of rate coding, latency coding, and delta modulation for spike encoding.

Spike EncodingsnnTorchRate EncodingLatency EncodingDelta Encoding
Neuron simulations
SNNs · RESEARCH EXPERIMENT

Simple neuron simulations

LIF (Lapicque & Alpha) and Izhikevich neuron simulations with snnTorch and Python.

LIFSimulationComputational NeurosciencesnnTorchNeuron Models
Knowledge distillation
DL · RESEARCH EXPERIMENT

Testing 3 Ways of CNN Knowledge Distillation for CIFAR-10 classification

Comparison of standard knowledge distillation, cosine loss on hidden states, and intermediate regressor KD on a CNN to classify CIFAR-10 images.

DistillationPyTorchCNNClassificationComputer VisionCIFAR-10
EvidenzLLM BWKI finalist 2025
RAG · ENTERPRISEBWKI finalist

EvidenzLLM: verified LLM responses

RAG system that grounds LLM answers in evidence and refuses when coverage is insufficient via NLI models. BWKI 2025 top-10.

RAGNLITemperatureMistralCosine SimilarityOkapi BM25Cross Encoding
Cenabot buildspace robot
BUILDSPACE S5 · AUTONOMOUS DRIVING

Cenabot: autonomous car to bring snacks

Small autonomous car using a camera, ultrasonic sensor, and wifi-connected RaspberryPi to bring snacks to my laptop.

RoboticsRaspberryPiComputer VisionPyTorchUltrasonicAutonomous Car
Autonomous driving simulator
FROM SCRATCH · AUTONOMOUS DRIVING

Autonomous Car Simulation with Neural Network built from scratch

Self Driving Car driven by a Neural Network built from scratch in a simple 2D traffic simulation.

From scratchSimulationAutonomous CarJS
News sentiment RAG
RAG · GOOGLE GENAI COURSE

News sentiment analysis agentic RAG system

Agentic RAG pipeline that retrieves news, scores sentiment, and synthesises a summary using LangChain.

RAGSentimentAgentsGeminiLangChainVector SearchKaggle
FinBridge
RAG · ENTERPRISE

FinBridge: AI financial document analysis

Internship project with fintech startup DocuBridge. Flask webapp to analyze your Excel financial reports. Preprocessing and LLM-based analysis.

RAGFinanceAgentsOpenAIFlaskExcel
CAD LLM webapp
RAG · ENTERPRISE

CAD LLM-preprocessing webapp

Webapp that converts STEP geometries into relational feature graphs to enable LLM-analysis. Colab with Volkswagen IE.

RAGCADFlaskOpenAISTEP
LEGO robot
FROM SCRATCH · AUTONOMOUS DRIVING

Lego reinforcement learning robot with no libraries

Distance-based RL neural network for a LEGO SPIKE robot built from scratch with no ML libraries, just pure Math.

From ScratchLEGO SPIKERLAutonomous Car
LiDAR CNN
GERMAN AEROSPACE CENTER · COMPUTER VISION

CNN for person detection in 3D LiDAR point cloud data

Part of an internship at the German Aerospace Center. CNN trained on a handmade dataset to classify humans in LiDAR point clouds with >98% accuracy.

LiDARCNNClassificationPyTorchBlickfeld
YOLOv8 fine-tuning
EXPERIMENT · COMPUTER VISION

YOLOv8 Finetuning for wildfire detection

YOLOv8 fine-tuning to detect wildfires and smoke for early combat measures..

YOLOv8WildfireObject DetectionComputer VisionPyTorchEnvironment
Tomato grading CNN
EXPERIMENT · COMPUTER VISION

Tomato grading binary classification CNN

CNN quality grader for tomatoes: binary classification into fresh/rotten. Agriculture-vision project for quick sorting.

CNNAgricultureClassificationPyTorchComputer Vision
MPRNet restoration
EXPERIMENT · AUTONOMOUS DRIVING

MPRNet for image Deraining

Multi-stage progressive image restoration network (MPRNet) to derain images for autonomous driving.

MPRNetRestorationPyTorchDerainingComputer VisionU-Net
Comma.ai calibration challenge
CHALLENGE · AUTONOMOUS DRIVING

Predicting car movements in Videos: comma.ai calibration challenge

Predicting vehicle movement and steering from dashcam video. Problem statement in the comma.ai calibration challenge.

CNNAutonomous CarComma.aiPyTorchComputer Vision
Transfer learning
EXPERIMENT · COMPUTER VISION

Transfer Learning CNN to classify Ants & Bees

Fine-tuning the pretrained ResNet18 on a tiny Ants & Bees dataset to accurately perform binary classification. Includes article and video walkthrough.

Transfer LearningResNet18FinetuningCNNClassificationPyTorchComputer Vision
Transfer learning segmentation
EXPERIMENT · COMPUTER VISION

Transfer Learning Segmentation CNN for Pedestrian Detection

Finetuning the Mask-R-CNN on the PennFudanPed database to detect pedestrians. Part two of the transfer learning article and video.

Transfer LearningSegmentationFinetuningCNNObject DetectionPyTorchComputer Vision
Small datasets research
RESEARCH · ARTICLE

Research on methods to deal with small datasets

Experimenting and explaining multiple methods to combat data scarcity in a 40-min article. From monte carlo dropout to BNNs and Optimal Transport.

ArticleAugmentationMC DropoutBNNsOTSWA
Bayesian neural network
BNNs · EXPERIMENTS

Bayesian Neural Network Test on MNIST

Weight-uncertainty networks trained on MNIST for a quick test to experiment with BNN architectures and methods.

BNNsClassificationComputer VisionUncertaintyMNISTPyTorch
fish classification CNN
EXPERIMENT · COMPUTER VISION

Fish-species classification CNN

Convolutional Neural Network trained to classify 468 species of fish. Transfer Learning with ResNet18 baseline.

CNNClassificationComputer VisionPyTorchTransfer LearningFinetuning
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Degrees of Separation using Breadth-First Search (BFS)

Find the shortest path between two actors via shared movies using BFS. Inspired the the six degrees of Kevin Bacon.

BFSSearchAlgorithm
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

TicTacToe using Minimax algorithm

Optimal TicTacToe AI using the Minimax algorithm with alpha-beta pruning.

MinimaxGame TheoryAlgorithm
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Knights and Knaves logical inference solver

Propositional logic solver for the classic Knights and Knaves puzzles.

LogicInferenceKnowledge Bases
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Minesweeper AI using propositional logic and knowledge representation

AI agent that plays Minesweeper using propositional logic and a knowledge base.

Propositional logicInferenceKnowledge Bases
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Google's pageranking algorithm

PageRank via both random-surfer sampling and iterative convergence.

PageRankProbability
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Heredity probability model using Bayesian inference

Bayesian network to compute the probability of genetic traits across Harry Potter family members.

BayesianProbability
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Crossword puzzle generator using constraint satisfaction and backtracking

Generates valid crossword puzzles using arc consistency and backtracking search.

CSPBacktracking
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Shopping prediction model using supervised learning

k-NN classifier predicting whether a user will complete an online purchase.

k-NNSupervised
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Nim AI using Q-learning

Q-learning agent that learns to play Nim optimally through self-play.

Q-learningRL
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

CNN traffic sign classification

Convolutional neural network trained on the GTSRB dataset to classify 43 traffic sign categories.

CNNGTSRBClassificationTensorFlowAutonomous Car
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Natural language sentence parser using Context-Free Grammar (CFG) and NLP

CFG-based parser that identifies noun-phrase chunks in English sentences.

CFGNLP
CS50AI Mark-Daniel Leupold
CS50AI · ASSIGNMENT

Testing simple attention mechanisms in a question answering system

TF-IDF + attention-based QA system that extracts answers from a document corpus.

AttentionQATF-IDF