Regrain By Channel

I’ve seen a few people mention being able to eye match grain by channel. I know how to adjust each channel in the histogram or slider, but hoping someone can explain how to look at each channel while re-graining to know that you’re adding the correct amount? Perhaps I misunderstood, but figured I’d ask. Thanks!

Mike

1 Like

Might it be as simple as using Shift-R, Shift-G, and Shift-B in the viewer while adjusting the grain? That focuses the viewer on the respective channel.

4 Likes

Yeah. Just as @allklier said.

I sample each channel separately and sample a dark and light area. Tweak my scale until it looks good and then move to my next colour channel.

When using the native regrain tool I like to be in log. Disable the Proportional button on your scale.

shift - Z goes back to RGB

And tweaking the RGB points on the curves, yeah?

2 Likes

Thanks everyone. The keyboard shortcuts didn’t work for me, but perhaps that’s because I use Smoke keyboard? Used both L/R shift in case that was the error.

Regardless, I think I get the idea. As long as I’m viewing the isolated channel in the viewing settings and I select the same channel in the re-grain histogram tool, I can sample channel by channel and then match accordingly as needed. At least, it seems to be re-graining channel by channel as I sample now.

Also, thanks for the tip @PlaceYourBetts regarding log, I had forgotten that.

Appreciate it guys.

No worries.

Have a look in your hotkey editor for these Toggle options:

Failing that you can manually press these buttons found in the View settings
image

3 Likes

Thank you. I’ll take a look!

Personally, I always use crok_renoise. Then alter each channel accordingly.
I find the easiest way is to apply to a denoised plate then compare to the original scan.

3 Likes

Still hoping that some day someone ports DasGrain to Flame. That is always a charm to use. Maybe if I have an extended holiday break…

1 Like

If it’s technically possible with MX, it would be great to have a new Regrain tool that could procedurally derive the grain pattern by feeding the source clip and the clip denoised.

@lewis
@Graziella
Thoughts?

1 Like

You’d need 3 inputs. Maybe even a 4th for matte.

Comp
Raw Plate
Denoised Plate

I believe this is how DasGrain works.

That’s correct.

Once setup you run the analysis and then have multiple adjustment options in the UI. But in many cases the default results after running the analysis are very good and don’t require fine tuning.

Screen Shot 2023-03-17 at 1.01.19 PM

1 Like

I have a Fusion regrain setup that works almost “apply and forget”. After everything is settled up you would need to tweak only one parameter. It should not be that hard to replicate in Flame, it is just basic math that Comp node can do + crop and timewarp for normalized grain generation.

1 Like

we covered this topic a few years ago… i dont think anyone has been able to replicate DasGrain, esp the scatter feature so you dont see the ghosted outline of objects you have removed.

https://forum.logik.tv/t/das-grain-in-matchbox-form/552/14?u=timc

would LOVE to be proven wrong…

1 Like

Please upvote here everyone: Fl-01067

1 Like

I can`t get you a Voronoy scatter, that is what DasGrain does internally.

The idea lies in using the grain normalization process.
So we have an Original Plate (OP), Denoised Plate (DP), and a Comp Plate (CP)

OP minus DP = Grain
Grain divide OP = Normalized Grain (NG) - it will remove some of the original details and leave mostly what we need.

“Generation” of a normalized grain
Make a crop from NG of your grain patch, bigger is better, 128x128 pixels usually is good enough, it is ok to have small details here. Use the Timewarp node if a camera in your shot is moving to take patches from different parts of a screen, 5 to 10 frames usually is enough. Replicate the grain patch on the original plate size (2d transform node will do it, Das Grain do it with a Voronoy Scatter for pattern minimization). It`s important to use no filtering during this operation. Now we have a Normalized Grain Patch (NGp). Doe to Timewarp usage this step can’t be replicated in MX shader.

Generate a hard mate from DP and CP with Difference Keyer = Comp Plate Matte (CPm)

Comp NGp to NG with CPm. If my memory serves me well, Flame`s Comp node Normal mode will give you some kind of darkening, recomp on top with Max/Lighten transfer mode. Now we have New Grain Plate (nGP)

The next step is to adapt nGP to our comp.

nGP multiply by CP = new Grain.

CP + new Grain = profit.

If your original plate doesn`t have any parts without details (like a green screen) try to find patches with as few details as possible. Also helps to apply the same gamma to OP in the normalization process and CP when we adopt new grain to our comp, cloned CC nodes will do the job, for details minimization.

I know it`s not as sexy like have a Das Grain at your disposal, but it does the job for me 99% of the time.

6 Likes

This sounds ripe for a video demo or Logik Live…

3 Likes

If it can’t be a MX Shader, I guess it would have to be written as an OFX plugin….

1 Like

It sounds like what Val described could be in an MX, but I’m not a coder…