From 109db2b0cce1b89c75e32f3705a1c5975391b3c5 Mon Sep 17 00:00:00 2001 From: gaillaro Date: Sat, 1 May 2004 11:52:08 +0000 Subject: Ajout de ovision. --- 2004/i/nono/src/ovision/img.h | 61 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 2004/i/nono/src/ovision/img.h (limited to '2004/i/nono/src/ovision/img.h') diff --git a/2004/i/nono/src/ovision/img.h b/2004/i/nono/src/ovision/img.h new file mode 100644 index 0000000..877f7b7 --- /dev/null +++ b/2004/i/nono/src/ovision/img.h @@ -0,0 +1,61 @@ +#ifndef img_h +#define img_h +// img.h - classe Image +// nono - Programme du robot Efrei Robotique I1-I2 2004 +// Copyright (C) 2004 Olivier Gaillard + + +// Chargement des librairies DevIL +#include "config.h" + +/// Chargement des images, conversion en YUV, HSI, detection des contours, +/// transformation d'une image segmentee en RGB, ecriture de l'image sur le disque +class Img +{ + /// numero IL de l'image + unsigned int ImgId; + + public: + /// tableau avec couleurs segmentees + unsigned char *tabSegm; + + /// dimension de l'image + unsigned int height, width; + + /// nombres de pixels de l'image + unsigned long nbPixels; + + /// tableau des couleurs RGB bruts + unsigned char *tabData; + + /// mode de l'espace de couleurs + char yuv,hsi; + + /// Constructeur + Img (void); + + /// Destructeur + virtual ~Img (void); + + /// Lis une image en utilisant le peripherique adequate (fichier, cam usb, cam) + virtual int ReadRaw(char *sourcePath) = 0; + + /// Ecriture de l'image sur le disque + virtual void WriteSegm(char *filename, unsigned char *tabSegm) = 0; + virtual void WriteSegm(char *filename) = 0; + + /// Conversion en YUV + void RGBtoYUV(); + + /// Conversion en HSI + void RGBtoHSI(); + + /// Ecrite des valeurs RGB dans un fichier + void WriteRGB(char *filename); + + protected: +}; + + + +#endif // img_h -- cgit v1.2.3