DIPlib Documentation - ©1995-2015 Quantitative Imaging Group, Delft University of Technology.

# ImageReadJPEG

Read JPEG image from file (in dipIO)

## SYNOPSIS

`#include "dipio_jpeg.h"`

dip_Error dipio_ImageReadJPEG ( image, filename, imageNumber, photometric )

## FUNCTION

This function reads an image from the JPEG file and puts it in `image`. `image` must be allocated before calling this function. `photometric` is set to either `DIPIO_PHM_RGB` or `DIPIO_PHM_GREYVALUE`. If `photometric` is 0, the image will be read in as grey-value, even if color information is present in the file. Color images are allocated as 3D images, with the different samples along the 3rd. dimension.

## ARGUMENTS

Data type | Name | Description
`dip_Image` | `image` | Output image
`dip_String` | `filename` | File name
`dipio_PhotometricInterpretation *` | `photometric` | Photometric interpretation

The enumerator `dipio_PhotometricInterpretation` contains the following constants:

Name | Description
`DIPIO_PHM_GREYVALUE` | No colour information present; it's a grey-value image.
`DIPIO_PHM_RGB` | RGB image (the first three planes are red, green and blue)
`DIPIO_PHM_RGB_NONLINEAR` | Non-linear R'G'B' image (RGB channels to the power of 0.4)
`DIPIO_PHM_CMY` | CMY image (the first three planes are cyan, magenta and yellow)
`DIPIO_PHM_CMYK` | CMYK image (the first four planes are cyan, magenta, yellow and black)
`DIPIO_PHM_CIELUV` | CIE L*u'v' image (the first three planes are luminosity, u* and v*)
`DIPIO_PHM_CIELAB` | CIE L*a*b* image (the first three planes are luminosity, a* and b*)
`DIPIO_PHM_CIEXYZ` | CIE XYZ (the first three planes are X, Y and Z)
`DIPIO_PHM_CIEYXY` | CIE Yxy (the first three planes are Y, x and y)
`DIPIO_PHM_HCV` | HCV image (the first three planes are hue, chroma and value)
`DIPIO_PHM_HSV` | HSV image (the first three planes are hue, saturation and value)
`DIPIO_PHM_DEFAULT` | Same as `DIPIO_PHM_GREYVALUE`
`DIPIO_PHM_GENERIC` | Anything can be coded in the channels; the same as `DIPIO_PHM_CMYK`

Most file formats support only some of these.

## SOFTWARE

This function uses `libjpeg` (version 6b or later). Copyright (c)1994-1998, Thomas G. Lane.

## SEE ALSO

`ImageRead`, `ImageReadColour`, `ImageWriteJPEG`, `ImageIsJPEG`, `ImageReadJPEGInfo`, `Colour2Gray`