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] <mailto:[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]
    <mailto:[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]
        <mailto:[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]
            <mailto:[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]
                <mailto:[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]
                    <mailto:[email protected]>,
                    http://forums.thefoundry.co.uk/
                    >>>>
                    
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
                    >>>
                    >>
                    >> _______________________________________________
                    >> Nuke-users mailing list
                    >> [email protected]
                    <mailto:[email protected]>,
                    http://forums.thefoundry.co.uk/
                    >>
                    
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
                    >
                    > _______________________________________________
                    > Nuke-users mailing list
                    > [email protected]
                    <mailto:[email protected]>,
                    http://forums.thefoundry.co.uk/
                    >
                    
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users

                    _______________________________________________
                    Nuke-users mailing list
                    [email protected]
                    <mailto:[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