TRANSACTIONS
ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, VOL. ASSP30, NO. 1 , FEBRUARY 1982
1
SequentiaI’Convolution Techniques for
Image Filtering
JEANFRANCOIS ABRAMATIC, MEMBER, IEEE, AND OLIVER D. FAUGERAS, MEMBER, IEEE
AhtractSequentially convolving images with small size operators is
a promising idea for performing image filtering. Various classes of twocan be impledimensionalfiniteimpulseresponse(FIR)filtersthat
mented with such techniques are studied.
Design procedures are presented for each of the classes. They are based upon minimizing L2 and
Lmcriteria. Results are assessed in an image processing context.
INTRODUCTION
HEN digital image processing became a viable area of
research in the early sixties, a lot of effort was directed
towards image restoration, image coding, and feature extraction (mainly edge detection). A basic tool in this context has
alwaysbeen image filtering. Theimplementation of twodimensional(2D)filters
using generalpurposecomputers was
firstinvestigated.Fouriertechniques
using the fastFourier
transform algorithm were adapted to the 2D case. Problems
related to image transposition and overlapsave techniques were
studied (see Ekstrom and Mitra [ 11). Recursive filters have
great potentiality in computational savings, thus a great amount
of work was done to solve problems related to the 2D structure of 2D recursive filters (see Huang [2], Abramatic et al.
[3]). Recent developments in hardware technology suggest a
study of 2D filters that can be adapted to realtime image convolution. More precisely, modern
image display systems (see
Pratt[4])
are able to performccsmall” size convolutions
at TV rates. Herewe study various classes of 2D finite impulse response (FIR) filters that have “large” size impulse responses but can be implemented by sequentially using “small”
size operators. Mecklenbraiiker and Mersereau [ 5 ] first studied
the implementation of 2D finite impulse response (FLR) filters designed by means of the McClellan transformation. They
showed howonecouldimplementthesefilters
by using sequentialconvolutiontechniques.Startingfromimplementation rather than design issues, we will define various classes of
2D FIR filters that will be larger than the classes of FIR filters designed by the generalized McClellan transformation. We
will propose design algorithms for these classes of filters based
upon the minimization of L 2 and 1;“criteria. We will assess
implementation schemes of these frlters in animage processing
context.
W
1. h ,K FILTERS:DEFINITIONS
AND PROPERTIES
The SGK Concept
Implementation schemes for ID FIR f$ rers have been widely
investigated (OppenheimSchafer [ 6 ] ) , 3abinerGold[7]).
When fixedpointarithmetic is used, tl , m a d e structure is
recommended as it allows tuning of the ,.‘:plementation, prevents overflow errors, and minimizes roundoff errors. IfH(z)
denotes &keztransformofthe real taluedimpulseresponse
h(k) of ! .D filter
c1
Q,
H(z) =
2
h(k) Zk
1
(11)
k=Q,
then H(z) can be decomposed as
H(z) =
n
Q
Pi(Z)
(12)
i= 1
where
Pi@) = a!,zl
t a; t afz.
(13)
This result comes from the fact that a polynomial of degree
n with real coefficients can be decomposed into a product of n
polynomials with real or complex conjugate coefficients. Gathering conjugate complex coefficients
and pairs of real coefficients leads to (12). The cascade implementation of ID FIR
filters can then be described as in Fig. 1
When fixedpoint arithmetic is used, one can take advantage
of this implementation scheme. Carefully ordering
the Pi(z)
can reduce the overall roundoff error. Scaling the Pi(z) while
preserving the overall gain may avoid overflow errors. Finally,
we want to emphasize that the number of arithmetic
operations required is 3Q, while the direct implementation requires
2 Q t 1 operations. The use of such a schemewill thus be interesting when fixedpoint arithmetic implementation is enforced.
Another reason for using the cascade structure may be that the
scheduling of the implementation allows one to perform, say,
three operations at a time rather than 2Q t 1.
In the 2D case, the problem is quite different. The decomposition of (12) is not available in general for 2D ztransform
H(z, ,zz). This is related to the fact that 2D polynomials of
degree n have, in general, an infinite noncountable number of
Manuscript received October 29, 1980;
revised June 22, 1981.
J.F. Abramatic is withtheInstitutNationaldeRecherche,en
In zeros. We are thus led t o consider the 2D FIR filters whose
formatique et en Automatique, Domaine
deVoluceauRocquencourt,
transferfunctionsaredecomposable.
We thus define various
B.P. 105, 78150 Le Chesnay, France.
0. D. Faugeras is with the University of Paris South, and the Institut
National de Recherche en Informatique et en Automatique, Domaine
de VoluceauRocquencourt, B.P. 105, 78150 Le Chesnay,France.
’
We will suppose that Ql = Q2 = Q in the following to simplify notations.
00963518/82/02000001$00.75 01982 IEEE
IEEE TRANSACTIONS ON ACOUSTICS, SPEECH, AND SIGNAL
PROCESSING,
2
INPUT
VOL. ASSP30, NO. 1, FEBRUARY 1982
INPUT
O(ITPVT
I
t
I
t
Fig. 1. Cascade implementation of a 1D FIR filter.
+=*p
OUTPUT
INPUT
__
 

4

Fig. 4. Implementation of general SGK filters.
Fig. 2. Cascade implementation of a 2D basic SGK filter,
INPVT
+:=+j
__
Fig. 3. Implementationofan
I
Fig. 5. Basic SGK filter memory handling.
OUTPUT
~
~
~
SGK filterderived
transformation.
~
.
.
from a McClellan
classes of 2D FIR filters that we call “small” generating kernels (SGK) filters. Referring to (I2), the first class called basic
SGK filters is defined as follows.
A 2D FIR filter belongs to the class of basic SGK filters if
its transfer function can be writtenas
Fig. 6 . General SGK filter memory handling direct form.
They require Q(2P f 1)’ t Q operations per output sample for
implementation.
where
The implementation can be described by the block diagram of
Fig. 2.
(2PQ t
arithmetic
operations
per
output
sample are
needed to implement such filters using the direct implementation whereas
sequential
a
implementation
will require
Q(2P t l)z of them. The interesting feature here is that what
onelosesingenerality’may
besomewhatcompensatedfor
by appealingimplementationproperties.Furthermore,one
can define various classes of SGK filters that will have compari.de implementation schemes, but will be different as far
as approximation procedure is concerned.
Aside from the basic SGK filters we already introduced, we
study two other classes of SGK filters.
SGK filters derived from McClellan transformations: The
firstone was introduced by Mecklenbrauker and Mersereau
[SI. It appears to 6e the class of 2D FIR filters generated by
McClellan transformations. Implementation of such filters
is
described in Fig. 3.
Their transfer functions are given by
where
General SGK Filters
The second class we study includes the TWO previous ones.
Its filters use different kernels and produce the output as a linearcombination of theintermediate results. Fig. 4 showsa
block diagram of this implementation.
It is easy to see that this class includes the two other ones.
Filters of this type alsorequireQ(2P f
f Q arithmetic operations for implementation.
Implementation Issues
Aside from thenumberofoperations
involved, sequential
convolution techniques need to be assessed in terms of storage
requirements. Thinking of an image display terminal, memory
storage is the most costly part of the device. Thus, special care
has to be devoted to this feature. We will assume that the input image has to be preserved. Oftentimes the user will like to
choose the 2D filter interactively and will thus need the input
image to perform various tries. Memory requirements for the
basic SGK implementation are described in Fig. 5.
IM and OM denote the input and output memory storages.
S1 symbolizes the initialization step where IM is fed into OM.
S 2 symbolizes the Q iterations. The general SGK filter has a
more complex structure described by Fig. 6.
The scratch memory SM is needed to store intermediate results. S1 and S 2 drive the initialization while S3 and S4 controlthe schedulingofoperations.
The useof thisscratch
memory can be avoided by transforming the implementation
into the socalled transposed form (Fig. 7).
One is thus led to the memory handling situation described
in Fig. 8.
FAUGERAS: SEQUENTIAL CONVOLUTION TECHNIQUES
AND ABRAMATIC
3
WrPUT
Fig. 7. Transposed form implementation.
t
h
i
&=+ I
Fig. 8. General SGK filter memory handling transposed form.
It thusappears that the transposedimplementationwhich
was rejectedbyMecklenbrauker
. and Mersereau [SI and
McClellan and Chan [8] for fixedpoint implementation issues,
has a veryimportant feature regarding memory requirements.
11. DESIGNOF SGK FILTERS DERIVED FROM
Comparing (113) and (16) indicates that 2D FIR filters derived by McClellan transformations have the sequentialconvolution property (for more details see [5]). The use of such
transformationsleadstoefficient
design algorithmsfor2D
FIR filtersespeciallyinthe
case where the “shape” of the
transferfunctions is nottoo complicated. As anexample,
circular symmetric filters will use a transformation where
P=1
 t(0, 0) = t(0, 1) = t(1,O)
= t(1, I > =
3.
The design of ‘such filters only requiresdesigning the 1D filter defining the ‘‘radial’’ characteristics of the 2D filter. When
the “shape”gets more complicated, optimization algorithms
are needed to determine t(m, n), and the design procedure becomes more tedious. More details are given in Mersereau et d .
[ l o ] . Ourapproach is somewhatdifferent. We start from a
prototypeand
use approximationtechniques
to findthe
member of the class of SGK filters which minimizes an error
criterion.
MCCLELLAN TRANSFORMATIONS
McClellan transformations are used to design 2D zerophase Approximation Techniques for SGK Filters Design
FIR filters from 1D zerophase, FIR filters. The basic idea is
Our approach to designing SGK filters consists in solving the
to define a transformation of the 1D frequency domain into
following approximation problem,
the 2D frequency domain. If h(n) and H ( e J W )denote the imGiven P and (2,two integers defining the “order” of the SGK
pulse response and the transfer function of a zerophase 1D
filter H ( z , , z 2 ) , thetransferfunction
of aprototype filter
filter, respectively, they are related by
whose impulse response is of size (2PQ t 1) X (2PQ + l), find
Q
H(eiw) = h(0) t
2h(k) cos ok.
(111 1
k= 1
Using the Moivre formula, this can be rewritten as
such that
The generalized McClellan transformation is defined as
P
P
cos o =
t(m,n)
cos m o l cos n o 2.’
m = o n=o
2D FIR filters obtained through this transformation are thus
defined by
and
P(z1 ,z 2 ) =
+P +P
piiz;iz;j.
(116)
PP
This can be rewritten as
2Mersereau [ 9 ] recently proposed another transformation that leads
to any 2D zerophase FIR filter.
This results in a welldefined approximation
problem once
the norm of(114) is chosen.
We will present three algorithms. The first is based upon the
choice of L 2 norm.The
twoothersarerelated
to the L“
norm, one of themis suboptimum.
L2 NormThe choice of an L 2 norm leads to the following
criterion.
IEEE TRANSACTIONS
ON
ACOUSTICS,
SPEECH,
4
AND SIGNAL PROCESSING,
VOL.
ASSP30, NO. 1, FEBRUARY 1982
The problem reduces to finding the { p i i } . This will be done
We shall now proceed to
where W(zl, z 2 ) is a real positive weighting function, and rl by means of a gradient algorithm.
calculate
the
gradient
of
the
criterion
with respectto pij.
and rz are the unit circles of the z 1 andz, planes, respectively.
Discretization of the Problem
After choosing N 2 samples (N 2 2PQ t 1) on the unitcircles
rl and we get a discretized version of the problem where
the criterion becomes
Gradient of the Criterion
Differentiating (I11 1) gives
I?,
m=o n=o
where H(m, n ) and A(m, n) are the DFT's of the prototype
and the synthesized impulseresponses, respectively,
(I11 3)
As hk is chosen to be optimum, the third termvanishes.
Since P(m, n)i s the DFT of pii, we easily get
with
Since the criterion is quadratic in the variables { h k } , they
can be obtained from the prototype and a set of given {pii} by
solving a linear system. The problem can then be reduced to
finding the { pij}. We now restate the criterion in matrix form.
[
a€
apR ( m> n )
H ( N  1 , N  1)
. PQ(0,O)
* *
?=
(1110)
Jc is an N 2 dimensional column vector, ? is an N 2 X Q matrix.
We will also need
and
1,N 1))
a Q t 1 dimensional vector and an N 2 X N 2 diagonal matrix.
The criterion can then be writtenas
5
E=(%H)~@(~AH)
(I11 1 )
and A*(H,Y), the optimum value of A for given H and 9 is
be a reduced notation for F(e(2inmiN), e(2inn'N)
W M denotes as usual e(2niiN).
,j.
x denotes the conjugate of the complex
number
11
h:Pk(m, n)  H(m, n) W(m, n)
(I11 5)
= Re {e(m, n)}
ae
= 1m {e(m, n)}.
apz ( m n )
(1116)
9
Combining (II13), (II14), and (1116) we obtain
P ( N  1 , N  l ) * . * P Q ( N 1 , N 
@=diag{W(O,O);..,W(N
k h : P k  ' ( m , n>
x
 {?
"1 i
3 F(m, n ) will
Defining
e ( m ,n ) = 2
Matrix Formulation
Stacking H(m, n), P(m, hk
n),in columns we define
P(0,O)
(1114)
x.
a€
  DFT' {e(m, n)}.
aPii
(1117)
Gradient Algorithm
At each iteration,we need to calculate (ae/apii),that is
1) calculate P(m, n). We will not use an FFT algorithm because { pii} is a "small" kernel.
2) Calculate A* using (1112).
3) Calculate e(m, n).
4) Calculate (&lapii). Again we will not use an FFT algorithm.
L m NormIn the 1D case, the L" norm is often used in filter design. The approximation problem is then refered to as a
Chebyshevapproximationproblem.Experimentspresented
1s
6PR(m,n ) and Pz(rn, n ) are the real and imaginary parts of P(m, n ) ,
respectively.
5
ABRAMATIC AND FAUGERAS: SEQUENTIAL ,CONVOLUTION TECHNIQUES
later will also prove the practical interest of this choice.
We
{ A t ) ; k = 0, Q.
present here two Chebyshev design procedures. The first one
{pij};  P < i < t P ;
P<j<+P
is related only to the choice of the { h k } , the approximation is
called a linear Chebyshev approximation. Specific algorithms
such that (1117) and (1118) hold.
are available for this case. We shall use a Remestype algorithm
We can use general techniques to solve nondifferentiable opfollowing the approach described in Kamp and Thiran
[l 11 timization problems (see Lemarechal [12]).
for the design of 2D FIR circular symmetric filters. The secThese techniques somewhat generalize gradienttypemethods
ond approach is general and uses nondifferentiable optimizato problems for which gradients may
not always be defined.
tion algorithms.
In our case, the algorithm runs as follows.
At iteration r, let us call A[, d$ the values of the unknowns.
Suboptimal Chebyshev Design
For these values, one looks at the point(s) (m*,n*) in the freThe discretized problem can be stated as follows.
quency domain where the maximum of the E(m, n) is reached.
Given
(Notice that there may be several such points.) We then calculate (aE(m*, n*)/ah,) and (aE(m*,n* >lap,) for this (or
H(m, n ) the DFT of the prototype impulse response;
P(m, n ) the DFT of the “small” generating kernel of size these) particular (m*, n * ) and call them “subgradients.” The
descent algorithm consists here in choosing new values hi+
2 P t 1;and
pG+
based upon thesesubgradients.
Q the number of sequential convolutions.
Finally,one
sees that we need to be able to calculate
Find
(aE(m*,n* )/ah,), (aE(nz*,n*)/apij)for a fixed chosen point
’,
{hk};
k = 0,
such that
e, = max W(m,n) E(m, n)
(1117)
m,n
is minimum, where
a m , n ) = p(m, n )  H(m, n)J
Q
A(m, n) = 1 hkpk(m,n).
(1119)
(I11 8)
where
k=0
W(m,n) is again a real positive weighting function.
This problem is solved by means of a oneforone exchange
algorithm that goes as follows.
1) Choose a socalled reference R that is a subset of Q t 2
points of the N X N frequency grid.
2) Solve the Chebyshev approximation for R , thus obtaining
a set of coefficients {X:}; k = 0, . . , Q.
3) Use the {A:}
toevaluatethemaximumerror
andthe
point where it is reached on the whole N X N grid.
4) If this point belongs to the reference, then the optimum
is reached or else exchange it with a point of the reference and
go back to 2).
Solving the Chebyshev approximation for R requires the solution of two linear systems. This is the most computationally
expensive part of the algorithm. In our case one of those linear systems is a Vandermonde system. Thus it can be solved
by means of the Cramer formulas [see Appendix 1121. This
speeds up considerably the exchange algorithm.
Optimal Chebyshev Design
We can try to adjust the whole set of parameters that is the
{hk}’~
and { p ~ } ’ by
s using an L“ criterion.
Given
H(m, n ) the DFT of the prototype impulse response.
P, Q two integers giving the “order” of SGK filter.
Find
(1120)
(1121)
Q
. k = O kXiP,!’(m, n ) W, ( m i + n i )
i.
(1122)
These formulas allow us to set up the optimization algorithm.
111. DESIGNO F GENERALSGK FILTERS
Design Problem
Designing a general SGK filter consists of solving the following discretized approximation problem.
Given
H(m, nj, the transfer function of the prototype filter,
P, Q two integers defining the “order” of the SGK filter.
Find
{pp’};
1<k<Q
P<i<tP;
P<j<tP
(X’s have been “included” in p$’s)
IEEE TRANSACTIONS ON ACOUSTICS, SPEECH, AND SIGNAL
PROCESSING,
6
H(m, n) A(m, n ) = G(k)(m,n )
such that
f
VOL. ASSP30, NO. 1 , FEBRUARY 1982
= / / A ( m n, )  W m ,
411
(I11 1)
is minimum, where
(1112)
(1116)
with
G(k)(m,n ) = H(m, n )  L(k)(m,n )
and
+P
p q m , n) =
+P
(1117)
p;;)W$"+in).
i=p j=P
Again, we solve this approximation problem with L 2 and L"
norms.
From (1116) it is then easy to derive
Block Relaxation Method
In both cases, we use an iterative procedure to solve the approximationproblem.Eachiteration
is decomposedinto Q
steps. At each step we fix Q  1 kernels and minimize criterion (1111) with respect to the Qthremaining kernel.
More precisely the iterative algorithm is described as follows.
1) Choose initial conditions p!;);  P < i,j G t P , k = 1, * ,

Q.
2 ) k + 1.
3) For L 2 criterion, solve a linear system in (2Q t 1)2 unknown variables p $ ) ;  P < i , j < tP.
For L" criterion, solve alinearChebyshev approximation
problem in thesame unknowns.
4) k k t 1. If k < Q, then go to 3) otherwise.
5) If optimum, then stop. Otherwise, go to 2.
Clearly step 3) is the key step of this approach. More details
are required at this point.
f
L' Criterion
Let
x
*
*
x P(S)(m, n )
(1119)
where
e(k)(m,n ) = E(k)(m,n) ~ ( ~ ) n( )m ,
IK(k)(m,n)/ZP(k)(m,n )
(I111 0 )
and W(m,n ) is a positive weighting function.
These expressions, although formally complicated, are quite
easy to compute numerically by FFT algorithms. The linear
system to be solved is obtained by setting ( a e 2 / a p $ ) ) = 0 for
 P < s, t < t P. Notice that we do not make any hypothesis
onthesymmetries of p,':'.
In particular we do not require
pj;) = p l y  t. which implies that the P@)(m,n ) are real numbers. This technique works for complex prototypes H(m, n).
Criterion
As for the Chebyshev approximation, we again used nondifferentiable optimization techniques that
allowus to approximate complex prototypes and do not suffer from degeneracies
that causenumericaldifficulties
as exchangealgorithmsdo.
Again,wehave
to compute (aE(m,n)/ap$) to provide the
optimization algorithmwiththe
"subgradients"of ournondifferentiable function. We get
L
(1113)
and
L (k)(m,n ) =
k1
2 P(')(m, n ) x . . . x P(Y)(m,n )
Y=l
with
L q m , n ) = ql
K(*)(m,n) = 1 t
Q
P(')(m, n) X . . . X P("(m, n). (1114)
V=2
We thus have
A ( m , n ) = L(k)(m,n ) t P(k)(m,n ) K(k)(m,n )
for
and, also
k = 1, . . . , Q (1115)
IV. EXPERIMENTAL
RESULTS
Our basicaim when dealing withsuchtechniques was to
assess the possibilities of performing large convolution in an
image display terminal. The experiments we present now are
thus in the image processing area.
We first approximate a lowpass filter whose transfer function is shown in Fig. 9. It was approximated with an SGK filter belonging to the McClellan class. The size of the kernel is
3 X 3 and 12 of them are used. The meansquare error
is 4.5
percent.
ABRAMATIC AND FAUGERAS: SEQUENTIAL CONVOLUTION TECHNIQUES
PROTOTYPE
FILTER
PROTOTYPE
FILTER
Lab
SYNTHESIZED
3 x
3
a=
12
FILTER
KERNEL
d = 4.5 %
Fig. 9. Lowpass example: transfer function.
SGK
FILTER
SGK
3 x 3 ‘{ERNEL
FILTER
a=5
(Chebyshev)
Fig. 11. Bandpass example: transfer function.
sents crosssections of the transfer functions showing the poor
results of the L procedure in the lowfrequency domain.
Fig. 13 shows the original image (a) and the three outputs
associated with the transfer functions of the Fig. 11. The eye
cannot see the difference between the prototype (b) and the
‘ 4 m
~ o
outputs (d) but the “L2’’ output (c) looks different in
the high contrasty areas. This illustrates the influence of the
choice of the criterion.
The third example deals with a deconvolution problem. The
original
image has been blurred by a Gaussian blur. A decon(4
(dl
Fig. 10. Lowpass example: images. (a) Original image. (b) Filtered by volution filter is derived using the power spectrum equalizaprototype. (c) Filtered by the SGK filter. (d) Difference.
tiontechnique (see Cannon [13]). Thetransfer functionof
the fiiter is shown in Fig. 14. In this case we used general SGK
We then filtered a test image which is an aerial view. It was filters (with different kernels). This transfer function obtained
chosen because it presents a variety of situations:small details, from the L procedure is also shown in Fig. 14. Fig. 15 shows
high contrasts, large textured field. Fig. 10 shows the input the blurred image, the three outputs of the deconvolution filimage (a), the images filtered by the prototype fiiter (b), and
ters. In this case the “L2 ” output looks much better than the
the SGK filter (c). Finally, as the eye is not too clever about “L ” one.
seeing differences between blurred images, we present the abV. CONCLUSION
solutedifferencebetweenthetwooutput
images scaled by
a factor of 100 (d). As expected, differences occur close to
New developmentsinintegratedcircuitstechnology
have
edges, but they aresmall (on the order of 1 percent).
provided new potentialities in the area of image display sysThe second example deals with a bandpass filter. We check tems. The new generation of such
devices is able to do basic
here the influence of the criterion. Poorer results are picked
operations on a 5 12 X 5 12 image within
of a second. This
so thattheeyecould
perceive differencesbetween images. delay is the time allowed between two images on the screen.
This means that a small number of kernels are used and thus Any operation done at that
rate provides itsresults“immethat the implementation would be cheap. Fig. 11 shows trans diately,” which means that the observer will not see any tranfer functions of the prototype filter and
SGK fiter of the sitioneffectsand
will just feel that the operation has been
McClellan class chosen using L 2 and L“ criteria. Fig. 12 pre done in “real time.” Among such basic operations, thanks to
O0
&
IEEE TRANSACTIONS ON ACOUSTICS. SPEECH,
AND
SIGNAL
8
PROCESSING, VOL. ASSP30, NO. 1 , FEBRUARY 1982
GAUSSIAN
(Atmospheric
BLUR
Turbulence)
PROTOTYPE
FILTER
PROTOTYPE
S
GK
FILTER
(mse
FILTER
approximation)
S G K FILTER
P,I
a=7
Fig. 14. Deconvolution example: transfer functions.
SG K
FILTER
(Chebyshev
approximation)
Fig. 12. Bandpass example: cross sections.
(C)
(d)
Fig. 15. Deconvolutionexamples: images. (a)Original image. (b) Filtered by the prototype. (c) Filtered by
the L z SGK filter. (d) Filtered by the L“ SGK filter.
Fig. 13. Bandpass example: images. (a) Original image.
(b) Filtered t J
the prototype. (c) Filtered by L 2 SGK filter. (d) Filtered by the L”
SGK filter.
5.
very fast multipliers, one can use 3 X 3 convolutions. Furthermore. the results displayed on the screen can be “frozen” in
another memory. This provides the way of sequentially using
basic operations. The next question is, how to cascade various
basic operations t o perform “nonbasic” operations. Our paper
provides an answer to this question. A variety of procedures
are described that design sequences Of basic x Operations
whose resultsapproximatethose
of a prototype nonbasic
operation.
Our approach needs to be compared to the one proposed by
Pratt 141. He decomposes theprototype FIR filter into a
9
ABRAMATIC AND FAUGERAS: SEQUENTIAL CONVOLUTION TECHNIQUES
x
__.
sum ofseparable FIR filters using the singular value deQ
aE(m’
n)
=
Re
khkPk‘ ( m ,n)
composition (SVD), theorem.
Each
separable
filter
can
then
api?@,
{k= 0
be “SGK” expanded since it is built out of 1D filters that always have the “SGK” property.
The
design procedure is thus
Q
very simplebetter
‘has
and
characteristicsoptimizaour
than
H(m,n)h;Pk’(m,
n)
k=O
tion techniques. The drawback however is the implementation
scheme which requires a scratch memory to store intermediate similarly,
results. Againwe are’faced with a tradeoff (implementation
versus design) thatneedsmoredataaboutthe
relative econoaE(m,n, =  2 Im Q
khkPL’(m, n)
mies to be resolved.
apI(m,n)
{k=0
To motivate further work, let us pose two questions related
to our filters.
H(m, n)  k = O hx.pkf(m,n))} (A1o)
1) How does one set up fixedpoint implementation of SGK
filters?
2) How doesone design SGK filters starting from a small whichcompletesthederivation.
set of parameters (cutoff frequency of a
lowpass fiter, for
APPENDIXB
example)?
CHEBYSHEV APPROXIMATION
ON A REFERENCE
APPENDIXA
The most costly step in the exchange algorithm consists in
GRADIENT O F THE L z CRITERION
solving the
approximation
problem
reference
on
a
R which
Q
t
2
sample
subset
(mi,
ni;
i
=
1
7
*
‘
,
Q
+
2)
o
f t h e fiewith
respect
to
is
a
Theproblemconsists in differentiating
quency
grid.
Following
the
approach
described
in
Kamp
and
PR(m,n) and P;(m,n )
Thiran [ 1 11,the algorithm goesas follows.
e2 =
w(m, n) E(m, n)
1) Solve the following(Q t i)X (Q t 1) linear system
fl>
(
(
f
mrn
= W(m,n)
(A4)
(A5)
E(m, n> can be rewritten as
We then use the following relationship:
BQP = B1
*
032)
This is a Vandermonde system as row j of the matrix is composed of the elements of the first row
raised to the power j
and the righthand vector also has this property. One can then
solve this system by using Cramer’s formula, Vandermonde’s
determinant being easy to calculate.
2) Solve the second (Q + 1) X (Q t 1) linear system
10
IEEE
TXANSACTIONS
ON ACOUSTICS,
SPEECH,
Thissecondsystemhas
no particularpropertyandrequires
standard routines to be solved.
REFERENCES
S . K. Mitraand M. P. Ekstrom, “Twodimensional digital signal
processing,”BenchmarkPapers
in ElectricalEngineeringand
Computer Science , vol. 20. Dowden, Hutchinson and Ross Inc.,
1978.
T. S . Huang, “Picture processing and digital filtering,” Topics
in
Applied Physics, vol. 6. New York: SpringerVerlag, 1975.
J. F. Abramatic, F. Germain, and E. Rosencher, “ D e s i ~ nof twodimensional separable denominatorrecursive filters,” ZEEE Trans.
Acoust., Speech, Signal Processing, vol. ASSP27, pp.
445453,
Oct. 1979.
W. K. Pratt, “An intelligent image processing display terminal,”
inf’roc. SPIE Tech. Symp., vol. 27, SanDiego, CA, Aug. 1979.
W. F. G. Mecklenbraiiker and R. M. Mersereau, “McClellan transformationsfortwodimensional
digitalfiltering:PartIIimplementation,” ZEEE Trans. Circuits Syst., vol. CAS23,pp. 414422, July 1976.
A.V. Oppenheim and R. W. Schafer, Digital Signal Processing.
Englewood Cliffs, NJ: PrenticeHall, 1975.
L. R. Rabiner and B. Gold, Theory and Application of Digital
Signal Processing. Englewood Cliffs, NJ: PrenticeHall,
1975.
J. H. McClellan and D. S . K. Chan, “A 2D FIR filter structure
derived fromthe Chebyshevrecursion,” ZEEE Trans.Circuits
Syst., V O ~ .CAS29, July 1977.
arbitrary 2D zerophase FIR
R. M. Mersereau,“Thedesignof
filtersusingtransformations,”
ZEEE Trans. CircuitsSyst.,vol.
CAS27, pp. 142144, Feb. 1980.
R. M. Mersereau, W. F. G. Mecklenbrauker, and T. F. Quatieri,
“McClellan transformations for twodimensional digital filtering:
Idesign,’‘ ZEEE Trans. Circuits Syst., vol. CAS23, pp. 405414,
July 1976.
Y. Kamp and J . P. Thiran, “Chebyshev approximation for twodimensionalnonrecursivedigitalfilters,”
ZEEE Trans. Circuits
Syst., V O ~ .CAS22, pp. 208218, 1975.
C. Lemarechal, NonSmooth Optimization, R. Mifflin, Ed.New
York: Pergamon, 1979.
AND SIGNAL
PROCESSING,
VOL. ASSP30, NO. 1 , FEBRUARY 1982
JeanFranqois Abramatic (“78) graduated from
the Ecole des Mines de Nancy in 1971. He received theDocteurIngkieurdegreefromthe
UniversityParis
XI, Orsayin
1975 and the
Docteur &s Sciences degree from the University
Paris VI in 1980.
He is currentlyInginieurdeRechercheat
INRIA (Institut National de Recherche en Informatique
Automatique),
et
Le
Chesnay,
France, where he has been working in the Image Processing Group since 1974.Duringthe
year 1979 he was on sabbatical leave in the Image Processing Institute
of the University of Southern California. His current interests are on
signal processing and image processing and analysis.
Impulse Response Arrays of DiscreteSpace Systems
Over a Finite Field
AbstractThe main thrust of this paper is directed towards an analy period are derived. Arrays with a maximum of three levels in the autocorrelation function are identified and explicit expressions for these
sis of the structure and propertiesof the impulse response arrayof twolevels are given.
byrational
dimensional (2D) discretespacesystems,characterizable
Zq. It is shown that suchan
functions having coefficients in a field
array exhibits a row (column) type of periodicity. Expressions for the
Manuscript received December 5, 1980; revised August 3, 1981. This
workwassupported
by the U.S. Air ForceOfficeofScientific
Research under Grant AFOSR783542 and the National Science Foundation under Grant ENG.7823141.
K. A. Prabhu is with the Visual Communications Research Department, Bell Laboratories, Holmdel, NJ 07733.
N.K. Bose is withtheDepartments ofElectricalEngineeringand
Mathematics, University of Pittsburgh, Pittsburgh,PA 15261.
I. INTRODUCTION
HILE a significant amount of literature on systems that
are linear with respect to the field of real numbers is
available, the area of systems that are linear over a finite field
has,by no means,beenoverlooked.
A reasonablycomprehensive list of papershasbeenreferencedin
[l], [ 2 ] . As
substantiated in [ 2 ] ,while binary sequences with special auto
W
00963518/82/02000010$00.75 @ 1982 IEEE