sam
1ff729fd7b
* convolution.c: fix a small memory leak in the convolution filter.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2684 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
77ec441434
* blur.c: implement box blur; currently runs in O(n) but we could make it
O(1) trivially.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2681 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
b7c2d1f847
* autocontrast.c: simple autocontrast filter; does not work very well.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2680 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
8c4591f1d9
* blur.c: remove the blurring code and use our generic convolution
routine, which correctly recognises the Gaussian kernel as a separable
filter. As a result, it is now 50% faster because the normalisation
occurs at kernel build time.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2661 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
03ca8dc76d
* convolution.c: automatically detect when a convolution filter is separable
and switch algorithms to speed up processing.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2660 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
89f35cb8fd
* convolution.c: generic convolution method. Does not take advantage of
separable kernels yet.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2658 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
4a278923ff
* blur.c: adapt the kernel size to large values of dx and/or dy.
* blur.c: fix the dx/dy sign meaning.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2643 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
a11f92ff95
* blur.c: support for greyscale images.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2634 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
877e7b21a9
* filter/blur.c: avoid annoying side effects with very small or negative
blur radii.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2619 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
ea38654c88
* filter/blur.c: minor optimisation in the kernel generation.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2618 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
4a857277a7
* blur.c: support for variable blur radius and Gaussian offset.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2617 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
42af43ad99
* blur.c: separated blur; it's now incredibly faster.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2608 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
af0c7f52fb
* blur.c: fix overflow errors.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2606 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
31328a14aa
* Big API reorganisation. Now libpipi can transparently convert between
colour spaces for a given image. For instance, if pipi_gaussian_blur is
applied to a 32-bpp image, it is automatically converted to gamma-corrected
32-bit floats beforehands, then converted back to normal.
* TODO: clipping, regions of interest, more formats, getpixel macros...
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2605 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago
sam
7d147f3576
* Test implementation of Gaussian blurring. It's awfully slow and does not
use the separation property, but it's just for a test.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2603 92316355-f0b4-4df1-b90c-862c8a59935f
16 years ago