Skip to content

Releases: 77even/NiftiMesh

NiftiMesh 0.1.1

Choose a tag to compare

@77even 77even released this 19 Jun 15:52

Relicensed from MIT to Apache License 2.0.

This is a license-only change — the API, behaviour, and dependencies are identical to 0.1.0. Apache 2.0 adds an explicit patent grant and trademark protection while remaining a permissive open-source license.

pip install "niftimesh[csg]"

Changes

  • License: MIT → Apache-2.0 (LICENSE, NOTICE, per-file SPDX headers, PyPI metadata).
  • No code or behavioural changes.

The earlier 0.1.0 release on PyPI remains under MIT; use 0.1.1+ for the Apache-2.0 terms.

NiftiMesh 0.1.0

Choose a tag to compare

@77even 77even released this 19 Jun 15:14

NiftiMesh turns a multi-label NIfTI segmentation into one watertight, smooth, manifold, self-intersection-free STL surface per label.

📦 Available on PyPI: https://pypi.org/project/niftimesh/

pip install "niftimesh[csg]"   # csg mode (needs meshlib)
pip install niftimesh          # independent + naive modes only

Features

  • csg mode — for one structure split by internal interfaces (lung lobes/segments, Couinaud liver segments): neighbouring labels share their cut seam vertex-for-vertex, so parts assemble with no crack and no black line.
  • independent mode — for disjoint organs (liver + spleen + kidneys, vessels): each label becomes its own closed, smoothed surface.
  • Output names are fully user-defined — nothing is hard-coded to any anatomy.
  • Ships both a CLI (niftimesh) and a Python API (nifti_to_stl / reconstruct).

Usage

niftimesh seg.nii.gz out/ --mode csg --label-names names.json --suffix _3d
from niftimesh import nifti_to_stl
nifti_to_stl("seg.nii.gz", "out/", mode="csg",
             label_names={1: "left_lower_lobe", 2: "left_upper_lobe"})

MIT License.