Skip to main content

Use interactive matplotlib to label images for classification

Project description

mpl-image-labeller

License PyPI Python Version

Use Matplotlib to label images for classification. Works anywhere Matplotlib does - from the notebook to a standalone gui!

Key features

  • Simple interface
  • Uses keys instead of mouse
  • Only depends on Matplotlib
    • Works anywhere - from inside Jupyter to any supported GUI framework
  • Easily configurable keymap
  • Smart interactions with default Matplotlib keymap

gif of usage for labelling images of cats and dogs

Usage

import matplotlib.pyplot as plt
import numpy as np

from mpl_image_labeller import image_labeller

images = np.random.randn(5, 10, 10)
labeller = image_labeller(
    images, classes=["good", "bad", "meh"], label_keymap=["a", "s", "d"]
)
plt.show()

Controls

  • <- move one image back
  • -> move one image forward

To label images use the keys defined in the label_keymap argument - default 0, 1, 2...

Get the labels by accessing the labels property.

Overwriting default keymap

Matplotlib has default keybindings that it applied to all figures via rcparams.keymap that allow for actions such as s to save or q to quit. If you inlcude one of these keys as a shortcut for labelling as a class then that default keymap will be disabled for that figure.

Related Projects

This is not the first project to implement easy image labelling but seems to be the first to do so entirely in Matplotlib. The below projects implement varying degrees of complexity and/or additional features in different frameworks.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mpl_image_labeller-0.1.0.tar.gz (577.3 kB view details)

Uploaded Source

Built Distribution

mpl_image_labeller-0.1.0-py2.py3-none-any.whl (6.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file mpl_image_labeller-0.1.0.tar.gz.

File metadata

  • Download URL: mpl_image_labeller-0.1.0.tar.gz
  • Upload date:
  • Size: 577.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for mpl_image_labeller-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a035850d74c9a63d56ee970317a6235fa2ad472ecd9daa3891772be963232f8d
MD5 81135c44c3c6d01dcba05acd8231ee9a
BLAKE2b-256 48e9144f6a71fdd474647fdf605db9fd306062a31b265839a5f5f1c3ee370af9

See more details on using hashes here.

Provenance

File details

Details for the file mpl_image_labeller-0.1.0-py2.py3-none-any.whl.

File metadata

  • Download URL: mpl_image_labeller-0.1.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for mpl_image_labeller-0.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 48eb10453511bef6e45272888ad366a80031d05bd5417b5da7ca942681cd4bc1
MD5 8202d937a21bcecb85524b832dd0d848
BLAKE2b-256 190db25d6e42e67149a9c62d561ec5de9c6e83c60f4c965b4bed26389903df31

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page