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 only the module for the 2D planar 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.8+ 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.1.13
- PaIRS now includes the possibility to customize the windowing parameters for each iteration of a PIV process. Give a look at the Windowing box in the Process tab!
- CalVi now fully supports optical camera calibration for transparent cylindrical geometries.
- Stay up to date with the latest version of the PaIRS-UniNa package: PaIRS will notify you if a new version is released!
- Improved the behaviour of item selection in the trees of Queue.
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 /
Windows 7/Python 3.8 requirements
Please, notice that on Windows 7 you should install Python 3.8 and PySide 6.1.3 version. For this purpose, after the Python and PaIRS installations (as above explained), execute the following commands:
python -m pip uninstall PySide6
python -m pip install PySide6==6.1.3
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.
Similarly, the following commands can be executed to launch Calvi:
python -m PaIRS_UniNa -calvi (normal mode)
python -m PaIRS_UniNa -calvi -c (clean mode)
python -m PaIRS_UniNa -calvi -d (debug mode)
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()
On the other side, to run CalVi the following commands can be used:
>>> from PaIRS_UniNa import CalVi
>>> CalVi.run() (normal mode)
>>> CalVi.cleanRun() (clean mode)
>>> CalVi.debugRun() (debug mode)
User guide
For more details about PaIRS usage, see our user guide.
For more details about CalVi 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for PaIRS_UniNa-0.1.13-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2b497ee7869869e8234f58566ca32e4c2305cfb12d1f07811aae89b11585b2b |
|
MD5 | 66635261379529030fb99161930fc741 |
|
BLAKE2b-256 | 346b846313ce86b81378f585af9e2b6c8253c1816676dc6aa24341fadfa4cc99 |
Hashes for PaIRS_UniNa-0.1.13-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2af59049518e6eabdd18fa9648293610aa7956f1ca9db61c1e4e1cbee863d10f |
|
MD5 | dd8d62330cefdbc013dd45eb267a9571 |
|
BLAKE2b-256 | 0f993705e241c7a451a1a902fa267c3d38defc875a30d1a2780cb2a2daa14643 |
Hashes for PaIRS_UniNa-0.1.13-cp311-cp311-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ac290d337812204bd2dbacf64bd689b2658b7012026346be2a87a22f9337b63 |
|
MD5 | 1c048ce763c999bbad4a0027eb3d0959 |
|
BLAKE2b-256 | 971ee4b311b7367981a24e8f62420b24928f684406e22f379d7b736b77fd8b4c |
Hashes for PaIRS_UniNa-0.1.13-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6a09ccd6467b62fa94a7c8d10a4185b3a8c20fd433668a3e4f29dc2e3b6e151c |
|
MD5 | 071d8315a2d221310d90f20d8a3d9aab |
|
BLAKE2b-256 | 9dcf44db70bd349a4a0a9c78d8dbd5084cc4cc250ecd4c5ead8ba0aecb1972b5 |
Hashes for PaIRS_UniNa-0.1.13-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 040806c60d6e732908a5111673d210da73ffc3c8d32968b2f457b5715e78bc3f |
|
MD5 | 3df93653e2f804f58815b8e98464005a |
|
BLAKE2b-256 | 9e22da363003478085028b4d82f1934481dbc85357088e4c72658134b9c197f0 |
Hashes for PaIRS_UniNa-0.1.13-cp310-cp310-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 515614e3af7cc79ef17887e883d1b8408e5bb3c8c64a3ac49b196bed99a87b85 |
|
MD5 | ef47df6a65be06344b9a21d87edb9647 |
|
BLAKE2b-256 | 3ae4b57c6220be38578fb8b185a387546b77cc6f1e5898089cab3c0d8d56f66f |
Hashes for PaIRS_UniNa-0.1.13-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c40f9e2ab893c45bd6c65e7fc849f80c42034c397ae51579e6d76a21b85c9b5 |
|
MD5 | dab5a4b650eb1d1f7962acc291431db7 |
|
BLAKE2b-256 | e197c07f65ca34384940b8e4fc1499a771369172db76a7f6b339dbb066c31b75 |
Hashes for PaIRS_UniNa-0.1.13-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab8568e9f58e7bd0e2b0cf481c53c41523499ec50d8c4da3d5f8af9d3480d3ec |
|
MD5 | aaae3e8639a3252c741fa659da7a4893 |
|
BLAKE2b-256 | 1e0288db8b5d2ae77dfcb657d75eb169686d1385d5e1f86eeb3a9a2b6738516a |
Hashes for PaIRS_UniNa-0.1.13-cp39-cp39-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ff2cf333717f8fc0604877686fef556c06f67d4f496af24781eede137953a96 |
|
MD5 | 61866052e352c8245c9c9d97afd4b971 |
|
BLAKE2b-256 | 12a4fb9f234ef9edd3edb6ad762b86c933dde6acef765c39a94a4e2582247c81 |
Hashes for PaIRS_UniNa-0.1.13-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2be4e2d595de821ff1422a6114cd7016641b901f3b78c73d0c108a468eedc400 |
|
MD5 | 88b3a5c1cba7e8eee49f65b3f4171b16 |
|
BLAKE2b-256 | e35c61055d041d6673eed168f14a4f399bf325fd0f164f41d536f57df509b927 |
Hashes for PaIRS_UniNa-0.1.13-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 64ec9106e4b72f0d5ab2ff3cf32604369a578a649c4e1da8980ed8776dd78c67 |
|
MD5 | a2fc2b3996c2239b38f7986c988ea4f6 |
|
BLAKE2b-256 | df8fea237334769e92889a88b0a3f290217034527de11de7c7a8b23494715aee |
Hashes for PaIRS_UniNa-0.1.13-cp38-cp38-macosx_11_0_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50f2d6724886381e00c1f2c7d671015ab887b02744201bb3c73eb1a34e7946be |
|
MD5 | 9a87ff643e4e8831189a787780f3e79c |
|
BLAKE2b-256 | b59b76bd7a8ee153959c3baa4233c3c8b0f44db15e1d58af4ee9b5630a63202b |