I noted that recently HolyWu added the vs-ddcolor filter: vs-ddcolor
Since colorize images can be view as a special case of image restoration, it would be very nice if you can add the support of this filter in Hybrid.
Sorry, I found it in the page Vapoursynth->Color->Basic.
In Hybrid there are so many filters that it is not easy to check all of them, moreover in the change log this filter was not included.
Also is not listed in the Hybrid startup-log as available filter.
Anyway I tried to use it using the last dev version "2024.01.05.1", but is not enabled.
I checked the filter "DDColor", but in the generate script the filter is not included.
Moreover it is not possible to select the model (for movies the model "modelscope" should be the most appropriate).
and here it is listed as "vsDDColor available,.." and does work.
# adjusting color space from YUV420P8 to RGBH for vsDDColor
clip = core.resize.Bicubic(clip=clip, format=vs.RGBH, matrix_in_s="470bg", range_s="limited")
# adding colors using DDColor
from vsddcolor import ddcolor
clip = ddcolor(clip=clip, model=1)
Ah, the UI elements do not get removed if ddcolor isn't present. => I will fix that. (fixed locally)
Cu Selur
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
I noted that in Hybrid the DDColor filter has the option to enable FP16 computation.
When I check the FP16 option, the encoding speed increase by about 60%.
I noted that by enabling FP16 computation the conversion of color space applied is RGBH, while when FP16 is uncecked is applied RGBS.
Do you know if there is other significant difference is using the 2 color spaces in terms of final image quality ?
I tried to apply "ddcolor" filter to colorize a BW movie.
But sometime in the movie the filter provides flashing colors, and I'd like to find a way to reduced this effect.
At the following link you can find a sample, that once has been colorized with "ddcolor" will have the reported problem
17.01.2024, 19:27 (This post was last modified: 17.01.2024, 21:31 by Selur.)
short: no clue
longer:
I only used ddcolor so far on a few small samples.
I saw such flickering with other colorization methods (like deoldify) too.
Given that ddcolor is rather slow (at least on my system), I would recommend to:
1. first try to find good ddcolor settings
2. export to a lossless format
3. take that as source and try to stabilize
No clue how to stabilize these flickering, I would be surprised if any of the filters currently in Hybrid could really help with this.
Maybe looking the output in 'splitYUV' can give some inspiration.
First thing is probably trying to get a feel for what triggers the flickering. (if smoothing the source strongly before applying ddcolor would help, one could later write something to take the UV channels from a smoothed source and Y from a sharper version,..)
-> no clue,..
Cu Selur
Ps.: main problem is that all the coloring stuff I'm aware of is meant for images and thus has no temporal awareness and the used models are not trained on much data.
PPs.: compression artifacts might also improve the problem, looking at your file with retinex enabled, it's quite blocky.
PPPs.: attached a colorized version (script used: https://pastebin.com/qHnpa81b), I doubt that this can be really color stabilized.
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
thanks for your suggestion. In my experience "ddcolor" is faster than "deoldify" (with render factor > 20). In "deoldify" using a high render_factor it is possible to reduce the flashing, but in any case has the same problem of "chameleon effect", especially on clothes, shown in "ddcolor". At the moment the best solution that I found is to "merge" ddcolor with deoldify, but the flashing effect introduced is still visible. Unfortunately for "deoldfy" is missing a Vapoursynth implementation.