Also will this formula work Ivan/ Diogo?
As I can add this too. 

Not at a machine to test these yet. 

Obviously a proper nuke tool would be great so + 1 for that. 

Howard

On 14 Oct 2012, at 03:04, Ivan Busquets <[email protected]> wrote:

> I'd also cast my vote for having this built into the viewer, maybe as a 
> dropdown under the cliptest/zebra pattern option, for the sake of 
> convenience. 
> 
> However, in terms of a more efficient way to do a custom one, there are ways 
> around having to sample the image (with tcl or python), or having to 
> pre-analyze, avoiding the notable overhead that goes with it.
> 
> Taking Diogo's Dilate Min/Max approach, for example, there's no need to 
> sample the image afterwards, since you can do all the scaling and offsetting 
> using regular merges.
> 
> Ex:
> set cut_paste_input [stack 0]
> version 6.3 v8
> push $cut_paste_input
> Ramp {
>  p0 {0 0}
>  p1 {2048 0}
>  color 1000
>  name Ramp2
>  label "0 to 1000"
>  selected true
>  xpos 1112
>  ypos -322
> }
> Group {
>  name Normalize
>  tile_color 0x7aa9ffff
>  selected true
>  xpos 1112
>  ypos -216
> }
>  Input {
>   inputs 0
>   name Input
>   xpos -450
>   ypos -312
>  }
> set N18046380 [stack 0]
> push $N18046380
>  Dilate {
>   size {{"-max(input.format.w, input.format.h)"}}
>   name Dilate2
>   label Min
>   xpos -376
>   ypos -200
>  }
>  CopyBBox {
>   inputs 2
>   name CopyBBox2
>   xpos -376
>   ypos -76
>  }
> set N1a498300 [stack 0]
> push $N18046380
>  Merge2 {
>   inputs 2
>   operation from
>   name Merge4
>   xpos -450
>   ypos 59
>  }
> push $N1a498300
> push $N18046380
> push $N18046380
>  Dilate {
>   size {{"max(input.format.w, input.format.h)"}}
>   name Dilate1
>   label Max
>   xpos -281
>   ypos -323
>  }
>  CopyBBox {
>   inputs 2
>   name CopyBBox1
>   xpos -281
>   ypos -173
>  }
>  Merge2 {
>   inputs 2
>   operation from
>   name Merge1
>   xpos -281
>   ypos -76
>  }
>  Merge2 {
>   inputs 2
>   operation divide
>   name Merge3
>   xpos -281
>   ypos 59
>  }
>  Output {
>   name Output1
>   xpos -281
>   ypos 137
>  }
> end_group
> 
> 
> 
> 
> 
> On Sat, Oct 13, 2012 at 6:22 PM, Frank Rueter <[email protected]> wrote:
>> None of those solutions actually produce what we're after though (some of 
>> your solutions seem to invert the input).
>> 
>> We need something that can compresses the input to a 0-1 range by offsetting 
>> and scaling based on the image's min and max values (so     the resulting 
>> range is 0-1). You can totally do this with a Grade or Expression node and a 
>> bit of tcl or python (or the CurveTool if you want to pre-compute), but 
>> that's not efficient.
>> 
>> I reckon this should be a feature built into the viewer for ease-of-use and 
>> speed.
>> 
>> 
>> 
>> 
>> 
>> 
>> On 14/10/12 1:04 PM, Marten Blumen wrote:
>>> and this group does all channels rgba,depth,motion using the expressions. 
>>> should be quite fast as an input process
>>> 
>>> set cut_paste_input [stack 0]
>>> version 7.0 v1b74
>>> push $cut_paste_input
>>> Group {
>>>  name Normalised_channels
>>>  selected true
>>>  xpos -526
>>>  ypos 270
>>> }
>>>  Input {
>>>   inputs 0
>>>   name Input1
>>>   xpos -458
>>>   ypos 189
>>>  }
>>>  Expression {
>>>   expr0 "mantissa (abs(r))"
>>>   expr1 "mantissa (abs(g))"
>>>   expr2 "mantissa (abs(b))"
>>>   channel3 depth
>>>   expr3 "mantissa (abs(z))"
>>>   name Normalized_Technical1
>>>   tile_color 0xb200ffff
>>>   label rgbz
>>>   note_font Helvetica
>>>   xpos -458
>>>   ypos 229
>>>  }
>>>  Expression {
>>>   channel0 alpha
>>>   expr0 "mantissa (abs(a))"
>>>   channel1 {forward.u -forward.v -backward.u forward.u}
>>>   expr1 "mantissa (abs(u))"
>>>   channel2 {-forward.u forward.v -backward.u forward.v}
>>>   expr2 "mantissa (abs(v))"
>>>   channel3 depth
>>>   name Normalized_Motion1
>>>   tile_color 0xb200ffff
>>>   label "a, motion u & v"
>>>   note_font Helvetica
>>>   xpos -458
>>>   ypos 270
>>>  }
>>>  Output {
>>>   name Output1
>>>   xpos -458
>>>   ypos 370
>>>  }
>>> end_group
>>> 
>>> 
>>> On 14 October 2012 11:29, Marten Blumen <[email protected]> wrote:
>>>> And one that looks technical or techni-color!
>>>> 
>>>> 
>>>> set cut_paste_input [stack 0]
>>>> version 7.0 v1b74
>>>> push $cut_paste_input
>>>> Expression {
>>>>  expr0 "mantissa (abs(r))"
>>>>  expr1 "mantissa (abs(g))"
>>>>  expr2 "mantissa (abs(b))"
>>>>  channel3 depth
>>>>  expr3 "mantissa (abs(z))"
>>>>  name Normalized_Technical
>>>>  tile_color 0xb200ffff
>>>> 
>>>>  label "Normalized\n"
>>>>  note_font Helvetica
>>>>  selected true
>>>>  xpos -286
>>>>  ypos -49
>>>> 
>>>> }
>>>> 
>>>> 
>>>> On 14 October 2012 10:46, Marten Blumen <[email protected]> wrote:
>>>>> This works for rgb & depth. Pop it into the ViewerProcess for normalized 
>>>>> viewing. It seems to work with all values, free polygon cube to anyone 
>>>>> who breaks it ;) 
>>>>> 
>>>>> Who knows the expression node; can we just apply the formula to all the 
>>>>> present channels?
>>>>> 
>>>>> 
>>>>> set cut_paste_input [stack 0]
>>>>> version 7.0 v1b74
>>>>> push $cut_paste_input
>>>>> Expression {
>>>>>  expr0 1/(r+1)/10
>>>>>  expr1 1/(g+1)/10
>>>>>  expr2 1/(b+1)/10
>>>>>  channel3 depth
>>>>>  expr3 1/(z+1)/10
>>>>>  name RGBDEPTH
>>>>>  label "Normalized\n"
>>>>>  note_font Helvetica
>>>>>  selected true
>>>>>  xpos -220
>>>>>  ypos 50
>>>>> 
>>>>> }
>>>>> 
>>>>> 
>>>>> On 14 October 2012 10:24, Marten Blumen <[email protected]> wrote:
>>>>>> A normalised expression node:
>>>>>> 
>>>>>> 
>>>>>> set cut_paste_input [stack 0]
>>>>>> version 7.0 v1b74
>>>>>> push $cut_paste_input
>>>>>> Expression {
>>>>>>  expr0 1/(r+1)/10
>>>>>>  expr1 1/(g+1)/10
>>>>>>  expr2 1/(b+1)/10
>>>>>>  name Expression6
>>>>>>  label "Normalize Me\n"
>>>>>>  note_font Helvetica
>>>>>>  selected true
>>>>>>  xpos -306
>>>>>>  ypos 83
>>>>>> 
>>>>>> }
>>>>>> 
>>>>>> 
>>>>>> On 14 October 2012 09:33, Marten Blumen <[email protected]> wrote:
>>>>>>> + 1 
>>>>>>> 
>>>>>>> as a side note, doesn't SoftClip and Toe nodes do dynamic normalising 
>>>>>>> of                                   the RGB channels?
>>>>>>> 
>>>>>>> set cut_paste_input [stack 0]
>>>>>>> version 7.0 v1b74
>>>>>>> push $cut_paste_input
>>>>>>> SoftClip {
>>>>>>> conversion "logarithmic compress"
>>>>>>> softclip_min 1
>>>>>>> name SoftClip2
>>>>>>> selected true
>>>>>>> xpos -1876
>>>>>>> ypos 1428
>>>>>>> }
>>>>>>> Toe2 {
>>>>>>> name Toe2
>>>>>>> selected true
>>>>>>> xpos -1876
>>>>>>> ypos 1461
>>>>>>> 
>>>>>>> }
>>>>>>> 
>>>>>>> 
>>>>>>> On 13 October 2012 23:51, Patrick Heinen 
>>>>>>> <[email protected]> wrote:
>>>>>>>> Yes of course I can use VIEWER_INPUT or a register a viewer process, 
>>>>>>>> but that wouldn't make it dynamic either, well maybe with the MinColor 
>>>>>>>> Node but that one again doesn't work for deep data... And starting to 
>>>>>>>> sample every pixel via python is just horribly slow and you would need 
>>>>>>>> to bake it after that again. Plus again the VIEWER_INPUT doesn't work 
>>>>>>>> for deep data either...
>>>>>>>> It shouldn't be to complicated having one button, that dynamically 
>>>>>>>> normalizes what's shown in the Viewer, just as you have it in Fusion.
>>>>>>>> 
>>>>>>>> I sent in a request, Ticket#2012101310000031
>>>>>>>> 
>>>>>>>> Regards
>>>>>>>> Patrick
>>>>>>>> 
>>>>>>>> Am 13.10.2012 um 11:42 schrieb Johannes Hezer:
>>>>>>>> 
>>>>>>>> > +1
>>>>>>>> >
>>>>>>>> >
>>>>>>>> > Am 10/13/12 7:47 AM,                                               
>>>>>>>> > schrieb Frank Rueter:
>>>>>>>> >> Same. It would indeed be very helpful. Has somebody sent in a       
>>>>>>>> >>                                         request yet?
>>>>>>>> >>
>>>>>>>> >>
>>>>>>>> >> On 13/10/12 6:54 AM, Holger Hummel|Celluloid VFX wrote:
>>>>>>>> >>> yes, you can.
>>>>>>>> >>> BUT:
>>>>>>>> >>> - it needs manual work: you need to know/find the min/max values. 
>>>>>>>> >>> they change from pass to pass, actually in most cases from frame 
>>>>>>>> >>> to frame.
>>>>>>>> >>> - it's quicker when you can just click on button to toggle this. 
>>>>>>>> >>> also because it does not conflict with some other VIWER_INPUT that 
>>>>>>>> >>> might be active.
>>>>>>>> >>>
>>>>>>>> >>> so +1 from me making this a feature request
>>>>>>>> >>>
>>>>>>>> >>> - Holger
>>>>>>>> >>>
>>>>>>>> >>>
>>>>>>>> >>> jbidwell wrote:
>>>>>>>> >>>> You can make a grade and group it, then name it "VIEWER_INPUT". 
>>>>>>>> >>>> The viewer will use that grade in the viewer whenever the IP 
>>>>>>>> >>>> button is active.
>>>>>>>> >>>>
>>>>>>>> >>>> - JB
>>>>>>>> >>>> ------------------------------------------------------------------------
>>>>>>>> >>>>
>>>>>>>> >>>> _______________________________________________
>>>>>>>> >>>> Nuke-users mailing list
>>>>>>>> >>>> [email protected], 
>>>>>>>> >>>> http://forums.thefoundry.co.uk/
>>>>>>>> >>>> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
>>>>>>>> >>>
>>>>>>>> >>
>>>>>>>> >> _______________________________________________
>>>>>>>> >> Nuke-users mailing list
>>>>>>>> >> [email protected], http://forums.thefoundry.co.uk/
>>>>>>>> >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
>>>>>>>> >
>>>>>>>> > _______________________________________________
>>>>>>>> > Nuke-users mailing list
>>>>>>>> > [email protected], http://forums.thefoundry.co.uk/
>>>>>>>> > http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> Nuke-users mailing list
>>>>>>>> [email protected], http://forums.thefoundry.co.uk/
>>>>>>>> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> Nuke-users mailing list
>>> [email protected], http://forums.thefoundry.co.uk/
>>> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
>> 
>> 
>> _______________________________________________
>> Nuke-users mailing list
>> [email protected], http://forums.thefoundry.co.uk/
>> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
> 
> _______________________________________________
> Nuke-users mailing list
> [email protected], http://forums.thefoundry.co.uk/
> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
_______________________________________________
Nuke-users mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users

Reply via email to