Project Story
Inspiration
The idea for our project came from a simple observation: leftover fabric is not always useless fabric. Small tailors, fashion students, and DIY enthusiasts often have pieces of cloth remaining after completing a project. These scraps may be too small or irregular for another full-sized garment, but they could still be useful for accessories, patchwork, or smaller products. However, people often do not know what they can make with the materials they already have, so usable fabric goes to waste while they spend money buying new materials.
We wanted to explore whether technology could make fabric reuse easier and more practical.
Brainstorming and Idea Development
Initially, we explored several ideas, including digital fabric inventories, pattern-based fabric search, visual fabric mapping, smart scrap recommendations, shared fabric libraries, and waste reduction tracking. We brought these ideas together into a website that helps users discover the potential of their leftover fabric and connect with others when they need additional material.
What It Does
Our solution has two main modes:
- Scraps to Products: Users select the fabric scraps they have available and receive recommendations for products they could make using those materials.
- Product to Scraps: Users describe what they want to create, including its dimensions, and the system identifies suitable scraps from the available inventory.
If the available material is insufficient, users can discover nearby people who may have suitable leftovers and request them. This helps build a community around fabric reuse instead of treating every person's leftover material as waste.
How We Built It
We are building a digital fabric inventory in which users can upload photographs of their scraps. Computer vision techniques help identify fabric regions, estimate their dimensions using an A4 sheet as a reference, and extract visual information such as colour. The resulting information can be stored in a database and used for matching and recommendations.
The website combines a user interface, a backend for processing requests, a database for storing fabric information, and image-processing techniques for analysing uploaded photographs. It also includes user accounts and location-based discovery, with approximate areas displayed instead of exposing users' exact locations.
Challenges We Faced
One of our main challenges has been translating irregular, real-world fabric scraps into useful digital information. Detecting a fabric piece from a photograph is not as simple as identifying its outline. Shadows, background objects, lighting variations, and overlapping edges can lead to inaccurate detections and measurements.
We have been experimenting with OpenCV-based image processing and A4-based perspective correction to address these issues. Another challenge is determining whether a scrap is genuinely suitable for a product, rather than relying only on its approximate width and height.
These challenges have helped us understand that building a useful recommendation system involves more than simply collecting data. The quality of the data and the limitations of real-world images also matter.
What We Learned
Through this project, we are learning how computer vision, database management, geometric matching, and web development can work together to solve a practical sustainability problem. We have also learned to consider real-world constraints, user privacy, and the difficulties of turning an idea into a working system.
More importantly, we are exploring how technology can help people make better use of resources they already possess.
What's Next
Our goal is to make fabric reuse easier to discover, more accessible to small-scale creators, and more collaborative within local communities. In the future, we hope to extend the platform to larger fashion businesses and explore how fabric waste can be managed more efficiently at scale.
Built With
- css
- fastapi
- gemma
- html
- javascript
- ollama
- opencv
- openstreetmap
- python
- react
- sqlite
- vite
Log in or sign up for Devpost to join the conversation.