Contents

planarBuffers()

Returns four 8-bit planar pixel buffers that contain the deinterleaved channels of the 32-bit buffer.

Declaration

func planarBuffers() -> [vImage.PixelBuffer<vImage.Planar8>]

Return Value

An array of planar pixel buffers.

Discussion

This function treats 32-bit floating point pixels represented by the range 0 ... 1 as the Pixel_8 range `0 … 255`.

Use this function to deinterleave a buffer and create four new planar buffers that contain copies of each source channel. For example, the following code generates four 1 x 1 planar buffers from an vImage.InterleavedFx4 pixel buffer:

let src = vImage.PixelBuffer<vImage.InterleavedFx4>(
    pixelValues: [0.125, 0.25, 0.5, 1] as [Float],
    size: vImage.Size(width: 1, height: 1))

let planarBuffers: [vImage.PixelBuffer<vImage.Planar8>]  = src.planarBuffers()

// Prints "[32] [64] [128] [255]"
for planarBuffer in planarBuffers {
    print(planarBuffer.array)
}

See Also

Generating planar buffers from interleaved buffers