Tom Vercauteren

Results 78 comments of Tom Vercauteren

That is a complex question and in many cases might depend on the licences under which the training data was released. You will need someone with an actual law background...

An alternative could be to implement a Dog Leg type optimisation routines: http://dx.doi.org/10.1002/nla.502 from Bellaria et al. http://www.cs.uoi.gr/~lagaris/papers/PREPRINTS/dogbox.pdf from Voglis and Lagers Quick and dirty python implementation ``` python def...

Quick and dirty python implementation: ``` python def lsmr_with_init(A,b,x0): r0 = b - scipy.sparse.linalg.aslinearoperator(A).matvec(x0) deltax_pack = scipy.sparse.linalg.lsmr(A,r0) return x0 + deltax_pack[0] ``` Note however that it makes it more difficult...

I just pushed the requested test relaxation change for the PR.

In case a CPU fallback is interesting, I have identified and modernised a suitable standalone package here: https://github.com/cai4cai/distance_transform It is still missing support for anisotropic voxels though: https://github.com/cai4cai/distance_transform/issues/1

Fast marching is more generic but only provides an approximation. Felzenszwalb & Huttenlocher and PBA are both restricted to Euclidean distances but should be exact. I would thus keep both...

I just took a stab at supporting anisotrpic voxels in the CPU algorithm for exact Euclidean distance transforms. You can check it in this branch: https://github.com/cai4cai/distance_transform/tree/anisotropy This would certainly benefit...

On a related note, we could also consider implementing the Jump Flooding Algorithm (JFA): https://www.comp.nus.edu.sg/~tants/jfa.html It provides a competitive lternative to PBA according to this reference and it seems easy...

The state values should also be changed to `enum` for clarity: https://github.com/masadcv/FastGeodis/blob/c8c51a9e122b40e86ee4bd908047d38a82f5247f/FastGeodis/geodis_fastmarch.cpp#L178-L180

As suggest in https://github.com/cdnjs/cdnjs/discussions/14250#discussioncomment-9159887 I am opening this issue as apparently the auto-update may have broken.