Window memoization: toward high-performance image processing software

Farzad Khalvati, Mark D. Aagaard, Hamid R. Tizhoosh

Research output: Contribution to journalArticlepeer-review


In this paper, we present a new performance improvement technique, window memoization, for software implementations of local image processing algorithms. Window memoization combines the memoization techniques proposed in software and hardware with data redundancy in image processing to improve the performance of local image processing algorithms. It minimizes the number of redundant computations performed on an image by identifying similar neighborhoods of pixels in the image and skipping the computations that are not necessary. This leads to performance improvement in software. We have developed an optimized architecture for window memoization in software and applied it to six image processing algorithms. We have also developed a performance model to predict the speedups obtained by window memoization in software. The typical (average) speedups range from 1.2x to 7.9x while the total average speedup for different algorithms with different input images across different processors is 3.95x.

Original languageEnglish (US)
Pages (from-to)5-25
Number of pages21
JournalJournal of Real-Time Image Processing
Issue number1
StatePublished - Mar 2015


  • Computational redundancy
  • High-performance real-time image processing
  • Memoization
  • Reuse

ASJC Scopus subject areas

  • Information Systems


Dive into the research topics of 'Window memoization: toward high-performance image processing software'. Together they form a unique fingerprint.

Cite this