Example #1
0
 def callNamePsw(self):
     # print "111111"
     self.touch_interface._input_panel_all.hide()
     self.reciveUserName()
     self.reciveUserPsw()
     manager = userManager.UserManager()
     manager.addUser(self.userName, self.UserPsw)
     self.callback(self.userName, self.UserPsw)
     self.hide()
Example #2
0
 def __init__(self, mainWindow):
     super(FaceRec, self).__init__()
     self.mainWindow = mainWindow
     self.manager = userManager.UserManager()
     
     self.setupUi(self)
     
     self._timer = QtCore.QTimer(self)
     self._timer.timeout.connect(self.playVideo)
     self._timer.start(10)
     self.update()
Example #3
0
 def __init__(self, mainWindow):
     super(FaceRec, self).__init__()
     self.ser = serial.Serial('/dev/ttyAMA0',9600)
     self.mainWindow = mainWindow
     self.manager = userManager.UserManager()
     #!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     #self.usart_init()
     
     self.setupUi(self)
     
     self._timer = QtCore.QTimer(self)
     self._timer.timeout.connect(self.playVideo)
     self._timer.start(10)
     self.update()
Example #4
0
    def __init__(self, mainWindow):
        super(DelFace, self).__init__()
        self.mainWindow = mainWindow
        self.setStyleSheet(self.style)
        self.manager = userManager.UserManager()
        self.data = self.manager.getAllUser()  #csv文件数据
        self.zhData = self.manager.getAllZhUser()  #中文用户csv数据

        self.zhUserName = self.manager.getAllZhUserEngName()

        self.setupUi(self)
        self.readFaces()
        self.showFaces()

        self._timer = QtCore.QTimer(self)
        self._timer.start(10)
        self.update()
Example #5
0
def trainFace(model):

    TRAINING_FILE = os.path.join(config.TRAINING_DIR, config.TRAINING_FILE)
    faces = []
    labels = []

    manager = userManager.UserManager()

    persons = os.listdir(config.FACES_DIR)
    for person in persons:
        manager.addUser(person)
        user = manager.getUserByName(person)
        print user
        label = int(user['id'])
        personDir = os.path.join(config.FACES_DIR, person)
        for fileName in walkFiles(personDir, '*.pgm'):
            faces.append(prepareImage(fileName))
            labels.append(label)

    model.train(np.asarray(faces), np.asarray(labels))
    model.save(TRAINING_FILE)
Example #6
0
    def passwordAuthentication(self, info, userName):
        s = mailService()
        psw, ok = QInputDialog.getText(self, self.tr("密码"), self.tr("请输入密码:"),
                                       QLineEdit.Normal)
        if ok and (not psw.isEmpty()):
            manager = userManager.UserManager()
            csv_psw = manager.getUserPswByName(userName)
            if psw == csv_psw:
                # print "密码正确"
                QMessageBox.about(self, self.tr('通知'), self.tr('认证成功'))
            else:
                # print "密码不正确"
                ok = QMessageBox.warning(self, self.tr('警告'),
                                         self.tr('密码输入错误,是否重新输入'),
                                         QMessageBox.Yes | QMessageBox.No,
                                         QMessageBox.Yes)
                if ok == 65536:
                    self.startRec()
                    # print "取消1"
                else:
                    psw, ok = QInputDialog.getText(self, self.tr("密码"),
                                                   self.tr("请重新输入密码:"),
                                                   QLineEdit.Normal)
                    if ok and (not psw.isEmpty()):
                        if psw == csv_psw:
                            # print "密码正确"
                            QMessageBox.about(self, self.tr('通知'),
                                              self.tr('认证成功'))
                        else:
                            # print "密码不正确"
                            ok = QMessageBox.warning(
                                self, self.tr('警告'), self.tr('密码输入错误,是否重新输入'),
                                QMessageBox.Yes | QMessageBox.No,
                                QMessageBox.Yes)
                            if ok == 65536:
                                self.startRec()
                                # print "取消2"
                            else:
                                psw, ok = QInputDialog.getText(
                                    self, self.tr("密码"), self.tr("请再次重新输入密码:"),
                                    QLineEdit.Normal)
                                if ok and (not psw.isEmpty()):
                                    if psw == csv_psw:
                                        # print "密码正确"
                                        QMessageBox.about(
                                            self, self.tr('通知'),
                                            self.tr('认证成功'))
                                    else:
                                        # print "密码不正确"
                                        if s.send_mail(
                                                receivers,
                                                "Face reconition notice!",
                                                str(info) +
                                                ": Error entering password multiple times"
                                        ):
                                            print "密码输入多次错误警告邮件通知发送成功"
                                        else:
                                            print "密码输入多次错误警告邮件通知发送失败"
                                        QMessageBox.about(
                                            self, self.tr('警告'),
                                            self.tr('密码输入次数已耗尽请重新刷脸'))
                                        self.startRec()

                                elif ok and (psw.isEmpty()):
                                    # self.startRec()
                                    self.passwordAuthentication(info, userName)
                                else:
                                    self.startRec()

                    elif ok and (psw.isEmpty()):
                        # self.startRec()
                        self.passwordAuthentication(info, userName)
                    else:
                        self.startRec()

        elif ok and (psw.isEmpty()):
            # self.startRec()
            self.passwordAuthentication(info, userName)
        else:
            self.startRec()