Abstract
Two-dimensional (2-D) nonlinear-phase finite impulse response (FIR) filters have found many applications in signal processing and communication systems. This paper considers the elliptic-error and phase-error constrained least-squares design of 2-D nonlinear-phase FIR filters, and develops a matrix-based algorithm to solve the design problem directly for the filter’s coefficient matrix rather than vectorizing it first as in the conventional methods. The matrix-based algorithm makes the design to consume much less design time than existing algorithms. Design examples and comparisons with existing methods demonstrate the effectiveness and high efficiency of the proposed design method.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Avoid common mistakes on your manuscript.
1 Introduction
Optimal design of two-dimensional (2-D) nonlinear-phase finite impulse response (FIR) filters has attracted much attention of many researchers because they are more desirable than linear-phase FIR filters in many applications, e.g., the low group-delay FIR filters (Lu 2002; Lu and Hinamoto 2006) and fractional delay FIR filters (Deng and Lu 2000; Laakso et al. 1996; Shyu et al. 2009) in image and video processing, prototype FIR filters in 2-D filter banks (Dam et al. 2005; de Haan et al. 2003; Yan and Ikehara 1999) and allpass FIR filters in phase compensation (Zhu et al. 1999). In addition, optimal designs of 2-D infinite impulse response (IIR) filters are often transformed into convex subproblems in the same or similar formulations as 2-D nonlinear-phase FIR filter designs (Chottera and Jullien 1982; Dumitrescu 2005; Lu et al. 1998).
In constrained least-square (CLS) and minimax designs of 2-D nonlinear-phase FIR filters (Lu 2002; Lu and Hinamoto 2006), constraints are usually imposed merely on the filter’s frequency response error. The resultant maximum magnitude error and phase error are about the same value. In order to obtain smaller magnitude error than phase error, Lai (2009) imposes constraints simultaneously on the frequency response error and phase error. The phase-error constrained minimax design in Lai et al. (2009) constrains the frequency response using elliptic-error and phase-error constraints, resulting in smaller magnitude error than those obtained by using frequency-response-error and phase-error constraints.
The impulse response coefficients of 2-D FIR filters are naturally arranged in matrices. Most existing algorithms for optimal designs of 2-D FIR filters, say, those in Algazi et al. (1986), Dumitrescu (2006), Gislason et al. (1993), Lai (2009), Lai et al. (2009), Lang et al. (1996), Lu (2002), Lu and Hinamoto (2006, 2011), Rusu and Dumitrescu (2012), rearrange the coefficient matrices into vectors and then solve the design problems using algorithms for one-dimensional (1-D) FIR filters. This leads to high computational complexities of the design algorithms and much design time for large size filters.
There are also several works (Ahmad and Wang 1989; Aravena and Gu 1996; Gu and Aravena 1994; Hong et al. 2013; Zhao and Lai 2011, 2013; Zhu et al. 1997, 1999) that formulate the design problems in terms of the coefficient matrices and develop algorithms to directly solve for the coefficient matrices rather than vectorizing them first, leading to lower computational complexities than corresponding algorithms vectorizing the coefficient matrices. The algorithms in Ahmad and Wang (1989), Aravena and Gu (1996), Gu and Aravena (1994), Zhao and Lai (2011, 2013), Zhu et al. (1997, 1999) only consider (weighted) least-squares designs of 2-D FIR filters without any other constraints. The algorithm in Hong et al. (2013) considers the constrained least-squares (CLS) design of 2-D FIR filters but is only applicable to the design of exact linear-phase filters.
This paper considers the elliptic-error and phase-error constrained least-squares (EPCLS) design of 2-D FIR filters. The problem can be solved by the Goldfarb–Idnani (GI) based algorithm in Lai (2009) after minor modifications. However, the algorithm in Lai (2009) is a vectorized one and thus has high computational complexity. To reduce the complexity, a matrix-based algorithm is developed in this paper to directly solve the EPCLS problem for the co-efficient matrix. Through design examples, the presented method is shown to be much more efficient than competing methods.
The rest of this paper is organized as follows. In Sect. 2, the EPCLS design of 2-D nonlinear-phase FIR filters is formulated as a semi-infinite convex quadratic programming (QP) problem in terms of the coefficient matrix. In Sect. 3, a matrix-based version of the GI-based algorithm in Lai (2009) is developed for the semi-infinite convex QP problem resulting from the EPCLS design. Design examples and comparisons with existing algorithms are given in Sect. 4. Conclusions of this paper are drawn in Sect. 5.
2 Matrix-based formulation for EPCLS design problem
The frequency response of a 2-D FIR filter with real impulse response coefficients \(\{h(n_{1},n_{2}):n_{1}=0,1,\ldots ,N_{1}-1; n_{2}= 0,1,\ldots ,N_{2}-1\}\) can be expressed as
where \(\omega _{1}\) and \(\omega _{2}\) are the horizontal and vertical frequencies, and \( i\) is the imaginary unit.
By introducing a function vector of \(\omega \),
where the symbol “\(H\)” in the superscript denotes the conjugate transpose operation, the frequency response can be rewritten in a matrix form as
where A is an \(N_{1}\times N_{2}\) real matrix whose elements are the impulse response coefficients, i.e., \(\mathbf{A}=[h(n_{1},n_{2})], n_{1}=0,1,\ldots , N_{1}-1; n_{2}=0,1,\ldots ,N_{2}-1.\)
Denote by \(D(\omega _{1},\omega _{2})=\bar{{D}}(\omega _{1} ,\omega _{2} )e^{i\beta (\omega _{1} ,\omega _{2} )}\) the desired complex frequency response, where \(\bar{{D}}(\omega _{1} ,\omega _{2} )\) and \(\beta (\omega _{1},\omega _{2})\) are respectively the magnitude and phase of \(D(\omega _{1},\omega _{2})\). The approximation of \(D(\omega _{1},\omega _{2})\) by \(G(\omega _{1},\omega _{2})\) is defined on the frequency plane \(\Omega =\{(\omega _{1},\omega _{2}){\vert }-\pi \le \omega _{1}\le ,\pi ,{\vert }-\pi \le \omega _{2}\le \pi \}\). In practical designs, we discretize the continuous frequency plane \(\Omega \) by a sufficiently dense rectangular frequency grid given by \(\Pi =\{(\omega _{1j},\omega _{2k}){\vert }\omega _{1j}=2\pi (j-1)/(M_{1}-1)-\pi , \omega _{2k}=2\pi (k-1) /(M_{2}-1)-\pi \hbox {with} (j,k)\in F\}\), where \(F=\{(j,k){\vert }j=1,2,\ldots ,M_{1}; k=1,2,\ldots ,M_{2}\}\). Then the frequency response approximation error is defined as
and the magnitude approximation error and phase approximation error are represented by \(E_{m}(\omega _{1},\omega _{2},\mathbf{A})={\vert }G(\omega _{1},\omega _{2},\mathbf{A}){\vert }- \bar{{D}}(\omega _{1} ,\omega _{2} )\) and \(E_{p}(\omega _{1},\omega _{2},\mathbf{A})=\phi (\omega _{1},\omega _{2},\mathbf{A})-\beta (\omega _{1},\omega _{2})\), where \(\phi (\omega _{1},\omega _{2},\mathbf{A})\) is the phase of \(G(\omega _{1},\omega _{2},\mathbf{A})\).
We further define a transformed error by
and an elliptic error as
where \(\sigma \ge 1\) is a prescribed model parameter. When \(\sigma > 1\), the boundary of the constraint
for any \(\rho (\omega _{1},\omega _{2})>0\) is an ellipse, and thus the name elliptic error for \(\bar{{E}}_\sigma (\omega _{1} ,\omega _{2} ,\mathbf{A})\). When \(\sigma =1, \bar{{E}}_{\sigma } (\omega _{1} ,\omega _{2} ,\mathbf{A})\) reduces to the circular error \(\bar{{E}}(\omega _{1} ,\omega _{2} ,\mathbf{A})\) and the elliptic error constraint (7) reduces to the following circular error constraint:
In this paper, we consider the EPCLS design of the 2-D nonlinear-phase FIR filters. That is, we minimize the energy of the frequency response error and impose constraints simultaneously on the elliptic error and the phase error as follows:
where \(\Pi _{1}\) and \(\Pi _{2}\) are two subsets of the passband and stopband frequencies on \(\Pi \), “s.t.” stands for “subject to”, and \(0<\gamma (\omega _1, \omega 2) < \pi /2\). The above EPCLS problem (9) reduces to the CPCLS problem considered in Lai (2009) when \(\sigma =1\).
It is obvious that, \(\{\mathbf{A}\big |{\vert }\bar{{E}}(\omega _{1} ,\,\omega _{2} ,\mathbf{A}){\vert }\le \rho (\omega _{1},\omega _{2})\}\subset \{\mathbf{A}\big |{\vert }\bar{{E}}_\sigma (\omega _{1} ,\,\omega _{2} ,\mathbf{A}){\vert }\le \rho (\omega _{1},\omega _{2})\}\) for any \((\omega _{1},\omega _{2})\in \Pi _{1}\). This implies that the feasible domain of the CPCLS problem in Lai (2009) is a subset of the feasible domain of EPCLS problem (9). Thus, solving the EPCLS problem (9) will result in better filters than solving the CPCLS problem in Lai (2009).
By introducing the following notation:
the frequency response \(G(\omega _{1} ,\,\omega _{2} ,\mathbf{A})\) and cost function \(f(\mathbf{A})\) can be rewritten as
where \(\hbox {tr}\{\bullet \}\) denotes the trace operation. It can be proved that \(f(\mathbf{A})\) is convex when \(M_{1}\ge N_{1}\) and \(M_{2}\ge N_{2}\) (Zhu et al. 1999).
We further introduce \(\rho _{jk}=\rho (\omega _{1j}, \omega _{2k}), \gamma _{jk}=\gamma (\omega _{1j}, \omega _{2k}), \bar{{d}}_{jk} =\bar{{D}}(\omega _{1j}, \omega _{2k}), \beta _{jk}=\beta (\omega _{1j},\omega _{2k}),\, F_{1}=\{(j,k){\vert }(\omega _{1j}, \omega _{2k})\in \Pi _{1}\},\, F_{2}=\{(j,k){\vert }(\omega _{1j}, \omega _{2k})\in \Pi _{2}\}\). Then, the elliptic-error constraints (9b), the circular-error constraints (9c) and the phase-error constraints (9d) can be transformed respectively into
where \(g_{jk}^{R} (\mathbf{A})\) and \(g_{jk}^{I} (\mathbf{A})\) are the real and imaginary parts of \(g_{jk} (\mathbf{A})\) respectively, and \(\alpha \) is an angle parameter. While the constraints in (12a) (12b) are linear but of infinite number because of the continuity of parameter \(\alpha \), the constraints in (12c) are linear and of finite number.
We now introduce a quadruplet \((\alpha ,j,k,l)\) to index the constraints in (12), where \(l\in \{1,2,3\}, (j,k)\in F_{1}\) and \(\alpha \in [0,2\pi )\) when \(l=1, (j,k)\in F_{2}\) and \(\alpha \in [0,2 \pi )\) when \(l=2\), and \((j,k)\in F_{1}\) and \(\alpha \in \{\pm (\pi /2+\gamma _{jk})\}\) when \(l=3\). Let
Then, the matrix-based EPCLS design problem (9) can be rewritten as
where
Problem (15) is a linearly constrained semi-infinite convex QP problem because the index set \(I_{1}\) and \(I_{2}\) are two infinite sets.
3 Matrix-based algorithm for linearly constrained semi-infinite convex QP problem
3.1 The matrix-based EPCLS-GI algorithm
In Sect. 2, the EPCLS design of 2-D FIR filters has been expressed as a matrix-based linearly constrained semi-infinite convex QP problem. In this section, an improved GI algorithm referred to as the matrix-based EPCLS-GI algorithm will be developed to solve the problem.
Like the original GI algorithm (Goldfarb and Idnani 1983), the matrix-based EPCLS-GI algorithm belongs to an active method that maintains an active set of constraints which are satisfied as equalities. We assume in the \(\ell \)th iteration, the active set is \(J(\ell )=\{(\alpha _{m}, j_{m}, k_{m}, l_{m}), m=1,2,\ldots ,t\}\). The solution matrix of problem (15a) subject only to the equality constraints indexed by the active set \(J(\ell )\) is \(\mathbf{A}(\ell )\), and the corresponding Lagrangian multiplier vector is \(\varvec{\lambda }(\ell )\).
To proceed, we first identify the most violated constraint among the infinite set of constraints in (12), or, (15) at the current solution matrix A \((\ell )\). By introducing the following notation:
the most violated constraint among the infinite set of constraints (15) with \((\alpha ,j,k,l)\in I_{1}\bigcup I_{2}\), if any, is chosen as the one indexed by \((\alpha _{u},j_{u},k_{u},l_{u})\) where
In the complex plane of \(\bar{{G}}(\omega _{1j},\omega _{2k})\equiv \bar{{g}}_{jk} (\mathbf{A}(\ell ))\), the most violated constraint is the one whose boundary is a tangent of the circle \({\vert }\bar{{G}}(\omega _{1j},\omega _{2k})-\bar{{d}}_{jk} {\vert }=\rho _{jk}\), the tangency point of which is the perpendicular projection of \(\bar{{G}}(\omega _{1j},\omega _{2k})\) on the circle along the radial direction with angle \(\alpha _{u}\) (see, e.g., Lai 2009).
Among the finite set of constraints (15) with \((\alpha ,j,k,l)\in I_{3}\), the most violated constraint, if any, is identified by the index quadruplet \((\alpha _{v},j_{v},k_{v},l_{v})\) with
Then, with Eqs. (16) and (17), the most violated constraint at the current iterative point \(\mathbf{A}(\ell )\) among all constraints in (12) can be determined by Step 2 of the matrix-based EPCLS-GI algorithm given later in this section.
Suppose now we are going to add the most violated constraint to the active set \(J(\ell )\) as the \((t+1)\)th active constraint to obtain the new active set \(J^{+}\). Denote by A \(^{+}\) the new solution matrix to problem (15a) subject to the equality constraints indexed by \(J^{+}\) and by \(\varvec{\lambda }^{+}\) the corresponding new multiplier vector. If we let
where the \([-\mathbf{r}^{H},1]^{H}\) is the step direction vector in the dual space, i.e., the direction from the old multiplier vector \([\varvec{\lambda }(\ell )^{H}, 0]^{H}\) to the new multiplier vector \(\varvec{\lambda }^{+}\), Z is the step direction matrix in the primal space, i.e., the direction from the old solution matrix \(\mathbf{A}(\ell )\) to the new solution matrix \(\mathbf{A}^{+}\), and \(w>0\) is a hypothetical common step length in the dual and primal spaces. We have the following theorem regarding the primal and dual step directions. The proof of the theorem is given in the “Appendix”.
Theorem 1
The vector r and matrix Z in the dual and primal step directions can be given by
where \(r_{m}\) represents the \(m\)th component of r, and
After the primal and dual step directions are determined, we may compute the maximum dual step length \(w_{1}\) and the minimum primal step length \(w_{2}\). Then we can update the active set \(J(\ell )\), solution matrix \(\mathbf{A}(\ell )\) and multiplier vector \(\varvec{\lambda }(\ell )\) using the primal and dual step directions and the primal and dual step lengths. The procedure details for determination of the step lengths and that for calculation of the active set, new solution matrix and new multiplier vector are described in Steps 4 and 5 of the following matrix-based EPCLS-GI algorithm for problem (15).
Step 1. Prepare the data matrices P, Q and D by (10), compute the solution to the unconstrained LS problem (15a) by
and initialize the algorithm by \(\mathbf{S}=[], \mathbf{A}(0)=\mathbf{A}_{0},\varvec{\lambda }(0)=[], t=0\), and \(\ell =0\).
Step 2. Identify the most violated constraint.
-
(a)
Compute \((\alpha _{u},j_{u},k_{u},l_{u})\) and \((\alpha _{v},j_{v},k_{v},l_{v})\) by (16), (17), and then let
$$\begin{aligned} E_{c}^{mv}&= \left| {\bar{{g}}_{j_u k_u } (\mathbf{A}(\ell ))-\bar{{d}}_{j_u k_u } } \right| -\rho _{j_u k_u } ,\end{aligned}$$(24a)$$\begin{aligned} E_{p}^{mv}&= \Gamma _{j_v k_v 3} (\alpha _v )g_{j_v k_v }^R (\mathbf{A}(\ell ))+\bar{{\Gamma }}_{j_v k_v 3} (\alpha _v )g_{j_v k_v }^{I} (\mathbf{A}(\ell )). \end{aligned}$$(24b) -
(b)
If \(E_{c}^{mv} \le \varepsilon _{1} \rho _{j_u k_u } \) and \(E_{p}^{mv} \le \varepsilon _{2} \) (where \(\varepsilon _{1}>0\) is a tolerance of the relative complex error, \(\varepsilon _{2}>0\) is a small positive number) which means no constraints are violated, then terminate the algorithm and \(\mathbf{A}(\ell )\) is the solution to problem (15).
-
(c)
If \(E_{p}^{mv} \ge E_{c}^{mv} \), choose the constraint indexed by \((\alpha _{v},j_{v},k_{v},l_{v})\) as the most violated one. Let \((\alpha _{t+1},j_{t+1},k_{t+1},l_{t+1})= (\alpha _{v},j_{v},k_{v},l_{v})\), and compute R \(_{t+1}\) and \(\xi _{m}\hbox {s}(m=1,2,\ldots ,t)\) by (22c) and (22b).
-
(d)
If \(E_{p}^{mv} <\,E_{c}^{mv} \), choose the constraint indexed by \((\alpha _{u},j_{u},k_{u},l_{u})\) as the most violated one. Let \((\alpha _{t+1},j_{t+1},k_{t+1},l_{t+1})= (\alpha _{u},j_{u},k_{u},l_{u})\), and compute R \(_{t+1}\) and \(\xi _{m}\hbox {s} (m=1,2,\ldots ,t)\) by (22c) and (22b).
Step 3. Determine the step directions. Let r=[] if \(t=0\); Or compute r by (20) otherwise. Compute Z by (21).
Step 4. Compute the step lengths.
-
(a)
Compute the maximum dual step length \(w_{1}\) within which the dual feasibility would not be violated. If \(\mathbf{r}\le 0\) or \(t\)=0, let \(w_{1}=\infty \); Otherwise, let
$$\begin{aligned} \bar{{m}}=\arg \mathop {\min }\limits _{{\{m=1,\ldots ,t|r_m >0\}}}\left\{ {\frac{\lambda _m (\ell )}{r_m }} \right\} \, \hbox {and}\, w_{1} =\frac{\lambda _{\bar{{m}}} (\ell )}{r_{\bar{{m}}} }, \end{aligned}$$(25)where \(\bar{{m}}\) is actually the subscript of the multiplier that would change sign earliest when the multiplier vector changes along the dual step direction.
-
(b)
Compute the minimum primal step length \(w_{2}\) with which the most violated constraint would become feasible. If \(\Vert \mathbf{Z}\Vert =0\), let \(w_{2}=\infty \); Otherwise, let
$$\begin{aligned} w_{2} =\frac{\Gamma _{j_{t+1} k_{t+1} l_{t+1} } (\alpha _{t+1} )g_{j_{t+1} k_{t+1} }^{R} \left( \mathbf{A}(\ell ) \right) +\bar{{\Gamma }}_{j_{t+1} k_{t+1} l_{t+1} } (\alpha _{t+1} )g_{j_{t+1} k_{t+1} }^{I} \left( \mathbf{A}(\ell ) \right) -\theta _{j_{t+1} k_{t+1} l_{t+1} } (\alpha _{t+1} )}{\Gamma _{j_{t+1} k_{t+1} l_{t+1} } (\alpha _{t+1} )g_{j_{t+1} k_{t+1} }^{R} \left( \mathbf{Z} \right) +\bar{{\Gamma }}_{j_{t+1} k_{t+1} l_{t+1} } (\alpha _{t+1} )g_{j_{t+1} k_{t+1} }^I \left( \mathbf{Z} \right) }. \end{aligned}$$(26) -
(c)
Let \(w=\hbox {min}(w_{1},w_{2})\).
Step 5. Update the active set, and compute the new solution matrix and new multiplier vector.
-
(a)
If \(w=\infty \), problem (15) is infeasible, terminate the algorithm.
-
(b)
If \(w=w_{1}\), delete the \(\bar{{m}}\)th element of \(\varvec{\xi }\), and the \(\bar{m}\) th column and \(\bar{{m}}\)th row of S; Update \(\mathbf{R}_{m}\)s by \(\mathbf{R}_{m} \leftarrow \mathbf{R}_{m+1}\) for \(m=\bar{{m}},\bar{{m}}+1,\ldots ,t\); Update the multiplier vector by firstly computing \(\varvec{\lambda }(\ell +1)=\varvec{\lambda }^{+}\) with (18) and then deleting its \(\bar{{m}}\)th element; If \(w_{2}<\infty \), update the solution matrix by \(\mathbf{A}(\ell +1)=\mathbf{A}^{+}\) with (19); Update the active constraints by \((\alpha _{m},j_{m},k_{m},l_{m})\leftarrow (\alpha _{m+1},j_{m+1},k_{m+1},l_{m+1})\) for \(m=\bar{{m}},\bar{{m}}+1,\ldots ,t\); Let \(t \leftarrow t-1, \ell \leftarrow \ell +1\), and go back to Step 3.
-
(c)
If \(w=w_{2}\), update the multiplier vector and solution matrix by \(\varvec{\lambda }(\ell +1)=\varvec{\lambda }^{+}\) and \(\mathbf{A}(\ell +1)=\mathbf{A}^{+}\) using (18) and (19); Let \(t \leftarrow t+1, \ell \leftarrow \ell +1\); Compute S by (22a) and go back to Step 2.
Remark 1
Since we use the perpendicular projection method to identify the most violated constraint and the GI primal–dual method to update the active set, solution matrix and multiplier vector, theoretically, without taking into account the numerical precision, the matrix-based EPCLS-GI algorithm has the same convergence properties, say, the same iteration number, as the vectorized CPCLS-GI algorithm in Lai (2009).
Remark 2
When the coefficient vector of a newly added (most violated) constraint obtained in Step 2 is linearly dependent on those of the constraints in the active set, it can be proved that \(\mathbf{R}_{t+1} =\sum _{m=1}^{t} {r_m \mathbf{R}_m } \), and thus Z = 0 from (21). In that case, the \(\bar{m}\) th constraint will be deleted from the active set until the direction matrix Z becomes nonzero. This ensures the non-singularity of matrix S.
Remark 3
Since the matrix S in each iterate is actually obtained either by adding to or by deleting from S in the previous iterate one column and one row, we can use the methods presented in Lemmas 1 and 2 of Hong et al. (2013) to update the inverse matrix \(\mathbf{S}^{-1}\).
3.2 Complexity analysis and comparison
The computational complexity of the matrix-based EPCLS-GI algorithm is dominated by Steps 2, 3, 4 and 5. We assume the frequency grid lengths are \(M_{1}=L_{1}N_{1}\) and \(M_{2}=L_{2}N_{2}\), where \(L_{1}\) and \(L_{2}\) are the grid density constants. Then in each iterate, the multiplication number in Step 2 is \(2M_{1}N_{1}N_{2}+4M_{1}M_{2}N_{2}+12M_{1}M_{2}+N_{1 }^{2}N_{2}+N_{1}N_{2}^{2}+2 {tN}_{1}N_{2}+8N_{1}N_{2}+4N_{2}t_{ }+2t+4N_{2}+3=[(2L_{1}+1)N_{1}+(4L_{1}L_{2}+1)N_{2}+2t+12L_{1}L_{2}+8]N_{1}N_{2}+4N_{2}t_{ }+2t+4N_{2}+3\), that in Step 3 is \(t^{2}\)+tN \(_{1}N_{2}\), that in Step 4 is \(4N_{1}N_{2}+8N_{2}+t\), and that in Step 5 is \(3N_{1}N_{2}+2t^{2}+3t+4N_{2}+3\) for adding a constraint and \(N_{1}N_{2}+t^{2}\) for deleting a constraint, respectively.
The number \(t\) of the Lagrangian multipliers varies with iteration. We assume problem (15), or equivalently, the EPCLS problem (9), is feasible. Then, the value of \(t\) changes from zero to some \(t_{max}\le N_{1}N_{2}\), where \(t_{max}\) depends on the tightness of the problem constraints. When \(t\) is very small, say, \(t \le \) max{\(N_{1},N_{2}\}\), the complexity of the matrix-based EPCLS-GI algorithm for one iterate is \(O\)(max{\(N_{1},N_{2}\}N_{1}N_{2})\). When \(t\approx N_{1}N_{2}\), the complexity for one iterate is \(O(N_{1}^{2}N_{2}^{2})\). Therefore, the complexity of the matrix-based EPCLS-GI algorithm for one iterate is between\( O\)(max{\(N_{1},N_{2}\}N_{1}N_{2})\) and \(O(N_{1}^{2}N_{2}^{2})\).
For comparison, the complexity of the vectorized CPCLS-GI algorithm (Lai 2009) for the EPCLS design problem in one iterate is between \(O(N_{1 }^{2}N_{2}^{2})\) when \(t \le \) max{\(N_{1}, N_{2}\)} and \(O(N_{1 }^{3}N_{2}^{3})\) when \(t\approx N_{1}N_{2}\). Since the matrix-based EPCLS-GI and vectorized CPCLS-GI algorithms consume the same number of iterations (Remark 1), the complexity of the matrix-based EPCLS-GI algorithm is smaller than the vectorized CPCLS-GI algorithm.
4 Design examples and comparisons
Two design examples are provided in this section. While Example 1 is mainly for the efficiency comparison between the matrix-based EPCLS-GI algorithm and the vectorized CPCLS-GI algorithm in Lai (2009) and the SDP method in Lu (2002), Example 2 is provided to show the better performance of the filter obtained by the EPCLS design than that by the CPCLS design. All algorithms are implemented in MATLAB 7.11.0.584 (R2010b). All designs are conducted on a personal computer with an Intel(R) Core(TM) i7-4510U CPU @ 2.00 GHz and an 8.0 GB memory. We pointed out here that minor changes have been made to the original SDP method in Lu (2002) with merely circular complex-error constraints since the design problem in this paper has not only elliptic-error constraints but also phase-error constraints. Minor changes has also been made to the CPCLS-GI algorithm to meet the elliptic-error constrains. Moreover, the SDP method is implemented in this paper using the SDPT3 (Tütüncü et al. 2003) in CVX (Grant and Boyd 2013). Without loss of generality, we assume the 2-D FIR filters are of square size, i.e., \(N_{1}=N_{2}=N\). The size of the frequency grid is taken as \(M_{1}=M_{2}= 8N\). The phase of the desired complex frequency response is defined by
where \(\tau _{1}\) and \(\tau _{2}\)are the desired group delays along the \(\omega _{1}\) and \(\omega _{2}\) directions.
Both of the matrix-based EPCLS-GI and vectorized CPCLS-GI algorithms use the same stopping conditions, i.e., they return feasible solutions when \(E_{c}^{mv} \le \varepsilon _{1} \rho _{i_u k_u } \) and \(E_{p}^{mv} \le \varepsilon _{2} \) with the same tolerance parameters \(\varepsilon _{1}=10^{-5}\) and \(\varepsilon _{2}=10^{-12}\).
Example 1
The first example considers the EPCLS design of circular lowpass filters with a passband \(\Omega _{p}=\{(\omega _{1}, \omega _{2})| \sqrt{\omega _{1}^{2} +\omega _{2}^{2} }\le \omega _{p}\)} and a stopband \(\Omega _{s}=\{(\omega _{1},\omega _{2}){\vert }\sqrt{\omega _{1}^{2} +\omega _{2}^{2} } \ge \omega _{s}, {\vert }\omega _{1}{\vert }\le \pi , {\vert }\omega _{2}{\vert }\le \pi \}\), where \(\omega _{p}=0.4 \pi \) and \(\omega _{s}=0.6\pi \). The desired group delays are \(\tau _{1}\) and \(\tau _{2 }\) and the desired magnitude response is described by
Such filters of size \(N \times N\) with \(N\) ranging from 9 to 31 have been designed using the matrix-based EPCLS-GI algorithm, the vectorized CPCLS-GI algorithm and the SDP method. Table 1 gives a comparison of the three methods in terms of the mean squared complex error (MSCE) of the filter and the CPU time and iteration number of the algorithm under the specified maximum magnitude error (MME) (i.e., \(\rho \)), maximum phase error MPE (i.e., \(\gamma \)), group delays \(\tau _{1}\) and \(\tau _{2}\), and the model parameter \(\tau \). It is seen from Table 1 that, under the same \(N,\rho ,\gamma , \tau _{1}, \tau _{2}\) and \(\sigma \), the matrix-based EPCLS-GI, vectorized CPCLS-GI and SDP methods obtain almost the same MSCE, but the matrix-based EPCLS-GI algorithm consumes much less CPU time than other two methods. For the designs with the same specifications, the matrix-based EPCLS-GI takes the same number of iterations as the vectorized CPCLS-GI. Figure 1 draws the magnitude response and passband phase error of the \(31\times 31\) circular filter with \(\rho =0.01, \gamma =0.002, \tau _{1}=\tau _{2}=13.5\) and \(\sigma =3\).
Filters with the same size \(N=21\) and group delays \(\tau _{1}=8\) and \(\tau _{2}=9\) but different \(\rho \hbox {s}\) and \(\gamma \hbox {s}\) have also been designed using the matrix-based EPCLS-GI and vectorized CPCLS-GI algorithms under \(\sigma =5\). Table 2 gives a comparison of the design results. It is seen that the matrix-based EPCLS-GI is much more efficient than the vectorized CPCLS-GI in all designs.
Example 2
The second example considers the design of fan filters with a passband \(\Omega _{p}=\{(\omega _{1},\omega _{2}){\vert }0\le \omega _{1 }\le \omega _{2} \tan \chi , 0\le \omega _{2}\le \pi \}\) and a stopband \(\Omega _{s}=\{(\omega _{1},\omega _{2}){\vert }\phi \le \omega _{1}\le \pi , 0\le \omega _{2}\le (\omega _{1}-\phi )\tan \chi \}\), where \(\chi =\pi /6\), and \(\phi =0.1\pi \) is a positive number used to control the width of transition band. The desired group delays are \(\tau _{1}\) and \(\tau _{2 }\)and the desired magnitude response is taken as
Several such fan filters of size \(25\times 25\) with the same \(\gamma , \rho , \tau _{1}\) and \(\tau _{2 }\) have been designed using the EPCLS and CPCLS criterions. Table 3 gives the results for the CPCLS design and EPCLS designs with various \(\sigma \hbox {s}\), where the CPCLS design is actually the EPCLS design under \(\sigma = 1\). Results show that the MSCEs of the resultant EPCLS filters, decreasing with \(\sigma \), are all smaller than that of the CPCLS filter. That is to say, the EPCLS designs obtain better filters than the CPCLS design. It is interesting that the iteration number and CPU time of the matrix-based EPCLS algorithm also decrease with \(\sigma \). This is because the domain of the elliptic-error and phase-error constraints becomes larger and thus the constraints become easier to meet when \(\sigma \)gets larger. Figure 2 draws the magnitude response and passband phase error of the \(25\times 25\) fan filter with \(\rho =0.051,\gamma =0.03, \tau _{1}=\tau _{2}=11\) and \(\sigma =5\)
.
We also design several such fan filters of size \(25\times 25\) with minimal MME using a combination of the sequential CLS (SCLS) method (see, e.g., Hong et al. 2013)) and the matrix-based EPCLS-GI algorithm with various \(\sigma \hbox {s}\). Table 4 shows the design results. Under the same MPE, the minimal MME decreases with \(\sigma \), with a sacrifice of possible increase in MSCE. This implies that an EPCLS design may obtain filters with smaller MME than a CPCLS design.
5 Conclusions
A matrix-based GI algorithm has been developed for the elliptic-error and phase-error constrained least-squares design of 2-D FIR filters with arbitrarily specified frequency responses. The developed matrix-based EPCLS-GI algorithm is a matrix-based extension of the vectorized CPCLS-GI algorithm in Lai (2009) but has a lower computational complexity than it. Design examples and comparisons demonstrate that the matrix-based EPCLS algorithm consumes much less CPU time than the vectorized CPCLS-GI algorithm and the SDP method, and the EPCLS design may obtain better filters in terms of smaller MSCE and/or MME than the CPCLS design.
6 Appendix
Proof of Theorem 1
Using the Lagrangian method, we can obtain the following equations for the multiplier vector \(\varvec{\lambda }(\ell )\) and the solution matrix \(\mathbf{A}(\ell )\) of problem (15a) subject to the equality constraints indexed by the active set \(J(\ell )\),
where \(\lambda _{m}(\ell )\) is the \(m\)th multiplier in \(\varvec{\lambda }(\ell )\), S and \(\mathbf{R}_n \) are defined in (22a) and (22c), and \(\mathbf{b}=[b_{m} ]_{t\times 1} \) with
If the \((t+1)\)th equality constraint is added into the active set, the matrix S and vector b become respectively into
where \(\xi \) is defined in (22b), \(b_{t+1} \) and \(\xi _{t+1} \) are defined by (31) and (22b) for \(m=t+1\). Then, by (30) and from (18), (19) and (32), we have
where \(\lambda ^{+}_{m}\) is the \(m\)th element of \(\varvec{\lambda }^{+}\). Equations (20) and (21) immediately follow from (18), (19) and (33).\(\square \)
References
Ahmad, M. O., & Wang, J. D. (1989). An analytical least square solution to the design problem of two-dimensional FIR filters with quadrantally symmetric and antisymmetric frequency response. IEEE Transactions on Circuits and Systems, 36(7), 968–979.
Algazi, V. R., SUK, M., & Rim, C.-S. (1986). Design of almost minimax FIR filters in one and two dimensions by WLS techniques. IEEE Transactions on Circuits and Systems, CAS–33(6), 590–596.
Aravena, J. L., & Gu, G. (1996). Weighted least mean square design of 2-D FIR digital filters: The general case. IEEE Transactions on Signal Processing, 44(10), 2568–2578.
Chottera, A. T., & Jullien, G. A. (1982). Design of two-dimensional recursive digital filters using linear programming. IEEE Transactions on Circuits and Systems, CAS–29(12), 817–826.
Dam, H. H., Nordholm, S., & Cantoni, A. (2005). Uniform FIR filterbank optimization with group delay specifications. IEEE Transactions on Signal Processing, 53(11), 4249–4260.
de Haan, J. M., Grbic, N., Claesson, I., & Nordholm, S. (2003). Filterbank design for subband adaptive microphone arrays. IEEE Transactions on Speech Audio Process, 11(1), 14–23.
Deng, T. B., & Lu, W.-S. (2000). Weighted least-squares method for designing variable fractional delay 2-D FIR digital filters. IEEE Transactions on Circuits and Systems - II, 47(2), 114–124.
Dumitrescu, B. (2005). Optimization of two-dimensional IIR filters with nonseparable and separable denominator. IEEE Transactions on Signal Processing, 53(5), 1768–1777.
Dumitrescu, B. (2006). Trigonometric polynomials positive on frequency domains and applications to 2-D FIR filter design. IEEE Transactions on Signal Processing, 54(11), 4282–4292.
Gislason, E., Johansen, M., Ersboll, B. K., & Jacobsen, S. K. (1993). Three different criteria for the design of two-dimensional zero phase FIR digital filters. IEEE Transactions on Signal Processing, 41(10), 3070–3074.
Goldfarb, D., & Idnani, A. (1983). A numerically stable dual method for solving strictly convex quadratic programs. Mathematical Programming, 27, 1–33.
Grant, M., & Boyd, S. (2013). CVX: Matlab software for disciplined convex programming, version 2.0 beta. http://cvxr.com/cvx
Gu, G., & Aravena, J. L. (1994). Weighted least mean square design of 2-D FIR digital filters. IEEE Transactions on Signal Processing, 42(11), 3178–3187.
Hong, X. Y., Lai, X. P., & Zhao, R. J. (2013). Matrix-based algorithms for constrained least-squares and minimax designs of 2-D linear-phase FIR filters. IEEE Transactions on Signal Processing, 61(14), 3620–3631.
Laakso, T. I., Valimaki, V., Karjalainen, M., & Laine, U. K. (1996). Splitting the unit delay: Tools for fractional delay filter design. IEEE Signal Processing Magazine, 13, 30–60.
Lai, X. P. (2009). Optimal design of nonlinear-phase FIR filters with prescribed phase error. IEEE Transactions on Signal Processing, 57, 3399–3410.
Lai, X. P., Wang, J. Z., & Xu, Z. (2009). A new minimax design of two-dimensional FIR filters with reduced group delay. In Proceedings on 7th Asian control conference (pp. 610–614).
Lang, M. C., Selesnick, I. W., & Burrus, C. S. (1996). Constrained least squares design of 2-D FIR filters. IEEE Transactions on Signal Processing, 44(5), 1234–1241.
Lu, W. S. (2002). A unified approach for the design of 2-D digital filters via semidefinite programming. IEEE Transactions on Circuits and Systems - I, 49(6), 814–826.
Lu, W. S., & Hinamoto, T. (2006). A second-order cone programming approach for minimax design of 2-D FIR filters with low group delay. In Proceedings IEEE international symposium on circuits and systems (pp. 2521–2524).
Lu, W. S., & Hinamoto, T. (2011). Two-dimensional digital filters with sparse coefficients. Multidimensional Systems and Signal Processing, 22(1–3), 173–189.
Lu, W. S., Pei, S. C., & Tseng, C. C. (1998). A weighted least-squares method for the design of stable 1-D and 2-D IIR digital filters. IEEE Transactions on Signal Processing, 46(1), 1–10.
Rusu, C., & Dumitrescu, B. (2012). Iterative reweighted l1 design of sparse FIR filters. Signal Processing, 92(4), 905–911.
Shyu, J. J., Pei, S. C., & Huang, Y. D. (2009). Two-dimensional Farrow structure and the design of variable fractional delay 2-D FIR digital filters. IEEE Transactions on Circuits and Systems - I, 56(2), 395–404.
Tütüncü, R. H., Toh, K. C., & Todd, M. J. (2003). Solving semidefinite–quadratic–linear programs using SDPT3. Mathematical Programming, Series B, 95, 189–217.
Yan, H., & Ikehara, M. (1999). Two-dimensional perfect reconstruction FIR filter banks with triangular supports. IEEE Transactions on Signal Processing, 47(4), 1003–1009.
Zhao, R. J., & Lai, X. P. (2011). A fast matrix iterative technique for the WLS design of 2-D quadrantally symmetic FIR filters. Multidimensional Systems and Signal Processing, 22(4), 303–317.
Zhao, R. J., & Lai, X. P. (2013). Efficient 2-D based algorithms for WLS design of 2-D FIR filters with arbitrary weighting functions. Multi-dimensional Systems and Signal Processing, 24(3), 417–434.
Zhu, W. P., Ahmad, M. O., & Swamy, M. N. S. (1997). A closed-form solution to the least-square design problem of 2-D linear-phase FIR filters. IEEE Transactions on Circuits Systems - II, 44(12), 1032–1039.
Zhu, W. P., Ahmad, M. O., & Swamy, M. N. S. (1999). A least-squares design approach for 2-D FIR filters with arbitrary frequency response. IEEE Transactions Circuits and Systems - II, 46(8), 1027–1034.
Acknowledgments
This work was supported in part by the National Nature Science Foundation of China under Grants 61175001, 61333009 and 61304142, and in part by the National Basic Research Program of China under Grant 2012CB821200.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Hong, X., Lai, X. & Zhao, R. A fast design algorithm for elliptic-error and phase-error constrained LS 2-D FIR filters. Multidim Syst Sign Process 27, 477–491 (2016). https://doi.org/10.1007/s11045-014-0312-5
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11045-014-0312-5