Projects


[SW] Diffusion Model for MNIST Image Generation

This project provides a implementation of a Denoising Diffusion Probabilistic Model (DDPM) to generate images of handwritten digits. The model is trained from scratch on the well-known MNIST dataset.

[SW] CycleGAN Implementation for Horse-to-Zebra Translation

This project implements a CycleGAN, a model for unpaired image-to-image translation, applied to the horse2zebra dataset.

[SW] Pix2Pix Conditional GAN

This project implements a pix2pix Generative Adversarial Network (GAN), a type of Conditional GAN (cGAN), for image-to-image translation, specifically converting satellite images to maps. The architecture is based on the original pix2pix paper by Isola et al. (2017), using a U-Net Generator and a PatchGAN Discriminator.

[SW] Face Morphing Using a GAN

This report details the implementation and evaluation of a Generative Adversarial Network (GAN) designed to generate and morph human face images.

[SW] Face Morphing Using a VAE

This project implements a Variational Autoencoder (VAE) to generate human faces using the LFW (Labeled Faces in the Wild) dataset. The VAE is trained to learn a latent representation of face images and then generate new faces by sampling from this latent space.

[SW] Image Inpainting Using AE

Designed an Autoencoder for the purpose of reconstruction of damaged images using the CIFAR-10 dataset.

[HW] Modular SPI Master and Slave Design with Flexible CPOL, CPHA, and Packet Width in Verilog

Designed a modular SPI master and slave supporting different CPOL and CPHA along with different packet width, enabling flexible serial communication.

[HW] Four-Bit Counter Verification using UVM: Focusing on Basic Concepts

Testing a four-bit counter using universal verification methodology (UVM) focusing on basic concepts, Sequencer, Driver, etc.

[HW] Super Scaler Pipeline Processor with Custom 32-bit ISA for Increased Throughput

Designed a Super Scaler Pipeline Processor, with fully customized 32bit Instruction Set Architecture (ISA), aiming to increase the throughput.

[HW] Pipelined ARM Processor Design: Hazard Unit vs Forwarding Unit in Xilinx Vivado

Designed a pipelined ARM processor, exploring the differences between leveraging hazard unit and forwarding unit in terms of latency using Xilinx Vivado.

[HW] Modular Hardware-Based SHA256 Accelerator in Verilog for Cryptography Applications

Designed modular hardware-based SHA256, aiming to accelerate hash generating built on SHA256 algorithm in the field of Cryptography using Verilog.

[HW] RGB Segmentation Hardware using Spiking Neural Networks (SNN) for Crosswalk Detection in Roads

Design a hardware for RGB segmentation based on spiking neural networks (SNN) to detect crosswalks in the roads using Verilog and Q16.16 fixed-point binary representation.

[HW] CNN-Based Pattern Finder: Bus Functional and RTL Design in SystemC

Design both bus functional and RT level design of a Pattern Finder using CNNs (Convolutional Neural Networks) to detect specific patterns of its input image using systemC.
πŸ”— View on GitHub

[HW] RISC-V Processors: Single-Cycle, Multi-Cycle, and Pipelined Designs in Verilog

Designed single-cycle, multi-cycle, and pipeline RISC-V processors in Verilog, developing instruction sets, control units, and datapaths, with strong expertise in computer architecture and instruction pipelining.
πŸ”— View on GitHub

[HW] Evaluating FIR Filters: Floating-Point vs Fixed-Point Resource Sharing in MATLAB Simulink

Evaluating FIR Filters using MATLAB Simulink in order to compare the influence of floating-point and fixed-point in resource sharing.
πŸ”— View on GitHub

[HW] FIR Calculation Hardware Accelerator Design for NIOS II on Altera FPGA

Designing a hardware accelerator for FIR calculation based on the NIOS II processor of Altera FPGA board.

[HW] Noise Reduction FIR Filter Design: MATLAB and Verilog Integration

Designing a FIR filter for the purpose of noise reduction using the integration of MATLAB and Verilog.

[HW] Wallace Tree Multiplier Design with Critical Path Analysis in HSpice

Designing a multiplier using Wallace Tree Algorithm using HSpice in order to find critical path and evaluate its potential violations (hold time/ setup time violation).
πŸ”— View on GitHub

[HW] Gate Dimension Impact on Power Consumption and Delay in HSpice

Investigating the effect of gate dimensions on power consumption and delay using HSpice and required library
πŸ”— View on GitHub

[HW] Leros Processor Design using Chisel Library

Designing Leros Processor using Chisel library comparing its advantages compared to hardware description languages.
πŸ”— View on GitHub

[HW] Multi-Channel Synchronous Serial Demultiplexer (MSSD) RTL Design in Verilog

Designed RTL architecture of a multi-channel synchronous serial demultiplexer (MSSD) in Verilog, ensuring seamless multi-channel communication with proficient logic design and synchronization.
πŸ”— View on GitHub

[HW] High-Performance Selection Sorter RTL Design in Verilog

Developed a high-performance Selection Sorter RTL in Verilog, demonstrating expertise in efficient sorting algorithms, RTL coding, and hardware optimization.
πŸ”— View on GitHub

[HW] Optimized Bubble Sort Hardware Architecture in Verilog

Designed and implemented a robust Bubble Sort hardware architecture in Verilog, optimizing sorting algorithms for performance and demonstrating proficiency in coding and hardware optimization.
πŸ”— View on GitHub

[HW] Transistor-Level Verilog to Assign Statement Conversion using Boolean Algebra

Developed a C++ program able to convert transistor level Verilog codes to β€œassign” statements in order to redesign existing designs using Boolean Algebra equations.
πŸ”— View on GitHub

[HW] Accelerated Selection Sorter Circuit Design using SystemC

Design a Selection Sorter Circuit (SSC) to accelerate its timing and enhance sequential circuit using systemC hardware design language.
πŸ”— View on GitHub

[HW] Layout Design

Layout design using L-edit and S-edit regarding certain design rules in VLSI course.
πŸ”— View on GitHub

[SW] Geographic Pricing Analysis of Airbnb Listings with Seasonal Trends

Built a Tableau dashboard, analyzing 50K+ Airbnb listings, revealing geographic pricing host strategies, and seasonal trends using LOD calculations and interactive filters.

[SW] Real-Time Payment Processing Pipeline: Kafka, PySpark, MongoDB, Fraud Detection, and Dash Analytics

Built a Kafka-PySpark-MongoDB pipeline, for real-time payment processing, fraud detection, and Dash-powered analytics, handling 100+ events/min.

[SW] YOLOv3 Object Detection with COCO Dataset: 80 Classes

YOLOv3 Object Detection, developed a Jupyter Notebook implementing YOLOv3 (COCO dataset) to detect 80 object classes, drawing labeled bounding boxes with confidence scores using OpenCV.

[SW] Vehicle Speed Estimation using dlib and Haar Cascades

Vehicle Speed Detection, engineered a Jupyter Notebook to track cars in videos using dlib and Haar Cascades, estimating speed (km/hr) via pixel displacement and saving annotated output.

[SW] Real-Time Object Detection with MobileNet SSD: 21 Classes

Real-Time Object Detection (MobileNet SSD), designed a Jupyter Notebook for object detection using MobileNet SSD (21 classes), processing images, webcam feeds, and videos with bounding boxes and FPS overlay.

[SW] Pencil Sketch Effect for Images and Videos using OpenCV

Face Sketch Effect for Images/Videos, implemented a Jupyter Notebook to convert images and videos into pencil sketches using OpenCV’s grayscale inversion and Gaussian blur, optimized for real-time webcam processing.

[SW] Document Alignment via Homography and Warp Perspective using OpenCV and Matplotlib

Image Alignment, developed a Jupyter Notebook to align scanned documents to reference templates using OpenCV’s homography and warpPerspective, with Matplotlib visualization.

[SW] Dynamic Face Detection and Blurring using OpenCV and Caffe Model

Face Detection & Blurring, created a Jupyter Notebook leveraging OpenCV’s Caffe model to detect and dynamically blur faces in images, live webcam streams, and video files with confidence-based filtering.

[SW] Art-toonify: Cartoon Style Transformation of Images and Videos using OpenCV

artoonify Images/Videos, built a Python application in Jupyter Notebook to transform images and videos into cartoon style art using OpenCV, incorporating edge masking, bilateral filtering, and FPS visualization.

[SW] Real-Time Age and Gender Prediction using OpenCV and Deep Learning Models

Age & Gender Detection, developed a Jupyter Notebook for real-time age and gender prediction using OpenCV and pre-trained Caffe/TensorFlow models, processing images, webcam feeds, and videos with FPS monitoring.

[SW] Advanced Image Processing Techniques: Transformations, Metadata Extraction, and Lesion Detection

Image Processing and Analysis, using Jupyter Notebooks with Python libraries (PIL, OpenCV, NumPy, Matplotlib, scikit-image, and exiftool) to demonstrate image processing techniquesβ€”including transformations, metadata extraction, similarity comparison, and lesion detection.

[SW] Convolutional Kernels and Filters in Computer Vision

Developed a Jupyter Notebook on convolution, kernels, and 1D and 2D filters, in the context of computer Vision and Signal processing, blending theory and practical implementations.

[SW] RGB Segmentation Using SNNs (LIF)

Designing and training a LIF model of spiking neural networks (SNN) for the purpose of RGB segmentation specified to crosswalk detection of the input image.

[SW] RGB Segmentation Using MLP

Designing and training a multi-layer-perceptron (MLP) from the scratch for the purpose of RGB segmentation specified to crosswalk detection of the input image.

[SW] Banking System

Designed a comprehensive banking system in C++ with account management, transaction processing, and data security, utilizing object-oriented programming for modularity and extensibility.
πŸ”— View on GitHub

[SW] Bomberman

Developed a captivating Bomberman game in C++ with engaging mechanics, graphics, and sound effects, showcasing proficiency in game development using object-oriented programming and C++ graphics libraries, algorithms, and data structures.
πŸ”— View on GitHub

[SW] Hospital Reservation System

Designed a hospital reservation system in C++ for efficient appointment scheduling and management, ensuring reliability, scalability, and data integrity through sound software engineering principles.
πŸ”— View on GitHub

[SW] Filtering BMP Images

Developed a C++ filter app for applying effects to BMP images and saving modified versions, demonstrating expertise in image processing algorithms and file handling leveraging object-oriented programming concepts.
πŸ”— View on GitHub

[SW] Sputify

Created the Spotify-like web application named Sputify in C++, applying object-oriented programming principles on music streaming, playlist management, and user authentication, showcasing skills in web development, database integration, and server-side programming.
πŸ”— View on GitHub

[SW] Communication Modulations Implementation

Designed and implemented analog and digital signal modulation methods (AM, DSB, SSB, PM, FM) in MATLAB, evaluating performance with and without noise, and developed a strong understanding of digital modulation techniques like PCM and PWM.
πŸ”— View on GitHub