Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ethercrow/unufo

fork of resynthesizer (http://www.logarithmic.net/pfh/resynthesizer) gimp plugin aimed at better object removal while dropping texture transfer capabilities
https://github.com/ethercrow/unufo

Last synced: 24 days ago
JSON representation

fork of resynthesizer (http://www.logarithmic.net/pfh/resynthesizer) gimp plugin aimed at better object removal while dropping texture transfer capabilities

Awesome Lists containing this project

README

        

Unufo
=============

Unufo is the gimp plugin for removing UFOs from photos. People who don't know that also use it for retouching photos, torturing manga and just for lulz.

Unufo is originally based on Resynthesizer plugin, available at http://www.logarithmic.net/pfh/resynthesizer

Installation
============

make
make install # yes, without sudo. This installs plugin and loader into your $HOME/.gimp-2.6 directory

Development packages needed for compilation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* libgimp
* gtk

Usage
=====

This plug-in is used via the script-fu loader available at Filters/Enhance as 'Heal selection'.

Options:

* Radius to take texture from

This option is only meaningful when reference layer is **not** used

Source region is the bounding box of the destination region plus the border of width equal to this option's value. OK, you can drop re-reading the previous sentence and just look at the picture: TODO: actually add the picture

Quality/Performance impact: obviously, you should set this so that source region is relevant to the desired content in destination region. Performance impact is negligible.

* How many randomly chosen patches to consider as a source

The same as the previous option, but for the global search in source region. The best value for this parameter, however, is much less obvious and depends on the source region texture, quality requirements and the phase of the moon.

Generally, increasing this parameter's value causes linear computation time increase and (tux-knows-what-kind-of-function) quality increase.

* Patch size (larger = slower)

This parameter controls the size of patches used in all comparisons while searching. Again, the enlightening picture:
TODO: hey, I said add pictures!

Q/P impact: the most computation-intensive part of algorithm depends quadratically on this parameter. The best value for this parameter is about the size of distinguishable feature of the source region. Or, I guess, larger if the source region texture is highly regular.

* Transfer unit size (smaller = slower, but possibly less artifacts)

Q/P impact: computation time depends about inverse-quadratically on this parameter. You should set this as high as possible while not introducing blocking artifacts

* Invent gradients

This allows algorithm to fill the area of tranfer unit size with gradient, if that is better (i.e. minimizes the patch difference) than all reviewed patches (neighbour and from the source region)

Q/P impact: Performance impact is negligible. If you don't mind plain and boring gradients in your destination region, you should enable this parameter

* Max color adjustment applied to transferred patch
* Apply the same amount of adjustment to all channels
* Use manually defined reference area
* Reference map layer