The vertigo shot, or dolly zoom, is often use in movies to create a disorienting effect, where the background appears to change in size relative to the subject while the subject remains the same size. The effect is usually created in movies by changing the focal length of the lens while the camera is moving on a dolly away from the subject.
To replicate this effect, I took a series of photographs on my DSLR of a subject in the same position, but I back away from the subject and zoom into it so that it remains the same size in the image. Some challenges I faced where slight in exposure or color balance from image to image, which made it difficult to make the effect believable. I found the grid on my DSLR to be useful for aligning the subject in each of the photos, and in addition, using a flat surface like a tripod or table, helped with the picture taking.
In this project, I created fake miniatures by simulating the tilt shift effect, which narrows the perceived depth of field, creates the illusion that the lens was really close to the subject and hence the illusion that subject is really small. The effect can be achieved by selecting a focus line, defining the size of the depth of field, and increasingly blurring the image around this area.
To allow the user to define a focus line, I use ginput and ask the user to select two points in the image, and then I compute a line of a specified thickness (depth of field) that runs through these points. The thinner the line, the narrower the depth of field.
To blur the image increasingly around the focused area, I create masks of increasing size around the region and store them in a pyramid. At the same time, I create an image pyramid which stores the result of applying Gaussian filters with increasingly large sigmas.
To reconstruct the image, at each layer in the pyramid, I compute the image resulting from the mask * image + (1-mask) * blurred original image at that layer and store it as the image for the next layer In the pyramid. As a result, regions further away from the focus line will have a larger blur effect.
To enhance the miniature effect even more, I enhanced the saturation of the resulting blurred image my converting the image from the RGB color space to HSV, increasing the saturation channel by a specified factor, and converting the image back to the RGB channel.
Below I’ve shone the masks that I used for the NYC ambulance image as well as some example results.
Mask 1
Mask 2
Mask 3
Mask 4
My own photo
Effect applied to my own photo
My own photo
Effect applied to my own photo
Photo taken by Alex Lorenz
Effect applied to photo taken by Alex Lorenz
Photo taken by Pedro Szekely
Effect applied to photo taken by Pedro Szekely