void Talking::main(void)
{
execute
  {
  Appel appel=new Appel(this,?(2) ? "f" : "g");
  Talking[] agts=(Talking[])getAll("Talking");
  int i;
  for(i=agts.length();i--;) appel->sendTo(agts[i]);
  string program="";
  while(getNbMessages())
    {
    appel=(Appel)getNextMessage();
    program+=format(appel->_fonction,"(",appel->_emitter,");\n");
    }
  if(program) eval(program);
  println();
  return;
  }
}
 

Nous nous sommes résolument engagés vers la conception et la production de logiciels spécifiques et spécialisés, non disponibles sur étagère. Systématiquement, ces produits mobilisent des composants technologiques avancés et répondent à des standards de performance élevés.

Par conséquent, chacun des logiciels que nous concevons embarque sa part, non négligeable, d’innovations qui peuvent résider aussi bien dans le codage, l’architecture générale de l’application ou encore, la façon dont nous avons apporté une solution à un problème réputé difficile.

Cette densité d’innovations offre à nos clients la garantie de disposer d’une réelle avance technologique et de rester à un niveau de performance optimal par notre action permanente de mise à jour technique et de maintien en condition opérationnel.

Plus précisément, nous concevons et développons plusieurs solutions logicielles fédératrices :

Tungstène : la croissance du nombre d’images numériques produites et diffusées impose, depuis quelques années déjà, de disposer d’outils fiables aptes à détecter les images contrefaites et la façon dont cette opération a été réalisée. Par contrefaite, il faut comprendre une image numérique dont une quantité suffisante de pixels a été modifiée afin d’en altérer sensiblement et durablement le sens.

Nous disposons d’ores et déjà d’une batterie d’algorithmes avancés que nous rassemblons sous la même plate-forme logicielle afin d’en faire un outil unique et complet d’analyse des images numériques.
[Plus de précisions sur la page de Tungstène]

Tantale : cette technologie logicielle procède au tatouage robuste des photographies numériques et permet, le cas échéant, d’en revendiquer la propriété. Le durcissement du marquage permet d’envisager la diffusion des images sur Internet tout en préservant les moyens techniques d’identification.

Constantine : en l’absence de dispositifs ad hoc, l’extrême volatilité des flux informatiques mais également, leur densité et leur diversité, rendent difficiles la conservation des traces de l’activité numérique. Ce projet a pour objet la réalisation de séquestres numériques tout en leur conférant une haute valeur probante pour les rendre opposables à des tiers, y compris devant l'Administration et la Justice.

Le contenu des séquestres est très étendu et inclut en théorie tous les objets numériques sur support informatique : images et vidéos, logs d'activité réseau, fichiers et documents natifs, documents abstraits, fichiers audio, etc. 

Tantale est une chaîne logicielle composée de satellites chargés de collecter les informations externes à séquestrer, d'un noyau  qui réalise la séquestre et de modules qui l’archivent. Les capteurs logiciels sont spécifiques en fonction de la nature des informations à capter puis à séquestrer.

Cette application mobilise les développements mathématiques, algorithmiques et cryptographiques les plus actuels.

Canopée : ce projet, adossé à la valorisation de technologies et savoir-faire développées au sein d’un laboratoire du CNRS, a pour sujet la recherche et l’extraction des éléments linguistiques qui font sens dans les documents (numériques) textuels. Cette approche étant résolument <<individu centrée>> chaque utilisateur/analyste se voit offert la possibilité de définir son propre lexique et collection de thèmes pour explorer le corpus documentaire et textuel. Par la suite, nous offrirons la possibilité de définir sa propre ontologie : le programme n’embarque aucun dictionnaire pré-fabriqué. Chaque analyste doit, d’une part, pouvoir définir les lexiques associés à ses thèmes d’intérêt mais également, les relations ontologiques qui les relient.

Le résultat du processus d’extraction est représenté sous forme de cartes. Il existe plusieurs modalités de cartographie qui permettent à l’analyste de visualiser les résultats sous différents angles. Ces cartes sont en 2D et en 3D. De plus, nous sommes en mesure de leur ajouter une information temporelle et de permettre la visualisation de l’évolution des thèmes de votre corpus dans le temps. Ces cartes sont interactives : il est possible d’accéder aux documents via leurs représentations sur la carte.

Les applications sont nombreuses et variées dès que la matière première à valoriser et constituée de documents textuels. Le logiciel peut être utilisé pour la surveillance de la presse en ligne, de forums et blogs, pour l’exploration de corpus de documents de tout type mais également, pour la cartographie de flux documentaires <<dynamiques>> comme ceux induits par les messageries électroniques.

Cette application est une des briques logicielles d’un ensemble plus vaste spécialisé dans le traitement automatique des langues et l’extraction du sens.

CeramiK : directement issue des recherches scientifiques en matière de biométrie, il s’agit de technologies duales trouvant des applications aussi bien dans le champs de la sécurité comme dans celui de l’exploitation de larges bases de données multimédia (photographies et vidéos).

Cette technologie s’appuie sur deux composants essentiels : le premier procède à l’analyse des modes de frappe au clavier d’un ordinateur pour identifier l’utilisateur et , le cas échéant, déterminer s’il s’agit d’une personne autorisée.

Le deuxième, est basé sur la reconnaissance faciale pour identifier de façon biunivoque un utilisateur et le laisser (ou non) utiliser un oridinateur, accéder à des services en ligne, consulter des fichiers, etc. Nous sommes en mesure de combiner les deux composant d’identification.

Dans un futur proche, nous utiliserons extensivement le deuxième composant pour rechercher dans des photographies ou des vidéos, des personnes et décrire la scène où ils apparaissent : nombre de personnes, positionnement des personnages, expression, etc. L’objectif est d’extraire un maximum d’information sur le contenu visuel du support afin de réaliser des catégorisations et requêtes plus efficaces que celles basées sur les simples légendes et autres tags.

 

Logiciels & innovations

execute

{

// setInterval(10);

Ground ground=NEW Ground(30);

while(numberOf("Prey")<20) NEW Prey(ground);

while(numberOf("Predator")<5) NEW Predator(ground);

NEW Viewer2d->show();

Grapher g=new Grapher;

parse(format("int ",g,"::_nbPrey;"));

parse(format("void ",g,"::main(void)

              {

              execute

                {

                _nbPrey=numberOf(\"Prey\");

                Grapher::main();

                if(!_nbPrey) control(\"stop\",\"\");

                }

              }"));

g->addCurve("red",                 // color

            "getClock()",          // x formula

            format(g,"->_nbPrey"), // y formula

            false);                // not an histogram

g->show();

}


bool[][] connect=[[0,0,0,0,0,0,0,0,0,0],   //0

                 [0,1,1,0,1,0,0,1,0,0],   //1

                 [0,1,1,1,0,0,0,0,0,0],   //2

                 [0,0,1,1,0,0,1,0,0,0],   //3

                 [0,1,0,0,1,1,0,0,0,0],   //4

                 [0,0,0,0,1,1,1,0,0,0],   //5

                 [0,0,0,1,0,1,1,0,0,0],   //6

                 [0,1,0,0,0,0,0,1,1,0],   //7

                 [0,0,0,0,0,0,0,1,1,1],   //8

                 [0,0,0,0,0,0,0,0,1,1]];  //9


float[][] nodePos;

for(int i=0;i<10;i++)

eXo maKina © 2011