Skip to main content

Kolam Pattern Analysis and Generation System

Smart India Hackathon 2025 – Project Report


📌 Project Metadata

  • Problem Statement ID: 25107
  • Problem Statement Title: Develop computer programs to identify design principles behind Kolam designs and recreate them
  • Category: Heritage & Culture
  • Theme: Software
  • Team Name: Kolamkars

📝 Project Overview

The Kolam Design Analysis project aims to bridge traditional Indian art with modern computer science by creating intelligent software that can identify, analyze, and recreate Kolam patterns.

Kolams are intricate geometric designs drawn with rice flour or chalk, featuring complex mathematical properties including:

  • Symmetry
  • Spatial reasoning
  • Fractal-like structures

The project digitizes and interprets these patterns, preserving cultural heritage while providing educational and creative applications.


💻 Chosen Technology Stack with Alternatives

1. Frontend Development – React

  • Phase: User Interface Layer
  • Chosen Technology: React
  • Justification: Component-based architecture enables efficient UI updates and high performance for dynamic, interactive interfaces. Ecosystem supports scalable development with React Router and Redux.

Alternatives:

  • Angular: Complete framework with routing, state management, and testing; higher learning curve.
  • Vue.js: Lightweight and easy to learn; smaller ecosystem, limited scalability.

2. Backend – Node.js & Python

  • Reason for Choice: Node.js handles asynchronous operations and real-time requests; Python excels in ML and computer vision for Kolam analysis.

Alternatives:

  • Java: High performance, scalable; verbose syntax.
  • Ruby on Rails: Rapid prototyping; less efficient for AI/real-time tasks.

3. Cloud Infrastructure – AWS

  • Reason for Choice: Scalable and reliable cloud services, supports GPU-intensive AI model training.

Alternatives:

  • Google Cloud Platform (GCP): Strong AI/ML integration; fewer global data centers.
  • Microsoft Azure: Enterprise-grade Microsoft integration; higher costs for small teams.

4. Database – MongoDB & Pinecone

  • Reason for Choice: MongoDB for flexible NoSQL storage; Pinecone for high-dimensional vector storage (pattern similarity search).

Alternatives:

  • MySQL: Structured relational database; less flexible for unstructured data.
  • PostgreSQL: Hybrid structured/unstructured data support; more resource-intensive.

5. Computer Vision – OpenCV & scikit-image

  • Reason for Choice: Industry-standard libraries for image preprocessing, skeletonization, and feature extraction.

Alternatives:

  • PIL/Pillow: Lightweight and simple; limited advanced CV algorithms.
  • Mahotas: Fast and performance-optimized; smaller community.

6. Graph Analysis – NetworkX

  • Reason for Choice: Converts Kolam elements into graphs for analyzing connectivity, symmetry, and Eulerian circuits.

Alternatives:

  • igraph: High performance for large graphs; steeper learning curve.
  • graph-tool: Extremely fast, research-grade; complex installation.

7. Object Detection – YOLO/Faster R-CNN

  • Reason for Choice: Fine-tuned to identify dot coordinates in Kolams under varied image conditions.

Alternatives:

  • RetinaNet: Handles class imbalance well; complex setup.
  • SSD (Single Shot Detector): Fast inference; less accurate on small objects.

8. Graph Neural Networks – PyTorch Geometric/DGL

  • Reason for Choice: Learns complex Kolam principles (symmetry, connectivity) without manual rules.

Alternatives:

  • Spektral: TensorFlow-based GNN workflows; smaller ecosystem.
  • StellarGraph: End-to-end ML pipelines; less flexible for custom GNNs.

9. Generative AI – Conditional GANs/StyleGAN

  • Reason for Choice: Conditional GANs enable controlled Kolam generation; StyleGAN produces high-quality images with disentangled representations.

Alternatives:

  • Diffusion Models: High-quality diverse generation; very computationally expensive.
  • VAE (Variational Autoencoders): Stable training, smooth latent space; lower image quality than GANs.