展開中の OpenVino でインポート エラーが発生します。問題がバージョンに関係している場合に備えて、requirments.txt ファイルで OpenVino の以前のバージョンをすべて指定してみました。正確なエラーは次のとおりです。
File "/app/.heroku/python/lib/python3.8/site-packages/openvino/inference_engine/__init__.py", line 29, in <module>
2022-01-11T03:31:36.967769+00:00 app[web.1]: from .ie_api import *
2022-01-11T03:31:36.967828+00:00 app[web.1]: ImportError: /app/.heroku/python/lib/python3.8/site-packages/openvino/inference_engine/ie_api.cpython-38-x86_64-linux-gnu.so: undefined symbol: _ZTVN15InferenceEngine5TBlobIhSt9enable_ifILb1EvEEE
このエラーの性質がわかりません。それは依存関係の問題でしょうか?完全な requirements.txt ファイルは次のとおりです。
anyio
asgiref
astroid
azure-common
azure-core
azure-identity
azure-keyvault-secrets
certifi
cffi
charset-normalizer
click
cryptography
fastapi
h11
idna
isodate
isort
lazy-object-proxy
mccabe
msal
msal-extensions
msrest
oauthlib
opencv-python-inference-engine
openvino
platformdirs
portalocker
pycparser
pydantic
PyJWT
pylint
python-multipart
requests
requests-oauthlib
six
sniffio
starlette
toml
typing-extensions
urllib3
uvicorn
wrapt
以下の Aptfile もあります。
libpython3.8
また、runtime.txt ファイルには以下が含まれます。
python-3.8.12
知っておくと便利な場合。また、Numpy と OpenVino に関連するバグについて聞いたので、依存関係から Numpy を削除しようとしました。
アップデート*
興味深いことに、requirements.txt で opencv-python-inference-engine を opencv-python-headless に置き換えると、エラーが変わります。
cv2.error: OpenCV(4.5.5) /io/opencv/modules/dnn/src/dnn.cpp:4319: error: (-2:Unspecified error) Build OpenCV with Inference Engine to enable loading models from Model Optimizer. in function 'readFromModelOptimizer'
エラーはopencvのインポートに関連している可能性があると思いますか? それとも、ビルドパックに関連している可能性がありますか?
私が使用している推論のために:
im_cv = cv.imread(tmp_path_str)
frame = cv.cvtColor(im_cv, cv.COLOR_RGB2BGR)
blob = cv.dnn.blobFromImage(frame, size=(180,180), ddepth=cv.CV_8U)
net.setInput(blob)
out = net.forward()