{"id":16162659,"url":"https://github.com/slashtechno/wyzely-detect","last_synced_at":"2025-03-18T22:31:12.230Z","repository":{"id":106386471,"uuid":"578799667","full_name":"slashtechno/wyzely-detect","owner":"slashtechno","description":"Recognize faces/objects in a video stream (from a webcam or a security camera) and send notifications to your devices","archived":true,"fork":false,"pushed_at":"2024-05-12T20:48:37.000Z","size":812,"stargazers_count":12,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-14T07:17:47.544Z","etag":null,"topics":["computer-vision","hacktoberfest","object-detection","opencv","wyze","wyzecam"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/slashtechno.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","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},"funding":{"github":["slashtechno"]}},"created_at":"2022-12-15T22:59:27.000Z","updated_at":"2025-01-05T02:15:06.000Z","dependencies_parsed_at":"2023-10-16T12:25:12.718Z","dependency_job_id":"5e07e76d-65bb-4af4-8e39-c24d21837b9b","html_url":"https://github.com/slashtechno/wyzely-detect","commit_stats":null,"previous_names":["slashtechno/wyzely-detect","slashtechno/wyze-face-recognition"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slashtechno%2Fwyzely-detect","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slashtechno%2Fwyzely-detect/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slashtechno%2Fwyzely-detect/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slashtechno%2Fwyzely-detect/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slashtechno","download_url":"https://codeload.github.com/slashtechno/wyzely-detect/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244318568,"owners_count":20433934,"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":["computer-vision","hacktoberfest","object-detection","opencv","wyze","wyzecam"],"created_at":"2024-10-10T02:32:12.626Z","updated_at":"2025-03-18T22:31:11.890Z","avatar_url":"https://github.com/slashtechno.png","language":"Python","funding_links":["https://github.com/sponsors/slashtechno"],"categories":[],"sub_categories":[],"readme":"# Wyzely Detect  \nRecognize faces/objects in a video stream (from a webcam or a security camera) and send notifications to your devices  \n\n### Features  \n- Recognize objects  \n- Recognize faces  \n- Send notifications to your phone (or other devices) using [ntfy](https://ntfy.sh/)  \n- Optionally, run headless with Docker  \n- Either use a webcam or an RTSP feed  \n    - Use [mrlt8/docker-wyze-bridge](https://github.com/mrlt8/docker-wyze-bridge) to get RTSP feeds from Wyze Cams  \n\n\n## Prerequisites  \n### Python  \n- Camera, either a webcam or a Wyze Cam  \n    - All RTSP feeds _should_ work, however.  \n    - **WSL, by default, does not support USB devices.** It is recommended to natively run this, but it is possible to use it on WSL with streams or some workarounds.  \n- Python 3.10 or 3.11  \n- Poetry (optional)  \n- Windows or Linux  \n    - I've tested this on MacOS - it works on my 2014 MacBook Air but not a 2011 MacBook Pro  \n    - Both were upgraded with OpenCore, with the MacBook Air running Monterey and the MacBook Pro running a newer version of MacOS, which may have been the problem  \n\n### Docker  \n- A Wyze Cam  \n    - Any other RTSP feed _should_ work, as mentioned above  \n- Docker\n- Docker Compose\n\n\n## What's not required  \n- A Wyze subscription  \n\n## Usage  \n### Installation  \nCloning the repository is not required when installing from PyPi but is required when installing from source  \n1. Clone this repo with `git clone https://github.com/slashtechno/wyzely-detect`  \n2. `cd` into the cloned repository  \n3. Then, either install with [Poetry](https://python-poetry.org/) or run with Docker  \n\n\n#### Installing from PyPi with pip (recommended)  \nThis assumes you have Python 3.10 or 3.11 installed  \n1. `pip install wyzely-detect`  \n    a. You may need to use `pip3` instead of `pip`  \n2. `wyzely-detect`  \n\n#### Poetry (best for GPU support)\n1. `poetry install`  \n    a. For GPU support, use `poetry install -E cuda --with gpu`\n2. `poetry run -- wyzely-detect`  \n\n#### Docker  \nRunning with Docker has the benefit of having easier configuration, the ability to run headlessly, and easy setup of Ntfy and [mrlt8/docker-wyze-bridge](https://github.com/mrlt8/docker-wyze-bridge). However, for now, CPU-only is supported. Contributions are welcome to add GPU support. In addition, Docker is tested a less-tested method of running this program.  \n\n1. Modify to `docker-compose.yml` to achieve desired configuration  \n2. Run in the background with `docker compose up -d`\n\n### Configuration  \nThe following are some basic CLI options. Most flags have environment variable equivalents which can be helpful when using Docker. \n\n- For face recognition, put images of faces in subdirectories `./faces` (this can be changed with `--faces-directory`) \n    - Keep in mind, on the first run, face rec\n- By default, notifications are sent for all objects. This can be changed with one or more occurrences of `--detect-object` to specify which objects to detect\n    - Currently, all classes in the [COCO](https://cocodataset.org/) dataset can be detected\n- To specify where notifications are sent, specify a [ntfy](https://ntfy.sh/) URL with `--ntfy-url`\n- To configure the program when using Docker, edit `docker-compose.yml` and/or set environment variables.\n- **For further information, use `--help`**\n\n### How to uninstall  \n- If you used Docker, run `docker-compose down --rmi all` in the cloned repository\n- If you used Poetry, just delete the virtual environment and then the cloned repository","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslashtechno%2Fwyzely-detect","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fslashtechno%2Fwyzely-detect","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslashtechno%2Fwyzely-detect/lists"}