I'm quite familiar with:
π§ AI/ML
- YOLO11 Persian License Plate Recognition Detect and Recognize persian license plates using yolo11 and opencv.
- YOLO11 Rock Paper Scissor Detection Detect and classify hand gestures of the rock paper scissors game by fine-tuning yolo11.
- Conditional GAN MNIST Trying to understand how a condition vector can be used to control which subset of the training data should the generator sample from using a single model, as opposed to creating a seperate model for every subset of training data.
- GAN MNIST Simple FC GAN implementation for understanding how GANs are implemented and trained.
- 2D GAN Experiment Trying to understand how GANs find training data's underlying distribution. In this case how do they find the subset of R^2 where the data is drawn from.
- Face Keypoints detection Detecting 68 keypoints on the human face using various deep learning models. (Experiment)
- Triangle Keypoints detection A toy example for experimenting with keypoint regression using a very simple handmade dataset.
- Universal Function Approximation An experiment to understand how shallow neural networks can approximate any function. READ IT. it has nice pics.
- Chess Piece Classification (Notebook) Fine-tuning EfficientNet on a Chess Piece Dataset.
- MNIST Classification The most basic CV pytorch project. A good boilerplate for starting a simple pytorch project. (MLP and CNN)
- Name Nationality Classification The most basic NLP pytorch project. Classifying names using a character-level MLP and RNN.
- Interactive Segmentation Interactive segmentation script using SAM model.
πΈ Image Processing / CV
- Computer Vision Exercises Repository containing homework assignments for my Computer Vision course.
- Digital Image Processing Exercises Repository containing homework assignments for my Digital Image Processing course.
- Rubik's Cube Recognition Detecting faces of a Rubik's Cube using only 2 three-quarters view images.
- Football player Robot B. Sc. Computer Architecture final project. a football player robot made using Raspberry Pi and OpenCV.
- Grid Image Scanner Scanning a grid photo using OpenCV and Python.
- Bokeh Plus A sample-based bokeh simulator that uses inverse tone-mapping and weighted sample averaging to produce a bokeh effect.
- Kernel Convolution Bokeh Simulation A simple kernel convolution based bokeh simulator.
- Tilable Texture Vizualizer A helper tool to crop a tileable portion of a texture.
- OpenCV Face Filter A Snapchat-like face filter implementation using Python and OpenCV.
π Computer Graphics
- GHDgl My OpenGL experimentation and learning sandbox.
- GHD Path Tracer A simple path tracer I built by following the "raytracing in a weekend" book.
- Circle Packing Packing circles without overlap in a plane!
- 3D Cube Raw SDL Rendering the wireframe of a rotating cube from scratch using SDL and math!
- Midpoint Circle Drawing Algorithm Visualization A p5*js sketch of midpoint algorithm for drawing circles
- Triangle Rasterization Visualization A p5*js sketch of naive triangle rasterization using super sampling.
π Shaders
- Mandelbrot fast GLSL A GLSL shader that draws the Mandelbrot set (faster than the previous js method)
- Acid Shader?!!! Acid shader!
- Chromatic aberration lookin star! A simple shader that draws a circle with a chromatic aberration effect.
π Web Dev
- GHD Snippets website π A web app for managing my personal Python/ML code snippets.
- GHD Notebook to Py π A web-app for converting .ipynb files to .py files + a few other features e.g. only saving marked cells.
- Favourite Youtube Channels Extractor π A web app that analyzes your YouTube watch history file and produces a report of your favorites channels.
- Triomino Tiling π An Interactive divide and conquer implementation for tiling a plane using triominos (L shape tiles).
- What to pick for next semester! π A simple web app that recommends courses to pick for your next semester (CS only).
π Visualizations
- Knight's Graph visualization A visualization of the Knight's graph in chess.
- Dart Score Simulator What is the best point to aim for in darts? Based on your accuracy.
- Car Steering Simulator Simulate a steering vehicle and calculate the pivot of rotation.
- Pinhole Camera Simulator Simulation of a simple Pinhole Camera. try dragging the elements around to see what happens!
- Camera Lens 2 Object Visualizer What happens to the Image of two objects that are a fixed distance apart in a camera?
- Mandelbrot slow js Drawing the Mandelbrot set using javascript (very slow, see the shader version in the next section)
- Spirograph using epicycles Drawing Spirographs using a bunch of epicycles.
- Circles Glow Effect! A specific glowing effect R&D
- Phyllotaxis Visualization Phyllotaxis Wikipedia
- Shadow Visualization thing Simple visualization of a circle casting a 2D shadow.
- Voronoi Diagram Draw the Voronoi pattern using p5*js. Wikipedia
- Simple Cube using Perspective Projection A simple 3D cube projected using perspective projection on 2D plane using a camera.
- Circle Inversion A failed attempt at drawing the Apollonian Gasket! but learned about Circle Inversion Wikipedia
- 010101010101010 A 01-filled background!
- White and yellow lines! Rasme dabirestan!
βπ§ Dumb Ideas
- Most Profitable Actors Analysis Project How much have each actors movies sold overall?
- Keyboard Frequency Analysis QWERTY and Persian keyboard layout comparison.
- History Timeline Timeline of random events!
- Floating Point Experiment The next float number after 1,000,000,000 is 1,000,000,064!
π§ Tools
- GHD Screenshot A GUI application for efficiently taking region screenshots. better than Snipping tool!
- GHD Timer Python module A Python library with minimal and easy API to debug the running time of pieces of code.
- Batch Resize Images A Python tool for batch resizing of Images in a directory (very useful for archiving images).
- GHD Tools and Scripts Some of my personal tools and scripts.
- .dotfiles Linux dotfiles.
Find more info at https://gholamrezadar.ir