pinterf / mvtools

mvtools plugin for avisynth
155 stars 17 forks source link

Req: MDegrain limit to float for >8bit input #33

Closed Boulder08 closed 4 years ago

Boulder08 commented 4 years ago

Would it be possible to give the MDegrain limit value more granularity with input clips whose depth is over 8 bits? The Vapoursynth version requires the user to scale the limit value so I can abuse it to set limits like 0.6*255 for 16bit input to really control the amount of denoising.

pinterf commented 4 years ago

Sounds reasonable. I've got no timeframe from that but ping me later if somehow it seems to be forgotten.

pinterf commented 4 years ago

Could you please try this build: https://drive.google.com/open?id=1olEkcjlJINI6Oyu7btu3UYHoPQ00N50l I wonder how can you see the effect? Compression ratio only or visually as well? Pls drop some lines on the results - and note that I have not tested it too seriously. (link updated, first upload did not contain the "float"-typed function signatures)

Boulder08 commented 4 years ago

Thank you very much, it seems to work exactly the way I was expecting. The effect is actually quite big, I was surprised myself when I started testing the Vapoursynth port of MDegrain a long time ago. I often do very light denoising so that it's not very visible in the final result but increases the compressibility greatly as it stabilizes the image. Limit=1 is often way too much as the dark areas of the frame are easily overprocessed.

Here are some examples: Original frame: image

Amplified denoiser effect (MCDegrainsharp-type function) with limit=1, luma only: image

Amplified denoiser effect with limit=0.2: image

The differences are easily seen in the result without checking the result of Subtract.

pinterf commented 4 years ago

Nice. Thanks for the demo.

Boulder08 commented 4 years ago

Working now with the latest version :)