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.0.tar.gz (595.3 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.0-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: dactim_angio-0.1.0.tar.gz
  • Upload date:
  • Size: 595.3 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.0.tar.gz
Algorithm Hash digest
SHA256 a378333a9d2fb6275c9f9373358c2e75ba9837932c020cedf4b31c29f73272ba
MD5 a3d4a0414ee623fe9ddf4f97b9af48ab
BLAKE2b-256 b0fbc04b061f8fe8a733c492f67e0daabcf9ab7b614cd545bb828d90925b3d9a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dactim_angio-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 85920d07e05492d2ad1423d5d3ef17cc539ebfa1be554dade2b39c6a5c980ddf
MD5 47ca3e3421acf150a0a8ae2a4d141ee4
BLAKE2b-256 0ad15802b794c67e4c7355956a410e4e16ccb646c29651d71095a831390c9045

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