From 9fdd6704947174fae292dfc6e14cc1029a7f7a6c Mon Sep 17 00:00:00 2001 From: schodet Date: Sat, 7 Feb 2004 16:55:41 +0000 Subject: Initial revision --- 2004/i/nono/src/vision/image.h | 48 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 2004/i/nono/src/vision/image.h (limited to '2004/i/nono/src/vision/image.h') diff --git a/2004/i/nono/src/vision/image.h b/2004/i/nono/src/vision/image.h new file mode 100644 index 0000000..4177f81 --- /dev/null +++ b/2004/i/nono/src/vision/image.h @@ -0,0 +1,48 @@ +#ifndef image_h +#define image_h +// image.h - Image class +// buzz - Programme du robot Efrei Robotique I1-I2 2003 +// Copyright (C) 2003 Nicolas Schodet + +#include "thresholds.h" +#include "camera/camera.h" + +struct ImageGroup +{ + ImageGroup *next; + int x, y, w, h; + int zone, type; +}; + +class Image +{ + int m_width, m_height; + unsigned char *m_image; + unsigned char *m_zones; + ImageGroup *m_groups; + const Thresholds *m_thresholds; + Camera *m_camera; + public: + // Constructeurs. + Image (const char *filename, const Thresholds *thresholds); + Image (Camera *camera, const Thresholds *thresholds); + // Destructeur. + ~Image (void); + // Filtre l'image pour trouver les zones. + void filter (void); + // Fait des packets de pixels. + void group (void); + // Affiche les groupes qui on été trouvés. + void dumpGroups (void); + // Enregistre les infos trouvées. + void dump (const char *filename); + // Filtre les packets de pixels. + void groupFilter (void); + // Relit les données de la camera et fait les analyses. + bool reread (void); + protected: + // Fait des packets de pixels sur les lignes. + void groupLine (void); +}; + +#endif // image_h -- cgit v1.2.3