63 Commits (756cc89890f3fc82911730ac29c376ff98f63986)

Author SHA1 Message Date
  sam 36fb60cacf * transform.c: implement pipi_rotate90, pipi_rotate180 and pipi_rotate270. 16 years ago
  sam 2da45f954b * Implement pipi_vflip() and pipi_hflip(). 16 years ago
  sam 0cab178432 * color.c: implement pipi_threshold(). 16 years ago
  sam 31fec9b526 * Add pipi_dilate() / pipi_erode() and --dilate / --erode. 16 years ago
  sam d9f3b654bc * median.c: add a median filter. Highly unoptimised for now. 16 years ago
  sam baa3d82e4b * Move the palette reduction algorithm into pipi_reduce(). 16 years ago
  sam e50ce5c67a * color.c: implement pipi_brightness() and pipi_contrast(). 16 years ago
  jylam 22b3af001b * Added string.h to list of included files, for memcpy() 16 years ago
  sam 18e1cc4471 * Add pipi_invert() to invert an image's colours. 16 years ago
  sam 48b881b6fa * Add pipi_tile, to create image mosaics. 16 years ago
  sam 97930521fc * blur.c: add an argument to the gaussian convolution to specify an angle. 16 years ago
  sam b74fad466b * Implement difference, multiply, divide, screen and overlay blend methods. 16 years ago
  sam da84205cde * subadd.c: add pipi_sub() and pipi_add() as another way to combine two 16 years ago
  sam 6fb5354eff * minmax.c: add pipi_min() and pipi_max() as another way to combine two 16 years ago
  sam 9bd6b555f9 * mean.c: implement pipi_mean() to compute a mean image. 16 years ago
  sam 25cdf35a86 * jajuni.c: add Jarvis-Judice-Ninke dithering. It's a Floyd-Steinberg-like 16 years ago
  sam eb9a270380 * pipi_dither_ordered() now takes two arguments; any image can be used as 16 years ago
  sam 3014994c61 * codec.c: support for stock images in pipi_load(). 16 years ago
  sam 0f3943d0fe * Add functions that handle a stack-based processing queue. 16 years ago
  sam 77ec441434 * blur.c: implement box blur; currently runs in O(n) but we could make it 16 years ago
  sam b7c2d1f847 * autocontrast.c: simple autocontrast filter; does not work very well. 16 years ago
  sam c269c219b2 * Get rid of test.c, it was no longer useful anyway. 16 years ago
  jylam baa61a9f6d * Handle alpha layer in floodfill (but don't make it conditionnal to the algorithm) 16 years ago
  jylam 290e151913 * First shot of a floodfiller (both u32 and float, 4 neighbours) 16 years ago
  sam 0eda956bfc * random.c: implement random dithering using a deterministic pseudo-RNG. 16 years ago
  sam 66f9ce5ea4 * pipi.c: implement pipi_copy(). 16 years ago
  sam a17c6753e3 * pixels.c: store byte length and bits-per-pixel value in the pipi_pixels_t 16 years ago
  sam 41efcdecc0 * Prefix dithering functions with _dither_ to avoid namespace cluttering. 16 years ago
  sam 6a3309663e * ordered.c: implement Bayer dithering (pretty trivial). 16 years ago
  sam 89f35cb8fd * convolution.c: generic convolution method. Does not take advantage of 16 years ago
  sam 87f8e922ab * Error diffusion methods now support either raster or serpentine scan. 16 years ago
  sam 302ce37f8e * ostromoukhov.c: Ostromoukhov's simple error diffusion algorithm. 16 years ago
  sam 628c2618da * dbs.c: new dithering function: Direct Binary Search. One of the best 16 years ago
  sam eaad4db6f9 * measure.c: there is now pipi_measure_msd in addition to pipi_measure_rmsd. 16 years ago
  sam 1408cff41d * Add Floyd-Steinberg grayscale dithering. 16 years ago
  sam 9a536afd4f * measure.c: started writing error/measure functions. First one is RMSD. 16 years ago
  sam eea9f9b829 * pixels.c: start supporting grayscale images. 16 years ago
  sam 0d8f01566b * pixels.c: add support for 24-bpp BGR format. 16 years ago
  sam 8953c91d6b * pipi.c: reimplement pipi_new() without relying on the underlying codec 16 years ago
  sam 4a857277a7 * blur.c: support for variable blur radius and Gaussian offset. 16 years ago
  sam 31328a14aa * Big API reorganisation. Now libpipi can transparently convert between 16 years ago
  sam 7d147f3576 * Test implementation of Gaussian blurring. It's awfully slow and does not 16 years ago
  sam 1d6c2c507d * Implemented 24 -> 16 bpp dithering. 16 years ago
  sam 735b2a5da0 * Checking in an old Rubik's cube dithering test. 16 years ago
  sam d8aa3a24c3 * getpixel/setpixel functions use doubles instead of ints for now. 16 years ago
  sam 84cc96a98e * Starting image resizing. X-wise resize works so far. 16 years ago
  sam 53aa513e3e * Import image loading features from PWNtcha. As they are more than 4-year 17 years ago
  sam 08e83cb836 * Initial code skeleton. 17 years ago