AI应用开发

OpenVINO™ Notebooks宝藏项目

OpenVINO™ Jupyter Notebooks项目为我们提供了一些可以运行的Jupyter* notebooks,用于学习和尝试使用OpenVINO™开发套件。这些notebooks旨在向各位开发者提供OpenVINO基础知识的介绍,并教会大家如何利用我们的API来优化深度学习推理。
项目优势:
1-硬件需求低,部署成本低,CPU就能运行,有集成显卡还能异构加速,有台笔记本就能跑。
2-案例丰富,不用写代码就能搞定推理,要做的就是点下一步
3-开源项目,根据自己的需求随便改
4-商业级预训练模型,提供诸如车牌识别,行人重定位等大量可支持商用的模型,能够帮助开发者快速产品化。
教学,科研,商用的好帮手。

1.安装系统依赖

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python3-venv build-essential python3-dev git-all
sudo apt-get install intel-opencl-icd

2.创建python虚拟环境并激活环境

python3 -m venv openvino_env
source openvino_env/bin/activate

3.下载OpenVINO Jupyter Notebooks项目

git clone --depth=1 https://github.com/openvinotoolkit/openvino_notebooks.git
cd openvino_notebooks

4.安装项目依赖

python -m pip install --upgrade pip 
pip install wheel setuptools
pip install -r requirements.txt

5.更新tensorflow及paddlepaddle
项目默认的tensorflow及paddlepaddle是支持AVX指令集的版本,而爱克斯板N5105主控并不支持AVX指令集,因此需要安装noavx版本。经过验证的版本在这里下载:
Ubuntu Python3.8 whl
paddlepaddle官方指南
下载到本地后,执行下面的安装指令

pip install tensorflow-2.7.0-cp38-cp38-linux_x86_64.whl
pip install paddlepaddle-2.4.0-cp38-cp38-linux_x86_64.whl

通过pip list可以查看当前安装的组件列表,能够帮助我们确认是否安装了正确的依赖包。
值得注意的是,所有这些安装操作需要保持虚拟环境在激活状态,否则这些操作将会安装到系统环境下。

6.运行Jupyter笔记

jupyter lab notebooks

Yolov5 with OpenVINO

1.创建一个虚拟环境

python -m venv yolov5env

2.激活环境

source yolov5env/bin/activate

3.克隆YOLOv5代码库:第一步是从Github克隆YOLOv5代码库,使用以下命令:
git clone https://github.com/ultralytics/yolov5.git
4.安装依赖项:YOLOv5需要运行多个Python库。您可以使用以下命令安装这些依赖项:

pip install -r yolov5/requirements.txt

5.下载预训练权重:YOLOv5附带多种模型的预训练权重。您可以使用以下命令下载权重:

cd yolov5
wget https://github.com/ultralytics/yolov5/releases/download/v7.0/yolov5s.pt

这将下载的yolov5s的权重。
6.准备数据:在运行推理之前,您需要将数据准备为正确的格式。YOLOv5期望输入图像为jpg、png或bmp格式,亦或者是直接从摄像头获取数据。
7.运行推理:一旦您的数据准备好,就可以使用YOLOv5提供的detect.py脚本运行推理。该脚本需要多个参数,包括输入目录的路径(--source)、预训练权重的路径(--weights)以及检测置信度阈值(--conf)。
例如,要在input目录中的图像上使用yolov5s模型运行推理,置信度阈值为0.5,您可以使用以下命令:

python detect.py --source input --weights yolov5s.pt --conf 0.5

输出将保存在runs/detect目录中,如果该目录不存在,则会创建该目录。
可视化结果:您可以使用--view-img参数实时可视化检测结果。例如:

python detect.py --source input --weights yolov5s.pt --conf 0.5 --view-img

这将打开一个窗口,显示带有检测结果叠加的输入图像。
就这样!使用这些步骤,您应该能够使用YOLOv5在您的数据上运行推理。
8.导出OpenVINO格式的模型文件

python export.py --weights yolov5s.pt --img 640 --batch 1 --include-onnx --include-openvino

9.使用OpenVINO加速推理

python detect.py --weights yolov5s_openvino_model --source 0