FineDehalo

From Avisynth wiki
Jump to: navigation, search
Abstract
Author cretindesalpes
Version 1.1
Download FineDehalo.avsi
Category Dehalo
License WTFPL
Discussion

Contents

[edit] Description

Halo removal script that uses DeHalo_alpha with a few masks and optional contra-sharpening to try remove halos without removing important details (like line edges). It also includes FineDehalo2, this function tries to remove 2nd order halos. See script for extensive information.

[edit] Requirements

[edit] Required Plugins

[edit] Required Scripts


[edit] Syntax and Parameters

FineDehalo (clip src, float "rx", float "ry", int "thmi", int "thma", int "thlimi", int "thlima", float "darkstr", float "brightstr", int "showmask", float "contra", bool "excl", float "edgeproc")


clip  src =
Input clip.


float  rx = 2.0
float  ry = rx
The radii for halo removal in DeHalo_alpha.
Note: This function is rather sensitive to the radius settings. Set it as low as possible! If radius is set too high, it will start missing small spots.
Range: 1.0 to 3.0


int  thmi = 80
int  thma = 128
Minimum and maximum threshold for sharp edges; keep only the sharpest edges (line edges). To see the effects of these settings take a look at the strong mask (showmask=4).


int  thlimi = 50
int  thlima = 100
Minimum and maximum limiting threshold; includes more edges than previously, but ignores simple details.


float  darkstr = 1.0
float  brightstr = 1.0
DeHalo_alpha strength factors for processing dark and bright halos. Default 1.0 both for symmetrical processing.
On Comics/Anime, darkstr=0.4~0.8 sometimes might be better ... sometimes. In general, the function seems to preserve dark lines rather well.
Range: 0.0 to 1.0 [<0.0 and >1.0 possible]


int  showmask = 0
Shows mask; useful for adjusting settings.
  • 0 : none
  • 1 : outside mask
  • 2 : shrink mask
  • 3 : edge mask
  • 4 : strong mask


float  contra = 0.0
contra-sharpening;
  • 0.0 : bypass
  • 1.0 : normal contra-sharp


bool  excl = true
  • false : bypass
  • true : will activate an additional step (exclusion zones) to make sure that the main edges are really excluded. We do not want them to be smoothed by the halo removal.




[edit] FineDehalo2

FineDehalo2 (clip src, string "hconv", string "vconv", int "showmask")


clip  src =
Input clip.


string  hconv = "-1 -2 0 0 40 0 0 -2 -1"
string  vconv = "-2 -1 0 0 40 0 0 -1 -2"
Horizontal and vertical convolutions.


int  showmask = 0
  • 0 : no
  • 1 : yes


[edit] Examples

FineDehalo with default values:

AviSource("Blah.avi")
FineDehalo(rx=2.0, ry=2.0, thmi=80, thma=128, thlimi=50, thlima=100, \
           darkstr=1.0, brightstr=1.0, showmask=0, contra=0.0, excl=true)


[edit] Changelog

 Changes 200?-??-??:
     - Initial release


[edit] External Links

The original source is from this script posted here: Pastebin - archived

mod for script to use an external dehalo filter and has other features posted here: Pastebin

The following script is missing FineDehalo2: Pastebin - archived


Back to External Filters


Personal tools