GaleoNET Homepage

TNNlib 1.0




Table of content



Introduction

Toroidal neural networks are a particular kind of DT-CNN (discrete time cellular neural networks) often used for images manipulation. They have got an underlying toroidal topology and this reflects in the use of circulating matrices to describe their cofigurations. The TNNlib provides a set of instruments ideated to simplify the software implementation of these structures. This C++ library features a completely general, template based, matrix class (matrix.h), and some specific TNN routines (tnn.h).
It has been widely tested either on linux (red hat 7.2) and windows 98 (djgpp).
^ top


Matrix library

This library has been specifically written for being included in tnn.h and contains the matrix class definition. With its aid, matrix objects, with any data type as elements, can be quickly created and manipulated. Besides this, most operators have been overloaded, so algebric handling of block matrices is also possible. Due to the the specific needs for which it was created the library features some routines explicitly dedicated to linear systems solving and to circulating matrices handling. The algorithms implemented are efficient.
Please see the source for details about the specific class functions.
^ top


Tnn library

It implements all the necessary functions to simulate a toroidal neural network's dynamic, to elaborate a cloning template and to post-process the output. Many other useful functions have been also included, which allow the user to translate matrices into states and viceversa, to convert datasets in RAW format and to calculate using block matrices.
Please consider that the terminology used in functions syntax refers to the articles: "The Toroidal Neural Networks" and "Massively Parallel Processing Implementation of the Toroidal Neural Networks" written by Palazzari, Coli, Rughi.
^ top


Tnnlib examples

Also present in the package are some demo routines which can be used to extract the profile from an image. To accomplish this task the routines include cloning templates extraction (starting from 2 or more base images), application of these templates to the desired image, and output (the profile) generation. Some test images have been included to explore at once the library possibilities. For more informations about examples uses, please see the example.txt file.
^ top


The source image The output


Downloads

Filename: tnnlib10.zip
Description: TNNlib release 1.0 zipped library

Filename: camread_new_iscas2000.doc
Filename: CNNA_camread.doc
Description: Toroidal Neural Networks guides written by Coli, Palazzari, Rughi.

^ top


License

TNNlib 1.0
Written by Maurizio Galeone

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License 
for more details.
^ top


GaleoNET Homepage