Currently tensorflow_addons.image.dense_image_warp(...) only supports bilinear interpolation, which is good enough for most, not enough for some. I implemented a higher order interpolation scheme: catmull rom (=Lanczos2) which gave better results (see: https://github.com/Luvideria/tensorflow-dense-warp-catmull-rom). It works fine but may need to be adjusted. It currently has a high maximum memory use (because of the buffer duplication for vectorization), I also managed to make another version using less memory but the code is too hacky (and slower).
I am not very familiar with building very fast or optimized tensorflow code, my implementation mostly relies on (and modifies) the previous implementation (bilinear).
The issue #163 relates to elastic transform, which can be improved by a higher order interpolation scheme.
This ticket refers to already opened ticket #163 and https://github.com/tensorflow/addons/issues/2733
Currently tensorflow_addons.image.dense_image_warp(...) only supports bilinear interpolation, which is good enough for most, not enough for some. I implemented a higher order interpolation scheme: catmull rom (=Lanczos2) which gave better results (see: https://github.com/Luvideria/tensorflow-dense-warp-catmull-rom). It works fine but may need to be adjusted. It currently has a high maximum memory use (because of the buffer duplication for vectorization), I also managed to make another version using less memory but the code is too hacky (and slower).
I am not very familiar with building very fast or optimized tensorflow code, my implementation mostly relies on (and modifies) the previous implementation (bilinear).
The issue #163 relates to elastic transform, which can be improved by a higher order interpolation scheme.