基于CycloneV使用Paddle Lite,并分别使用单独HPS和FPGA加速对比效果。
第一部分、仅使用HPS进行计算
第一步、通过ssh链接至开发板
第二步、解决apt-get存在的问题
chmod 644 /usr/lib/sudo/sudoers.so && chown -R root /usr/lib/sudo && pkexec chown root:root /etc/sudoers /etc/sudoers.d -R chown -R root:root /etc/sudoers.d && chmod u=rwx,g=rx,o=rx /etc/sudoers.d/ && chmod u=r,g=r,o= /etc/sudoers.d/*
第三步、安装依赖
sudo apt-get update && sudo apt-get install git curl -y && sudo apt-get install gcc g++ make wget unzip libopencv-dev pkg-config screen -y sudo apt-get upgrade -y
第四步、克隆Paddle-lite镜像
sudo git clone https://github.com/PaddlePaddle/Paddle-Lite-Demo
如果克隆失败可以尝试使用gitee的镜像源
sudo git clone https://gitee.com/wowowoll/Paddle-Lite-Demo
第五步、下载依赖
cd Paddle-Lite-Demo/PaddleLite-armlinux-demo/ && sudo sh download_models_and_libs.sh && cd object_detection_demo
第六步、升级CMAKE3.10 (CMAKE升级大概花费两个小时)
screen apt-get install -y --no-install-recommends gcc g++ make wget python unzip patchelf python-dev && wget http://myfpga.cn/download/cmake-3.10.3.tar.gz && tar -zxvf cmake-3.10.3.tar.gz && cd cmake-3.10.3 && ./configure && make && sudo make install && cmake --version
第七步、修改配置文件
修改run.sh,将第四行前面加上#,第五行的#去掉,修改后效果: #TARGET_ARCH_ABI=armv8 # for RK3399, set to default arch abi TARGET_ARCH_ABI=armv7hf # for Raspberry Pi 3B 修改object_detection_demo.cc,在include的最后一行加上 #include <fstream> using namespace std; 修改后效果:
第八步、编译运行
sh run.sh
注:如果不想执行第六步等待很长时间,可以在执行完第三步之后直接运行以下命令下载本站编译过的文件(不建议)
wget -O Paddle.gz https://world.myfpga.cn/zb_users/upload/2021/08/202108171629131753287640.gz && tar zcvf Paddle.gz && cd Paddle && sudo sh image_classification_demo.sh
单处理器识别结果(目标检测):
单处理器识别结果(图片分类):
单处理器识别结果(YOLO):
第二部分,使用FPGA加速Paddle Lite
请参考 https://paddle-lite.readthedocs.io/zh/latest/demo_guides/intel_fpga.html
结果:
./run.sh iter 0 cost: 3079.443115 ms iter 1 cost: 3072.508057 ms iter 2 cost: 3063.342041 ms warmup: 1 repeat: 3, average: 3071.764404 ms, max: 3079.443115 ms, min: 3063.342041 ms results: 3 [0] bicycle - 0.997817 0.163673,0.217786,0.721802,0.786120 [1] car - 0.943994 0.597238,0.131665,0.905698,0.297017 [2] dog - 0.959329 0.157911,0.334807,0.431497,0.920035 Preprocess time: 114.061000 ms Prediction time: 3071.764404 ms Postprocess time: 13.166000 ms
大眼睛疑惑???