--- milena/mln/inpainting/derivative_kernels.hh | 54 +++++++++++++++++++++++++++ 1 files changed, 54 insertions(+), 0 deletions(-) create mode 100644 milena/mln/inpainting/derivative_kernels.hh
diff --git a/milena/mln/inpainting/derivative_kernels.hh b/milena/mln/inpainting/derivative_kernels.hh new file mode 100644 index 0000000..5b642ee --- /dev/null +++ b/milena/mln/inpainting/derivative_kernels.hh @@ -0,0 +1,54 @@ +namespace mln +{ + namespace inpainting + { + template <typename T> + const T* make_dx_kernel() + { + static const T ws[] = { 0.1, 0.2, 0.1, + 0, 0, 0, + -0.1, -0.2, -0.1 }; + return ws; + } + + template <typename T> + const T* make_dy_kernel() + { + static const T ws[] = { 0.1, 0, -0.1, + 0.2, 0, -0.2, + 0.1, 0, -0.1 }; + + return ws; + } + + template <typename T> + const T* make_dxx_kernel() + { + static const T ws[] = {0.0804, 0.1597, 0.0804, + -0.1608, -0.3194, -0.1608, + 0.0804, 0.1597, 0.0804}; + + return ws; + } + + template <typename T> + const T* make_dyy_kernel() + { + static const T ws[] = {0.0804, -0.1608, 0.0804, + 0.1597, -0.3194, 0.1597, + 0.0804, -0.1608, 0.0804}; + + return ws; + } + + template <typename T> + const T* make_dxy_kernel() + { + static const T ws[] = {0.1051, 0, -0.1051, + 0, 0, 0, + -0.1051, 0, 0.1051}; + + return ws; + } + } +}