diff --git a/algorithm_config.yaml b/algorithm_config.yaml
index 9f1bb3b4215d8bf4961d759f075ce5da6df3cba0..2c2924ed90bb465ae47ed2e27ae6f379b83385ab 100644
--- a/algorithm_config.yaml
+++ b/algorithm_config.yaml
@@ -1,6 +1,6 @@
 description: Estimates canopy height from InSAR coherence and LiDAR data
 algo_name: ich
-version: 0.5.1
+version: 0.5.2
 environment: ubuntu
 repository_url: https://repo.maap-project.org/bnarayanarao/insar_forest_height.git
 docker_url: mas.maap-project.org/root/maap-workspaces/base_images/python:v4.1.0
@@ -21,4 +21,9 @@ inputs:
     download: False
   - name: validation
     download: False
-
+  - name: algorithm
+    download: False  
+  - name: overlap
+    download: False 
+  - name: filter
+    download: False
diff --git a/ich.sh b/ich.sh
index 478dc79c5ded9d14035f7c91f87e0ed53997703e..2a7c5a6c90140697488f0ee5240e1df58cefd4a5 100644
--- a/ich.sh
+++ b/ich.sh
@@ -22,6 +22,7 @@ options=()
 [[ "${4:-}" != "-" ]] && options+=("--validation" "${4}")
 [[ "${5:-}" != "-" ]] && options+=("--algorithm" "${5}")
 [[ "${6:-}" != "-" ]] && options+=("--overlap" "${6}")
+[[ "${7:-}" != "-" ]] && options+=("--filter" "${7}")
 
 # Run the Python script with the determined options
 ${ich_py} --correlationFile "${correlationFile}" --cal_ht "${cal_ht}" "${options[@]}"
\ No newline at end of file
diff --git a/src/ich/InSAR_canopy_height.py b/src/ich/InSAR_canopy_height.py
index 968a706ea2d3a7a53a377f709aab4db5d635a257..aff3a140fb42b0abb676662b129ee8ec96f4aff8 100644
--- a/src/ich/InSAR_canopy_height.py
+++ b/src/ich/InSAR_canopy_height.py
@@ -39,10 +39,11 @@ parser.add_argument("-c", "--correlationFile", dest = "corFile", help="correlati
 parser.add_argument("-l", "--cal_ht", dest = "lidarFile",  help="Calibration height file e.g. LiDAR heights in (m)")
 parser.add_argument("-ll", "--lower_limit",dest ="htl", default = None ,help="lower limit of canopy height (m)", type=int)
 parser.add_argument("-ul", "--upper_limit",dest = "htg", default = None,help="upper limit of canopy height (m)", type=int)
-parser.add_argument("-w", "--window",dest = "window_size", default = 10, help="Size", type=int)
+parser.add_argument("-w", "--window",dest = "window_size", default = 10, help="calibration windowsize/blocksize", type=int)
 parser.add_argument("-val", "--validation",dest = "validation", default = 0, help="fraction to split cross validation", type=float)
 parser.add_argument("-al", "--algorithm",dest = "algo", default = 1, help="Algorithm Type", type=int)
 parser.add_argument("-ol", "--overlap",dest = "window_overlap", default = 0, help="window overlap fraction", type=float)
+parser.add_argument("-f", "--filter",dest = "filt_parm", default = 0, help="filter/smoothen the calibation parameters", type=int)
 
 args = parser.parse_args()
 
diff --git a/src/ich/args_in.py b/src/ich/args_in.py
index 767776e5b1e58ba3b938059a0efa6eb757eff9e7..549d4a6f0fd578b010980ae5e114b250134f2147 100644
--- a/src/ich/args_in.py
+++ b/src/ich/args_in.py
@@ -49,7 +49,7 @@ def rvog_inverse(args):
 
     try:
         t0 = time.time()
-        print( "-corFile {} -lidarFile {} -htl {} -htg {} -window_size {}  -validation {} -algo {} -window_overlap {}".format(
+        print( "-corFile {} -lidarFile {} -htl {} -htg {} -window_size {}  -validation {} -algo {} -window_overlap {} -filt_parm {}".format(
         args.corFile,
         args.lidarFile,
         args.htl,
@@ -57,8 +57,8 @@ def rvog_inverse(args):
         args.window_size,
         args.validation,
         args.algo,
-        args.window_overlap
-        
+        args.window_overlap,
+        args.filt_parm
         ))
 
         lidar_ht = read_bin(args.lidarFile)
@@ -453,9 +453,10 @@ def rvog_inverse(args):
 
         ci = spatial_intp_lin(c)
         si = spatial_intp_lin(s)
-
-        ci = median_filter(ci, size=args.window_size//2)
-        si = median_filter(si, size=args.window_size//2)
+        
+        if args.filt_parm:
+            ci = median_filter(ci, size=args.window_size//2)
+            si = median_filter(si, size=args.window_size//2)
         
         si[si>1.6]=1.6
         ci[ci>16]=16