Adaptive subtraction using 3D curvelets: A linear optimisation framework