# Ticket #3367 (new enhancement)

## Default set of pixel functions

Reported by: | antonio | Owned by: | warmerdam |
---|---|---|---|

Priority: | normal | Milestone: | |

Component: | default | Version: | svn-trunk |

Severity: | normal | Keywords: | |

Cc: |

### Description

I think that it would be nice to have a base set of PixelFunctions (mod, phase, real, imag, sum, diff, etc.) bundled with the GDAL library in order to allow the user to cook its own virtual datasets and then use standard GDAL tools for further processing.

The attached path provides bot pixelfunctins and a registration function that is called inside `GDALAllRegister`.
The patch also provides a base test set.

The list of implemented functions:

* - "real": extract real part from a single raster band (just a copy if the * input is non-complex) * - "imag": extract imaginary part from a single raster band (0 for * non-complex) * - "mod": extract module from a single raster band (real or complex) * - "phase": extract phase from a single raster band (0 for non-complex) * - "conj": computes the complex conjugate of a single raster band (just a * copy if the input is non-complex) * - "sum": sum 2 or more raster bands * - "diff": computes the difference between 2 raster bands (b1 - b2) * - "mul": multilpy 2 or more raster bands * - "cmul": multiply the first band for the complex comjugate of the second * - "inv": inverse (1./x). Note: no check is performed on zero division * - "intensity": computes the intensity Re(x*conj(x)) of a single raster band * (real or complex) * - "sqrt": perform the square root of a single raster band (real only) * - "log10": compute the logarithm (base 10) of the abs of a single raster * band (real or complex): log10( abs( x ) ) * - "dB2amp": perform scale conversion from logarithmic to linear * (amplitude) (i.e. 10 ^ ( x / 20 ) ) of a single raster * band (real only) * - "dB2pow": perform scale conversion from logarithmic to linear * (power) (i.e. 10 ^ ( x / 10 ) ) of a single raster * band (real only)

## Attachments

## Change History

**Note:**See TracTickets for help on using tickets.