Ghostbuster - An Avisynth filter for the removal of ghosting
By Ross Thomas <email@example.com>
Ghostbuster is an Avisynth filter for removing "ghosts" from a clip. A ghost in this context is a faint copy of the picture offset horizontally. It works by either subtracting or adding the image from itself at the specified offset. With some tweaking the result, while not perfect, can be very pleasing. (That is to say, Ghostbuster is basically a YUY2 Avisynth implementation of the Exorcist VirtualDub filter by Chris Wojdon. It should be parameter-compatible. See his site.)
Ghostbuster(clip clip, int offset, int strength)
The defaults are arbitrary. You'll want to change them.
|clip||Specifies the clip to affect.||last|
|offset||A positive offset indicates the ghost copy is that many pixels to the right; negative, that many pixels to the left. A zero offset is invalid.||3|
|strength||The strength (-100 to 100, but not zero) indicates the intensity of the ghost copy. Whether the strength is positive or negative determines whether the image will be added or subtracted, respectively, from itself. This is somewhat hard to explain, but the effect is easy to see. Experiment!||10|
| || || |
The Exorcist documentation (link above) provides some more information as well as illustrative screenshots. If you're like me you'll fire up Exorcist, use the preview window to find the best values, then use those values as parameters for Ghostbuster. It's much easier that way.
- Processes only the luma component.
- Introduces an overall brightness change as a side-effect.
- MMX/SSE optimizations (I have to learn x86 assembler first...).
- Process chroma.
- Perhaps compensate for brightness change (or eliminate it).
- 0.1 - First release. Alpha code. Danger, Will Robinson!
Download here: SansGrip's Avisynth Filters [DOWNLOADS]