Skip to main content

A 3D array-like NumPy-based data structure for large sparsely-populated volumes

Project description

chunky3d

A 3D array-like NumPy-based data structure for large sparsely-populated volumes

Build

Build Status

Introduction

This library provides a data structure, Sparse, which represents 3D volumetric data and supports a subset of np.ndarray features.

Example

>>> import numpy as np
>>> from chunky3d import Sparse

>>> s = Sparse(shape=(64, 64, 64))
>>> s[0, 0, 0]
0

>>> s.dtype
numpy.float64

>>> s.nchunks
8

>>> s.nchunks_initialized
0

>>> s[1, 2, 3] = 3
>>> s.nchunks_initialized
1

>>> s[:2, 2, 3:5]
array([[0., 0.],
       [3., 0.]])

Features

  • chunky3d.sparse_func - a collection of functions for analyzing chunked arrays, including morphological operations (opening, closing), thinning, connected components
  • Fast load and save using msgpack
  • Operations on arrays using .run(), with possible acceleration using multiprocessing
  • multiprocessing-based acceleration in most of existing sparse_func
  • Accelerated lookup using numba
  • Interpolation (point probe)
  • Origin and spacing: representing 3D space with non-uniform spacing for different axes
  • Easy visualization of arrays with dtype=np.uint8 via chunky3d.k3d_connector.get_k3d_object()

Project details


Download files

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

Source Distribution

chunky3d-0.1.13.tar.gz (30.6 kB view hashes)

Uploaded Source

Built Distribution

chunky3d-0.1.13-py3-none-any.whl (32.8 kB view hashes)

Uploaded Python 3

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