NVIDIA の Pytorch コンテナにOpenCVを実装(メモ)


NVIDIA提供のイメージnvcr.io/nvidia/l4tpytorch:r32.4.4pth1.6py3で作ったコンテナにはPython(3.6.9)、Pytorch(1.6.0)、Torchvision(0.7.0)、CUDA、cuDNN がすでに実装されていて便利です。

ただ、OpenCVは実装されていません。追加実装してみます。

OpenCVをビルドしてインストールしますが、CMakeも必要なので一緒にインストールしておきます。

ついでに以下も。

pandas

jupyterlab

 


準備

プラットフォームはJetson Nanoです。OSイメージはjetpack(4.4.1)
セットアップはこのページをご参照ください。
Swap領域を6GBほど確保しておきます。

Dockerメージをpullしておきます。

適当な名前(my_nvcont)でコンテナを作成

sudo docker create -it --name my_nvcont --gpus all --network host nvcr.io/nvidia/l4t-pytorch:r32.4.4-pth1.6-py3

コンテナを起動

アップデート&アップグレード

よく使われるわりに未実装なのでインストール

いくつかパッケージやライブラリをインストールしておきます。

 


Cmake 3.17.1をインストール

wget https://github.com/Kitware/CMake/releases/download/v3.17.1/cmake-3.17.1.tar.gz

 


OpenCV(4.1.2)をインストール

 

 

cmake -D CUDA_HOST_COMPILER=/usr/bin/gcc-7 -D CUDA_NVCC_FLAGS="--expt-relaxed-constexpr" -D CUDA_VERSION="10000" -DWITH_NVCUVID=OFF -DENABLE_CCACHE=OFF -DEIGEN_INCLUDE_PATH=/usr/include/eigen3 -D HAVE_CUDA=1 -D WITH_CUDA=ON -D CUDA_ARCH_BIN="5.3" -D CUDA_ARCH_PTX="" -DWITH_FAST_MATH=OFF -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.1.2/modules -D WITH_GSTREAMER=ON -D WITH_LIBV4L=ON -D BUILD_opencv_python2=OFF -D BUILD_opencv_python3=ON -DPYTHON3_EXECUTABLE=/usr/bin/python3 -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/ -D WITH_CUBLAS=ON -D LAPACK_LIBRARIES=/usr/lib/aarch64-linux-gnu/libblas.so -D LAPACK_CBLAS_H=/usr/include/aarch64-linux-gnu/cblas.h ..

 

 


いらなくなったファイルやフォルダーを整理

 


Appendix1

コンテナをDockerイメージにする

Docker Hub にユーザー登録していて、pushする場合

 


Appendix2

Pytorch、TorchVisionのバージョンアップは

このページ4/4参照

 


Appendix3

NVIDIA提供のイメージと実装されたライブラリのバージョンなどは

NVIDIA L4T ML や NVIDIA L4T PyTorch 参照

参考までに

各イメージに実装されているTensorFlow のバージョンは1.15 です。

Kerasをインストールする必要がある場合、バージョンは2.2.4を指定します。

 


 

 

Be the first to comment

Leave a Reply

Your email address will not be published.


*