Spatial Signal Processing (Beamforming)

What Is Beamforming? • Beamforming is spatial filtering, a means of transmitting or receiving sound preferentially in some directions over others. • Beamforming is exactly analogous to frequency domain analysis of time signals. • In time/frequency filtering, the frequency content of a time signal is revealed by its Fourier transform. • In beamforming, the angular (directional) spectrum of a signal is revealed by Fourier analysis of the way sound excites different parts of the set of transducers. • Beamforming can be accomplished physically (shaping and moving a transducer), electrically (analog delay circuitry), or mathematically (digital signal processing).

Beamforming Requirements • Directivity – A beamformer is a spatial filter and can be used to increase the signal-to-noise ratio by blocking most of the noise outside the directions of interest. • Side lobe control – No filter is ideal. Must balance main lobe directivity and side lobe levels, which are related. • Beam steering – A beamformer can be electronically steered, with some degradation in performance. • Beamformer pattern function is frequency dependent: – Main lobe narrows with increasing frequency – For beamformers made of discrete hydrophones, spatial aliasing (“grating lobes”) can occur when the the hydrophones are spaced a wavelength or greater apart.

A Simple Beamformer

plane wave signal wave fronts

h1 α d

0 h2

h1 h1 are two omnidirectional hydrophones

plane wave has wavelength λ = c/f, where f is the frequency c is the speed of sound

Analysis of Simple Beamformer • Given a signal incident at the center C of the array: iω( t )

s( t ) = R( t ) ⋅ e

• Then the signals at the two hydrophones are:

si ( t ) = R( t ) ⋅ e where

φ n = ( − 1) n

iω ( t )

e

iφ i ( t )

πd sin α λ

• The pattern function of the dipole is the normalized response of the dipole as a function of angle:

b( α ) =

s1 + s 2 ⎞ ⎛ πd sin α ⎟ = cos ⎜ s ⎝ λ ⎠

Beam Pattern of Simple Beamformer Pattern Loss vs. Angle of Incidence of Plane Wave For Two Element Beamformer, λ/2 Element Spacing

Polar Plot of Pattern Loss For 2 Element Beamformer λ /2 Element Spacing

0

105 120

Pattern Loss, dB

60 45

-20 -30

150

-20

75

-10

135

-10

90 0

30

-40

165

15

-50

-30

0

-180 -165

-40

-15

-150

-50

-30 -135

-45 -120

-60

-60 -105

-150

-100

-50

0 α , degrees

50

100

150

-90

-75

Beam Pattern of a 10 Element Array

0

Pattern Loss vs. Angle of Incidence of Plane Wave For Ten Element Beamformer, λ/2 Spacing

Polar Plot of Pattern Loss For 10 Element Beamformer λ/2 Spacing 105 90 0 120 135

45

-20 -30

150

Pattern Loss, dB

60

-10

-10

-20

75

30

-40

165

15

-50 -30

-40

180

0

-165

-15

-150

-30

-50

-135 -60

-45 -120

-150

-100

-50

0

α, degrees

50

100

150

-60 -105

-90

-75

Beamforming – Amplitude Shading • Amplitude shading is applied as a beamforming function. • Each hydrophone signal is multiplied by a “shading weight” • Effect on beam pattern: – Used to reduce side lobes – Results in main lobe broadening

Beam Pattern of a 10 Element Dolph-Chebychev Shaded Array Comparison Beam Pattern Of A 10 Element Dolph-Chebychev Beamformer With -40 dB Side Lobes And λ /2 Element Spacing With A Uniformly Weighted 10 Element Beamformer 0

-10

Dolph-Chebychev Beamformer

Uniform Beamformer

Pattern Loss, dB

-20

-30

-40

-50

-60

-80

-60

-40

-20

0 α , degrees

20

40

60

80

Analogy Between Spatial Filtering (Beamforming) and TimeFrequency Processing Goals of Spatial Filtering:

Goals of Time-Frequency Processing:

1.

Increase SNR for plane wave signals in ambient ocean noise.

1.

Increase SNR for narrowband signals in broadband noise.

2.

Resolve (distinguish between) plane wave signals arriving from different directions.

2.

Resolve narrowband signals at different frequencies.

3.

Measure the frequency of narrowband signals.

3.

Measure the direction from which plane wave signals are arriving.

Time-Frequency Filtering and Beamforming Sine wave at f0

Sine wave at f1

Broadband noise spectrum

Narrowband filter at f0

f1

f0

Plane wave at ψ0

Plane wave at ψ1

Ambient noise angular density

Frequency

Narrow spatial filter at ψ0

ψ1

ψ0

Spatial angle ψ

SNR Calculation: Time-Frequency Filtering Define

α 2δ ( f − f0 ) ≡ Signal power spectral density (W/Hz) N ( f ) ≡ Noise power spectral density (W/Hz) 2

H ( f ) ≡ Filter power response Signal Power Is: ∞

Ps = α 2 ∫ δ ( f − f0 ) H ( f ) df = α 2 H ( f0 ) −∞

2

2

(watts)

SNR Calculation: Time-Frequency Filtering (Cont’d) If we assume

⎧⎪ 1, H( f ) = ⎨ ⎪⎩0, 2



β 2

≤ f − f0 ≤

β

2 otherwise

Idealized rectangular filter with bandwidth β

Then the noise power is: ∞

PN =

∫ N( f ) ⋅ H ( f )

2

df = N0 β (watts)

−∞

And SNR is:

SNR

Ps α2 = = PN N0β

N0 is the noise level in band

SNR Calculation: Spatial Filtering Define

α 2δ (ψ − ψ 0 ) ≡ Signal power angular density (W/steradian) N (ψ ) ≡ Noise power angular density (W/steradian) 2

G(ψ ) ≡ Spatial filter angular power response

Signal Power Is:

Ps = α 2 ∫ δ (ψ − ψ 0 ) G(ψ ) df = α 2 G(ψ 0 ) 2



2

(watts)

SNR Calculation: Time-Frequency Filtering (Cont’d) If we assume

⎧ ⎪ G(ψ ) = ⎨1, ⎪⎩ 0, 2



ψβ 2

≤ ψ −ψ 0 ≤

ψβ

2 otherwise

Idealized “cookie cutter” beam pattern with width ψβ

Then the noise power is:

PN =

∫π N(ψ ) ⋅ G(ψ )

2

dΩ = ψ β K (watts)

4

And SNR is:

SNR

Ps α2 = = PN ψ βK

K is the noise intensity in beam

Array Gain and Directivity Calculations Define

Assume

Array Gain =

SNR Array

• plane wave signal • arbitrary noise distribution

SNROH

For the omnidirectional hydrophone, 2

G( Ω ) = 1

for all Ω

Then

α 2 ∫ δ ( Ω − Ω 0 ) GOH ( Ω ) dΩ 2

SNROH

P = s = PN



∫π N( Ω ) ⋅ G

OH

4

2

( Ω ) dΩ

=

∫π

4

α2 N ( Ω ) dΩ

Array Gain and Directivity Calculations (Cont’d) 2

G 2 ( Ω0 ) = 1

For the array, assume it is steered in the direction of Ω0 and that Then

SNRarray

P = s = PN

α

2

∫πδ ( Ω − Ω

2

0

) Garray ( Ω ) dΩ =

4



2

N ( Ω ) ⋅ Garray ( Ω ) dΩ



α2



2

N ( Ω ) ⋅ Garray ( Ω ) dΩ



Putting these together yields

AG =

∫π N( Ω ) dΩ

4

∫π N( Ω ) ⋅ G

( Ω ) dΩ

array

4

2

Array Gain and Directivity Calculations (Cont’d) If the noise is isotropic (the same from every direction)

N( Ω ) = K Then the Array Gain (AG) becomes the Directivity Index (DI), a performance index For the array that is independent of the noise field.

DI =



∫G

array

2

( Ω ) dΩ



Array Gain and Directivity Index are usually expressed in decibels.

Line Hydrophone Spatial Response x

ψ L/2 X1sin ψ

x1

plane wave signal wave fronts

L

0

ψ -L/2

plane wave has wavelength λ = c/f, where f is the frequency c is the speed of sound

Line Hydrophone Spatial Response (Cont’d) The received signal is

s( t ) x sin ψ ⎞ ⎛ s⎜ t + ⎟ c ⎝ ⎠

at the origin at point x

Let the hydrophone’s response or sensitivity at the point x be g(x). Then, the total hydrophone response is L/ 2

x sin ψ sout ( t ) = ∫ g( x )s( t + )dx c −L / 2

Line Hydrophone Spatial Response (Cont’d) Using properties of the Fourier Transform:

S( f ) = ∫ s( t )e − i 2 πft dt And: ∞

x sin ψ − i 2 πft i 2 πfx sin ψ )S( f ) ∫−∞s( t + c )e dt = exp( c Or:

x sin ψ s( t + )= c



i 2 πfx sin ψ + i 2 πft )S( f )df ∫−∞exp( c

Line Hydrophone Spatial Response (Cont’d) Thus, the total hydrophone response can be written: L/2



i 2 π fx sin ψ s out ( t ) = ∫ g ( x ) ∫ exp( + i 2 π ft )S ( f )dfdx c −L / 2 −∞ ⎡ L/2 i 2 π fx sin ψ = ∫ S ( f ) ⎢ ∫ g ( x ) exp( ) dx c −∞ ⎣−L / 2 ∞

⎤ i 2 π ft df ⎥e ⎦



f sin ψ i 2 πft ≡ ∫ S ( f )G ( )e df c −∞ Where

f sin ψ G( )≡ c

L/2

f sin ψ ⎤ ⎡ 2 π g ( x ) exp i ( ) x ⎥ dx ∫ ⎢⎣ c ⎦ −L / 2

We call g(x) the aperture function and G((fsin ψ)/c) the pattern function. They are a Fourier Transform pair.

Response To Plane Wave An Example: Unit Amplitude Plane Wave from direction ψ0:

s( t ) = e

j 2 π f0 t

S( f ) = δ( f − f0 )

The Line Hydrophone Response is: ∞

f sin ψ 0 i 2 πft s out ( t ) = ∫ δ( f − f0 )G ( )e df c −∞

⎛ f0 sin ψ 0 ⎞ j 2 πf0 t = G⎜ ⎟e c ⎝ ⎠ Note that the output is the input signal modulated by the value of the pattern function at ψ0

Response To Plane Wave (Cont’d) The pattern function is the same as the angular power response defined earlier. Sometimes we use electrical angle u:

u ≡

f sin ψ sin ψ = c λ

instead of physical angle ψ.

Uniform Aperture Function Consider a uniform aperture function ⎧ 1 ⎪L, ⎪ g( x ) = ⎨ ⎪0 , ⎪ ⎩



L L ≤ x ≤ 2 2 otherwise

The pattern function is: ∞

L/ 2

j 2 πLu / 2 j 2 πLu / 2 1 e − e j2 πux G( u ) = ∫ g( x )e j 2 πux dx = e dx = ∫ L −L / 2 j 2 πLu −∞

e j 2 πLu / 2 − e j 2 πLu / 2 e j 2 πux = = j 2 πLu j 2 πLu ≡ sinc( Lu )

L/ 2

−L / 2

sin( πLu ) = πLu

Rectangular Aperture Function and Pattern Function

Array Main Lobe Width (Beamwidth)

3 dB (Half-Power) Beamwidth To find it, solve

2

1 ⎛ ψ 3dB ⎞ G⎜ ⎟ = 2 ⎝ 2 ⎠

For

ψ 3dB

Beamwidth Calculation Example: Uniform Weighting ⎛ πLu 3dB ⎞ sin⎜ ⎟ 2 ⎝ ⎠= 1 πLu 3dB 2 2

πLu 3dB = 1.39 2 ⎛ 2 ⋅ 1.39 ⋅ λ ⎞ ψ 3dB = sin − 1 ( λu 3dB ) = sin − 1 ⎜ ⎟ π L ⎝ ⎠

λ⎞ λ ⎛ = sin −1⎜ .885 ⎟ ≈ .885 L⎠ L ⎝ ≈ 50

λ L

radians

deg

For λ 〈 〈 L.

Note the effect of increasing L.

Line Array of Discrete Elements

L = Nd x

d

Aperture Function: N

g(x) = ∑ anδ ( x − x n )

Pattern Function: (N odd, uniform spacing)

n =1

For N = 2M + 1 (Odd), and uniform spacing d , g(x ) =

M

∑ a δ ( x − nd )

=



∫ g ( x )e

=

G(u) ∞



M

∫ ∑ ∞

n=−M

n

n=− M

j 2 πux

=

dx

a n δ ( x − nd )e M



n=−M

ane

j 2 π ndu

j 2 π ux

dx

Uniformly Weighted Discrete Line Array 1 , uniform spacing, n odd. N Temporaril y define : Assume an =

r ≡ e j 2πdu

then 1 M n 1 r N / 2 − r −N / 2 G (r ) = r =an ∑ N n=−M N r 1 / 2 − r −1 / 2

or 1 sin (π uNd ) G (u ) = N sin (π ud )

Pattern Function For Uniform Discrete Line Array

Notes On Pattern Function For Discrete Line Array

•u Only has physical significance over the range •The region



1 1 ≤u ≤ λ λ

⎛ 1 1⎞ ⎜− ⎟ ⎝ λ, λ ⎠

may include more than

one main lobe if d ≥ λ , which causes ambiguity (called grating lobes). General trade-offs in array design: 1)Want L large so that beamwidth is small and resolution is good 2)Want d ≤ λ to avoid grating lobes. 3)Since L=Nd, or N=L/d, increasing L and decreasing d Both cause N to increase, which costs more money

Effects of Array Shading (Non-Uniform Aperture Function) • Shading reduces sidelobe levels at the expense of widening the main lobe. • For other aperture functions: First sidelobe Aperture ψ3dB ,degrees level, dB Rectangular

50λ/L

-13.3

Circular

58λ/L

-17.5

Parabolic

66λ/L

-22.0

Triangular

73λ/L

-26.5

Beam Steering Want to shift the peak of the pattern function from u = 0 to u = u0. What is the aperture function needed to accomplish this?

g(x) g ′( x )



=





G (u )e − j 2 πux du



= = =





e

G (u − u 0 )e − j 2 πux du

j 2 πu 0 x

∫ e



G ( p )e

∞ j 2 πu 0 x

− j 2 πpx

dp

G(u- u0)

g(x)

Beam steering is accomplished by multiplying the non-steered aperture function by a unit amplitude complex exponential, which is just a delay whose value depends on x.

Beam Steering For Discrete Arrays The steered aperture function becomes

g(x)

N

∑ g( nd )δ ( x − nd )e

= = ...g ( −d )e

− j 2πndu 0

The steered physical angle is

j 2πndu0

n =1

δ ( x − d ) + g( 0 )δ ( x ) + g( d )e j 2πndu δ ( x + d ) + ... 0

ψ 0 = sin −1 ( λu0 ).

The phase shift at element n is equivalent to a time shift: 2 πndu0 =

2 πnd sin ψ 0 nd sin ψ 0 = 2 πf = 2 πfτ n . λ c

where τ n =

nd sin ψ 0 c

Is the time shift which must be applied to the nth element.

Effect Of Beam Steering On Main Lobe Width

Beam steering produces a projected aperture. Since reducing the aperture increases the beam width, beam steering causes the width of the (steered) main lobe to increase. The lobe distorts (fattens) more on the side of the beam toward which the beam is being steered,

Beam Steering: An Example For a uniformly weighted, evenly spaced (d=λ/2), 8 element array, the pattern function is

1 sin [π Nd ( u − u 0 ) ] G( u − u0 ) = N sin [π d ( u − u 0 ) ]

To find the beamwidth, set

2

2

G(u + − u 0 ) = G(u 0 - u − ) =

1 2

Which yields

π d (u + − u 0 ) = π d (u 0 - u − ) = 0.175

Using d = λ / 2 and u = sin ψ / λ the condition is sin ψ + − sin ψ 0 = sin ψ 0 - s in ψ − = 0.1114

Beam Steering: An Example (Cont’d) As an example, take N=8, (d=λ/2).

Case 1 : sin ψ 0 = 0 ⇒ ψ + = 6 .4 0

sin ψ + = sin ψ − = 0 . 1114

ψ − = 6 .4 0

ψ 3 dB = 12 . 8 0

λ λ 50 Note : 50 = 50 = = 12 . 5 0 L nd 4

Beam Steering: An Example (Cont’d) Case 2 : ψ 0 = 45 0

sin ψ 0 = 0.707

ψ + = sin − 1 ( 0.1114 + 0.707 ) = 54.9 0 ψ − = sin − 1 ( 0.1114 − 0.707 ) = 36.6 0 ψ 3dB = 18.3 0

(wider)

But, beam is not symmetrical : 54.9 0 − 45 0 = 9.9 0 45 0 − 36.6 0 = 8.4 0 Notice that there is no grating lobe until ψ 0 = 90 0 at which point there is a grating lobe at ψ = −90 0 This is why d =

λ is optimal 2

Directivity Index For A Discrete Line Array

DI for a discrete line array, broadside and endfire with N=9.

• Uniform weighting • f 0 is the frequency at which d = λ / 2 • When f = f 0 (

f = 1), DI = 10 log N f0

• When f > f 0 , DI oscillates about 10 log N . However, grating lobes cause ambiguity. • When f < f 0 , DI drops at about 3dB per octave. End fire beam has higher DI, but broader beamwidth, hence poorer directional resolution.

Array Gain: Discrete Line Array

Noise Model : ⎧ K sin φ , 00 ≤ φ ≤ 90 0 N( φ ) = ⎨ 0 0 KL sin( ), 90 0 φ φ − − ≤ ≤ ⎩ B

(LB ≈ 0.1)

Array Gain: Discrete Line Array (Cont’d)

Nine-element vertical line array gain versus elevation steering angle in a surface-generated ambient noise field