Metadata-Version: 2.1
Name: remotecv
Version: 3.3.3
Summary: remotecv is an OpenCV worker for facial and feature recognition
Author: Bernardo Heynemann
Author-email: heynemann@gmail.com
License: MIT
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Multimedia :: Graphics :: Presentation
Requires-Python: ==3.*,>=3.7.0
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: opencv-python-headless (==4.*,>=4.2.0)
Requires-Dist: Pillow (>=9.0.0)
Requires-Dist: pyres (==1.*,>=1.5.0)
Requires-Dist: redis (==4.*,>=4.2.0)
Requires-Dist: sentry-sdk (==0.*,>=0.14.2)
Provides-Extra: dev
Requires-Dist: opencv-python-headless (==4.*,>=4.2.0) ; extra == 'dev'
Requires-Dist: Pillow (>=9.0.0) ; extra == 'dev'
Requires-Dist: pyres (==1.*,>=1.5.0) ; extra == 'dev'
Requires-Dist: redis (==4.*,>=4.2.0) ; extra == 'dev'
Requires-Dist: sentry-sdk (==0.*,>=0.14.2) ; extra == 'dev'
Requires-Dist: black (==22.*,>=22.1.0) ; extra == 'dev'
Requires-Dist: celery (==5.*,>=5.2.7) ; extra == 'dev'
Requires-Dist: coverage (==6.*,>=6.3.2) ; extra == 'dev'
Requires-Dist: flake8 (==4.*,>=4.0.1) ; extra == 'dev'
Requires-Dist: pre-commit (==2.*,>=2.20.0) ; extra == 'dev'
Requires-Dist: preggy (==1.*,>=1.4.4) ; extra == 'dev'
Requires-Dist: pylint (==2.*,>=2.13.8) ; extra == 'dev'
Requires-Dist: pyssim (==0.*,>=0.4) ; extra == 'dev'
Requires-Dist: pytest-asyncio (==0.*,>=0.18.0) ; extra == 'dev'
Requires-Dist: pytest-cov (==3.*,>=3.0.0) ; extra == 'dev'
Requires-Dist: pytest (==7.*,>=7.0.0) ; extra == 'dev'
Requires-Dist: thumbor (==7.*) ; extra == 'dev'

[![Coverage
Status](https://coveralls.io/repos/thumbor/remotecv/badge.svg?branch=master&service=github)](https://coveralls.io/github/thumbor/remotecv?branch=master)

# RemoteCV

RemoteCV is a queued mechanism to run [OpenCV][opencv] computations and store
them for later usage.

Currently, [Thumbor][thumbor] uses remotecv to outsource facial or feature
detection, but nothing stops you from integrating it into your product.

RemoteCV supports both [PyRes][PyRes] and [Celery][Celery] for queueing
back-end.

## Install

```sh
pip install remotecv
```

## Run local

Clone the repository:

```sh
git clone https://github.com/thumbor/remotecv.git
```

Create a virtualenv:

```
cd remotecv
mkvirtualenv remotecv
```

Install dependencies:

```sh
make setup
```

Run:

```sh
make run
```

After installing the project, you can execute

```sh
remotecv
```

If you want a healthcheck handler, you must pass an argument in remotecv
execution. You can also specify the http server port, the default http server
port is 8080.

```sh
remotecv --with-healthcheck --server-port=8888
```

## Tests

```sh
make unit
```

[thumbor]: https://github.com/thumbor/thumbor/wiki
[PyRes]: https://github.com/binarydud/pyres
[Celery]: https://www.celeryproject.org
[opencv]: https://opencv.org/
