{"id":22127469,"url":"https://github.com/fluiddyn/fluidimage","last_synced_at":"2026-01-05T13:13:56.974Z","repository":{"id":100841552,"uuid":"96232987","full_name":"fluiddyn/fluidimage","owner":"fluiddyn","description":":sparkler: A libre Python framework for scientific treatments of large series of images (publish-only mirror)","archived":false,"fork":false,"pushed_at":"2024-05-22T07:18:53.000Z","size":26821,"stargazers_count":12,"open_issues_count":0,"forks_count":4,"subscribers_count":5,"default_branch":"branch/default","last_synced_at":"2024-05-22T08:35:02.965Z","etag":null,"topics":["image-processing","particle-image-velocimetry","piv","postprocessing"],"latest_commit_sha":null,"homepage":"https://foss.heptapod.net/fluiddyn/fluidimage","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fluiddyn.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-07-04T15:41:41.000Z","updated_at":"2024-05-27T11:55:17.661Z","dependencies_parsed_at":"2023-06-10T09:00:17.082Z","dependency_job_id":"17995901-c291-4190-ac73-ca00df7226ab","html_url":"https://github.com/fluiddyn/fluidimage","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluiddyn%2Ffluidimage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluiddyn%2Ffluidimage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluiddyn%2Ffluidimage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluiddyn%2Ffluidimage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fluiddyn","download_url":"https://codeload.github.com/fluiddyn/fluidimage/tar.gz/refs/heads/branch/default","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227598419,"owners_count":17791605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["image-processing","particle-image-velocimetry","piv","postprocessing"],"created_at":"2024-12-01T17:18:56.132Z","updated_at":"2026-01-05T13:13:56.965Z","avatar_url":"https://github.com/fluiddyn.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FluidImage\n\n[![Latest version](https://img.shields.io/pypi/v/fluidimage.svg)](https://pypi.python.org/pypi/fluidimage/)\n![Supported Python versions](https://img.shields.io/pypi/pyversions/fluidimage.svg)\n[![Documentation status](https://readthedocs.org/projects/fluidimage/badge/?version=latest)](http://fluidimage.readthedocs.org)\n[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)\n[![pyOpenSci Peer-Reviewed](https://pyopensci.org/badges/peer-reviewed.svg)](https://github.com/pyOpenSci/software-review/issues/194)\n[![Code coverage](https://codecov.io/gh/fluiddyn/fluidimage/branch/branch%2Fdefault/graph/badge.svg)](https://codecov.io/gh/fluiddyn/fluidimage/branch/branch%2Fdefault/)\n[![Heptapod CI](https://foss.heptapod.net/fluiddyn/fluidimage/badges/branch/default/pipeline.svg)](https://foss.heptapod.net/fluiddyn/fluidimage/-/pipelines)\n[![Github Actions Linux](https://github.com/fluiddyn/fluidimage/actions/workflows/ci-linux.yml/badge.svg?branch=branch/default)](https://github.com/fluiddyn/fluidimage/actions/workflows/ci-linux.yml)\n[![Github Actions Pixi](https://github.com/fluiddyn/fluidimage/actions/workflows/ci-pixi.yml/badge.svg?branch=branch/default)](https://github.com/fluiddyn/fluidimage/actions/workflows/ci-pixi.yml)\n\nFluidImage is a free and open-source Python framework to process images of fluids (in\nparticular with [PIV]), and analyse the resulting fields.\n\n**Documentation:** \u003chttp://fluidimage.readthedocs.org\u003e\n\nImage processing for fluid mechanics is still dominated by proprietary tools. Such tools\nare not ideal when you want to understand and tweak the algorithms and/or to use\nclusters. There are also good and useful PIV software ([PIVlab], [UVmat]) written in\nMatlab, which is itself proprietary.\n\nWith the improvement of the Python numerical ecosystem and of tools for collaborative\ndevelopment, one can think it is possible to build together a good community-driven\nlibrary/toolkit specialized in image processing for fluid mechanics. This is our project\nwith FluidImage.\n\nFluidimage has now grown into a clean software reimplementing in modern Python algorithms\nand ideas taken from [UVmat], [OpenPIV], [PIVlab] and [PIVmat] with a focus on\nperformance, usability and maintanability. However, Fluidimage is not restricted to\nParticle Image Velocimetry computations ([PIV], i.e. displacements of pattern obtained by\ncorrelations of cropped images) and can be used to\n\n- display and pre-process images,\n\n- compute displacement or velocity fields with PIV, Background-Oriented Schlieren\n  ([BOS](https://en.wikipedia.org/wiki/Background-oriented_schlieren_technique)) and\n  [optical flow](https://en.wikipedia.org/wiki/Optical_flow),\n\n- analyze and display vector and scalar fields.\n\nWe want to make FluidImage easy (useful documentation, easy installation, nice API,\nusable with simple scripts and few simple graphical user interfaces), reliable (with good\n[unittests](https://codecov.io/gh/fluiddyn/fluidimage/)) and very efficient, in\nparticular when the number of images is large. Thus we want FluidImage to be able to run\nefficiently and easily on a personal computer and on big clusters. The efficiency is\nachieved by using\n\n- a framework for asynchronous computations (currently, we use\n  [Trio](https://trio.readthedocs.io)) and an associated API to define \"topologies\" of\n  parallel computations.\n\n- parallelism to efficiently use the available cores of the Central Processing Units\n  (CPU),\n\n- good profiling and efficient and specialized algorithms,\n\n- cutting-edge tools for fast computations with Python (in particular\n  [Pythran](https://pythran.readthedocs.io) through\n  [Transonic](https://transonic.readthedocs.io)).\n\n## Installation and setup\n\nFluidimage can be installed from\n[wheels and sdist available on PyPI](https://pypi.python.org/pypi/fluidimage/) with tools\nlike pip, [UV] and [PDM]. Alternatively, it can be installed from conda-forge packages\n(for example available on https://prefix.dev/channels/conda-forge/packages/fluidimage)\nwith tools like conda (installed with [Miniforge]) or [Pixi].\n\nIn some cases, Fluidimage will require that the environment variable `OMP_NUM_THREADS` is\nset to `1`. With a POSIX shell like Bash, it can be done with `export OMP_NUM_THREADS=1`.\n\nFor more details, see\n[the installation page in the documentation](https://fluidimage.readthedocs.io/en/latest/install.html).\n\n## Basic usage\n\nFew minimalist examples about image visualisation, preprocessing and PIV computation are\npresented in\n[the overview of the project](https://fluidimage.readthedocs.io/en/latest/overview.html).\nOther usage cases can be found in our\n[tutorials](https://fluidimage.readthedocs.io/en/latest/tutorial.html) and\n[examples](https://fluidimage.readthedocs.io/en/latest/examples.html).\n\n## Citation\n\nIf you use Fluidimage to produce scientific articles, please cite\n[our metapaper presenting the FluidDyn project](https://openresearchsoftware.metajnl.com/articles/10.5334/jors.237/):\n\n```bibtex\n\n@article{fluiddyn,\ndoi = {10.5334/jors.237},\nyear = {2019},\npublisher = {Ubiquity Press,  Ltd.},\nvolume = {7},\nauthor = {Pierre Augier and Ashwin Vishnu Mohanan and Cyrille Bonamy},\ntitle = {{FluidDyn}: A Python Open-Source Framework for Research and Teaching in Fluid Dynamics\n    by Simulations,  Experiments and Data Processing},\njournal = {Journal of Open Research Software}\n}\n\n```\n\n[miniforge]: https://github.com/conda-forge/miniforge\n[openpiv]: http://www.openpiv.net/\n[pdm]: https://pdm-project.org\n[piv]: https://en.wikipedia.org/wiki/Particle_image_velocimetry\n[pivlab]: https://pivlab.blogspot.com/p/what-is-pivlab.html\n[pivmat]: http://www.fast.u-psud.fr/pivmat/\n[pixi]: https://pixi.sh\n[uv]: https://docs.astral.sh/uv/\n[uvmat]: http://servforge.legi.grenoble-inp.fr/projects/soft-uvmat/wiki/UvmatHelp\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffluiddyn%2Ffluidimage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffluiddyn%2Ffluidimage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffluiddyn%2Ffluidimage/lists"}