Skip to content

This is the final project created for Microsoft Future Ready Talent Virtual Internship Program. I created a website that is Automated Fruit Detection System for Image Analysis. I have used 2 core Azure Services 1. Azure App Service and 2. Azure Storage Account(Blob Storage) and also used one Azure AI Service (Custom Vision).

Notifications You must be signed in to change notification settings

YogeshMore2207/Fruit-Detection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Microsoft-Future-Ready-Talent-Virtual-Internship-Project

Project Title:

Automated Fruit Detection System for Image Analysis.

Project Details

Project Demo URL : https://fruitdetection.azurewebsites.net/
Demo Video URL : https://drive.google.com/file/d/1qZVD17HqMa2Tv8RL7LiPSGHqkTkMgRXt/view?usp=drive_link
Github Repository URL : https://github.com/YogeshMore2207/Fruit-Detection.git
Industry : Lifestyle

Azure Services Used

Core Azure Services :
1. Azure App Service
2. Azure Storage Account(Blob Storage)

Azure AI Service
1. Azure AI Custom Vision Service

Problem Statement

The manual inspection and classification of fruits in large quantities can be time-consuming, error-prone, and labor-intensive. Traditional methods lack efficiency and precision, leading to challenges in quality control and timely decision-making. The need for an automated fruit detection system arises to address these challenges and enhance the overall productivity of fruit-related industries.

Project Description

The Automated Fruit Detection System is a custom vision application designed to automatically identify and classify fruits in images. Leveraging state-of-the-art machine learning techniques, the system aims to streamline processes in agriculture, inventory management, and food processing industries. Users can upload images containing fruits, and the system will provide accurate detection and classification results.


Key Features :
  • Automated Fruit Detection
  • User-Friendly Interface
  • Real-time Processing
  • Accuracy and Reliability
  • Azure App Service Hosting
  • Azure Blob Service for Efficient Data Management
Future Enhancements :
  • Integration with mobile applications for on-the-go fruit detection.
  • Implementation of more advanced machine learning models for improved accuracy.
  • Support for real-time video analysis.
  • Core Azure Services

    Azure App Service :


    The project utilizes Azure App Service to host the web application, ensuring scalability, reliability, and ease of deployment. This service enables seamless integration with other Azure components and provides a secure environment for the application.

    Azure Storage Account(Blob Storage) :

    Azure Blob Storage is Microsoft's object storage solution for the cloud. It allows you to store and manage large amounts of unstructured data, such as text or binary data, making it suitable for various use cases, including serving images or documents to web applications, storing backups, and more.

    Azure AI Custom Vision Service

    Azure AI Custom Vision Service :

    Azure Custom Vision is a cloud-based service provided by Microsoft as part of the Azure Cognitive Services suite. It is designed to help developers build custom image classification models without the need for extensive machine learning expertise. The service leverages pre-trained deep learning models and allows you to train a model using your own image datasets.

    Project Workflow

    1. Set Up Environment:
    2. - Import necessary modules and libraries, including Flask, Azure Cognitive Services SDK, PIL (Pillow), NumPy, and others.
      - Load environment variables using dotenv for sensitive information such as Azure Storage connection strings, prediction endpoint, prediction key, project ID, and model name.
    3. Initialize Flask App:
    4. - Create a Flask web application instance.
    5. Azure Blob Storage Integration:
    6. - Use the Azure Storage SDK to interact with Azure Blob Storage.
      - Fetch images from the specified container in Azure Blob Storage using the list_images function.
    7. Image Processing and Object Detection:
    8. - Implement the detect_objects function to:
      - Load configuration settings and authenticate the Custom Vision Prediction client.
      - Open the uploaded image using Pillow (PIL) library.
      - Use the Azure Custom Vision service to detect objects in the image.
      -Draw bounding boxes around detected objects and annotate with tag names and probabilities.
      - Save the modified image with bounding boxes.
    9. Flask Routes:
    10. - Define two Flask routes:
      - /: Display a list of images available in the Azure Blob Storage container on the homepage.
      - /upload: Handle image uploads, download the selected image, process it for object detection, and render the result on a new page.
    11. Web Templates:
    12. - Use HTML templates (index.html and result.html) for rendering the web pages.
      - Display the list of images on the homepage, and after image upload, show the processed image with detected object information.
    13. Run the Flask App:
    14. - Use if __name__ == '__main__': to run the Flask application locally when the script is executed directly.
    15. Run the Application:
    16. - Execute the Python script to start the Flask development server.
      - Access the web application in a web browser.
    17. Upload and Process Images:
    18. - Upload an image using the provided web interface.
      - The application will download the selected image from Azure Blob Storage, process it using the Azure Custom Vision service, and display the result on a new webpage.
    19. Display Results:
    20. - Display the modified image with bounding boxes around detected objects.
      - Show the detected object names and probabilities on the result page.

    Screenshots

    Azure App Service

    Description :

    Azure App Service provides a scalable and reliable hosting environment. It ensures seamless deployment and high availability, facilitating an optimal user experience.

    azure-app-service

    Azure Storage Account(Blob Storage)

    Description :

    Azure Blob Storage is Microsoft's object storage solution for the cloud. It allows you to store and manage large amounts of unstructured data, such as text or binary data, making it suitable for various use cases, including serving images or documents to web applications, storing backups, and more.

    azure-blob-storage-service

    Azure AI Custom Vision Service

    Description :

    The Automated Fruit Detection System is a custom vision application designed to automatically identify and classify fruits in images.

    azure-ai-custom-vision

    Azure AI Custom Vision Service Training Dataset

    Description :

    Description :

    The Automated Fruit Detection System is a custom vision application designed to automatically identify and classify fruits in images.

    trining dataset

    Working Live Project Display

    Description :

    Here I am attaching the final working website's screenshot for the reference.

    Conclusion

    In conclusion, the project demonstrates an end-to-end workflow for building a web application that leverages Azure services for image storage and analysis, providing users with insights into the content of uploaded images.


    Automated Fruit Detection System for Image Analysis.

About

This is the final project created for Microsoft Future Ready Talent Virtual Internship Program. I created a website that is Automated Fruit Detection System for Image Analysis. I have used 2 core Azure Services 1. Azure App Service and 2. Azure Storage Account(Blob Storage) and also used one Azure AI Service (Custom Vision).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published