ImageRead

This node loads images from disk, using the native resolution and the frame range for the sequence. It converts all imported sequences to Katana's linear colorspace automatically, but there are options to control this. Note that Katana's image processing operations are written assuming they are working on linear images, so be careful if you change the default input colorspace conversion. All of Katana's image processing is implemented in floating point, so files are converted to float at input.

Control (UI)

Default Value

Function

file

N/A

The image sequence to load.

For more information, refer to the Asset and File Path Widget Types in the Common Parameter Widgets.

image

rawData

disabled

When enabled, Katana skips the automatic colorspace conversion. Note that Katana is inherently a floating-point system. Thus, if integer data is loaded (at any bit-depth), the pixels are mapped to the range of [0, 1].

colorspace

auto

Select the colorspace for the file on disk. Upon load, the image sequence is converted from this colorspace to Katana's native floating-point linear colorspace. The default value, auto, means Katana tries to determine the bit depth from the file header and the colorspace from the file name. If Katana gets this wrong or the file is not named in a standard way, you can use this control to force Katana to assume the image data is in the selected colorspace and bit depth.

You can also use this control to avoid the colorspace conversion entirely by specifying lnzf or ncf, which indicate that the file is already linear. Bear in mind, however, that most image processing operations in Katana presume linear input data. The results of image processing operations in Katana are not defined, tested, or supported for non-linear image data. All operators have been implemented assuming input images are linear.

Note: This option only appears when rawData is disabled.

isProxy

disabled

When enabled, Katana assumes the loaded image sequence is a proxy rather than a full-resolution image. This is preferable to manually resizing the image, as it is more efficient when proxy-rendering is enabled.

image > isProxy: enabled > fullResFrame

[resolution]

Dependent on Project Settings

When isProxy is enabled, you can use this control to select the resolution for the full-resolution image.

left

timing.missingFrameBounds.left

Sets the left position of the rectangle.

bottom

timing.missingFrameBounds.bottom

Sets the bottom position of the rectangle.

width

timing.missingFrameBounds.width

Sets the width of the rectangle.

height

timing.missingFrameBounds.height

Sets the height of the rectangle.

timing

frame

frame

Sets the frame number actually read from disk prior to applying the inMode, outMode, firstFrame, and lastFrame settings. When a downstream node requests an image from an ImageRead node, ImageRead evaluates this control to determine the frame number to read from disk (by default this is the current time). The result is compared against the firstFrame and lastFrame values and, if necessary, any remapping of the actual frame number is done based on the inMode and outMode settings.

You can retime or offset your input by using an expression or a curve here, but note that currently Katana only reads the nearest frame and doesn't generate in-between frames (no optical flow interpolation). The value is forced to an integer at the time it's used, so you don't need to worry about this if you don't want to.

inMode

Black

Sets what to do when a frame is required at a time value prior to firstFrame:

BlackfirstFrame to black.

Freeze

Repeat

Mirror

outMode

Black

Sets what to do when a frame is required at a time value after lastFrame:

Black -lastFrame to black.

Freeze

Repeat

Mirror

firstFrame

globals.inTime

Sets the first valid frame of the sequence of images on disk. If a frame prior to firstFrame is required, its contents are determined based on inMode.

If the file control has frame range values in it and this control is left at its default value, the value in the file control is obeyed.

lastFrame

globals.outTime

Sets the last valid frame of the sequence of images on disk. If a frame beyond lastFrame is required, its contents are determined based on outMode.

If the file control has frame range values in it and this control is left at its default value, the value in the file control is obeyed.

lockSettings

disabled

When enabled, the firstFrame, lastFrame, inMode, and outMode values aren't automatically updated when a new file sequence is chosen.

missingFrames

Error

Specifies what to do if a frame is not found:

Error - have the render fail with an error.

Black - replace any missing frames with black.

Nearest - replace any missing frames with the nearest frame.

Checkerboard - replace any missing frames with a checkerboard image.

Note:  If no frames in the image sequence are present, the render fails regardless of this control's setting.

advanced

includeInErrorChecking

enabled

When enabled, Katana includes this node when it automatically checks ImageRead nodes for errors.

When disabled, Katana excludes this node when it automatically checks ImageRead nodes for errors.