3

I am completing a school project on distributed computing. I have been granted access to a Blue Gene super computer to run an algorithm to create static Mandelbrot set images. I have the algorithm created and running. The image sizes are 800x600.

My project is to combine these images to create a video with a zooming effect. I am new to creating videos from still images and I am looking for some clarification on a few things.

  1. At what frame/rate should I be aiming for? I want it to be as smooth as possible.
  2. I want the zooming to be quite seamless, how quickly should I be zooming in with the images? My algorithm can be quite precise.

If someone could let me know or post some resources on the matter. I feel this should be similar to creating cartoon like zooming.

Mathew A

An example image created with the algorithm

2 Answers 2

1

Interesting question. First, here's a question for you: can your supercomputer actually calculate and render, in real time, an animated zoom on images so complex?

My guess (only a guess) is that it will need more than 1/30 sec. to complete each frame (let's assume 30 frames per second as a minimal frame rate in which to achieve a smooth zoom). If that's the case then you just need to spit out x number of images (bitmaps) that can be played back later, at 30 f.p.s., by any non-super computer.

A zoom is just a scale change. Assuming that you don't have in mind a particular rate of change in scale -- in other words, that you don't need to get to a particular scale in a particular time -- try 1% of scale-increase per frame (I'll check this and post an update if you can do much better).

Satisfactory zooming will also involve easing at the head and tail of the zoom. If you need an easing algorithm, just ask. It probably won't be in the language you're using but you'll be able to figure it out.


UPDATE -- I just read something about Blue Gene. Maybe it can do 800x600 Mandlebrodt images @ 30 f.p.s.! But the same rate-of-change applies -- smoothness is a human perception thing.

4
  • I am unable to do it in real-time, as I have to set a job and it could take up to 24 hours to find the free cycles to run. I have to set it and I will report back how it goes! Thanks!
    – arty
    Commented Mar 16, 2014 at 21:37
  • Since you're techy and math-y, you've probably already figured out that the amount of zoom on each frame is based on the size of the previous frame. That is, you don't want frame zoom to be based on the original frame size, like 100%, 90%, 80%, 70% because that would lead quickly to 0%! The "size" or "zoom" of each frame should be a percentage of the previous frame. 99% would give a slow, dreamy zoom. 90% would give a fast, racing zoom. Commented Mar 17, 2014 at 18:28
  • Well, math is just a tool; there are no inflexible rules about how to use it. You say “...the amount of zoom on each frame is based on the size of the previous frame ...” What’s wrong with basing the scale change on the ORIGINAL frame-size? If you start with an 800x600 frame and you zoom out in thirty 1-per-cent, linear, steps (i.e. first 99% of orig, then 98% of orig,...) you end up at 568 x 426. If you zoom out down geometrically (i.e. first 99% of orig., then 99% of frame 2, ...) you end up at 598 x 448. A 3% difference over a second (assuming 30 f.p.s.). Is that an important difference?
    – Craig
    Commented Mar 17, 2014 at 19:45
  • arty - please DO report back on your Blue Gene zoom!
    – Craig
    Commented Mar 18, 2014 at 16:43
0

I'm going to suggest 24FPS due to the fact this is film framerate where as 30FPS is television. Alternatively you could try 48FPS and 60FPS as those have the benefit for feeling more "real" or "hyperreal" to the human eye.

1
  • But why is film a better option than television?
    – AJ Henderson
    Commented Mar 29, 2014 at 16:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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