Hi David,
On 25/11/2011 16:09, David Coeurjolly wrote:
> Is there a hidden (and undocumented AFAIK) requirement on the template parameter to be "unsigned scalar" ?
Actually, it seems to be a wrong behavior in Olena, your example is
correct.
accu::stat::max accumulator is initialized using mln_min(double) in your
case. However, it seems that instead of returning the effective negative
minimum double value, it returns the minimum positive double value which
is not expected.
This bug is now referenced here : https://trac.lrde.org/olena/ticket/247
We are running the tests to check if it breaks anything.
Thanks for your report.
Regards,
Guillaume
hi,
I'm having issues with the stat::max accumulator. Is it the correct way to it ? :
int main()
{
mln::accu::stat::max<double> mm;
mm.init();
mm.take(-0.02);
mm.take(-0.92);
mm.take(-0.03);
std::cout<<" max= "<<mm.to_result()<<std::endl;
}
In many situations (w/o init, w/o 'to_result() method in the ostream), I always get a wrong value (2.22^-308, which seems to be min_val for positive double).
Is there a hidden (and undocumented AFAIK) requirement on the template parameter to be "unsigned scalar" ?
regards
dav
----------------
David Coeurjolly - Directeur de recherche CNRS
CNRS, LIRIS-UMR 5205
Université de Lyon
Batiment Nautibus
43 boulevard du 11 novembre 1918, 69622 Villeurbanne cedex, France
Tel : (+33) [0]4.72.44.82.40 Fax : (+33) [0]4.72.43.15.36
http://liris.cnrs.fr/david.coeurjolly
Hi,
On 24/11/2011 17:58, Mikado Mikado wrote:
> With this code in terminal:
>
> olena2.0/_build$ ./configure --enable-scribo
> olena2.0/_build$ make
>
> For install Scribo module, but i get this error:
> ../../../../milena/mln/canvas/browsing/snake_generic.hh:76:14: nota:
> ‘const struct mln::canvas::browsing::snake_generic_t’ no tiene
> constructor por defecto proporcionado por el usuario
> make[1]: *** [pgm_global_threshold_auto.o] Error 1
> make: *** [all-recursive] Error 1
>
> I have Ubuntu 11.10 32 bits.
>
> Anyone can help me?
Thanks for your report.
Ubuntu 11.10 provides g++ 4.6.1 which changed few things about
initialization of global structures/classes.
This is a known issue which can be avoided easily.
I have just added a "known issues" section in the download page
explaining the workaround.
You can find it below.
Thanks for your interest in Scribo and Olena.
Sincerely,
Guillaume
-------------
Compilation issues may be encountered with g++ 4.6.0 and 4.6.1
(especially on Ubuntu 11.10).
Here is an example of the possible error :
../../../../olena/milena/mln/canvas/browsing/snake_generic.hh:90:29:
error: uninitialized const ‘mln::canvas::browsing::snake_generic’
[-fpermissive]
../../../../olena/milena/mln/canvas/browsing/snake_generic.hh:76:14:
note: ‘const struct mln::canvas::browsing::snake_generic_t’ has no
user-provided default constructor
Many non-relevant warnings may also arise.
A simple solution is to add CXXFLAGS to configure script with the
following argument :
%begin bash%
./configure CXXFLAGS="-fpermissive -Wunused-but-set-variable"
%end%
Otherwise, using a different version of g++ would also fix this issue
without specifying anything to configure.
Hi,
i follow this instructions:
http://www.lrde.epita.fr/dload/olena/2.0/README-2.0
With this code in terminal:
olena2.0/_build$ ./configure --enable-scribo
olena2.0/_build$ make
For install Scribo module, but i get this error:
../../../../milena/mln/canvas/browsing/snake_generic.hh:76:14: nota: ‘const
struct mln::canvas::browsing::snake_generic_t’ no tiene constructor por
defecto proporcionado por el usuario
make[1]: *** [pgm_global_threshold_auto.o] Error 1
make: *** [all-recursive] Error 1
I have Ubuntu 11.10 32 bits.
Anyone can help me?
Thanks
The Olena Team is proud to announce the release of Olena 2.0.
Olena is a platform dedicated to image processing and pattern
recognition. Its core component is a generic and efficient C++
library called Milena. Milena provides a framework to implement
simple, fast, safe, reusable and extensible image processing tool
chains. The library provides many ready-to-use image data structures
(regular 1D, 2D, 3D images, graph-based images, etc.) and algorithms.
Milena's algorithms are built upon classical entities from the image
processing field (images, points/sites, domains, neighborhoods, etc.).
This design allows image processing developers and practitioners to
easily understand, modify, develop and extend new algorithms while
retaining the core traits of Milena: genericity and efficiency.
On top of Milena, the Olena platform also features optional modules
such as Swilena, a component exposing Milena to other languages thanks
to the Simplified Wrapper and Interface Generator (SWIG); and the
SCRIBO module for Document Image Analysis (see below).
The Olena platform is Free Software. It is distributed under the
conditions of the GNU General Public License (GPL) version 2. See the
file COPYING shipped with the Olena distribution.
Release notes are available at:
http://olena.lrde.epita.fr/Olena200
You can download packages of the Olena 2.0 distribution here:
http://www.lrde.epita.fr/dload/olena/2.0/olena-2.0.tar.gz (38 MB)
http://www.lrde.epita.fr/dload/olena/2.0/olena-2.0.tar.bz2 (32 MB)
The SHA1 digests of theses packages are:
d3a829fa56bff4edbca58af0c9a39c9569820c60 olena-2.0.tar.gz
0abae2a9bc751a8fb33acacd2dbe70635d5dd00b olena-2.0.tar.bz2
Here is a list of major changes since Olena 1.0:
* The biggest addition to Olena available in this new version is the
SCRIBO module for Document Image Analysis (DIA). This module has
been developed in the context of the SCRIBO project (see
http://www.scribo.ws). The SCRIBO module provides software
building blocks to create DIA tool chains, including routines for
preprocessing steps (such as binarization, show-through removal,
deskew and denoising), text lines identification, non-text objects
retrieval (tables, pictures, separators, etc.), line
reconstruction (rebuilding separators and tables), Optical
Character Recognition (OCR) integration and document
reconstruction (converting a document to XML, PDF and/or HTML
outputs). Dedicated data structures are also provided to handle
intermediate results. Some Graphical User Interface (GUI)
programs based on the Qt toolkit are also proposed.
* Several compilation issues have been addressed.
* New algorithms (especially in mathematical morphology), canvases
(or algorithmic patterns) and efficient algorithm variants have
been added to Milena, as well as some new data types (see NEWS for
more details).
* More conversion routines, especially regarding color values.
* Support for I/O routines (both built-in and depending on
third-party packages) has been improved.
* Various bug fixes and improvements.
The file NEWS, included in the archive, contains a more complete list
of user-visible changes.
Please report any problem by mail to <olena-bugs(a)lrde.epita.fr>.
--
Roland Levillain - LRDE/EPITA - A3SI/ESIEE/LIGM/UMLV-Paris Est
EPITA Research and Development Laboratory (LRDE)
14-16, rue Voltaire - FR-94276 Le Kremlin-Bicêtre Cedex - France
Phone: +33 1 53 14 59 45 - Fax: +33 1 53 14 59 22 - www.lrde.epita.fr
Bonjour,
On 01/19/11 15:59, nicolas parmentier wrote:
> Par contre je ne vois pas comment je peux obtenir le résultat
> "distance_from_seed_pt.png".
> Il s'agit du calcul de champ de distance à partir du point supérieur
> gauche dans le domaine valide (en noir).
> Auriez vous une idée de la façon dont je peux procéder afin d'obtenir ce
> résultat ?
L'algorithme transform::distance_geodesic est paramétré en interne par
un objet qui calcul une carte des distances aux objets (en blanc) dans
le fond (en noir).
Il utilise pour cela la routine qui s'appelle canvas::distance_geodesic
et le paramètre est la classe transform::internal::distance_functor.
En créant une nouvelle classe similaire à
transform::internal::distance_functor, en modifiant certaines méthodes
et en l'utilisant avec canvas::distance_geodesic, il est possible
d'implémenter des variantes du calcul de distance géodésique.
Dans votre cas, il faudrait modifier les routines utilisées dans
l'initialisation de la carte de distance.
Les fichiers concernés sont :
- mln/canvas/distance_geodesic.hh
- mln/transform/internal/distance_functor.hh
- mln/transform/distance_geodesic.hh
N'hésitez pas à revenir vers nous si vous avez d'autres questions.
Cordialement,
--
Guillaume Lazzara
EPITA Research and Development Laboratory (LRDE)
14-16 rue Voltaire F-94276 Le Kremlin-Bicetre France
phone +33 1 53 14 59 39 - fax +33 1 53 14 59 22
Bonjour,
Dans le cadre de mes recherches, je pense éventuellement utiliser votre
libraire "Milena" afin de traiter une série d'images issues de tomographies.
Votre librairie semble, en effet, bien appropriée pour les traitements que
je souhaite effectuer sur mes données.
J'ai cependant un petit souci concernant une opération particulière :
l'évaluation de la distance dans une partie de l'image à partir d'un point
du domaine.
Pourriez vous m'aider sur l'exemple suivant :
Soit le domaine binaire : "Domain.png" (annexé en pièce jointe)
J'arrive à réaliser le champ de distance "distance_field.png" sans aucun
souci grâce à une commande de type :
" mln::image2d<int_u8> distance_field =
mln::transform::distance_geodesic(Domain, mln::c4(), int_u8(100)); "
Par contre je ne vois pas comment je peux obtenir le résultat
"distance_from_seed_pt.png".
Il s'agit du calcul de champ de distance à partir du point supérieur gauche
dans le domaine valide (en noir).
Auriez vous une idée de la façon dont je peux procéder afin d'obtenir ce
résultat ?
Merci de l'aide que vous voudriez bien m'apporter,
Bien à vous,
N. Parmentier
--
---------------------------------------------------------------------------
Institut de Mécanique, Matériaux et Génie Civil (iMMC)
Université Catholique de Louvain,
Bâtiment Simon Stevin, local b.055
Place du levant n°2,
1348 Louvain-la-Neuve,
Belgique
Tel : +32 (0)10.47.22.20
email: Nicolas.Parmentier(a)uclouvain.be
---------------------------------------------------------------------------
Je me suis permis de tuer ce processus, qui ralentissait Dallas depuis 2 mois.
build 26182 97.9 0.1 8508 5456 ? R Aug13 79267:52
/usr/bin/swig -Wall -c++ -python -I../../milena -MD -MF
.deps/point2d-wrap.Tcc -o point2d-wrap.cc ../../swilena/point2d.i
Bande de malpropres.
--
Alexandre Duret-Lutz
David Dubois wrote:
>
>
> Bonjour,
>
>
>
> J’ai lu un rapport comme quoi FLLT (fast level line transform) était ou
> devrait être intégré à Milena. J’ai téléchargé le code source d’Olena
> 1.0 et je ne trouve rien qui ressemble à FLLT.
Bonjour,
Pour l'instant, une implémentation naïve, "relativement" lisible et
sans optimisation, est dispo dans un bac à sable :
http://www.google.com/codesearch/p?hl=fr#IGThQjJ7Cjg/milena/sandbox/garrigu…
Elle correspond à l'algo de Monasse et Guichard.
> Merci de bien vouloir m’indiquer si cet algorithme est bel et bien inclus.
On va en effet intégrer une FLLT dans la bibliothèque l'an prochain
(2011). Si ça vous intéresse avant -> mail privé.
> Cordialement,
>
>
>
> David Dubois
Cdlt,
TG