Function

vDSP_f5x5(_:_:_:_:_:)

Filters a single-precision image by performing a 2D convolution with a 5 x 5 kernel.

Declaration

func vDSP_f5x5(_ __A: UnsafePointer<Float>, _ __NR: vDSP_Length, _ __NC: vDSP_Length, _ __F: UnsafePointer<Float>, _ __C: UnsafeMutablePointer<Float>)

Parameters

__A

Single-precision real input matrix.

__NR

The number of rows in A. The value of NR must be greater than or equal to 5.

__NC

The number of columns in A. The value of NC must be even and greater than or equal to 6.

__F

Single-precision real 5x5 kernel.

__C

Single-precision real result matrix.

Discussion

This function filters an image by performing a two-dimensional convolution with a 5x5 kernel (F) on the input matrix A and storing the resulting image in the output matrix C.

This function zero-pads the perimeter of the output image with a border of width 1:

mathematical formula

See Also

Fixed-Size Kernel

static func convolve<T, U>(T, rowCount: Int, columnCount: Int, with3x3Kernel: U) -> [Double]

Returns the 2D convolution of a double-precision vector with a 3 x 3 kernel.

static func convolve<T, U>(T, rowCount: Int, columnCount: Int, with3x3Kernel: U) -> [Float]

Returns the 2D convolution of a single-precision vector with a 3 x 3 kernel.

static func convolve<T, U, V>(T, rowCount: Int, columnCount: Int, with3x3Kernel: U, result: inout V)

Calculates the 2D convolution of a double-precision vector with a 3 x 3 kernel.

static func convolve<T, U, V>(T, rowCount: Int, columnCount: Int, with3x3Kernel: U, result: inout V)

Calculates the 2D convolution of a single-precision vector with a 3 x 3 kernel.

static func convolve<T, U>(T, rowCount: Int, columnCount: Int, with5x5Kernel: U) -> [Double]

Returns the 2D convolution of a double-precision vector with a 5 x 5 kernel.

static func convolve<T, U>(T, rowCount: Int, columnCount: Int, with5x5Kernel: U) -> [Float]

Returns the 2D convolution of a single-precision vector with a 5 x 5 kernel.

static func convolve<T, U, V>(T, rowCount: Int, columnCount: Int, with5x5Kernel: U, result: inout V)

Calculates the 2D convolution of a double-precision vector with a 5 x 5 kernel.

static func convolve<T, U, V>(T, rowCount: Int, columnCount: Int, with5x5Kernel: U, result: inout V)

Calculates the 2D convolution of a single-precision vector with a 5 x 5 kernel.

func vDSP_f3x3(UnsafePointer<Float>, vDSP_Length, vDSP_Length, UnsafePointer<Float>, UnsafeMutablePointer<Float>)

Filters a single-precision image by performing a 2D convolution with a 3 x 3 kernel.

func vDSP_f3x3D(UnsafePointer<Double>, vDSP_Length, vDSP_Length, UnsafePointer<Double>, UnsafeMutablePointer<Double>)

Filters a double-precision image by performing a 2D convolution with a 3 x 3 kernel.

func vDSP_f5x5D(UnsafePointer<Double>, vDSP_Length, vDSP_Length, UnsafePointer<Double>, UnsafeMutablePointer<Double>)

Filters a double-precision image by performing a 2D convolution with a 5 x 5 kernel.