I attached the wheel of the version 3.0 that I will release this weekend.
Respect to the RC versions, I improved the descriptions of models and parameters (so please update the GUI).
I also extended the list "ddtweak_p" with 2 additional parameters: gamma_alpha, gamma_min
I discovered that a gamma value > 1.5 improves the ddcolor stability on bright scenes, while a gamma < 1 improves the ddcolor stability on dark scenes.
The decrease of the gamma with luma is activated using the new parameter gamma_alpha (if != 0).
04.04.2024, 04:54 (This post was last modified: 04.04.2024, 05:36 by Selur.)
idea: Instead of adjustingthe gamma, also try Retinex. (Retinex requires an of all black bars cropped source and can enhance artifacts, so probably only interessting on already high quality sources)
(I used just ddcolor)
# Color Adjustment
clip = adjust.Tweak(clip=clip, hue=0.00, sat=0.00, cont=1.00, coring=True)
# adjusting color space from YUV420P10 to RGB30 for vsRetinex
clip = core.resize.Bicubic(clip=clip, format=vs.RGB30, matrix_in_s="709", range_s="limited")
# color adjustment using Retinex
clip = core.retinex.MSRCR(input=clip, sigma=[25,80,250], fulls=False, fulld=False)
# adjusting color space from RGB30 to RGBH for vsDDColor
clip = core.resize.Bicubic(clip=clip, format=vs.RGBH, range_s="limited")
# adding colors using DDColor
from vsddcolor import ddcolor
clip = ddcolor(clip=clip, model=1)
The first sample is worse than the original, while the second is better.
I had the same problem adjusting gamma, on bright images a gamma above > 2 improves the quality but on dark scenes like your first sample the quality is worse.
That's the reason why I introduced the possibility to lower the value of gamma with the luma.
In this way I can have a gamma above 2 on bright images and a gamma below 1 on dark images.
Also the contrast can impact the ddcolor output. A contrast < 1 ddcolor images are less saturated, while a contrast > 1 the images are more saturated.
I applied a small update on the filter. I will provide a new wheel later.
P.S.
The true ddcolor "stabilizer" is "deoldify" which has a network trained to work decently with movies.
DDColor is good for images but using it alone for coloring movies is too unstable.
This is the main reason why I embarked on the development of a Vapoursynth filter for deoldify.
sorry for this last minute change. But I decided to move the post-process "dark" filter in ddeoldify_stabilizer().
I'm planning to rework this filter, so it is better represent the parameters of this filter like a list, so that I can eventually extend this list in a near future.