【基于Xilinx ZYNQ7000的PYNQ框架项目】01人脸识别项目介绍与展示


前言


  本项目是一个嵌入式开发的人脸识别项目,为开发板自制PYNQ镜像,通过socket通信将笔记本摄像头画面实时传输至开发板,然后使用开发板上的人脸识别模型进行检测后,将识别画面传输回笔记本进行显示。
项目整体设计框架图如下所示:

整体设计框架图
系统处理流程图如下所示:

系统处理流程图


一、项目内容


环境与工具

开发板ZYNQ_MINI(ZYNQ_ECO)
芯片型号ZYNQ-7000 XC7Z020
操作系统Ubuntu 18.04.06、windows11
镜像构建环境vivado 2020.1
PYNQ 2.6.0 (arm架构的
PetaLinux 2020.1

项目文件

实现整个项目的过程中,需要生成的一些关键性文件:

文件名(自拟)用途
base_projectvivado工程文件夹,用于构建镜像
output构建镜像后的输出文件夹,用于烧录镜像进TF卡中,启动开发板
gpio_in_out运行在开发板上的文件夹,包含接收笔记本摄像头视频流的文件 server.py 、进行人脸检测的文件 faceDetect.py 、实现LED灯流水功能的 key.py 、控制按键即停的 control.py
client.py运行在笔记本上的文件,用于向开发板传输摄像头视频流

二、运行项目


1. 登录开发板

使用MobaXterm,同时使用网口和串口登录开发板,以便使用终端操作开发板。用户默认登录密码是 xilinx 。

网口登录成功画面:

网口登录
串口登录成功画面:

串口登录

2. 运行代码

【开发板上】运行 server.py,通过socket机制接收笔记本摄像头的视频流;运行 control.py,实现人脸识别、按键检测、控制LED灯。

【笔记本上】运行 client.py(我的电脑里命名为了main.py,不影响),通过socket机制向开发板实时传输摄像头视频流。

串口终端运行 server.py:

运行 server.py
网口终端运行 control.py:

运行 control.py
在笔记本电脑上运行 client.py:

运行 client.py

3. 效果展示

实现效果为检测程序运行时,检测窗口显示检测结果,LED 灯以流水形式点亮;当检测到按下开发板上key1键时,终止检测程序,检测窗口关闭,熄灭全部 LED 灯。

运行所有程序,笔记本上弹出检测窗口:

检测窗口

开发板LED灯流水:

LED 灯流水

按下开发板的key1键,人脸检测程序关闭,LED灯全部熄灭:

LED灯全部熄灭

网口终端输出如下内容:

终端输出


总结


本篇文章只作简单效果展示,具体实现步骤和源码将在后续文章中详细给出。


有不清楚的地方,欢迎各位在评论区进行交流~

您的关注、点赞与收藏,是我持续创作优秀博客的最大动力!


本项目系列文章:
【基于Xilinx Zynq7000的PYNQ框架项目】02 PYNQ镜像制作

【基于xilinx Zynq7000的PYNQ框架项目】03 Socket实现开发板和电脑的实时视频传输并存储图片

【基于Xilinx ZYNQ7000的PYNQ框架项目】04开发板上运行人脸识别模型

【基于Xilinx ZYNQ7000的PYNQ框架项目】05使用Overlay库和python父子进程实现开发板按键控制LED灯流水或熄灭

我的个人主页:小黄能吃辣的CSDN主页

  • 35
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Xilinx Zynq 7000嵌入式系统是一种基于ARM处理器和FPGA可编程逻辑的系统-on-Chip (SoC)平台。它结合了高性能的ARM Cortex-A9处理器和可编程逻辑的灵活性,为嵌入式系统设计带来了许多优势。 《Xilinx Zynq 7000嵌入式系统设计与实现》这本PDF书籍介绍了使用Xilinx Zynq 7000平台进行系统设计与实现的方法和技术。这本书主要包括以下几个方面的内容。 首先,该书介绍Xilinx Zynq 7000平台的体系结构和特点。它详细解释了Zynq 7000 SoC的内部结构,以及其与外设和外部系统的交互方式。这对于读者了解这个平台的基本概念和原理非常有帮助。 接着,书中介绍了如何使用Xilinx Vivado设计套件进行系统设计和开发。Vivado是一种综合的开发工具,支持软硬实现的联合设计。它提供了设计、验证、综合和实现的功能,读者可以通过学习该书了解如何使用这个工具进行系统设计和开发。 此外,该书还包括了使用编程语言和软件工具进行系统编程和调试的内容。它介绍了如何使用C/C++和VHDL/Verilog语言进行系统编程,并提供了一些常用的软件调试技巧。 最后,这本书详细介绍了一些典型的嵌入式系统案例,在实践中展示了如何使用Zynq 7000平台进行系统设计和应用开发。这些案例涵盖了不同的应用领域,包括通信、图像处理、物联网和工业控制等。 总之,《Xilinx Zynq 7000嵌入式系统设计与实现》这本PDF是一本非常有用的书籍,它提供了对于使用Xilinx Zynq 7000平台进行嵌入式系统设计和实现的详细介绍和指导。无论是对于初学者还是有一定经验的工程师来说,这本书都能够帮助他们更好地理解和应用Zynq 7000平台。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小黄能吃辣

谢谢您对我创作优质内容的支持~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值