1. A non-transitory program storage device, readable by a programmable control device and comprising instructions stored thereon to cause the programmable control device to: obtain a first image of a scene captured at a first time, the first image having a plurality of pixels; perform a multi-resolution decomposition of the first image to generate a first multi-level pyramid representation of the first image; obtain a second image of the scene, wherein the second image is captured at a different time from the first image, and wherein each of the plurality of pixels in the first image has a corresponding pixel in the second image; perform a multi-resolution decomposition of the second image to generate a second multi-level pyramid representation of the second image; generate a level in an output multi-level pyramid representation of the scene for each level in the first and second multi-level pyramid representations of the scene in accordance with instructions to cause the programmable control device to: identify, for a group of pixels in a level of the first multi-level pyramid representation of the scene, a corresponding group of pixels in the second multi-level pyramid representation of the scene, and fuse the identified group of pixels from the first and second multi-level pyramid representations of the scene; repeat the instructions to cause the programmable control device to generate a level in the output multi-level pyramid representation of the scene for each level in the multi-resolution decomposition of the first image; combine the output multi-level pyramid representations of the scene to generate a single output image representative of the scene; and store the output image in a memory.