VectorGenerator

Description

O_VectorGenerator generates motion vector fields for each view in a stereo image. Motion vectors map the location of a pixel on one frame to the location of the corresponding pixel in a neighboring frame. It has the same dimensions as the image, but contains an (x,y) offset per pixel. These offsets show how to warp a neighboring image onto the current image.

Clearly, as most of the images in a sequence have two neighbors, each can have two vector fields. These are called the forward motion vectors where they represent the warp of the next frame on to current frame, and backward motion vectors where they represent the warp of the previous frame on to current frame.

Disparity vectors map pixels between views, whereas
motion vectors map them between frames.

O_VectorGenerator stores the motion vectors in the backward and forward motion channels. To view these in Nuke, select motion, forward, or backward from the channel set menu in the top left corner of the Viewer.

Source frame.

The motion channel generated by Ocula.

Forward motion vectors.

Backward motion vectors.

If you want to use pre-calculated motion vectors rather than generate vector fields each time you need them, you can use a Write node to render them into the channels of your stereo .exr file along with the color and disparity channels. Later, whenever you use the same image sequence, the motion vectors are loaded into Nuke together with the sequence.

Ocula’s Retimer node relies on motion vectors to produce its output, but you may also want to use O_VectorGenerator for other purposes (for example, for generating motion blur).