TarzaNN
TarzaNN neural network simulator
C:/Users/albertlr/projects/TarzaNN/TarzaNN/CaucasianDataset.h
Go to the documentation of this file.
00001 /****************************************************************************
00002  **
00003  ** Copyright C 2002-2012 Laboratory for Active and Attentive Vision (LAAV), Department of Computer Science and Engineering, York University, Toronto, ON, Canada.
00004  ** All rights reserved.
00005  **
00006  ** This file is part of the TarzaNN Neural Network Simulator.
00007  **
00008  ** This file may be distributed and/or modified under the terms of the
00009  ** GNU General Public License version 2 as published by the Free Software
00010  ** Foundation and appearing in the file LICENSE.GPL included in the
00011  ** packaging of this file.
00012  **
00013  ** See http://www.tarzann.org/gpl/ for GPL licensing information.
00014  **
00015  ** Contact info@tarzann.org if any conditions of this licensing are
00016  ** not clear to you.
00017  **
00018  ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00019  ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00020  **
00021  ****************************************************************************/
00022 
00023 #ifndef CaucasianDataset_H_INCLUDED
00024 #define CaucasianDataset_H_INCLUDED
00025 
00026 #include <vector>
00027 using namespace std;
00028 #include "Dataset.h"
00029 #include <QDir>
00030 #include <QMutex>
00031 
00032 #define STEPS_STAGE_1 10000
00033 #define STEPS_STAGE_2 10000
00034 #define STEPS_STAGE_3 10000
00035 
00036 #define IMAGE_SIZE_X 54
00037 #define IMAGE_SIZE_Y 54
00038 
00039 #define FACE_IMAGE_SIZE 250
00040 #define MAX_OBJECTS 100
00041 #define MAX_ANGLES 71
00042 #define ANGLE_INCREMENT 5
00043 
00044 class CurrentImageF;
00045 
00047 class Caucasian_Dataset : public Dataset {
00048         
00049 private:
00050         long imageBaseOffset;
00051         long imageSize;
00052         FILE* imageFile;
00053         char* currentfileName;
00054         QFileInfoList fileList;
00055         Matrix* result;
00056         
00058     CurrentImageF* currentImage;
00059     
00061     static const char* DataFolder;
00062     
00064     QImage* baseQImage;
00065     
00066     void goToNextStep();
00067 
00068     QMutex dataPrep;
00069     
00070 public:
00072         Caucasian_Dataset(char* basefilename);
00074         Caucasian_Dataset(char* basefilename, int steps);
00075         ~Caucasian_Dataset();
00077         OutputImage* getImage(int index, OutputImage** list, int LorR=0);
00079         Matrix* getDesiredOutcome(int index);
00081         int getRandomIndex();
00082 
00083 };
00084 #endif/*CaucasianDataset_H_INCLUDED*/
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines