diff --git a/Documentation/source/_groupFilter.rst b/Documentation/source/_groupFilter.rst index bcba102db4..3d2510822b 100644 --- a/Documentation/source/_groupFilter.rst +++ b/Documentation/source/_groupFilter.rst @@ -24,6 +24,7 @@ The following sections contain documentation about every node in the Filter gro plugins/net.sf.cimg.CImgExpression.rst plugins/fr.inria.Glow.rst plugins/net.sf.openfx.GodRays.rst + plugins/eu.cimg.Inpaint.rst plugins/net.sf.cimg.CImgLaplacian.rst plugins/net.sf.cimg.CImgMedian.rst plugins/net.sf.openfx.Shadertoy.rst diff --git a/Documentation/source/plugins/eu.cimg.Inpaint.rst b/Documentation/source/plugins/eu.cimg.Inpaint.rst new file mode 100644 index 0000000000..0c9b114830 --- /dev/null +++ b/Documentation/source/plugins/eu.cimg.Inpaint.rst @@ -0,0 +1,71 @@ +.. _eu.cimg.Inpaint: + +Inpaint node +============ + +*This documentation is for version 1.0 of Inpaint.* + +Description +----------- + +Inpaint (a.k.a. content-aware fill) the areas indicated by the Mask input using patch-based inpainting. + +Be aware that this filter may produce different results on each frame of a video, even if there is little change in the video content. To inpaint areas with lots of details, it may be better to inpaint on a single frame and paste the inpainted area on other frames (if a transform is also required to match the other frames, it may be computed by tracking). + +A tutorial on using this filter can be found at http://blog.patdavid.net/2014/02/getting-around-in-gimp-gmic-inpainting.html + +The algorithm is described in the two following publications: + +"A Smarter Examplar-based Inpainting Algorithm using Local and Global Heuristics for more Geometric Coherence." (M. Daisy, P. Buyssens, D. Tschumperlé, O. Lezoray). IEEE International Conference on Image Processing (ICIP'14), Paris/France, Oct. 2014 + +and + +"A Fast Spatial Patch Blending Algorithm for Artefact Reduction in Pattern-based Image Inpainting." (M. Daisy, D. Tschumperlé, O. Lezoray). SIGGRAPH Asia 2013 Technical Briefs, Hong-Kong, November 2013. + +Uses the 'inpaint' plugin from the CImg library. + +CImg is a free, open-source library distributed under the CeCILL-C (close to the GNU LGPL) or CeCILL (compatible with the GNU GPL) licenses. It can be used in commercial applications (see http://cimg.eu). The 'inpaint' CImg plugin is distributed under the CeCILL (compatible with the GNU GPL) license. + +Inputs +------ + ++----------+---------------+------------+ +| Input | Description | Optional | ++==========+===============+============+ +| Source |   | No | ++----------+---------------+------------+ +| Mask |   | Yes | ++----------+---------------+------------+ + +Controls +-------- + +.. tabularcolumns:: |>{\raggedright}p{0.2\columnwidth}|>{\raggedright}p{0.06\columnwidth}|>{\raggedright}p{0.07\columnwidth}|p{0.63\columnwidth}| + +.. cssclass:: longtable + ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Parameter / script name | Type | Default | Function | ++===========================================+===========+===========+======================================================================================================================================+ +| Patch Size / ``patchSize`` | Integer | 7 |   | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Lookup Size / ``lookupSize`` | Double | 16 |   | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Lookup Factor / ``lookupFactor`` | Double | 0.1 |   | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Blend Size / ``blendSize`` | Double | 1.2 |   | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Blend Threshold / ``blendThreshold`` | Double | 0 |   | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Blend Decay / ``blendDecay`` | Double | 0.05 |   | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Blend Scales / ``blendScales`` | Integer | 10 |   | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Allow Outer Blending / ``isBlendOuter`` | Boolean | On |   | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| (Un)premult / ``premult`` | Boolean | Off | Divide the image by the alpha channel before processing, and re-multiply it afterwards. Use if the input images are premultiplied. | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Invert Mask / ``maskInvert`` | Boolean | Off | When checked, the effect is fully applied where the mask is 0. | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ +| Mix / ``mix`` | Double | 1 | Mix factor between the original and the transformed image. | ++-------------------------------------------+-----------+-----------+--------------------------------------------------------------------------------------------------------------------------------------+ diff --git a/Documentation/source/plugins/net.sf.openfx.Shadertoy.rst b/Documentation/source/plugins/net.sf.openfx.Shadertoy.rst index 43211aaddf..9d5df1f5b9 100644 --- a/Documentation/source/plugins/net.sf.openfx.Shadertoy.rst +++ b/Documentation/source/plugins/net.sf.openfx.Shadertoy.rst @@ -694,7 +694,7 @@ Controls | | | | | If the checkbox is checked but is not enabled (i.e. it cannot be unchecked), GPU render can not be enabled or disabled from the plugin and is probably part of the host options. | | | | | | If the checkbox is not checked and is not enabled (i.e. it cannot be checked), GPU render is not available on this host. | +------------------------------------------------+-----------+-----------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| CPU Driver / ``cpuDriver`` | Choice | llvmpipe | Driver for CPU rendering. May be "softpipe" (slower, has GL\_EXT\_texture\_filter\_anisotropic GL\_ARB\_texture\_query\_lod GL\_ARB\_pipeline\_statistics\_query) or "llvmpipe" (faster, has GL\_ARB\_buffer\_storage GL\_EXT\_polygon\_offset\_clamp). | +| CPU Driver / ``cpuDriver`` | Choice | llvmpipe | Driver for CPU rendering. May be "softpipe" (slower, has GL\_EXT\_texture\_filter\_anisotropic GL\_ARB\_texture\_query\_lod GL\_ARB\_pipeline\_statistics\_query), "llvmpipe" (faster, has GL\_ARB\_buffer\_storage GL\_EXT\_polygon\_offset\_clamp) or "swr" (OpenSWR, not always available). | +------------------------------------------------+-----------+-----------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Renderer Info... / ``rendererInfo`` | Button |   | Retrieve information about the current OpenGL renderer. | +------------------------------------------------+-----------+-----------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+