Page 1 of 1
High pass or Sharp effect?

Posted:
Sat Oct 24, 2015 8:53 pm
by Paulo Madeira
Hi all
Is there some way to create a high pass in Fusion?
Are there any tools for improving sharpness?
Thanks
Madeira3d
Re: High pass or Sharp effect?

Posted:
Sat Oct 24, 2015 9:15 pm
by Chad Capeland
A highpass is just a the original divided by the lowpass, no?
Re: High pass or Sharp effect?

Posted:
Sat Oct 24, 2015 9:40 pm
by Paulo Madeira
No idea , but is the low pass a function in fusion?
Can't find it....
Re: High pass or Sharp effect?

Posted:
Sat Oct 24, 2015 9:57 pm
by Chad Capeland
Paulo Madeira wrote:No idea , but is the low pass a function in fusion?
Can't find it....
Blur?
Re: High pass or Sharp effect?

Posted:
Sun Oct 25, 2015 9:13 am
by Paulo Madeira
Thanks Chad,
I see the sharpening is inside the blur now.
Re: High pass or Sharp effect?

Posted:
Mon Oct 26, 2015 1:22 pm
by phantom-studio
a few nodes to get a high pass in fusion.
Plug your input in the saturation node, and merge the output of average node to your source in overlay mode.
You can use the blur node to modify the effect.
- Code: Select all
{
Tools = ordered() {
saturation = Fuse.SimpleSaturation {
NameSet = true,
Inputs = {
Alpha = Input { Disabled = true, },
Saturation = Input { Value = 0, },
},
ViewInfo = OperatorInfo { Pos = { 1571.33, 2026.33, }, },
},
Blur5_1_1 = Blur {
CtrlWZoom = false,
Inputs = {
XBlurSize = Input { Value = 3.2332564, },
Input = Input {
SourceOp = "invertColor_CT",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 1676.55, 2135.31, }, },
},
average = Custom {
NameSet = true,
Inputs = {
LUTIn1 = Input {
SourceOp = "CustomTool3_1_1LUTIn1",
Source = "Value",
},
LUTIn2 = Input {
SourceOp = "CustomTool3_1_1LUTIn2",
Source = "Value",
},
LUTIn3 = Input {
SourceOp = "CustomTool3_1_1LUTIn3",
Source = "Value",
},
LUTIn4 = Input {
SourceOp = "CustomTool3_1_1LUTIn4",
Source = "Value",
},
RedExpression = Input { Value = "(r1+r2)/2", },
GreenExpression = Input { Value = "(g1+g2)/2", },
BlueExpression = Input { Value = "(b1+b2)/2", },
Image1 = Input {
SourceOp = "saturation",
Source = "Output",
},
Image2 = Input {
SourceOp = "Blur5_1_1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 1538.13, 2135.93, }, },
},
CustomTool3_1_1LUTIn1 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 204, Green = 0, Blue = 0, },
NameSet = true,
},
CustomTool3_1_1LUTIn2 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 0, Green = 204, Blue = 0, },
NameSet = true,
},
CustomTool3_1_1LUTIn3 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 0, Green = 0, Blue = 204, },
NameSet = true,
},
CustomTool3_1_1LUTIn4 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 204, Green = 204, Blue = 204, },
NameSet = true,
},
invertColor_CT = Custom {
NameSet = true,
Inputs = {
LUTIn1 = Input {
SourceOp = "CustomTool1LUTIn11",
Source = "Value",
},
LUTIn2 = Input {
SourceOp = "CustomTool1LUTIn21",
Source = "Value",
},
LUTIn3 = Input {
SourceOp = "CustomTool1LUTIn31",
Source = "Value",
},
LUTIn4 = Input {
SourceOp = "CustomTool1LUTIn41",
Source = "Value",
},
RedExpression = Input { Value = "1-r1", },
GreenExpression = Input { Value = "1-g1", },
BlueExpression = Input { Value = "1-b1", },
Image1 = Input {
SourceOp = "saturation",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 1674.67, 2072.05, }, },
},
CustomTool1LUTIn11 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 204, Green = 0, Blue = 0, },
NameSet = true,
},
CustomTool1LUTIn21 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 0, Green = 204, Blue = 0, },
NameSet = true,
},
CustomTool1LUTIn31 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 0, Green = 0, Blue = 204, },
NameSet = true,
},
CustomTool1LUTIn41 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 204, Green = 204, Blue = 204, },
NameSet = true,
},
},
}
Re: High pass or Sharp effect?

Posted:
Mon Oct 26, 2015 4:27 pm
by Chad Capeland
Couple things about that...
The reduced saturation isn't needed unless you are planning on only doing a high pass on luminance.
The two CT tools are inefficient. The first one can be replaced with a BC to do the invert, and it will render 4x faster. The second one can be replaced with a Merge and a BC, and it will render 3x faster.
Finally, you don't need to do the invert and average at all. Fusion works in float, so there's no need to pivot around 0.5. You can use -1,1 as your interval for the image processing, assuming your input was 0,1.
- Chad
Re: High pass or Sharp effect?

Posted:
Mon Oct 26, 2015 7:52 pm
by Paulo Madeira
Guy's that's too advanced for me yet, I'm completely lost

Do you think you can see my comp and change to what you think is best?
I would be able to go in and try to reverse engineer what you did and learn from it.
I'm rendering a 360 animation, so far I'm working on a single image.
This is my scene:
https://dl.dropboxusercontent.com/u/12095042/PORTFOLIO/GRENADE/Fusion/Arquivo.zip
Thanks in advance
Madeira3d
Re: High pass or Sharp effect?

Posted:
Tue Oct 27, 2015 11:54 am
by phantom-studio
Hello,
here how i do it :
- Code: Select all
{
Tools = ordered() {
BrightnessContrast1 = BrightnessContrast {
Inputs = {
Gain = Input { Value = 0, },
Lift = Input { Value = 1, },
Input = Input {
SourceOp = "PipeRouter2",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 1970.08, 208.93, }, },
},
Blur5_1_1 = Blur {
CtrlWZoom = false,
Inputs = {
XBlurSize = Input { Value = 4.7619048, },
Input = Input {
SourceOp = "BrightnessContrast1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 1969.99, 303.442, }, },
},
average = Custom {
NameSet = true,
Inputs = {
LUTIn1 = Input {
SourceOp = "averageLUTIn1",
Source = "Value",
},
LUTIn2 = Input {
SourceOp = "averageLUTIn2",
Source = "Value",
},
LUTIn3 = Input {
SourceOp = "averageLUTIn3",
Source = "Value",
},
LUTIn4 = Input {
SourceOp = "averageLUTIn4",
Source = "Value",
},
RedExpression = Input { Value = "(r1+r2)/2", },
GreenExpression = Input { Value = "(g1+g2)/2", },
BlueExpression = Input { Value = "(b1+b2)/2", },
Image1 = Input {
SourceOp = "PipeRouter2",
Source = "Output",
},
Image2 = Input {
SourceOp = "Blur5_1_1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 1841.71, 304.156, }, },
},
averageLUTIn1 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 204, Green = 0, Blue = 0, },
NameSet = true,
},
averageLUTIn2 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 0, Green = 204, Blue = 0, },
NameSet = true,
},
averageLUTIn3 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 0, Green = 0, Blue = 204, },
NameSet = true,
},
averageLUTIn4 = LUTBezier {
KeyColorSplines = {
[0] = {
[0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, },
[1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, },
},
},
SplineColor = { Red = 204, Green = 204, Blue = 204, },
NameSet = true,
},
PipeRouter2 = PipeRouter {
Inputs = {
Input = Input {
SourceOp = "PipeRouter3",
Source = "Output",
},
},
ViewInfo = PipeRouterInfo { Pos = { 1850.01, 207.325, }, },
},
AlphaMultiply1 = AlphaMultiply {
Inputs = {
Input = Input {
SourceOp = "ColorCorrector2",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 1648.24, 394.639, }, },
},
ColorCorrector2 = ColorCorrector {
Inputs = {
WheelTintAngle1 = Input { Value = -0.426208191174783, },
WheelTintLength1 = Input { Value = 0.0568888888888889, },
ColorRanges = Input {
Value = ColorCurves {
Curves = {
{
Points = {
{ 0, 1, },
{ 0.4, 0.2, },
{ 0.6, 0, },
{ 1, 0, },
},
},
{
Points = {
{ 0, 0, },
{ 0.4, 0, },
{ 0.6, 0.2, },
{ 1, 1, },
},
},
},
},
},
HistogramIgnoreTransparent = Input { Value = 1, },
Input = Input {
SourceOp = "Merge4",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 1648.24, 361.639, }, },
},
Merge1 = Merge {
Inputs = {
Background = Input {
SourceOp = "Background1",
Source = "Output",
},
Foreground = Input {
SourceOp = "AlphaMultiply1",
Source = "Output",
},
PerformDepthMerge = Input { Value = 0, },
},
ViewInfo = OperatorInfo { Pos = { 1643.94, 431.114, }, },
},
Merge4 = Merge {
Inputs = {
Background = Input {
SourceOp = "average",
Source = "Output",
},
Foreground = Input {
SourceOp = "PipeRouter3",
Source = "Output",
},
ApplyMode = Input { Value = FuID { "Overlay", }, },
PerformDepthMerge = Input { Value = 0, },
},
ViewInfo = OperatorInfo { Pos = { 1628.87, 307.393, }, },
},
PipeRouter3 = PipeRouter {
ViewInfo = PipeRouterInfo { Pos = { 1610.34, 204.055, }, },
},
Background1 = Background {
CurrentSettings = 2,
CustomData = {
Settings = {
[1] = {
Tools = ordered() {
Background1 = Background {
Inputs = {
Type = Input { Value = FuID { "Gradient", }, },
GradientType = Input { Value = FuID { "Radial", }, },
Width = Input { Value = 720, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2", }, },
["Gamut.ColorSpaceNest"] = Input { Value = 1, },
End = Input { Value = { 10, 0, }, },
Height = Input { Value = 1280, },
Gradient = Input {
Value = Gradient {
Colors = {
[0] = { 0.176470588235294, 0.705882352941177, 0.968627450980392, 1, },
[0.1131386861314] = { 0, 0, 0, 1, },
},
},
},
Start = Input { Value = { 0.5, 0.5, }, },
},
CtrlWZoom = false,
ViewInfo = OperatorInfo { Pos = { 1100, 280.5, }, },
CustomData = {
},
},
},
},
[2] = {
Tools = ordered() {
Background1 = Background {
Inputs = {
Type = Input { Value = FuID { "Gradient", }, },
GradientType = Input { Value = FuID { "Radial", }, },
Width = Input { Value = 720, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2", }, },
["Gamut.ColorSpaceNest"] = Input { Value = 1, },
End = Input { Value = { 10, 0, }, },
Height = Input { Value = 1280, },
Gradient = Input {
Value = Gradient {
Colors = {
[0] = { 1, 1, 1, 1, },
[0.1131386861314] = { 0, 0, 0, 1, },
},
},
},
Start = Input { Value = { 0.5, 0.5, }, },
},
Name = "Background1",
CtrlWZoom = false,
ViewInfo = OperatorInfo { Pos = { 1100, 280.5, }, },
CustomData = {
},
},
},
},
},
},
Inputs = {
Width = Input { Value = 720, },
Height = Input { Value = 1280, },
["Gamut.ColorSpaceNest"] = Input { Value = 1, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2", }, },
Type = Input { Value = FuID { "Gradient", }, },
GradientType = Input { Value = FuID { "Radial", }, },
Start = Input { Value = { 0.5, 0.5, }, },
End = Input { Value = { 10, 0, }, },
Gradient = Input {
Value = Gradient {
Colors = {
[0.0291970802919708] = { 1, 1, 1, 1, },
[0.164233576642336] = { 0, 0, 0, 1, },
},
},
},
},
ViewInfo = OperatorInfo { Pos = { 1537.12, 434.202, }, },
},
},
}
@chad :
thanks for the tips in order to render more quickly , i replace the fisrt CT with a bc , however for the second CT I don't understand how you do it
Re: High pass or Sharp effect?

Posted:
Tue Oct 27, 2015 6:03 pm
by Chad Capeland
If you set the Merge to Additive, and set the Alpha Gain to 0, you will add the images together. A BC afterwards divides by 2.