Table of Contents
This project is a face recognition application built using Streamlit for the frontend and Firebase for backend storage. It allows users to perform face recognition on uploaded images and associates them with person identities stored in a Firebase database.
Clone the repository:
git clone https://github.com/Aksshay88/Cold-Recog..git
cd Cold-Recog
python -m venv venv
Activate the virtual environment
venv\Scripts\activate
Install dependencies (replace requirements.txt with your actual requirements file)
pip install -r requirements.txt
Deactivate the virtual environment when done
deactivate
python3 -m venv venv
Activate the virtual environment
source venv/bin/activate
pip install -r requirements.txt
Deactivate the virtual environment when done
deactivate
Cold Recognition
Cold Recognition is a project dedicated to retrieving details of an unidentified corpse by comparing them with a vast database of Aadhar card images. Using advanced image comparison techniques, the system returns approximately correct Aadhar images with an average accuracy of 65%. Focused on enhancing identification processes, this project addresses challenges in forensic scenarios, offering a reliable solution for identifying individuals with unidentified corpses. Explore the potential of Cold Recognition for accurate and efficient identity retrieval in challenging circumstances.
- Upload a picture of the person you want to compare
- Click compare and it will compare the face found in picture.
- Check the size of picture uploaded. If is above certain threshold, then it will be compress
The inspiration behind the creation of ColdRecog stems from the pressing need for more accurate, efficient, and accessible methods of brain disease diagnosis in the modern healthcare landscape. The convergence of medical expertise and technological advancements has the potential to revolutionize the way diseases are detected and treated. Several key factors have motivated the inception of Diagnosify:
-
🌐 Addressing Humanitarian Challenges: The inspiration behind the Cold Recognition project is deeply rooted in addressing the humanitarian and forensic challenges associated with unidentified corpses. In countless forensic investigations, cases involving unidentified individuals remain a significant hurdle, causing prolonged agony for families seeking closure. The project was conceived with the profound understanding that technology could play a pivotal role in solving these cases and bringing solace to grieving families.
-
🔍 Innovative Forensic Approaches: The complexities of forensic scenarios, particularly in cases with limited information, led us to explore innovative approaches. By harnessing the power of advanced image comparison techniques, Cold Recognition seeks to retrieve pertinent details from a comprehensive database of Aadhar card images. This ambitious initiative strives to expedite the identification process, providing law enforcement agencies and forensic teams with a powerful tool to overcome the challenges posed by unidentified bodies.
-
💡 Ethical Responsibility and Technological Innovation: Moreover, our motivation extends beyond technological innovation; it is fueled by a commitment to human empathy and ethical responsibility. The ethical imperative to aid law enforcement in bringing closure to families of missing individuals served as a driving force. By integrating cutting-edge technology into forensic practices, Cold Recognition aims to contribute to the advancement of forensic science and bring efficiency, compassion, and resolution to the intricate domain of forensic investigations. The ultimate goal is to create a positive societal impact by offering a reliable and efficient solution for the complex and sensitive issue of identifying unknown individuals.
The "Diagnosify - Brain Disease Classification" project has the potential to create significant social impact in several ways:
The Cold Recognition project, empowered by advanced image comparison techniques, seeks to bring profound social impact by addressing the humanitarian challenges associated with unidentified corpses. 🌐
💔 Closure for Families: By expediting the identification process, Cold Recognition offers a vital source of closure for families of missing persons, alleviating prolonged anguish and uncertainty.
👮♂️ Assisting Law Enforcement: The project aids law enforcement agencies in solving cases involving unidentified corpses, contributing to public safety by assisting in the identification of criminals and potentially preventing future crimes.
🌍 Humanitarian Technology: Cold Recognition represents the intersection of technology, forensic science, and social advocacy, showcasing the positive potential of innovation to meet fundamental human needs.
🤝 Interdisciplinary Collaboration: The project underscores the importance of interdisciplinary collaboration, demonstrating how diverse fields can unite to address complex social issues and improve lives.
In essence, Cold Recognition goes beyond being a technological solution; it symbolizes the positive societal impact that innovative applications can have on human well-being and community welfare. 🌟
- - An open-source machine learning framework.
- - A Python library for creating interactive web applications.
- - A platform for developing mobile and web applications.
- - A comprehensive set of tools and libraries for cross-architecture programming.
- - An open-source web application for creating and sharing documents that contain live code, equations, visualizations, and narrative text.
Intel® OneAPI is a comprehensive development platform for building high-performance, cross-architecture applications. It provides a unified programming model, tools, and libraries that allow developers to optimize their applications for Intel® CPUs, GPUs, FPGAs, and other hardware. Intel® OneAPI includes support for popular programming languages like C++, Python, and Fortran, as well as frameworks for deep learning, high-performance computing, and data analytics. With Intel® OneAPI, developers can build applications that can run on a variety of hardware platforms, and take advantage of the performance benefits of Intel® architectures.
In this section, we'll outline how we utilized various Intel® oneAPI libraries and frameworks to enhance the performance and efficiency of our models.
- Intel® oneAPI TensorFlow with Intel Optimization
Optimize your machine learning workflows by harnessing the combined capabilities of TensorFlow and Intel Optimization. This project capitalizes on the performance enhancements delivered by Intel to TensorFlow, ensuring efficient execution of deep learning tasks on Intel architectures. The integration allows for faster and more streamlined model training and inference, making it an ideal choice for projects seeking enhanced computational efficiency and performance.
Intel® OneAPI is a comprehensive development platform for building high-performance, cross-architecture applications. It provides a unified programming model, tools, and libraries that allow developers to optimize their applications for Intel® CPUs, GPUs, FPGAs, and other hardware. Intel® OneAPI includes support for popular programming languages like C++, Python, and Fortran, as well as frameworks for deep learning, high-performance computing, and data analytics. With Intel® OneAPI, developers can build applications that can run on a variety of hardware platforms, and take advantage of the performance benefits of Intel® architectures.
In this section, we'll outline how we utilized various Intel® oneAPI libraries and frameworks to enhance the performance and efficiency of our models.
The following graphs illustrate the substantial performance improvements achieved by integrating Intel® oneAPI libraries and frameworks into our models:
By leveraging the power of Intel® oneAPI libraries and frameworks, our models achieves remarkable performance enhancements and optimized memory utilization across various disease prediction models. The seamless integration of oneDNN, oneDPL, and AI Kit contributes to faster training, efficient inference, and improved overall user experience.
This project harnesses the capabilities of Intel's oneAPI framework to optimize and accelerate TensorFlow performance on Intel architectures. By leveraging oneAPI, we aim to enhance the overall efficiency and speed of TensorFlow-based machine learning workloads, particularly when running on Intel hardware.
-
🚀 Improved Performance: The integration with oneAPI allows TensorFlow to take advantage of optimized libraries and parallel processing capabilities offered by Intel architectures. This results in improved performance and faster execution of machine learning tasks.
-
🌐 Cross-Architecture Compatibility: With oneAPI, we ensure cross-architecture compatibility, enabling seamless execution on various Intel hardware, including CPUs, GPUs, and FPGAs. This flexibility enhances the versatility of our TensorFlow-based applications.
-
⚖️ Scalability: oneAPI provides a scalable environment, allowing TensorFlow models to efficiently scale across different Intel devices. This scalability is crucial for handling large datasets and complex models with optimal resource utilization.
To benefit from the TensorFlow-Intel integration with oneAPI, ensure that you have the necessary oneAPI components installed. You can find detailed instructions on how to set up oneAPI in the official Intel oneAPI documentation.
Once oneAPI is set up, you can seamlessly run TensorFlow applications on Intel architectures, experiencing enhanced performance and scalability.
These are the steps involved in making this project:
- Importing Libraries 📚
- Data Importing 📊
- Data Exploration 🔍
- Data Configuration ⚙️
- Preparing the Data
- Model Creation 🧠
- Model Compilation 🚀
- Training the Model 🏋️
- Testing Predictions 🧪
- Saving model as 'modelnew.h5' 💾
- Deploying the Model as a Web Application using Streamlit 🚀
- Image Comparison: Utilizing advanced image processing and deep learning techniques to compare uploaded images with reference data.
- Aadhar Verification: Verifying identity against Aadhar images to ensure accurate identification.
- Streamlit Interface: User-friendly Streamlit interface for seamless interaction and quick results.
-
Public Safety: Enhance public safety by quickly identifying expired individuals in crowded places.
-
Healthcare: Streamline healthcare processes by ensuring accurate patient identification and reducing the risk of administering treatments to the wrong individuals.
-
Efficiency: Provide a fast and reliable solution for organizations and systems that require quick identification of expired individuals.
We express our gratitude to Intel for providing the powerful oneAPI framework, enabling us to optimize our TensorFlow-based machine learning projects for enhanced performance on Intel hardware.
pip install firebase-admin
- Go to the Firebase Console.
- Create a new project or select an existing one.
- In the left sidebar, click on the gear icon (Project settings).
- Navigate to the "Service accounts" tab.
-
In the "Service accounts" tab, find the "Firebase Admin SDK" section.
-
Click on the "Generate new private key" button.
-
Save the generated JSON file securely.
Our project leverages Firebase for seamless cloud database access. Firebase facilitates image comparison, checking, and retrieval of Aadhar card details. The cloud-based database ensures efficient handling of data, providing accurate and secure results. This integration enhances the project's capabilities, making it a robust and scalable solution for image analysis and identification. Explore the power of Firebase to streamline the comparison process and retrieve Aadhar card images with precision.
The DeepFace model is a powerful and versatile facial recognition model designed for various applications, including identity verification, emotion analysis, and facial attribute prediction. Developed using deep learning techniques, the model is capable of extracting high-level facial features and making accurate predictions.
- Facial Recognition: DeepFace excels in accurately identifying and verifying faces in images. It leverages sophisticated convolutional neural networks (CNNs) to map facial features and compare them with known patterns.
-
Convolutional Neural Networks (CNNs): DeepFace utilizes deep neural networks, specifically CNNs, to automatically learn hierarchical features from facial images. CNNs excel at capturing intricate patterns and representations.
-
Embedding and Comparison: The model generates embeddings, numerical representations of facial features, for each face. These embeddings are then compared using advanced similarity metrics to determine the degree of likeness.
-
Training on Diverse Datasets: DeepFace is trained on extensive and diverse datasets containing millions of facial images. This ensures robustness and adaptability across different demographics and scenarios.
DeepFace can be seamlessly integrated into applications, websites, or services through APIs, making it accessible and user-friendly. Its modular design allows developers to choose specific functionalities based on their requirements.
- Security Systems: DeepFace enhances security by providing robust facial recognition for access control systems.
- Retail Analytics: Retailers leverage the emotion analysis feature for customer engagement analysis and personalized marketing.
- User Authentication: DeepFace is employed in applications requiring secure user authentication through facial recognition.
In summary, the DeepFace model brings cutting-edge facial analysis capabilities, empowering developers to create intelligent and personalized solutions across diverse domains.
Contributions, issues and feature requests are welcome.
Feel free to check issues page if you want to contribute.
Check the contributing guide.
Please ⭐ this repository if this project helped you!
Copyright © 2023 Aksshay88.