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.10+ 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.5

Bug fixes:

  • fixed bugs in launching PIV and stereoscopic PIV processes in special cases;
  • fixed tooltip crash introduced by PySide 6.9;
  • corrected package import errors and context menu bugs;
  • resolved multiple visual glitches in image tree selection and map visualization.

New features:

  • implemented version control of required Python packages with automatic compatibility check and warning;
  • disparity maps are now automatically saved in the output folder and can be visualized in Vis;
  • added tools for restricting view in Vis based on interrogation window size and shifting the view window interactively.

User-interface enhancements:

  • redesigned the execution logic of internal workers for improved control and robustness;
  • improved formatting and display of coordinates and variable values when moving the cursor during map visualization;
  • updated button labels and layout for clarity and consistency.

Distribution:

  • Support for Python 3.9 has been discontinued;
  • Python 3.13 builds have been successfully created and tested.

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 intend 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

[6] Giordano, R., & Astarita, T. (2009). "Spatial resolution of the Stereo PIV technique". Experiments in Fluids, 46(4), 643-658. doi: 10.1007/s00348-008-0589-y

Please cite the following works if you intend 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.5-cp313-cp313-win_amd64.whl (10.2 MB view details)

Uploaded CPython 3.13Windows x86-64

pairs_unina-0.2.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pairs_unina-0.2.5-cp312-cp312-win_amd64.whl (10.2 MB view details)

Uploaded CPython 3.12Windows x86-64

pairs_unina-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pairs_unina-0.2.5-cp312-cp312-macosx_10_9_universal2.whl (12.1 MB view details)

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

pairs_unina-0.2.5-cp311-cp311-win_amd64.whl (10.2 MB view details)

Uploaded CPython 3.11Windows x86-64

pairs_unina-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pairs_unina-0.2.5-cp311-cp311-macosx_10_9_universal2.whl (12.1 MB view details)

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

pairs_unina-0.2.5-cp310-cp310-win_amd64.whl (10.2 MB view details)

Uploaded CPython 3.10Windows x86-64

pairs_unina-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pairs_unina-0.2.5-cp310-cp310-macosx_10_9_universal2.whl (12.1 MB view details)

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

File details

Details for the file pairs_unina-0.2.5-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 4411b545ffa51caece1c5141714a2db49bbe963e4afeb32095e319ff3e8662ce
MD5 4a6cdc002b6e9fd33fbc49e0f2d8af67
BLAKE2b-256 0c5c68f29cd4294bd6874314c3363ef019ba483a5ed7b35244c7e0e826386a41

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4d5be8011bfa49e7da8d1352c71b1650e1c8ff070668b12c9c6fbf0c8ee905e7
MD5 ceeaae535b6b8bf4b0531ca6235755cb
BLAKE2b-256 9fec9712ac5e1fe2b814f5e51b7f4fb99210280e39076fbfa1f53cd182d0cb61

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2e9f9c5be56d9ef05e44f8e21bbf0c7b7ea1ea2a0435a47b1f3f3911ac117123
MD5 4225829c980e177f58935fe8b5218894
BLAKE2b-256 b3afecd2ea8d5d86a57ea8e41f926571694f73946da029986d21a387cb2cb209

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fdf8f2c4a16fe89c184e905ac6bda45635ab92253f284881dcd40d74a9d525a7
MD5 0f6a6e846885f4b9f78d1b4456565f2b
BLAKE2b-256 da69897a0b3e95dc533fef3418ce7435e79d1160f7c53165f9e3e43b257e1fea

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 7edf09f7ed11ffeb0d0e520b063672aa4488b9c6a4ad04a4e41b5a1ea33ccfc6
MD5 39fcf3c8e1aa1b01b15d5dce57d8ab1d
BLAKE2b-256 d74fb654a57b6b0801efe159fdc657225708d22c2da3c769bfb56d96cf3e609e

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7dfe876c8b5c44f6b6538b6a6f9aaa0c8925e2df613c3571af14a86505877acd
MD5 ca3755f674ecd017d574b823b880bb8f
BLAKE2b-256 2f71c6337a088299546ca28d0081ac748615079c7af4f8cf568572275b45ed80

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f8effc0a365930d7e5937978d77d9c265f8d2972dca3e04b53ff84a73820fa7d
MD5 ce80d6e47dd0a404eec7a2da765930d2
BLAKE2b-256 ae88fe3cfecc0193dc3942ad1ccae30f4e3bab70b82850e9f376325e037c4eb4

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 891a8bacc9355ff172715170b3f8389b2e86c39af35ecaef45043a3cc60a63fd
MD5 50d484190fa83fbf0141dc4419eae7d0
BLAKE2b-256 21b529f071c3666b1982177e0839289c2d8aee270c1d0db2522dbbb2fbf26533

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1adcbaa02f496b170dcd94bed2869b22c4fe6b9271d3f13b8579d1a5801dfd11
MD5 c8243decb4d22a72c653e25e1145382d
BLAKE2b-256 859c4eeb4411a115ab37bf72f33d85f58d3437b6443df34e91ccbfa0273a932c

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c31a1d3e0601cd673f54261ec91770a03060c5825750b7ead3059ee48db32714
MD5 1c89f57096951f346ed01c5240a85217
BLAKE2b-256 ab159da0effc12338a029acdced19dff0a424a00806778d7102b0f04a85a4e75

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.5-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.5-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 623b1d4bf98e9bb7e807a8888e6ec62be24ddaa3a42af5ac2bcedbdbb3f127ea
MD5 2dbdda02e137797db99785850e85babb
BLAKE2b-256 f9e25d5cdc5012d2656b42ef25bbd20b7dedac7a1baa971aaf8d844a6dea01b2

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