next up previous
Next: Rearranging the operations Up: Methods Previous: Modified Technique


The original technique

It will be useful to represent the process described in Wolfson et al. (1999) more formally. Let's represent the original gridded data field as $D$ and the filtered grid as $F$. We will also use the notation that $D_{i,j}$ is the grid value at the $i$th row and $j$th column. Then, the elliptical filtering process can be represented as:
\begin{displaymath}
F_{i,j} = \bigvee( fil( D_{i,j}, E_0 ), fil( D_{i,j}, E_1 ), \ldots ) ~~~~\forall i,j
\end{displaymath} (1)

where $E_0, E_1 ... E_{q-1}$ are $q$ elliptical filter orientations and $fil(D,E)$ is the average value of the points in $D$ underneath the filter $E$. The symbol $\bigvee$ denotes the maximum operator. It is readily apparent that the filtering technique in Eq. 1 is non-linear. 4

Let us make each orientation of the elliptical filter a gridded array with 1's at the cross-hatched pixels in Figure 1 and 0's everywhere else. We will then get a $(2p+1)\times(2p+1)$ grid where $2p+1$ is the major axis dimension of the ellipse (i.e. the grid will be $64\times64$ if the ellipses have a major axis of 64 pixels and a minor axis of 15 pixels). Let us also denote by $N_{k}$ the number of points that are 1 in the $k^{th}$ orientation, $E_k$, of the filter. 5 Then, the averaging operation, $fil$ can be written as:

\begin{displaymath}
fil( D_{i,j}, E_{k} ) = \frac{1}{N_k} \sum_{m=-p}^{p} \sum_{n=-p}^{p} {E_k}_{m,n} * D_{i+m,j+n} ~~~~~\forall i,j
\end{displaymath} (2)

Recognizing that summation is a linear operation and that ${E_k}_{m,n}$ is a constant, we see that the combination of multiply and add in Eq. 2 is a linear operation on $D$.

Let us assume that we use grids of size $N\times N$ and elliptical filters of size $(2p+1)\times(2p+1)$. Then, the number of operations required to compute each filter point value is $(2p+1)^2$. This has to be done for each orientation of the filter. Since there are $q$ filter orientations, one has to perform $q*(2p+1)^2$ operations for each $F_{i,j}$ which in turn has to be computed for each pixel in the image. Thus, the total computational overhead for the algorithm as described in Wolfson et al. (1999) is of the order of $q*( N*2*p )^2$.

For a $512\times512$ image and a $15\times64$ elliptical filter in 10-degree increments, we have $N=512$, $p=32$ and $q=18$. The computational overhead is of the order of 19 billion operations.


next up previous
Next: Rearranging the operations Up: Methods Previous: Modified Technique
Lakshman : lakshman@nssl.noaa.gov