My Projects

Information Visualization/HCI

Hieros
Hieros: A hierarchical visualizaiton library
Skills: Java, OpenGL, Coordination Architecture, Visualization Systems
Read More

Hieros, a software architecture and implemented library that supports the representation of topologies and interaction with them as first-class objects in tree visualizations. Development of Hieros represents a punctuation point in our work to develop a tree visualization system to test our hypothesis: Having the ability to represent composite topologies in trees in a first-class manner improves the utility of tree visualizations by providing ways to represent information associated with them and also support various operations on them in a more straightforward manner. Hieros extends the information visualization pipeline to include composite topologies mapped from the nodes and edges and supports representing aspects of attribute and structural information about those topologies.

Hieros
Topology Augmented hierarchical visualizaitons
Skills: Java, Coordination Architecture, Visualization Systems
Read More

The Hieros library provides a representative set of modified versions of seven commonly used tree visualization designs for representing hierarchical data. These visualizations are capable of representing various topologies to differing extents.

C4D3
Coordination Library for Data Driven Documents (C4D3)
Skills: D3.js, Information Visualization, Coordination Architecture
Read More

Developed C4D3, a novel framework that provides view-level abstraction and a robust coordination architecture for building sophisticated coordinated multiple views using the D3 library. This project was motivated by the critical need for improved coordination mechanisms in browser-based visualizations, a challenge we addressed by adopting the highly generalizable Live Properties architecture. C4D3 significantly enhances the development of interactive and synchronized data visualizations, streamlining complex data exploration and analysis workflows for users.

Tree Visualizations
An Investigation into the Representational Suitability of Tree Visualizations
Skills: Information Visualization, User Studies, Data Representation
Read More

This comprehensive project rigorously investigated the effectiveness of various tree visualizations in conveying complex hierarchical data. Through a series of carefully designed user studies, we analyzed how different visual encodings and layout strategies impact user understanding, task performance, and overall usability. The findings provide valuable insights into optimizing tree visualizations for diverse analytical needs, contributing to the field's understanding of effective data representation.

Gestures
Interactive Gesture-Based Data Manipulation and Visualization
Skills: Human-Computer Interaction, Gesture Recognition, Data Manipulation
Read More

This project innovatively diverged from traditional state machine models for gesture implementation, instead treating gesture handling as a problem of pattern matching against interleaved event streams. This novel approach enabled the development of a versatile suite of gestures, significantly enhancing the efficiency and intuitiveness of data editing and manipulation procedures in interactive systems. The research demonstrates a more flexible and powerful method for designing natural user interfaces, improving overall human-computer interaction for complex data tasks.

Olympic Data Visualization
Interactive Gesture-Based Data Manipulation and Visualization
Skills: Human-Computer Interaction, Gesture Recognition, Data Manipulation
Read More

The Olympics, first held in Athens (1896), are the premier global sports event, uniting 200+ countries. Across 120+ years, the Games have navigated political conflicts and gender discrimination, yet remain a symbol of unity through sport.

What this project asks

  • Country performance: How have nations’ medal trends evolved over time?
  • Physical attributes: Does age or weight influence success by sport?
  • Gender dynamics: How has the balance of winners changed?
  • Long-term patterns: What are the overarching trends in victories?

AI/ML Research

Vision Transformer MLOps Pipeline
Vision Transformer (ViT) using PEFT
Skills: Python, PyTorch, Vision Transformers, MLOps, Docker, CI/CD (GitHub Actions), Git, YAML
Read More

Developed a complete MLOps pipeline for training Vision Transformers on two separate tasks: CIFAR-10 classification and a multi-view classification with a Parameter-Efficient Fine-Tuning (PEFT) strategy. This project demonstrates best practices in model containerization with Docker, automated CI/CD with GitHub Actions, and professional project structuring. The pipeline is designed to be fully reproducible and scalable for deployment on various cloud services.

Bidirectional Transformer MLOps Pipeline
Bi-directional Language Translation with a Transformer
Skills: Python, PyTorch, Transformers, NLP, MLOps, Docker, CI/CD (GitHub Actions), Git
Read More

Developed a Transformer model for bidirectional translation between English and Sanskrit. This project demonstrates how to train a single model for multiple translation directions using special direction tokens and a unified vocabulary. The pipeline showcases best practices in MLOps, including a custom data loader for large files, containerization with Docker, and a CI pipeline with GitHub Actions.

MNIST GAN Image Generation
GAN with FastAPI and HTML UI for Image Generation
Skills: Python, PyTorch, GANs, Computer Vision, MLOps, Docker, FastAPI, HTML, JavaScript
Read More

Developed a complete end-to-end MLOps pipeline for a Generative Adversarial Network (GAN). The project features a Generator model to create new handwritten digits and a Classifier model to predict the digit and confidence. The models are served via a FastAPI backend and a minimalist HTML/JavaScript UI, demonstrating a full-stack deployment for a generative AI model.

Dynamic Langgraph Agent Workflow Diagram
Dynamic Langgraph Agent with Streamlit UI
Skills: Langgraph, Streamlit, Ollama, Large Language Models (LLMs), Multimodal AI, Python, UI/UX Design, API Integration (HTTPX)
Read More

Developed a sophisticated AI agent leveraging Langgraph for stateful orchestration of specialized Ollama LLMs, enabling dynamic routing of text, code, and image queries. This project creates a highly interactive and user-friendly multimodal AI experience, providing real-time feedback on active LLMs and visualizing the Langgraph workflow for transparency. The modular and extensible architecture aims to bridge the gap between complex AI and intuitive user interaction, showcasing advanced prompt engineering and multimodal capabilities.

RAG Chatbot System Diagram
Multimodal RAG Chatbot for Document Q&A
Skills: LangChain, Ollama, Retrieval-Augmented Generation (RAG), Vector Databases (Chroma), Ollama Embeddings, Streamlit, Python, Data Processing (CSV, PDF)
Read More

Engineered a Retrieval-Augmented Generation (RAG) chatbot capable of answering questions from diverse document types, including CSV and PDF files. This system utilizes Ollama LLMs for intelligent responses and Ollama Embeddings with Chroma for efficient, context-aware information retrieval. The intuitive Streamlit web interface allows users to seamlessly switch between data sources, providing dynamic and precise answers. This project demonstrates a practical application of RAG to extract insights from both structured and unstructured data, significantly improving information accessibility.

Maze Solver
Solving Dynamic Perfect Mazes Using Reinforcement Learning
Skills: Reinforcement Learning, Q-Learning
Read More

Omkar Chekuri and Yonathan Hendrawan

Designed and developed a game environment for generating and solving dynamic perfect mazes from scratch. We implemented and compared Q-learning and a novel Multi-agent Sarsa algorithm against traditional maze-solving methods. Our reinforcement learning algorithms significantly outperformed the Wall Follower algorithm in terms of steps taken and successfully solved mazes even with projectiles. This project showcases the effectiveness of RL in dynamic environments, though performance scales inversely with maze size.

Other Projects (including Distributed Systems)

Sudoku Solver
Distributed Sudoku Solver using multiple clients and a server
Skills: Docker, Distributed Computing, Containerization, Software Engineering
Read More

Developed a robust distributed Sudoku solver leveraging Docker containers to create scalable, independent services. This innovative approach implemented secure inter-process communication with encrypted channels and a Round Robin load balancing algorithm across worker nodes. The system ensures high availability and efficient task distribution, effectively tackling complex computational problems. This project demonstrates strong expertise in distributed systems architecture and containerization technologies.

fNIRS VR
Development of VR environments for capturing of Multi-person VR interactions
Skills: Eye Tracking, fNIRS, Vizard, Software Development, Virtual Reality, Game Development
Read More

Contributed significantly to the "Smart Learning in Multi-person VR" project by developing immersive virtual reality environments. My responsibilities included integrating advanced biometric sensors such as fNIRs, eye-tracking, and haptic feedback to capture detailed user engagement data. I designed interactive user interface elements and complex semantic network models for learning scenarios, aiming to understand and personalize educational experiences. This work provided crucial data for research into human-computer interaction within VR.

YouTube Commercial
YouTube Commercial: Exploring human’s perspective of commercials
Skills: Eye Tracking, Statistical Analysis, Online Commercial, Cognitive Behavior, Survey
Read More

Omkar Saiswaroop Varma Chekuri, Farah Al Saif and Ivan Calderoni

Designed and conducted an eye-tracking experiment to analyze audience perception of online commercials, specifically investigating the impact of "skip" functionality on YouTube advertisements. Through quantitative statistical analysis, including normality tests and hypothesis testing (e.g., T-tests, Mann-Whitney-Wilcoxon tests) on eye fixation metrics, we derived insights into user cognitive behavior. The study revealed interesting qualitative differences in cognitive responses between groups, providing valuable data to inform more effective digital marketing strategies.

Escape to Space
Game Development (Platformer - Escape to Space)
Skills: Computer Graphics, Game Development, Software Engineering
Read More

Aaron Morris, Omkar Chekuri, and Yonathan Hendrawan

Designed and developed a comprehensive 2.5D platformer game, incorporating essential elements such as advanced animation, precise collision detection, custom shaders, dynamic particle systems, and realistic basic physics. We meticulously applied rigorous software engineering processes, including a milestone-driven approach and Test-Driven Development (TDD), to ensure robust and high-quality development. This project significantly enhanced our proficiency in advanced computer graphics techniques and practical game development methodologies.

Skin Condition Search Application GIF
Skin Condition Image Search Application
Skills: Streamlit, Software Development, Prototyping
Read More

Omkar Chekuri

Developed a Streamlit application to address the prevalent issue of underrepresentation of diverse skin tones in medical imagery. This tool provides users access to sample images across various races for specified skin conditions, directly counteracting existing digital bias. It also scrapes relevant information from WebMD, enhancing flexibility and usability for health research. By offering a more inclusive range of visuals and data, this application significantly mitigates the representation gap in online medical information.

Artful Abstraction
Artful Abstraction
Skills: WebGL, Computer Graphics
Read More

Omkar Chekuri

This project explored artistic rendering in computer graphics, a field less focused on photorealism and more on expressive visual styles. I aimed to replicate abstract image representation techniques inspired by [Haeberli 1990], focusing on controlling color, shape, and size of brush strokes. While not an exact replication, my implementation of these techniques achieved reasonable results with distinct artistic elements, showcasing the potential for non-photorealistic rendering in digital art.