Perfect Periodic Sequences
for EMFN, L+EMFN, Legendre and Wiener Nonlinear filters

In this webpage we provide some examples of perfect periodic sequences for even mirror Fourier nonlinear (EMFN) filters, linear+even mirror Fourier nonlinear (L+EMFN) filters, Legendre nonlinear (LN) filters, and Wiener Nonlinear (WN) filters.

A periodic sequence is perfect for a nonlinear filter if all cross-correlations between two different basis functions, estimated over a period, are zero.

By applying perfect periodic sequences as input signals to EMFN, L+EMFN, LN, or WN filters, it is possible to model unknown nonlinear systems exploiting the cross-correlation method. Then, the most relevant basis functions, i.e., those that guarantee the most compact representation of the nonlinear system according to some information criterion, can be easily estimated.

The perfect periodic sequences of this webpage have been developed using the Newton-Raphson method according to the methodologies described in the following papers:

[1] A. Carini and G. L. Sicuranza, “Perfect periodic sequences for identification of even mirror Fourier nonlinear filters,” Proceedings of 39th International Conference on Acoustics, Speech, and Signal Processing, ICASSP 2014, May 4-9, 2014, Florence, Italy
[2] A. Carini and G. L. Sicuranza, “Perfect periodic sequences for for Even Mirror Fourier Nonlinear Filters,” Signal Processing, Vol. 104, Nov. 2014, pp. 80-93, http://dx.doi.org/10.1016/j.sigpro.2014.03.046.
[3] A. Carini, S. Cecchi, L. Romoli, and G. L. Sicuranza, “Perfect periodic sequences for Legendre nonlinear filters,” Proceedings of 22nd European Signal Processing Conference, EUSIPCO 2014, Sep. 1-5, 2014, Lisbon, Portugal.
[4] A. Carini, L. Romoli, S. Cecchi and S. Orcioni, “Perfect Periodic Sequences for Nonlinear Wiener Filters,” Proceedins of 24th European Signal Processing Conference (EUSIPCO 2016), 29 Aug. - 02 Sept. 2016, Budapest, Hungary

The background theory about EMFN, L+EMFN, LN, and WN filters can be found in the following papers:

[1] A. Carini and G. L. Sicuranza, “Even Mirror Fourier Nonlinear Filters,” Proceedings of 38th International Conference on Acoustics, Speech, and Signal Processing, ICASSP 2013, May 26-31, 2013, Vancouver, Canada.
[2] A. Carini and G. L. Sicuranza, “Fourier nonlinear filters,” Signal Processing, Vol. 94, Jan. 2014, Pages 183–194, http://dx.doi.org/10.1016/j.sigpro.2013.06.018
[3] A. Carini, S. Cecchi, M. Gasparini, and G. L. Sicuranza, “Introducing Legendre Nonlinear Filters,” Proceedings of 39th International Conference on Acoustics, Speech, and Signal Processing, ICASSP 2014, May 4-9, 2014, Florence, Italy.
[4] A. Carini, S. Cecchi, L. Romoli, and G. L. Sicuranza, “Legendre Nonlinear Filters,” Signal Processing, Vol. 109, April 2015, Pages 84–94, http://dx.doi.org/10.1016/j.sigpro.2014.10.037
[5] A. Carini, L. Romoli, S. Cecchi and S. Orcioni, “Perfect Periodic Sequences for Nonlinear Wiener Filters,” Proceedins of 24th European Signal Processing Conference (EUSIPCO 2016), 29 Aug. - 02 Sept. 2016, Budapest, Hungary
[6] Alberto Carini, Stefania Cecchi, Simone Orcioni, “Orthogonal LIP Nonlinear Filters”, in Danilo Comminiello and Jose Principe, Eds. “Adaptive Learning Methods for Nonlinear System Modeling”, Butterworth-Heinemann, Oxford, UK, pp.15-46, 2018, DOI: 10.1016/B978-0-12-812976-0.00003-8

Perfect periodic sequences suitable for the identification of only the first order kernel of Legendre and Wiener nonlinear filters have also been developed. The sequences can be used for room impulse response identification contrasting the nonlinearities that affect the power amplifier or the loudspeaker of the measurement system. The background theory can be found in the following paper:

[1] A. Carini, S. Cecchi, and L. Romoli, “Room impulse response estimation using perfect sequences for Legendre nonlinear filters,” Proceedings of the 23nd European Signal Processing Conference (EUSIPCO 2015), 31 Aug. - 4 Sept. 2015, Nice, France
[2] A. Carini, S. Cecchi, A. Terenzi, S. Orcioni, “On Room Impulse Response Measurement Using Perfect Sequences for Wiener Nonlinear Filters” Proceedings of 26th European Signal Processing Conference (EUSIPCO 2018), 02 -07 Sept. 2018, Rome, Italy

All the following Matlab data files contain a vector x composed by one period of the perfect periodic sequence.

Perfect Sequences for EMFN filters:

- PSEQ for an EMFN filter of order 3, memory length 5, Period 504, max cross-correlation 9.78 E-17, exploiting no structure: PSEQ_EMFN_3_5_T0.mat.
- PSEQ for an EMFN filter of order 3, memory length 5, Period 664, max cross-correlation 1.02 E-16, exploiting oddness: PSEQ_EMFN_3_5_T1.mat.
- PSEQ for an EMFN filter of order 3, memory length 5, Period 580, max cross-correlation 1.34 E-16, exploiting symmetry: PSEQ_EMFN_3_5_T2.mat.
- PSEQ for an EMFN filter of order 3, memory length 5, Period 776, max cross-correlation 1.04 E-16, exploiting oddness, and symmetry: PSEQ_EMFN_3_5_T3.mat.
- PSEQ for an EMFN filter of order 3, memory length 5, Period 708, max cross-correlation 1.09 E-16, exploiting oddness, and oddness-1: PSEQ_EMFN_3_5_T4.mat.
- PSEQ for an EMFN filter of order 3, memory length 5, Period 884, max cross-correlation 9.07 E-17, exploiting oddness, oddness-1, and symmetry: PSEQ_EMFN_3_5_T5.mat.
- PSEQ for an EMFN filter of order 3, memory length 5, Period 1344, max cross-correlation 1.28 E-16, exploiting oddness, oddness-1, oddness-2, oddness-4, and symmetry: PSEQ_EMFN_3_5_T6.mat.

- PSEQ for an EMFN filter of order 3, memory length 10, Period 6006, max cross-correlation 1.37 E-16, exploiting no structure: PSEQ_EMFN_3_10_T0.mat.
- PSEQ for an EMFN filter of order 3, memory length 15, Period 49476, max cross-correlation 1.30 E-16, exploiting oddness, and oddness-1: PSEQ_EMFN_3_15_T4.mat.
- PSEQ for an EMFN filter of order 3, memory length 20, Period 178980, max cross-correlation 1.44 E-16, exploiting oddness, oddness-1, and symmetry: PSEQ_EMFN_3_20_T5.mat.
- PSEQ for an EMFN filter of order 3, memory length 25, Period 695168, max cross-correlation <1 E-15, exploiting oddness, oddness-1, oddness-2, oddness-4, and symmetry: PSEQ_EMFN_3_25_T6.mat.

Perfect Sequences for L+EMFN filters:

- PSEQ for an L+EMFN filter of order 3, memory length 5, Period 788, max cross-correlation 9.20 E-16, exploiting no structure: PSEQ_LEMFN_3_5_T0.mat.
- PSEQ for an L+EMFN filter of order 3, memory length 5, Period 1088, max cross-correlation 1.24 E-16, exploiting oddness: PSEQ_LEMFN_3_5_T1.mat.
- PSEQ for an L+EMFN filter of order 3, memory length 5, Period 884, max cross-correlation 7.50 E-16, exploiting symmetry: PSEQ_LEMFN_3_5_T2.mat.
- PSEQ for an L+EMFN filter of order 3, memory length 5, Period 1224, max cross-correlation 1.35 E-16, exploiting oddness, and symmetry: PSEQ_LEMFN_3_5_T3.mat.
- PSEQ for an L+EMFN filter of order 3, memory length 5, Period 1140, max cross-correlation 1.13 E-16, exploiting oddness, and oddness-1: PSEQ_LEMFN_3_5_T4.mat.
- PSEQ for an L+EMFN filter of order 3, memory length 5, Period 1348, max cross-correlation 1.19 E-17, exploiting oddness, oddness-1, and symmetry: PSEQ_LEMFN_3_5_T5.mat.
- PSEQ for an L+EMFN filter of order 3, memory length 5, Period 1856, max cross-correlation 1.41 E-16, exploiting oddness, oddness-1, oddness-2, oddness-4, and symmetry: PSEQ_LEMFN_3_5_T6.mat.

- PSEQ for an L+EMFN filter of order 3, memory length 10, Period 7780, max cross-correlation 9.11 E-16, exploiting no structure: PSEQ_LEMFN_3_10_T0.mat.
- PSEQ for an L+EMFN filter of order 3, memory length 15, Period 59108, max cross-correlation 4.30 E-16, exploiting oddness, and oddness-1: PSEQ_LEMFN_3_15_T4.mat.
- PSEQ for an L+EMFN filter of order 3, memory length 20, Period 201412, max cross-correlation 6.03 E-16, exploiting oddness, oddness-1, and symmetry: PSEQ_LEMFN_3_20_T5.mat.

Perfect Sequences for Legendre nonlinear (LN) filters:

- PSEQ for a Legendre filter of order 3, memory length 5, Period 1008, max cross-correlation 1.06 E-16, exploiting no structure: PSEQ_LEGEN_3_5_T0.mat.
- PSEQ for a Legendre filter of order 3, memory length 5, Period 1328, max cross-correlation 1.25 E-16, exploiting oddness: PSEQ_LEGEN_3_5_T1.mat.
- PSEQ for a Legendre filter of order 3, memory length 5, Period 1160, max cross-correlation 1.59 E-16, exploiting symmetry: PSEQ_LEGEN_3_5_T2.mat.
- PSEQ for a Legendre filter of order 3, memory length 5, Period 1552, max cross-correlation 1.67 E-16, exploiting oddness, and symmetry: PSEQ_LEGEN_3_5_T3.mat.
- PSEQ for a Legendre filter of order 3, memory length 5, Period 1412, max cross-correlation 2.08 E-16, exploiting oddness, and oddness-1: PSEQ_LEGEN_3_5_T4.mat.
- PSEQ for a Legendre filter of order 3, memory length 5, Period 1764, max cross-correlation 2.13 E-16, exploiting oddness, oddness-1, and symmetry: PSEQ_LEGEN_3_5_T5.mat.
- PSEQ for a Legendre filter of order 3, memory length 5, Period 3136, max cross-correlation 1.81 E-16, exploiting oddness, oddness-1, oddness-2, oddness-4, and symmetry: PSEQ_LEGEN_3_5_T6.mat.

- PSEQ for a Legendre filter of order 3, memory length 10, Period 12012, max cross-correlation 7.93 E-13, exploiting no structure: PSEQ_LEGEN_3_10_T0.mat.
- PSEQ for a Legendre filter of order 3, memory length 15, Period 98948, max cross-correlation 6.86 E-13, exploiting oddness, and oddness-1: PSEQ_LEGEN_3_15_T4.mat.
- PSEQ for a Legendre filter of order 3, memory length 20, Period 357956, max cross-correlation 4.74 E-13, exploiting oddness, oddness-1, and symmetry: PSEQ_LEGEN_3_20_T5.mat.
- PSEQ for a Legendre filter of order 3, memory length 25, Period 1393024, max cross-correlation 8.09 E-13, exploiting oddness, oddness-1, and symmetry: PSEQ_LEGEN_3_25_T6.mat.

Perfect Sequences for Legendre and L+EMFN nonlinear filters:

- PSEQ for a Legendre or an L+EMFN filter of order 3, memory length 5, Period 2564, max cross-correlation 1.51 E-16, exploiting no structure: PSEQ_LEGEMFN_3_5_T0.mat.
- PSEQ for a Legendre or an L+EMFN filter of order 3, memory length 10, Period 41508, max cross-correlation 3.11 E-16, exploiting oddness, and oddness-1: PSEQ_LEGEMFN_3_10_T4.mat.
- PSEQ for a Legendre or an L+EMFN filter of order 3, memory length 15, Period 217044, max cross-correlation 8.27 E-13, exploiting oddness, and oddness-1: PSEQ_LEGEMFN_3_15_T4.mat.
- PSEQ for a Legendre or an L+EMFN filter of order 3, memory length 20, Period 1089328, max cross-correlation 3.85 E-16, exploiting oddness, oddness-1, oddness-2, oddness-4, and symmetry: PSEQ_LEGEMFN_3_20_T6.mat.

Perfect Sequences for Wiener nonlinear (WN) filters:

- PSEQ for a Wiener filter of order 3, memory length 5, Period 1008, max cross-correlation 1.06 E-16, exploiting no structure: PSEQ_WIENER_FULL_3_5_T0.mat.
- PSEQ for a Wiener filter of order 3, memory length 5, Period 1328, max cross-correlation 1.25 E-16, exploiting oddness: PSEQ_WIENER_FULL_3_5_T1.mat.
- PSEQ for a Wiener filter of order 3, memory length 5, Period 1160, max cross-correlation 1.59 E-16, exploiting symmetry: PSEQ_WIENER_FULL_3_5_T2.mat.
- PSEQ for a Wiener filter of order 3, memory length 5, Period 1552, max cross-correlation 1.67 E-16, exploiting oddness, and symmetry: PSEQ_WIENER_FULL_3_5_T3.mat.
- PSEQ for a Wiener filter of order 3, memory length 5, Period 1412, max cross-correlation 2.08 E-16, exploiting oddness, and oddness-1: PSEQ_WIENER_FULL_3_5_T4.mat.
- PSEQ for a Wiener filter of order 3, memory length 5, Period 1764, max cross-correlation 2.13 E-16, exploiting oddness, oddness-1, and symmetry: PSEQ_WIENER_FULL_3_5_T5.mat.
- PSEQ for a Wiener filter of order 3, memory length 5, Period 3136, max cross-correlation 1.81 E-16, exploiting oddness, oddness-1, oddness-2, oddness-4, and symmetry: PSEQ_WIENER_FULL_3_5_T6.mat.

- PSEQ for a Wiener filter of order 3, memory length 10, Period 12012, max cross-correlation 7.93 E-13, exploiting no structure: PSEQ_WIENER_FULL_3_10_T0.mat.
- PSEQ for a Wiener filter of order 3, memory length 15, Period 98948, max cross-correlation 6.86 E-13, exploiting oddness, and oddness-1: PSEQ_WIENER_FULL_3_15_T4.mat.
- PSEQ for a Wiener filter of order 3, memory length 20, Period 357956, max cross-correlation 4.74 E-13, exploiting oddness, oddness-1, and symmetry: PSEQ_WIENER_FULL_3_20_T5.mat.
- PSEQ for a Wiener filter of order 3, memory length 25, Period 1393024, max cross-correlation 8.09 E-13, exploiting oddness, oddness-1, and symmetry: PSEQ_WIENER_FULL_3_25_T6.mat.

Perfect Sequences for room impulse response estimation:

PSEQs of the paper: "Room impulse response estimation using perfect sequences for Legendre nonlinear filters," Proc. of EUSIPCO 2015:

Memory
Length
Order Diagonal
Number
Period Log2(Period) Exploits File
8192 3 0 131060 17 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_3_8192_0_T5.mat
8192 3 1 262132 18 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_3_8192_1_T5.mat
8192 3 2 524276 19 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_3_8192_2_T5.mat
8192 3 3 2359264 21.16 O, O-1, O-2, O-4, O-8 PSEQ_LEGEN_RI_SIMPLY_3_8192_3_T8_P4.mat
8192 5 0 262132 18 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_5_8192_0_T5.mat
8192 5 1 1244656 20.24 O, O-1, O-2, O-4, PSEQ_LEGEN_RI_SIMPLY_5_8192_1_T8_P3.mat
O: oddness, O-N: oddness-N, S: symmetry, max cross-correlation lower than 1e-12.

Best current PSEQ for room impulse response estimation using Legendre nonlinear filters:

Memory
Length
Order Diagonal
Number
Period Log2(Period) Exploits File
8192 3 0 131060 17 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_3_8192_0_T5.mat
8192 3 1 262132 18 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_3_8192_1_T5.mat
8192 3 2 524276 19 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_3_8192_2_T5.mat
8192 3 3 1048560 20 O, O-1, O-2, O-4, S PSEQ_LEGEN_RI_SIMPLY_3_8192_3_T7_P3.mat
8192 3 4 2228208 21 O, O-1, O-2, O-4 PSEQ_LEGEN_RI_SIMPLY_3_8192_4_T8_P3.mat
8192 5 0 262132 18 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_5_8192_0_T5.mat
8192 5 1 1114104 20 O, O-1, O-2 PSEQ_LEGEN_RI_SIMPLY_5_8192_1_T8_P2.mat
16384 3 0 262140 18 O, O-1 PSEQ_LEGEN_RI_SIMPLY_3_16384_0_T4.mat
16384 3 1 524276 19 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_3_16384_1_T5.mat
16384 3 2 1048564 20 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_3_16384_2_T5.mat
16384 3 3 2097136 21 O, O-1, O-2, O-4, S PSEQ_LEGEN_RI_SIMPLY_3_16384_3_T7_P3.mat
16384 5 0 524276 19 O, O-1, S PSEQ_LEGEN_RI_SIMPLY_5_16384_0_T5.mat
16384 5 1 2097136 21 O, O-1, O-2, O-4 PSEQ_LEGEN_RI_SIMPLY_5_16384_1_T8_P3.mat
65536 3 2 16777184 24 O, O-1, O-2, O-4, O-8, S PSEQ_LEGEN_RI_SIMPLY2_O1_65536_...
O: oddness, O-N: oddness-N, S: symmetry, max cross-correlation lower than 1e-12.

PSEQ for room impulse response estimation with Legendre nonlinear filters having different memory/diagonal number for each kernel:

Kernel Memory
Length
Diagonal
Number
Period Log2(Period) Exploits File
1
2
3
65536
8192
8192
0
3
3
33554368 25 O, O-1, O-2, O-4, O-4, S PSEQ_LEGEN_RI_SIMPLY2_O1_65536_0_...
O: oddness, O-N: oddness-N, S: symmetry, max cross-correlation lower than 1e-12.

PSEQs of the paper: "On Room Impulse Response Measurement Using Perfect Sequences for Wiener Nonlinear Filters," Proc. of EUSIPCO 2018:

Memory
Length
Order Diagonal
Number
Period Log2(Period) Power Exploits File
8192 3 0 131060 17 1/12 O, O-1, S PSEQ_WIENER_RI_SIMPLY_3_8192_0_T5.mat
8192 3 1 262132 18 1/12 O, O-1, S PSEQ_WIENER_RI_SIMPLY_3_8192_1_T5.mat
8192 3 2 524276 19 1/12 O, O-1, S PSEQ_WIENER_RI_SIMPLY_3_8192_2_T5.mat
8192 3 3 1048560 20 1/12 O, O-1, O-2, O-4, S PSEQ_WIENER_RI_SIMPLY_3_8192_3_T7_P3.mat
8192 3 4 2228208 21 1/12 O, O-1, O-2, O-4 PSEQ_WIENER_RI_SIMPLY_3_8192_4_T8_P3.mat
8192 5 0 262132 18 1/12 O, O-1, S PSEQ_WIENER_RI_SIMPLY_5_8192_0_T5.mat
8192 5 1 1114104 20 1/12 O, O-1, O-2 PSEQ_WIENER_RI_SIMPLY_5_8192_1_T8_P2.mat
16384 3 0 262140 18 1/12 O, O-1 PSEQ_WIENER_RI_SIMPLY_3_16384_0_T4.mat
16384 3 1 524276 19 1/12 O, O-1, S PSEQ_WIENER_RI_SIMPLY_3_16384_1_T5.mat
16384 3 2 1048564 20 1/12 O, O-1, S PSEQ_WIENER_RI_SIMPLY_3_16384_2_T5.mat
16384 3 3 2097136 21 1/12 O, O-1, O-2, O-4, S PSEQ_WIENER_RI_SIMPLY_3_16384_3_T7_P3.mat
16384 5 0 524276 19 1/12 O, O-1, S PSEQ_WIENER_RI_SIMPLY_5_16384_0_T5.mat
16384 5 1 2097136 21 1/12 O, O-1, O-2, O-4 PSEQ_WIENER_RI_SIMPLY_5_16384_1_T8_P3.mat
65536 3 2 8388576 23 1/12 O, O-1, O-2, O-4, O-8, S PSEQ_WIENER_RI_SIMPLY2_O1_65536_0_...
O: oddness, O-N: oddness-N, S: symmetry, max cross-correlation lower than 1e-12.

PSEQ for room impulse response estimation with Wiener nonlinear filters having different memory/diagonal number for each kernel:

Kernel Memory
Length
Diagonal
Number
Period Log2(Period) Power Exploits File
1
2
3
65536
8192
8192
0
3
3
16777152 24 1/12 O, O-1, O-2, O-4, O-4, S PSEQ_WIENER_RI_SIMPLY2_O1_65536_0_...
1
2
3
4
5
32768
4096
4096
4096
4096
0
3
3
0
0
8388576 23 1/15 O, O-1, O-2, O-4, O-4, S PSEQ_WIENER_RI_SIMPLY2_O1_32768_...
O: oddness, O-N: oddness-N, S: symmetry, max cross-correlation lower than 1e-12.

Programs:

- The perfect sequences for EMFN, L+EMFN, and Legendre nonlinear filters, and for room impulse response estimation with Legendre nonlinear filters have been generated with the following MATLAB code: PSEQCode1.rar.
- The perfect sequences for Wiener nonlinear filters and for room impulse response estimation with Wiener nonlinear filters have been generated with the following MATLAB code: PSEQCodeWiener.rar