Nuke Tips – Using MarkerRemoval on Greenscreen or Any Backdrop

If you ever need a tool that quickly removes any marker from a greenscreen or any backdrop, the MarkerRemoval node is very handy.

The drawback is the time consuming process the footage when removing the markers so make sure to render out your clean plate when done removing all the markers.

A quick sample script that I created to demonstrate the effect. This script is fully created in Nuke so there is no actual live action plate to practice on. Hollywood Camera Work is a good site to download practice footages if you ever need one.

set cut_paste_input [stack 0]
version 8.0 v5
BackdropNode {
 inputs 0
 name BackdropNode1
 tile_color 0x8e8e3800
 label "Fake Greenscreen"
 note_font_size 24
 selected true
 xpos 577
 ypos -1169
 bdwidth 228
 bdheight 235
}
BackdropNode {
 inputs 0
 name BackdropNode2
 tile_color 0xaaaaaa00
 label Marker
 note_font_size 30
 selected true
 xpos 534
 ypos -917
 bdwidth 271
 bdheight 172
}
StickyNote {
 inputs 0
 name StickyNote1
 label "Roto markers that you \nwant to remove in MarkerRemoval.\n\nMarkerRemoval by default will\nuse the alpha output as the\nselection but this can be\nchange in the\nControl Channel settings."
 note_font "Verdana Bold"
 selected true
 xpos 819
 ypos -727
}
Roto {
 inputs 0
 curves {{{v x3f99999a}
  {f 0}
  {n
   {layer Root
    {f 0}
    {t x44700000 x44070000}
    {a}
    {curvegroup Ellipse5 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {xc191cd80 0}
        {x449f6000 x442e0000}
        {x4191cd80 0}
        {0 xc191cda0}
        {x44a38000 x44364000}
        {0 x4191cda0}
        {x4191cd80 0}
        {x449f6000 x443e8000}
        {xc191cd80 0}
        {0 x4191cda0}
        {x449b4000 x44364000}
        {0 xc191cda0}}}
      {cc
       {f 8192}
       {p
        {{{x41a80000 xc191cd80}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 x4191cd80}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc191cda0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x4191cda0}}}
        {{{x41a80000 x4191cd80}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 xc191cd80}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x4191cda0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc191cda0}}}}}}
     {tx x41a80000 x449f6000 x44364000}
     {a g 0 b 0 osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40e00000}}
    {curvegroup Ellipse4 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {xc1848c80 0}
        {x44954000 x44300000}
        {x41848c80 0}
        {0 xc16e9640}
        {x44990000 x4436c000}
        {0 x416e9640}
        {x41848c80 0}
        {x44954000 x443d8000}
        {xc1848c80 0}
        {0 x416e9640}
        {x44918000 x4436c000}
        {0 xc16e9640}}}     idem}
     {tx x41a80000 x44954000 x4436c000}
     {a osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40e00000 b 0 g 0}}
    {curvegroup Ellipse3 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {xc191cda0 0}
        {x43fd8000 x441c0000}
        {x4191cda0 0}
        {0 xc188f780}
        {x44070000 x4423c000}
        {0 x4188f780}
        {x4191cda0 0}
        {x43fd8000 x442b8000}
        {xc191cda0 0}
        {0 x4188f780}
        {x43ed0000 x4423c000}
        {0 xc188f780}}}
      {cc
       {f 8192}
       {p
        {{{x41a80000 xc191cda0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 x4191cda0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc188f780}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x4188f780}}}
        {{{x41a80000 x4191cda0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 xc191cda0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x4188f780}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc188f780}}}}}}
     {tx x41a80000 x43fd8000 x4423c000}
     {a g 0 b 0 osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40e00000}}
    {curvegroup Ellipse2 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {xc1848c60 0}
        {x43ee0000 x44088000}
        {x41848c60 0}
        {0 xc15cea00}
        {x43fd0000 x440ec000}
        {0 x415cea00}
        {x41848c60 0}
        {x43ee0000 x44150000}
        {xc1848c60 0}
        {0 x415cea00}
        {x43df0000 x440ec000}
        {0 xc15cea00}}}
      {cc
       {f 8192}
       {p
        {{{x41a80000 xc1848c60}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 x41848c60}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc15cea00}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x415cea00}}}
        {{{x41a80000 x41848c60}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 xc1848c60}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x415cea00}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc15cea00}}}}}}
     {tx x41a80000 x43ee0000 x440ec000}
     {a g 0 b 0 osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40e00000}}
    {curvegroup Ellipse1 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {xc1802150 0}
        {x43cf8000 x44280000}
        {x41802150 0}
        {0 xc1802140}
        {x43de0000 x442f4000}
        {0 x41802140}
        {x41802150 0}
        {x43cf8000 x44368000}
        {xc1802150 0}
        {0 x41802140}
        {x43c10000 x442f4000}
        {0 xc1802140}}}
      {cc
       {f 8192}
       {p
        {{{x41a80000 xc1802150}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 x41802150}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc1802140}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x41802140}}}
        {{{x41a80000 x41802150}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 xc1802150}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x41802140}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc1802140}}}}}}
     {tx x41a80000 x43cf8000 x442f4000}
     {a g 0 b 0 osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40e00000}}}}}}
 toolbox {selectAll {
  { selectAll str 1 ssx 1 ssy 1 sf 1 }
  { createBezier str 1 ssx 1 ssy 1 sf 1 sb 1 tt 4 }
  { createBezierCusped str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { createBSpline str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { createEllipse str 1 ssx 1 ssy 1 sf 1 sb 1 tt 7 }
  { createRectangle str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { createRectangleCusped str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { brush str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { eraser src 2 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { clone src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { reveal src 3 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { dodge src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { burn src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { blur src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { sharpen src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { smear src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
} }
 toolbar_brush_hardness 0.200000003
 toolbar_source_transform_scale {1 1}
 toolbar_source_transform_center {960 540}
 color {1 0 0 1}
 colorOverlay {0 0 0 0}
 lifetime_type "all frames"
 lifetime_start 21
 lifetime_end 21
 motionblur_shutter_offset_type centred
 source_black_outside true
 createNewTrack {{-1} "-1\t(none)\t-1" "1000\tNew Track Layer\t1000"}
 name Roto4
 selected true
 xpos 544
 ypos -837
}
Ramp {
 inputs 0
 p0 {52 10}
 p1 {122 776}
 type plinear
 name Ramp1
 selected true
 xpos 587
 ypos -962
}
push $cut_paste_input
Noise {
 lacunarity 1.66
 gain 0.396
 gamma 0.475
 center {960 540}
 name Noise1
 selected true
 xpos 599
 ypos -998
}
Constant {
 inputs 0
 channels rgb
 color {0 0.9200000167 0.1300019771 1}
 name Constant2
 selected true
 xpos 715
 ypos -1089
}
Merge2 {
 inputs 2
 operation multiply
 mix 0.78
 name Merge6
 selected true
 xpos 715
 ypos -998
}
Merge2 {
 inputs 2
 operation multiply
 mix 0.685
 name Merge7
 selected true
 xpos 715
 ypos -962
}
Merge2 {
 inputs 2
 name Merge5
 selected true
 xpos 715
 ypos -837
}
Remove {
 channels alpha
 name Remove1
 selected true
 xpos 715
 ypos -785
}
Roto {
 output alpha
 curves {{{v x3f99999a}
  {f 0}
  {n
   {layer Root
    {f 0}
    {t x44700000 x44070000}
    {a}
    {curvegroup Ellipse3 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {xc1f0cbd0 0}
        {x43f0bfff x44034000}
        {x41f0cbd0 0}
        {0 xc1b0bb20}
        {x4405ffff x440d4000}
        {0 x41b0bb20}
        {x41f0cbd0 0}
        {x43f0bfff x44174000}
        {xc1f0cbd0 0}
        {0 x41b0bb20}
        {x43d57fff x440d4000}
        {0 xc1b0bb20}}}
      {cc
       {f 8192}
       {px x41a80000
        {xc1f0cbd0 0}
        {0 0}
        {x41f0cbd0 0}
        {0 xc1b0bb20}
        {0 0}
        {0 x41b0bb20}
        {x41f0cbd0 0}
        {0 0}
        {xc1f0cbd0 0}
        {0 x41b0bb20}
        {0 0}
        {0 xc1b0bb20}}}}
     {tx x41a80000 x43ef4000 x440c4000}
     {a osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40e00000}}
    {curvegroup Ellipse2 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {xc1f9a200 0}
        {x44012000 x44190000}
        {x41f9a200 0}
        {0 xc1b52640}
        {x440f4000 x44234000}
        {0 x41b52640}
        {x41f9a200 0}
        {x4400e000 x44304000}
        {xc1f9a200 0}
        {0 x41b52640}
        {x43e60001 x44234000}
        {0 xc1b52640}}}
      {cc
       {f 8192}
       {px x41a80000
        {xc1f9a200 0}
        {0 0}
        {x41f9a200 0}
        {0 xc1b52640}
        {0 0}
        {0 x41b52640}
        {x41f9a200 0}
        {0 0}
        {xc1f9a200 0}
        {0 x41b52640}
        {0 0}
        {0 xc1b52640}}}}
     {tx x41a80000 x44002000 x44228000}
     {a osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40e00000}}
    {curvegroup Ellipse1 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {xc1df1f80 0}
        {x43ce4000 x4421c000}
        {x41df1f80 0}
        {0 xc1d413c0}
        {x43e78000 x442dc000}
        {0 x41d413c0}
        {x41df1f80 0}
        {x43ce4000 x4439c000}
        {xc1df1f80 0}
        {0 x41d413c0}
        {x43b50000 x442dc000}
        {0 xc1d413c0}}}
      {cc
       {f 8192}
       {p
        {{{x41a80000 xc1df1f80}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 x41df1f80}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc1d413c0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x41d413c0}}}
        {{{x41a80000 x41df1f80}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 xc1df1f80}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 x41d413c0}}}
        {{{x41a80000 0}}
      {{x41a80000 0}}}
        {{{x41a80000 0}}
      {{x41a80000 xc1d413c0}}}}}}
     {tx x41a80000 x43ce4000 x442dc000}
     {a osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40e00000}}
    {curvegroup Bezier2 512 bezier
     {{cc
       {f 8192}
       {px x41a80000
        {0 0}
        {x44902000 x44294000}
        {0 0}
        {0 0}
        {x44a6c000 x44294000}
        {0 0}
        {0 0}
        {x44a44000 x44474000}
        {0 0}
        {0 0}
        {x448ce000 x44444000}
        {0 0}}}     idem}
     {tx x41a80000 x449a0000 x44378000}
     {a osw x41200000 osf 0 str 1 spx x44700000 spy x44070000 sb 1 ltn x41a80000 ltm x41a80000 tt x40800000}}}}}}
 toolbox {selectAll {
  { selectAll str 1 ssx 1 ssy 1 sf 1 }
  { createBezier str 1 ssx 1 ssy 1 sf 1 sb 1 tt 4 }
  { createBezierCusped str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { createBSpline str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { createEllipse str 1 ssx 1 ssy 1 sf 1 sb 1 tt 7 }
  { createRectangle str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { createRectangleCusped str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { brush str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { eraser src 2 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { clone src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { reveal src 3 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { dodge src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { burn src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { blur src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { sharpen src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
  { smear src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 }
} }
 toolbar_brush_hardness 0.200000003
 toolbar_source_transform_scale {1 1}
 toolbar_source_transform_center {960 540}
 colorOverlay {0 0 0 0}
 lifetime_type "all frames"
 lifetime_start 21
 lifetime_end 21
 motionblur_shutter_offset_type centred
 source_black_outside true
 createNewTrack {{-1} "-1\t(none)\t-1" "1000\tNew Track Layer\t1000"}
 name Roto3
 selected true
 xpos 715
 ypos -705
}
Blur {
 channels alpha
 name Blur1
 selected true
 xpos 715
 ypos -669
}
MarkerRemoval {
 linearsearch 200
 name MarkerRemoval1
 selected true
 xpos 715
 ypos -592
}

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.