对于交叉编译,您可以参考此guide。
您可以尝试在 Dockerfile 中将 import "FROM debian:stretch" 更改为 "FROM ubuntu:18.04"。但是,它并未针对 Ubuntu 使用进行正式验证,因此它可能有效,也可能无效。
这些是 Dockerfile 中需要的:
FROM ubuntu:18.04
USER root
COPY ./sources.list /etc/apt/sources.list
RUN dpkg --add-architecture arm64 && apt-get update
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
crossbuild-essential-arm64 \
git \
wget \
libusb-1.0-0-dev:arm64 \
libgtk-3-dev:arm64 \
libavcodec-dev:arm64 \
libavformat-dev:arm64 \
libswscale-dev:arm64 \
libgstreamer1.0-dev:arm64 \
libgstreamer-plugins-base1.0-dev:arm64 \
libgstreamer-plugins-base1.0-dev:arm64 \
libpython3-dev:arm64 \
libtbb-dev:arm64 \
python-minimal \
python3-distutils:arm64 \
python3-pip \
python3-setuptools \
python-argparse \
libglib2.0-dev-bin:arm64 \
libglib2.0-dev:arm64 \
&& rm -rf /var/lib/apt/lists/*
RUN wget https://www.cmake.org/files/v3.14/cmake-3.14.3.tar.gz && \
tar xf cmake-3.14.3.tar.gz && \
(cd cmake-3.14.3 && ./bootstrap --parallel=$(nproc --all) && make --jobs=$(nproc --all) && make install) && \
rm -rf cmake-3.14.3 cmake-3.14.3.tar.gz
RUN python3 -m pip install pip --upgrade
RUN python3 -m pip install numpy cython scikit-build opencv-python==4.5.3.56
RUN git config --global user.name "Your Name" && \
git config --global user.email "you@example.com"
确保将您上一篇文章中引用的 sources.list 文件作为 arm64 内容的一部分。
构建并运行 docker:
docker image build -t arm64 arm64
docker run -it -v /home/user/openvino/:/openvino arm64 /bin/bash
安装要求:
python3 -m pip install -r openvino/inference-engine/ie_bridges/python/requirements.txt
python3 -m pip install -r openvino/inference-engine/ie_bridges/python/wheel/requirements-dev.txt
python3 -m pip install -r openvino/inference-engine/ie_bridges/python/src/requirements-dev.txt
运行 CMAKE:
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_TOOLCHAIN_FILE="../cmake/arm64.toolchain.cmake" \
-DENABLE_MKL_DNN=OFF \
-DTHREADS_PTHREAD_ARG="-pthread" \
-DENABLE_CLDNN=OFF \
-DENABLE_GNA=OFF \
-DENABLE_SSE42=OFF \
-DTHREADING=SEQ \
-DENABLE_OPENCV=ON \
-DNGRAPH_PYTHON_BUILD_ENABLE=ON \
-DNGRAPH_ONNX_IMPORT_ENABLE=ON \
-DENABLE_PYTHON=ON \
-DPYTHON_EXECUTABLE=/usr/bin/python3.6 \
-DPYTHON_LIBRARY=/usr/lib/aarch64-linux-gnu/libpython3.6m.so \
-DPYTHON_INCLUDE_DIR=/usr/include/python3.6 ..
运行make:
make --jobs=$(nproc --all)
退出 Docker 后(通过按 Ctrl+D),您可以在 ~/openvino/bin/aarch64/ 目录中找到生成的二进制文件,在 ~/openvino/inference-engine/temp. 中找到 OpenCV 安装 不要忘记在目标板上的说明下完成 additional steps NCS2。