Saturday, January 25, 2014

Cholesky decomposition of positive definite matrices

 pascal(N) is the Pascal matrix of order N: a symmetric positive definite matrix with integer entries, made up from Pascal's triangle.  Its inverse has integer entries.

Generate a pascal matrix:

>> A = pascal(5)

A =

     1     1     1     1     1
     1     2     3     4     5
     1     3     6    10    15
     1     4    10    20    35
     1     5    15    35    70

(Ref: wikipedia)
In linear algebra, the Cholesky decomposition or Cholesky factorization is a decomposition of a Hermitian, positive-definite matrix into the product of a lower triangular matrix and its conjugate transpose, useful for efficient numerical solutions and Monte Carlo simulations. It was discovered by André-Louis Cholesky for real matrices. When it is applicable, the Cholesky decomposition is roughly twice as efficient as the LU decomposition for solving systems of linear equations.



>> R = chol(A)

R =

     1     1     1     1     1
     0     1     2     3     4
     0     0     1     3     6
     0     0     0     1     4
     0     0     0     0     1

Recover the matrix from its Cholesky decomposition and its transpose.

>> A1 = R' * R

A1 =

     1     1     1     1     1
     1     2     3     4     5
     1     3     6    10    15
     1     4    10    20    35
     1     5    15    35    70

Sunday, January 19, 2014

A = UL Linear Algebra and Its Applications, 4th Edition, Exercise.1.5.12

The question is :

Could A be factored into the product UL where U is upper triangular and L lower triangular, instead of the product LU? If so, how? Would U and L be the same in both cases?

Answer is Yes it can be. And it will be different from A = L'U'.

I found an extremely well-explained answer in the following blog and it was really helpful!

http://math.hecker.org/2011/01/13/linear-algebra-and-its-applications-exercise-1-5-12/#comment-884

Monday, January 13, 2014

List of journals in the field of robotics and vision


IEEE Transactions On Robotics(TRO)(2.536)
http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=8860

IEEE Robotics & Automation Magazine(RAM)(1.985)
http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=100

Image and Vision Computing(1.723)
http://www.journals.elsevier.com/image-and-vision-computing/

Autonomous Robots(1.5)
http://www.springer.com/engineering/robotics/journal/10514

Computer Vision and Image Understanding (1.340)
http://www.journals.elsevier.com/computer-vision-and-image-understanding/

Robotics and Autonomous Systems (1.056)
http://www.journals.elsevier.com/robotics-and-autonomous-systems/

Journal of Intelligent & Robotic Systems(0.829)
http://www.springer.com/engineering/robotics/journal/10846

International Journal of Control, Automation and Systems(IJCAS)(0.749)
http://www.springer.com/engineering/robotics/journal/12555 

International Journal of Advanced Robotic Systems(0.375)
http://www.intechopen.com/journals/international_journal_of_advanced_robotic_systems

International Journal of Robotics and Automation(0.206)
http://www.actapress.com/Content_of_Journal.aspx?journalid=147#pages

I found a helpful link of impact factor too:

http://www.hizook.com/blog/2011/11/02/impact-factors-robotics-journals

Another link for Computer Vision and Machine Learning Journals:
http://liris.cnrs.fr/christian.wolf/journalif.html
 

Saturday, January 4, 2014

combine multiple images or pdfs to generate one pdf file in Linux

Convert multiple images to pdf:

$convert -compress Zip img1.jpg img2.jpg final.pdf

Convert multiple pdfs to write as a pdf:

$gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=finished.pdf file1.pdf file2.pdf

Saturday, December 28, 2013

Solving a set of linear equations and finding the echelon form using MATLAB (LU or LR Factorization)

% factorization  of a set of n equations n unknowns...
% u + v + w = 6
% u + 2v + 2w = 11
% 2u + 3v - 4w = 3

A = [1 1 1 6; 1 2 2 11; 2 3 -4 3]
[L U] = lu(A);

% U contains the echelon form, or the upper triangular matrix.

U =

    2.0000    3.0000   -4.0000    3.0000
         0        0.5000    4.0000    9.5000
         0         0            7.0000   14.0000

Tuesday, June 25, 2013

VL_SLIC gives disjointed superpixels!!! Is it a bug?


I used vl_slic to oversegment the following image.
I tried both using the RGB image and LAB image for superpixel segmentation.
Strangely, I find some superpixels which are disconnected regions, instead of whole regions!! I do not know why, if it is a bug in my own way of giving inputs or it is an actual bug.

Here is my command for segmentation:

% Read the RGB image
fileName = [num2str(imgInd) '_rgb'];
load(sprintf(imgFile, imgInd),'imgRgb');
rgbImg = im2double(imgRgb);

% % For LAB colorspace
 regionSize  = 30; %25 ;
 regularizer = 30; %50;
 imglab =  vl_xyz2lab(vl_rgb2xyz(single(img))) ;
 structSuperpix(1).segments = vl_slic(single(imglab), regionSize, regularizer);

% For RGB colorspace
regionSize  = 25;%30;
regularizer = 0.008;%0.01;
structSuperpix(1).segments = vl_slic(single(img), regionSize, regularizer);

The input Image:

 

Broken superpixel  using LAB image:

















Broken superpixel  using RGB image:



Moreover, I need to provide different values of regularizer for equivalent shaped superpixels. Superpixels obtained with LAB colorspace appear more irregular than that using RGB colorspace.

What might be the reason?