一个简单粗暴的人脸认证标注工具的实现

日期:2019-10-12编辑作者:极品飞车官网

一个简单粗暴的人脸认证标注工具的实现。七、发布

此时此刻,相信每一个喵粉的程序都能在自己的电脑上愉快的玩耍了。这么有意思的程序,怎么分享给其他人呢?

和Windows上常用的VS类似,Qt Creator的左下角有个发布选项:

图片 1

选择Release,然后构建整个项目就可以了。之后找到我们的程序,双击就可以运行。

这时候你会愉快的把这个程序发给你的好伙伴,得到的反应一定是:这是啥!我打不开!

为什么呢?

虽然Qt是一个跨平台的界面库,但如果对方的电脑上没有安装Qt,那么就不能运行。不过不用失落,Qt中早已给出一个绝妙的解决办法。

小喵的电脑是Mac的,所以找到的解决方案也是Mac的,Windows和Linux上也有类似的办法,大家可以自行查找。

参考上述博客,我们使用macdeployqt这个工具来处理一下release的程序就搞定。这时候你会发现原本100k的程序变成了22M。但是直接发给别人的时候,是可以直接运行的!

 

一个简单粗暴的人脸认证标注工具的实现。至此,本次的博客结束了。

完整的项目在github上可以下载:

 

如果您觉得本文对您有帮助,那请小喵喝杯茶吧O(∩_∩)O

图片 2

转载请注明出处~

二、数据结构

那么是不是现在就可以动手写代码了呢?当然不是!

小喵写这个软件一共用了3天的时间,第一天完成了一个超简单demo程序,熟悉了一下QT的事件添加,路径选择和显示图片的几个功能。之后又仔细的思考了一下各种数据的结构,才动手做了这一版工具。没有一个清晰的数据的概念,会造成许多的无用功。所以,大家在写程序的时候,要在准备阶段多花一点时间来思考,毕竟写代码才是最简单的事情不是吗?

  1. 输入数据格式:因为小喵的工作环境下,大家都对linux有一些了解,所以可以自行生成好图片的路径的list,这里统一要求,list必须是偶数行(2n行),代表n对,相邻的图片为一对。
  2. 标注数据存储:考虑到我们不仅需要标注是不是一对,还得标注哪张是证件照,所以不妨直接在读数据的时候就分成两份,这样就用两个std::vector<std::string>来存储就行了。
  3. 标注过程的状态:我们需要知道标注过程中的那些信息呢?主要应该有:总数据量,当前已标注的对数。
  4. 标注结果:每一对都有一组对应地 结果,考虑到有4中情况:未标注,不确定,不匹配,匹配这四种,我们定义一个枚举的状态表enum AnnoState就好。之后用一个std::vector<enum AnnoState>来存储标注结果。

 

小喵的博客:http://www.miaoerduo.com

那么现在开始和小喵一起瞎猫似的捯饬QT吧一个简单粗暴的人脸认证标注工具的实现。~

小喵的唠叨话:话说最近小喵也要开始写论文了,想了两周还是没有头绪,不知道该写些什么。恰好又被分配了一点标注数据的工作,于是乎想写点代码,休闲一下。结果也就是这篇博客。对了,小喵对GUI编程一窍不通,只知道Windows有MFC,Mac上的不知道。。。恰好听说过QT,而且知道这个界面库是跨平台的,也就选用了这个工具了。

博客原文:http://www.miaoerduo.com/qt/一个简单粗暴的人脸认证标注工具的实现.html

先看一眼效果图:

六、添加资源

由于我们的程序是需要publish出去的,因此图片文件等资源,必须包含在程序中。那么Qt怎么添加文件资源呢?

在项目视图下,右键项目->添加新文件->Qt->Qt Resource File。就可以创建一个qrc文件了。

图片 3

我这里给这个文件取名为image。

之后,建议在项目的根目录里面新建一个文件夹,用来存放资源。小喵的结构是这个样子的:

图片 4

小喵的项目根目录新建了一个文件夹images,并将图像素材放入了这个文件夹。

之后回到QT,

本文由云顶国际登录官网发布于极品飞车官网,转载请注明出处:一个简单粗暴的人脸认证标注工具的实现

关键词:

我的软件程序自备清单

看过太多的关于分享软件分享app的文章,有些是软文,有些是良心推荐,大家对此也总是乐此不疲,当然也包括我自...

详细>>

《产品经理面试攻略》丨NOTES

本书讲了什么 本书从产品经理介绍讲起,系统讲述了产品简历准备、产品求职作品准备、各大互联网介绍、产品牛人...

详细>>

我想问, 下雨天里出门如何才能优雅地装B?

旁 友们!大噶好!这几天全国外省众多地方都是台风雨天气,在多瑙河华盛顿等等的地点,雨一下下去就毁天毁地,...

详细>>

libuv 一 环境搭建, hello TTY

libuv 一 环境搭建, hello TTY。引言 - 一时心起, libuv linux 搭建 #include uv.h#include assext.h//// 测试 libuv tty 操作控制台// 输出...

详细>>