LoginSignup
5
8

More than 3 years have passed since last update.

YOLOv4環境構築②

Last updated at Posted at 2020-06-02

前回の記事

YOLOv4環境構築①

参考
https://www.youtube.com/watch?v=sUxAVpzZ8hU

DarkNetのダウンロード

Cドライブとは別のDドライブ直下にYOLO_v4ディレクトリを作成することにした
このディレクトリにDarkNetをダウンロードする

GitHubからクローンする
https://github.com/pjreddie/darknet

URLをコピーして
darknet.jpg

コマンドプロンプトからYOLO_v4ディレクトリに移動してクローン

/YOLO_v4
$ git clone https://github.com/pjreddie/darknet.git

OpenCVのdllファイルをDarkNetにコピー

前回ビルドしたOpenCVのディレクトリC:\opencv\build\bin\Releaseから下記ファイルをD:\YOLO_v4\darknet\build\darknet\x64にコピーする

  • opencv_videoio_ffmpeg430_64.dll
  • opencv_world430.dll

cuDNNのdllファイルをDarkNetにコピー

先程と同様にC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin(前回参照)から下記ファイルをD:\YOLO_v4\darknet\build\darknet\x64にコピーする

  • cudnn64_7.dll

cuDNNのバージョンに合わせてDarkNetの設定を変更

エディタでD:\YOLO_v4\darknet\build\darknetからdarknet.vcxprojをエディタで開き編集する

CUDA 10」で検索してすべての箇所のCUDAバージョンを
10.0から10.2に変更する
darknet_cnnversion_edit.jpg

同ディレクトリにあるyolo_cpp_dll.vcxprojについても同様にバージョンの修正を行う

YOLOv4をアップデートしたCUDAバージョンでコンパイル

Visual Studioでyolo_cpp_dll.vcxprojを開き、モードをRerease, x64に設定してyolo_cpp_dllをビルドする
yolov4_build.jpg

DarkNetのコンパイル

Visual StudioでD:\YOLO_v4\darknet\build\darknetからdarknet.slnを開く

先程と同様にモードをRerease, x64に設定する
darknetの右クリックメニューからプロパティを開く

darknet_build.jpg

C/C++

追加のインクルードディレクトリを編集

プロパティのC/C++ > 全般 > 追加のインクルードディレクトリC:\opencv\build\install\includeを追加

darknet_property.jpg

darknet_property2.jpg

プリプロセッサの定義を編集

プロパティのC/C++ > プリプロセッサ > プリプロセッサの定義からCUDNN_HALFを削除する
darknet_property3.jpg

CUDA C/C++

プロパティのCUDA C/C++ > Device > Code Generationからcompute_75,sm_75を削除する(10.2では不要)
darknet_property4.jpg

リンカー

プロパティのリンカー > 全般 > 追加のライブラリディレクトリC:\opencv\build\install\x64\vc16\libを追加

darknet_property5.jpg

darknetをビルド

ソリューションエクスプローラーからdarknetを右クリックしてビルドする

コマンドプロンプトで確認

コマンドプロンプトでD:\YOLO_v4\darknet\build\darknet\x64に移動しpythonからdarknetをエラーなくimportできることを確認する

\YOLO_v4\darknet\build\darknet\x64
$ python
>>> import darknet
>>>

YOLOv4で静止画と動画に対して物体検出をおこなう

学習済モデルのダウンロード

https://github.com/AlexeyAB/darknet から学習済モデルをダウンロードする

weightsDL.jpg

ダウンロードしたyolov4.weightsD:\YOLO_v4\darknet\build\darknet\x64にコピーする

同ディレクトリに動作確認に使う静止画ファイルと動画ファイルも入れておく

静止画で物体検出

コマンドプロンプトでD:\YOLO_v4\darknet\build\darknet\x64に移動し以下を実行

$ darknet.exe detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights

静止画のパスを求められるので入力する

pred_img_dog.jpg

動画で物体検出

動画ファイルの名称はtest.mp4
コマンドプロンプトでD:\YOLO_v4\darknet\build\darknet\x64に移動し以下を実行

$ darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights test.mp4

次回に続く

かも?

5
8
1

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
5
8