实验室人员管理系统开发(Qt+opencv+sql)

本文记录了使用Qt Creator和OpenCV开发一个实验室人员管理系统的全过程,包括图像识别(人脸检测与人脸识别)、人机交互界面设计、数据库搭建以及系统打包与移植。系统支持通过图像识别录入和管理实验室人员信息。
摘要由CSDN通过智能技术生成

1引言

一直想学习一下Qt开发上位机程序,之前利用Qt Creator做过简单的网络调试助手,了解到Qt软件开发的基本流程以及Qt Creator的基本使用。最近想做一个人脸识别的上位机,学习一下opencv图像处理。因此想到用Qt Creator,并在Qt中使用数据库搭建一个实验室人员管理系统。(此博客主要是记录一下学习过程,便于以后查看)

1.1系统介绍

上位机界面分为数据输入区、操作区、数据库数据显示区。操作人员可以通过上位机对数据库中的数据进行录入、修改、删除、查找(支持图像识别)、导出等操作。数据库中实验室人员信息数据可以通过手工和图像识两种方式录入。

1.2软件安装

  Qt5.14.2 MSVC2017 配置opencv_contrib4.3.0扩展库
  链接: [https://blog.csdn.net/Call_me_A_Bo/article/details/108858239).
  视频资源:https://www.bilibili.com/video/BV1tp4y1i7EJ

2开发实现

2.1图像识别

OpenCV(开源计算机视觉库),实现了图像处理和计算机视觉方面的很多通用算法,是计算机视觉领域最有力的研究工具之一。OPencv包括:图像处理和视觉算法(CV)、机器学习库(ML)、图像和视频输入/输出库(HighGUI)、基本结构和算法,XML支持,绘图函数(CXCORE)以及CVAUx模块。

2.1.1人脸检测

opencv 提供了很多已经训练好的分类器:人脸分类器,眼睛分类器,嘴部分类器等。可以看出这些分类器都是基于Haar特征的cascade分类器(classifiers)。
在这里插入图片描述
本系统选用的人脸分类器haarcascade_frontalface_alt.xml,将分类器放入系统根目录中,便于调用。人脸检测代码段如下:`。

 if (!face_cascade.load("F:/QT/prigect/face/untitled/haarcascade_frontalface_alt.xml"))//加载人脸分类器
                   {
   
                       qDebug("Load haarcascade_frontalface_alt failed!");
                       return;
                   }
    face_cascade.detectMultiScale(frame, faceRect, 1.1, 3, 0 | CASCADE_SCALE_IMAGE, Size(180, 180));
    if(!faceRect.empty())
    {
   
        for (size_t i = 0; i < faceRect.size(); i++)
                {
   
                   num++;
                    if(num==11)
                   num=1;
                  qDebug("OK");
                    rectangle(frame, faceRect[i], Scalar(0, 255, 0));      //用绿色矩形画出检测到的位置
                     FaceRoI=frame(faceRect[i]);
                    cv::resize(FaceRoI,face_test,Size(92, 112));
                    str=str.sprintf("%d.jpg",num) ;
                        str1=str.toStdString();
                      cv::imwrite(str1,face_test);
                }
    }
    else
        qDebug("no get");
    cv:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值