void View::trainFaceRecognition() { TrainingInfo trainingInfo = FaceRecognitionTrainingDialog::getTrainingInfo((QWidget*)this); if(trainingInfo == TrainingInfo::empty()) { _ui.tlBttn_FaceRecognition->setChecked(false); return; } showStatusMessage("Reading face recognition trainging file..."); _controller->setFaceRecognitionTrainingName(trainingInfo.name()); TrainingData trainingData; try { trainingData = readImageClassMapFile(trainingInfo.classImageMapFileName()); validateTrainingData(trainingData); showStatusMessage("Training face recognition..."); _controller->trainFaceRecognition(trainingData); trainingData.release(); saveFaceRecognitionMethodState(trainingInfo.name()); addLoadFaceRecognitionMethodStateMenuItem(trainingInfo.name()); clearStatusMessage(); } catch(framework::BaseException& e) { trainingData.release(); clearStatusMessage(); _ui.tlBttn_FaceRecognition->setChecked(false); throw e; } }