# MACE correlation filter - any suggested values of of u?

I am trying to understand the MACE correlation filter as per the paper

Mahalanobis, A., Kumar, B.V.K.V., Casasent, D.: Minimum average correlation energy ﬁlters. Appl. Opt. 26, 3630–3633 (1987)

The equation to train the MACE filter is this

I however am abit confused about what values you use for u. From my reading u, is an N x 1 vector containing the desired peak values for the training images. Is this something I would just set to 1, could someone offer some suggested values

I have found a basic implementation in matlab from here (code posted below) but it does not give any definition to how I would go about deciding what u is?

D = diag(mean(abs(X),2));
% inv(A) * B = A \ B
XDX = ctranspose(X) * (D \ X);
h = (D \ X) * (XDX \ u);
H = reshape(h, size(I));


I will appreciate any help with this.

Thanks

In your code, the D matrix should be the average of the magnitude squares of the columns. I.e the average power spectrum:
D = diag(mean(abs(X),2));
D = diag(mean(abs(X).^2,2));