Python wrapper for BM4D denoising - from Tampere with love, again
Python wrapper for BM4D for stationary correlated noise (including white noise).
BM4D is an algorithm for attenuation of additive spatially correlated stationary (aka colored) Gaussian noise for volumetric data. This package provides a wrapper for the BM4D binaries for Python for the denoising of volumetric and volumetric multichannel data. For denoising of images/2-D multichannel data, see also the bm3d package.
These newer binaries (v4+) are designed only for dealing with additive Gaussian white or correlated noise. Special features like embedded handling of Rice noise and adaptive groupwise variance estimation are supported by the legacy binaries v3.2 at https://webpages.tuni.fi/foi/GCF-BM3D/ .
This implementation is based on
- Y. Mäkinen, L. Azzari, A. Foi, 2020, "Collaborative Filtering of Correlated Noise: Exact Transform-Domain Variance for Improved Shrinkage and Patch Matching", in IEEE Transactions on Image Processing, vol. 29, pp. 8339-8354.
- M. Maggioni, V. Katkovnik, K. Egiazarian, A. Foi, 2013, "Nonlocal Transform-Domain Filter for Volumetric Data Denoising and Reconstruction", in IEEE Transactions on Image Processing, vol. 22, pp. 119-133.
- Y. Mäkinen, S. Marchesini, A. Foi, 2022, "Ring Artifact and Poisson Noise Attenuation via Volumetric Multiscale Nonlocal Collaborative Filtering of Spatially Correlated Noise", in Journal of Synchrotron Radiation, vol. 29, pp. 829-842.
The package contains the BM4D binaries compiled for:
- Windows (Win11, MinGW-64)
- GNU/Linux (GCC 11.3.0, 64-bit)
- Mac OSX (El Capitan, 64-bit): no longer maintained and will be removed from future releases.
- macOS (Sonoma, 64-bit ARM)
The package is available for non-commercial use only. For details, see LICENSE.
Basic usage:
y_hat = bm4d(z, sigma) # white noise: include noise std
y_hat = bm4d(z, psd) # correlated noise: include noise PSD (size of z)
For usage examples, see the examples folder of the full source (bm4d-***.tar.gz) from https://pypi.org/project/bm4d/#files .
Contact: Ymir Mäkinen ymir.makinen@tuni.fi
Metadata
Release files for bm4d 4.2.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| bm4d-4.2.5.tar.gz | 3.9 MB | Without provenance | Details for bm4d-4.2.5.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| bm4d-4.2.5-py3-none-any.whl | Python 3 | none | any | Details for bm4d-4.2.5-py3-none-any.whl |
Total release size: 4.8 MB
Release files / bm4d-4.2.5.tar.gz
| Download URL | bm4d-4.2.5.tar.gz |
|---|---|
| Size | 3.9 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5a7ca4d85ecb570e8eb20213d035fc801da58227772fd077b0a8798f5342c9b4
|
|
BLAKE2b-256 checksum How to use checksums |
2033d85ecd508ad6d0782002c21264d5d67f43d430d9e2304841bd5c7fb25753
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.4
|
Release files / bm4d-4.2.5-py3-none-any.whl
| Download URL | bm4d-4.2.5-py3-none-any.whl |
|---|---|
| Size | 862.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
601338bbd54bcbd971d70b5a6961583a9ccaa564c982389cf3f82bd0a6d5bad5
|
|
BLAKE2b-256 checksum How to use checksums |
1947034be51bc2b40279fd1417397d3f330b73906774bd6eaecd26ed93c1491f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.4
|
Security for bm4d 4.2.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.