基于PYNQ平台的人脸检测系统设计.pdf
《基于PYNQ平台的人脸检测系统设计.pdf》由会员分享,可在线阅读,更多相关《基于PYNQ平台的人脸检测系统设计.pdf(5页珍藏版)》请在咨信网上搜索。
1、 ISSN1672-4305CN12-1352/N实 验 室 科 学LABORATORY SCIENCE第 26 卷 第 4 期 2023 年 8 月Vol.26 No.4 Aug.2023计算机应用 基于 PYNQ 平台的人脸检测系统设计王 洁,李鹏飞(大连理工大学 软件学院,辽宁 大连 116620)摘 要:ZYNQ 平台提供了 ARM+FPGA 架构用以提高系统执行效率。PYNQ 平台在 ZYNQ 基础上添加了 linux+python 环境,降低使用异构平台开发计算机视觉算法难度,因此对基于 PYNQ 的人脸检测系统进行研究。使用 vivado 工具链设计并实现人脸检测核心算法、使用高
2、层次综合工具将检测算法定制为可复用 IP 核、添加粘合逻辑将定制的 IP 核与 ZYNQ 硬核相连、编写上位机驱动程序控制实现 ARM 和 FPGA 数据交互过程、实现数据采集并以视频流输入结果等步骤。此实验案例以软硬件协同设计为指导思想,充分发挥 FPGA 的并行计算性能和 ARM 程序设计灵活性,有效提高人脸检测系统执行效率。关键词:PYNQ 平台;人脸检测;软硬件协同设计中图分类号:TP311.1 文献标识码:A doi:10.3969/j.issn.1672-4305.2023.04.010Design of face detection system based on PYNQ pl
3、atformWANG Jie,LI Pengfei(School of Software Technology,Dalian University of Technology,Dalian 116620,China)Abstract:Zynq platform provides ARM+FPGA architecture to improve system execution efficiency.Linux+Python environment is transplanted on the Zynq by PYNQ which reduces the difficulty of develo
4、-ping computer vision algorithms with heterogeneous platforms.Therefore,the face detection system based on PYNQ is studied.The core algorithm of face detection is designed and implemented with vivado plat-form.The detection algorithm is customized as a reusable IP core with high-level synthesis tool
5、s.The customized IP core is connected with the Zynq hard core by glue logic.The data interaction between ARM and FPGA is controlled by upper computer program.Realizing data acquisition and inputting the results with video stream.This experimental case takes the software and hardware collaborative de
6、sign as the guiding ideology,giving full play to the parallel computing performance of FPGA and the flexibility of ARM programming and effectively improving the execution efficiency of face detection system.Key words:PYNQ;face detection;hardware/software codesign 收稿日期:2021-09-10 修改日期:2022-04-17作者简介:
7、王洁,博士,副教授,主要研究方向为并行体系研究、容错计算。E-mail:wangjie1003 基金项目:大连理工大学研究生 教改 基金(项 目编号:JG _2019065)。近年来,电子商务趋向大众化以及嵌入式设备数量的飞速增长 1,如何准确识别用户的身份信息已经成为信息时代的一个热门话题,人脸检测作为身份识别的关键技术之一 2,需要更通用、更高效、更稳定的算法和平台支持。FPGA 技术的发展为人脸检测技术提供了新的解决方案,具有低功耗、高计算效率、开发周期短等优点 3。但 FPGA 平台开发难度大,且不支持主流的计算机视觉软件库,限制了应用场景 4。ARM 作为嵌入式领域通用处理器应用范围
8、广,可兼容多数主流软件库。因此基于 ARM+FPGA 架构的开发平台能够充分发挥计算性能并有效利用现有软件资源 5。本文提出一种基于 PYNQ 平台的人脸检测系统设计与实现方法实验案例。系统核心算法使用高层次综合方法在 FPGA 平台实现,利用 FPGA 并行性提高复杂算法的运行效率。系统总体的流程控制和各模块之间的协同方法则基于 ARM 平台实现,满足系统设计灵活性的要求。王洁,等:基于 PYNQ 平台的人脸检测系统设计1 研究内容和主要工作以软硬件协同为指导思想 6,围绕基于 PYNQ的平台人脸检测系统设计与实现,本文工作可总结为如下几个方面:(1)调研 PYNQ-Z2 的基本架构和外设资
9、源;(2)系统功能软硬件划分;(3)人脸检测算法的高层次综合设计,使用 Vivado 开发环境定制适用于 PYNQ 平台 IP 核的方法;(4)PYNQ 平台 PS端程序与 PL 端交互的方法;(5)人脸检测系统在PYNQ 平台的实现方法。2 PYNQ 平台简介PYNQ 是 Xilinx 推出的一个开源项目 7,使用Python 降低 Xilinx 平台的开发难度。通过 Python语言和硬件库,开发人员可以充分发挥 Xilinx SOC器件如 PYNQ 的 Programmable Logic(PL)部分和Processing System(PS)部分的各自优势通过软硬件协同方法构建高性能的
10、应用系统 8。如图 1 所示,PYNQ 框架通过高层次的封装,分离底层硬件 FPGA实现细节与上层应用层的使用方法 9,在软件开发者的角度,PYNQ 框架已经提供了访问已有 FPGA外设资源的硬件库 10,高层软件开发者使用 Python语言就可以同调用软件库一般使用硬件资源,不需要考虑 Verilog HDL/VHDL 的实现细节即可享受FPGA 的并行计算资源 11。图 1 PYNQ 架构图3 定制 IP 核3.1 FPGA 开发环境搭建FPGA 的开发设计工作在 Vivado 软件下进行,本文使用的是 Vivado 2018.2 的最初版本。可以在Xilinx 官网 https:/ 上下
11、载并安装各种版本的 Vivado,建议读者使用 2018 或 2019 版本。为进行本文实验,在 Vivado 安装过程中 Select edi-tion to install 界面勾选 vivado HL System Edition。进入 Vivado HL System edition 界面,勾选 software de-velopment kit,其余按照默认即可。安装完成后,在start 目录中会添加 DocNav、Vivado 等多款软件,本文实验过程主要使用 vivado 和 vivado hls。在软件vivado license manager 内 obtain licens
12、e-connect now 进入 xilinx 官网申请 license,之后 vivado 便可正常使用。3.2 使用 Vivado HLS 定制加速器本节要设计实现人脸检测算法加速器。使用vivado hls 创建一个新工程。本文设计的人脸检测加速器源码可以在 https:/ 下载,将源代码文件存放在工程文件的根目录下。在Add/Remove Files 窗口,Add Files 添加工程源文件 haar.cpp,设置顶层函数为 detectFaces,进入 testbench 窗口。在 testbench 窗口不用添加任何的文件。在 solution configuration 界面,时
13、钟周期设为10,不用后缀。开发板选择 PYNQ 完成工程创建。工程环境生成完毕后,FaceDetect/Source/haar.cpp 即可查看源代码内容,本文已经预先完成源代码设计,此处不需要修改。Solution-run c synthesis-active solution 开始综合,综合完成后会显示综合报告,报告包含了性能与资源预估,以及设计的延时信息。通过 solution1-impl-misc-drivers-mul_v1_0-src-xmul_hw.h,在这个文件中可以找到 re-sult_size 的地址,我们之后能够通过地址传递数据。solution-export RTL 打
14、开导出 IP 界面。在 Export RTL 界面 format selection-IP Catalog。evaluate gen-erated RTL 选择 verilog,勾选 Vivado synthesis place and route,运行设计实现。设计实现完成后将生成设计实现报告,生成的 IP 被以 zip file 格式存放在impl ip 目录下。整体流程如图 2 所示。图 2 定制加速器流程3.3 在 vivado 中添加 IP 核已经生成的 IP 核需要配合 ZYNQ 硬核并添加额外逻辑电路才能工作。添加 IP 核的流程如图 3所示。本文使用 Board file 文件
15、代替手动配置 Pro-cessing System(PS)端的过程,该文件包含开发板 PS端的所有配置。可以从 https:/ 下载本文的 Board file 文件。将Board file 文件夹内的 pynq-z2 文件夹复制到viva-do 的安装目录/2018.2/data/boards/board_parts/zynq 目录下。14图 3 IP 核封装流程导入开发板配置文件后,创建新工程并输入必要配置信息。使用 vivado,create new project 创建一个新工程,工程名和工程路径都不能含有中文字符。在 project Type 界面选择 RTL Project,目标语
16、言选择verilog,多语言混合编程。若之前添加 board file 文件成功,则选择 PYNQ 平台,回车进入 New project summary 界面,确认开发板相关信息是否正确。在 vivado 主界面完成 IP 核的连接和总体设计。IPINTEFRATOR-create block design 创 建 一 个block 设计。主界面 add ip 添加已有 IP 核,选择zynq7 processing system将 Zynq ip 核添加到工程中。点击 run block automation 选项将 zynq ip 核的DDR 和 FIXED_IO 接口与 ps 端的接口
17、对应连接。project manager-IP Catalog-User Repository 将之前设计设计的 IP 核加入 block design。run block au-tomation 生 成 一 些 粘 合 逻 辑 将 该 IP 核 连 接 到ZYNQ7 PS 侧。source-design sources-design_1(design_1.bd),create HLD wrapper 生成顶层文件。等待 wrapper 完成后 generate bitstream 生成 bit 文件,该文件用于 FPGA 的控制。bit 文件生成后,file-export-export bl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 PYNQ 平台 检测 系统 设计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。