Diffdrr

Latest version: v0.4.7

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 4

0.3.8

What's Changed
* Add principal point from intrinsic matrix by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/168
* Add 3D visualization example by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/169
* Misc fixes by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/170


**Full Changelog**: https://github.com/eigenvivek/DiffDRR/compare/v0.3.7...v0.3.8

0.3.7

What's Changed
* Add patch-based variants of image similarity metrics by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/154
* Implement bone attenuation multiplier by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/155
* Allow bone_attenuation_multiplier to be set once by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/156
* Expose InstanceNorm eps argument by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/160


**Full Changelog**: https://github.com/eigenvivek/DiffDRR/compare/v0.3.6...v0.3.7

0.3.6

What's Changed
* Support every SO(3) parameterization under the sun by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/149
* Use conda for testing and docs deployment by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/150
* Implement 3D visualization functions with pyvista by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/151


**Full Changelog**: https://github.com/eigenvivek/DiffDRR/compare/v0.3.5...v0.3.6

0.3.5

Small tweaks to the detector (ensured rays only cast from source to target) and add a new image similarity metric.

What's Changed
* Cleanup experiment folder by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/140
* Detector tweaks by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/143
* Implement Gradient NCC by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/146


**Full Changelog**: https://github.com/eigenvivek/DiffDRR/commits/v0.3.5

0.3.3

Prioritize differentiable rendering

**Final API change for `DiffDRR`**

`DRR` objects now act _purely as a differentiable renderer._ That means `DRR` objects take in `rotations` and `translations` parameters to specify (batched) camera poses, and render X-rays from those poses.

The pose parameters are **not** stored as `nn.Parameters` of the module. This introduced too many annoyances with the `DRR` module, such as gradients not flowing backwards past the pose parameters, or only being able to render a specific batch size.

2D-to-3D registration is still possible with `DiffDRR`. This is done by creating a lightweight wrapper module that stores `rotations` and `translations` as `nn.Parameters`, and calls a `DRR` object in its forward call. An example is available in the [updated documentation](notebooks/experiments/sprite.ipynb).

Small changes:
- DRR generation can now be performed patch-wise (i.e., generate a 600^2 DRR as four 300^2 in series). This means `DiffDRR` can generate insanely large DRRs since computation memory is no longer a constraint. See an example in the updated [timing notebook](https://vivekg.dev/DiffDRR/tutorials/timing.html).

What's Changed
* Differentiable rendering and large DRRs by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/139


**Full Changelog**: https://github.com/eigenvivek/DiffDRR/compare/v0.3.2...v0.3.3

0.3.2

What's Changed
* Enable cuda testing with GitHub CI by eigenvivek in https://github.com/eigenvivek/DiffDRR/pull/135
* New unified API for generating DRRs

The DRR module will now behave as follows:
- Initialize the DRR module as before (volume, spacing, height, pixel_spacing) except don't pass any pose parameters. Instead, initialize a set of dummy pose parameters that are internal to the model.
- Rename _update_params to move_carm. Change the function signature to input two batched vectors, one for translations and rotations. This will be the only way to reposition the C-Arm.
- To render a DRR, only use the forward call (i.e., drr()). No separate project function. This will return a batch of DRRs that are differentiable wrt to all downstream parameters.


**Full Changelog**: https://github.com/eigenvivek/DiffDRR/compare/v0.3.1...v0.3.2

Page 3 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.