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 the PaIRS website.

What's new in PaIRS-UniNa 0.2.12

Bug fixes:

  • Fixed issues when reading completed disparity processes.
  • Fixed a bug in the "Further information" section of the log of completed processes.
  • Fixed undo restoration for calibration steps.
  • Fixed bugs in saving .cfg files from the Process tab and in saving and setting custom processes.

New features:

  • Removed the constraint on the coordinate convention in stereoscopic PIV calibration: users can now adopt any coordinate system without being restricted to a predefined axis orientation.

Performance improvements:

  • Optimized the PaIRS-PIV library, enabling faster cross-correlation computations.

User-interface enhancements:

  • Introduced a combo box in the Vis tab for quick access to result files matching the filename pattern specified in the Output tab, simplifying result navigation and visualization.
  • Improved the management of imported files in the Vis tab: each processing step now handles its own associated file independently, enhancing flexibility in the visualization of input images and output results.

Distribution:

  • Added example scripts (serialPIV.py and parallelPIV.py) to the user guide to run PIV processing outside the graphical interface, enabling batch execution, automation, and integration into custom Python workflows.

Portable executable

Download the standalone PaIRS_UniNa executable from the PaIRS website.

Installation in Python

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 (Python package)

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.

From command prompt (executable version)

The same options are also available when using the portable/executable version of PaIRS. From the command prompt you can simply run:

PaIRS -c      (Windows)
./PaIRS -c    (MacOS/Linux)

to perform a clean run, or:

PaIRS -d      (Windows)
./PaIRS -d    (MacOS/Linux)

to start in debug mode (password required).

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.12-cp313-cp313-win_amd64.whl (11.9 MB view details)

Uploaded CPython 3.13Windows x86-64

pairs_unina-0.2.12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pairs_unina-0.2.12-cp313-cp313-macosx_11_0_universal2.whl (13.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ universal2 (ARM64, x86-64)

pairs_unina-0.2.12-cp312-cp312-win_amd64.whl (11.9 MB view details)

Uploaded CPython 3.12Windows x86-64

pairs_unina-0.2.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pairs_unina-0.2.12-cp312-cp312-macosx_11_0_universal2.whl (13.9 MB view details)

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

pairs_unina-0.2.12-cp311-cp311-win_amd64.whl (11.9 MB view details)

Uploaded CPython 3.11Windows x86-64

pairs_unina-0.2.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pairs_unina-0.2.12-cp311-cp311-macosx_11_0_universal2.whl (13.9 MB view details)

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

pairs_unina-0.2.12-cp310-cp310-win_amd64.whl (11.9 MB view details)

Uploaded CPython 3.10Windows x86-64

pairs_unina-0.2.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pairs_unina-0.2.12-cp310-cp310-macosx_11_0_universal2.whl (13.9 MB view details)

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

File details

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

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 cbaa4f797a08a1f30f33dd5ba14b45100a70e13ef0041f765f81d28c6c89f0f1
MD5 11e962fa7cf496d2babc8607180ffe5d
BLAKE2b-256 c1248002508fbf9636f15eea0ec0e7d9b397a9f1f26d05db574e467475b61f5a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 db668d4b47d556b33ece65fd7e68497b985d6c184279e8cb42c3d129661da9c3
MD5 1b62edefb3cfbdd721b1f7215fb1814a
BLAKE2b-256 f59f64a4d91d510dcf28711d0172c9890c9857eada705265cf7b930c81154413

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.12-cp313-cp313-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp313-cp313-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 fb0ad01f868720ee66f1a5911809811d91e95c2567593e9155a3fcddf40fda11
MD5 b078c0b2073ce3570533718bccf9dc4b
BLAKE2b-256 4db4f6242b3b7fb66b00809024836aac3401444681e3c072936f010e11ec1a6a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 218b91d27d5e3f9a408431e2e2e9420ac91c8fda0dd779884b2cf6ea4559a06b
MD5 37b0a2e99be4be10a288743e1a1a2822
BLAKE2b-256 08103b7a32f92659edbbfdaf7a9b2b43bb3a022a646a4e750f8b7f116e4402c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c2393520a39cf6176a3e97287caf406f9fc792f3e767f6b8c108afaa3bb2bd73
MD5 07052892ce2c0ee671ca853627335bea
BLAKE2b-256 ae64e8936ddc36fab4b40e7907a26481ffc8a196bfbf7cf567e7a24086a3f015

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.12-cp312-cp312-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp312-cp312-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 e24290427c27f01b93bb819e31213c129ce04ed43e60717f1de83c1fc8c0d969
MD5 d734ade56ea52b0ee503f9e3ffd3eb6f
BLAKE2b-256 03ee70bc3b058bf96d1ecd7365f9812c5227a83fe34bdd2f4cf6b68b13a40395

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 941293bafe1a4f3b6924b1c5cdadab7ac00aefeefeec111e4c8b0e125fa2d888
MD5 d32d97a9923b4a605d16f372285d4626
BLAKE2b-256 5a13019b5b286463c8583db1d3ecb36a2337b6e6c1024778ccf28984208c1b58

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 225319c234736d397d0d28e6b0ef3f2d61625252edbe0fbf92563f15004bf07d
MD5 aaa9532d52c44495421cf8c611e8b9af
BLAKE2b-256 a9c6a57a092f6387f62d62709b11cfb89e8c73a6f040591978be52f4e4fa579c

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.12-cp311-cp311-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp311-cp311-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 34fed075baeeaf9706783e5b1ef974882af4b3cdff7b71559cb106647d81845a
MD5 134ffe8daead789d102e4caa460aace2
BLAKE2b-256 294a28487f6ad5908c1a159709258742d13b0d2ea98e122bf2aef6e3c332bf38

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 acd6ee987a2906f2e110917ba91a773607abb055897819cebbeee2252e0fccff
MD5 dbe37e9751730a14a4f9d529c65d5225
BLAKE2b-256 3d73e2a400bd50ec9e22bfce3fdac67e8a3d3eeb7659ee52e2e29d7fcb1390c8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 19f239f29f128a5b6fc810eb3566edd30632f2f1d875d3488698ca856ce100ea
MD5 bc93e19e7c349091e5f5303da487b1ca
BLAKE2b-256 c8aea0503c441d296765dc0eab0b34293a0fb615260858ac32ace0796a4d4a08

See more details on using hashes here.

File details

Details for the file pairs_unina-0.2.12-cp310-cp310-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for pairs_unina-0.2.12-cp310-cp310-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 162e73693e7554ca924c427b70739145461141bf62ecd4a9665b45f0b79a7274
MD5 f6009963f827d54eb108e012f733a849
BLAKE2b-256 68b65b3b6c7bb5113228bdf2203f3287693afa6653d06c72855f897bcba1336b

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