Skip to main content

feature extraction and analysis pipeline for image data

Project description

Spotlob

Spotlob is a package to provide a simple, yet flexible and fast workflow to measure properties of features in images for scientific purposes.

It provides implementations for some use cases but can be easily tuned and be extended towards specific purposes. Jupyter notebook widgets can be used to quickly find a set of algorithms and parameters that work for a given image and should also work for similar images.

The set of parameters and algorithms are stored as a pipeline which can be restored and distributed and then be applied to a possibly large set of images. This way, standard routines for repetitive and comparable measurements for a defined type of images can be forged into a small and portable file.

When it's helpful

It is meant to be used in a scenario where a detection method has to be applied repetetively onto a large set of similar images, but the exact parameters are not clear. If your set of tasks can be done by a collection of opencv-function calls, that need tweaking and you wish to have a GUI to do that, but without to lose scripting options, spotlob is for you.

If you already have a couple of working python algorithms and want to have a GUI for them to play around, use spotlob.

If you need to evaluate some images and you don't know which of the thousand parameters of an algorithm you found on google work best, you might be able to find the right ones faster with spotlob.

Spotlob jupyter widget

Usage example

from spotlob.spim import Spim
from spotlob.defaults import default_pipeline()

my_spim = Spim.from_file("image.jpg", cached=True)
my_pipe = default_pipeline()

result_spim = my_pipe.apply_all_steps(my_spim)

print(result_spim.get_data())

What it's not

Spotlob is not a complete feature detection library and it does not solve a detection problem, that has not already been solved elsewhere. It is not an alternative to opencv or scikit-image, but rather builds on top of it. At the moment it covers only a tiny fraction of what is possible with these libraries, but it tries to make it easy for the reader to use these (or any other python image processing library) within the spotlob workflow.

Although it might work with machine learning algorithms, it is not tuned towards this usage and it is not designed with this application in mind.

Installation

Install with pip

pip install spotlob

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
spotlob-0.9.0a1.tar.gz (21.3 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page