karen-plugin-watcher 0.7.1
Project Karen: Watcher Device Plugin
License: MIT
Requires Python: >=3.6
Keywords: Artificial Intelligence,AI,Personal Assistant

Project Karen: Watcher (Plugin) · |GitHub license| |Python Versions| |Read the Docs| |GitHub release (latest by date)|
======================================================================================================================

This project is dedicated to building a "Synthetic Human" which is
called Karen (for now) for which we have assigned the female gender
pronoun of "She". She has visual face recognition
(`opencv/opencv <https://github.com/opencv/opencv>`__), speech
transcription
(`mozilla/deepspeech <https://github.com/mozilla/DeepSpeech>`__), and
speech synthesis
(`festival <http://www.cstr.ed.ac.uk/projects/festival/>`__). Karen is
written in Python and is targeted primarily at the single board computer
(SBC) platforms like the `Raspberry
Pi <https://www.raspberrypi.org/>`__.

Visit our main site: https://projectkaren.ai/

Installation
------------

Karen is available as separate components that together create an
extensible environment for devices and the processing of input/output.
These components can be installed together or separately depending on
your needs. This project covers the watcher plugin module alone. For
more information on all of the components please visit the
`documentation <https://docs.projectkaren.ai>`__.

The Watcher plugin allows Karen to capture video and also process it for
object detection and face recognition. It then sends this information to
the Brain for further processing. To install the watcher follow the
steps below:

::

    sudo apt-get install libatlas-base-dev cmake

::

    pip3 install scikit-build # includes skbuild for compiling opencv
    pip3 install karen-device karen-plugin-watcher

**NOTE:** The installation of OpenCV is automatically triggered when you
install karen-plugin-watcher and this may take a while on the Raspberry
Pi OS as it has to recompile some of the libraries. Patience is required
here as the spinner icon appeared to get stuck several times in our
tests... so just let it run until it completes. If it encounters a
problem then it'll print out the error for additional troubleshooting.

See more details in the `configuration
overview <https://docs.projectkaren.ai/en/latest/config.overview/>`__ on
how to include a watcher device in your device container configuration.
It will then be started with the Device Container in which it is
included.

::

    import karen_device, karen_watcher

    brain_url = "http://localhost:8080"
    device = karen_device.DeviceContainer(brain_url=brain_url)
    watcher = karen_watcher.Watcher(callback=device.callbackHandler)
    device.addDevice("karen_watcher.Watcher", watcher, autoStart=True)
    device.start()
    device.wait()

Additional Documentation
------------------------

To read more about Karen and all the components available please visit:
https://docs.projectkaren.ai

--------------

Help & Support
--------------

Help and additional details is available at https://projectkaren.ai

.. |GitHub license| image:: https://img.shields.io/github/license/lnxusr1/karen-watcher
   :target: https://github.com/lnxusr1/karen-watcher/blob/master/LICENSE
.. |Python Versions| image:: https://img.shields.io/pypi/pyversions/yt2mp3.svg
.. |Read the Docs| image:: https://img.shields.io/readthedocs/project-karen
.. |GitHub release (latest by date)| image:: https://img.shields.io/github/v/release/lnxusr1/karen-watcher