Systolic Arrays for Image Processing

Size: px
Start display at page:

Download "Systolic Arrays for Image Processing"

Transcription

1 Systolic Arrays for Image Processing J. asič, U. Burnik Faculty of Electrical and Computer Engineering University of Ljubljana ržaška 5 SI Ljubljana, Slovenia jure.tasic@fer.uni-lj.si Abstract Recent advances in VLSI technology offer to the user to fabricate thousands of switching elements on a single chip. Computation power can be significantly increased by parallel processing of the algorithms mapped and designed in VLSI technology for applications that require large computational power. he major applications in image processing systems may be divided into few categories; pre-processing, coding, compression, restoration, segmentation, representation, description and interpretation. Introducing the systolic arrays into the area of image processing can significantly improve speed of processing. VLSI algorithms and arrays for image processing have received special attention in recent years. In this paper we first intend to present some basic image restoration problems, introducing the importance of fast linear algebra algorithms. hen, some basic systolic arrays and algorithms will be presented. Also some basic mapping principles of algorithms into systolic arrays will be shown. Special attention would be done to the adaptive image filtering techniques. Finally, the Singular Value Decomposition method would be applied in two-dimensional adaptive FIR filtering. A two-dimensional adaptive algorithm based on a Singular Value Decomposition (SVD) method will be presented as an example of systolic arrays applied in the area of image processing. 1 Image degradation models and restoration techniques In image processing we are dealing with deterministic and stochastic representations of images, with improving the quality of images by removing degradation presented on image. In the process of the image restoration we try to restore an image from degraded one so that it is as close as possible to the original image. Some degradation contain random noise, interference, geometrical distortions, loss of contrast, blurring effects, etc.. Image restoration problem can be described as a problem of determining an appropriate inverse function to the degradation procedure. his is actually a two-side problem, first identifying the distortion function and then computing its inverse. Both can be combined into a single procedure. he most important problem is that image restoration is an ill-conditioned problem at best and a singular problem at worst. 189

2 J. asič, U. Burnik For image restoration on digital computers we shall assume the input images of the procedure are in discrete form. Several linear algebra tools may be applied to find the solution if we suppose that the degradation is a linear procedure. In all known methods we are dealing with enormous data and fast and effective algorithms or structures have to be applied. he same problem arises in the area of image reconstruction, where we have to reconstruct high resolution images or object by processing data obtained from views of the object from many different perspectives. Such problem is reconstruction of the 3-D object from -D projections in tomography. Convolution methods and Fourier transform techniques are extensively used in this area. 1.1 he Image Degradation Model o attempt image restoration efficiently, the problem we are dealing with should be classified, so that we can find the most appropriate restoration method. On the other hand, a suitable model of image degradation should be selected considering the chosen restoration procedure. An imaging system can be generally represented as a continuous system with point-spread function h = h( ξ, η, x, y, f ) and our distorted image will result from a convolution like gxy (, ) = h( ξη,, xyf,, ( ξη, )) dd ξη. his is a very general notation. Imaging systems can be split into two main groups: non-linear systems linear systems Furthermore, models in use can be continuous-continuous, continuous-discrete and discrete-discrete models. he most physically appropriate model of a general imaging system is the continuous-discrete model (continuous images are discretized by the imaging systems). It is very difficult to find an inverse of the non-linear degradation function. Since the selected reconstruction methods are chosen from linear matrix algebra, it would be best to choose a discrete-discrete degradation model. In digital signal processing theory an image is represented by a matrix of discrete-position samples. herefore, the observed image is presented as a sequence of numerical values which are stored in memory cells of the device that is used to process it. We are looking for effective mathematical tools, which can perform operations on an image presented in the fashion we now describe. 190

3 Systolic Arrays for Image Processing he objective of our study will, throughout this paper, be reduced to discrete linear pointspread degradation functions. For discrete image f ( x, y ) degraded to image g( x, y ) and subjected to additive noise n(x,y), we may write or, alternatively, in tensor notation N N g( xy, ) = f( xy, ) h( xyuv,,, ) + n ( xy, ) u= 1 v= 1 [ G] = [[ H]]{[ F]} + [ N]. with two-dimensional matrices G, F and N and using the four-index operator H. he notation may be simplified, restacking the original and distorted image as well as noise into vectors f, g and n, and representing the point-spread operator H as a N N matrix, g= Hf + n. It is assumed that the image has been sampled into an N N array of points. It is obvious that the size of the arrays, especially for the matrix H, may become extremely large. he search for an inverse operator and even storage of such matrices in a monumental and rather inconvenient task. For different classes of distortion functions, matrix H may take on special structures, reducing the complexity of finding an inverse function. here are four specific types of the spread function, listed by decreasing complexity: separable space-invariant point-spread function H= A B, A and B are oeplitz matrices nonseparable space-invariant point-spread function H is a block oeplitz matrix separable space-variant point-spread function H= A B nonseparable space-variant point-spread function H arbitrary For purposes of our further study, we will limit our view to space-invariant point-spread functions. he goal of digital image restoration is to perform a set of mathematical operations on a degraded image in order to get a result which should be as close to the undistorted image as possible: { } f ^ g. here are two main approaches to image restoration, traditionally, image filtering has been done in frequency domain. he experience gained by studying Fourier analysis-based filters can be important in creating more powerful linear algebra-based reconstruction structures. 191

4 J. asič, U. Burnik In our particular case, we have to deal with digital uniformly-sampled image values. In order to keep the mathematical notation as clear as possible, most authors suggest presenting the image matrices (of dimensions M N ) in the form of column vectors (of dimensions MN 1). he most common orientation in linear algebra is a least-squares approach. We are looking for an inverse function G which minimizes the error function in the sense of its least squared value. e=(g g-f) (G g-f) In many cases an information about the images is known such as smoothness, intensity distribution, therefore the mentioned equation can be modified using an additional constraint: e m =(G g-f) (G g-f)+k(zf) (Zf) where the matrix Z represents the intensity weighting for the overall smoothness of the image and k is the proper regularisation parameter. he inversion function can be presented as follows: he common problem in solving the system for the inverse function ~ f= Gg is that we often encounter an ill-conditioned problem. Another difficulty, probably less explicit in 1-D signal processing, is the dimension of matrices. For a general problem with H having no special properties the solution for G is typically an inverse of a matrix with an enormous number of elements ( for a low resolution image of pixels). In a situation where a limited finite-impulse response restoration filter would satisfactorily solve the problem, the use of convolution filter is a good alternative. he solution may then be represented by minimizing e= W g - f where the size of W is far smaller than the size of transformation matrix G. his solution is only appropriate for shift-invariant imaging functions. Normally, good results can be achieved even for a 3 3 convolution matrix W, but the biggest W we have ever used in simulations was a 9 9 matrix. he symbol ** in this equation stands for -D convolution. We have to point out that the solution in such a formulation exists only for linear, space-invariant distortion functions with finite (space-limited) response. he two-dimensional convolution is a procedure, presented by the following equation: f $ (, i j ) = M M g(i + k - n,j + l - n)w(k,l); n= M / k= 1 l= 1 he idea is to present this convolution filtering process by using matrix-vector multiplication. he filtering process can cleanly be expressed as a system of linear equations: $f = Xw.. 19

5 Systolic Arrays for Image Processing he matrix X now contains elements of the distorted image vector g, specially arranged to satisfy the above convolution expression. For this notation, the filtering matrix W M M has to be restacked to a vector form; w =[ w( 11, ), w( 1, ),..., w( 1, M), w( 1, ),..., w( M, M)]. o calculate optimum filter weights, we will need to define the ordering of elements in the image signal matrix X. Similar to the 1-D problem, a signal matrix can be created by stacking partial image vectors into a new matrix. Stacking all existing input filter values together we may define an (N - k) M input signal matrix as: with input signal vector X = [ x( k, k), x( k + 1, k), K, x( N k, N k)] x( x, y) = [g( x k, y k), K,g( x, y), K g( x+ k, y+ k)]. he process of image restoration is therefore the problem how to determine the optimum solution of the above expression. Several approaches are well known from the literature [1,,...], some of them are listed below: Optimization domains Fourier Computation Methods Linear Algebraic Restoration Optimization methods Inverse filtering Constrained and Unconstrained Least Squares filtering Geometrical Mean filtering Maximum Entropy filtering Pseudo-Inverse filtering Natural Algorithms 1.3 Some popular image restoration procedures D Median Filters Image restoration of the video signal can be realized with 1-D median filtering performed on the frame to frame basis. Most applications however require two dimensional filtering. he key property of the -D median filtering is in combination of two separated 1-D filters, where one of them processes the pixels along the rows and the other the pixels along the columns. Virtual -D filter can be realized using two 1-D arrays of processors. 193

6 J. asič, U. Burnik 1.3. Neural Networks here exists a lot of methods based on neural network model. A very popular statistical based method for image restoration is called maximum a posterior approach MAP Based on Bayes theorem, also known as Iterated Conditional Modes proposed by J. Besag. he method updates the current solution x s at pixel s by taking into account all the available information. he best estimate of x s, by given y s and all current estimates x S-{s}, can be obtained by maximization of the for all s S. P(x s y s,x S-{s} ) P(y s x s )P s (x s x δs ) It can happen that the optimization procedure fails, if it finds a local solution. In such case natural algorithms, such as genetic algorithms or simulated annealing can be applied in parallel or sequential order Wiener Filtering A lot methods already well known from 1D signal processing problems are based on Wiener optimum solution. Following the convolution filtering approach, presented in section 1., reconstructed image element could be defined by the inner vector product $ (, ) f x y = w x ( x, y ) w = [ w1,1 ( ), w1, ( ), K, w( M, M)] x( x, y) = [g( x k, y k),g( x k + 1, y k), K,g( x, y), Kg( x+ k, y+ k)] M = k + 1. Based upon this interpretation, the Wiener error surface function is denoted as expectation of a single-point squared error value. J( W) = E[e ( x, y)] J( W) = E[(f( x, y) w x( x, y)) ] J( W) = E[(f( xy, )) ] w E[ x( xy, ) f( xy, )] + w E[ x( xy, ) x ( xy, )] w For a stationary image, the expectation E[(f( x, y)) ] = c is a constant value. he next expectation, p = E[ x ( x, y) f( x, y)], is called cross-correlation vector between desired and distorted image. R = E[ x( x, y) x ( x, y)] is an auto-correlation matrix of the distorted signal. his is probably the most important value not only for the Wiener approach, hence it determines the conditioning of the possible solution. Finally, we may write the squared-error surface function as J( W) = c w p+ w Rw. 194

7 Systolic Arrays for Image Processing For stationary images, the mean-squared error J(W) is exactly a second-order function of correlation coefficients W. For a parabolic surface it is well known that it possesses a unique minimum W 0 at the point with zero gradient value: Rw = 0 0 d J( W) = dw = p+ Rw = p he equation Rw 0 = p is a so called normal equation that defines optimum solution for the convolution weight matrix W. We may notice that for a solution a matrix inversion will be required. As this is a complex procedure, first attempt to this problem uses very rough estimates of the optimum solution. his approach is called LMS algorithm [18,19] and it is still a very popular engineering approach to the adaptive filtering problem. he procedure uses instantaneous estimates of the gradient of the error surface J(W) to iteratively approach the optimum solution. An extension of the procedure from 1D to D adaptive filtering can be made with searching for the solution either columnwise or rowwise. he solution seems good due to its low computational requirements. he problem of this approach is that for large variances of the input signal, which is specific to the image signals, the performance of the algorithm becomes very slow and unstable. It would be better to determine the shape and orientation of a global error surface and then to calculate the best possible weight matrix in a single operation. Convolution with the resulting weight matrix can be used as reconstruction procedure. he entire solution is based on the following correlation estimates: where d stands for desired image vector 1 $R = X X, N-M+1 1 $p = X d, N-M+1 [ (, ) (, )... (, )... (, )... (, )] d = f k + 1 k + 1 f k + 1 k + f k + 1 N 1 f k + k + 1 f n k n k. he normal equation is finally expressed as R w = p 0 1 w = R p 0 1 w = ( X X) X 0 Although matrix R is generally smaller than matrix H the inversion may still remain an illconditioned problem and the solution for W unstable. hat is the reason why special inversion techniques should be employed in solving such problems (SVD, eigendecomposition).. d. 195

8 J. asič, U. Burnik Systolic Linear Algebra Applications.1 An Overview of the Problem he systolic array idea was first introduced by H.. Kung and C. E. Leiserson [1] where such array is defined as a network of processors with rhythmical data computation and propagation along the system. In systolic arrays data is pumped from cell to cell among the array. In systolic arrays the required computations are performed concurrently in the cells. Jose Fortes et all in their article [] systematically analyze different approaches to the transforming procedure of an algorithm represented in high level construct into systolic architecture. He grouped all known transforming procedures into four classes: direct mapping from the algorithm-representation level to the systolic architecture, mapping from the algorithm representation over algorithm model into hardware, mapping of the previous designed architectures into a new architecture, symbolic transformations and transformations. All nowadays known methods can be find in the second class, as H.. Kung method, Moldovan and Fortes method, Miranker and Winklers method, S. Y. Kung method, Quinton method, Cappello and Steiglitz s method, etc. In the Cappello and Stieglitz s method each index corresponds to a single axis of the geometric space. Each point in this space corresponds to the processor with simple computational operations. Among the researchers S.Y.Kung s approach [4] is very popular, where the algorithm is presented by Signal Flow Graph (SFG). After some operations the resulting Signal Flow Graph with operation and delay modules maps straightforward into the systolic array. Most modern DSP applications are based on linear algebra algorithms. In sequential algorithms the complexity of the algorithm depends on the required computation and storage capacity. he complexity analysis of the parallel algorithms includes another important parameter, the communication required. herefore in massive parallel computation the most important factors are: computation, communication and memory. Data distribution limitations and finite number of processing elements restrict ourselves to a special class of applications, where recursions and the local dependency play very important role. hese restrictions influenced the generality of the possible mapping procedures.. Systolic Array Algorithms After identification of tasks and possible VLSI architectures, new algorithms with degree of parallelism and regularity, with low communication overheads have to be developed [6]. Array algorithm is a set of rules solved finite number of steps on a multiple number of locally connected processors. he array algorithms are defined by sinchronisity, concurrency control, granularity and communication geometry. A tool for design of systolic algorithms has been proposed by Leiserson and Saxe [7]. his criterion defines a special class of algorithms that are recursive and locally dependent. he great majority of digital signal processing algorithms possess such properties. ypical 196

9 Systolic Arrays for Image Processing class of algorithms are matrix based algorithms. Major computational needs in signal processing and applied mathematical problems can be reduced to a basic set of matrix operations and other related algorithms [8]. All these algorithms involve repeated application of relatively simple operations, with regular structure and local interconnections of the computing network. his leads to the computational wavefront [5]. he recursive nature of the algorithm and local data dependency affects the creation of continuous waves of data. he computation starts with one element and propagates among the processor array. his concept of locality and recursivity provides a theoretical basis for the design of the highly parallel processor arrays..3 Architecture of VLSI arrays Several types of arrays are determined according to the data flow and according to the dimensions of the array. Usually there are one, two or three data paths, with same or opposite directions. he subclasses of one-dimensional, or linear arrays are referred as Unidirectional Linear Array (ULA), Bidirectional Linear Array (BLA), or hree path communication Linear Array (LA) [6]. riangular, square and hexagonal geometry of processor arrays are commonly used besides linear arrays. Some of the common architectures are presented in Figure 1. (c) (a) (b) (d) Figure 1: Some examples of systolic arrays: (a) triangular array, (b) square array, (c) BLA array, (d) hexagonal array.4 Basic Linear Algebra Algorithms Used for Image Processing Digital image and signal processing encompasses broad spectrum of mathematical methods. hey are transform techniques, convolution, correlation techniques in filtering processes and set of linear algebraic methods like matrix multiplication, pseudo inverse calculation, linear system solver, different decomposition methods, geometric rotation and annihilation. Generally we can classify all signal processing algorithms into two groups: basic matrix operations and special signal processing algorithms. Fortunately, most of the algorithms fall 197

10 J. asič, U. Burnik in the classes of the matrix calculations, convolution, or transform type algorithms. hese algorithms possess common properties such as regularity, locality and recursiveness. In this paper we have to define the speedup of a parallel algorithm. It is defined as a ratio of the corresponding sequential and parallel times. If we define: n p as number of processors, τ p time required by the algorithm for π processors, τ 1 time required by the same algorithm for one processor, then the speedup is τ / τ p >. 1 1 Another important parameter is efficiency of the calculation defined as τ 1 /( n p τ p )..4.1 Inner vector multiplication Inner product of two n dimensional vectors x and y is close to this number of steps. his product is obtained as product of the row vector u and the column vector v and can be given as: x y = n j= 1 x y j j. Sequentially it can be computed in (n-1) steps, on parallel computer with n processors it can be computed in 1+log n steps. he speedup of the parallel version is approximately n/log(n) and the achieved efficiency is /log(n)..4. Matrix-vector multiplication Matrix-vector multiplication algorithm of an n m matrix A with a vector x of dimension m results in y = Ax where y is an n element vector. he i-th element of y is defined as: where a ij y i = m j= 1 a ijxj, is of the matrix A. he Uniform Linear processor Array structure is convenient for this operation where one data stream is flowing to the right and the other data stream is flowing top down (Figure ). 198

11 Systolic Arrays for Image Processing Figure : Processor array for matrix-vector multiplication he proposed parallel solution uses linear processor array with n processor elements required. Processor array is shown on Figure. he total execution time of the algorithm equals t=n Matrix-matrix multiplication Matrix-Matrix multiplication algorithm of an n m matrix A with n p matrix B results in new matrix denoted by C of dimension m p. Matrix C is given by C=A B where the elements are defined as: c = n a b. ij ik kj k= 1 his method can be realized with the array of processors of dimension m p. he principle is the same as on Figure 4. he connections are realized in horizontal and in vertical directions. herefore the mesh connections of Linear processor Array structure is convenient for this operation where the data stream of matrix B is flowing to the right and the data stream of matrix A is flowing top down. he elements of matrix C are stored in the appropriate processors of the array. In the case of the matrix-matrix computation the expected speedup is 3 O( ). log n n.4.4 Linear equation solvers Solving a system of linear equations is one of the most important problems in DSP. he problem is to find the solution vector x of dimension (n 1) for a given n linear equations Ax=y, where A is nonsingular matrix of dimension (n n). he problem can be solved by computing an inverse matrix A 1, that is x= A 1 y. his inversion matrix computation procedure is computationally very intensive, and procedure is numerically unstable. he approach using the triangularization procedure is often in use to triangularize matrix A. An 199

12 J. asič, U. Burnik * upper triangular system Ax= y *, where A * is an n n upper triangular system is finally solved by back-substitution. In the numerical analysis literature there are many matrix triangularisation methods as Gauss elimination, QR and LU decomposition or other methods. Also other effective methods for solving the system of equations exist. hey are bidiagonalization methods and Singular Value Decomposition methods. riangularisation of matrices Different techniques may be applied to obtain triangular matrix decomposition. he most commonly used are methods using Givens rotations or Householder reflections. Although Householder reflections are proven to be more efficient in sequential algorithms, this is not the case for parallel execution. Using O( n ) processors, direct implementation of Householder s reduction and the Gram-Schmidt algorithm require O(n.log n) steps. Given s reduction can be modified to produce a parallel algorithm in O(n) steps with the same number of processors. he QR tridiagonization procedure uses Givens rotations to annihilate lower triangular elements. For each annihilation, one rotation is to be performed. he entire process of tridiagonization could be written as : A Q = Q Q K Q K Q 1 kk+n) Q = Q K Q 1 0 cos (, ) = θ ki sinθ ki sinθ ki cosθ ki 0 1 aki θ ki = arctan a Q ki R = Q k (, ( kn, ) After the algorithm has been transformed into a system of uniform recurrence equations, the mapping to a systolic structure is straightforward. he result is a triangular systolic array, as shown on Figure 3. wo different purpose processor elements are used. Elements on the diagonal are simply delay elements used to transfer the values of b coming from the top to the right. Other elements perform Givens parameter generation in the first operational step and Givens rotations afterwards. he results can be obtained from the right side of the array. Actually, n(n-1)/ processor elements are required, as the delay elements on the diagonal of the array are can simply be realized using registers instead of processor elements. kk k n 00

13 Systolic Arrays for Image Processing First step: Givens generation then: Givens rotation Figure 3: riangular array for QR decomposition Eigenvalue and Singular Value Decomposition Problem Another important methods in signal and image processing are eigenvalue/eigenvector and singular value/vector decomposition methods. Some parallel algorithms have been developed like parallel version of the Jacobi and Jacobi-like algorithms, QR algorithm for obtaining several eigenvalues of a symmetric tridiagonal matrix [10], etc. Jacobi algorithm is described in Golub [11] and in Wilkinson, Reinsch [1]. A real symmetric matrix A can be reduced to the diagonal form by a sequence of plane rotations. In practice this iterative process of reduction of the off-diagonal elements is terminated when these of-diagonal elements become negligible comparing to the elements on the main diagonal. Classical Jacobi algorithm eliminates the element in the position (p, q) and its symmetric counterpart. he main task is to find a sequence of reduction the off-diagonal element in parallel, where we are not concerned about destroying zeros that we previously introduced. It is possible to eliminate more than one element simultaneously in one sweep. Maximal number of the annihilated off-diagonal elements in one sweep is (n -n)/ pairs. In approximately few (8) sweeps the matrix becomes practically diagonal. he diagonal elements represent the eigenvalues ant he products of individual transformations are taken as 01

14 J. asič, U. Burnik the eigenvectors. In the structure of O(n ) processors, one sweep requires O(n) steps yielding a speedup over sequential algorithm of O(n ). he suggested array is shown on Figure 4. Figure 4: Systolic array implementation of the Jacobi decomposition Other methods reduce the matrix to a tridiagonal form or upper Hessenberg form, depending if matrix is symmetric or not. If the matrix is symmetric tridiagonal, we may apply the QR algorithm. his method is described in Reisch Wilkinson [1]. Singular Value Decomposition of matrices is useful in multidimensional signal processing. Matrix A can be factorized in Q 1ΣQ, where Q1 is an mxm orthogonal matrix an Q is an nxn D 0 orthogonal matrix and Σ has the diagonal form Σ= where D = diag( σ 1, σ,..., σ r ), 0 0 σ 1 σ... σ r 0 and r is rank of matrix A. he form A Q Q = 1Σ = σ iuv is called the SVD of the matrix A, where the singular values σ i are the square roots of the nonzero eigenvalues of A A and u i and v i are column vectors of the matrices Q 1 and Q respectively. he column vectors of Q 1 and Q are the eigenvectors of A A. he preferable method for solving the SVD problem is described in Golub and Van Loan [11]. he described technique finds U and V simultaneously by simply applying the symmetric QR algorithm to A A. his method can be also applied for solving the common problem in signal and image processing, the least square problem. r i = 1 i i 0

15 Systolic Arrays for Image Processing 3 LS SVD digital image filtering For illustration, the use of singular value decomposition in two-dimensional filtering applications will be presented. First, the Wiener solution will be extended to two-dimensional problem, introducing special formulation of an image signal matrix. he problem will be solved algebraically with two-dimensional convolution filter implemented. he Wiener normal equation will be solved by using singular value decomposition of the image signal matrix. he effectiveness of the suggested method will be illustrated on a practical filtering problem. 3.1 Image Restoration We have decided to represent the degradation model for our imaging system in a form of discrete linear point-spread degradation functions. For discrete image F degraded to image G and subjected to additive noise N, we may write or, alternatively, in tensor notation N N gxy (, ) = hxyuvf (,,, ) ( uv, ) + nxy (, ) u= 1 v= 1 [ G] = [[ H]]{[ F]} + [ N] with two-dimensional matrices G, F and N and using the four-index operator H []. he objective of restoration is to find an inverse to the degradation function. he solution presented is not valid for all cases of image degradation. In some cases it is possible to use convolution filter to restore the image. he solution may then be represented in a form of $F = W G, with symbol ** standing for -D convolution. We have to point out that the solution in such a formulation exists only for linear, space-invariant distortion functions with finite (spacelimited) response. he general adaptive filter representation for this case is illustrated in Figure 5. he filter operates on a real image (signal matrix) X that is corrupted with noise. he desired signal (reference image) is also provided. he filtering parameters can be represented in form of an N N matrix W, and the filtering process may be represented by convoluting the image input X with the matrix W. During the adaptation, the filtering weights may be changed in order to obtain optimal solution. he filtering result is given by M M $f( xy, ) = w( ij, ) g( x+ i ky, + i k) i= 0 j= 0 M= k+1 03

16 J. asič, U. Burnik Figure 5: SVD based -D adaptive filter he difference between the desired and the resulting image e( xy, ) = f( xy, ) f( $ xy, ) is called the estimation error. From Wiener filter theory, optimal filtering coefficients W are defined by the minimum mean-square error criteria. he objective function J( W ) = E[e ( x, y)] should be minimized for W to obtain the optimum filter. For this particular example, Wiener optimal solution is to be applied. he idea is well known from 1-D adaptive filtering, where instantaneous estimates of gradient of the error surface J(W) are used to approach the optimum solution iteratively. he algorithm is popularly called LMS algorithm. It is possible to extend the algorithm to be used in both x and y image dimensions, iteratively searching for the solution either columnwise or rowwise. he procedure is numerically convenient due to low storage and computing requirements. he problem of this approach is that the instantaneous estimates of the error surface have relatively large variances. he estimate of their gradient vectors may then not always be pointing to a global optimum; the fact could cause unstable performance of the algorithm. he stability may be improved using smaller adaptation step-size, however this seriously affects the convergence rate of the procedure. As already suggested in Section 1.3.3, the normal equation Rw is to be solved for w, using special inversion techniques. he one proven to be very efficient is the method using SVD matrix decomposition. 0 = p 04

17 3.3 Singular Value Decomposition Systolic Arrays for Image Processing One of the methods for the stable inversion process of the matrix R = XX is called SVD pseudo-inversion. Better than calculate straight inverse of R 1 1 = ( X X) is to apply pseudo-inversion technique directly on matrix X. he solution for W can be expressed directly as w X 0 = + + where pseudo-inverse X is defined in terms of the products of the singular-value decomposition U XV =Σ of X. he procedure is numerically stable and its solution is unique in that its vector norm is minimum [18]. d a b c d e f Figure 6: Sharpening of blurred image using D LS SVD algorithm (a) original image, (b) Image, blurred with 5-by-5 low pass convolution filter, additive noise, (c) b, restored with 7-by-7 D LS SVD filter, (d) b, inverse filtered, (e) b, noiseless, (f) e, restored Convolution operator W can be created by restacking the values of the vector w back to the M M matrix form: 05

18 w u d v σ M = i i= 1 i σ i 0 i J. asič, U. Burnik w() 1 L w( M ) W = M O M. w( M( M 1) + 1) L w( M ) he non-iteratively calculated filtering parameters are optimal for the specific image/distorted image combination. hey may be directly applied in a classical twodimensional convolution filter. 3.4 Implementation of the procedure he procedure may be implemented as a systolic array algorithm. he actual algorithm is to be combined out of partial linear algebra solutions presented in section. Note that the array to perform singular value decomposition is almost identical to eigendecomposition array. Figure 6 represents sharpening of blurred images using two-dimensional least-square SVD algorithm. he original image is shown on Figure 6a. he image was blurred using a 5-by-5 low-pass convolution filter. Some uncorelatted noise has been added at the end of the blurring procedure (Figure 6b). Image has been restored using a 7 7 adaptive algorithm; the result is shown on Figure 6c. he results of the inverse filtering of the same image are presented on Figure 6d. From the result we can deduct that the proposed algorithm is less sensible than classical inverse filtering procedure. he image blurred without presence of noise and the noiseless image sharpened by using D LS SVD algorithm are shown on Figures 6e and 6f, respectively. a b c Figure 7: Removing of noise using D LS SVD algorithm (a) noisy image, (b) a, D LS SVD filtered, (c) a, low-pass filtered he same procedure applied in noise removal is shown on Figure 7. From the images it is clear, that the D LS SVD algorithm does not converge to expected low-pass solution. A big amount of the uncorrelated noise has been successfully removed from the image preserving sharp edges of the image. he softening of the image contours is a common problem when low-pass filters are used for noise removal (Figure 7c) 06

19 Systolic Arrays for Image Processing he simulation results show that the Wiener filtering principle can successfully be implemented in image restoration. Methods well known from the linear algebra theory may be applied instead of classical methods based on Fourier transformation. he effectiveness of the procedure may be improved using special updating techniques. 4 Conclusion Characteristically for almost all presented linear algebra operations, suggested to use in digital signal processing applications is that they consist of a huge number of relatively basic mathematical operations. he fact that the operations are repetitive, yet applied on a wide set of data inspired us to employ several processor elements performing the same task on separate data elements in parallel. Special properties of the mentioned processing problem allow us to construct a massive array of equal processor elements, which concurrently perform the necessary numerical operations. here exist several well-known parallel computer architectures; the architecture may vary according to the applied processor elements, reconfigurability, data interchange connections, etc. he architecture to be applied on a specific problem depends mostly on a problem itself. As the digital signal processing demands high speed computing with fixed procedures in use at relatively low cost, general-purpose parallel computers are not convenient for use. Digital signal processing is a data-oriented computing problem, so architectures with global data interchange are to be omitted. What we really need is an array of locally interconnected processor elements with local memory. he processor elements should sinhronuously perform the same set of operations on the data structure. his architecture is a systolic array - the rhythmical operation of the array reminds us to the systolic of the heart he basic approach to mapping techniques and some possible applications were presented in this chapter. However, this was only a brief introduction to the world of special-purpose VLSI systolic architecture. More details on the described procedures as well as on optimization techniques not presented here may be found from the literature. Bibliography [1] H.. Kung and C. E. Leiserson, Systolic Arrays (for VLSI), ech. rep. CS , Carneige Mellon University, Pitsburg, PA, Apr [] A. B. Fortes, K. S. Fu, B. W. Wah, Systematic approaches to the design of algorithmic specified systolic arrays, Proc. IEEE ICASSP 85, IEEE Computer Society Press, March 1985, pp [3] R. Cappello, K. Stieglitz, Unifying VLSI array designs with geometric transformations, Proc. of Int Conf. on Parallel Processing, 1983, pp [4] S. Y. Kung, VLSI Array Processors, Prentice Hall, 1988 [5] S. Y. Kung, K. S. Arun, R. J. Gal-Ezer, D. B. Rao, Wavefront array processor: Language, architecture and applications, IEEE r. Comput., c , pp

20 J. asič, U. Burnik [6] M. Gušev, Processor Array Implementations of Systems of Affine Recurrence Equations for Digital Signal Processing, PhD dissertation, University of Ljubljana, June 199. [7] C. E. Leiserson, J. B. Saxe, Optimizing synchronous systems, J.VLSI and Computer Systems, 1983, pp [8] S. Y. Kung, VLSI array processor for signal processing, Conf. Advanced Res. in Integrated Circuits, MI, Cambridge, Jan. 8-30, [9] H.. Kung, Notes on VLSI computation, Parallel Processing Systems, D.J. Evans ed., Cambridge University Press, 1983, pp [10] Sameh, Numerical Parallel Algorithms-A Survey; High Speed Computer and Algorithm Organisation, 1977, pp. 07-8, Academic Press, 1977 [11] H. Golub, C. F. Van Loan, Matrix computations, John Hopkins University Press, Baltimore, London, [1] H. Wilkinson, he Algebraic Eigenvalue Problem, Oxford University Press, London, [13] I. Moldovan, On the analysis and synthesis of VLSI algorithms, IEEE rans. Comput., 31 (198), pp [14] R. P. Brent,, F.. Luk and C. Van Loan, Computation of the Singular Value Decomposition using mesh-connected processors. J. VLSI and Computer Systems, vol. 1 no. 3, pp , [15] R. P. Brent, F.. Luk. he solution of singular-value and symmetric eigenvalue problems on multiprocessor arrays. SIAM J. Sci. Stat. Comput. vol. 6, no. 1, January [16] L. hiele, Computational arrays for cyclic-by rows Jacobi Algorithms. SVD and Signal Processing, Algorithms, Applications and Architectures, Elsevier Science Publishers B. V. North Holland, [17] U. Burnik, G. Cain and J. asič, On the Parallel Jacobi Method Based Eigenfilters, COS 9 WG4 Workshop on Parallel Computing, Funchal, Portugal, [18] S. Haykin, Modern Filters, Macmillan, New York, [19] S. Haykin, Adaptive Filter heory, Prentice Hall, Englewood Cliffs, N. J., [0] J. asič, et. al. Eigenanalysis in Adaptive FIR Filtering, Internal Report, University of Westminster, January [1] R. C. Gonzales, R. C. Woods, Digital Image Processing, Addison-Wesley Publishing Company, 199. [] H. C. Andrews, B. R. Hunt, Digital Image Restoration, Prentice Hall, Englewood Cliffs, New Jersey,

Procedures for Folding Transformations

Procedures for Folding Transformations Procedures for Folding Transformations Marjan Gušev 1 and David J. Evans 2 1 Kiril i Metodij University, PMF Informatika, p.f.162, 91000 Skopje, Macedonia 2 PARC, University of Technology, Loughborough,

More information

Outline. Parallel Algorithms for Linear Algebra. Number of Processors and Problem Size. Speedup and Efficiency

Outline. Parallel Algorithms for Linear Algebra. Number of Processors and Problem Size. Speedup and Efficiency 1 2 Parallel Algorithms for Linear Algebra Richard P. Brent Computer Sciences Laboratory Australian National University Outline Basic concepts Parallel architectures Practical design issues Programming

More information

PARALLEL COMPUTATION OF THE SINGULAR VALUE DECOMPOSITION ON TREE ARCHITECTURES

PARALLEL COMPUTATION OF THE SINGULAR VALUE DECOMPOSITION ON TREE ARCHITECTURES PARALLEL COMPUTATION OF THE SINGULAR VALUE DECOMPOSITION ON TREE ARCHITECTURES Zhou B. B. and Brent R. P. Computer Sciences Laboratory Australian National University Canberra, ACT 000 Abstract We describe

More information

Chapter 1 A New Parallel Algorithm for Computing the Singular Value Decomposition

Chapter 1 A New Parallel Algorithm for Computing the Singular Value Decomposition Chapter 1 A New Parallel Algorithm for Computing the Singular Value Decomposition Nicholas J. Higham Pythagoras Papadimitriou Abstract A new method is described for computing the singular value decomposition

More information

ADVANCED IMAGE PROCESSING METHODS FOR ULTRASONIC NDE RESEARCH C. H. Chen, University of Massachusetts Dartmouth, N.

ADVANCED IMAGE PROCESSING METHODS FOR ULTRASONIC NDE RESEARCH C. H. Chen, University of Massachusetts Dartmouth, N. ADVANCED IMAGE PROCESSING METHODS FOR ULTRASONIC NDE RESEARCH C. H. Chen, University of Massachusetts Dartmouth, N. Dartmouth, MA USA Abstract: The significant progress in ultrasonic NDE systems has now

More information

Chapter 1 A New Parallel Algorithm for Computing the Singular Value Decomposition

Chapter 1 A New Parallel Algorithm for Computing the Singular Value Decomposition Chapter 1 A New Parallel Algorithm for Computing the Singular Value Decomposition Nicholas J. Higham Pythagoras Papadimitriou Abstract A new method is described for computing the singular value decomposition

More information

Algebraic Iterative Methods for Computed Tomography

Algebraic Iterative Methods for Computed Tomography Algebraic Iterative Methods for Computed Tomography Per Christian Hansen DTU Compute Department of Applied Mathematics and Computer Science Technical University of Denmark Per Christian Hansen Algebraic

More information

CHAPTER 3 DIFFERENT DOMAINS OF WATERMARKING. domain. In spatial domain the watermark bits directly added to the pixels of the cover

CHAPTER 3 DIFFERENT DOMAINS OF WATERMARKING. domain. In spatial domain the watermark bits directly added to the pixels of the cover 38 CHAPTER 3 DIFFERENT DOMAINS OF WATERMARKING Digital image watermarking can be done in both spatial domain and transform domain. In spatial domain the watermark bits directly added to the pixels of the

More information

WEINER FILTER AND SUB-BLOCK DECOMPOSITION BASED IMAGE RESTORATION FOR MEDICAL APPLICATIONS

WEINER FILTER AND SUB-BLOCK DECOMPOSITION BASED IMAGE RESTORATION FOR MEDICAL APPLICATIONS WEINER FILTER AND SUB-BLOCK DECOMPOSITION BASED IMAGE RESTORATION FOR MEDICAL APPLICATIONS ARIFA SULTANA 1 & KANDARPA KUMAR SARMA 2 1,2 Department of Electronics and Communication Engineering, Gauhati

More information

Parallel Computation of the Singular Value Decomposition on Tree Architectures

Parallel Computation of the Singular Value Decomposition on Tree Architectures Parallel Computation of the Singular Value Decomposition on Tree Architectures Zhou B. B. and Brent R. P. y Computer Sciences Laboratory The Australian National University Canberra, ACT 000, Australia

More information

HIGH SPEED REALISATION OF DIGITAL FILTERS

HIGH SPEED REALISATION OF DIGITAL FILTERS HIGH SPEED REALISATION OF DIGITAL FILTERS A THESIS SUBMITTED FOR THE DEGREE OF MASTER OF PHILOSOPHY IN ELECTRICAL AND ELECTRONIC ENGINEERING AT THE UNIVERSITY OF HONG KONG BY TSIM TS1M MAN-TAT, JIMMY DEPARTMENT

More information

Optimum Array Processing

Optimum Array Processing Optimum Array Processing Part IV of Detection, Estimation, and Modulation Theory Harry L. Van Trees WILEY- INTERSCIENCE A JOHN WILEY & SONS, INC., PUBLICATION Preface xix 1 Introduction 1 1.1 Array Processing

More information

Realization of Hardware Architectures for Householder Transformation based QR Decomposition using Xilinx System Generator Block Sets

Realization of Hardware Architectures for Householder Transformation based QR Decomposition using Xilinx System Generator Block Sets IJSTE - International Journal of Science Technology & Engineering Volume 2 Issue 08 February 2016 ISSN (online): 2349-784X Realization of Hardware Architectures for Householder Transformation based QR

More information

On Parallel Implementation of the One-sided Jacobi Algorithm for Singular Value Decompositions

On Parallel Implementation of the One-sided Jacobi Algorithm for Singular Value Decompositions On Parallel Implementation of the One-sided Jacobi Algorithm for Singular Value Decompositions B. B. Zhou and R. P. Brent Computer Sciences Laboratory The Australian National University Canberra, ACT 000,

More information

1 INTRODUCTION The LMS adaptive algorithm is the most popular algorithm for adaptive ltering because of its simplicity and robustness. However, its ma

1 INTRODUCTION The LMS adaptive algorithm is the most popular algorithm for adaptive ltering because of its simplicity and robustness. However, its ma MULTIPLE SUBSPACE ULV ALGORITHM AND LMS TRACKING S. HOSUR, A. H. TEWFIK, D. BOLEY University of Minnesota 200 Union St. S.E. Minneapolis, MN 55455 U.S.A fhosur@ee,tewk@ee,boley@csg.umn.edu ABSTRACT. The

More information

AN ALGORITHM FOR BLIND RESTORATION OF BLURRED AND NOISY IMAGES

AN ALGORITHM FOR BLIND RESTORATION OF BLURRED AND NOISY IMAGES AN ALGORITHM FOR BLIND RESTORATION OF BLURRED AND NOISY IMAGES Nader Moayeri and Konstantinos Konstantinides Hewlett-Packard Laboratories 1501 Page Mill Road Palo Alto, CA 94304-1120 moayeri,konstant@hpl.hp.com

More information

COMP 558 lecture 19 Nov. 17, 2010

COMP 558 lecture 19 Nov. 17, 2010 COMP 558 lecture 9 Nov. 7, 2 Camera calibration To estimate the geometry of 3D scenes, it helps to know the camera parameters, both external and internal. The problem of finding all these parameters is

More information

Numerical Robustness. The implementation of adaptive filtering algorithms on a digital computer, which inevitably operates using finite word-lengths,

Numerical Robustness. The implementation of adaptive filtering algorithms on a digital computer, which inevitably operates using finite word-lengths, 1. Introduction Adaptive filtering techniques are used in a wide range of applications, including echo cancellation, adaptive equalization, adaptive noise cancellation, and adaptive beamforming. These

More information

Least-Squares Fitting of Data with B-Spline Curves

Least-Squares Fitting of Data with B-Spline Curves Least-Squares Fitting of Data with B-Spline Curves David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International

More information

UMIACS-TR March Direction-of-Arrival Estimation Using the. G. Adams. M. F. Griffin. G. W. Stewart y. abstract

UMIACS-TR March Direction-of-Arrival Estimation Using the. G. Adams. M. F. Griffin. G. W. Stewart y. abstract UMIACS-TR 91-46 March 1991 CS-TR-2640 Direction-of-Arrival Estimation Using the Rank-Revealing URV Decomposition G. Adams M. F. Griffin G. W. Stewart y abstract An algorithm for updating the null space

More information

CoE4TN3 Medical Image Processing

CoE4TN3 Medical Image Processing CoE4TN3 Medical Image Processing Image Restoration Noise Image sensor might produce noise because of environmental conditions or quality of sensing elements. Interference in the image transmission channel.

More information

Lecture 3: Camera Calibration, DLT, SVD

Lecture 3: Camera Calibration, DLT, SVD Computer Vision Lecture 3 23--28 Lecture 3: Camera Calibration, DL, SVD he Inner Parameters In this section we will introduce the inner parameters of the cameras Recall from the camera equations λx = P

More information

A linear algebra processor using Monte Carlo methods

A linear algebra processor using Monte Carlo methods A linear algebra processor using Monte Carlo methods Conference or Workshop Item Accepted Version Plaks, T. P., Megson, G. M., Cadenas Medina, J. O. and Alexandrov, V. N. (2003) A linear algebra processor

More information

IMPULSE RESPONSE IDENTIFICATION BY ENERGY SPECTRUM METHOD USING GEOINFORMATION DATA IN CASE OF REMOTE SENSING IMAGES

IMPULSE RESPONSE IDENTIFICATION BY ENERGY SPECTRUM METHOD USING GEOINFORMATION DATA IN CASE OF REMOTE SENSING IMAGES IMPULSE RESPONSE IDENTIFICATION BY ENERGY SPECTRUM METHOD USING GEOINFORMATION DATA IN CASE OF REMOTE SENSING IMAGES A.Y. Denisova, V.V. Sergeyev Samara National Research University, Samara, Russia Abstract.

More information

SEMI-BLIND IMAGE RESTORATION USING A LOCAL NEURAL APPROACH

SEMI-BLIND IMAGE RESTORATION USING A LOCAL NEURAL APPROACH SEMI-BLIND IMAGE RESTORATION USING A LOCAL NEURAL APPROACH Ignazio Gallo, Elisabetta Binaghi and Mario Raspanti Universitá degli Studi dell Insubria Varese, Italy email: ignazio.gallo@uninsubria.it ABSTRACT

More information

Fundamentals of Digital Image Processing

Fundamentals of Digital Image Processing \L\.6 Gw.i Fundamentals of Digital Image Processing A Practical Approach with Examples in Matlab Chris Solomon School of Physical Sciences, University of Kent, Canterbury, UK Toby Breckon School of Engineering,

More information

Estimating normal vectors and curvatures by centroid weights

Estimating normal vectors and curvatures by centroid weights Computer Aided Geometric Design 21 (2004) 447 458 www.elsevier.com/locate/cagd Estimating normal vectors and curvatures by centroid weights Sheng-Gwo Chen, Jyh-Yang Wu Department of Mathematics, National

More information

On Massively Parallel Algorithms to Track One Path of a Polynomial Homotopy

On Massively Parallel Algorithms to Track One Path of a Polynomial Homotopy On Massively Parallel Algorithms to Track One Path of a Polynomial Homotopy Jan Verschelde joint with Genady Yoffe and Xiangcheng Yu University of Illinois at Chicago Department of Mathematics, Statistics,

More information

THE COMPUTER MODELLING OF GLUING FLAT IMAGES ALGORITHMS. Alekseí Yu. Chekunov. 1. Introduction

THE COMPUTER MODELLING OF GLUING FLAT IMAGES ALGORITHMS. Alekseí Yu. Chekunov. 1. Introduction MATEMATIČKI VESNIK MATEMATIQKI VESNIK 69, 1 (2017), 12 22 March 2017 research paper originalni nauqni rad THE COMPUTER MODELLING OF GLUING FLAT IMAGES ALGORITHMS Alekseí Yu. Chekunov Abstract. In this

More information

Photometric Stereo. Photometric Stereo. Shading reveals 3-D surface geometry BRDF. HW3 is assigned. An example of photometric stereo

Photometric Stereo. Photometric Stereo. Shading reveals 3-D surface geometry BRDF. HW3 is assigned. An example of photometric stereo Photometric Stereo Photometric Stereo HW3 is assigned Introduction to Computer Vision CSE5 Lecture 6 Shading reveals 3-D surface geometry Shape-from-shading: Use just one image to recover shape. Requires

More information

Filtering Images. Contents

Filtering Images. Contents Image Processing and Data Visualization with MATLAB Filtering Images Hansrudi Noser June 8-9, 010 UZH, Multimedia and Robotics Summer School Noise Smoothing Filters Sigmoid Filters Gradient Filters Contents

More information

CoE4TN4 Image Processing. Chapter 5 Image Restoration and Reconstruction

CoE4TN4 Image Processing. Chapter 5 Image Restoration and Reconstruction CoE4TN4 Image Processing Chapter 5 Image Restoration and Reconstruction Image Restoration Similar to image enhancement, the ultimate goal of restoration techniques is to improve an image Restoration: a

More information

Dense Matrix Algorithms

Dense Matrix Algorithms Dense Matrix Algorithms Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar To accompany the text Introduction to Parallel Computing, Addison Wesley, 2003. Topic Overview Matrix-Vector Multiplication

More information

IMAGE ANALYSIS, CLASSIFICATION, and CHANGE DETECTION in REMOTE SENSING

IMAGE ANALYSIS, CLASSIFICATION, and CHANGE DETECTION in REMOTE SENSING SECOND EDITION IMAGE ANALYSIS, CLASSIFICATION, and CHANGE DETECTION in REMOTE SENSING ith Algorithms for ENVI/IDL Morton J. Canty с*' Q\ CRC Press Taylor &. Francis Group Boca Raton London New York CRC

More information

Sparse Component Analysis (SCA) in Random-valued and Salt and Pepper Noise Removal

Sparse Component Analysis (SCA) in Random-valued and Salt and Pepper Noise Removal Sparse Component Analysis (SCA) in Random-valued and Salt and Pepper Noise Removal Hadi. Zayyani, Seyyedmajid. Valliollahzadeh Sharif University of Technology zayyani000@yahoo.com, valliollahzadeh@yahoo.com

More information

GRAPH CENTERS USED FOR STABILIZATION OF MATRIX FACTORIZATIONS

GRAPH CENTERS USED FOR STABILIZATION OF MATRIX FACTORIZATIONS Discussiones Mathematicae Graph Theory 30 (2010 ) 349 359 GRAPH CENTERS USED FOR STABILIZATION OF MATRIX FACTORIZATIONS Pavla Kabelíková Department of Applied Mathematics FEI, VSB Technical University

More information

All MSEE students are required to take the following two core courses: Linear systems Probability and Random Processes

All MSEE students are required to take the following two core courses: Linear systems Probability and Random Processes MSEE Curriculum All MSEE students are required to take the following two core courses: 3531-571 Linear systems 3531-507 Probability and Random Processes The course requirements for students majoring in

More information

A Ripple Carry Adder based Low Power Architecture of LMS Adaptive Filter

A Ripple Carry Adder based Low Power Architecture of LMS Adaptive Filter A Ripple Carry Adder based Low Power Architecture of LMS Adaptive Filter A.S. Sneka Priyaa PG Scholar Government College of Technology Coimbatore ABSTRACT The Least Mean Square Adaptive Filter is frequently

More information

High Speed Pipelined Architecture for Adaptive Median Filter

High Speed Pipelined Architecture for Adaptive Median Filter Abstract High Speed Pipelined Architecture for Adaptive Median Filter D.Dhanasekaran, and **Dr.K.Boopathy Bagan *Assistant Professor, SVCE, Pennalur,Sriperumbudur-602105. **Professor, Madras Institute

More information

A Quantitative Approach for Textural Image Segmentation with Median Filter

A Quantitative Approach for Textural Image Segmentation with Median Filter International Journal of Advancements in Research & Technology, Volume 2, Issue 4, April-2013 1 179 A Quantitative Approach for Textural Image Segmentation with Median Filter Dr. D. Pugazhenthi 1, Priya

More information

THE COMPUTER MODELLING OF GLUING FLAT IMAGES ALGORITHMS. Alekseí Yu. Chekunov. 1. Introduction

THE COMPUTER MODELLING OF GLUING FLAT IMAGES ALGORITHMS. Alekseí Yu. Chekunov. 1. Introduction MATEMATIQKI VESNIK Corrected proof Available online 01.10.2016 originalni nauqni rad research paper THE COMPUTER MODELLING OF GLUING FLAT IMAGES ALGORITHMS Alekseí Yu. Chekunov Abstract. In this paper

More information

Adaptive Filters Algorithms (Part 2)

Adaptive Filters Algorithms (Part 2) Adaptive Filters Algorithms (Part 2) Gerhard Schmidt Christian-Albrechts-Universität zu Kiel Faculty of Engineering Electrical Engineering and Information Technology Digital Signal Processing and System

More information

Fast Algorithms for Regularized Minimum Norm Solutions to Inverse Problems

Fast Algorithms for Regularized Minimum Norm Solutions to Inverse Problems Fast Algorithms for Regularized Minimum Norm Solutions to Inverse Problems Irina F. Gorodnitsky Cognitive Sciences Dept. University of California, San Diego La Jolla, CA 9293-55 igorodni@ece.ucsd.edu Dmitry

More information

EFFICIENT SOLVER FOR LINEAR ALGEBRAIC EQUATIONS ON PARALLEL ARCHITECTURE USING MPI

EFFICIENT SOLVER FOR LINEAR ALGEBRAIC EQUATIONS ON PARALLEL ARCHITECTURE USING MPI EFFICIENT SOLVER FOR LINEAR ALGEBRAIC EQUATIONS ON PARALLEL ARCHITECTURE USING MPI 1 Akshay N. Panajwar, 2 Prof.M.A.Shah Department of Computer Science and Engineering, Walchand College of Engineering,

More information

Digital Image Processing

Digital Image Processing Digital Image Processing Third Edition Rafael C. Gonzalez University of Tennessee Richard E. Woods MedData Interactive PEARSON Prentice Hall Pearson Education International Contents Preface xv Acknowledgments

More information

Increasing interconnection network connectivity for reducing operator complexity in asynchronous vision systems

Increasing interconnection network connectivity for reducing operator complexity in asynchronous vision systems Increasing interconnection network connectivity for reducing operator complexity in asynchronous vision systems Valentin Gies and Thierry M. Bernard ENSTA, 32 Bd Victor 75015, Paris, FRANCE, contact@vgies.com,

More information

Algebraic Iterative Methods for Computed Tomography

Algebraic Iterative Methods for Computed Tomography Algebraic Iterative Methods for Computed Tomography Per Christian Hansen DTU Compute Department of Applied Mathematics and Computer Science Technical University of Denmark Per Christian Hansen Algebraic

More information

ON SYSTOLIC CONTRACTIONS OF PROGRAM GRAPHS

ON SYSTOLIC CONTRACTIONS OF PROGRAM GRAPHS ON SYSTOLIC CONTRACTIONS OF PROGRAM GRAPHS Weicheng Shen Department of Electrical Engineering University of New Hampshire Durham, NH 03824-3591 A. Yavuz Oruç Electrical, Computer, and Systems Engineering

More information

Super-resolution on Text Image Sequences

Super-resolution on Text Image Sequences November 4, 2004 Outline Outline Geometric Distortion Optical/Motion Blurring Down-Sampling Total Variation Basic Idea Outline Geometric Distortion Optical/Motion Blurring Down-Sampling No optical/image

More information

Systolic Parallel Processing

Systolic Parallel Processing Algorithms and architectures of multimedia systems Systolic Parallel Processing Lecture Notes Matej Zajc University of Ljubljana 2011/12 Matej Zajc 2011 2 1 Introduction to systolic parallel processing

More information

Parallel Reduction from Block Hessenberg to Hessenberg using MPI

Parallel Reduction from Block Hessenberg to Hessenberg using MPI Parallel Reduction from Block Hessenberg to Hessenberg using MPI Viktor Jonsson May 24, 2013 Master s Thesis in Computing Science, 30 credits Supervisor at CS-UmU: Lars Karlsson Examiner: Fredrik Georgsson

More information

Index. C m (Ω), 141 L 2 (Ω) space, 143 p-th order, 17

Index. C m (Ω), 141 L 2 (Ω) space, 143 p-th order, 17 Bibliography [1] J. Adams, P. Swarztrauber, and R. Sweet. Fishpack: Efficient Fortran subprograms for the solution of separable elliptic partial differential equations. http://www.netlib.org/fishpack/.

More information

2.7 Numerical Linear Algebra Software

2.7 Numerical Linear Algebra Software 2.7 Numerical Linear Algebra Software In this section we will discuss three software packages for linear algebra operations: (i) (ii) (iii) Matlab, Basic Linear Algebra Subroutines (BLAS) and LAPACK. There

More information

Robust Lossless Image Watermarking in Integer Wavelet Domain using SVD

Robust Lossless Image Watermarking in Integer Wavelet Domain using SVD Robust Lossless Image Watermarking in Integer Domain using SVD 1 A. Kala 1 PG scholar, Department of CSE, Sri Venkateswara College of Engineering, Chennai 1 akala@svce.ac.in 2 K. haiyalnayaki 2 Associate

More information

Advanced phase retrieval: maximum likelihood technique with sparse regularization of phase and amplitude

Advanced phase retrieval: maximum likelihood technique with sparse regularization of phase and amplitude Advanced phase retrieval: maximum likelihood technique with sparse regularization of phase and amplitude A. Migukin *, V. atkovnik and J. Astola Department of Signal Processing, Tampere University of Technology,

More information

Implementation Of Quadratic Rotation Decomposition Based Recursive Least Squares Algorithm

Implementation Of Quadratic Rotation Decomposition Based Recursive Least Squares Algorithm 157 Implementation Of Quadratic Rotation Decomposition Based Recursive Least Squares Algorithm Manpreet Singh 1, Sandeep Singh Gill 2 1 University College of Engineering, Punjabi University, Patiala-India

More information

Contents. I Basics 1. Copyright by SIAM. Unauthorized reproduction of this article is prohibited.

Contents. I Basics 1. Copyright by SIAM. Unauthorized reproduction of this article is prohibited. page v Preface xiii I Basics 1 1 Optimization Models 3 1.1 Introduction... 3 1.2 Optimization: An Informal Introduction... 4 1.3 Linear Equations... 7 1.4 Linear Optimization... 10 Exercises... 12 1.5

More information

COMBINED METHOD TO VISUALISE AND REDUCE DIMENSIONALITY OF THE FINANCIAL DATA SETS

COMBINED METHOD TO VISUALISE AND REDUCE DIMENSIONALITY OF THE FINANCIAL DATA SETS COMBINED METHOD TO VISUALISE AND REDUCE DIMENSIONALITY OF THE FINANCIAL DATA SETS Toomas Kirt Supervisor: Leo Võhandu Tallinn Technical University Toomas.Kirt@mail.ee Abstract: Key words: For the visualisation

More information

Computer Vision I - Filtering and Feature detection

Computer Vision I - Filtering and Feature detection Computer Vision I - Filtering and Feature detection Carsten Rother 30/10/2015 Computer Vision I: Basics of Image Processing Roadmap: Basics of Digital Image Processing Computer Vision I: Basics of Image

More information

Parallel Implementations of Gaussian Elimination

Parallel Implementations of Gaussian Elimination s of Western Michigan University vasilije.perovic@wmich.edu January 27, 2012 CS 6260: in Parallel Linear systems of equations General form of a linear system of equations is given by a 11 x 1 + + a 1n

More information

Compressed Sensing Algorithm for Real-Time Doppler Ultrasound Image Reconstruction

Compressed Sensing Algorithm for Real-Time Doppler Ultrasound Image Reconstruction Mathematical Modelling and Applications 2017; 2(6): 75-80 http://www.sciencepublishinggroup.com/j/mma doi: 10.11648/j.mma.20170206.14 ISSN: 2575-1786 (Print); ISSN: 2575-1794 (Online) Compressed Sensing

More information

x' = c 1 x + c 2 y + c 3 xy + c 4 y' = c 5 x + c 6 y + c 7 xy + c 8

x' = c 1 x + c 2 y + c 3 xy + c 4 y' = c 5 x + c 6 y + c 7 xy + c 8 1. Explain about gray level interpolation. The distortion correction equations yield non integer values for x' and y'. Because the distorted image g is digital, its pixel values are defined only at integer

More information

Pipeline Givens sequences for computing the QR decomposition on a EREW PRAM q

Pipeline Givens sequences for computing the QR decomposition on a EREW PRAM q Parallel Computing 32 (2006) 222 230 www.elsevier.com/locate/parco Pipeline Givens sequences for computing the QR decomposition on a EREW PRAM q Marc Hofmann a, *, Erricos John Kontoghiorghes b,c a Institut

More information

Dynamic Texture with Fourier Descriptors

Dynamic Texture with Fourier Descriptors B. Abraham, O. Camps and M. Sznaier: Dynamic texture with Fourier descriptors. In Texture 2005: Proceedings of the 4th International Workshop on Texture Analysis and Synthesis, pp. 53 58, 2005. Dynamic

More information

PAPER Design of Optimal Array Processors for Two-Step Division-Free Gaussian Elimination

PAPER Design of Optimal Array Processors for Two-Step Division-Free Gaussian Elimination 1503 PAPER Design of Optimal Array Processors for Two-Step Division-Free Gaussian Elimination Shietung PENG and Stanislav G. SEDUKHIN Nonmembers SUMMARY The design of array processors for solving linear

More information

Introduction to Parallel. Programming

Introduction to Parallel. Programming University of Nizhni Novgorod Faculty of Computational Mathematics & Cybernetics Introduction to Parallel Section 9. Programming Parallel Methods for Solving Linear Systems Gergel V.P., Professor, D.Sc.,

More information

Performance Evaluations for Parallel Image Filter on Multi - Core Computer using Java Threads

Performance Evaluations for Parallel Image Filter on Multi - Core Computer using Java Threads Performance Evaluations for Parallel Image Filter on Multi - Core Computer using Java s Devrim Akgün Computer Engineering of Technology Faculty, Duzce University, Duzce,Turkey ABSTRACT Developing multi

More information

Structure from Motion. Prof. Marco Marcon

Structure from Motion. Prof. Marco Marcon Structure from Motion Prof. Marco Marcon Summing-up 2 Stereo is the most powerful clue for determining the structure of a scene Another important clue is the relative motion between the scene and (mono)

More information

International Journal of Advancements in Research & Technology, Volume 2, Issue 8, August ISSN

International Journal of Advancements in Research & Technology, Volume 2, Issue 8, August ISSN International Journal of Advancements in Research & Technology, Volume 2, Issue 8, August-2013 244 Image Compression using Singular Value Decomposition Miss Samruddhi Kahu Ms. Reena Rahate Associate Engineer

More information

Parallel Hybrid Monte Carlo Algorithms for Matrix Computations

Parallel Hybrid Monte Carlo Algorithms for Matrix Computations Parallel Hybrid Monte Carlo Algorithms for Matrix Computations V. Alexandrov 1, E. Atanassov 2, I. Dimov 2, S.Branford 1, A. Thandavan 1 and C. Weihrauch 1 1 Department of Computer Science, University

More information

SELECTIVE ALGEBRAIC MULTIGRID IN FOAM-EXTEND

SELECTIVE ALGEBRAIC MULTIGRID IN FOAM-EXTEND Student Submission for the 5 th OpenFOAM User Conference 2017, Wiesbaden - Germany: SELECTIVE ALGEBRAIC MULTIGRID IN FOAM-EXTEND TESSA UROIĆ Faculty of Mechanical Engineering and Naval Architecture, Ivana

More information

Cluster Analysis. Mu-Chun Su. Department of Computer Science and Information Engineering National Central University 2003/3/11 1

Cluster Analysis. Mu-Chun Su. Department of Computer Science and Information Engineering National Central University 2003/3/11 1 Cluster Analysis Mu-Chun Su Department of Computer Science and Information Engineering National Central University 2003/3/11 1 Introduction Cluster analysis is the formal study of algorithms and methods

More information

Driven Cavity Example

Driven Cavity Example BMAppendixI.qxd 11/14/12 6:55 PM Page I-1 I CFD Driven Cavity Example I.1 Problem One of the classic benchmarks in CFD is the driven cavity problem. Consider steady, incompressible, viscous flow in a square

More information

Noise Model. Important Noise Probability Density Functions (Cont.) Important Noise Probability Density Functions

Noise Model. Important Noise Probability Density Functions (Cont.) Important Noise Probability Density Functions Others -- Noise Removal Techniques -- Edge Detection Techniques -- Geometric Operations -- Color Image Processing -- Color Spaces Xiaojun Qi Noise Model The principal sources of noise in digital images

More information

The exam is closed book, closed notes except your one-page (two-sided) cheat sheet.

The exam is closed book, closed notes except your one-page (two-sided) cheat sheet. CS 189 Spring 2015 Introduction to Machine Learning Final You have 2 hours 50 minutes for the exam. The exam is closed book, closed notes except your one-page (two-sided) cheat sheet. No calculators or

More information

AMS526: Numerical Analysis I (Numerical Linear Algebra)

AMS526: Numerical Analysis I (Numerical Linear Algebra) AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 1: Course Overview; Matrix Multiplication Xiangmin Jiao Stony Brook University Xiangmin Jiao Numerical Analysis I 1 / 21 Outline 1 Course

More information

Image Coding with Active Appearance Models

Image Coding with Active Appearance Models Image Coding with Active Appearance Models Simon Baker, Iain Matthews, and Jeff Schneider CMU-RI-TR-03-13 The Robotics Institute Carnegie Mellon University Abstract Image coding is the task of representing

More information

ECG782: Multidimensional Digital Signal Processing

ECG782: Multidimensional Digital Signal Processing Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu ECG782: Multidimensional Digital Signal Processing Spring 2014 TTh 14:30-15:45 CBC C313 Lecture 06 Image Structures 13/02/06 http://www.ee.unlv.edu/~b1morris/ecg782/

More information

An Approach for Reduction of Rain Streaks from a Single Image

An Approach for Reduction of Rain Streaks from a Single Image An Approach for Reduction of Rain Streaks from a Single Image Vijayakumar Majjagi 1, Netravati U M 2 1 4 th Semester, M. Tech, Digital Electronics, Department of Electronics and Communication G M Institute

More information

LEVEL-SET METHOD FOR WORKSPACE ANALYSIS OF SERIAL MANIPULATORS

LEVEL-SET METHOD FOR WORKSPACE ANALYSIS OF SERIAL MANIPULATORS LEVEL-SET METHOD FOR WORKSPACE ANALYSIS OF SERIAL MANIPULATORS Erika Ottaviano*, Manfred Husty** and Marco Ceccarelli* * LARM: Laboratory of Robotics and Mechatronics DiMSAT University of Cassino Via Di

More information

Image Restoration and Reconstruction

Image Restoration and Reconstruction Image Restoration and Reconstruction Image restoration Objective process to improve an image, as opposed to the subjective process of image enhancement Enhancement uses heuristics to improve the image

More information

Multi-azimuth velocity estimation

Multi-azimuth velocity estimation Stanford Exploration Project, Report 84, May 9, 2001, pages 1 87 Multi-azimuth velocity estimation Robert G. Clapp and Biondo Biondi 1 ABSTRACT It is well known that the inverse problem of estimating interval

More information

Image Enhancement Techniques for Fingerprint Identification

Image Enhancement Techniques for Fingerprint Identification March 2013 1 Image Enhancement Techniques for Fingerprint Identification Pankaj Deshmukh, Siraj Pathan, Riyaz Pathan Abstract The aim of this paper is to propose a new method in fingerprint enhancement

More information

Clustering and Visualisation of Data

Clustering and Visualisation of Data Clustering and Visualisation of Data Hiroshi Shimodaira January-March 28 Cluster analysis aims to partition a data set into meaningful or useful groups, based on distances between data points. In some

More information

An ICA based Approach for Complex Color Scene Text Binarization

An ICA based Approach for Complex Color Scene Text Binarization An ICA based Approach for Complex Color Scene Text Binarization Siddharth Kherada IIIT-Hyderabad, India siddharth.kherada@research.iiit.ac.in Anoop M. Namboodiri IIIT-Hyderabad, India anoop@iiit.ac.in

More information

Reconstruction Algorithms for Compound Eye Images Using Lens Diversity

Reconstruction Algorithms for Compound Eye Images Using Lens Diversity Reconstruction Algorithms for Compound Eye Images Using Lens Diversity Sally L. Wood Department of Electrical Engineering Santa Clara University Santa Clara, California, 95053 USA Dinesh Rajan Marc P.

More information

Image Restoration and Reconstruction

Image Restoration and Reconstruction Image Restoration and Reconstruction Image restoration Objective process to improve an image Recover an image by using a priori knowledge of degradation phenomenon Exemplified by removal of blur by deblurring

More information

CS 450 Numerical Analysis. Chapter 7: Interpolation

CS 450 Numerical Analysis. Chapter 7: Interpolation Lecture slides based on the textbook Scientific Computing: An Introductory Survey by Michael T. Heath, copyright c 2018 by the Society for Industrial and Applied Mathematics. http://www.siam.org/books/cl80

More information

PATTERN CLASSIFICATION AND SCENE ANALYSIS

PATTERN CLASSIFICATION AND SCENE ANALYSIS PATTERN CLASSIFICATION AND SCENE ANALYSIS RICHARD O. DUDA PETER E. HART Stanford Research Institute, Menlo Park, California A WILEY-INTERSCIENCE PUBLICATION JOHN WILEY & SONS New York Chichester Brisbane

More information

Image Processing Lecture 10

Image Processing Lecture 10 Image Restoration Image restoration attempts to reconstruct or recover an image that has been degraded by a degradation phenomenon. Thus, restoration techniques are oriented toward modeling the degradation

More information

Computer-aided design and visualization of regular algorithm dependence graphs and processor array architectures

Computer-aided design and visualization of regular algorithm dependence graphs and processor array architectures Computer-aided design and visualization of regular algorithm dependence graphs and processor array architectures Oleg Maslennikow, Natalia Maslennikowa, Przemysław Sołtan Department of Electronics Technical

More information

A hybrid GMRES and TV-norm based method for image restoration

A hybrid GMRES and TV-norm based method for image restoration A hybrid GMRES and TV-norm based method for image restoration D. Calvetti a, B. Lewis b and L. Reichel c a Department of Mathematics, Case Western Reserve University, Cleveland, OH 44106 b Rocketcalc,

More information

Chapter 11 Image Processing

Chapter 11 Image Processing Chapter Image Processing Low-level Image Processing Operates directly on a stored image to improve or enhance it. Stored image consists of a two-dimensional array of pixels (picture elements): Origin (0,

More information

Predictive Interpolation for Registration

Predictive Interpolation for Registration Predictive Interpolation for Registration D.G. Bailey Institute of Information Sciences and Technology, Massey University, Private bag 11222, Palmerston North D.G.Bailey@massey.ac.nz Abstract Predictive

More information

Experiments with Edge Detection using One-dimensional Surface Fitting

Experiments with Edge Detection using One-dimensional Surface Fitting Experiments with Edge Detection using One-dimensional Surface Fitting Gabor Terei, Jorge Luis Nunes e Silva Brito The Ohio State University, Department of Geodetic Science and Surveying 1958 Neil Avenue,

More information

CLASSIFICATION AND CHANGE DETECTION

CLASSIFICATION AND CHANGE DETECTION IMAGE ANALYSIS, CLASSIFICATION AND CHANGE DETECTION IN REMOTE SENSING With Algorithms for ENVI/IDL and Python THIRD EDITION Morton J. Canty CRC Press Taylor & Francis Group Boca Raton London NewYork CRC

More information

Digital Image Processing. Chapter 7: Wavelets and Multiresolution Processing ( )

Digital Image Processing. Chapter 7: Wavelets and Multiresolution Processing ( ) Digital Image Processing Chapter 7: Wavelets and Multiresolution Processing (7.4 7.6) 7.4 Fast Wavelet Transform Fast wavelet transform (FWT) = Mallat s herringbone algorithm Mallat, S. [1989a]. "A Theory

More information

Analysis of Planar Anisotropy of Fibre Systems by Using 2D Fourier Transform

Analysis of Planar Anisotropy of Fibre Systems by Using 2D Fourier Transform Maroš Tunák, Aleš Linka Technical University in Liberec Faculty of Textile Engineering Department of Textile Materials Studentská 2, 461 17 Liberec 1, Czech Republic E-mail: maros.tunak@tul.cz ales.linka@tul.cz

More information

(Sparse) Linear Solvers

(Sparse) Linear Solvers (Sparse) Linear Solvers Ax = B Why? Many geometry processing applications boil down to: solve one or more linear systems Parameterization Editing Reconstruction Fairing Morphing 2 Don t you just invert

More information

Expectation and Maximization Algorithm for Estimating Parameters of a Simple Partial Erasure Model

Expectation and Maximization Algorithm for Estimating Parameters of a Simple Partial Erasure Model 608 IEEE TRANSACTIONS ON MAGNETICS, VOL. 39, NO. 1, JANUARY 2003 Expectation and Maximization Algorithm for Estimating Parameters of a Simple Partial Erasure Model Tsai-Sheng Kao and Mu-Huo Cheng Abstract

More information