title: Two-dimensional window design
text: # Two-dimensional window design
  
  Windowing is a process where an index-limited sequence has its maximum energy concentrated in a finite frequency interval. This can be extended to an N-dimension where the N-D window has the limited support and maximum concentration of energy in a separable or non-separable N-D passband. The design of an N-dimensional window particularly a 2-D window finds applications in various fields such as spectral estimation of multidimensional signals, design of circularly symmetric and quadrantally symmetric non-recursive 2D filters, design of optimal convolution functions, image enhancement so as to reduce the effects of data-dependent processing artifacts, optical apodization and antenna array design.
  
  ## Two-dimensional window
  
  Due to the various applications of multi-dimensional signal processing, the various design methodologies of 2-D windows is of critical importance in order to facilitate these applications mentioned above, respectively.
  
  Consider a two-dimensional window function (or window array) $w(n_{1},n_{2})$ with its Fourier transform denoted by $W(w_{1},w_{2})$. Let $i(n_{1},n_{2})$ and $I(w_{1},w_{2})$ denote the impulse and frequency response of an ideal filter and $h(n_{1},n_{2})$ and $H(w_{1},w_{2})$ denote the impulse and frequency response of a filter approximating the ideal filter, then we can approximate $I(w_{1},w_{2})$ by $h(n_{1},n_{2})$. Since $i(n_{1},n_{2})$ has an infinite extent it can be approximated as a finite impulse response by multiplying with a window function as shown below
  
      $h(n_{1},n_{2})=i(n_{1},n_{2})w(n_{1},n_{2})$
  
  and in the Fourier domain
  
      $H(w_{1},w_{2})={\frac {1}{(2\pi )^{2}}}[I(w_{1},w_{2})**W(w_{1},w_{2})]$
  
  The problem is to choose a window function with an appropriate shape such that $H(w_{1},w_{2})$ is close to $I(w_{1},w_{2})$ and in any region surrounding a discontinuity of $I(w_{1},w_{2})$, $H(w_{1},w_{2})$ shouldn't contain excessive ripples due to the windowing.
  
  ## 2-D window function from 1-D function
  
  There are four approaches for generating 2-D windows using a one-dimensional window as a prototype.
  
  Approach I
  
  One of the methods of deriving the 2-D window is from the outer product of two 1-D windows, i.e., $w(n_{1},n_{2})=w_{1}(n_{1})w_{2}(n_{2}).$ The property of separability is exploited in this approach. The window formed has a square region of support and is separable in the two variables. In order to understand this approach, consider 1-D Kaiser window whose window function is given by
  
      $w[n]=\left\{{\begin{matrix}{\frac {I_{0}\left(\pi \alpha {\sqrt {1-\left({\frac {2n}{N-1}}-1\right)^{2}}}\right)}{I_{0}(\pi \alpha )}},&0\leq n\leq N-1\\\\0&{\text{otherwise}}\\\end{matrix}}\right.$
  
  then the corresponding 2-D function is given by
  
      $w(n_{1},n_{2})=\left\{{\begin{matrix}{\frac {I_{0}\left(\alpha {\sqrt {1-\left({\frac {n_{1}}{a}}\right)^{2}}}\right)I_{0}\left(\alpha {\sqrt {1-({\frac {n_{2}}{a}})^{2}}}\right)}{I_{0}^{2}(\alpha )}},&|n_{1}|\leqslant a,|n_{2}|\leqslant a\\0&{\text{otherwise}}\\\end{matrix}}\right.$
  
  where:
  
  * $r={\sqrt {n_{1}^{2}+n_{2}^{2}}}$
  * N is the length of the 1-D sequence,
  * $I_0$ is the zeroth-order modified Bessel function of the first kind,
  * α is an arbitrary, non-negative real number that determines the shape of the window. In the frequency domain, it determines the trade-off between main-lobe width and side lobe level, which is a central decision in window design.
  
  The Fourier transform of $w(n_{1},n_{2})$ is the outer product of the Fourier transforms of $w_{1}(n_{1}){\text{ and }}w_{2}(n_{2})$. Hence $W(w_{1},w_{2})=W_{1}(w_{1})W_{2}(w_{2})$.
  
  Approach II
  
  Another method of extending the 1-D window design to a 2-D design is by sampling a circularly rotated 1-D continuous window function. A function is said to possess circular symmetry if it can be written as a function of its radius, independent of $\theta$ i.e. $f(r,\theta )=f(r).$
  
  If w(n) denotes a good 1-D even symmetric window then the corresponding 2-D window function is
  
      $w(n_{1},n_{2})=w\left({\sqrt {n_{1}^{2}+n_{2}^{2}}}\right){\text{ for }}\left|{\sqrt {n_{1}^{2}+n_{2}^{2}}}\right|\leqslant a$
  
  (where $a$ is a constant) and
  
      $w(n_{1},n_{2})=0{\text{ for }}\left|{\sqrt {n_{1}^{2}+n_{2}^{2}}}\right|>a$
  
  The transformation of the Fourier transform of the window function in rectangular co-ordinates to polar co-ordinates results in a Fourier–Bessel transform expression which is called as Hankel transform. Hence the Hankel transform is used to compute the Fourier transform of the 2-D window functions.
  
  If this approach is used to find the 2-D window from the 1-D window function then their Fourier transforms have the relation
  
      ${\frac {1}{2\pi }}H(w_{1},w_{2})**W(w_{1},w_{2})=H(w)*W(w)$
  
  where:
  
      $H(w)=\left\{{\begin{matrix}1,&w\geq 0\\0,&w<0\\\end{matrix}}\right.$ is a 1-D step function
  
  and
  
      $H(w_{1},w_{2})=\left\{{\begin{matrix}1,&w_{1}\geq 0{\text{ and all }}w_{2}\\0,&w_{1}<0{\text{ and all }}w_{2}\end{matrix}}\right.$ is a 2-D step function. In order to calculate the percentage of mainlobe constituted by the sidelobe, the volume under the sidelobes is calculated unlike in 1-D where the area under the sidelobes is used. In order to understand this approach, consider 1-D Kaiser window then the corresponding 2-D function can be derived as
      $w(n_{1},n_{2})=\left\{{\begin{matrix}{\frac {I_{0}\left(\alpha {\sqrt {1-{\frac {\sqrt {n_{1}^{2}+n_{2}^{2}}}{a^{2}}}}}\right)}{I_{0}(\alpha )}},&|r|\leqslant a\\0&{\text{otherwise}}\end{matrix}}\right.$
  
  This is the most widely used approach to design the 2-D windows.
  
  2-D filter design by windowing using window formulations obtained from the above two approaches will result in the same filter order. This results in an advantage for the second approach since its circular region of support has fewer non-zero samples than the square region of support obtained from the first approach which in turn results in computational savings due to reduced number of coefficients of the 2-D filter. But the disadvantage of this approach is that the frequency characteristics of the 1-D window are not well preserved in 2-D cases by this rotation method. It was also found that the mainlobe width and sidelobe level of the 2-D windows are not as well behaved and predictable as their 1-D prototypes. While designing a 2-D window there are two features that have to be considered for the rotation. Firstly, the 1-D window is only defined for integer values of $n$ but ${\sqrt {n_{1}^{2}+n_{2}^{2}}}$ value isn't an integer in general. To overcome this, the method of interpolation can be used to define values for $w(n_{1},n_{2})$ for any arbitrary $w\left({\sqrt {n_{1}^{2}+n_{2}^{2}}}\right).$ Secondly, the 2-D FFT must be applicable to the 2-D window.
  
  Approach III
  
  Another approach is to obtain 2-D windows by rotating the frequency response of a 1-D window in Fourier space followed by the inverse Fourier transform. In approach II, the spatial-domain signal is rotated whereas in this approach the 1-D window is rotated in a different domain (e.g., frequency-signal).
  
  Thus the Fourier transform of the 2-D window function is given by
  
      $W_{2}(w_{1},w_{2})=W_{1}\left({\sqrt {(w_{1}^{2}+w_{2}^{2})}}\right).$
  
  The 2-D window function $w_{2}(n_{1},n_{2})$ can be obtained by computing the inverse inverse Fourier transform of $W_{2}(w_{1},w_{2})$.
  
  Another way to show the type-preserving rotation is when the relation $W_{1}(w_{1})=W_{2}(w_{1},w_{2})\ at\ w_{2}=0$ is satisfied. This implies that a slice of the frequency response of 2-D window is equal to that of the 1-D window where the orientation of $(w_{1},w_{2})$ is arbitrary. In spatial domain, this relation is given by $w_{1}(n)=\int _{-\infty }^{\infty }\!w_{2}(n_{1},n_{2})\,dn_{2}$. This implies that a slice of the frequency response $W_{2}(w_{1},w_{2})$ is the same as the Fourier transform of the one-directional integration of the 2-D window $w_{2}(n_{1},n_{2})$.
  
  The advantage of this approach is that the individual features of 1-D window response $W_{1}(w_{1})$ are well preserved in the obtained 2-D window response $W_{2}(w_{1},w_{2})$. Also, the circular symmetry is improved considerably in a discrete system. The drawback is that it's computationally inefficient due to the requirement of 2-D inverse Fourier transform and hence less useful in practice.
  
  Approach IV
  
  A new method was proposed to design a 2-D window by applying the McClellan transformation to a 1-D window. Each coefficient of the resulting 2-D window is the linear combination of coefficients of the corresponding 1-D window with integer or power of 2 weighting.
  
  Consider a case of even length, then the frequency response of the 1-D window of length N can be written as
  
      $W_{1}(w)=\sum _{n=1}^{N/2}w(n)\cos[(n-0.5)w].$
  
  Consider the McClellan transformation:
  
      $\cos(w)=0.5\cos(w_{1})+0.5\cos(w_{2})+0.5\cos(w_{1})\cos(w_{2})-0.5$
  
  which is equivalent to
  
      $\cos(0.5w)=\cos(0.5w_{1})\cos(0.5w_{2}){\text{ for }}0\leq \ w\leq \pi ,0\leq \ w_{1}\leq \pi ,0\leq \ w_{2}\leq \pi .$
  
  Substituting the above, we get the frequency response of the corresponding 2-D window
  
      $W_{2}(w_{1},w_{2})=\sum _{n_{1}=1}^{N/2}\sum _{n_{2}=1}^{N/2}w_{2}(n_{1},n_{2})\cos[(n_{1}-0.5)w_{1}]\cos[(n_{2}-0.5)w_{2}].$
  
  From the above equation, the coefficients of the 2-D window can be obtained.
  
  To illustrate this approach, consider the Tseng window. The 1-D Tseng window of $2N$ weights can be written as
  
      $W(w)=\exp(-jw/2)\sum _{n=1}^{N}2w_{n}\cos \left(\left(n-{\frac {1}{2}}\right)w\right).$
  
  By implementing this approach, the frequency response of the 2-D McClellan-transformed Tseng window is given by
  
      $W(w_{1},w_{2})=\exp(-j(w_{1}+w_{2})/2)\sum _{n_{1}=1}^{N}\sum _{n_{2}=1}^{N}4w(n_{1},n_{2})\cos \left(\left(n_{1}-{\frac {1}{2}}\right)w_{1}\right)\cos \left(\left(n_{2}-{\frac {1}{2}}\right)w_{2}\right)$
  
  where $w(n_{1},n_{2})$ are the 2-D Tseng window coefficients.
  
  This window finds applications in antenna array design for the detection of AM signals.
  
  The advantages include simple and efficient design, nearly circularly symmetric frequency response of the 2-D window, preserving of the 1-D window prototype features. However, when this approach is used for FIR filter design it was observed that the 2-D filters designed were not as good as those originally proposed by McClellan.
  
  ## 2-D window functions
  
  Using the above approaches, the 2-D window functions for few of the 1-D windows are as shown below. When Hankel transform is used to find the frequency response of the window function, it is difficult to represent it in a closed form. Except for rectangular window and Bartlett window, the other window functions are represented in their original integral form. The two-dimensional window function is represented as $w(r)$ with a region of support given by $|r|<a$ where the window is set to unity at origin and $w(r)=0$ for $|r|>a.$ Using the Hankel transform, the frequency response of the window function is given by
  
      $W(f)=\int _{0}^{\infty }\!rw(r)J_{0}(fr)\,dr.$
  
  where $J_{0}$ is Bessel function identity.
  
  ### Rectangular window
  
  The two-dimensional version of a circularly symmetric rectangular window is as given below
  
      $w(r)=\left\{{\begin{array}{ll}1,&|r|\leqslant a\\0,&|r|>a\\\end{array}}\right.$
  
  The window is cylindrical with the height equal to one and the base equal to 2a. The vertical cross-section of this window is a 1-D rectangular window. The frequency response of the window after substituting the window function as defined above, using the Hankel transform, is as shown below
  
      $W(f)=\int _{0}^{\infty }\!rJ_{0}(fr)\,dr$
  
  ### Bartlett window
  
  The two-dimensional mathematical representation of a Bartlett window is as shown below
  
      $w(r)=\left\{{\begin{array}{cl}1-{\frac {|r|}{a}},&|r|\leqslant a\\0,&|r|>a\end{array}}\right.$
  
  The window is cone-shaped with its height equal to 1 and the base is a circle with its radius 2a. The vertical cross-section of this window is a 1-D triangle window. The Fourier transform of the window using the Hankel transform is as shown below
  
      $W(f)=\int _{0}^{\infty }\!r\left(1-{\frac {|r|}{a}}\right)J_{0}(fr)\,dr$
  
  ### Kaiser window
  
  The 2-D Kaiser window is represented by
  
      $w(r)=\left\{{\begin{array}{cl}{\frac {I_{0}\left(\alpha {\sqrt {1-({\frac {r}{a}})^{2}}}\right)}{I_{0}(\alpha )}},&|r|\leqslant a\\[4pt]0,&{\text{otherwise}}\end{array}}\right.$
  
  The cross-section of the 2-D window gives the response of a 1-D Kaiser Window function. The Fourier transform of the window using the Hankel transform is as shown below
  
      $W(f)=\int _{0}^{\infty }\!r\left({\tfrac {I_{0}\left(\alpha {\sqrt {1-(({\frac {r}{a}})^{2}}}\right)}{I_{0}(\alpha )}}\right)J_{0}(fr)\,dr$
  