27 July 2023

Stochastic photographic grain synthesis from crystallographic structure simulation

2023-07-28T18:06:39-04:0027 July 2023|Categories: Image processing|1 Comment

The silver halide film grain has an unique look that introduces some texture in smooth image areas, where digital imagery may look synthetic and too clean. Emulating this effect in digital photography cannot be done by simply adding gaussian or poissonian noise to the image, since silver halide grain has varying shapes and sizes. There are two techniques to do it : 

29 April 2023

Websites suck.

2023-04-29T14:51:45-04:0029 April 2023|Categories: Web design|0 Comments

I have spent the past month working on an AI-based search engine.

When you go on darktable sub-Reddit, you will find the question “why do lighttable’s thumbnails look different from darkroom preview” asked every next week. The question is answered many times on this sub-Reddit, on various forums, and I even put the answer on the main Readme file, displayed on the Github main page of [...]

18 January 2023

Who are the darktable users in 2020 ?

2023-01-19T09:38:48-05:0018 January 2023|Categories: Software design|1 Comment

The core basics of design are to know for whom you design, that is who are the users of your solution, what they expect and what they need. It is also necessary to assess if the actual user of your product is the one you designed it for in the first place, that is, who is missing from your user base, to avoid the [...]

17 August 2022

You need to reinvent the wheel all the time

2022-08-17T20:23:38-04:0017 August 2022|Categories: Software design|0 Comments

There is this mantra that I have been hearing too much in my life : “don’t reinvent the wheel”. People mean that as a metaphor trying to discourage you from redoing something that is already done, and by that they actually want you to use whatever software application or library instead of coding your own, as if it was automatically a time and resource saver. [...]

30 June 2022

Design by committee will not save FLOSS

2022-07-04T09:56:37-04:0030 June 2022|Categories: Software design|1 Comment

The opensource ecosystem is keen on its mantras. One of them is that being an opensource dev/maintainer is a thankless unpaid job. And while that may sound like a selfless act of benevolence, there is another way of reading it : a selfish way of avoiding professional responsibility, while still exerting some amount of power and decision. Which is the egg and which is the [...]

12 June 2022

Interpolating (hue) angles

2022-06-15T10:40:56-04:0012 June 2022|Categories: Image processing|0 Comments

#The problem to solve

In image processing, retouchers may want to apply a saturation boost on specific hues only. Typically, uniform saturation corrections follow a basic linear transfer function $sat_{out} = gain \cdot sat_{in}$, where $gain$ is a real positive constant. To target specific hues, we simply rewrite $sat_{out}(hue) = gain(hue) \cdot sat_{in}$ where $gain$ is then a function. The most common way to [...]

2 June 2022

Open source and professional photography : lies and wishes

2022-06-02T17:35:56-04:002 June 2022|Categories: Image processing|5 Comments

There is one thing you will find on the home page of pretty much any open source (call it libre or free if you will, those lines are blurred) image editing software : the promise that it is, somehow, suitable for professionals. Marketing has abused that word for decades, it is only natural that it should affect non-commercial and non-profit projects as well, just to try [...]

11 February 2022

Color saturation control for the 21th century

2022-05-03T20:57:47-04:0011 February 2022|Categories: Image processing|6 Comments

The saturation control of pretty much all image processing software is an unfortunate misnomer, to say the least. It actually controls either the chroma in Ych-like spaces (computed from CIE Yxy 1931, Yuv or YCbCr spaces), or some remote idea of saturation as used by HSL spaces, which are essentially a polar rewriting of RGB coordinates (usually expressed in sRGB space).

The “saturation” as defined [...]

2 October 2021

WebP is so great… except it’s not

2021-10-03T05:39:15-04:002 October 2021|Categories: Image processing|3 Comments

I’m a responsible web designer, and as such, since WordPress (finally) accepts media uploads of image/webp MIME type and since all web browsers newer than september 2020 (even Apple Safari \o/) can display it, I have been moving my photos library to WebP. After all, when you create content, the least you can do is to also provide the smoothest user experience around it.

WebP falls [...]

18 April 2021

The sRGB book of color

2021-04-19T15:53:22-04:0018 April 2021|Categories: Image processing|2 Comments

This page is inspired by the Munsell book of color. It aims at showing the sRGB gamut volume (all the visible colors that can be encoded as sRGB triplets), projected into a perceptually uniform lightness/chroma space (using JzAzBz color space[^1]), and sliced across hue planes. The sRGB space is the lowest common denominator of all general-audience screens, and is deemed fit to choose colors for [...]

Go to Top