Skip to main content

PaIRS - Particle Image Reconstruction Software

Project description

PaIRS-UniNa: Particle Image Reconstruction Software - University of Naples "Federico II"

PaIRS-UniNa is a project developed by the Experimental Thermo Fluid-Dynamics (ETFD) group of University of Naples "Federico II" since 2000. It is aimed to provide fast and efficient tools for digital particle image velocimetry (PIV) analysis in research and industrial applications.

PaIRS-UniNa is based on a C library (PaIRS-PIV) and relies on a graphical user interface (PaIRS) that is developed via PySide6 and makes the use of PaIRS-PIV easy and intuitive. PaIRS-PIV includes several modules that allow to process double-frame or time-resolved 2D planar PIV images as well as stereoscopic and tomographic PIV or Lagrangian particle tracking velocimetry (4D PTV) measurements.

The current release of PaIRS-UniNa features the module for the 2D planar PIV analysis and the stereoscopic PIV analysis and a module for optical calibration of camera systems, namely CalVi.

CalVi is the calibration module of PaIRS-UniNa and allows accurate optical calibration of single and multiple camera bundles with the camera models mostly used in the PIV community: polynomials, rational functions and the pinhole camera model. Among the other features, it supports camera calibration procedures working with unknown positions and orientations of the calibration target and the integration of the pinhole camera model with a refractive correction model for cylindrical geometries (based on ray-tracing and Snell’s law).

PaIRS-UniNa is supported by Python 3.9+ and is compatible with all the operating systems, however, the PaIRS-PIV library relies on OpemMP library, which must be installed on the macOS platform. On the other side, PaIRS requires, among other packages, SciPy and matplotlib.

For further information, please visit PaIRS website.

What's new in PaIRS-UniNa 0.2.0

The latest version of PaIRS marks a departure from its predecessors. PaIRS now boasts a completely redesigned interface aimed at quick, simple, and efficient usability. Users bid farewell to Past, Present, and Future trees in favor of a new, more intuitive process management system (the Explorer): processes are organized into groups called projects and each project or process can be queued for later execution. Processes within each project can be modified until they are launched, and if necessary, reset and restarted from scratch. Each project also features a tree of deleted processes, allowing retrieval of outdated or abandoned processes.

Currently, PaIRS includes four types of processes: preprocessing, PIV (Particle Image Velocimetry), calibration, and stereoscopic PIV. Each of these processes consists of one or more steps, which can be optional or mandatory. Similar to the first version of PaIRS, these steps are editable via PaIRS iconic tabs (Input, Output, Process, etc.). The process tree provides immediate visibility into the status of each step, further streamlining management.

The calibration process grants access to CalVi (Calibration Visualizer). It is no longer necessary to launch the PaIRS calibration tool separately; everything is conveniently available within a single interface.

The Input tab introduces a completely renewed image import list, offering users total freedom without the constraints of the past.

Additionally, the Vis tab introduces some exciting new features, such as the ability to modify colormaps and vector/streamline colors, along with improved handling of image/result loading.

Installation

All PaIRS-UniNa wheels are distributed under LGPLv3+ licences. The installation can be performed with:

python -m pip install PaIRS-UniNa

MacOS requirements

Normally the OpenMP library is not preinstalled in MacOs. A possible way to install this library is:

curl -O https://mac.r-project.org/openmp/openmp-12.0.1-darwin20-Release.tar.gz
sudo tar fvxz openmp-12.0.1-darwin20-Release.tar.gz -C /

Run

From command prompt

It is possible to run PaIRS directly from the command prompt with:

python -m PaIRS_UniNa

PaIRS automatically saves and stores its configuration upon exit and starts from the latter at the next run. If any trouble with loading the last configuration file (saved in the package folder) occurs, the user is suggested to execute a clean run of PaIRS via the following command:

python -m PaIRS_UniNa -c

A debug mode is also available for developers. It can be accessed via:

python -m PaIRS_UniNa -d

After the above command, the user will be asked to enter a password. Interested users can ask the password to the authors by sending an email to: etfd@unina.it. The debug mode can be turned on/off at any time via the keyboard sequence: Alt+Shift+D.

On macOS and Linux python must be replaced by python3.

In Python environment

In a Python environment, to run PaIRS the following commands can be used :

>>> from PaIRS_UniNa import PaIRS
>>> PaIRS.run()

For clean mode:

>>> PaIRS.cleanRun()

while for debug mode:

>>> PaIRS.debugRun()

User guide

For more details about PaIRS usage, see our user guide.

Authors and contact details

Gerardo Paolillo - Research Associate, Department of Industrial Engineering, University of Naples "Federico II", via Claudio, 21, 80125, Napoli, Italy

Tommaso Astarita - Full professor, Department of Industrial Engineering, University of Naples "Federico II", Piazzale Tecchio, 80, 80125, Napoli, Italy

email: etfd@unina.it

Related works

Please cite the following works if you are intended to use PaIRS-UniNa for your purposes:

[1] Astarita, T., & Cardone, G. (2005). "Analysis of interpolation schemes for image deformation methods in PIV". Experiments in Fluids, 38(2), 233-243. doi: 10.1007/s00348-004-0902-3

[2] Astarita, T. (2006). "Analysis of interpolation schemes for image deformation methods in PIV: effect of noise on the accuracy and spatial resolution". Experiments in Fluids, vol. 40 (6): 977-987. doi: 10.1007/s00348-006-0139-4

[3] Astarita, T. (2007). "Analysis of weighting windows for image deformation methods in PIV." Experiments in Fluids, 43(6), 859-872. doi: 10.1007/s00348-007-0314-2

[4] Astarita, T. (2008). "Analysis of velocity interpolation schemes for image deformation methods in PIV". Experiments in Fluids, 45(2), 257-266. doi: 10.1007/s00348-008-0475-7

[5] Astarita, T. (2009). "Adaptive space resolution for PIV". Experiments in Fluids, 46(6), 1115-1123. doi: 10.1007/s00348-009-0618-5

Please cite the following works if you are intended to use CalVi for your purposes:

[1] Paolillo, G., & Astarita, T. (2020). "Perspective camera model with refraction correction for optical velocimetry measurements in complex geometries". IEEE Transactions on Pattern Analysis and Machine Intelligence, 44(6), 3185-3196. doi: 10.1109/TPAMI.2020.3046467.

[2] Paolillo, G., & Astarita, T. (2021). "On the PIV/PTV uncertainty related to calibration of camera systems with refractive surfaces". Measurement Science and Technology, 32(9), 094006. doi: 10.1088/1361-6501/abf3fc.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

PaIRS_UniNa-0.2.0-cp312-cp312-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.12Windows x86-64

PaIRS_UniNa-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

PaIRS_UniNa-0.2.0-cp312-cp312-macosx_10_9_universal2.whl (11.1 MB view details)

Uploaded CPython 3.12macOS 10.9+ universal2 (ARM64, x86-64)

PaIRS_UniNa-0.2.0-cp311-cp311-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.11Windows x86-64

PaIRS_UniNa-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

PaIRS_UniNa-0.2.0-cp311-cp311-macosx_10_9_universal2.whl (11.6 MB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

PaIRS_UniNa-0.2.0-cp310-cp310-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.10Windows x86-64

PaIRS_UniNa-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

PaIRS_UniNa-0.2.0-cp310-cp310-macosx_10_9_universal2.whl (19.1 MB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

PaIRS_UniNa-0.2.0-cp39-cp39-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.9Windows x86-64

PaIRS_UniNa-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

PaIRS_UniNa-0.2.0-cp39-cp39-macosx_10_9_universal2.whl (19.1 MB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file PaIRS_UniNa-0.2.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fe7f4cae70e7c10ca22a95ef15f44b6d557bcc935423740975f5a14c47d9157e
MD5 1d2b4e4bf183ec1ae327abc00a4486e2
BLAKE2b-256 2bc7d9e0fa807d4d3110227c213f1242e15aae9f1e20c0f637b9df17fdac5747

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 53d57e1c873cb8abc3fc71b9a04e21d0cf5abd36944929c00fffda6a0088f47f
MD5 0edebd7fb20180a95aafe74bf6ce076d
BLAKE2b-256 a5fde618b8cdfa2ffb71e1207d52dd73aa965bd5b0aee721fd9db59ddd1727e7

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 1eb341bb77e6bc44ab3ea3351aba28ffcea194e2352e2604af57857e950901b8
MD5 2bb0af48b22f2864854b51df86f5c9d6
BLAKE2b-256 f91a4bc4c9037272e21b681985bdb6e2cc4f16baf443495f43a4082b8f4e3d26

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 cf995562f066a111654802aa30174e1e328a97a26afaaa8a0236a82f497f9e9c
MD5 41de8961075058a06adef8cc2c436a2e
BLAKE2b-256 f42a5741df82f1ab1031f404d0bc6d3da168ae7d45981237600b561d38622f00

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 12a81e0503444ca2d2f5a37c86d4aee44bb8fc0aaf2d127d7450324087250924
MD5 58f78de7e4bf72259e6091a1499624a9
BLAKE2b-256 356b2a2c95e6c030885710bcef9378be49dcc3a5560793ec966923d2d041dc68

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 505d1c87c7ea551c7c1fff67ab986f90a2a8cfa5f2190cde7fe4ceaeee9b2376
MD5 f1ba1db016090e24f81e0ec1dee8e441
BLAKE2b-256 9062089bae91a0e917e9030e44f4f4d36e7054c9b69f94ab58b7fa14dacd2bbf

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c4811c5683da06f25a1002c96e476914853ff1a3dd1ea86a20c964f1b6ea0ea0
MD5 665e1f8297a4affa37be224a43cfec71
BLAKE2b-256 3d43b60d2ac5b978bee3ad3f58f9f40147d0e5a1408fbd1ee9dbc335523c169a

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 02c2a269da6d0f7d3e605e70d6d17d973c542d37f5665f994078f156c74e5512
MD5 c94d7df7aa5d489c55b143a44eeb4830
BLAKE2b-256 c7c0b736c1669b0c9c5f1ecd9109a9ec486804dc4e6d26ff3a17736d2b01647d

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 6db158a8bc30a69ea0f3fe94745c1581ba6543c87b409e6baf845baa92ab8035
MD5 61add67c9d5d2afa1e033752af5b3d21
BLAKE2b-256 c4bbe3f2ea5cae2a65bcdf01019678192b76e26655463a43aedea320a6879006

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: PaIRS_UniNa-0.2.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 9.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 2af57dc938c1f9037f33600d020d3ae61552fd97b31c35b181668c96a52cfad8
MD5 08af71ffffe804c5fc2f8bc43119475f
BLAKE2b-256 f4bc7970135bc4eee007adc118c63718c176abd3fcc460cc1a8720d818c3877e

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ae1351901b3d70d003af4f3d448e7bff21d6026b7448f639e760dd6e9a780d6a
MD5 33e928a842eab83ab4cd36078262e506
BLAKE2b-256 893f63d48ee441032e67aaa797f5ca602dda524d3ed6df428c2d198ea91c1923

See more details on using hashes here.

File details

Details for the file PaIRS_UniNa-0.2.0-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 73454ce556a967a142ffb3dc6a827fb2f19e3876674e777cc8863b66f7d6fcf8
MD5 d08e69b4038ad07daad5a4bc7d633323
BLAKE2b-256 3abb8f45ca289d8d71ecefa371a563a2bd3e9f201eec4ec24bc7b0e1a052f75e

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