Latest News

14 August 2017

Guile-CV version 0.1.6 is released.

Here is a summary of the changes since version 0.1.5. See Guile-CV git summary and git log for a complete description:

Interface changes

  • im-normalize

    Adding an optional #:key (val 255.0), since we need to be able to normalize to specific values in some circumstances, such as, for example, to normalize gray level co-occurrence matrices.

  • f32vector-reduce:

    The arguments order has been changed for 'vector proc default' not 'proc default vector', because it is the order we use in im-reduce and im-reduce-channel - as [almost] all other im-* procedures or methods take an image as their first argument. As a user, it is also a bit more naturel, imo at least, to 'reduce image using proc, return default if the image is empty'.

  • im-add

    All linear algebra matrix methods now accept any number of images or channels. Note that due to the inherent checks between lines and columns of intermediate results, im-multiply-channel and im-divide-channel methods arguments must be a series of at least one tuple(s) composed of three values - channel width height - represented in the manual as: c1 w1 h1 c2 w2 h2 c3 w3 h3 …

  • im-collect:

    Updated so its interface is 'identical' to im-map and friends, and a typical call now looks like: im-collect what i1 i2 i3 … (instead of im-collect images what).

New interfaces

  • im-range
  • im-range-channel
  • im-min
  • im-min-channel
  • im-max
  • im-max-channel
  • im-map
  • im-map-channel
  • im-reduce
  • im-reduce-channel
  • f32vector->s32vector
  • f32vector-range
  • s32vector-range
  • s32vector-min
  • s32vector-max
  • s32vector-reduce
  • s32vector->f32vector

Bug fixes

  • im-normalize:

    the width and height of the result normalized image were inadvertently inverted, now fixed.

  • f32vector-matrix-multiply:

    the sub results were inadvertently using 'n' instead of 'p' to compute their destination position in the 'n x p' cells returned result f32vector, now fixed.

Older News

24 July 2017

Guile-CV version 0.1.5 is released.

Here is a summary of the changes since version 0.1.4. See Guile-CV git summary and git log for a complete description:

Interface changes

  • dark -> black
    light -> white:
    • both in the source code (optional kw default values)
    • and in the documentation

New interfaces

  • im-delineate
  • im-delineate-channel
  • im-distance-map
  • im-distance-map-channel
  • im-canny
  • im-canny-channel
  • im-xor
  • f32vector-xor-at-offset

Bug fixes

  • Import export test-suite
  • Error message for im-gaussian-gradient
  • Documentation typos
  • Histogram gray legends below their histogram

24 May 2017

Guile-CV version 0.1.4 is released.

This is the first public release of Guile-CV, earlier releases were made available to GNU evaluators and Savannah hackers only.

Here is a summary of the changes since version See Guile-CV git summary and git log for a complete description:


  • Makeinfo >= 6.3
  • Latex: any modern latex distribution will do

    documentclass: standalone.

    packages: inputenc, fontenc, lmodern, xcolor, booktabs, siunitx, iwona

API changes

  • im-properties:
    • renamed im-features
  • im-*grey* procedures and methods:
    • renamed im-*gray*
    • dito for arguments
    • GREY -> GRAY in the documentation
  • colour -> color
    • both in the source code (arg and kw arg names)
    • and in the documentation
  • f32vector-* procedures:
    • use #:key, not #:optional
  • im-padd
    • accept a #:color optional keyword argument
  • f32vector-multiply:
    • renamed f32vector-matrix-multiply

New procedures

  • f32vector-inverse
  • f32vector-reduce
  • f32vector-mean
  • f32vector-std-dev
  • im-add
  • im-add-channel
  • im-subtract
  • im-subtract-channel
  • im-multiply
  • im-multiply-channel
  • im-divide
  • im-divide-channel
  • im-inverse
  • im-inverse-channel
  • im-compose
  • im-compose-channels
  • im-particles
  • im-particle-clean
  • im-histogram

21 April 2017

Guile-CV is now part of GNU!

We are doing the home work to convert the headers, links, mailing list, web pages ... finalize some of the coding we were working on and release 0.1.4, the first public release, very soon now, stay tuned.

13 March 2017

Guile-CV is now on Savannah nongnu.

The GNU evaluation of Guile-CV has been completed on March the 11th, 2017, but due to backlog, we've been informed then that its approval step would take another five weeks, so we decided to upload it on Savannah non gnu in the mean time, done!

Releases, git summary and git log all available now... Special thank to the GNU evaluator and of course to the Savannah hackers!

31 January 2017

Guile-CV - GNU evaluation.

A couple of months ago, we started to work on Guile-CV, a Computer Vision functional library for the Guile Scheme language, and now is the right time for it to be evaluated to be part of the GNU Project.

Guile-CV is based on Vigra (Vision with Generic Algorithms). It comprises a direct binding to Vigra C (a C wrapper to a subset of the Vigra library), and a higher level API written in Guile Scheme.