[Kdenlive-devel] Color correction tools: How and where to implement them?

Simon Eugster simon.eu at gmail.com
Wed Jul 21 14:49:47 UTC 2010


2010/7/14 Dan Dennedy <dan at dennedy.org>:
> On Wed, Jul 14, 2010 at 9:00 AM, Simon Eugster <simon.eu at gmail.com> wrote:
>> I have added a Vectorscope to kdenlive now.
>> Re-using it in a different project would require only few changes
>> given that the other project works with Qt as well, it would mainly
>> mean copying the widget and adjusting some values.
>> I will look into other color displays now if time allows it (exams in 3 weeks).
>
> great!

I've now also added a Waveform monitor.
It basically displays the brightness distribution of the image, but
the special thing about it is that the points on the left are also on
the left in the monitor.

What does not work yet is updating the scopes when e.g. adjusting
effect parameters. For example color temperature. There are very
interesting effects on the vectorscope when changing the temperature
btw :)
If someone could give me a hint which signal to use, I've been
searching for this event for half an hour or so but couldn't find one
yet.

>> I'm pretty sure it is not the color temperature. The white balance
>> here changes to magenta for low values, and to green for high values.
>> It should rather be blue for low temperature, orange for high
>> temperatures.
>
> I think you are referring to the green tint parameter, which appears
> as a sliding widget and is different that temperature. I do not really
> know color correction. This filter is based on code I had forked from
> digikam a few years ago first for Kino, then frei0r. On each
> iteration, it went through some simplification, but this combination
> of green tint alongside temperature (via color selection) comes from
> its digikam lineage. If you say it is valuable to directly expose
> temperature as a parameter, then I will make that change. Then, is it
> also useful to have the temperature presets for the common different
> types of lights?

Indeed, changing the temperature directly is very often required. For
example, if your cam is set to sunlight and you shoot in the evening's
blue hour, then ... you failed if you don't have raw material :P
Seriously.
Digikam's white balance tool does include presets, but I have never
found them useful. It assumes the image was shot with 6500K settings,
but if you take a picture of a candle with proper white balance and
then select the Candle preset, it will become totally blue. With RAW
images (original sensor data) this works though, because the color
temperature has not been adjusted yet here (in contrast to JPG
images), but is there such thing for video as well? I guess not ...

I think the green tint is used e.g. for fluorescent lamps which have a
tendency towards green and could not be corrected by the color
temperature alone.

>>>>>     The point is also, I would like to do it interactively. Means, if I
>>>>>     e.g. have a levels display[1] I would like to be able to select the
>>>>>     lower 25 % of the curve (all dark pixels) and have them highlighted in
>>>>>     the kdenlive project monitor. So I guess neither frei0r nor MLT would
>>>>>     be suitable for that at the moment? (I don't know MLT yet, and frei0r
>>>>>     only partially) Could MLT probably be extended this way, or is this
>>>>>     not intended?
>>>
>>> The frei0r filters that apply need to be enhanced to support that, or
>>> the way frei0r is integrated into MLT could be enhanced to support
>>> that for all filters (currently, the MLT frei0r module acts as a
>>> simple bridge between MLT and frei0r). At that point you have only
>>> addressed the image processing pipeline and not any UI. Any UI change
>>> would need to be done in Kdenlive as that does not exist in MLT or
>>> frei0r.
>>
>> At the moment the second option sounds quite good to me. This would
>> not require applying a frei0r effect (e.g. for the vectorscope I wrote
>> for kdenlive) to a clip to get the highlighting, if I understand
>> correctly.
>
> This part of the conversation confuses me. It did so from the
> beginning. In my initial response I thought you were referring to a
> split screen preview. What exactly do you mean by "highlighted in the
> monitor?" Does that mean you just want to apply the filter only across
> some fancy way to select pixels (i.e. by X, Y or Z),

No,

> or do you to make
> those pixels "stand out" for feedback purposes only?

Yes. Exactly. For example the ones which exceed the valid color range
for NTSC/PAL. Here I didn't understand everything in detail yet, but
it seems important if you want to prepare something for broadcast that
all colors stay within the permitted range (saturation not at 100 %
etc.).

> In the case of HSV value ranges, then the mlt frei0r filter does not
> really have a way to isolate those to only filter them, and I am not
> sure the best way is to enhance that mlt filter to specifically do
> just that. Perhaps this really would fall under the topic of filter
> masking (aka region) where the value range of an image defines the
> mask.

Yes, this sounds good.

Simon




More information about the Kdenlive mailing list