Friday, February 28, 2014

Independent Component Analysis. ICA Neural Network. Java implementation

Independent component analysis (ICA) aims to solve problem of signals separation from their linear mixture. ICA is a special case of blind source separation, when separation performed without the aid of information (or with very little information) about the source signals or the process of signal mixing.  Although blind source separation problem in general is underdetermined, the useful solution can be obtained under a certain assumptions.

ICA model assumes that there are  independent signals  and some mixing matrix  :

Monday, February 24, 2014

2D Cubic B-spline Interpolation via Digital Filtering. Java example

Image interpolation is very important operation in digital image processing and is used for images scaling and rotation, image compressing, image reconstruction and so on.  
Interpolation algorithms are differentiated by quality and efficiency. Splines introduce powerful instrument for image interpolation providing good images quality and computational efficiency. This is possible by using efficient filtering technique for processing images represented in terms of B-splines basis functions. The B-spline of degree 3 (cubic B-spline) is widely used for performing high-quality interpolation due to its minimum curvature property.
In my previous post 1D Cubic B-spline Interpolation via Digital Filtering. Java example I described 1-d signal interpolation using B-spines basis functions. The image itself is the 2-d signal represented by a set of uniformly spaces sampled values. It's easy to extend splines to higher dimensions  by using tensor-product basis functions. 

Sunday, January 19, 2014

1D Cubic B-spline Interpolation via Digital Filtering. Java example

This post based on my previous post “Introduction to splines. B-spline” . In spline interpolation problem coefficients are determined such as that the function goes through the data points exactly. For splines of degree 0 and 1 the B-spline coefficients are identical to the signal samples For higher-degree splines the procedure is more complicated. 
Traditionally, the B-spline interpolation problem has been approached using a matrix framework and setting up a system of equations, which is then solved using standard numerical techniques. But it was showed by M. Unser [1, 2, 3] that this problem could be solved using simpler digital filtering techniques.

Saturday, January 18, 2014

Introduction to splines. B-spline

This is the introduction post about using splines mathematical apparatus for signal processing. The representation of signals using splines has many useful properties and introduces effective signal processing tool. 

The Spline is a smooth, piecewise-defined polynomial function. Spline has a high smoothness degree at pieces joining points, which are called knots.