簡體   English   中英

Raspberry PI 3B+ 上的 OpenVino 和 PyInstaller

[英]OpenVino and PyInstaller on Raspberry PI 3B+

我嘗試使用 OpenVino 2020.4.287 為 Python 3.5 構建一個獨立的可執行文件。

PyInstaller 成功組裝了一個文件,但我在啟動后收到了下一個錯誤:

ImportError: No module named 'openvino'

我試圖在構建可執行文件時將 /opt/intel/openvino/deployment_tools/inference_engine/lib/armv7l/plugins.xml 包含在數據中,但它沒有幫助。

所以問題是如何使用帶有 OpenVino 導入的 PyInstaller 在 Raspbian 中構建獨立的可執行文件?

謝謝。

最大的可能性是您在實施之前沒有運行 setupvars。 請注意,在繼續進行任何進一步的推理/等之前,您需要確保每個 cmd 或終端中的 setupvars 已運行並初始化(您應該看到初始化消息)。

這個 setupvars 會將所需的包放在一起。 因此,如果您沒有運行它,那么您所面臨的問題將會持續存在。

好的,問題解決了。

初始狀態:

帶有 Python 3.5 的 Raspbian Stretch。

注意事項:

最后一個支持 Python 3.5 的 OpenVino 是 2020.4。

那么,讓我們開始吧。 我們將使用以下幾行創建一個 test.py 文件:

import numpy as np
import openvino.inference_engine.constants
from openvino.inference_engine import IENetwork, IECore
print("start")
e = IECore()
print("end")

現在讓我們安裝 OpenVino、Pyinstaller,創建一個可執行文件並運行它:

sudo pip3 install pyinstaller
sudo mkdir -p /opt/intel/openvino
wget https://storage.openvinotoolkit.org/repositories/openvino/packages/2020.4/l_openvino_toolkit_runtime_raspbian_p_2020.4.287.tgz
sudo tar -xf l_openvino_toolkit_runtime_raspbian_p_2020.4.287.tgz --strip 1 -C /opt/intel/openvino
rm l_openvino_toolkit_runtime_raspbian_p_2020.4.287.tgz
sudo apt install cmake
source /opt/intel/openvino/bin/setupvars.sh
sh /opt/intel/openvino/install_dependencies/install_NCS_udev_rules.sh
pyinstaller --onefile --clean --add-data="/opt/intel/openvino/deployment_tools/inference_engine/lib/armv7l/plugins.xml:." test.py
dist/test

應顯示“開始”和“結束”消息。

使用 OpenVino 2020.4 時最重要的是下一行:

import openvino.inference_engine.constants

在以前的 OpenVino 版本中,如果沒有這條線,一切都會正常工作。 但在我的具體情況下,我在 2020.4 之前的 OpenVino 版本上遇到了下一個錯誤: openvino.inference_engine.ie_api.IECore' object has no attribute 'read_network 這就是我為openvino.inference_engine.constants指定導入的原因。 沒有這個,在 OpenVino 2020.4 中沒有任何作用。

謝謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM