Properly support field-based handling
Opened this issue · 0 comments
LightArrowsEXE commented
Currently, every denoiser accepts interlaced input, but none of them actually handle it correctly.
To denoise these types of sources properly, we must:
- Separate the fields into their own clips (so one clip that features all the top fields, and one that features all the bottom fields)
- Perform processing on both as per usual (this will double the processing required, but inevitable here)
- Interleave and double weave them back together, then slice as necessary.
Theoretically, nothing is stopping us from implementing these for every denoiser besides figuring out a good way to write all that, so I will likely implement these eventually in at least the following denoisers:
- MVTools
- BM3D (wolfram plugins, will not do mawen's version to keep it more in line with how it was originally written)
- nl_means
- wnnm
But I'll likely look at other denoisers we have wrappers for as well.