Skip to main content

Library for adding well described noise to images.

Project description

Small library for adding well described noise to images, with a command-line utility specifically for application on Nifti formatted images.

Installation

Simple! Just open your favourite terminal and type:

$ pip install onevox

Alongside installing the oneVoxel package, this will also ensure the dependencies are installed: numpy, scipy, nibabel, and nilearn.

For building this in Docker, you can run the following command:

$ docker build -t gkiar/onevox:local --network host .

Usage

From within Python this library can used to apply noise to arbitrary images:

[1]: import numpy as np
[2]: np.random.seed(1234)
[3]: data = np.random.random((10,10,10))  # Create data matrix
[4]: mask = data[:,:,0] > 0.4  # Define mask as values higher than 0.4 in the first 2D slice

[5]: from onevoxel import noise  # Load noise utils

[6]: # Generate noise locations from image and mask
[7]: loc = noise.generate_noise_params(data, mask, erode=0, mode='independent')
[8]: loc
[(3, 6, 0),
 (4, 4, 1),
 (9, 0, 2),
 (7, 9, 3),
 (1, 2, 4),
 (3, 1, 5),
 (0, 7, 6),
 (9, 0, 7),
 (3, 4, 8),
 (1, 9, 9)]

[9]: # Apply noise to the image and verify it's in the right spot
[10]: noisy_data, noisy_hash = noise.apply_noise_params(data, loc, scale=True, intensity=0.01)
[11]: sorted(list(zip(*np.where(noisy_data != data))), key=lambda elem: elem[2]) == loc
True

Contributing

Excited by the project and want to get involved?! Please check out our contributing guide, and look through the issues to start seeing where you can lend a hand. We look forward to approving your amazing contributions!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for onevox, version 0.3.0rc3
Filename, size File type Python version Upload date Hashes
Filename, size onevox-0.3.0rc3-py3-none-any.whl (14.0 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size onevox-0.3.0rc3.tar.gz (11.2 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page