# A Filter is Sum normalized to 0 and square normalized to 1

Firstly, About the Hierarchical Model And X (HMAX model), i still don't understand what is the difference between the "Original model" and "Standard model". Does in Standard, we use imfilter not conv2 ? is that correct ?

Secondly, i didn't understand the following phrase : "The filters in S1 layer are sum-normalized to zero and square-normalized to 1, and the result of the convolution of an image patch with a filter is divided by the power (sum of squares) of the image patch. "

What was meant by sum-normalized and square normalized ? for example : f=f./ sqrt(sum(sum(f.^2))).

Please i need your help and explanations. Any help will be very appreciated.

• Hi Liszt, and welcome to scicomp! While signal processing questions do often overlap with computational science, we don't have a large base of signal processing experts in this forum. It may be worthwhile to migrate this question to the Digital Signal Processing SE site. You may get a better and quicker response there.
– Paul
Dec 28, 2013 at 14:47
• These phrases are equivalent to some statistical manipulations you may already be familiar with. "sum-normalized to zero" amounts to subtracting off the mean. "square-normalized to 1" would follow that first step, producing (if the original data wasn't constant) data with variance 1 (about its now zero mean).
– hardmath
Dec 28, 2013 at 15:03

## 1 Answer

I think I can address the second part of your Question.

The phrase "sum-normalized to zero" is a fancy way of saying "subtract the mean (average)", i.e. subtract the constant needed to give a zero sum over the resulting function (filter) values.

The phrase "square-normalized to 1" applies to the result of the first phrase and means dividing by a (positive) constant such that as a result the sum of squares of function values will be 1. That divisor is the square root of the sum of squares of values (i.e. their difference from the now zero mean produced by the first step).

The second step preserves the zero mean ("sum-normalized to zero") property achieved by the first step. Normalizing the "filter" for use in a convolution helps in controlling the magnitude of the numerical results.

• In OP's notation f=f-sum(f); f=f./sqrt(sum(f.^2)) or f=f-sum(f); f=f./norm(f)
– k20
Dec 28, 2013 at 19:17
• Not quite; rather than subtracting sum(f) from each entry, we need to subtract the average, sum(f)/(# of points).
– hardmath
Dec 28, 2013 at 19:41
• right, the first sum() should be mean()...
– k20
Dec 28, 2013 at 20:18