HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  Xcode
   etc.
    ALL
  
LINK
BACK
 

2020/04/25

NVIDIA Jetson Nanoで OpenCV 3をビルドしてインストールする方法、NVCaffe等の OpenCV 4未対応を動かす NVIDIA Jetson Nanoで OpenCV 3をビルドしてインストールする方法、NVCaffe等の OpenCV 4未対応を動かす

(NVIDIA Jetson Nanoに「古い」 OpenCV 3.4.10をビルドしてインストールする方法)

Tags: [Raspberry Pi], [電子工作], [ディープラーニング]




● Jetson Nano、Jetson Xavier NXの便利スクリプト

2020/07/03
【2020年版】NVIDIA Jetson Nano、Jetson Xavier NXの便利スクリプト
【2020年版】NVIDIA Jetson Nano、Jetson Xavier NXの便利スクリプト

  Jetsonの面倒な初期設定やミドルウェアのインストールを bashスクリプトの実行だけで簡単にできます


● NVIDIA Jetson Nanoで Google DeepDreamを動かしてキモイ絵を量産する

 Caffeや NVCaffeを動かす場合は OpenCV 3系が必要。

2019/05/06
【ビルド版】NVIDIA Jetson Nanoで Caffe DeepDreamを GPUパワーで動かしてキモイ絵をモリモリ量産
【ビルド版】NVIDIA Jetson Nanoで Caffe DeepDreamを GPUパワーで動かしてキモイ絵をモリモリ量産

  NVIDIA Jetson Nanoで Caffe Deep Learningをビルドして CUDAで DeepDreamを動かしてキモイ絵を生成する

2019/05/06
【ビルド版】NVIDIA Jetson Nanoで NVIDIA版 Caffe NVCaffeを GPUパワーで動かしてキモイ絵をモリモリ量産
【ビルド版】NVIDIA Jetson Nanoで NVIDIA版 Caffe NVCaffeを GPUパワーで動かしてキモイ絵をモリモリ量産

  NVIDIA Jetson Nanoで NV_Caffe Deep Learningをビルドして CUDAで DeepDreamを動かしてキモイ絵を生成する


● NVIDIA Jetson Nanoで最新の OpenCV 4.1.1をビルドしてインストールする

2019/12/24
NVIDIA Jetson Nanoで最新版の OpenCV 4.1.1を全自動でビルドしてインストールする方法
NVIDIA Jetson Nanoで最新版の OpenCV 4.1.1を全自動でビルドしてインストールする方法

  NVIDIA Jetson Nanoに最新版の OpenCV 4.1.1を全自動でインストールする bashスクリプト


● NVIDIA Jetson Nanoで OpenCV 3をビルドしてインストールする方法、NVCaffe等の OpenCV 4未対応を動かす

 JetPack 4.3以降は OpenCV 4.1.1がインストールされています。

 NVIDIA Jetson Nanoに「古い」 OpenCV 3.4.10をビルドしてインストールする方法

 2020/04現在(JetPack 4.3以降)は Jetson Nano OSは OpenCV4になっているので NVCaffe等の OpenCV3用の物が動きません。
 2020/04/18 20:31:50 sd-blob-b01.img
nv-jetson-nano-sd-card-image-r32.4.2.zip

2020/06/13
【2020年版】NVIDIA Jetson Nano JetPackのバージョン情報まとめ、JetPack 4.4は仕様変更の影響が大きい
【2020年版】NVIDIA Jetson Nano JetPackのバージョン情報まとめ、JetPack 4.4は仕様変更の影響が大きい

  最新の JetPackでは 2019年当時の殆どの記事の内容がそのままではエラーが出て動かない様になりました


● JetPack 4.3以降は元々入っている OpenCVは 4.1.1
# nv-jetson-nano-sd-card-image-r32.4.2.zip
# 2020/04/18 20:31:50 sd-blob-b01.img

jetson@jetson-desktop:~ $ uname -a
Linux jetson-desktop 4.9.140-tegra #1 SMP PREEMPT Wed Apr 8 18:10:49 PDT 2020 aarch64 aarch64 aarch64 GNU/Linux

jetson@jetson-desktop:~ $ opencv_version
4.1.1

# 削除する
sudo apt -y remove libopencv libopencv-dev libopencv-python


● Jetson Nanoの初期設定、最高速で動かす設定、空きメモリを増やす方法等

2020/06/13
【2020年版】NVIDIA Jetson Nanoの初期設定、最高速で動かす設定、空きメモリを増やす方法等
【2020年版】NVIDIA Jetson Nanoの初期設定、最高速で動かす設定、空きメモリを増やす方法等

  2020年の JetPack 4.4になっても nvccのパスがデフォルトで通って無いとか、初期設定が必要です


● NVIDIA Jetson Nanoで「古い」 OpenCV 3.4.10をビルドする手順

# libturbojpegをインストールする libturbojpegは間違い
# NG Install libturbojpeg
# sudo apt-get -y install libturbojpeg libturbojpeg-dev
# Note, selecting 'libturbojpeg0-dev' instead of 'libturbojpeg-dev'
# sudo apt-get -y install libturbojpeg libturbojpeg0-dev
# ls -l /usr/lib/aarch64-linux-gnu/libturbojpeg.so
# sudo ln -s /usr/lib/aarch64-linux-gnu/libturbojpeg.so.0.1.0 /usr/lib/aarch64-linux-gnu/libturbojpeg.so
# sudo ldconfig

# libjpeg-turboをインストールする libjpeg-turboが正しい
# OK Install libjpeg-turbo
# libjpeg-turbo = libjpeg.so
sudo apt install libjpeg-turbo8 libjpeg-turbo8-dev

$ ls -l /usr/include/turb*
-rw-r--r-- 1 root root 65140  6月  5 01:24 /usr/include/turbojpeg.h

$ ls -l /usr/lib/aarch64-linux-gnu/libtu*
-rw-r--r-- 1 root root 399862  6月  5 01:24 /usr/lib/aarch64-linux-gnu/libturbojpeg.a
lrwxrwxrwx 1 root root     21  6月  5 01:24 /usr/lib/aarch64-linux-gnu/libturbojpeg.so -> libturbojpeg.so.0.1.0
lrwxrwxrwx 1 root root     21  6月  5 01:24 /usr/lib/aarch64-linux-gnu/libturbojpeg.so.0 -> libturbojpeg.so.0.1.0
-rw-r--r-- 1 root root 264720  6月  5 01:24 /usr/lib/aarch64-linux-gnu/libturbojpeg.so.0.1.0

$ ls -l /usr/lib/aarch64-linux-gnu/lib*jpeg.so.*
lrwxrwxrwx 1 root root     16  6月  5 01:24 /usr/lib/aarch64-linux-gnu/libjpeg.so.8 -> libjpeg.so.8.1.2
-rw-r--r-- 1 root root 236168  6月  5 01:24 /usr/lib/aarch64-linux-gnu/libjpeg.so.8.1.2
lrwxrwxrwx 1 root root     21  6月  5 01:24 /usr/lib/aarch64-linux-gnu/libturbojpeg.so.0 -> libturbojpeg.so.0.1.0
-rw-r--r-- 1 root root 264720  6月  5 01:24 /usr/lib/aarch64-linux-gnu/libturbojpeg.so.0.1.0


● OpenCV Installation in Linux
 OpenCV3、OpenCV 3.4.x

Building OpenCV from Source Using CMake
 OpenCV Open Source Computer Vision

opencv / opencv OpenCV Open Source Computer Vision Library

● Required Packages
# [compiler]
sudo apt-get install -y build-essential

# [required]
# libgtk2.0-dev GTK+ 2.x or Carbon support function cvShowImage
sudo apt-get install -y cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

# [optional]
# エラー libjasper-dev E: Unable to locate package libjasper-dev
# 不要 libdc1394-22-dev
sudo apt-get install -y python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev

# fatal error: sys/videoio.h : No such file or directory
sudo apt-get install -y libv4l-dev

# libopenblas-base libopenblas-devをインストールする
sudo apt-get -y install libopenblas-base libopenblas-dev
# --   Python 3:
# --     Libraries:  NO
# --     Libraries:  /usr/lib/aarch64-linux-gnu/libpython3.6m.so (ver 3.6.9)
#   -D BUILD_opencv_python3=ON
# sudo apt-get install python3.6-dev
sudo apt-get install python3-dev

● Getting the Cutting-edge OpenCV from the Git Repository
 OpenCV3、OpenCV 3.4.10/ OpenCV 3.4.9
cd
mkdir opencv_34
cd opencv_34
# OpenCV3 OpenCV 3.4.10 4 Apr 2020 3.4.10 1cc1e6f
git clone https://github.com/opencv/opencv.git -b 3.4.10 --depth 1
# 好みで 3.4.9
# OpenCV3 OpenCV 3.4.9 21 Dec 2019 3.4.9 64e6cf9
# git clone https://github.com/opencv/opencv.git -b 3.4.9 --depth 1

# opencv_contribは不要
# git clone https://github.com/opencv/opencv_contrib.git -b 3.4.10 --depth 1
# git clone https://github.com/opencv/opencv_contrib.git -b 3.4.9 --depth 1

● Building OpenCV from Source Using CMake
cd
cd opencv_34
cd opencv

mkdir build
cd build

# OpenCV highgui module -D BUILD_opencv_highgui=ON
# OpenCV NVIDIA GPU CUDA -D WITH_CUDA=ON
# OpenCV ARM NEON Advanced SIMD -D ENABLE_NEON=ON
# CUDA cuBLAS -D CUDA_FAST_MATH=ON -D WITH_CUBLAS=ON
# GStreamer -D WITH_GSTREAMER=ON
# libv4l/libv4l2 -D WITH_LIBV4L=ON
# -D BUILD_EXAMPLES=OFF
# -D BUILD_TESTS=OFF
# -D BUILD_PERF_TESTS=OFF
# -D BUILD_DOCS=OFF

# ===
# No module named 'cv2'
# -D BUILD_opencv_python2=OFF
# -D BUILD_opencv_python3=ON
# -D PYTHON3_EXECUTABLE=$(which python3)
# -D PYTHON3_EXECUTABLE=python3
# echo $(which python3)
# /usr/bin/python3

# ===
# JPEG
#    -D BUILD_JPEG=OFF
#    -D WITH_JPEG=ON
# none
#    -D JPEG_INCLUDE_DIR=/usr/include/
# -- Found JPEG: /usr/lib/aarch64-linux-gnu/libjpeg.so (found version "80")
# --     JPEG:   /usr/lib/aarch64-linux-gnu/libjpeg.so (ver 80)

# libjpeg-turbo 1.5.2
#    -D JPEG_INCLUDE_DIR=/usr/include/
#    -D JPEG_LIBRARY=/usr/lib/aarch64-linux-gnu/libjpeg.so
# -- Found JPEG: /usr/lib/aarch64-linux-gnu/libjpeg.so (found version "80")
# --     JPEG:   /usr/lib/aarch64-linux-gnu/libjpeg.so (ver 80)

# libjpeg-turbo 2.0.5 ae87a95 Jun 24 2020
#    -D JPEG_INCLUDE_DIR=/opt/libjpeg-turbo/include
#    -D JPEG_LIBRARY=/opt/libjpeg-turbo/lib64/libturbojpeg.so
# -- Found JPEG: /opt/libjpeg-turbo/lib64/libturbojpeg.so (found version "62")
# --     JPEG:   /opt/libjpeg-turbo/lib64/libturbojpeg.so (ver 62)

# ===
JPEG_INCLUDE_DIR=/usr/include/
JPEG_LIBRARY=

if [ -e /usr/lib/aarch64-linux-gnu/libjpeg.so ]; then
  JPEG_INCLUDE_DIR=/usr/include/
  JPEG_LIBRARY=/usr/lib/aarch64-linux-gnu/libjpeg.so
fi

if [ -e /opt/libjpeg-turbo/lib64/libturbojpeg.so ]; then
  JPEG_INCLUDE_DIR=/opt/libjpeg-turbo/include
  JPEG_LIBRARY=/opt/libjpeg-turbo/lib64/libturbojpeg.so
fi

echo "JPEG_INCLUDE_DIR: $JPEG_INCLUDE_DIR"
echo "JPEG_LIBRARY: $JPEG_LIBRARY"

cmake \
  -D CMAKE_BUILD_TYPE=Release \
  -D CMAKE_INSTALL_PREFIX=/usr/local \
  \
  -D BUILD_opencv_highgui=ON \
  \
  -D CUDA_FAST_MATH=ON \
  -D WITH_CUDA=ON \
  -D WITH_CUBLAS=ON \
  -D WITH_GSTREAMER=ON -D WITH_LIBV4L=ON \
  -D ENABLE_NEON=ON \
  -D ENABLE_FAST_MATH=ON \
  \
  -D BUILD_EXAMPLES=OFF \
  -D INSTALL_PYTHON_EXAMPLES=OFF \
  -D BUILD_TESTS=OFF \
  -D BUILD_PERF_TESTS=OFF \
  -D BUILD_DOCS=OFF \
  \
  -D BUILD_opencv_python2=OFF \
  -D BUILD_opencv_python3=ON \
  -D PYTHON3_EXECUTABLE=$(which python3) \
  \
  -D BUILD_JPEG=OFF \
  -D WITH_JPEG=ON \
  -D JPEG_INCLUDE_DIR=$JPEG_INCLUDE_DIR \
  -D JPEG_LIBRARY=$JPEG_LIBRARY \
 ..

# -- Configuring done
# -- Generating done
# -- Build files have been written to: /home/jetson/opencv_34/opencv/build

● Build . From build directory execute make

 2020/06 追記 4コアビルドでも成功しました。

 OpenCVのビルドは Jetson Nanoでは 4コアビルドで 70分程度掛かる。
# 4コアビルドで 70分
time make -j4

...

real    70m32.572s
user    196m52.608s
sys     8m19.100s

 OpenCVのビルドは Jetson Nanoでは 3コアビルドで 80分程度掛かる。
# 3コアビルドで 80分
time make -j3

...

Scanning dependencies of target opencv_python2
[100%] Building CXX object modules/python2/CMakeFiles/opencv_python2.dir/__/src2/cv2.cpp.o
[100%] Linking CXX shared module ../../lib/cv2.so
[100%] Built target opencv_python2

real    80m42.066s
user    187m2.248s
sys     7m52.724s

 下記は少し古い情報。
 OpenCVのビルドは Jetson Nanoでは 2時間程度(107分)掛かる。
# 3コア以上でビルドするとメモリ不足で失敗する?ので -j2で 2コアでビルド
time make -j2

...

Scanning dependencies of target opencv_python2
[100%] Building CXX object modules/python2/CMakeFiles/opencv_python2.dir/__/src2/cv2.cpp.o
[100%] Linking CXX shared module ../../lib/cv2.so
[100%] Built target opencv_python2

real    107m43.761s
user    180m5.668s
sys     6m48.740s

● To install libraries , execute the following command from build directory
# jetson@jetson-desktop:~/opencv_34/opencv/build$ ./bin/opencv_version
./bin/opencv_version
# 3.4.10

# Install OpenCV 3.4.10
sudo make install

opencv_version
# 3.4.10

ls -l /usr/local/include/opencv2/

jetson@jetson-desktop:~/opencv_34/opencv/build$ ls -l /usr/local/include/opencv2
drwxr-xr-x 2 root root   4096  4月 29 11:08 calib3d
-rw-r--r-- 1 root root 173580  4月 29 00:37 calib3d.hpp
drwxr-xr-x 7 root root   4096  4月 29 11:08 core
-rw-r--r-- 1 root root 151049  4月 29 00:37 core.hpp
-rw-r--r-- 1 root root  38301  4月 29 00:37 cudaarithm.hpp
-rw-r--r-- 1 root root   6009  4月 29 00:37 cudabgsegm.hpp
-rw-r--r-- 1 root root  11896  4月 29 00:37 cudacodec.hpp
-rw-r--r-- 1 root root  21297  4月 29 00:37 cudafeatures2d.hpp
-rw-r--r-- 1 root root  15089  4月 29 00:37 cudafilters.hpp
-rw-r--r-- 1 root root  30941  4月 29 00:37 cudaimgproc.hpp
drwxr-xr-x 2 root root   4096  4月 29 11:08 cudalegacy
-rw-r--r-- 1 root root  12454  4月 29 00:37 cudalegacy.hpp
-rw-r--r-- 1 root root  11446  4月 29 00:37 cudaobjdetect.hpp
-rw-r--r-- 1 root root  12288  4月 29 00:37 cudaoptflow.hpp
-rw-r--r-- 1 root root  13456  4月 29 00:37 cudastereo.hpp
-rw-r--r-- 1 root root   9247  4月 29 00:37 cudawarping.hpp
drwxr-xr-x 9 root root   4096  4月 29 11:08 cudev
-rw-r--r-- 1 root root   4318  4月 29 00:37 cudev.hpp
-rw-r--r-- 1 root root   5223  4月 29 00:39 cvconfig.h
drwxr-xr-x 3 root root   4096  4月 29 11:08 dnn
-rw-r--r-- 1 root root   3347  4月 29 00:37 dnn.hpp
drwxr-xr-x 3 root root   4096  4月 29 11:08 features2d
-rw-r--r-- 1 root root  64429  4月 29 00:37 features2d.hpp
drwxr-xr-x 2 root root   4096  4月 29 11:08 flann
-rw-r--r-- 1 root root  26227  4月 29 00:37 flann.hpp
drwxr-xr-x 2 root root   4096  4月 29 11:08 highgui

jetson@jetson-desktop:~ $ ls -l /usr/local/include/opencv
-rw-r--r-- 1 root root 2523  6月 21 01:41 cvaux.h
-rw-r--r-- 1 root root 2374  6月 21 01:41 cvaux.hpp
-rw-r--r-- 1 root root 3153  6月 21 01:41 cv.h
-rw-r--r-- 1 root root 2649  6月 21 01:41 cv.hpp
-rw-r--r-- 1 root root 2176  6月 21 01:41 cvwimage.h
-rw-r--r-- 1 root root 2424  6月 21 01:41 cxcore.h
-rw-r--r-- 1 root root 2443  6月 21 01:41 cxcore.hpp
-rw-r--r-- 1 root root 2257  6月 21 01:41 cxeigen.hpp
-rw-r--r-- 1 root root  129  6月 21 01:41 cxmisc.h
-rw-r--r-- 1 root root 2226  6月 21 01:41 highgui.h
-rw-r--r-- 1 root root 2145  6月 21 01:41 ml.h

jetson@jetson-desktop:~ $ ls -l /usr/local/lib/libopencv_*
lrwxrwxrwx 1 root root       24  6月 22 13:08 /usr/local/lib/libopencv_calib3d.so -> libopencv_calib3d.so.3.4
lrwxrwxrwx 1 root root       27  6月 22 13:08 /usr/local/lib/libopencv_calib3d.so.3.4 -> libopencv_calib3d.so.3.4.10
-rw-r--r-- 1 root root  1344704  6月 22 12:45 /usr/local/lib/libopencv_calib3d.so.3.4.10
...

jetson@jetson-desktop:~ $ ls -l /usr/local/share/OpenCV
drwxr-xr-x 2 root root  4096  6月 22 13:08 haarcascades
drwxr-xr-x 2 root root  4096  6月 22 13:08 lbpcascades
-rw-r--r-- 1 root root 15677  6月 21 12:46 OpenCVConfig.cmake
-rw-r--r-- 1 root root   419  6月 21 12:46 OpenCVConfig-version.cmake
-rw-r--r-- 1 root root 10988  6月 21 12:46 OpenCVModules.cmake
-rw-r--r-- 1 root root 14794  6月 21 22:16 OpenCVModules-release.cmake
-rw-r--r-- 1 root root  2455  6月 21 01:41 valgrind_3rdparty.supp
-rw-r--r-- 1 root root  3941  6月 21 01:41 valgrind.supp


● OpenCV CMakeのエラー パターン
# fatal error: sys/videoio.h: No such file or directory
# -D WITH_V4L=OFF は効かなかった
sudo apt-get install -y libv4l-dev

#  -D ENABLE_VFPV3=ON \
# -- Configuring incomplete, errors occurred!
# CMake Error at cmake/OpenCVCompilerOptimizations.cmake:535 (message):
  Required baseline optimization is not supported: VFPV3
  (CPU_BASELINE_REQUIRE=;VFPV3;NEON)
Call Stack (most recent call first):
  cmake/OpenCVCompilerOptions.cmake:290 (include)
  CMakeLists.txt:608 (include)

# -- Could not find OpenBLAS include. Turning OpenBLAS_FOUND off
# -- Could not find OpenBLAS lib. Turning OpenBLAS_FOUND off
# libopenblas-base libopenblas-devをインストールする
sudo apt-get -y install libopenblas-base libopenblas-dev

# CMakeでエラーした時は buildディレクトリを丸々削除してやり直す
cd
cd opencv_34
cd opencv

rm -rf build
mkdir build
cd build


● OpenCV 3.4.9 core: inconsistency of addition for multi-channel Mat and Scalar #16739

https://github.com/opencv/opencv/issues/16739

Differences between maths with Mat and MatExpr #14738
Problem for Simple Alpha Blending #16538

[ WARN:0] OpenCV/MatExpr: processing of multi-channel arrays might be changed in the future: https://github.com/opencv/opencv/issues/16739

modules/core/src/matrix_expressions.cpp
    if (e.a.channels() > 1)
        CV_LOG_ONCE_WARNING(NULL, "OpenCV/MatExpr: processing of multi-channel arrays might be changed in the future: "

https://github.com/opencv/opencv/commit/09134ac881ffc4af7d66875852fd64357b5d7e42

core: emit warning ONCE on ambiguous MatExpr processing
 master (#16948)  4.3.0 3.4.10


● libjpeg-turbo 2.0.5

libjpeg Independent JPEG Group

libjpeg-turbo
libjpeg-turbo

# libjpeg-turbo 2.0.5 ae87a95 Jun 24 2020
cd
wget -O libjpeg-turbo_205.zip https://github.com/libjpeg-turbo/libjpeg-turbo/archive/2.0.5.zip
unzip libjpeg-turbo_205.zip

cd
cd libjpeg-turbo-2.0.5

mkdir build
cd build

cmake \
  -D CMAKE_BUILD_TYPE=Release \
  ..

# Build libjpeg-turbo
time make -j$(nproc)
# about 3 minute

make test

# Install libjpeg-turbo
sudo make install

ls -l /opt/libjpeg-turbo/
ls -l /opt/libjpeg-turbo/lib64/libturbojpeg.*

#    -D JPEG_INCLUDE_DIR=/opt/libjpeg-turbo/include
#    -D JPEG_LIBRARY=/opt/libjpeg-turbo/lib64/libturbojpeg.a
#    ..


● OpenCVのビルド時にメモリが足りない時
# プロセッサ数でビルド
time make -j$(nproc)

jetson@jetson-desktop:~ $ echo $(nproc)
4

# 4コアでビルドするとメモリ不足で失敗する
time make -j4

...

[ 29%] Building CXX object modules/core/CMakeFiles/opencv_core.dir/src/algorithm.cpp.o

c++: internal compiler error: Bus error (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
modules/core/CMakeFiles/opencv_core.dir/build.make:89: recipe for target 'modules/core/CMakeFiles/opencv_core.dir/src/algorithm.cpp.o' failed
make[2]: *** [modules/core/CMakeFiles/opencv_core.dir/src/algorithm.cpp.o] Error 4
CMakeFiles/Makefile2:1819: recipe for target 'modules/core/CMakeFiles/opencv_core.dir/all' failed
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
Makefile:162: recipe for target 'all' failed
make: *** [all] Error 2


● OpenCVで libturbojpeg.soを指定した時のビルドのエラー

正しい
# none
#    -D JPEG_INCLUDE_DIR=/usr/include/
# -- Found JPEG: /usr/lib/aarch64-linux-gnu/libjpeg.so (found version "80")
# --     JPEG:   /usr/lib/aarch64-linux-gnu/libjpeg.so (ver 80)

正しい
# libjpeg-turbo
# libjpeg-turbo = libjpeg.so
sudo apt install libjpeg-turbo8 libjpeg-turbo8-dev
#    -D JPEG_INCLUDE_DIR=/usr/include/
# -- Found JPEG: /usr/lib/aarch64-linux-gnu/libjpeg.so (found version "80")
# --     JPEG:   /usr/lib/aarch64-linux-gnu/libjpeg.so (ver 80)

正しい
# libjpeg-turbo 2.0.5 ae87a95 Jun 24 2020
#    -D JPEG_INCLUDE_DIR=/opt/libjpeg-turbo/include
#    -D JPEG_LIBRARY=/opt/libjpeg-turbo/lib64/libturbojpeg.so
# -- Found JPEG: /opt/libjpeg-turbo/lib64/libturbojpeg.so (found version "80")
# --     JPEG:   /opt/libjpeg-turbo/lib64/libturbojpeg.so (ver 80)

間違い(下記のエラーが発生する)
# libturbojpeg
#    -D JPEG_INCLUDE_DIR=/usr/include/
#    -D JPEG_LIBRARY=/usr/lib/aarch64-linux-gnu/libturbojpeg.so
# -- Found JPEG: /usr/lib/aarch64-linux-gnu/libturbojpeg.so (found version "80")
# --     JPEG:   /usr/lib/aarch64-linux-gnu/libturbojpeg.so (ver 80)
[ 86%] Linking CXX executable ../../bin/opencv_annotation
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_read_raw_data'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_resync_to_restart'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_std_error'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_CreateDecompress'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_start_compress'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_set_quality'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_read_header'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_write_raw_data'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_destroy_decompress'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_stdio_dest'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_destroy'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_calc_output_dimensions'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_abort'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_has_multiple_scans'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_finish_compress'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_quality_scaling'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_destroy_compress'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_finish_decompress'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_set_defaults'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_start_decompress'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_suppress_tables'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_write_scanlines'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_set_colorspace'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_CreateCompress'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_read_scanlines'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_default_qtables'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_write_tables'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_simple_progression'
../../lib/libopencv_imgcodecs.so.3.4.10: undefined reference to `jpeg_stdio_src'
collect2: error: ld returned 1 exit status
apps/annotation/CMakeFiles/opencv_annotation.dir/build.make:109: recipe for target 'bin/opencv_annotation' failed
make[2]: *** [bin/opencv_annotation] Error 1
CMakeFiles/Makefile2:3664: recipe for target 'apps/annotation/CMakeFiles/opencv_annotation.dir/all' failed
make[1]: *** [apps/annotation/CMakeFiles/opencv_annotation.dir/all] Error 2



Tags: [Raspberry Pi], [電子工作], [ディープラーニング]

●関連するコンテンツ(この記事を読んだ人は、次の記事も読んでいます)

【2020年版】NVIDIA Jetson Nano、Jetson Xavier NXの便利スクリプト
【2020年版】NVIDIA Jetson Nano、Jetson Xavier NXの便利スクリプト

  Jetsonの面倒な初期設定やミドルウェアのインストールを bashスクリプトの実行だけで簡単にできます

NVIDIA Jetson Nano 開発者キットを買ってみた。メモリ容量 4GB LPDDR4 RAM
NVIDIA Jetson Nano 開発者キットを買ってみた。メモリ容量 4GB LPDDR4 RAM

  Jetson Nanoで TensorFlow PyTorch Caffe/Caffe2 Keras MXNet等を GPUパワーで超高速で動かす!

NVIDIA Jetson Nano 開発者キットを Raspberry Pi 3と性能比較してみたベンチマークレビュー
NVIDIA Jetson Nano 開発者キットを Raspberry Pi 3と性能比較してみたベンチマークレビュー

  Jetson Nanoの GPUパワーを実感して Raspberry Pi 3との置き換えは可能かを検証する

NVIDIA Jetson Nano 開発者キットを動かすのに最低限必要な物の一覧、冷却ファン、NGFF 無線カード
NVIDIA Jetson Nano 開発者キットを動かすのに最低限必要な物の一覧、冷却ファン、NGFF 無線カード

  Jetson Nano 開発者キットに最低限必要な物、UHS-1 microSDカード、USBキーボード、電源、HDMIディスプレイ

NVIDIA Jetson Nano 開発者キットで使用する microSDカードに Ubuntu OSイメージを焼く方法を説明
NVIDIA Jetson Nano 開発者キットで使用する microSDカードに Ubuntu OSイメージを焼く方法を説明

  Jetson Nano 開発者キットを動かすのに必要な microSDカードを作成する方法(Windows、Mac)

NVIDIA Jetson Nano 開発者キットで SDカードで起動したら一番最初にする事
NVIDIA Jetson Nano 開発者キットで SDカードで起動したら一番最初にする事

  ログイン操作後に各種の初期設定やパッケージのアップデートをすると良いです

NVIDIA Jetson Nano Ubuntuのパッケージがアップデート可能な場合にアップデートする方法
NVIDIA Jetson Nano Ubuntuのパッケージがアップデート可能な場合にアップデートする方法

  Ubuntuのパッケージを更新して packages can be updatedを 0にする方法

NVIDIA Jetson Nanoで nvcc command not found build CUDA app Errorの対応方法
NVIDIA Jetson Nanoで nvcc command not found build CUDA app Errorの対応方法

  Jetson Nanoで CUDAを使用したアプリをビルドする時に command nvcc not foundが出る場合の対処方法

NVIDIA Jetson Nanoの GUI環境を無効にして CUI環境で動く様にしてフリーメモリエリアを広げる
NVIDIA Jetson Nanoの GUI環境を無効にして CUI環境で動く様にしてフリーメモリエリアを広げる

  Ubuntuの X Window Systemを無効にして Jetson Nanoの使用できるメモリ容量を 300MB増やす方法

NVIDIA Jetson Nano 開発者キットの Tips一覧、冷却ファンが動かない、20Wモードで動かす、動作温度を知る、他
NVIDIA Jetson Nano 開発者キットの Tips一覧、冷却ファンが動かない、20Wモードで動かす、動作温度を知る、他

  Jetson Nanoで初心者が戸惑いそうな所を Tipsとしてまとめました nvcc not found

NVIDIA Jetson Nano 開発者キットに Raspberry Pi Camera Module V2 RaspiCamを接続する方法
NVIDIA Jetson Nano 開発者キットに Raspberry Pi Camera Module V2 RaspiCamを接続する方法

  Jetson Nanoは Raspberry Pi Camera Module V2の IMX219 800万画素カメラモジュールを接続できます

Raspberry Piで TensorFlow Deep Learning Frameworkを自己ビルドする方法
Raspberry Piで TensorFlow Deep Learning Frameworkを自己ビルドする方法

  ラズパイで TensorFlow Deep Learning Frameworkを自己ビルドする方法

Raspberry Piに PyTorch Deep Learning Frameworkをソースコードからビルドする方法、DeepDreamでキモイ絵を作成
Raspberry Piに PyTorch Deep Learning Frameworkをソースコードからビルドする方法、DeepDreamでキモイ絵を作成

  ラズパイで PyTorch Torch Deep Learning Frameworkをビルドして Deep Dreamで悪夢を見る方法

Raspberry Piで darkflowを動かしてリアルタイムでカメラ映像を画像物体検出する方法
Raspberry Piで darkflowを動かしてリアルタイムでカメラ映像を画像物体検出する方法

  ラズパイで darkflowと Tensorflowを動かしてリアルタイムでカメラ映像の物体検出を行なってみる

Raspberry Piで Caffe Deep Learning Frameworkで物体認識を行なってみるテスト
Raspberry Piで Caffe Deep Learning Frameworkで物体認識を行なってみるテスト

  ラズパイで Caffe Deep Learning Frameworkを動かして物体認識を行なってみる

Raspberry Piで Deep Learningフレームワーク Chainerをインストールしてみる
Raspberry Piで Deep Learningフレームワーク Chainerをインストールしてみる

  ラズパイに Deep Learningのフレームワーク Chainerを入れてみた

Raspberry Piで DeepBeliefSDKをビルドして画像認識フレームワークを動かす方法
Raspberry Piで DeepBeliefSDKをビルドして画像認識フレームワークを動かす方法

  ラズパイに DeepBeliefSDKを入れて画像の物体認識を行なう

【成功版】最新版の Darknetに digitalbrain79版の Darknet with NNPACKの NNPACK処理を適用する
【成功版】最新版の Darknetに digitalbrain79版の Darknet with NNPACKの NNPACK処理を適用する

  ラズパイで NNPACK対応の最新版の Darknetを動かして超高速で物体検出や DeepDreamの悪夢を見る

【成功版】Raspberry Piで Darknet Neural Network Frameworkをビルドする方法
【成功版】Raspberry Piで Darknet Neural Network Frameworkをビルドする方法

  ラズパイに Darknet Neural Network Frameworkを入れて物体検出や悪夢のグロ画像を生成する

【成功版】Raspberry Piに TensorFlow Deep Learning Frameworkをインストールする方法
【成功版】Raspberry Piに TensorFlow Deep Learning Frameworkをインストールする方法

  ラズパイに TensorFlow Deep Learning Frameworkを入れて Google DeepDreamで悪夢を見る方法

Raspberry Piに Jupyter Notebookをインストールして拡張子 ipynb形式の IPythonを動かす
Raspberry Piに Jupyter Notebookをインストールして拡張子 ipynb形式の IPythonを動かす

  ラズパイに IPython Notebookをインストールして Google DeepDream dream.ipynbを動かす

Raspberry Piで Caffe2 Deep Learning Frameworkをソースコードからビルドする方法
Raspberry Piで Caffe2 Deep Learning Frameworkをソースコードからビルドする方法

  ラズパイで Caffe 2 Deep Learning Frameworkをソースコードから自己ビルドする方法

【ビルド版】Raspberry Piで DeepDreamを動かしてキモイ絵をモリモリ量産 Caffe Deep Learning Framework
【ビルド版】Raspberry Piで DeepDreamを動かしてキモイ絵をモリモリ量産 Caffe Deep Learning Framework

  ラズパイで Caffe Deep Learning Frameworkをビルドして Deep Dreamを動かしてキモイ絵を生成する

Raspberry Pi 3 Model Bで動画処理アプリ FFmpegをコンパイルする方法
Raspberry Pi 3 Model Bで動画処理アプリ FFmpegをコンパイルする方法

  ラズパイ3で動画音声変換処理プログラム FFmpegをセルフコンパイルしてインストールする方法

Raspberry Pi 3 Model Bで動画処理アプリ libavをコンパイルする方法
Raspberry Pi 3 Model Bで動画処理アプリ libavをコンパイルする方法

  ラズパイ3で libavをセルフコンパイルしてインストールする方法

Raspberry Piで NNPACKをビルドする方法
Raspberry Piで NNPACKをビルドする方法

  ラズパイで NNPACKをビルドしてみるテスト、ビルドするだけ

BLAS、ベクトルと行列に関する基本線型代数操作を実行する演算ライブラリ APIのまとめ
BLAS、ベクトルと行列に関する基本線型代数操作を実行する演算ライブラリ APIのまとめ

  BLAS(Basic Linear Algebra Subprograms)の線型代数演算ライブラリ APIのまとめ

Raspberry Pi 3の Linuxコンソール上で使用する各種コマンドまとめ
Raspberry Pi 3の Linuxコンソール上で使用する各種コマンドまとめ

  ラズパイの Raspbian OSのコマンドラインで使用する便利コマンド、負荷試験や CPUシリアル番号の確認方法等も

PIP機能付きの 4K対応の 4入力 1出力の HDMIセレクターを買ってみた、HDMI機器が複数有る場合に便利
PIP機能付きの 4K対応の 4入力 1出力の HDMIセレクターを買ってみた、HDMI機器が複数有る場合に便利

  ピクチャ イン ピクチャ機能付き 4K入力対応の 4入力 1出力 HDMI切り換え機 HDSFX0401P

EDID保持機能付きの 4K対応の 4入力 2出力の マトリックス切り替え HDMIセレクター、液晶画面 2台と使用で最強
EDID保持機能付きの 4K対応の 4入力 2出力の マトリックス切り替え HDMIセレクター、液晶画面 2台と使用で最強

  TESmart HMA0402A30 マトリックス切り替えで液晶画面 2台に接続できて更に EDID保持の便利機能付き HDMI切り換え機




[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外は Web構成の変更で移動する場合があります)
Copyright (c) 2020 FREE WING,Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/raspberry_pi/nvidia_jetson_nano_build_opencv_3410/