3
$\begingroup$

I have numerous photos from a still image camera that I would like to merge into one photo to allow for easy spotting of motion or new objects. There is a bit of noise across the photos but not very much movement (Cameras are focused on areas that do not expect much to change).

If you were to merge these photos into one image, what would you use to do it provided the tool or library had to be relatively easy to call from a python script.

I believe this technique is called Image stacking.

NOTES from comments

  1. I have snapshots taken over time from an IP camera. The jpeg compression can be sett to 100% quality to prevent the noise from overwhelming the information in each picture

  2. The camera never moves and the scene is typcially static. I can mark images that have movement or new objects. I would like to stack the images to provide a single glance report of what happend at this site

  3. There are multiple challanges. What tool to use with python bindings, how to overcome noise in the jpeg compression, and methods for detecting big changes in the scene (objects)

$\endgroup$
  • 2
    $\begingroup$ This should be on StackOverflow. It is more of a programming question than a signal processing question. $\endgroup$ – Jim Clay May 8 '12 at 3:26
  • $\begingroup$ How do you want to merge photos? Are you talking about Long shutter photography? You are saying you already have multiple images and you want to create one image that would have effect of long shutter photography? $\endgroup$ – Dipan Mehta May 13 '12 at 13:53
  • $\begingroup$ Do you just want a tool/software to do it? or do you want to know theory? $\endgroup$ – Dipan Mehta May 13 '12 at 13:55
  • $\begingroup$ I have snapshots taken over time from an IP camera. The jpeg compression can be sett to 100% quality to prevent the noise from overwhelming the information in each picture $\endgroup$ – michael May 13 '12 at 17:43
  • $\begingroup$ The camera never moves and the scene is typcially static. I can mark images that have movement or new objects. I would like to stack the images to provide a single glance report of what happend at this site $\endgroup$ – michael May 13 '12 at 17:44
1
$\begingroup$

You can composite (more) with the well-known and free imagemagick.

Another option, which I have no experience with, is imagestack.

$\endgroup$
1
$\begingroup$

Given that The camera never moves and the scene is typcially static. you can apply a very simple technique of Temporal averaging.

Assume an image sequence $I_t[x][y]$ where $t$ denotes the time of image I and x,y are the pixel indices.

You can generate a pretty nice Temporal composition by averaging or filtering the Image NOT in $x,y$ co-ordination but in $t$ co-ordinate.

For example:

$$ I_{stacked}[x][y] = {1 \over N } \sum I_t[x][y]*w_t[x][y] $$

Here $w$ is the filter weigh. As a simplistic case we can keep $w =1 $ which will result in an ordinary averaging.

Note: unlike spatial filtering where image tends to get blurred, this operation will keep the image sharpness intact and will also reduce the Noise significantly.

$\endgroup$
  • $\begingroup$ So, essentially produce an average pixel from all pixels at the same xy coordinate, and optionally provide a weight per time per pixel coordinate. $\endgroup$ – michael May 17 '12 at 20:51
  • $\begingroup$ Yes. The problem is harder only if camera is moved during capture and you need to compensate for it. $\endgroup$ – Dipan Mehta May 18 '12 at 1:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.