只要九分钟,用神经网络构建人脸比对模型

2023-10-28

多年以后,面对CSDN专栏,我仍会想起大二肄业后首次面对投资人的那个遥远下午。一位都不知道 Python 是什么的投资人对我说:神经网络这个事,博士都不一定够,得是教授才能做。那时的亚马逊中国只有一本关于书里的一章是关于神经网络,内容还是批判为什么神经网络没有未来。

我当时嘴上没说,但我心里想:说的跟真事似的。

所有人都能使用神经网络。

这就是为什么我和朋友一起写了这个软件:TeguCV GUI,我们希望任何人,都可以更简单地使用神经网络和计算机视觉技术。

TeguCV GUI 是一款简单又比较强大的计算机视觉工具(我们希望早日把「比较」两个字去掉)。无需编写一行代码的情况下,训练神经网络模型,甚至可以直接免训练使用各类常用的计算机视觉模型。如果你会编程,TeguCV 用着更爽。

跟着这篇教程,你可以在九分钟之内用神经网络搭建起你的第一个人脸比对模型。

首先,如果你有一台 Windows 电脑,配合 Nvidia 的显卡(GPU,并且安装英伟达驱动 384.81 及以上,建议最新)点击以下链接添加客服获得下载链接:

https://shaperword.github.io/website/

如果你没有 Windows 电脑,或者没有 Nvidia 的显卡,也可以继续读读;因为我们过一段还会推出线上版供你使用。

下载完毕后,点击 Tegu.exe,它长这样:
在这里插入图片描述

相信我,这个图标是这个软件最好看的地方了,所以你肯定能找到它。如果你看到里面长啥样,估计会永生难忘。先打个预防针,这个软件刚出来,还有一些问题;其中最主要的问题就是卡。所以如果你点了里面的什么东西没有反应,放心你是不会玩坏这个软件的,等会就好。

目前的版本里面你会看到四个模块:

在这里插入图片描述
我知道你会注意到右下角这个东西,你先不用管他,保持克制;我下一次教你怎么用这个功能。当然,我感觉你之后自己试试肯定也能使用。你先去点击右上角这位开心的姚明(Face Detection)。估计要等十秒左右。现在这个东西最大的问题还是比较卡。

在这里插入图片描述
然后你会看到里面长这个样子。

现在我们正式开始有意思的地方了!

第一步是建库,用神经网络搭建人脸比对需要建立数据库,就是告诉电脑你打算识别哪些人。就好像上学需要教材,这个人脸的库就是电脑的教材,教育电脑如何分辨不同的人。

你只需要点击「Folder」这个按钮,然后选择人脸数据集所在的文件夹就可以。

我们已经为你准备好了一些练习用的人脸数据集,你可以在这里面找到:TeguCV GUI 1.15 LTS/Dataset/faces/face_build 这个目录就和你刚才打开 Tegu.exe 在差不多的地方。

顺便说一下,如果这里面有人不认识,我建议查一查;毕竟都是对我们生活产生过影响的刚人。

在这里插入图片描述
第二步是点击「Start Building Manager」这个按钮。然后电脑就会自动开始学习你提供的这些人。第一个人学习的会慢一些,不论多贵的电脑都很难快太多,但第二个人开始就开始变快了。建库完成后会显示「Building Finished」。

第三步,没有第三步了,就这么简单。

现在,你已经用神经网络搭建起了你的第一个(也许是)人脸比对模型!别看那些文章里面把神经网络和人工智能什么的说的多神奇多么高大上,你现在也能做到一样的事情了。这很平常,没什么了不起。

我知道你现在想干什么,肯定是手痒想试试这个模型准不准。所以我们也为你准备了测试用的数据集。它在这里 TeguCV GUI 1.15 LTS/Dataset/faces/facetest
在这里插入图片描述

点击红框里的第一个「Folder」,选择上一句话里面的那个地址,选择测试用的数据集。

然后第二行的「Save Result Path」,是选择保存识别结果的地址。写 Word 需要保存,咱们识别出来的结果也需要保存。

最后这个「Threshold」先不用搭理, 设置为 0.8 就行。

最后点击「Start Detection」开始识别,右侧日志框将会实时显示检测结果。
在这里插入图片描述

你可以在右侧看到结果,你可以在你刚才选择保存位置的那个 txt 文件里面看到识别结果。

至此,你的第一个人脸比对模型,全部流程就是这样了。一点也不难对吧~

如果你想进阶成高段位玩家,这里还有一些提示可供学习;这些知识不光适用于 TeguCV,更适用于所有机器学习技术:

刚才没有提到的「Threshold」中文名是阈(音玉)值,可千万别叫「阀(fa)值」。根据你使用场景对可靠性的要求(如刷脸进门等),你可以在 TeguCV 中自行调节 Threshold。Threshold 值越高,检出率越高,但误检率也会有所提高。Threshold 值越低,检出率越低,但误检率也会有所降低。
人脸建库的时候,最好正脸侧脸都有,但不需要太多。一个人五张照片就行(照片里只有一个人的脸)。最好是训练用的数据,和实际检测的数据是一样的质量。比如你训练的时候用了网上找的 100x100 豆腐块图片,正式使用的时候都是 1080p 的大图,这对电脑挑战可挺大的。人都不一定能从 100x100 的图片里学习出来,更何况电脑。
更多的详细介绍,你下载的文件里有一个说明文档。里面不光有如何使用人脸这个功能的详细介绍,更有其他几个功能的说明。我相信你会学到不少有用的东西。TeguCV 还包含了图像/视频标注,图像识别,视频识别,车牌识别,自动参数选取等模块。
TeguCV 是一个新软件,可能还有很多不尽如人意的地方——不用可能,是肯定有很多不尽如人意的地方。有任何意见、建议或者是想法,都欢迎随时联系我!可以CSDN私信或者可以点击此链接,直接和我们聊聊:

在这里插入图片描述

作者:MasterPa

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

只要九分钟,用神经网络构建人脸比对模型 的相关文章

  • 如何将 OpenCV 的测试框架与 CMake 结合使用?

    好像 OpenCV 有一个测试框架 https github com Itseez opencv tree ef91d7e8830c36785f0b6fdbf2045da48413dd76 modules ts include opencv
  • 在 Python 中使用音频流 RTMP 通过管道和 OpenCV 到 FFmpeg

    我正在尝试使用音频流式传输 FFmpeg 我将在下面展示我的代码 导入模块 import subprocess as sp 创建变量 rtmpUrl rtmp a rtmp youtube com live2 key camera path
  • OpenCV:将垫子除以标量的最简单方法是什么

    我认为标题中已经包含了很多内容 显然我可以迭代和划分 但我认为有一种内置的方法 我看见cvConvertScale但这不适用于类型cv Mat 我知道标量乘法的缩放运算 cv Mat M float alpha cv Mat Result
  • 计数物体和更好的填充孔的方法

    我是 OpenCV 新手 正在尝试计算物体的数量在图像中 我在使用 MATLAB 图像处理工具箱之前已经完成了此操作 并在 OpenCV Android 中也采用了相同的方法 第一步是将图像转换为灰度 然后对其进行阈值计算 然后计算斑点的数
  • OpenCV 2.4 Jpeg 到 PNG(带 alpha 通道)

    我有一个 JPEG 和一个蒙版 我想创建一个具有三个 JPEG 通道的 PNG 并且 Alpha 通道应该是蒙版 如何使用 OpenCV 实现这一目标 Regards std vector
  • Python 2.7从非默认目录打开多个文件(对于opencv)

    我在 64 位 win7 上使用 python 2 7 并拥有 opencv 2 4 x 当我写 cv2 imread pic 时 它会在我的默认 python 路径中打开 pic 即C Users Myname 但是我如何设法浏览不同的目
  • 体系结构 x86_64 的未定义符号:用于 caffe 构建

    我收到此错误的原因是caffe http caffe berkeleyvision org 建造 我该如何修复它 我使用的是 Mac OSX Yosemite 10 10 1 控制台日志 Machida no MacBook Air caf
  • 如何根据图像中的对象大小(以像素为单位)来测量现实世界中的对象大小(例如英寸、厘米等)?

    我计算了物体的大小pixel来自包含对象的图像 我想测量现实世界中物体的大小 有没有办法找出乘数来测量实际尺寸 我目前正在使用python以便实施 通常 您将使用相机获取图像 该相机通过镜头将 3 维场景投影到 2 维传感器上 垂直 高度
  • 如何使用opencv将最近的点连接在一起

    在python中使用OpenCV模块是否可以连接下图中的红点 使得每个红点仅与其最近的邻居红点连接一次 第一步 您应该使用适当的工具将图像转换为二进制图像 例如cv2 cvtColor cv2 threshold cv2 bitwise n
  • 使用 ffmpegframerecorder android 保存视频

    我正在尝试保存该视频并收到此错误 我添加了两个jar文件1 javacv 2 javacpp and for 相机预览我用过opencv 我在这里添加代码 公共无效运行 while true Bitmap bmp null synchron
  • python求边数

    我使用下面的代码来查找图像中的边数 但它没有给出适当的结果 导入CV2 image cv2 imread sheet jpg gray cv2 cvtColor image cv2 COLOR BGR2GRAY thresh cv2 thr
  • tesseract Remove_Reference Visual Studio 2012 项目中的不明确符号

    我将更详细地描述我的情况 我正在使用 C OpenCV Tesseect 构建一个车牌识别系统 但是当我编译代码时 它返回给我一堆错误模糊引用 所以我检查了代码的所有行 我在这个小组中搜索了解决方案 并尝试了几种但没有成功 问题 error
  • OpenCv SVM 输出文件格式

    我正在实现我自己的 SVM 而不是使用 OpenCV 的 svm 类 如果我愿意 我希望我的 SVM 用于保存其输出的 XML 文件将来可以由 OpenCV 的 SVM 加载和使用 为此我需要做什么 简而言之 OpenCV 使用什么格式来存
  • OpenCV C++ cv::convexityDefects 错误

    vector
  • 找不到 tbb.dll

    我在 opencv 2 3 中使用 cvCanny 函数 它编译得很好 但在执行时出现错误 提示 tbb dll 未找到 这个dll有什么用处 在哪里可以找到这个 thanks 它是英特尔的一部分线程构建块 http threadingbu
  • 将曲线图案与图像边缘匹配

    我有一个要搜索沿其边缘的曲线的目标图像和一个包含该曲线的模板图像 我需要实现的是在目标图像中找到模板图像中的曲线的最佳匹配 并根据分数来判断是否匹配 这还包括曲线的旋转和大小调整 目标图像可以是 Canny Edge 检测器的输出 如果这能
  • OpenCV 从中心 x,y 绘制矩形

    我想仅使用中心点绘制一个矩形 所以在我的中心点周围几乎是一个矩形 最简单的方法是什么 谢谢 考虑到中心 x y then cv rectangle image cvPoint x w 2 y h 2 cvPoint x w 2 y h 2
  • 使用 openCV 检测 ROI

    我正在做一项工作 我必须找到感兴趣的区域 ROI 然后对图像执行阈值 由于我不是计算机领域的 所以我遇到了一些困难 我开始尝试通过以下代码找到投资回报率 code string filename 2011 06 11 09 3A12 3A1
  • 如何在 Keras Lambda Layer 中使用 OpenCV 函数?

    我正在尝试使用一个在图像上使用某些 OpenCV 函数的函数 但我得到的数据是张量 我无法将其转换为图像 def image func img img cv2 cvtColor img cv2 COLOR BGR2YUV img cv2 r
  • ndk-build error.opencv2/core/core.hpp:没有这样的文件或目录

    我在 Android 中使用 OpenCV Nonfree 模块时遇到问题 我读了这个教程https sites google com site wghsite technical notes sift surf opencv androi

随机推荐

  • adspower是做什么用的,adspower费用,adspower类似软件有哪些?

    adspower费用 通过价格表 我们可以看出 美元报价表对国内用户不够友好 而且环境数量还是太少了 对于长期做相关业务的朋友 可能远远不够 候鸟浏览器 候鸟浏览器官网 防关联超级指纹浏览器系统工具 费用 候鸟浏览器相对价格更低 包括创建环
  • #if defined() 含义

    文章出处 http www blogjava net tinysun archive 2010 07 27 327215 html 看到内核代码中有很多地方都使用了 if defined 可是却找不到这个东东的定义 主要是define 它和
  • 【C语言】指针进阶(二)

    个人主页 阿然成长日记 点击可跳转 个人专栏 数据结构与算法 C语言进阶 不能则学 不知则问 耻于问人 决无长进 目录 四 数组名详解 1 数组名的理解 2 案例分析1 案例分析2 五 函数指针 1 其声明形式如下所示 2 函数指针的初始化
  • 起亚汽车RFID定位管理系统提升了物流运输效率

    1 应用背景 英国物流提供商Paragon Automotive部署RFID定位管理解决方案跟踪伊明赫姆港口附近的起亚汽车 这些汽车都在这个港口喷漆 存储并运送到其他零售地点 RFID定位管理系统使用了Paragon自己的管理软件 移动及固
  • python怎么获取免费代理IP

    什么是免费代理IP 免费代理IP是指可以免费使用的代理服务器的IP地址 代理服务器充当客户端和目标服务器之间的中间人 通过转发请求和响应来实现网络数据的传输 使用代理IP可以隐藏真实的客户端IP地址 实现匿名访问网络资源 免费代理IP通常由
  • 减轻剪辑工作必备——Python实现让视频自动打码,再也不怕出现少儿不宜的画面了

    我们在观看视频的时候 有时候会出现一些奇怪的马赛克 影响我们的观影体验 那么这些马赛克是如何精确的加上去的呢 有什么python相关报错解答自己不会的 或者源码资料 模块安装 女装大佬精通技巧 都可以来这里 https jq qq com
  • ffmpeg多个流画面合并

    首先这个是两路视频流的合并 要实现将两个视频一左一右同时播放的效果 可以使用FFmpeg的hstack和vstack滤镜来实现 以下是一种常见的方法 ffmpeg i input1 mp4 i input2 mp4 filter compl
  • sed命令详解

    简介 sed是非交互式的编辑器 它不会修改文件 除非使用shell重定向来保存结果 默认情况下 所有的输出行都被打印到屏幕上 sed编辑器逐行处理文件 或输入 并将结果发送到屏幕 具体过程如下 首先sed把当前正在处理的行保存在一个临时缓存
  • 技术人员如何形成差异化竞争力让自己活下去

    随着大的经济环境的影响 我看到很多人开始变得焦虑 技术人员也开始焦虑 其实我也会焦虑 从宏观角度来看 国内很多企业一直走不出国门 难以进一步做增长 导致需求减少 而互联网行业也整体进入稳定期 对新业务不再像以前那样不计成本 导致需要的人也大
  • 如何快速入门深度学习目标检测?

    学习目标 了解目标检测的任务 知道目标检测的常用数据集 知道目标检测算法的评价指标 掌握非极大值NMS算法的应用 了解常用的目标检测算法分类 1 目标检测 目标检测 Object Detection 的任务是找出图像中所有感兴趣的目标 并确
  • 打包jar到maven本地仓库

    有时候时间打包的sdk需要集成到其他工程里面 然后需要把sdk打包到工程的仓库里面 命令如下 mvn install install file Dfile jar所在的路径 DgroupId groupId名字 自己随便取 Dartifac
  • PID算法C语言模拟演示

    由于暂时没有硬件平台 网上找到一篇 用C语言实现PID控制代码 写的非常好 参照其文章 自己也动手实验了一下 下面通过几张 Execl 截屏说明下 Kp Ki Kd 三个参数不同取值时的输出效果 感谢CSDN博主 生活不易到处是坑 的原创文
  • 华为面试算法题

    华为面试算法题1 给定一个n 2的二维数组 表示有n个任务 一个信息是任务能够开始做的时间 另一个信息是任务的结束期限 后者一定大于前者 且数值上都是正数 你作为单线程的人 不能并行处理任务 但是每个任务都只需要一个单位时间完成 你需耍将所
  • vue3+vite+ts--watch和watchEffect监听使用

    目录 一 watch的使用方法 二 watchEffect的使用方法 三 watch和watchEffect的区别 一 watch的使用方法 watch 监听的数据 监听数据的函数 监听配置对象 是否立即执行 是否开启深度监听 watch
  • R语言课后习题

    R安装 1 输入命令 B 在浏览器中显示帮助文档 并学会使用帮助文档 A help solve B help start C help D data 2 函数 D 可在当前会话中执行一个脚本 A demo test B rm test C
  • el-table选中数据后echarts数据更新

    项目场景 在做后台管理系统中 数据分析模块必不可少 所以要用到echarts来实现此功能 例如 在el table中选中某条数据后echarts会更新数据 初始化的时候echarts数据是后端返回的默认数据 常规数据操作 提示 在这里记录一
  • JavaEE项目实战(OA系统)之十八_流程审批之一

    JavaEE项目实战 OA系统 之十八 流程审批之一 下面介绍OA系统的另一模块 流程审批 OA系统推崇的是无纸化办公 因此各项事务的流程审批是OA系统的一大类应用 下面 我们来设计流程审批的数据库 首先 我们来看一张图 所谓的 流程审批
  • Windows11 搭建WSL运行CentOS7(WSL+Pycharm环境搭建系列之一)

    Windows11 搭建WSL运行CentOS7 0 前言 1 启动 WSL 2 启动虚拟机平台功能 3 下载并安装Linux 内核更新包 4 将WSL2设置为默认版本 5 选择Linux发行版进行安装 6 如何判定WSL的发行版安装成功
  • SSM 高级面试题

    Spring 依赖注入方式有那些 参考答案 通过构造器注入 通过 setter 注入 通过 filed 注入 Spring Boot 特点有哪些 参考答案 Spring Boot 的特点 1 快速开发 Spring 应用的框架 2 内嵌 T
  • 只要九分钟,用神经网络构建人脸比对模型

    多年以后 面对CSDN专栏 我仍会想起大二肄业后首次面对投资人的那个遥远下午 一位都不知道 Python 是什么的投资人对我说 神经网络这个事 博士都不一定够 得是教授才能做 那时的亚马逊中国只有一本关于书里的一章是关于神经网络 内容还是批