Skip to content

5D3 - attempt to fix vertical stripes (so it doesn't need any more correction in postprocessing)

Alex requested to merge branch/raw_fixes into branch/unified

While cleaning up some stuff in the raw backend, I revisited the raw type register (aka lv_af_raw), and from this discussion it looks like on 5D3 you can pick a frame with exactly one defect from those two:

  • bad pixels
  • vertical stripes

So, we can either pick an image with bad pixels, but without vertical stripes, or the other way. Currently, the 5D3 uses a raw stream without bad pixels, but with vertical stripes.

Since the bad pixels are easier and faster to correct in postprocessing, what about choosing the image with bad pixels, but without stripes?

How to test:

  • make sure you get files with vertical stripes on the nightly builds (any of them). You probably won't see the artifact on the image, because most converters will correct this defect. Just look in the conversion log for the correction coefficients (numbers around 0.9 ... 1.1).
  • record the same test scene with the ML core built from this PR, and check the conversion log (there should be no more mentions about vertical stripes)
  • make sure the bad pixels are, indeed, corrected by your favorite raw converter

Why bother with this?

  • vertical stripe correction is slow (so you will notice a small speedup in the conversion process if you don't need it)
  • vertical stripe correction is not exact (coefficients do not stay the same, and they are estimated from the first frame in the clip; if the stripes are not visible there, the conversion will not work very well)
  • correcting bad pixels is very fast and much simpler

Why didn't we use this method from the beginning?

  • see the source code comments below (back then, Renato said this type of raw image looks best, so I simply used that without thinking too much about it)
  • back then, the bad pixel correction (when it was implemented with DNG opcodes) wasn't compatible with most raw processing apps.

Merge request reports