https://github.com/pupil-labs/pupil-detectors
https://github.com/pupil-labs/pupil-detectors
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/pupil-labs/pupil-detectors
- Owner: pupil-labs
- License: lgpl-3.0
- Created: 2019-09-17T09:43:44.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-09-03T22:14:26.000Z (8 months ago)
- Last Synced: 2025-02-27T07:56:04.896Z (about 2 months ago)
- Language: C++
- Size: 7.14 MB
- Stars: 27
- Watchers: 9
- Forks: 18
- Open Issues: 7
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGES.rst
- License: COPYING
Awesome Lists containing this project
README
.. image:: https://img.shields.io/pypi/v/pupil-detectors.svg
:target: `PyPI link`_.. image:: https://img.shields.io/pypi/pyversions/pupil-detectors.svg
:target: `PyPI link`_.. _PyPI link: https://pypi.org/project/pupil-detectors
.. image:: https://github.com/pupil-labs/pupil-detectors/workflows/tests/badge.svg
:target: https://github.com/pupil-labs/pupil-detectors/actions?query=workflow%3A%22tests%22
:alt: tests.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black
:alt: Code style: Black.. .. image:: https://readthedocs.org/projects/skeleton/badge/?version=latest
.. :target: https://skeleton.readthedocs.io/en/latest/?badge=latest.. image:: https://img.shields.io/badge/skeleton-2022-informational
:target: https://blog.jaraco.com/skeleton***************
pupil-detectors
***************This Python package contains the standalone 2D pupil detectors for the
`Pupil Core `__ software stack.Install via PyPI
################.. code-block::
pip install pupil-detectors
Usage
#####Here's a quick example on how to detect and draw an ellipse.
.. code-block:: python
import cv2
from pupil_detectors import Detector2Ddetector = Detector2D()
# read image as numpy array from somewhere, e.g. here from a file
img = cv2.imread("pupil.png")
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)result = detector.detect(gray)
ellipse = result["ellipse"]# draw the ellipse outline onto the input image
# note that cv2.ellipse() cannot deal with float values
# also it expects the axes to be semi-axes (half the size)
cv2.ellipse(
img,
tuple(int(v) for v in ellipse["center"]),
tuple(int(v / 2) for v in ellipse["axes"]),
ellipse["angle"],
0, 360, # start/end angle for drawing
(0, 0, 255) # color (BGR): red
)
cv2.imshow("Image", img)
cv2.waitKey(0)Developers
##########Building from Source
********************Installing the dependencies
===========================- macOS: ``brew install eigen opencv``
- Windows: ``choco install eigen opencv``
- Ubuntu: ``apt-get install libeigen3-dev libeigen3-dev``Building the Python package
===========================.. code-block:: bash
# Clone repository
git clone [email protected]:pupil-labs/pupil-detectors.git
cd pupil-detectors# Install from source
pip install .