Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
LocPano_struct.h
00001 #ifndef _LOC_PANO_STRUCT_H
00002 #define _LOC_PANO_STRUCT_H
00003 
00004 
00005 #include "BasicStructures.h"
00006 #include "Panoramique_struct.h"
00007 #include "HistoFamily_struct.h"
00008 
00009 namespace jafar {
00010   namespace locpano {
00011 
00012 #define LPFilterSize  40 
00013 
00014     /*************************************/
00015     typedef enum{BAD_SEL,
00016      GOOD_SEL} state_Aspec;
00017 
00018     typedef enum{NIL_SEL,
00019      SEL} state_Selec;
00020 
00021     typedef struct LocPanoHeader
00022     {
00023       unsigned char stateAspect:1;   /*State of the Aspec. Aspect Representative */
00024       /*or not representative*/
00025       float         PosX,PosY,PosZ;            /* Position for each aspect */ 
00026       float         Theta;                   /*robot orientation*/
00027       double  covariances[6]; /* 2D position covariances: XX, XY, YT, YT, TT
00028            (T = theta) */
00029     } LocPanoHeader;
00030 
00031 
00032     typedef struct LocPanoData
00033     {
00034       int              Label;           /*label  identification*/
00035       int              maxNbImages;     /*Max learning images number */
00036       int      nbImages;      /* Number of images stored in the database */
00037       int              Day,Moth,Year;  /* Date of the learning phase        */
00038       unsigned         Selec:1;        /*If the key histograms are find */
00039       /*Select = SELEC. if not Select=NOT_SELEC*/
00040       LocPanoHeader   *ImageHeader;   /*General information of each image*/
00041       /*  One image for each robot postition.
00042     Each aspect is formed  by (1) one histogram family, (2) the means of the image region (uses for compute the orientation), (3) one set of Interest point, and 
00043     (4) sky line*/
00044       HistoFam        *LocCarHisto;
00045       HistoFam         *MeanHisto;
00046       /*  IntPoint        *IPoint;  */
00047       /*  SkyLine         *SLine; */
00048     }LocPanoData;
00049 
00050 
00051 
00052 
00053     /******************************************************
00054  Structure that contains all the parameters to use the functions of LocPano
00055     *************************************/
00056 
00057     typedef struct LocPanoParams
00058     {
00059       /* Info related to the geometry of the images */
00060       int   nbLines;
00061       int   nbColumns;  /* Size of the images */
00062       Parabolic imageGeometry;  /* 'panoramic' geometry */
00063   
00064       /* For the orientation */
00065       int   minOrientationRadius; /* Radius under which the pixels are
00066              not considered to recover the
00067              orienttation */
00068 
00069       int   maxOrientationRadius; /* Radius over which the pixels are
00070              not considered to recover the
00071              orienttation */
00072       int   nbOrientationRings;
00073       int   nbOrientationValues; /* Defines how may rings and how
00074             many points on each ring are
00075             used to recover the orientation. */
00076 
00077       /* For the local characteristics */
00078       int   nbLchRings; /* Nb of local characteristics rings  */
00079       int   nbLchBins;    /* Size of the corresponding histograms */
00080       int   nbLchCharacteristics; /* Nb of computed local characteristics */
00081 
00082       int   minLchRadius; /* Radius under which the pixels are
00083              not considered for the local
00084              characteristics */
00085       float         resolutionLog;  /* Resolution on the logarithmic aprroximation function*/
00086       int           logComputing;      /* logarithme computing or approxim ? (0 = approxim.) */
00087  
00088       float   gaussianSigma;
00089       int   gaussianOrder;  /* Parameters to compute the gaussian derivatives */
00090 
00091     }LocPanoParams;
00092 
00093     /**************************************************
00094  Structure that contains all the working data
00095     **************************************************/
00096 
00097     typedef struct LocPanoInternal
00098     {
00099       int   nbLines;
00100       int   nbColumns;  /* Size of the processed images */
00101       float         resolutionLog;   /* Resolution on the logarithmic aprroximation function*/
00102 
00103       HistoFam* histoLCH; /* The histograms of local characteristics */
00104       HistoFam* histoLCHTmp;  /* Intermediate data to compute 'closest image' */
00105       HistoFam* histoOrien; /* The histogram of the mean
00106            characteristics on angular
00107            sectors */
00108       HistoFam* histoOrienTmp;  /* Intermediate data to compute 'histoOrien' */
00109 
00110       int*    profileMask;  /* To accelerate the computation of
00111              'histoOrien' : defines the angular
00112              sectors */
00113       int*    LCHMask;  /* To accelerate the computation of
00114              'Local characteristic histogram(LCH)' :
00115              defines the radius sectors */
00116       float*  LCHPosHist; /* To accelerate the computation of
00117            'Local characteristic histogram(LCH)' :
00118            defines the postition in the histogram with respect 
00119            to local characterisitcs*/
00120       HistoResult*   resultHisto;     /* result of the histogram compariason*/
00121 
00122       float*  Caract1;
00123       float*  Caract2;
00124       float*  Caract3;
00125       float*  Caract4;
00126       float*  Caract5;
00127       float*  Caract6;
00128       float*  Caract7;  /* All the local characteristics */
00129   
00130       LocPanoHeader* imagePosition;  /*current image position*/
00131       LocPanoHeader* newimagePosition;  /*image position computed with respect to 
00132             base database*/
00133 
00134     }LocPanoInternal;
00135 
00136 
00137 
00138   }
00139 }
00140 
00141 
00142 #endif /* _LOC_PANO_STRUCT_H */
00143 
00144 
00145 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:25 for Jafar by doxygen 1.7.6.1
LAAS-CNRS