Function

vImageConvert_16SToF(_:_:_:_:_:)

Converts an image in a special planar format—in which each pixel value is a 16-bit signed integer—image to a PlanarF format.

Declaration

func vImageConvert_16SToF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ offset: Float, _ scale: Float, _ flags: vImage_Flags) -> vImage_Error

Parameters

src

A pointer to a vImage buffer structure that contains the source image (for which each pixel value is a 16-bit signed integer) whose data you want to overwrite.

dest

A pointer to a vImage buffer data structure. You're responsible for filling out the height, width, and rowBytes fields of this structure, and for allocating a data buffer of the appropriate size. On return, the data buffer this structure points to contains the destination image data. When you no longer need the data buffer, you must deallocate the memory.

offset

The offset value to add to each pixel.

scale

The value to multiply each pixel by.

flags

The options to use when performing the operation. If you plan to perform your own tiling or use multithreading, pass kvImageDoNotTile.

Return Value

kvImageNoError; otherwise, one of the error codes described in Data Types and Constants.

Discussion

The function changes each pixel value to a floating-point value, scales each value and then adds the offset value. The calculation is

    resultPixel = (float) sourcePixel * scale + offset

The functions vImageConvert_16SToF and vImageConvert_FTo16S are inverse transformations when you use the same offset and scale values for each. (The inversion is not precise due to round-off error.) This requires the two functions to use these values differently (and in a different order).

See Also

Converting from 16-Bit Format

func vImageConvert_16UToF(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, Float, Float, vImage_Flags) -> vImage_Error

Converts an image in a special planar format—in which each pixel value is a 16-bit unsigned integer—image to a PlanarF format.

func vImageConvert_16UToPlanar8(UnsafePointer<vImage_Buffer>, UnsafePointer<vImage_Buffer>, vImage_Flags) -> vImage_Error

Converts an image in a special planar format—in which each pixel value is a 16-bit unsigned integer—image to a Planar8 image.