Skip to main content

À compléter : courte description du package

Project description

Dactim-angio

⚠️ À compléter : une phrase de description officielle du projet (objectif scientifique, contexte de l'équipe).

dactim_angio is a Python research library for angiographic image processing, providing spatial grids, projective geometry, radial basis function interpolation, and differentiable similarity metrics — building blocks for 2D/3D registration and reconstruction of vascular imaging.

Features

  • Spatial grids (dactim_angio.spatial.grid)
    • Abstract SpatialGrid with push/pull coordinate transforms and finite-difference gradients
    • SpatialGridAffine — affine-mapped volumes, loadable directly from NIfTI files
    • SpatialGrid_XA — X-ray angiography grids built from NIfTI + JSON metadata (projection center, etc.)
    • Gaussian image pyramids, rescaling, scalar-field transfer between grids, and PyVista export
  • Projective geometry (dactim_angio.spatial.geom)
    • PointCloud and RayFan primitives with KD-tree / BallTree spatial indexing
    • Sparse point–point, ray–ray and point–ray distance matrices (with analytic derivatives)
    • Camera model with field-of-view frustum and visibility queries
    • Parametrized affine transforms (rotation/translation) with closed-form derivatives
  • Radial basis function interpolation (dactim_angio.spatial.RBF)
    • GaussianRBF over point clouds — evaluation on points or rays, with shape derivatives
    • GaussianRBF_rays over angular ray fans, plus L² / H¹₀ norm matrices
  • Differentiable similarity metrics (dactim_angio.metrics)
    • Mutual information (kernel density estimator), Kraskov joint entropy, correlation, MSE
    • Each returns the metric value and its gradients, ready for gradient-based optimization

Installation

Requires Python ≥ 3.9.

From source:

git clone https://github.com/jdambrin/Dactim-angio.git
cd Dactim-angio
pip install .

Once published on PyPI:

pip install dactim-angio

Quick start

The snippet below is illustrative and follows the public API — adapt paths and field names to your data.

from dactim_angio.spatial.grid import SpatialGridAffine
from dactim_angio.metrics import mse

# Load a 3D volume from a NIfTI file
grid = SpatialGridAffine.fromNifti("patient.nii.gz")
print(grid)                      # shape + scalar-field summary

# Export to PyVista for 3D visualization
mesh = grid.toPyvista()

# Compute a differentiable similarity metric between two fields
value, grad_x, grad_y = mse(fixed_field, moving_field)

Package structure

dactim_angio/
├── metrics.py            # similarity metrics with analytic gradients
└── spatial/
    ├── geom.py           # point clouds, ray fans, cameras, affine transforms
    ├── grid.py           # spatial grids, NIfTI/DICOM I/O, pyramids
    └── RBF.py            # Gaussian RBF interpolation

Dependencies

numpy, scipy, matplotlib, nibabel, pydicom, pyvista, scikit-image, scikit-learn. These are installed automatically with the package.

License

This software is distributed under the CeCILL Free Software License Agreement v2.1 (see the LICENSE file). CeCILL is a copyleft license, GPL-compatible, governed by French law, authored by CEA, CNRS and Inria.

Citation

⚠️ Optionnel : si ce travail accompagne une publication, ajoute ici la référence à citer.

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

dactim_angio-0.1.1.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dactim_angio-0.1.1-py3-none-any.whl (19.8 kB view details)

Uploaded Python 3

File details

Details for the file dactim_angio-0.1.1.tar.gz.

File metadata

  • Download URL: dactim_angio-0.1.1.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for dactim_angio-0.1.1.tar.gz
Algorithm Hash digest
SHA256 87832ba909ad5969364a30736d59feb2cc551285b490c81dfaf6ae9bd8537c04
MD5 3a2528b6bf2625be93bbb74e045a7039
BLAKE2b-256 bfd570350273dc952d480a5e258223d388cf54e5556c60ecdf6dcbdc13cde67a

See more details on using hashes here.

File details

Details for the file dactim_angio-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: dactim_angio-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 19.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for dactim_angio-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5245395affe062d50d09dca8f5f70170ea5aa395798203b426a043f44eacd21a
MD5 d0b868848c53b5d3399909f914663634
BLAKE2b-256 1eda599a64a53864291c123c953f8e80368c05155190ae6e4c1bbcac139e83c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page