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 (such as test_video.tif). 

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 "detectda demo.ipynb".

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.4.tar.gz (45.1 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.4-py3-none-any.whl (45.4 MB view details)

Uploaded Python 3

File details

Details for the file detectda-0.5.4.tar.gz.

File metadata

  • Download URL: detectda-0.5.4.tar.gz
  • Upload date:
  • Size: 45.1 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.4.tar.gz
Algorithm Hash digest
SHA256 0e600ef0d267c8f9007f3d1c35fd118cb8c262df632f4f6966f59b827495de87
MD5 62187c03b28eab258397fe559bbe7cb3
BLAKE2b-256 002d113bac062b314405184c21ff3d5e4f8942408bcf9542bc1bd54206451ad0

See more details on using hashes here.

File details

Details for the file detectda-0.5.4-py3-none-any.whl.

File metadata

  • Download URL: detectda-0.5.4-py3-none-any.whl
  • Upload date:
  • Size: 45.4 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4b2787062bcb6a4b9486e2b9ddb235676b0820bf3153992a18a1caf579cc232a
MD5 b583367aa347970dff228332d325f1bc
BLAKE2b-256 5e76492b7e60554009e27d3831c8d7687b5166da6c63c4b005a8e8819f6cce3f

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