Skip to main content

Python Image Displacement Identification.

Project description


Image-based Displacement Identification (IDI) implementation in python.

See the documentation for pyIDI.

Use Napari UI for quick displacement identification:


Create an instance:

video = pyidi.pyIDI(cih_file='video.cih')

Currently the pyIDI method works with Photron .cih and .cihx files, however, numpy.ndarray can also be passed as cih_file argument. If an array is passed, it must have a shape of: (n time points, image height, image width).

Set the points where displacements will be determined:

p = np.array([[0, 1], [1, 1], [2, 1]]) # example of points

Or use point selection UI to set individual points or grid inside selected area. For more information about UI see documentation. Launch viewer with:


The method of identification has to be specified:

video.set_method(method='sof', **method_kwargs)

After points are set, displacements can be calculated (using method, set in set_method):

displacements = video.get_displacements()

Multiprocessing can also be used by passing the processes argument:

displacements = video.get_displacements(processes=4)


  • Add with class that inherits after IDIMethods
  • This class must have methods:
    • calculate_displacements with attribute displacements
    • get_points (static method - sets attribute video.points)
  • In pyIDI add a new method of identification in avaliable_methods dictionary.

DOI Build Status

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

pyidi-0.27.tar.gz (43.0 kB view hashes)

Uploaded source

Built Distribution

pyidi-0.27-py3-none-any.whl (52.7 kB view hashes)

Uploaded py3

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