2 hours ago
I'm using native vapoursynth rather than hybrid but I'm already using grayworld to perform a whitebalance that removes the cast before merging. of course the destroyed skintones still remain which the merge doesn't do enough to resolve, but also takes out the colour that remains.
Sure here's an "uncompressed" sample. I have no idea what is throwing the white balance across these scenes but you can see how severe it is in the cut.
https://mega.nz/file/1bIjFIDI#aS6qoviWz-...C8qUp8RBrc
Here's the vs script. I saw some information regarding Softlight, but I cannot understand from the docs how to utilise that to eliminate the colour cast.
Sure here's an "uncompressed" sample. I have no idea what is throwing the white balance across these scenes but you can see how severe it is in the cut.
https://mega.nz/file/1bIjFIDI#aS6qoviWz-...C8qUp8RBrc
Here's the vs script. I saw some information regarding Softlight, but I cannot understand from the docs how to utilise that to eliminate the colour cast.
# Imports
import vapoursynth as vs
from vapoursynth import core
# loading plugins
import havsfunc as haf
import lostfunc as lof
import muvsfunc as muf
import CropResize as cr
import adjust
import G41Fun
import adjust
import vsdeoldify as havc
import vs_colorfix
# source
src = r"xxx.MP4"
# Load source
src = core.ffms2.Source(source=src)
src = core.std.AssumeFPS(src, fpsnum=18, fpsden=1)
# convert to YUV
src = core.resize.Bicubic(src, 1440, 1080, format=vs.YUV444P16, matrix_in_s="709")
# make a new source
clip = src
### deoldify ###
# changing range from limited to full range for HAVC
clip = core.resize.Bicubic(clip=clip, format=vs.RGB24, matrix_in_s="709", range_s="full")
# DeOldify only model
color = havc.HAVC_colorizer(clip, method=0)
#
# merge
clip = core.fmtc.bitdepth (clip, bits=32)
clip = core.grwrld.grayworld(clip)
clip = core.resize.Bicubic(clip=clip, format=vs.RGB24, matrix_in_s="709", range_s="full")
clip = core.std.Merge(color,clip,weight=[0.33,0.33,0.33])
# retinex or grayworld
#clip = core.retinex.MSRCP(clip)
# softlight
#clip = core.Argaricolm.Softlight(clip, mode=10)
#
# render for comparison
clip = core.resize.Bicubic(clip, 1440, 1080, format=vs.YUV444P16, matrix_s="709")
clip = muf.DisplayHistogram(clip)
clip = core.text.Text(clip, 'output')
src = muf.DisplayHistogram(src)
src = core.text.Text(src, 'source')
clip = core.std.StackHorizontal([src,clip])
# output
clip.set_output(0)
