Jump to content

ImpulZ Film Emulation 3D LUTs with the GH4?


jcs
 Share

Recommended Posts

duh... maybe because there aren't any cameras in my price range that offer 10bit (at least, none with a workflow I'm willing to endure). Right now, it's banding and moire (GH3). I'll upgrade and it'll be something else altogether. It never ends...

 

/edit/someone here in one or another thread rightfully said, nobody ever complained about the resolution of a movie they'd seen at the theater, or something to that effect. Which might be true, but what matters to me isn't what other people notice, it's what I care about that counts. And even though nobody's ever said, 'Jon, your pictures are unwatchable - too much aliasing!', I know it's there.

 

I was just saying that maybe someone is having greater trouble than necessary with banding while grading his 8bit footage because he forgot to change to a 16bit workspace (in after Affects, if you don't change to 16/32bit it will stay at 8bit, and LUTs destroy any color gradation when used in 8bit mode).

 

And people have been watching 540x280 streamed movies on 50" screens without complaining.

Link to comment
Share on other sites

EOSHD Pro Color 5 for Sony cameras EOSHD Z LOG for Nikon CamerasEOSHD C-LOG and Film Profiles for All Canon DSLRs

A 3D LUT can cause many shades of colors to map to a reduced set of shades, as the color space gets compressed. Even when the processing may be 10 or more bits (most NLEs support 32-bit float), after the 3D LUT transformation, some colors will effectively be quantized to the same or similar colors, causing banding. Any time we deal with quantization issues, we need to increase the effective variance or range of colors so that after color compression (with a 3D LUT, even 1D LUTs and other transforms), the extra range provided by the noise/grain still provides, on average, enough variance so that banding is reduced or eliminated. That's why it's important to add noise/grain before color compression or quantization, otherwise the original 'signal' (colors) are lost. Noise/grain can still help when added later but it's less effective. In some cases it might make sense to do a light NR as a final step if lots of noise/grain was needed to fix banding issues.

 

Neat Video is amazing, but slow. There is NR that runs in real-time, that's almost as good as Neat Video, such as vReveal (http://www.vreveal.com/, now discontinued. Note their tech is used for Law Enforcement/Military applications). Resolve (not lite) has real-time NR, though last I read isn't nearly as good as Neat Video (vReveal was pretty good).

Link to comment
Share on other sites

A 3D LUT can cause many shades of colors to map to a reduced set of shades, as the color space gets compressed. Even when the processing may be 10 or more bits (most NLEs support 32-bit float), after the 3D LUT transformation, some colors will effectively be quantized to the same or similar colors, causing banding. Any time we deal with quantization issues, we need to increase the effective variance or range of colors so that after color compression (with a 3D LUT, even 1D LUTs and other transforms), the extra range provided by the noise/grain still provides, on average, enough variance so that banding is reduced or eliminated. That's why it's important to add noise/grain before color compression or quantization, otherwise the original 'signal' (colors) are lost. Noise/grain can still help when added later but it's less effective. In some cases it might make sense to do a light NR as a final step if lots of noise/grain was needed to fix banding issues.

 

Neat Video is amazing, but slow. There is NR that runs in real-time, that's almost as good as Neat Video, such as vReveal (http://www.vreveal.com/, now discontinued. Note their tech is used for Law Enforcement/Military applications). Resolve (not lite) has real-time NR, though last I read isn't nearly as good as Neat Video (vReveal was pretty good).

 

 

You shouldn't rely on any LUT to do all your work for you and you shouldn't have a workflow that always adds noise at the top to introduce artificial "variance". If you have banding after using a LUT, but you really like the look, then de-construct what your LUT is doing and see if you can mimic the style manually, going softer if possible where it's introducing the banding (no doubt in the blacks). The LUT is just revealing the limitations of your footage, like any other color correction, or it's a limited color gamut LUT. Adding noise at the top is baking in this fake "variance" and the more work you do on the footage, the more the noise will be exaggerated and start to look non-organic.

Link to comment
Share on other sites

Again, a 3D LUT (RGB cube) can map many colors to a reduced range of colors. It can happen internally in the cube or as color elements are clipped at the cube boundaries. If we have 10 numbers of which they're all the same, say a bunch of 5's, the average value is 5 and the variance is 0. If We lose '5', all the 5's are gone and can can't be recovered (a similar effect happens with banding). If we add noise/grain to those 5's, we're still averaging 5 now, however the variance is now above zero. So if we remove all the 5's, we'll still have the original average of 5, due to the variance provided by the noise. So if we've got suitable variance, we can quantize, crush, compress, and/or 'implode' colors and have little or no banding. The noise doesn't have to be excessive- just enough so that the average original colors can survive color compression/quantization. It's also possible to add noise (dither) intelligently based on exactly where the compression is the highest (this requires custom code: could be part of a plugin).

 

These concepts come from probability and digital signal processing. Not a right or wrong technique- it's math that can be used as a tool when it helps with the creative work at hand.

 

I would expect a LUT called "color implosion" to heavily compress colors. One way such a LUT could cause code to crash is that the cube is so warped, it exposes a bug in the interpolation or clipping code, and thus the crash (divide by zero or sqrt of a negative value are possible culprits).

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • EOSHD Pro Color 5 for All Sony cameras
    EOSHD C-LOG and Film Profiles for All Canon DSLRs
    EOSHD Dynamic Range Enhancer for H.264/H.265
×
×
  • Create New...