Repository files navigation # Kolam Analyzer Complete
A comprehensive system for analyzing, understanding, and recreating traditional Tamil Kolam patterns using advanced algorithms including L-Systems, Eulerian circuits, and machine learning.
## Features
### Core Capabilities
- **Image Analysis**: Upload Kolam images and extract design principles
- **Pattern Recognition**: Classify different types of Kolam patterns
- **L-System Generation**: Generate patterns using mathematical L-System rules
- **Eulerian Circuit Analysis**: Detect and optimize single-stroke drawing paths
- **Symmetry Detection**: Identify rotational and reflectional symmetries
- **Interactive Recreation**: Recreate patterns with customizable parameters
### Advanced Features
- **Machine Learning**: Pattern classification and automatic rule extraction
- **Real-time Visualization**: Dynamic pattern generation and animation
- **Graph Analysis**: Mathematical analysis of pattern connectivity
- **Cultural Context**: Traditional naming and classification system
- **Export Options**: Multiple format exports (SVG, PNG, coordinates, animations)
## Technology Stack
### Backend
- **Python 3.9+**
- **FastAPI**: Modern, fast web framework
- **OpenCV**: Computer vision and image processing
- **NetworkX**: Graph analysis for Eulerian circuits
- **NumPy/SciPy**: Mathematical computations
- **Pillow**: Image manipulation
- **SQLAlchemy**: Database ORM
- **Scikit-learn**: Machine learning algorithms
### Frontend
- **React.js 18+**
- **TypeScript**: Type-safe JavaScript
- **Material-UI**: Modern UI components
- **Canvas API**: Pattern visualization
- **D3.js**: Advanced data visualization
- **Axios**: HTTP client for API calls
## Project Structure
```
kolam-analyzer-complete/
├── backend/ # Python FastAPI backend
│ ├── app/
│ │ ├── api/ # API endpoints
│ │ ├── core/ # Core algorithms
│ │ ├── models/ # Database models
│ │ ├── services/ # Business logic
│ │ └── utils/ # Utility functions
│ ├── tests/ # Backend tests
│ ├── requirements.txt # Python dependencies
│ └── main.py # Application entry point
├── frontend/ # React.js frontend
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── services/ # API services
│ │ ├── utils/ # Utility functions
│ │ └── types/ # TypeScript types
│ ├── public/ # Static assets
│ └── package.json # Node dependencies
├── docs/ # Documentation
├── data/ # Sample data and models
└── docker-compose.yml # Container orchestration
```
## Quick Start
### Backend Setup
```bash
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn main:app --reload
```
### Frontend Setup
```bash
cd frontend
npm install
npm start
```
## API Endpoints
- `POST /api/analyze` - Analyze uploaded Kolam image
- `POST /api/generate` - Generate pattern using L-System rules
- `GET /api/patterns` - Retrieve saved patterns
- `POST /api/eulerian` - Analyze Eulerian paths
- `POST /api/export` - Export patterns in various formats
## Contributing
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests
5. Submit a pull request
## License
MIT License - see LICENSE file for details.
## Cultural Significance
This project aims to preserve and promote the rich tradition of Tamil Kolam art through technology while respecting its cultural heritage and significance.# sih25-kolam
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
You can’t perform that action at this time.