Trash Seller

Inspiration

The inspiration behind Trash Seller stems from the global issue of waste management and pollution. We often discard trash without recognizing its value, leading to widespread pollution, global warming, and overflowing landfills. Trash items such as metals, plastics, and paper can be recycled and repurposed, but they are often thrown away carelessly. This motivated us to create a web application where people can easily identify and sell their trash, reducing pollution and promoting recycling.

The idea is to give value to trash items, encourage responsible waste disposal, and streamline the process for buyers, recyclers, and even government waste management programs.

What it does

Trash Seller is a web application that enables users to upload images of their trash. The system uses an AI-powered image recognition model (Gemini 1.5) to identify objects in the image. These objects are then matched against a database of trash items, and their estimated price is calculated based on predefined unit rates.

Features:

  • Image Upload: Users upload images of their trash.
  • Object Detection: The system detects various trash items in the uploaded images.
  • Price Estimation: Each identified trash item has a corresponding price, which is calculated based on weight or unit price.
  • Results Display: The user sees a list of detected items, their prices, and the total value of their trash.

The application promotes efficient recycling by allowing individuals to sell recyclable items to buyers or directly to governments, making recycling more accessible and encouraging people to treat trash as a resource.

How we built it

The project was built using the following technologies:

  • Frontend: HTML, CSS, Flask (for rendering pages)
  • Backend: Python with Flask for handling requests and responses
  • Image Recognition: Google Gemini API (for object detection from images)
  • Data Storage: A JSON file containing a list of trash items and their corresponding prices
  • Image Processing: Pillow (for handling image uploads and image manipulation)

Process:

  1. Flask Setup: Flask was used to handle the web application backend. It served the HTML pages, accepted file uploads, and managed user interactions.
  2. Google Gemini API: The Gemini API was configured to process uploaded images and detect various objects in them. The detected objects were compared with a predefined list in a JSON file.
  3. Price Calculation: Based on the matched items, the price was calculated and displayed to the user.
  4. UI/UX Design: The user interface was designed with HTML and CSS, creating an intuitive experience for uploading images and viewing results.

The system was tested using sample images of recyclable items to ensure that the object recognition and price estimation features worked seamlessly.

Challenges we ran into

  1. Image Recognition Accuracy: One of the major challenges was ensuring the AI model could detect trash items accurately. The quality of images uploaded can affect the model's performance, making object detection less reliable for unclear or poorly lit photos.

  2. Data Matching: Not all detected objects match the predefined list in the JSON file. We had to ensure that any unrecognized objects didn't cause errors and could be handled gracefully.

  3. Price Calculation for Range Items: Some trash items, such as "Old Furniture" or "Bicycle Parts," had price ranges (e.g., "$10-$50 per item"). It was tricky to calculate a single price for these items, so we had to decide whether to calculate an average price or ask the user for more information.

  4. User Interface Design: Creating a decorative and user-friendly file upload system while ensuring compatibility with different browsers and screen sizes was time-consuming.

Accomplishments that we're proud of

  • AI-Powered Object Detection: Successfully integrating the Google Gemini API to detect various trash items in uploaded images.
  • Real-Time Price Estimation: The application automatically calculates and displays the price for each item based on the predefined pricing data.
  • User-Friendly Interface: The application is intuitive and easy to use, with a clean, minimal design that helps users easily upload images and view results.
  • Social Impact: The project encourages people to treat trash as a valuable resource and promotes responsible waste disposal, contributing to environmental sustainability.

What we learned

  • AI Integration: We gained valuable experience in integrating AI models (specifically image recognition APIs) with a Flask web application.
  • Recycling Awareness: We learned how important it is to raise awareness about recycling and how technology can help improve waste management processes.
  • UI/UX Design: The project taught us how to balance functionality and aesthetics, ensuring that the application is both user-friendly and visually appealing.
  • Data Handling: Managing a large dataset of trash items and their prices and ensuring that the application efficiently matches items and calculates prices was a challenging but rewarding task.

What's next for Trash Seller

In the future, we aim to improve Trash Seller by:

  • Expanding Item Database: We plan to expand the database of trash items to include a wider range of recyclable materials and objects.
  • Improving AI Accuracy: Enhancing the object detection model to identify trash more accurately, even in low-quality images or with varying lighting conditions.
  • Mobile App Version: Developing a mobile version of the app to make it even more accessible for users to upload images of their trash on-the-go.
  • Integration with Recycling Centers: Partnering with local recycling centers or government programs to directly connect users to buyers or municipal waste management services.
  • Sustainability Features: Introducing features that track and reward users for recycling efforts, promoting green habits and sustainability.

By making recycling easier and more profitable, Trash Seller can help reduce pollution, minimize landfill waste, and promote a more sustainable world.

Built With

Share this project:

Updates