---
title: Working with underlying data
framework: accelerate
role: collectionGroup
role_heading: API Collection
path: accelerate/working-with-underlying-data
---

# Working with underlying data

Access a pixel buffer’s underlying pixel data.

## Topics

### Converting to an array

- [makeArray(of:channelCount:)](accelerate/vimage/pixelbuffer/makearray(of:channelcount:).md)

### Accessing underlying pixel values

- [withUnsafeBufferPointer(_:)](accelerate/vimage/pixelbuffer/withunsafebufferpointer(_:).md)
- [withUnsafeMutableBufferPointer(_:)](accelerate/vimage/pixelbuffer/withunsafemutablebufferpointer(_:).md)

### Accessing underlying vImage buffers

- [withUnsafePointerToVImageBuffer(_:)](accelerate/vimage/pixelbuffer/withunsafepointertovimagebuffer(_:).md)
- [withUnsafeVImageBuffer(_:)](accelerate/vimage/pixelbuffer/withunsafevimagebuffer(_:).md)
- [withUnsafeVImageBuffers(_:)](accelerate/vimage/pixelbuffer/withunsafevimagebuffers(_:).md)

### Accessing component pixel buffers

- [withUnsafePixelBuffer(at:_:)](accelerate/vimage/pixelbuffer/withunsafepixelbuffer(at:_:).md)
- [withUnsafePixelBuffers(_:)](accelerate/vimage/pixelbuffer/withunsafepixelbuffers(_:).md)

## See Also

### Pixel buffer essentials

- [Creating vImage pixel buffers](accelerate/creating-vimage-pixel-buffers.md)
- [Pixel formats](accelerate/pixel-formats.md)
