okhsl 1.0.1

Oklab extension for HSL (Okhsl) and HSV (Okhsv) color spaces
Documentation
# Convert sRGB to Okhsl/Okhsv (Oklab-based) perceptual color space

A simple Rust implementation of Okhsl and Okhsv color conversion routines based on the reference implementation in the [blog post](https://bottosson.github.io/posts/colorpicker/).

Okhsl and Okhsv color spaces are meant to have more orhogonal hue, saturation, and lightness than the basic HSL/HSV colors.

## API

```rust
use okhsl::*;

let lab = Oklab::from(Rgb {r: 1, g: 127, b: 255});
let Oklab {l, a, b} = lab;

let hsv = Okhsv::from(lab);
let Okhsv {h, s, v} = hsv;

let lab = hsv.to_oklab();
let rgb = hsv.to_srgb();
```

Oklab components are floats. `l` is in range 0 to 1, and `a`/`b` are small numbers that *can be negative*.

Okhsv/Okhsl components are floats. HSL values are approximately in range 0 to 1 (inclusive). You can expect to roundtrip `Okhsl`⇔`Oklab` and `Okhsv`⇔`Oklab` with little loss of precision.

## Examples

[Usage examples](https://gitlab.com/kornelski/oklab/-/tree/main/okhsl/examples)

```bash
cargo run -r --example invert -- some_image.jpeg
```