---
title: Transforming with a gamma function
framework: accelerate
role: collectionGroup
role_heading: API Collection
path: accelerate/transforming-with-a-gamma-function
---

# Transforming with a gamma function

Use gamma functions to apply color transformations to images.

## Overview

Overview Gamma correction functions correct the brightness profile of an image by applying an exponent to each pixel in an image. The piecewise gamma correction functions allow you to add a linear transformation to pixels below a certain boundary. You can use gamma correction functions to prepare an image to display or print on a particular device.

## Topics

### Applying a gamma function

- [vImageCreateGammaFunction(_:_:_:)](accelerate/vimagecreategammafunction(_:_:_:).md)
- [Gamma function types](accelerate/1584480-gamma-function-types.md)
- [vImageGamma_Planar8toPlanarF(_:_:_:_:)](accelerate/vimagegamma_planar8toplanarf(_:_:_:_:).md)
- [vImageGamma_PlanarFtoPlanar8(_:_:_:_:)](accelerate/vimagegamma_planarftoplanar8(_:_:_:_:).md)
- [vImageGamma_PlanarF(_:_:_:_:)](accelerate/vimagegamma_planarf(_:_:_:_:).md)
- [vImageDestroyGammaFunction(_:)](accelerate/vimagedestroygammafunction(_:).md)
- [Adjusting saturation and applying tone mapping](accelerate/adjusting-saturation-and-applying-tone-mapping.md)

### Applying a piecewise gamma function

- [Adjusting the brightness and contrast of an image](accelerate/adjusting-the-brightness-and-contrast-of-an-image.md)
- [vImagePiecewiseGamma_Planar8(_:_:_:_:_:_:_:)](accelerate/vimagepiecewisegamma_planar8(_:_:_:_:_:_:_:).md)
- [vImagePiecewiseGamma_Planar8toPlanar16Q12(_:_:_:_:_:_:_:)](accelerate/vimagepiecewisegamma_planar8toplanar16q12(_:_:_:_:_:_:_:).md)
- [vImagePiecewiseGamma_Planar8toPlanarF(_:_:_:_:_:_:_:)](accelerate/vimagepiecewisegamma_planar8toplanarf(_:_:_:_:_:_:_:).md)
- [vImagePiecewiseGamma_Planar16Q12(_:_:_:_:_:_:_:)](accelerate/vimagepiecewisegamma_planar16q12(_:_:_:_:_:_:_:).md)
- [vImagePiecewiseGamma_Planar16Q12toPlanar8(_:_:_:_:_:_:_:)](accelerate/vimagepiecewisegamma_planar16q12toplanar8(_:_:_:_:_:_:_:).md)
- [vImagePiecewiseGamma_PlanarF(_:_:_:_:_:_:_:)](accelerate/vimagepiecewisegamma_planarf(_:_:_:_:_:_:_:).md)
- [vImagePiecewiseGamma_PlanarFtoPlanar8(_:_:_:_:_:_:_:)](accelerate/vimagepiecewisegamma_planarftoplanar8(_:_:_:_:_:_:_:).md)

### Applying a symmetric piecewise gamma function

- [vImageSymmetricPiecewiseGamma_Planar16Q12(_:_:_:_:_:_:_:)](accelerate/vimagesymmetricpiecewisegamma_planar16q12(_:_:_:_:_:_:_:).md)
- [vImageSymmetricPiecewiseGamma_PlanarF(_:_:_:_:_:_:_:)](accelerate/vimagesymmetricpiecewisegamma_planarf(_:_:_:_:_:_:_:).md)

## See Also

### Applying color transforms to images

- [Transforming with lookup tables](accelerate/transforming-with-lookup-tables.md)
- [Transforming with polynomials](accelerate/transforming-with-polynomials.md)
- [Transforming with matrix multiplication](accelerate/transforming-with-matrix-multiplication.md)
- [Applying a flood fill to an image](accelerate/applying-a-flood-fill-to-an-image.md)
