Skypiea is a cloud storage application that allows users to upload images, detect faces, and manage those images. It includes features for face detection, storing face embeddings, and searching for similar faces.
face_recognition libraryClone the Repository:
git clone https://github.com/yourusername/skypiea.git
cd skypieaCreate a Virtual Environment and Activate It:
python -m venv venv
source venv/bin/activate # On Windows use `venvScriptsactivate`Install Dependencies:
pip install -r requirements.txtSetup Database:
Create the SQLite database and tables:
python database.pyRun the Application:
python app.pyThe application will be accessible at http://127.0.0.1:5000.
skypiea/
│
├── static/
│ ├── uploads/ # Uploaded images
│ └── faces/ # Detected face images
│ └── css/ # css files
│ └── js/ # JavaScript for frontend interactions
│
├── templates/
│ ├── index.html # Main HTML file
│
├── app.py # Flask application
├── database.py # SQLite database management
└── requirements.txt # Python dependencies
The application uses the face_recognition library to detect faces and compute embeddings. Faces are saved as separate images and their embeddings are stored in a SQLite database to manage duplicates and ensure uniqueness.
embedding_exists function is properly set to avoid duplicates.Feel free to fork the repository and submit pull requests. For major changes, please open an issue first to discuss what you would like to change.