File Exchange

image thumbnail

Gaussian Surprise and Running Windowed Mean / Variance

version (17.6 KB) by Boris Schauerte
Compute the Gaussian/Gamma surprise/saliency of data as well as its windowed mean/variance


Updated 07 Mar 2013

View License

This code calculates the (windowed!) running mean and variance as well as
the (windowed) Gaussian surprise for each newly added element. Furthermore,
it is possible to calculate the univariate Gamma surprise.

The code comes with two examples on acoustic saliency/surprise using the
(synthetic) chirp signal and a real-world, meeting room audio recording.

Please see [1] for details and an application of the Gaussian windowed
surprise. See [2] for details on the univariate Gamma model. Be so kind
to cite [1] and/or [2], if you use the provided code.

[1] B. Schauerte, B. Kuehn, K. Kroschel, R. Stiefelhagen, "Multimodal
Saliency-based Attention for Object-based Scene Analysis," in Proc.
Int. Conf. Intelligent Robots and Systems (IROS), 2011.

[2] B. Schauerte, R. Stiefelhagen, ""Wow!" Bayesian Surprise for Salient
Acoustic Event Detection". In Proc. 38th Int. Conf. Acoustics,
Speech, and Signal Processing (ICASSP), 2013.

Cite As

Boris Schauerte (2020). Gaussian Surprise and Running Windowed Mean / Variance (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (2)

Hi Adam, if you send me the data (you will find my e-mail address on my web page), I will take a closer look at the issue (I tested the code on data from audio, some image processing, ... - so my experience does not cover all kinds of data). However, some first ideas: you could/should try both estimation methods and also have a closer look at the min_variance_value. Bests, Boris


Hi, I can get the example scripts to run fine, but when I apply this to a data set of mine, I get all Nan for the surprise variable, even though the windowed mean and variance some out ok. Any idea why this is?


- added the univariate Gamma model

- added two examples

improved the documentation and added an example script

- added a help
- minor C/C++ interface changes

- set the numerically more stable variance estimation as default
- minor interface adaptation of the C/C++ code

MATLAB Release Compatibility
Created with R2011a
Compatible with any release
Platform Compatibility
Windows macOS Linux