warp v0.1 <-
click here, it's a link!
warp is a geometry correction filter which uses control points and a thin plate spline (as used in morphing) to correct or distort a video's geometry. I have no idea if anyone is going to find this useful.
Documentation (such as it is), examples, and source are included. The same DLL also provides a new version of
quad which supports more colour spaces (all the "classic" ones, plus 8-bit planar RGB).
x86 and x64 DLLs, both static and dynamically linked, are provided. SSE2 is definitely required, possibly SSE3. Sorry, luddites!
It's so fancy it even has its own demo/tutorial video:
https://www.youtube.com/watch?v=SG1eex7HmLM
Recommended companion software:
Hugin
Code:
warp (v0.1)
===========
A collection of geometry correction filters using control points, specified
either as a list of numbers, a string, or with a Hugin project file
(see http://hugin.sourceforge.net/)
(c) David Horman, 2019
Description
===========
warp takes a list of control points - pairs of image coordinates - and
warps the input video using a thin plate spline (as used in morphing)
such that the coordinates of the first point in a pair are moved to the
position of the second point in the pair, with the rest of the image
distorted as smoothly as possible.
Control points are specified either directly as filter parameters, or as a
whitespace- and/or comma-separated string, or by passing the filename of a
Hugin project file (.pto). A separate guide to creating a warp-compatible
Hugin project is included.
quad is a reimplentation of my old quad filter. It remaps an image based on
one or two specified quadrilaterals.
warp_series takes map frames generated by warp and uses them as animation
keyframes, blending them to provide smooth transitions between warps.
warp_grid is a helper filter which draws a grid on a video clip.
Please refer to the individual documentation files for usage and parameters.