1. A method of estimating a sparse signal from a measured signal using a transform matrix, the method comprising the following operations performed by a processor: receiving a measured signal, the measured signal derived from a sensor; determining a partial contribution to the sparse signal; determining a residual by subtracting the partial contribution from the measured signal; and iteratively determining further contributions to the sparse signal, wherein an iteration comprises: identifying a first candidate column of the transform matrix, the first candidate column being a column of the transform matrix which is most correlated with the residual at the start of the iteration; calculating a condition indicator, the condition indicator being an indication of a condition of a matrix formed by columns of the transform matrix selected in previous iterations and the first candidate column; comparing the condition indicator with a threshold; if the condition indicator is above the threshold, selecting the first candidate column as a selected candidate column; if the condition indicator is below the threshold, identifying a second column of the transform matrix as a second candidate column and selecting the second candidate column as the selected candidate column; determining a contribution to the sparse signal for the iteration from the selected candidate column; and calculating a new residual by subtracting the contribution to the sparse signal for the iteration from the residual at the start of the iteration.