1
1

More than 3 years have passed since last update.

jetson nanoでYOLOを動かそうとするとopencv was not found in the pkg-config search path

Last updated at Posted at 2020-01-13

3行で

  • jetson nanoを購入してはやりのディープラーニング?ってやつをやってみたい!!!!
  • ネットに落ちてる記事を参考に構築してみるけどエラーになる・・・なんで・・・
  • 答え:古いイメージを使いましょう

モチベーション

jetson nanoを買ってみて早速試しに画像認識系の有名なモデルを動かしてみたい。
私はその一つとして、YOLOを選んだ。さすが有名なモデルだけあって、ネットにやってみた系の記事がたくさんあって試しには良さそう。
で、(環境構築系にはありがちな話だけど)実際やってみると結構ハマったので、ハマったところと解消方法をメモしておきます。

環境

バージョン
最終的に使ったイメージ JetPack 4.2
諦めたイメージ JetPack 4.3

jetpack archive
https://developer.nvidia.com/embedded/jetpack-archive

結論

darknetのmakeで
opencv was not found in the pkg-config search path
のようなエラーが出るときはJetPack 4.2などの古いイメージを使いましょう。
(2020/1/13時点では)
「Getting Started With Jetson Nano Developer Kit」
https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit
で誘導されるイメージはJetPack 4.3で、これはpkg-config --libs opencvが通りません。

やってハマってしまったこと

「Getting Started With Jetson Nano Developer Kit」
https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit
に従ってSDカードにイメージを入れる。

https://www.nakasha.co.jp/future/ai/vol2_yolov3nvidia_jetson_nano.html
に従いdarknetをmake

やるとどうなるのか

  • makeで失敗します
    opencv was not found in the pkg-config search path
    などというエラーがでてopencvがインクルードされません。

  • pythonからはopencvが見える
    ターミナルにpythonと打ち込みpythonの対話モードに入って

import cv2
cv2.__version__

すると4.1.1が表示されます。

  • pkg-config --libs opencv4は通る JetPack 4.3は4.x系のopencvが入っておりイメージらしく、pkg-config --libs opencv4は通ります。 darknetのMakefileではpkg-config --libs opencvを使いますがこれは通りません。

対処方法

特にこだわりがなければJetPack 4.2を使えばいいと思います。
opencvのバージョンは3.3.1になります。

JetPack 4.3を使いつつdarknetのmakeを通すことが不可能だという確証は得られませんでした。

参考

jetpack archive
https://developer.nvidia.com/embedded/jetpack-archive

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1