---
title: "convolve(_:rowCount:columnCount:withKernel:kernelRowCount:kernelColumnCount:)"
framework: accelerate
role: symbol
role_heading: Type Method
path: "accelerate/vdsp/convolve(_:rowcount:columncount:withkernel:kernelrowcount:kernelcolumncount:)-1sswe"
---

# convolve(_:rowCount:columnCount:withKernel:kernelRowCount:kernelColumnCount:)

Returns the 2D convolution of a double-precision vector with an arbitrarily sized kernel.

## Declaration

```swift
static func convolve<T, U>(_ vector: T, rowCount: Int, columnCount: Int, withKernel kernel: U, kernelRowCount: Int, kernelColumnCount: Int) -> [Double] where T : AccelerateBuffer, U : AccelerateBuffer, T.Element == Double, U.Element == Double
```

## See Also

### Arbitrary-Size Kernel

- [convolve(_:rowCount:columnCount:withKernel:kernelRowCount:kernelColumnCount:)](accelerate/vdsp/convolve(_:rowcount:columncount:withkernel:kernelrowcount:kernelcolumncount:)-267yl.md)
- [convolve(_:rowCount:columnCount:withKernel:kernelRowCount:kernelColumnCount:result:)](accelerate/vdsp/convolve(_:rowcount:columncount:withkernel:kernelrowcount:kernelcolumncount:result:)-4211m.md)
- [convolve(_:rowCount:columnCount:withKernel:kernelRowCount:kernelColumnCount:result:)](accelerate/vdsp/convolve(_:rowcount:columncount:withkernel:kernelrowcount:kernelcolumncount:result:)-5hiro.md)
