summaryrefslogtreecommitdiff
path: root/2004/i/nono/src/ovision/img.h
diff options
context:
space:
mode:
authorgaillaro2004-05-01 11:52:08 +0000
committergaillaro2004-05-01 11:52:08 +0000
commit109db2b0cce1b89c75e32f3705a1c5975391b3c5 (patch)
tree28da709aee1cbab296b99378e42a1e737403addf /2004/i/nono/src/ovision/img.h
parentf95f1fb2bc439178a9e7ca6102b57c02c791f3f0 (diff)
Ajout de ovision.
Diffstat (limited to '2004/i/nono/src/ovision/img.h')
-rw-r--r--2004/i/nono/src/ovision/img.h61
1 files changed, 61 insertions, 0 deletions
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