SOFTWARE ENGINEERING × MACHINE LEARNING

Building systems.
Exploring vision.

I'm Sharan Karuppannan. I build computer vision, learning, graphics, and computing projects, then make their ideas tangible through code and interactive experiments.

COMPUTER VISION / GRAPHICS / SYSTEMS

01 / SELECTED WORK

Ideas, implemented.

Research code, controlled experiments,
with workflows you can explore in the browser.

Fundus imageFundus01 / 06

Reference masks · workflow illustration

COMPUTER VISION · RESEARCH

Artery–vein segmentation

Attention-WNet and Swin-WNet for retinal fundus images, with vessel-specific learning and analysis of thin vessels and bifurcations.

TensorFlow / Keras · Image segmentation
Environment01 / 04

Live planning illustration · 3 × 4 GridWorld

REINFORCEMENT LEARNING · IIT MADRAS

Learning through interaction

DA6400 experiments in GridWorld planning, MountainCar DQN, and SAC on Pendulum. Explore value iteration in the interactive GridWorld demo.

Python · DQN · SAC · Value iteration
Frame01 / 04

Precomputed HOG boxes · image-space measurements

COMPUTER VISION · 2021

Pedestrian detection & distance

Detect people, capture box centers, and visualize unique pairwise distances. The portable Python entry point runs without Colab or downloaded model weights.

OpenCV · HOG/SVM · Pixel geometry
Scene01 / 04

Canvas adaptation of the original OpenGL concept

COMPUTER GRAPHICS · 2021

Interactive Aquarium — OpenGL

Fish, bubbles, plants, and feeding scenes built with C++ and GLUT. Try the browser adaptation or build the native OpenGL project.

C++ · OpenGL · GLUT · Canvas
Issue01 / 04

Trace generated by the tested Python scheduler

COMPUTER ARCHITECTURE · 2021

Tomasulo Simulation

Step through reservation stations, dependency tags, out-of-order execution, and result broadcasts in a standalone cycle-by-cycle scheduler.

Python · Register renaming · Common data bus
Operands01 / 04

Small arithmetic illustration · native RTL is 16/32-bit

DIGITAL DESIGN · 2020

Verilog arithmetic circuits

Parallel-prefix addition and structural Dadda/Wallace multiplication, with portable RTL and self-checking simulation against arithmetic references.

SystemVerilog · Prefix adders · Compressor trees
Polynomial01 / 04

Live Durand–Kerner iterations · z⁴ − 1

SYSTEMS · PARALLEL COMPUTING

Parallel polynomial root finding

Durand–Kerner implementations across serial, shared-memory, distributed-memory, and GPU execution models.

OpenMP · MPI · CUDA
Fundus imageFundus01 / 04

Reference mask · width measured in preview pixels

COMPUTER VISION · IMAGE PROCESSING

Retinal vessel measurement

An OpenCV workflow for estimating vessel diameter from selected retinal vessel segments, connecting segmentation with geometric measurement.

Python · OpenCV · Vessel geometry
Request01 / 04

Protocol illustration · no real IP lookup in browser

NETWORKING · REBUILT 2026

Threaded TCP Geolocation

A reconstructed client/server service with bounded workers, validated JSON requests, and local IP-database lookup. An offline fixture demonstrates the protocol.

Python · TCP sockets · Threads · Local MMDB

Retinal masks are dataset reference annotations, not model predictions. View image source ↗

02 / RESEARCH

From pixels to evidence.

Google Scholar ↗
ARXIV PREPRINT · 2025

Artery-Vein Segmentation from Fundus Images using Deep Learning.

Vessel-specific learning for artery–vein segmentation, including thin vessels and bifurcation regions.

↗

03 / EXPLORATIONS

A lab for ideas.
Built to explore.

This collection spans visual perception, decision-making, computer graphics, processor scheduling, and numerical computing. Each project connects a technical idea with an implementation you can inspect or try.

Browse by topic, step through the animated workflows, and follow the source links for setup instructions and implementation details.

Vision & learning

Python · TensorFlow/Keras · PyTorch · OpenCV · Reinforcement learning

Graphics & computing

OpenGL · C++ · Verilog · OpenMP · MPI · CUDA

2026

Reinforcement-learning experiments

GridWorld planning and continuous-control assignments.

2025

Artery–vein segmentation preprint

Attention-guided segmentation of retinal vessels.

2021

Graphics, vision & computer architecture

Aquarium animation, pedestrian detection, Tomasulo scheduling, and parallel root finding.

2020

Digital arithmetic & networking

Verilog arithmetic coursework and the original TCP geolocation concept, reconstructed in 2026.

LET'S CONNECT

Have a research question
or an interesting problem?

sharansk18@gmail.com ↗