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.2

Critical: Fixed critical errors in the calculation of Reynolds stresses for stereoscopic PIV processes. Please consider reviewing the results from processes executed with version 0.2.1, as the w'w', u'w', and v'w' stresses were incorrectly calculated.

Introduced the "Laser Equation Plane" box in the Output tab to specify the initial attempt in the disparity step or to independently assign the constant values of the laser plane during the stereoscopic PIV step.

Introduced the "Copy process to loop over folders" button in the process tree. The latter allows the user to select multiple folders from the disk and replicate the process in the tree for each folder, automatically updating the input image path (specified in the Input tab) to match the path of each selected folder. This makes it extremely easy and fast to create a queue of processes for folders containing similar image sets.

Resolved various bugs related to the copy and link functions of steps within the process tree. Buttons have been relocated to the Explorer, and additional functionality has been added to the context menu of the process tree items.

Improved stability and interface performance.

The guide of PaIRS-UniNa v0.2 is now available. Discover all the information you need for advanced software usage at www.pairs.unina.it.

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

PaIRS_UniNa-0.2.2-cp312-cp312-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.12 Windows x86-64

PaIRS_UniNa-0.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.1 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

PaIRS_UniNa-0.2.2-cp312-cp312-macosx_10_9_universal2.whl (11.4 MB view details)

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

PaIRS_UniNa-0.2.2-cp311-cp311-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.11 Windows x86-64

PaIRS_UniNa-0.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.1 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

PaIRS_UniNa-0.2.2-cp311-cp311-macosx_10_9_universal2.whl (11.4 MB view details)

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

PaIRS_UniNa-0.2.2-cp310-cp310-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.10 Windows x86-64

PaIRS_UniNa-0.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.1 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

PaIRS_UniNa-0.2.2-cp310-cp310-macosx_10_9_universal2.whl (11.4 MB view details)

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

PaIRS_UniNa-0.2.2-cp39-cp39-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.9 Windows x86-64

PaIRS_UniNa-0.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.1 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

PaIRS_UniNa-0.2.2-cp39-cp39-macosx_10_9_universal2.whl (11.4 MB view details)

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

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b0509b47b4f001b7adf42c1b57d884026cbdefd01132a59f173e6eeec32d75a1
MD5 01b70c6006dccbb0cb06cc3479486220
BLAKE2b-256 2d32da158f4076654a03f57ea3e5c2f12f45949589849c3e9a68f9cb4cbc8d23

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3a864501b7cc2887f5ee14f72b8ddc0b6086c0f388d06b43c937db69842f1c83
MD5 09d464d99735aa128cdc3fbdd97c979a
BLAKE2b-256 9b7b17913b16687e1e2fd2e353a83a7e06b81310a4707415bbec1445bba18809

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 0f3fdb98af9566c3c6b88cdbc3d3da861951bc5e69bbcc5a9cfae406e1829fd0
MD5 cd0379c155372eaf583074c0f22c9c02
BLAKE2b-256 b30b72d476a47a379cecf12df46a3ee608016c62b1576c9a4ec60ef76723d9a7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0a2aa976306abe756ab0330345cc865e26f1a1e76213a757f100789cf3877f86
MD5 daad2ffd3d8f5af622b2761f15bf0bf3
BLAKE2b-256 4f54f5d999400a94f807fe3c7a8d75ad0619d6bf520b5af5052c8d3d6934a0fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 01fddb74dde81c260d0d664e56bfd444551be1035efd503636d0e4cc7a730a3e
MD5 43f27613fcd8882d3156512991898574
BLAKE2b-256 5f7d93cdfc75fd6636440e655f99a3d935cbde291966832922a974398ea8b6ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 e61f9f9e773cc8e4745fa433e91bff912051f64967f70f51a5cb92b0f8aa24d4
MD5 6d553fd4c2855131283503f0196a5699
BLAKE2b-256 cce698a16708bd7cadeffdd1e308a6afc8a3503d19645855c57f231d318e5518

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e2ee0c37291d82484e5c59115d13bed1fdf309dac7c08cae9e4a56200a0933e3
MD5 50040faf991e42c6aa4999495f3e716e
BLAKE2b-256 43f732be8ff9149e7d4a594708a1d068651b30b41884f04606e79c57b3b66d2a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f0ed47f00073df8e7369fac0ce3f51912d9ab30a438939e439614fb47668c222
MD5 8f72a132faaf039efc80f111b706ef27
BLAKE2b-256 310310afb7766bbdfd8c5b343327b7b2d971d1667014f377e03b8505213f59eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 5e987584d3db8f32bc6202f830adf4f6721091eef93f442e2514d33f9070345b
MD5 9dfb71b5adf1a594475b74399ad67867
BLAKE2b-256 b89aa74b04cb405630e51bd7fcb2b434b0b3bf6c5325c8da50e1988c849af713

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 84316d108d81ca0d5d30923b3b8b9eb90d324680da565f5f6258e233c129aa23
MD5 b1535469dfc9f2188647f0140131b5f9
BLAKE2b-256 8f6e96f0c1583c1787d3e8ebd9a07db84f0ee300f255dbdc0afce0c0f39c2d64

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c3a0f6e63901d11e5350df5628fd77a7a1aa4fbf402016df9bb6cbe68f95b539
MD5 d3eb5fc22a669b1abd8dd4910ee9cccd
BLAKE2b-256 a4e78af6ed1f896c89cb008d42a8700923c1205e0ca93281bd3d7227ca8dc550

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for PaIRS_UniNa-0.2.2-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 3486e36ce1a8f32d71737406f588f0c12cdc6d93838132d5e4cb416377a627cd
MD5 2d658a10118a0a756bb42c3b7946944d
BLAKE2b-256 b1e765c682b0bf5bc0a54f75e260bfa7f7f5b0436ae7cc8db5a2113605cc3f92

See more details on using hashes here.

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