It can be a face application using SeetaFace and Qt.
之前编译了一下SeetaFace的库,用于人脸检测、特征点定位和人脸识别的功能,然后昨天就用Qt写了一个软件用于实现。
工程的文件还是比较简单的,一个界面类和一个SeetaFace的线程类而已。这里主要涉及到Qt的多线程,Qt的多线程还是比较好用的,界面就比较简单。就是写单调的条条框框的。现在就先展示下界面和效果吧。

人脸检测

特征点定位

人脸识别:标签和相似分数
尝试下摄像头,角度稍微低头一点也还行,稍微遮一下丑也还勉强OK,所以性能还是蛮OK的,当然我的OK是指我自己觉得不错:


然后找一张小一点的人脸:

OK,软件的功能大概如下:

加载数据有三种源头:图片、视频和摄像头,功能有三个:人脸检测、特征点定位、人脸识别;可实时调整人脸检测的参数、可以提取保存数据库里的图像(也就是暂且叫训练把,其实不对,但还是算啦,自娱自乐,不必那么较真)。
这其中,会涉及到Qt的多线程、文件操作等方面,然后写这个软件,大概是从昨天中午写到晚上12点多吧,中间包括去做其他事,所以如果是熟练的大神的话,估计都不屑于写这样的"小玩具"了吧。然后可能还需要优化,我只是写出来了,感觉速度也还能接受,所以就没去管软件优化问题了。
好了,大概就这样。
囡囡呀你会困惑
慢些脚步别忘了
慢慢的你会明白丢了的是什么
人生路本就是场获得与失的选择
迷路时想想当年阿婆怎么说
It can be a face application using SeetaFace and Qt.的更多相关文章
- Qt 程序打包发布
Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,Qt 官方开发环境里自带了一个工具:windeployqt.exe.在Qt安装目录如:C:\Qt\Qt5.7. ...
- 词频统计_输入到文件_update
/* 输入文件见337.in.txt 输出文件见338.out.txt */ #include <iostream> #include <cctype> #include &l ...
- Qt入门1---widget、mainwindow和Dialog区别
摘要: 看了一个月的Qt,居然没有理清Qt中 ------------------------------------ 1.QMainWindow A main window provides a f ...
- Ubuntu 13.10 安装Qt5
Qt5在Ubuntu的软件中心是找不到的,只能从Qt的官网下载安装. http://qt-project.org/downloads,选择完整的Linux版本(qt-linux-opensource- ...
- Web服务器(CassiniDev的裁减版)
做此程序的原因是将软件部署简化,省去IIS的麻烦部署,减少项目实施人员的工作量和工作复杂度 Server sv = , "/", @"D:\web", IPAd ...
- qt 总结
Qt中的每个类,都有一个对应的同名头文件,其中包含其类定义.例如要使用QApplication类,则需要在程序中添加" #include <QApplication>" ...
- LXPanel自定义添加应用程序到快速启动栏
LXPanel是Linux下LXDE项目的一个桌面面板软件.我一开始接触的时候,对于自己自定义的程序到快速启动栏绕了很多弯路,这里记录下,防止以后自己忘了.还有一点就是很多时候,panel下的应用程序 ...
- 【IIS小技巧】将IIS Express改成可以通过ip地址访问
通过浏览器访问的是localhost,如果通过手机访问则需要用ip地址,所以要修改IIS Express的配置,允许通过ip地址访问. IIS Express的配置文件默认在C:\Users\User ...
- Using Qt to build an Omi App for iOS (and Android)
JUNE 6, 2014 / HHARTZ Working on projects where the technology is pre-determined, it's often difficu ...
随机推荐
- Oralce给字段追加字符,以及oracle 给字段替换字符
追加字符 update table_name t set t.DIST_NAME = t.DIST_NAME || '市' where PROD_NAME='爱立信' table_name :表名 ...
- php截取指定两个字符之间的字符串
//截取指定两个字符之间的字符串 public function cut($begin,$end,$str){ $b = mb_strpos($str,$begin) + mb_strlen($beg ...
- java虚拟机开篇01
一直以来对java 基础设施都啥都不知道啊,感觉有时候挺费力,挺吃劲的. 一下是一些很好的参考资料: http://blog.csdn.net/bingduanlbd/article/details/ ...
- 赶在EW2020之前,FreeRTOS发布V10.3.0,将推出首个LTS版本
点击下载:FreeRTOSv10.3.0.exe 说明: 1.新版更新: (1)对于IAR For RISC-V进行支持,并且加强了对RISC-V内核芯片支持,做了多处修正. (2)对阿里平头哥CH2 ...
- yii2.0 引入权限控制插件
权限控制:"mdmsoft/yii2-admin": "~2.0" 教程:http://www.cnblogs.com/zyf-zhaoyafei/p/5825 ...
- Redis详解(六)——哨兵机制
Redis详解(六)--哨兵机制 一.概述 Redis Sentinel是一个分布式系统,为Redis提供高可用性解决方案.可以在一个架构中运行多个 Sentinel 进程(progress), 这些 ...
- leetcode1261 Find Elements in a Contaminated Binary Tree
""" Given a binary tree with the following rules: root.val == 0 If treeNode.val == x ...
- BAT 五路internet负载均衡
一个网上下载的bat文件 也不记得从那里下载的了 记得似乎需要管理员权限运行 依稀记得测试有效 放在这里做个记录 @echo off echo. echo ╭─────────╮ echo ╭──── ...
- 一、Vue环境搭建及基础用法
一.项目初始化及安装 官网:https://cn.vuejs.org/ 1.1安装及运行项目步骤 1.安装vue-cli(-g=-global) npm install -g vue-cli cnpm ...
- JuJu团队12月1号工作汇报
JuJu团队12月1号工作汇报 JuJu Scrum 团队成员 今日工作 剩余任务 困难 于达 修改generator函数 优化代码 不熟悉julia 婷婷 和金华一起调试main.jl 继 ...