Visual Basic

Integral Media

Integral Media est une société Belfortaine dans laquelle j'ai effectué un stage de 6 mois dans le cadre de ma formation FCIL. Durant cette période j'ai travaillé sur 2 principaux projets :

Mon rapport de stage explique plus en détail ces projets.

Fichier attachéTaille
RapportFCIL.pdf8.37 Mo

LMS (Local Maintenance Software)

Le module de maintenance est une application permettant de diagnostiquer et de configurer un boîtier Securbus à l'aide d'un PC portable. Une fois le boîtier installé, il ne possède aucune interface homme-machine. Cet outil permet alors de déterminer les pannes et dans certains cas de les corriger.

Durant les diverses étapes de développement de ce projet j'ai rédigé divers documents, du cahier des charges au guide d'utilisation en passant par le dossier de programmation. Le détail est exposé en annexe.

Ci dessous un extrait du cahier des charges du module de maintenance. Les différents points présentés on été définis lors d'une réunion avec l'équipe.

Le système Securbus permet d'assurer une surveillance audio et vidéo constante dans les transports en commun équipés. Le logiciel de maintenance est une application qui permet de diagnostiquer rapidement ou de manière approfondie l'ensemble d'un système Securbus.

Le logiciel de maintenance permet notamment de remonter les états du système Securbus et des caméras connectées sur un PC portable, les autres fonctions sont énoncées par la suite. Le transfert des données s'effectue par voie série RS-232.

Le logiciel de maintenance est utilisé par Integral Media et par les possesseurs du système Securbus. Les possesseurs du système Securbus ne sont pas forcement informaticiens, c'est pourquoi l'interface du logiciel doit être simple d'utilisation et intuitive.

Pour des raisons de sécurité, l'accès à l'application nécessite un mot de passe.

Le logiciel de maintenance doit fonctionner sur Windows 95 minimum car actuellement les boîtiers sont équipés de ce système d'exploitation. Il doit donc fonctionner sur W9X et NT.

Pour finir, voici des captures d'écran du résultat final :

lms_1.jpg

lms_2.jpg

lms_3.jpg

lms_4.jpg

PDL (Plan De Ligne)

Le module de plan de ligne dynamique est une application permettant de générer des plans de ligne. L'application possède un éditeur et un générateur et elle est utilisée sur un poste fixe par un opérateur. Le player permet de lire les plans de ligne générés et de les afficher dans un véhicule (autobus ou autre) via le système médiabus. Ainsi, le voyageur connaît en permanence la position du bus et peut savoir à quel arrêt il devra sortir du véhicule.

Durant le développement de ce projet j'ai rédigé divers documents, du cahier des charges au guide d'utilisation en passant par le dossier de programmation. Le détail est exposé en annexe.

Un extrait du cahier des charges du module de plan de ligne est inséré ci-dessous. Les différents points présentés on été définit lors d'une réunion avec l'équipe.

Le système de plan de ligne est déjà existant. Il utilise la technologie Flash de Macromédia et de ce fait impose une charge de travail supplémentaire aux infographistes et aux développeurs. De plus, Flash et son player exploitent beaucoup de ressources système, de mémoire et de temps processeur.

Le but de ce projet était donc de reprendre le système de plan de ligne en limitant l'utilisation des ressources système, des infographistes et des développeurs. Pour cela, le nouveau système de plan de ligne utilisera les fonctionnalités de Microsoft DirectX.

Cette évolution pourra par ailleurs devenir une amorce à un changement complet du système Securbus. L'évolutivité de ce projet est donc un facteur essentiel à respecter lors de la phase d'analyse et de développement.

L'application doit dans un premier temps :

  • Générer et afficher le plan de ligne en vue générale et rapprochée.
  • Afficher une bannière avec un logo personnalisé.
  • Afficher l'heure.
  • Afficher des messages informatifs sur le groupe de transport en commun.
  • Diffuser une annonce vocale lors des arrêts.
  • Générer les divers écrans à partir de modèles graphiques préétablis.

Par ailleurs, l'application doit donner des performances supérieures ou égales au plan de ligne réalisé avec Flash :

  • Afficher des animations relativement fluides (20/30 images seconde)
  • Afficher des animations de bonne qualité
  • Respecter la contrainte de résolution d'écran (640*480) tout en pouvant fonctionner également dans des résolutions supérieures.

Voici quelques captures représentant le résultat final de l'application :

pdl1.jpg

pdl2.jpg

pdl3.jpg

pdl4.jpg

pdl5.jpg

pdl6.jpg

pdl7.jpg

pdl8.jpg

pdl9.jpg

pdl10.jpg

pdl11.jpg

pdl12.jpg

pdl13.jpg

pdl14.jpg

EncIMG - Encodage de texte sur une image Bitmap

Quelle est la différence entre ces 2 images ?

  1. e_2.jpg
  2. e_3.jpg

Et bien la voici ! Après un traitement sur Photoshop (2x).

e_1.jpg

En effet, il aura été possible de stocker plus de 8ko de texte brut sur cette image de résolution 200 par 160 pixels !

Ce petit programme permet de stocker des données de type texte dans une image Bitmap. Il fonctionne sous le principe de la stéganographie. Seule les images de type bitmap (BMP) sont supportées. Si vous convertissez une image encodée en jpeg, le texte sera alors illisible.

e_4.jpg

Fichier attachéTaille
encimg_binary.zip173.23 Ko
encimg_source.zip4.71 Ko

MoveDetect - Un détecteur de mouvements

Un petit système de détection de mouvement via une webcam. Le fonctionnement est très simple, le programme traite pour chaque image un ensemble de pixel, il passe l'image en 2 couleurs (noir et blanc) après avoir recalibré les contrastes. Ensuite il détermine les pixels différents par rapport à l'image précédente. En fonction du nombre obtenu, il détermine si il y a mouvement ou non.

md3.jpg

Ici, personne ...

md2.jpg

Là "Coyote" est présent mais ne bouge pas.

md1.jpg

Maintenant, "Coyote" bouge de gauche à droite, le mouvement est détecté.

Fichier attachéTaille
movedetect_binary.zip6.56 Ko
movedetect_source.zip9.64 Ko