QT----基于QT的人脸考勤系统(未完成)
目录
- 1 编译opencv库
- 1.1 下载源代码
- 1.2 qt编译opencv
- 1.3 执行Cmake一直卡着data: Download: face_landmark_model.dat
- 2 编译SeetaFace2代码
- 2.1 遇到报错By not providing "FindOpenCV.cmake" in CMAKE_MODULE_PATH this project has
- 2.2遇到报错Model missing
- 3 测试两个环境能否使用
- 3.1 配置环境变量
- 4客户端设计
更多内容可以点击这里查看个人博客: 个人博客
1 编译opencv库
1.1 下载源代码
源代码下载地址:https://github.com/opencv/opencv
第三方库下载地址:https://github.com/opencv/opencv_contrib
cmake下载地址:https://cmake.org/download/
都下载4.5.2版本的,把两个zip都解压,windows的第一个库是直接exe解压的
1.2 qt编译opencv
使用qt打开项目,源代码opencv/sources/CMakeLIsts.txt

使用MinGW64构建项目,稍等一会,等qt吧资源都加载完

点击项目,搜索ms取消这两个安装项目,将第三方库的人脸识别模块加入,注意debug为release版本,所有操作都是在release版本上执行的,图片还没更改

修改安装路径

修改下边构建步骤里边 为all,全部安装,最后执行Cmake

1.3 执行Cmake一直卡着data: Download: face_landmark_model.dat
发现一直卡着,这个face_landmark_model.dat下载不下来

采取手动下载的方式
https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat
放到opencv的路径下,并且把没下载完的文件的前缀也加上,替换,再次执行Cmake成功

完毕后回到编辑点击启动,更改构建模式为release,运行

2 编译SeetaFace2代码
2.1 遇到报错By not providing “FindOpenCV.cmake” in CMAKE_MODULE_PATH this project has
下载代码:https://github.com/seetafaceengine/SeetaFace2
依旧是打开CmakeList文件,release模式,遇到报错

打开CmakeList文件添加上这一句,加上你刚刚安装的opcv的路径,注意斜杠的位置
`set(OpenCV_DIR E:/Environment/opencv452)`

修改安装路径,opencv路径等等,更上边类似,执行cmake,执行

2.2遇到报错Model missing
执行后遇到报错模型丢失

下载模型,把四个模型都下载了,放入生成release的文件夹
https://github.com/seetafaceengine/SeetaFace2?tab=readme-ov-file


再次报错,没有图片,找张人脸图片放入


3 测试两个环境能否使用
3.1 配置环境变量
找到系统环境变量PATH,添加两个库的bin文件夹

新建一个qt项目,在配置文件pro里添加上两个库的路径,并且添加上lib。这样在引入头文件就不会报错
#添加头文件
INCLUDEPATH += E:\Environment\opencv452\include
INCLUDEPATH += E:\Environment\opencv452\include\opencv2
INCLUDEPATH += E:\Environment\SeetaFace2\include
INCLUDEPATH += E:\Environment\SeetaFace2\include\seeta#添加库
LIBS += E:\Environment\opencv452\x64\mingw\lib\libopencv*
LIBS += E:\Environment\SeetaFace2\lib\libSeeta*

#include "mainwindow.h"#include <QApplication>
#include <opencv.hpp>
#include <FaceDetector.h>using namespace cv;
using namespace seeta::v2;int main(int argc, char *argv[])
{QApplication a(argc, argv);MainWindow w;w.show();cv::namedWindow("fram");Mat mt = imread("E:/CPP_Study/QT/QTCode/opencvSeetaface/1.jpg");imshow("fram",mt);cv::waitKey(10);seeta::ModelSetting::Device device = seeta::ModelSetting::CPU ;int id = 0;seeta::ModelSetting FD_model("E:/Environment/SeetaFace2/bin/model/fd_2_00.dat",device ,id);seeta::FaceDetector FD(FD_model);return a.exec();
}
4客户端设计
接下来的文章参考我的个人博客纯真丁一郎
相关文章:
QT----基于QT的人脸考勤系统(未完成)
目录 1 编译opencv库1.1 下载源代码1.2 qt编译opencv1.3 执行Cmake一直卡着data: Download: face_landmark_model.dat 2 编译SeetaFace2代码2.1 遇到报错By not providing "FindOpenCV.cmake" in CMAKE_MODULE_PATH this project has2.2遇到报错Model missing 3 测试…...
机试:成绩排名
问题描述: 代码示例: #include <bits/stdc.h> using namespace std;int main(){cout << "样例输入" << endl; int n;int m;cin >> n;int nums[n];for(int i 0; i < n; i){cin >> nums[i];}// 排序for(int i 0; i < n; i){//…...
C编程基础四十分笔记
都是一些基础的C语言 一 输入一个整数,计算这个整数有几位二 编写程序计算一个分布函数三 输入一个字符串,再随便输入一个字母,判断这个字母出现几次四 求 1到10的阶乘之和五 求一个球体体积六 写一个链表,存1,2&#…...
k8s关于pod
目录 1、POD 的创建流程 kubectl 发起创建 Pod 请求: API Server 接收请求并处理: 写入 Etcd 数据库: Kubelet 监听并创建 Pod: Pod 状态更新和汇报: 2、POD 的状态解析 1. Pending Pod 2. Running Pod 3. S…...
yum安装mysql 数据库tab自动补全
centos7上面没有mysql,它的数据库名字叫做mariadb [rootlocalhost ~]#yum install mariadb-server -y [rootlocalhost ~]#systemctl start mariadb.service [rootlocalhost ~]#systemctl stop firewalld [rootlocalhost ~]#setenforce 0 [rootlocalhost ~]#ss -na…...
MBT-Net
feature F,edge feature E-F where r related to the relative position 辅助信息 作者未提供代码...
大数据赋能,能源企业的智慧转型之路
在数字洪流中,大数据已经成为推动产业升级的新引擎。特别是在能源行业,大数据的应用正引领着一场深刻的智慧转型。今天,我们就来探讨大数据如何在能源企业中发挥其独特的魅力,助力企业提效降本,实现绿色发展。 动态监控…...
2024考研国家线公布,各科分数线有哪些变化?考研国家线哪些涨了,哪些跌了?可视化分析告诉你
结论在文章结尾 2024考研国家线 一、近五年国家线趋势图-学术硕士 文学 管理学 工学照顾专业 体育学 交叉学科 军事学 历史学 理学 享受少数名族照顾政策的考生 中医类照顾专业 教育类 艺术类 医学 工学 哲学 法学 农学 经济学 二、近五年国家线趋势图-专业硕士 中医 应用心理 …...
高效、安全的APP分发与推广平台
在信息化快速发展的今天,APP已经成为人们生活中不可或缺的一部分。然而,对于众多APP开发者来说,如何让自己的APP在众多竞争者中脱颖而出,被更多用户所认知和下载,成为了一个亟待解决的问题。这时,一个高效、…...
浅谈异或运算
异或,是一个数学运算符,英文为exclusive OR,缩写为xor,应用于逻辑运算。异或的数学符号为“⊕”,计算机符号为“xor”。其运算法则为: a⊕b (a ∧ b) ∨ (a ∧b…...
Linux下platform总线
一. 简介 前面我们讲了设备驱动的分离,并且引出了总线 (bus) 、驱动 (driver) 和设备 (device) 模型,比如 I2C 、 SPI 、 USB 等总线。 但是,在 SOC 中有些外设是没有总线这个概念的,但是又要使用总 线、驱动和设备模型该怎么…...
C# EPPlus导出dataset----Excel2绘制图像
一、生成折线图方法 /// <summary> ///生成折线图 /// </summary> /// <param name="worksheet">sheet页数据 </param> /// <param name="colcount">总列数</param> /// &l…...
2024年云服务器ECS价格表出炉——阿里云
2024年阿里云服务器租用费用,云服务器ECS经济型e实例2核2G、3M固定带宽99元一年,轻量应用服务器2核2G3M带宽轻量服务器一年61元,ECS u1服务器2核4G5M固定带宽199元一年,2核4G4M带宽轻量服务器一年165元12个月,2核4G服务…...
Grafana
介绍 官网:https://grafana.com/ Grafana 是一个开源的指标分析和可视化工具,它被广泛用于展示和监控云基础设施和应用程序的实时数据。Grafana 提供了一个强大且易于使用的界面,允许用户创建各种图表、图形和仪表盘,以直观地展…...
InnoDB记录结构
InnoDB页简介 InnoDB是一个将表中的数据存储到磁盘上的存储引擎,所以即使关机后重启我们的数据还是存在的。而真正处理数据的过程是发生在内存中的,所以需要把磁盘中的数据加载到内存中,如果是处理写入或修改请求的话,还需要把内…...
【框架学习 | 第六篇】SpringBoot基础篇(快速入门、自动配置原理分析、配置文件、整合第三方技术、拦截器、文件上传/下载、访问静态资源)
文章目录 1.SpringBoot简介1.1原有Spring优缺点分析1.1.1Spring优点1.1.2Spring缺点 1.2SpringBoot概述1.2.1SpringBoot解决上述Spring的缺点1.2.2SpringBoot特点1.2.3SpringBoot核心功能 2.SpringBoot快速入门2.1代码实现2.1.1创建Maven工程2.1.2添加SpringBoot的起步依赖2.1.…...
使用 ReclaiMe Pro 恢复任意文件系统(Win/Linux/MacOS)
天津鸿萌科贸发展有限公司是 ReclaiMe Pro 数据恢复软件授权代理商。 ReclaiMe Pro 是一个通用工具包,几乎可以用于从所有文件系统(从 Windows 系列文件系统、Linux 和 MacOS)中恢复数据。此外,考虑到数据恢复工作的具体情况&…...
全视智慧机构养老解决方案,以科技守护长者安全
2024年2月28日凌晨1时许,在上海浦东大道的一家养护院四楼杂物间内发生了一起火灾事故。尽管火势不大,过火面积仅为2平方米,但这场小火却造成了1人死亡和3人受伤的悲剧。这一事件再次提醒我们,养老院作为老年人聚集的场所ÿ…...
NavicatPremium16破解激活
背景: 如题,本篇主要参考一个个人博客,里面提供百度网盘形式的下载链接,博主在个人尝试的过程中加了几点补充,便于更快安装! Navicat Premium 16 永久破解激活 - 酷酷的洛克 - 博客园 (cnblogs.com) 背景…...
thinkphp6.1~8.0 快速创建CRUD
GIT 源码 TINKPHP 快速创建模型CRUD源码 import os import tkinter as tk from tkinter import messagebox#转小写 def toLowerCase(str):""":type str: str:rtype: str"""return "".join(chr(ord(c) 32) if 65 < ord(c) < 90…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
