Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.announce > #1569

GNU Guile-CV 0.2.0 released

Path csiph.com!goblin1!goblin.stu.neva.ru!usenet.stanford.edu!not-for-mail
From David Pirotte <david@altosw.be>
Newsgroups gnu.announce
Subject GNU Guile-CV 0.2.0 released
Date Sun, 9 Sep 2018 23:46:44 -0300
Lines 204
Approved info-gnu@gnu.org
Message-ID <mailman.597.1536588371.1284.info-gnu@gnu.org> (permalink)
NNTP-Posting-Host lists.gnu.org
Mime-Version 1.0
Content-Type multipart/signed; micalg=pgp-sha512; boundary="Sig_/+m5jofOXrdloz+ngcdYDov="; protocol="application/pgp-signature"
X-Trace usenet.stanford.edu 1536588371 11611 208.118.235.17 (10 Sep 2018 14:06:11 GMT)
X-Complaints-To action@cs.stanford.edu
To guile-user <guile-user@gnu.org>, guile-devel <guile-devel@gnu.org>, info-gnu <info-gnu@gnu.org>
Envelope-to info-gnu@gnu.org
X-Mailer Claws Mail 3.17.1 (GTK+ 2.24.32; x86_64-pc-linux-gnu)
X-detected-operating-system by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From 79.99.200.102
X-Mailman-Approved-At Mon, 10 Sep 2018 10:06:10 -0400
X-BeenThere info-gnu@gnu.org
X-Mailman-Version 2.1.21
Precedence list
List-Id Announcements and Requests for Help from the GNU project and the Free Software Foundation <info-gnu.gnu.org>
List-Unsubscribe <https://lists.gnu.org/mailman/options/info-gnu>, <mailto:info-gnu-request@gnu.org?subject=unsubscribe>
List-Archive <http://lists.gnu.org/archive/html/info-gnu/>
List-Post <mailto:info-gnu@gnu.org>
List-Help <mailto:info-gnu-request@gnu.org?subject=help>
List-Subscribe <https://lists.gnu.org/mailman/listinfo/info-gnu>, <mailto:info-gnu-request@gnu.org?subject=subscribe>
Xref csiph.com gnu.announce:1569

Show key headers only | View raw


[Multipart message — attachments visible in raw view] - view raw

Hello,

GNU Guile-CV 0.2.0 is released.

This is a 'milestone' release, which introduces image texture measures.
In addition (a) the default installation locations have changed; (b)
there is a new configure option; (c) some new insterfaces; (d) matrix
multiplication performances have been greatly improved; (d) a few
interface (name) have changed.

* About

Guile-CV - Image Processing and Analysis in Guile - is a Computer Vision
functional programming library for the Guile Scheme language.

Based on Vigra (Vision with Generic Algorithms - a C++ image processing
and analysis library), Guile-CV comprises a direct binding to Vigra C (a
C wrapper to most of the Vigra functionality), enriched with pure Guile
scheme algorithms, all accessible through a nice, clean and easy to use
high level API.

Guile-CV is natively multi-threaded, and takes advantage of multiple
cores, using high-level and fine grained application-level parallelism
constructs available in Guile, based on its support to POSIX threads.

	http://www.gnu.org/software/guile-cv/


* Download

Here are the compressed sources and a GPG detached signature [fn:1]:

	http://ftp.gnu.org/gnu/guile-cv/guile-cv-0.2.0.tar.gz
	http://ftp.gnu.org/gnu/guile-cv/guile-cv-0.2.0.tar.gz.sig

This released was bootstrapped with the following tools:

	-] gcc              (Debian 8.2.0-4) 8.2.0 
	-] autoconf         (GNU Autoconf) 2.69 
	-] automake         (GNU automake) 1.16.1 
	-] libtool          (GNU libtool) 2.4.6 
	-] makeinfo         (GNU texinfo) 6.5 
	-] pdflatex         3.14159265-2.6-1.40.19 (TeX Live 2019/dev/Debian) 
	-] guile-2.2        2.2.4.1-cdb19
	-] guile-lib-1.0    0.2.6.1


*** Changes since 0.1.9

Here is a summary of visible changes since version 0.1.9. See GNU
Guile-CV's [[http://git.savannah.gnu.org/cgit/guile-cv.git][git summary]] and
[[http://git.savannah.gnu.org/cgit/guile-cv.git/log/][git log]] for a complete
description.

**** Installation location changes

The default and --prefix installation locations for the source modules
and the compiled files have changed, and, in the absence of the new
configure option described below, are now:

  $(datadir)/guile-cv
  $(libdir)/guile-cv/guile/$(GUILE_EFFECTIVE_VERSION)/site-ccache

In the above, $(datadir) is substituted to the default /usr/local/share
or /your/prefix/share and $(libdir) is substituted to /usr/local/lib or
/your/prefix/lib, when/if --prefix was passed.

$(GUILE_EFFECTIVE_VERSION) is substituted to the stable version number
with which Guile-CV is being compile, for example, 2.2

This change makes GNU Guile-CV compatible with the GNU Coding Standards,
but it also implies that, unless you use the new configure option
describe below, you will have to augment both Guile's variables
%load-path and %load-compiled-path, respectively, with the two
(substituted) paths described above, so that Guile finds Guile-CV's
installed source modules and compiled files (see Guile-CV's installation
'Notes' for more on this).

**** New configure option

The configure option --with-guile-site has been added, used to
explicitly ask Foliot's source modules to be installed in the
Guile-Gnome site directory, and the compiled files using Guile's
site-ccache directories respectively (see Foliot's installation 'Notes'
for more on this).

It will only be honored if (and only if) it is passed as:

  --with-guile-site=yes

  [ in this case, there is obviously no need to augment Guile's
  [ variables %load-path and %load-compiled-path

**** Interface changes

| New name           | Previous name                |
|------------------- +------------------------------|
| im-mtimes          | im-multiply         (matrix) |
| im-mtimes-channel  | im-multiply-channel          |
| im-times           | im-multiply         (scalar) |
| im-times-channel   | im-multiply-channel          |

The former two methods, related to matrix multiplication, are now
procedures.  The later two are methods: see the manual to see the
different ways you may call them.

| im-mdivide         | im-divide           (matrix) |
| im-mdivide-channel | im-divide-channel            |

Likewise, these were methods, they are now procedures.

**** New interfaces

im-times		(element by element)
im-times-channel
im-divide		(element by element)
im-divide-channel
im-texture
im-glcp
im-glcm

**** Performance improvements

im-mtimes
im-mtimes-channel
im-mdivide
im-mdivide-channel
im-invert
im-invert-channel

  These matrix operations (actually, their corresponding f32vector-*
  core functionality) have been moved to libguile-cv. Note that all
  memory allocation - except for some per-function local variables -
  still is being performed in scheme.

  This move makes a small black and white 515 x 515 image matrix
  multiplication by itself (for the sake of timing things) execute in
  0.228 sec instead of 29.51 sec - that is 134x faster.

  In image processing 'real world', this would be a tiny image, being
  134x faster for these linear algebra procedures makes a huge
  difference. Until Guile offers 32 bits floating point and integer
  calculus performances equal to or faster of those we get using
  libguile-cv, and since memory allocation is done in scheme, I am
  confortable with this approach.


* Bug reports

Please report bugs to bug-guile-cv@gnu.org


* Mailing lists

For the time being, Guile-CV uses Guile's mailing list:

  guile-user@gnu.org is for general user help and discussion;

  guile-devel@gnu.org is used to discuss most aspects of Guile-CV,
  including development and enhancement requests.


David


[fn:1]

  Use a .sig file to verify that the corresponding file (without the
  .sig suffix) is intact.  First, be sure to download both the .sig file
  and the corresponding tarball.  Then, run a command like this:

	gpg --verify guile-cv-0.2.0.tar.gz.sig

  If that command fails because you don't have the required public key,
  then run this command to import it:

	gpg --keyserver keys.gnupg.net --recv-keys A3057AD7

  and rerun the 'gpg --verify' command

Back to gnu.announce | Previous | Next | Find similar | Unroll thread


Thread

GNU Guile-CV 0.2.0 released David Pirotte <david@altosw.be> - 2018-09-09 23:46 -0300

csiph-web