{"id":25594168,"url":"https://github.com/wprashed/facespotter","last_synced_at":"2026-04-13T03:30:17.944Z","repository":{"id":277975463,"uuid":"930671113","full_name":"wprashed/facespotter","owner":"wprashed","description":null,"archived":false,"fork":false,"pushed_at":"2025-02-17T09:36:00.000Z","size":70719,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-17T10:30:38.316Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wprashed.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-02-11T02:33:54.000Z","updated_at":"2025-02-17T09:36:03.000Z","dependencies_parsed_at":"2025-02-17T10:41:08.623Z","dependency_job_id":null,"html_url":"https://github.com/wprashed/facespotter","commit_stats":null,"previous_names":["wprashed/facespotter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wprashed%2Ffacespotter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wprashed%2Ffacespotter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wprashed%2Ffacespotter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wprashed%2Ffacespotter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wprashed","download_url":"https://codeload.github.com/wprashed/facespotter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239998437,"owners_count":19731606,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-21T10:34:35.237Z","updated_at":"2026-04-13T03:30:17.848Z","avatar_url":"https://github.com/wprashed.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Face Spotter\n\nThe **Face Spotter** application is a Python-based tool designed to detect, track, and manage users via facial recognition. It allows you to register users, track their activity in real-time using a camera, generate reports, and manage user details (e.g., rename or update images).\n\n---\n\n## Table of Contents\n\n1. [Features](#features)\n2. [Installation](#installation)\n3. [Usage](#usage)\n4. [File Structure](#file-structure)\n5. [Troubleshooting](#troubleshooting)\n6. [Contributing](#contributing)\n7. [License](#license)\n\n---\n\n## Features\n\n- **User Registration**: Register new users manually by providing a name and uploading an image.\n- **Real-Time Tracking**: Detect and track registered users in real-time using a webcam.\n- **Automatic Unknown User Registration**: Automatically registers unknown faces with random names.\n- **Activity Reporting**: Generate detailed reports of user activity, including start time, end time, and duration.\n- **User Management**:\n  - Rename users.\n  - Update user profile images.\n  - Delete users.\n- **Customizable Timeout**: Configure the timeout period for closing user tracking intervals.\n- **Filterable Reports**: View reports filtered by specific users or all users.\n\n---\n\n## Installation\n\n### Prerequisites\n\n- Python 3.8 or higher\n- A webcam or camera connected to your system\n- Supported operating systems: macOS, Windows, Linux\n\n### Dependencies\n\nInstall the required Python libraries using `pip`:\n\n```bash\npip install opencv-python face-recognition numpy pillow\n```\n\nFor macOS users, you may need to install OpenCV with AVFoundation support:\n\n```bash\npip install opencv-python-headless\n```\n\n### Setup\n\n1. Clone the repository or download the source code.\n2. Ensure the following directories exist in the project folder:\n   - `encodings/` (for storing user encodings)\n   - `images/` (for storing user profile images)\n3. Place a custom icon file (`icon.png`) in the root directory if you want to use a custom application icon.\n\n---\n\n## Usage\n\n### Running the Application\n\nRun the application using the following command:\n\n```bash\npython app.py\n```\n\n### Main Features\n\n1. **Register a New User**:\n   - Enter a name in the input field.\n   - Click \"Register User\" and select an image file containing the user's face.\n\n2. **Start Tracking**:\n   - Click \"Start Tracking\" to begin detecting and tracking users in real-time.\n   - Detected users will be displayed on the camera feed with their names and active durations.\n\n3. **Manage Users**:\n   - Click \"Manage Users\" to view, rename, update images, or delete users.\n\n4. **View Reports**:\n   - Click \"View Report\" to see a detailed report of user activity.\n   - Use the dropdown menu to filter reports by a specific user or view all users.\n\n---\n\n## File Structure\n\n```\nuser-tracker/\n├── app.py                  # Main application script\n├── encodings/              # Directory for storing user encodings (.npy files)\n├── images/                 # Directory for storing user profile images (.jpg files)\n├── users.csv               # CSV file for storing user data (name, encoding path, image path)\n├── user_tracking_report.csv # Generated report file for user activity\n├── icon.png                # Custom application icon (optional)\n└── README.md               # Documentation file\n```\n\n---\n\n## Troubleshooting\n\n### Common Issues and Solutions\n\n1. **Camera Not Working**:\n   - Ensure your camera is connected and working properly.\n   - On macOS, try installing OpenCV with AVFoundation support:\n     ```bash\n     pip install opencv-python-headless\n     ```\n\n2. **Indentation Errors**:\n   - Ensure all code blocks are properly indented (Python uses 4 spaces per indentation level).\n\n3. **Missing Dependencies**:\n   - Install missing dependencies using `pip install \u003cpackage-name\u003e`.\n\n4. **Face Not Detected**:\n   - Ensure the uploaded image has a clear, visible face.\n   - Adjust lighting conditions when using the camera.\n\n5. **Old Reports Not Updated After Renaming a User**:\n   - Ensure the `update_username` function is correctly implemented to update both the `users.csv` and `user_tracking_report.csv` files.\n\n---\n\n## Contributing\n\nWe welcome contributions to improve this project! To contribute:\n\n1. Fork the repository.\n2. Create a new branch for your feature or bug fix.\n3. Submit a pull request with a detailed description of your changes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwprashed%2Ffacespotter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwprashed%2Ffacespotter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwprashed%2Ffacespotter/lists"}