# `Image.Interpretation`
[🔗](https://github.com/elixir-image/image/blob/v0.65.0/lib/image/enum/interpretation.ex#L1)

Defines the known color interpretations to which
an image can be converted to and from.

# `t`

```elixir
@type t() ::
  :grey16
  | :rgb16
  | :fourier
  | :yxy
  | :labs
  | :labq
  | :multiband
  | :scrgb
  | :cmc
  | :histogram
  | :bw
  | :lch
  | :lab
  | :hsv
  | :cmyk
  | :xyz
  | :rgb
  | :srgb
  | :matrix
```

Defines the known colorspace interpretations.

# `known_interpretations`

Returns the known colorspace interpretations

# `validate_interpretation`

Normalizes and validates a color interpretation.

### Arguments

* `interpretation` is any atom or string value
  in `Image.Interpretation.known_interpretations/0`.

### Returns

* `{:error, normalized_interpretation}` or

* `{:error, reason}`

### Examples

    iex> Image.Interpretation.validate_interpretation(:bw)
    {:ok, :VIPS_INTERPRETATION_B_W}

    iex> Image.Interpretation.validate_interpretation(:VIPS_INTERPRETATION_sRGB)
    {:ok, :VIPS_INTERPRETATION_sRGB}

    iex> Image.Interpretation.validate_interpretation(:unknown)
    {:error, %Image.Error{message: "Unknown interpretation. Found :unknown", reason: "Unknown interpretation. Found :unknown"}}

---

*Consult [api-reference.md](api-reference.md) for complete listing*
