Institute of Information Theory and Automation

## S-BSS-vecDC: Sparse Source Separation and Deconvolution Tool

The algorithm solves blind source separation (BSS) problem
(1) D = AXT + E,
where D = [d1, …,  dn] is the data matrix with observed images stored in columns, A = [a1, …,  ar] is the matrix with source images stored in columns, X = [x1, …,  xr] is the matrix composed of time-activity curves (TACs) stored in columns, and E is the noise matrix of the same size as the matrix D. The n is the lenght of an observed sequence and r is expected or number of sources. Each TAC is expected to be a result of convolution between common input function, vector b, and tissue-specific convolution kernel uk; hence, matrix U = [u1, …,  ur] arrise. The detail describtion is given in our paper.

### Usage

The S-BSS-vecDC algorithm is provided by function SBSSvecDC_alg.m:
function[A, X, info] = SBSSvecDC_alg(scD, r_fix, iterations)
where inputs are:
scD data matrix D,
r_fix positive integer for fixed number of sources of 0 for automatic selection of the number of sources within the algorithm,
interations fixed number of iterations for given non-zeros r_fix, unnecessary for r_fix = 0.
and outputs are:
A the matrix with source-images in columns,
X the matrix with time-activity curves in columns,
info structure with additional information: info.Xi is matrix of the same size as A with variances of each pixel, info.U is the matrix with convolution kernels in columns, and info.b is the vector with input function.

### Example Run

The example run of the algorithm is shown in MATLAB script example_run.m. Here:
1. The phantom data D is loaded from prearranged file.
2. The data is preprocessed. The zero-activity pixels and images are croped and data can be scaled (scaling = 1) using correspondence analysis (appropriate for dynamic scintigraphy), scaling = 0 otherwise.
3. The fixed number of sources and iterations is chosen or automated selection of number of sources is selected (r = 0).
4. Run function SBSSvecDC_alg.m.
5. The results of the algorithm is postprocessed. The zero-activity pixels and images are returned and the results are rescaled (if scaling = 1);
6. The results are printed in 2-column (print_type = 1) or 4-column (print_type = 2) format.
2014-09-15 18:06