Newer
Older
CasicBioRecNew / RecognizeResultForm.cpp
#include "RecognizeResultForm.h"
#include "ui_RecognizeResultForm.h"

RecognizeResultForm::RecognizeResultForm(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::RecognizeResultForm)
{
    ui->setupUi(this);
    ui->labVideo->hide();

    // 加载css文件设置控件样式
    QFile file(QApplication::applicationDirPath() + "/qss/recognize.css");
    if (file.open(QFile::ReadOnly))
    {
        QString qssStr = QLatin1String(file.readAll());
        this->setStyleSheet(qssStr);
        file.close();
    }
}

RecognizeResultForm::~RecognizeResultForm()
{
    delete ui;
}

void RecognizeResultForm::startWorkingRecognize()
{
    // 开始人脸识别
    ProMemory::getInstance().faceRecogPro->setWorking(true);

    // 将界面切换到识别界面 RecognizeResultForm
    ProMemory::getInstance().faceCam->openFaceCamera(SettingConfig::getInstance().FACE_FRAME_INTERVAL);

    // 1人脸图像显示的容器
    ui->labVideo->resize(1060, 607);
    ui->labVideo->move(110, 100);
    ui->labVideo->raise();
    ui->labVideo->show();
}


void RecognizeResultForm::drawImageOnHomeForm(QImage imageDisp)
{
    if (ui->labVideo->isVisible() == true)
    {
        LOG(TRACE) << "DRAW IMAGE ON FORM " << imageDisp.width() << "*" << imageDisp.height();
        imageDisp = imageDisp.scaled(1040, 585);
        ui->labVideo->setPixmap(QPixmap::fromImage(imageDisp));
    }
}

void RecognizeResultForm::showRecogFailure()
{

}
void RecognizeResultForm::showRecognizeResult(QString personId)
{
    SpeakerUtil::getInstance().speak("识别成功");
//    ui->labVideo->hide();
}