电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>使用PYNQ的Ultra96面部识别锁栓

使用PYNQ的Ultra96面部识别锁栓

2023-06-26 | zip | 0.00 MB | 次下载 | 免费

资料介绍

描述

介绍

随着智能家居变得越来越流行,重要的是要记住,DIY 家居装修始终是一种选择。虽然 10 年前对于嵌入式爱好者来说,智能锁或门铃摄像头之类的东西似乎是不可能的,但今天的技术使它变得像从婴儿身上拿糖果一样简单(并不是任何人都应该从婴儿身上拿糖果,这是一种卑鄙的做法)。在这个项目中,我们将使用人脸检测和深度神经网络等热门话题来创建一个使用面部识别来锁定和解锁的智能锁。即使没有任何嵌入式经验,这个项目也不应该太难重新创建并在一天内启动和运行。

超过 6 小时会自动删除。

2. 如果检测到人脸,图像通过卷积神经网络生成人脸指纹。

  • 如果是非用户(即与KnownUser目录中的任何指纹都不匹配),则他们的面部将存储在NonUser目录中(每 24 小时删除一次),并且门栓锁定。
  • 如果是已知用户,摄像头会一直轮询,直到同一用户被识别 5 次,然后锁舌解锁,用户的面部存储在Entrants目录中。

程序

硬件设置

首先,我们必须在 Ultra96-V2 上设置 PYNQ。为此,首先访问http://www.pynq.io/board.html并单击“Avnet Ultra96-V2:v2.4 PYNQ 映像”选项,它将提示您下载开发板所需的启动映像为了运行 PYNQ 软件。使用 USBSD 转换器或 SD 转 MicroSD 转换器(如果您的计算机有 SD 卡插槽)将 16 GB MicroSD 卡插入您的 PC,然后使用 Win32 Disk Imager 将图像写入其中。在下图中,我的 SD 卡名为[E:/] ,我的 PYNQ 启动映像的路径是C:/VM_Shared/ultra96v2_v2.4.img ,但你的很可能会有所不同。

 
poYBAGNYzy6AS3Y-AAAqL2f9u1U596.png
Win32 磁盘映像器
 

Win32 完成写入后,通过右键单击文件资源管理器中的驱动器并选择弹出来弹出您的 SD 卡。现在您可以将它从您的 PC 中取出并将其放入 Ultra96 V2 MicroSD 卡插槽中。使用 DC 筒形插孔将电路板连接到电源,并使用 Micro USB 电缆连接到您的 PC。然后,确保启动开关 (SW3) 设置为 SD 模式,如下面的 GIF 所示,使用 USB 端口附近的开关四 (SW4) 将其打开。您应该会看到 MicroSD 卡插槽附近的红色 LED (INIT) 亮起,几秒钟后,它应该会关闭,并且附近的蓝色 LED (DONE) 应该会亮起。

引导
 

此时,您可以打开一个新的 Google Chrome 窗口并在搜索栏中输入192.168.3.1 (或 192.168.3.1:9090/lab)到搜索栏中,这将带您进入 PYNQ Jupyter Notebooks 标志-在页面中。密码是赛灵思如果页面没有加载,请稍等片刻,然后点击刷新;有时板子需要一点时间才能完全完成启动。

进入 PYNQ 主页后,导航到common/wifi.ipynb并按照步骤将 Ultra96 连接到 WiFi。此时,您可以按照以下可选步骤对您的开发板进行无线编程,但它很可能比使用 Micro USB 电缆慢。

可选无线编程

1. 在 Jupyter Notebooks 中通过选择New → Terminal (或JupyterLab 中的+ → Terminal)打开一个新终端。

2. 在终端中,键入ifconfig并复制该部分下的 IP 地址wlan

3. 在谷歌浏览器中打开一个新选项卡并在搜索栏中输入 IP 地址(如果您想使用实验室环境,请再次输入:9090/lab),确保您的 PC 与开发板在同一个 WiFi 上。

4. 现在,您可以断开 Micro USB 电缆并无线编程您的开发板。

软件设置

通过选择New → Terminal (或JupyterLab 中的+ → Terminal)打开一个新终端,然后按照以下步骤将必要的软件安装到 Ultra96 上(注意:您可以从此处复制代码(不带$)并使用粘贴到终端中ctrl+shift+v) :

1.升级pip:

$ pip3 install --upgrade --user pip                            

2. 在 OpenCV 上安装最新版本,我们将用于人脸检测的软件。虽然 PYNQ 引导映像已经有 OpenCV,但我们需要安装最新版本来满足我们的需要:

$ cd /home/xilinx                            
$ wget -O opencv.zip https://github.com/opencv/opencv/archive/3.4.3.zip                            

3. 解压 OpenCV 并移动一些目录:

$ unzip opencv.zip                            
$ mv opencv-3.4.3 opencv                            
$ cd opencv                            
$ mkdir build                            
$ cd build                             

4. 将 USB 闪存驱动器插入 Ultra96 USB 端口,然后运行以下命令将其用作交换内存:

  • 首先,找到闪存驱动器的名称:
$ sudo blkid                            

我的被​​称为sdb1

  • 然后,运行这些命令来设置交换空间:
$ sudo mkswap /dev/sdx                            
$ sudo swapon /dev/sdx                            

5. 使用以下命令配置 OpenCV:

$ cmake -DCMAKE_BUILD_TYPE=RELEASE \                         
-DCMAKE_INSTALL_PREFIX=/usr/local \                            
-DINSTALL_PYTHON_EXAMPLES=ON \                            
-DINSTALL_C_EXAMPLES=OFF \                            
-DPYTHON_EXECUTABLE=/usr/bin/python3 \                            
-DBUILD_EXAMPLES=ON ..                             

6. 现在使用以下命令编译 OpenCV(注意:这可能需要大约 3 小时):

 $ make -j2                            

7. OpenCV 编译完成后,使用以下命令安装它:

$ sudo make install                            
$ sudo ldconfig                            

8. 将目录更改为/home/xilinx

$ cd /home/xilinx                            

9. 安装 PYNQ 计算机视觉覆盖:

$ sudo pip install --upgrade --user git+https://github.com/Xilinx/PYNQ-ComputerVision.git                             

10. 您可能需要更新 pandas 才能使叠加层正常工作:

$ pip install --upgrade pandas                            

11.安装smbus:

$ sudo apt-get install python3-smbus                    

12. 在 Jupyter Notebooks 中创建一个新目录(随意命名)。然后$ cd进入终端中的新目录并从 Github 克隆项目文件:

$ cd /home/xilinx/jupyter_notebooks/$ git clone https://github.com/julianbartolone/doorbellcam                        

集会

锁定
 

现在是时候把所有东西放在一起了。这是一些用户创造力发挥作用的地方,因为我不一定找到组装锁定机制的最佳方法。将伺服器固定到锁舌上取决于您(我的如下图所示),但我们现在将讨论如何将其全部连接起来。

 
pYYBAGNYzzCAXExvAAEPmkCQOy8140.png
临时伺服/锁定接头
 

首先,保存您的 Jupyter Notebooks。然后,通过按下电源按钮 (SW4) 或$ sudo shutdown now在终端中键入来关闭 Ultra96。板子关机后,断开直流电源线。现在,将 Click Mezzanine 板放在 Ultra96 的顶部,将 Click Mezzanine 的引线插入 Ultra96 上的引脚插座(它应该非常适合)。接下来,将 Click 伺服插入 Click Mezzanine 上的 mikroBUS 1(它也应该非常适合)。您现在可以重新插入电源并使用 Click Mezzanine 上的 PWR 按钮打开 Ultra96。如果您之前使用 WiFi 对电路板进行编程,则需要使用 Micro USB 电缆再次进行设置。

 
pYYBAGNYzzSAXiauAAGSNqvkqqI169.png
伺服点击 Click Mezzanine With Wires
 

在 Click Servo 上,您会看到 16 个不同插槽的 3 个头针;这些中的每一个都可以接受伺服。在这个项目中,我们将使用插槽 #1。首先,通过将电线末端的黑色部分一分为三,将电线与伺服器分开(重要提示:保持电线末端的插座完好无损,否则您将不得不重新焊接它们。黑色塑料部分没那么重要,但它屏蔽的金属部分是你需要保留的。)将棕色线插入插槽#1的顶部引脚,将红色线插入 mikroBUS 2 的+5V引脚,然后将黄色插入线插入插槽#1的底部引脚。这是因为,由于某种原因,Servo Click 的 VCC 不适合我,所以我不得不从 Click Mezzanine 提供它。

 
poYBAGNYzziAZC78AALp67nfTc8329.png
伺服线(我使用了 M/M 头针,但 M/M 跳线也可以)
 

现在是最令人困惑和摇摇欲坠的部分。为了使 Servo Click 工作,有一个引脚需要接地。该引脚是 OE/CS(Servo Click 上的输出使能/Click Mezzanine 上的芯片选择)引脚,但它是反相的,因此我们必须将其驱动为低电平而不是驱动它高电平来启用输出。我不知道如何使用软件来做到这一点,所以我不得不将它物理连接到 Click Mezzanine mikroBUS 2 GND 引脚。

 
pYYBAGNYzzuAJhrNAALsb18flGA341.png
OE 引脚的焊接
 

瞧!你完成了。Jupyter Notebook 包含有关如何使用该项目的说明。如果您对任何事情感到困惑或有任何疑问,请随时给我留言!

资源/参考


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费