Go to the documentation of this file.00001
00022 #ifndef YOOIRIS_H_
00023 #define YOOIRIS_H_
00024
00025 #include "ui_YooIRIS.h"
00026
00027 #include "ModeDialog.h"
00028
00029 #include "ImageSource.h"
00030 #include "CVImageSource.h"
00031 #include "ImageUtility.h"
00032
00033
00034 class EyeDetection;
00035
00039 class YooIRIS : public QMainWindow, protected Ui_YooIRIS
00040 {
00041 Q_OBJECT
00042 public:
00043
00045 typedef struct
00046 {
00047 char* matchFileName;
00048 IplImage* imgMatch;
00049 } MATCHDATA;
00050
00051 YooIRIS(QWidget* parent = 0, Qt::WFlags flags = 0);
00052 virtual ~YooIRIS();
00053
00063 char* openFileName(const char* path, const char* title, const char* fileType);
00064
00074 char* getOutputFName(int i, std::string currentPath, std::string type);
00075
00076 public slots:
00080 void OpenAVIFile();
00081
00083
00086 void OpenIrisAVIFile();
00087
00089
00092 void OpenCAM();
00093
00097 void SelectCascade();
00098
00102 void checkQuality();
00103
00107 void StartMatch();
00108
00112 void openLeftEye1();
00113
00117 void openLeftEye2();
00118
00122 void openRightEye1();
00123
00127 void openRightEye2();
00128
00132 void goMatch();
00133
00134 private:
00135 EyeDetection* eyeDetection;
00136
00138 char* leftFileName1;
00139 char* leftFileName2;
00140 char* rightFileName1;
00141 char* rightFileName2;
00143 int gDataType1, gDataType2;
00144 int pDataType1, pDataType2;
00145
00154 void selectBestEye(IplImage* currentImg, IplImage*& bestImg, double& bestScore);
00155
00164 char* drawEyeImage(ImageWidget *imgWidget, const char* title, const char* dir);
00165
00174 MATCHDATA getEyeImage(const char* title, const char* dir);
00175
00179 void loadVideoFile();
00180
00186 void detectEyeRegion(char* fileName);
00187
00195 void drawBestImage(char* fileName, IplImage* imgLeft, IplImage* imgRight);
00196
00200 void clearWidget();
00201
00207 int getString(std::string title);
00208
00209
00213 int getDataType();
00214
00223 const char* txtDataType(int type);
00224
00225 };
00226 #endif