SFM code

Ryan Kennedy put our SAGE GROUSE code for Structure from Motion online. We’ve also updated the preprint of our paper on this topic. Please let us know if you have any questions!

Robust Blind Calibration

My student John Lipor and I have had our work on robust blind calibration published in ICASSP. Previous work showed that it is possible to blindly calibrate sensor gains only knowing the signal subspace. This new algorithm allows you to calibrate sensor gains even when your knowledge of the signal subspace is inaccurate. John has shared his code for robust blind calibration here.


Jun He, Dejiao Zhang, and I are happy to share our preprint and our code on t-GRASTA, a variant of GRASTA which includes estimation of geometric transformations of the data (such as translations and rotations of images, so that we can deal with jitter).


The GRASTAcam code is availabile for download here. This code uses OpenCV to run Grasta using the camera on your computer. It was written by Arthur Szlam (with makefile by Jia Xu, Thanks Jia!) in C using the Intel MKL library.


Grassmannian Robust Adaptive Subspace Tracking Algorithm (GRASTA), is an algorithm for subspace identification and tracking in the presence of corrupted and missing data. The algorithm is derived using the Augmented Lagrangian for an l1 cost function. See our page on GRASTA for code and a description of the algorithm.



Grassmannian Rank-One Update Subspace Estimation (GROUSE), is an online algorithm for subspace identification and tracking when data vectors are incomplete. See our page on GROUSE for details about the algorithm. GROUSE can be used for matrix completion; download grouse.m for the Matlab function and rungrouse.m to see how to run it.

Generating all rooted trees

Matlab code to enumerate all possible trees on n nodes: I wrote this awhile ago when I needed to enumerate all possible trees that could be formed by a set of n nodes. There are n^(n-1) such trees. This code uses the fact that there is a bijection between these trees and Prufer sequences. Here is tree_enumeration.m, which is a skeleton file for running code on all possible trees, and here is the function for generating the next tree, get_next_tree.m.

Compressed Sensing in Audio Signals

A demo for Compressed Sensing in Audio Signals can be found here, along with matlab code for the examples.

Blind Calibration

Blind Calibration examples and code can be found here.