Skip to main content

detectda - detecting features in videos using TDA

Project description

detecTDA logo


A package for detecting topological features in images.

Tailor-made to perform hypothesis testing on sequences of noisy images in catalysis.

Installation

If you have pip installed you may simply run

$ pip install detectda

Or, you may clone the git repository and then in said directory run:

$ pip install .

Alternatively, the following is still supported:

$ python3 setup.py install

Summarizing an image series

With a video (and optional polygonal region—see below), extracting statistics related to structure and shape of your noisy image could not be easier. detecTDA leverages TDA (topological data analysis) to derive such quantities, an illustration of which can be seen below.

Illustration of the detectda algorithm

Such processing is accomplished by fitting the class ImageSeries (or ImageSeriesPlus) to your data. Hypothesis testing whether or not images are generated from a vacuum region within the images is accomplished by fitting and transforming VacuumSeries objects. Note that hypothesis testing is only currently supported for the ImageSeries class.

Usage

detectda is a Python package for detection and hypothesis testing of noisy greyscale images and videos using TDA.

To use the identify_polygon script, run the script in the command line (after having installed the package). Then follow these steps:

1. Enter the name of your .tif video. 

2. Then right-click to select the boundaries of your polygon. 
   Double-click to connect the polygon together and press any key 
   (such as "space" or "enter") to exit and save. 

3. Then you will name a .pkl file (you do not need to add the .pkl at the end) 
   corresponding to your video (such as `test_video.pkl`). 

4. Finally, the file `test_video.pkl` (or whatever you have called it) contains the cropped video 
   (according to the boundaries of your polygon) as well as the polygonal region of interest. 

You will then be able to use this data to process your video with the persistent entropy or ALPS statistic—see the 'Read the Docs' page, linked to below.

Documentation

Additional documentation and usage examples can see at detectda.readthedocs.io.

Test video

I would like to thank the Crozier Research Group for providing "test_video.tif". Please see the accompanying paper: "Feature detection and hypothesis testing for extremely noisy nanoparticle images using topological data analysis" (2023) by Thomas, Crozier, Xu, and Matteson for information on how the video was collected.

License

detectda was created by Andrew M. Thomas. It is licensed under the terms of the MIT license.

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

detectda-0.5.6.dev1.tar.gz (11.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

detectda-0.5.6.dev1-py3-none-any.whl (12.1 MB view details)

Uploaded Python 3

File details

Details for the file detectda-0.5.6.dev1.tar.gz.

File metadata

  • Download URL: detectda-0.5.6.dev1.tar.gz
  • Upload date:
  • Size: 11.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for detectda-0.5.6.dev1.tar.gz
Algorithm Hash digest
SHA256 a9bc5f2191bb597aaefff232020a804f3eadd16fe97a132ed2a9904365830db5
MD5 09ea9997e1c8ea819eb324787a3c7fee
BLAKE2b-256 087f42475769a532d80dc0d5d2d01788514599ea07d56a8a37e9048ada039306

See more details on using hashes here.

File details

Details for the file detectda-0.5.6.dev1-py3-none-any.whl.

File metadata

  • Download URL: detectda-0.5.6.dev1-py3-none-any.whl
  • Upload date:
  • Size: 12.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for detectda-0.5.6.dev1-py3-none-any.whl
Algorithm Hash digest
SHA256 c5e3141a2fddcf59cade16683c28a9caade6f155f0770be5682585bfaefc6d11
MD5 8a8fad03f8634faee265aadbf309fc76
BLAKE2b-256 149a446dea6c593ac170f6b7c5073fb13ba5b413ae2d882e543738d1d7c0aa36

See more details on using hashes here.

Supported by

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