From a1f337591124aa2dde67cd259c62505d9feba774 Mon Sep 17 00:00:00 2001 From: James E McClure Date: Wed, 22 Jul 2020 11:57:51 -0400 Subject: [PATCH] added mean filter --- analysis/filters.cpp | 31 +++++++++++++++++++++++++++++++ analysis/filters.h | 8 +++++++- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/analysis/filters.cpp b/analysis/filters.cpp index c5858560..8c532712 100644 --- a/analysis/filters.cpp +++ b/analysis/filters.cpp @@ -2,6 +2,37 @@ #include "math.h" #include "ProfilerApp.h" +void Mean3D( const Array &Input, Array &Output ) +{ + PROFILE_START("Mean3D"); + // Perform a 3D Mean filter on Input array + int i,j,k,ii,jj,kk; + int imin,jmin,kmin,imax,jmax,kmax; + + float *List; + List=new float[27]; + + int Nx = int(Input.size(0)); + int Ny = int(Input.size(1)); + int Nz = int(Input.size(2)); + + for (k=1; k &Input, Array &Output ) { diff --git a/analysis/filters.h b/analysis/filters.h index 131b2b9f..250ba23a 100644 --- a/analysis/filters.h +++ b/analysis/filters.h @@ -4,6 +4,13 @@ #include "common/Array.h" +/*! + * @brief Filter image + * @details This routine performs a mean filter + * @param[in] Input Input image + * @param[out] Output Output image + */ +void Mean3D( const Array &Input, Array &Output ) /*! * @brief Filter image @@ -13,7 +20,6 @@ */ void Med3D( const Array &Input, Array &Output ); - /*! * @brief Filter image * @details This routine performs a non-linear local means filter