Asymptotically Optimal Algorithms for Running Max and Min Filters on Random Inputs

Research output: Journal Publications and ReviewsRGC 21 - Publication in refereed journalpeer-review

2 Scopus Citations
View graph of relations


Related Research Unit(s)


Original languageEnglish
Pages (from-to)3421-3435
Journal / PublicationIEEE Transactions on Signal Processing
Issue number13
Online published27 Apr 2018
Publication statusPublished - 1 Jul 2018


Given a d-dimensional array of size nd and an integer p, the running max (or min) filter is the set of maximum (or minimum) elements within a d-dimensional sliding window of edge length p inside the array. This problem is useful in many signal processing applications such as pattern analysis, adaptive signal processing, and morphological analysis. The current best algorithm for computing the one-dimensional (1-D) max (or min) filter, due to the work of [H. Yuan and M. J. Atallah, "Running max/min filters using 1+o(1) comparisons per sample," IEEE Trans. Pattern Anal. Mach. Intell., vol. 33, no. 12, pp. 2544-2548, Dec. 2011], uses 1 + o(1) comparisons per sample in the worst case. As a direct consequence, the d-dimensional max (or min) filter (max and min filters, respectively) can be computed in + o(1) (2+ o(1), respectively) comparisons per sample. In this paper, we first present an algorithm for computing d -dimensional max and min filters simultaneously on i.i.d. inputs that uses 1.5 + o(1) expected comparisons per sample. This is the first algorithm (on i.i.d. inputs) that gets rid of the dependence on d in the dominating term, with respect to n and p, of the (expected) number of comparisons needed. It is also asymptotically optimal (when d is a fixed constant as → ∞ and p → ∞). We also consider the dynamic version of the problem of d -dimensional max and min filters simultaneously on i.i.d. inputs where we want to maintain the filters after changes in the input array. We design a linear-sized data structure that stores precomputed information for efficient update using (pd-1 log2 p) expected comparisons per update.

Research Area(s)

  • comparisons per sample, dilation, erosion, Mathematical morphology, running filters

Citation Format(s)