Wyzely Detect
Recognize faces/objects in a video stream (from a webcam or a security camera) and send notifications to your devices
Features
- Recognize objects
- Recognize faces
- Send notifications to your phone (or other devices) using ntfy
- Optionally, run headless with Docker
- Either use a webcam or an RTSP feed
- Use mrlt8/docker-wyze-bridge to get RTSP feeds from Wyze Cams
Prerequisites
Python
- Camera, either a webcam or a Wyze Cam
- All RTSP feeds should work, however.
- 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.
- Python 3.10 or 3.11
- Poetry (optional)
- Windows or Linux
- I've tested this on MacOS - it works on my 2014 MacBook Air but not a 2011 MacBook Pro
- 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
Docker
- A Wyze Cam
- Any other RTSP feed should work, as mentioned above
- Docker
- Docker Compose
What's not required
- A Wyze subscription
Usage
Installation
Cloning the repository is not required when installing from PyPi but is required when installing from source
- Clone this repo with
git clone https://github.com/slashtechno/wyzely-detect cdinto the cloned repository- Then, either install with Poetry or run with Docker
Installing from PyPi with pip (recommended)
This assumes you have Python 3.10 or 3.11 installed
pip install wyzely-detect
a. You may need to usepip3instead ofpipwyzely-detect
Poetry (best for GPU support)
poetry install
a. For GPU support, usepoetry install -E cuda --with gpupoetry run -- wyzely-detect
Docker
Running with Docker has the benefit of having easier configuration, the ability to run headlessly, and easy setup of Ntfy and 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.
- Modify to
docker-compose.ymlto achieve desired configuration - Run in the background with
docker compose up -d
Configuration
The following are some basic CLI options. Most flags have environment variable equivalents which can be helpful when using Docker.
- For face recognition, put images of faces in subdirectories
./faces(this can be changed with--faces-directory)- Keep in mind, on the first run, face rec
- By default, notifications are sent for all objects. This can be changed with one or more occurrences of
--detect-objectto specify which objects to detect- Currently, all classes in the COCO dataset can be detected
- To specify where notifications are sent, specify a ntfy URL with
--ntfy-url - To configure the program when using Docker, edit
docker-compose.ymland/or set environment variables. - For further information, use
--help
How to uninstall
- If you used Docker, run
docker-compose down --rmi allin the cloned repository - If you used Poetry, just delete the virtual environment and then the cloned repository
Metadata
Release files for wyzely-detect 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| wyzely_detect-0.2.1.tar.gz | 25.5 kB | Without provenance | Details for wyzely_detect-0.2.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| wyzely_detect-0.2.1-py3-none-any.whl | Python 3 | none | any | Details for wyzely_detect-0.2.1-py3-none-any.whl |
Total release size: 51.5 kB
Release files / wyzely_detect-0.2.1.tar.gz
| Download URL | wyzely_detect-0.2.1.tar.gz |
|---|---|
| Size | 25.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e652f46f3527d376beeeea1862238a9d4575366dfe3f19fecceff811da05dbca
|
|
BLAKE2b-256 checksum How to use checksums |
a3db35e2a9cb6558ab657c557927e2acb1e753044ffa96159c192664809e82b6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.8
|
Release files / wyzely_detect-0.2.1-py3-none-any.whl
| Download URL | wyzely_detect-0.2.1-py3-none-any.whl |
|---|---|
| Size | 26.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
79c8f15670a20c2cdb3c055e07e0dd244af8a85e119622514f82485639eca6fc
|
|
BLAKE2b-256 checksum How to use checksums |
e0afc1d1f63282bbb4eeb039a200f562e918328d24878cbb3ad2bc17b95a671c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.8
|
Security for wyzely-detect 0.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.