Kurosu
30th March 2003, 15:38
This set should fit the needs expressed in this (http://forum.doom9.org/showthread.php?s=&threadid=44964&perpage=20) thread, although I didn't have it in mind while making it. That's why it may be redundant with some other filters's uses. The included filters only work in YV12 colorspace, and are able to process separately each plane.
The offered filters aren't exactly atomic, but close to, and should be a good start point for a general use. Despite the huge speed impact (it will most likely make the script spend its time copying data), I've chosen to implement such idea after getting sick of rainbows that can only be filtered on static parts or with an hypothetic Fourrier notch filter. It's still of little efficiency, but at least, some other ideas have arisen to give it other possible uses :)
Get the package here (http://kurosu.inforezo.org/avs/MaskTools.zip).
I let you have ideas while reading section V ("Some practical uses") of MaskTools.txt, included in the package. I've tried some basic MMX optimizations, but there's still a lot of things to add, in particular a clamping function (limiter()'s code should help).
One last point: the idea certainly doesn't have any copyright, since masked filtering is as old as (modern) image processing (any free vs copyright-madness ignored). That's the reason behind the GPL license.
The offered filters aren't exactly atomic, but close to, and should be a good start point for a general use. Despite the huge speed impact (it will most likely make the script spend its time copying data), I've chosen to implement such idea after getting sick of rainbows that can only be filtered on static parts or with an hypothetic Fourrier notch filter. It's still of little efficiency, but at least, some other ideas have arisen to give it other possible uses :)
Get the package here (http://kurosu.inforezo.org/avs/MaskTools.zip).
I let you have ideas while reading section V ("Some practical uses") of MaskTools.txt, included in the package. I've tried some basic MMX optimizations, but there's still a lot of things to add, in particular a clamping function (limiter()'s code should help).
One last point: the idea certainly doesn't have any copyright, since masked filtering is as old as (modern) image processing (any free vs copyright-madness ignored). That's the reason behind the GPL license.