8000 GitHub - gonzalo476/DespillAP: A Nuke plugin that applies advanced despill algorithms to remove unwanted color spill from images.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

A Nuke plugin that applies advanced despill algorithms to remove unwanted color spill from images.

License

Notifications You must be signed in to change notification settings

gonzalo476/DespillAP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Image

Static Badge Static Badge Static Badge

DespillAP is a native CPU-based plugin for Nuke, currently available for Windows and Linux. It is built using the original algorithms developed by Adrian Pueyo for the apDespill gizmo. You can explore more of his tools at the following link.

DespillAP allows you to remove the spill of a specific color from the input image, set a limit to control the amount of despill applied, inject the overall color to perform a proper despill, and apply a respill based on the desired background.

Image

Features

  • Select a default color (Red, Green, Blue, or Pick), or choose a custom color from the image to remove the spill from the input.
  • Absolute Mode normalizes the spill relative to the intensity of the selected color. Mostly like a chroma keying algorithm.
  • Despill algorithms include Average, Max, Min, and Custom weight.
  • Hue offset adjusts the hue (in degrees) of the precomputed despill, if needed.
  • Hue limit controls the intensity of the despill effect on the image. If an alpha is connected to the Limit input, the despill strength will be driven by the opacity of that alpha.
  • Hue mask selects the desired channel from the Limit input to apply the limit.
  • Protect Tones excludes a specific color in the image from being affected by the despill.
  • Protect Preview displays a preview of the area that will be excluded from the despill.
  • Protect color selects the reference color to be protected from the despill.
  • Protect tolerance, similar to a threshold, expands or narrows the color range to include similar tones.
  • Protect effect controls how strongly the selected color is being protected.
  • Respill math includes Rec 709, Ccir 601, Rec 2020, Average, and Max for calculating the luminance of spill and respill colors.
  • Respill color is the color used to replace the selected spill. If the Respill input is connected, it will be multiplied by the selected color.
  • Respill blackpoint and whitepoint were added to control the areas where the calculated luminance matte is affecting the respill.
  • Output output_despill allows you to choose between the despilled image (Despill) or the calculated spill (Spill) as the output.
  • Output Output Spill Alpha generates an alpha channel based on the calculated spill amount; if disabled, the incoming alpha is passed through unchanged.
  • Output Invert inverts the calculated spill alpha.
  • Output channel selects the channel where the calculated spill will be output.

Installing

To download the plugin, go to the Releases section and download the latest version. To use it, the simplest way to get started is by dragging the plugin to your .nuke folder and when opening Nuke, select Other (box icon) > All plugins > Update and search for 'DespillAP', happy comping!

The more complete way (recommended): once you have the plugin downloaded, go to your .nuke folder and create a folder called DespillAP. Inside it, create only one file called menu.py. Add the following lines:

import nuke

toolbar = nuke.toolbar("Nodes")
plugin_menu = toolbar.addMenu("DespillAP")
plugin_menu.addCommand("Keyer/DespillAP", "nuke.createNode('DespillAP')")

Your Linux folder structure should look like this:

.nuke/
└── DespillAP/
    ├── menu.py
    └── DespillAP.so

or in the case of Windows:

.nuke/
└── DespillAP/
    ├── menu.py
    └── DespillAP.dll

To finish, open your .nuke/init.py file (if you don't have i 791F t, you can create it) and add the following lines:

nuke.pluginAddPath('DespillAP')

In case you have different versions installed on your system (i.e., Nuke12.1, Nuke12.2), you can add an exception in your menu.py so it doesn't interfere with other versions:

if nuke.NUKE_VERSION_STRING=="12.1v2":
    nuke.pluginAddPath('DespillAP')

And that's it! Nuke should load the plugin from the moment you open the program without needing to always press Update.

Build

All builds were created locally using Docker, thanks to the open-source project NukeDockerBuild by Gilles Vink.
GitHub – NukeDockerBuild.

Once you have the image locally—either for Windows or Linux (nukedockerbuild:12.1-windows or nukedockerbuild:12.1-linux .. )—you can run all builds sequentially using Taskfile (Taskfile.yml).

task build-all

Or run builds by platform and Nuke version using the format build-PLATFORM:NUKE_VERSION:

task build-linux:12.1
task build-windows:12.1

Or build for both platforms using a specific Nuke version with the format build-single:NUKE_VERSION:

task build-single:12.1

To clean your output directory after building, use this if a directory named artifacts has been created:

task clean

To clean only the build folders created during the build process—while keeping the artifacts directory, which stores the compiled libraries or binaries—use the following:

task clean-builds

To display a list of all compiled artifacts or binaries, simply run:

task show-artifacts

To create .zip packages for release, this will generate a separate zip file for each .so and .dll created, following the naming structure PluginName-NukeVersion-Platform.zip.

Note: This requires the zip utility to be installed. On Linux, you can install it using: sudo apt install zip.

task package

License

DespillAP is distributed under the MIT License with some restrictions. See the License for details.

Maintainers

DespillAP plugin is maintained by Gonzalo Rojas.

About

A Nuke plugin that applies advanced despill algorithms to remove unwanted color spill from images.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published
0