My attempt :
Code:
al = 0.15 # Luma blend
ac = al # Chroma blend
g = 3
# Deblending with pseudo-gamma correction
edi = nnedi3 (field=-2)
s1 = " 16 - 219 / 0 max "+String(1.0/g)+" ^ "
s2 = " 0 max "+String(g)+" ^ 219 * 16 + "
fix = mt_lutxy (edi, edi.SelectEvery (1, -1),
\ yexpr="x "+s1+String(1+al)+" * y "+s1+String(al)+" * -"+s2,
\ expr="x "+String(1+ac)+" * y "+String(ac)+" * -",
\ y=3, u=3, v=3)
fix = fix.SeparateFields ().SelectEvery (4, 0, 3)
# Replaces only the blended fields with their fixed counterparts
Interleave (last.SeparateFields (), fix)
SelectEvery (10, 0, 2+1, 4, 6, 8+1) # Comb pattern here
Weave ()
# Usual IVTC + light postprocessing for residual combing
TFM (PP=0)
Vinverse ()
TDecimate (mode=1)
It may exhibits occasional artifacts. I'm not sure about the values or the formulas, but it's a decent starting point.