YCRB色彩空间域助力快速完成人脸识别数据集

简介: YCRB色彩空间域助力快速完成人脸识别数据集

前言


  近期分享给大家一个快速制作人脸识别数据集制作的方法,此项目分为MATLAB版和Python版,这二者都有目录式的数据集制作和Voc数据集的制作,在这里为大家着重介绍逻辑结构设计,代码部分为会更新至仓库中,这里为将以MATLAB为蓝本为大家介绍其逻辑结构




MATLAB版本


函数整体介绍:


当你下载此项目后打开MATLAB可以发下如下结果:


MakeVocDataSet.m : 代表制作Voc数据集


MakeDataSet.m : 代表制作普通图像分类的数据集,其导入格式为目录式


FindFace.m : 回调函数(发现人脸)



函数流程讲解


FindFace.m:


此函数主要作用是检测出图像中的人脸以及人脸的坐标。


通过RGB空间域转换到ycbcr空间域,检测符合黄种人肤色的人脸部分,大家也可以根据空间域自行调节,便于自己使用。


MakeVocDataSet.m (用来创建VOC式数据集)


此函数主要作用是通过摄像头对准人脸部分进行制作数据集,核心流程步骤如下:


  1. 读取摄像头


  1. 构造True循环


  1. 获取视频画面


  1. 对视频画面进行归一化(可设置成自己需要的大小方便后面计算人脸框,避免因外接相机不同造成Bug)


  1. 调用FindFace.m 函数,返回值分别为:人脸图像、X轴坐标值、Y轴坐标值


  1. 判断返回值中是否存在人脸图像或XY值(有时候画面中没有人脸或人脸被遮挡会报错跳出TURE循环)


  1. 如果返回值判断为不存在人脸则disp(No Face)


  1. 如果返回值判断为存在人脸则执行下面的程序


  1. 给图像命名。图像全名 = 图像名称 + 图像格式


  1. 存储命名结束的图像至指定位置


  1. 给txt文件信息部分进行赋值。txtinfo = 图像全名+空格+标签+空格+Xmin+空格+Ymin+空格+Xmax+空格+Ymax


  1. 对txtinfo进行创建txt文件并存储。txt全程 = 图像名称 + .txt


  1. 结束if 和 while 1 == 1 循环


MakeDataSet.m(用来创建目录式数据集)



  1. 读取摄像头


  1. 构造True循环


  1. 获取视频画面


  1. 调用FindFace.m 函数,返回值分别为:人脸图像、X轴坐标值、Y轴坐标值


  1. 判断返回值中是否存在人脸图像或XY值(有时候画面中没有人脸或人脸被遮挡会报错跳出TURE循环)


  1. 如果返回值判断为不存在人脸则disp(No Face)


  1. 如果返回值判断为存在人脸则执行下面的程序


  1. 对获取到的人脸画面进行归一化(可设置成自己需要的大小方便训练数据的大小)


  1. 给图像命名。图像全名 = 图像名称 + 图像格式


  1. 存储命名结束的图像至指定位置


  1. 结束if 和 while 1 == 1 循环


txt2xml.py (用来将txt文件转化为xml文件)



Python版本



程序的逻辑结构可以参考MATLAB版本,在语法上二者有些许差异但是在逻辑上二者一致。



相关文章
|
4月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
【Python深度学习】Tensorflow+CNN进行人脸识别实战(附源码和数据集)
【Python深度学习】Tensorflow+CNN进行人脸识别实战(附源码和数据集)
114 0
|
存储 算法 数据库
人脸识别数据集
人脸识别数据集
|
算法 测试技术 数据库
人脸识别常用数据集大全(12/20更新)
人脸识别常用数据集大全(12/20更新) 原文首发地址:人脸识别常用数据集大全(12/20更新) - 极市博客   1.PubFig: Public Figures Face Database(哥伦比亚大学公众人物脸部数据库) The PubFig database is a large,...
3144 0
|
2月前
|
机器学习/深度学习 监控 算法
m基于深度学习网络的活体人脸和视频人脸识别系统matlab仿真,带GUI界面
m基于深度学习网络的活体人脸和视频人脸识别系统matlab仿真,带GUI界面
38 0
|
8天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
24 6
|
2月前
|
算法 安全 搜索推荐
深入浅出:使用Python实现人脸识别系统
在当今数字化时代,人脸识别技术已成为安全验证、个性化服务等领域的关键技术。本文将引导读者从零开始,逐步探索如何利用Python和开源库OpenCV来构建一个基础的人脸识别系统。本文不仅会详细介绍环境搭建、关键算法理解,还会提供完整的代码示例,帮助读者理解人脸识别的工作原理,并在实际项目中快速应用。通过本文,您将能够掌握人脸识别的基本概念、关键技术和实现方法,为进一步深入学习和研究打下坚实的基础。
|
6月前
|
存储 编解码 数据库
基于人脸识别的智能门锁系统
基于人脸识别的智能门锁系统
86 0
|
7月前
|
关系型数据库 测试技术 数据库
Python 基于人脸识别的实验室智能门禁系统的设计与实现
Python 基于人脸识别的实验室智能门禁系统的设计与实现
|
2月前
|
小程序 JavaScript Java
android电子班牌人脸识别系统源码
智慧校园云平台全套源码包含:电子班牌管理系统、成绩管理系统、考勤人脸刷卡管理系统、综合素养评价系统、请假管理系统、电子班牌发布系统、校务管理系统、小程序移动端、教师后台管理系统、SaaS运营云平台。
34 1
|
2月前
|
机器学习/深度学习 XML 数据库
深入浅出:使用Python实现人脸识别系统
在本文中,我们将探索如何使用Python和开源库OpenCV来构建一个基础的人脸识别系统。不同于传统的技术文章摘要,这里我们将以故事化的方式引入问题背景,带领读者从零开始,逐步深入到人脸识别技术的核心原理和实现过程中。我们将讨论人脸识别技术的基本概念、所面临的挑战、以及如何通过Python代码解决这些问题。最终,读者将获得足够的知识和技能,去实现一个简单的人脸识别系统,为进一步的学习和研究打下坚实的基础。

热门文章

最新文章