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.1-cp312-cp312-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.12Windows x86-64

PaIRS_UniNa-0.2.1-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.1-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.1-cp311-cp311-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.11Windows x86-64

PaIRS_UniNa-0.2.1-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.1-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.1-cp310-cp310-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.10Windows x86-64

PaIRS_UniNa-0.2.1-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.1-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.1-cp39-cp39-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.9Windows x86-64

PaIRS_UniNa-0.2.1-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.1-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.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f4eec79cab978bf2b8e944c98c763481e8b40b81c9a1087b440a4e21e318c9de
MD5 72d4a5df857023ec8bb94291eae191bb
BLAKE2b-256 f8af5feb579d4430a1ac0cc131f1048b971fd2a7f9df56971b99e63fa01a5283

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 43e6b5e4068c4106f3992638197ff3b194a21c1f84fdd54eade087ec9bfa6104
MD5 b0a6aec72e4b345d5eb1daabc99139bc
BLAKE2b-256 f693d583b02b0c6bb686ebe6766496e64a45850b1cc9c9f4c4d751edd56d926f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 a70e3cf7e05befc22fde84debd3b45403a881e00e2b03ca7bd79801d4deb5ac2
MD5 e2d2987705d4a4b31032a6221a7ad0c7
BLAKE2b-256 506085451577120e2f5d203a3ebc0131d31406d177f1c7101c7bc7a73da611e4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f781ab8ee1f4fc9f1251178b1f466917410c6b351584407a8c3917c3686664a7
MD5 3f59fdf597f418c2153091f0ce00d06e
BLAKE2b-256 8a2e6c61abadae70851e87ec38cba0f5cf7a60705679149d3ad761014d0aa21e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b38414aebe358d04182e236d9911d052b76208df88c4017b97df7e6ed9cc05a7
MD5 8d64b32e8be93edde26dbb48f092e3dd
BLAKE2b-256 2df22fc5818e74e6214dfbe43985f56f53472ba4673780b221d0adfbdac8de30

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 83781f23c54f72d7b0b2100aea5094b9fa4bac650c6bbb90d5f5d590b7bcf0f8
MD5 c9009a663a97972b635606b0f0a0caf8
BLAKE2b-256 46e793a1abdd5a404b186ed41403d0885f45a47cd60282da73331cafbe600052

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 25b77b118ff50012134245bafab41c72157818e77248a02999f95d94291bb447
MD5 08e6e1917e6747d99c884192958e8787
BLAKE2b-256 e4248aef9560427490bccc245c70e1bf14407810bff68af598512af49ce4d965

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 30607a6dc9bb2bf91f506278ded06f75fd60cb2b93a510910a39f9acad331082
MD5 abc9acefb34ba838ae3311b8f676c08d
BLAKE2b-256 9c1be41c39e889f55c872815f65125191553b45e7e5cb6f7db98dd8ddee07800

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 10e61b37ff0ed43db49c227bee9c01531acee6952ca48ee134103a142a8e6848
MD5 e62bee389169a48186f2940caa57fc1b
BLAKE2b-256 e5b897e9186e1be7409692f9e53ccd9617eb1a6e93fd4ef6579e4464ce241941

See more details on using hashes here.

File details

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

File metadata

  • Download URL: PaIRS_UniNa-0.2.1-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.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6a35dad105cb13b1af966e09b9732d372c76ff6d88653249cbf71d57550f48f6
MD5 f896c4b2f26ba41eb5b69056f044067b
BLAKE2b-256 5f933677feb130a25e956baffc324e512d1279910d242a1071fa76008c8829fc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b763483bfa6545aaf700fa59455dc8a712e44d200284d0cce374bffb7865d8e3
MD5 4a7f30ce18ffd0c2cd3a145b575be9a3
BLAKE2b-256 6b75ecab1fd477fc0b612f7232d1d455131e16b32a93afa07393f0ed272eb282

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.1-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 3a4b1b2817b5dcf1f3531becf773363c4266041d0e831fd343cbd25f353849a8
MD5 694989fa34373492c17c5c6168d5087b
BLAKE2b-256 ed30939f0f11ec153897cf1f9f50ef7773c96aa9a6ed6b5b294dd91bccb3c4b2

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