# 【Darknet】実行コマンドまとめ

# データ名

<タグ> ファイル名
darknet darknet.exe Darknet実行ファイル
<data> ln.data クラス名
<cfg> ln.cfg ネットワーク構造
<weights> ln.weights 学習モデル
[image] image*.jpg 画像
[video] video*.mp4 動画

TIP

darknetの部分は、環境ごとに任意のパスを指定する。

ビルド後、移動していないならbuild/darknet/x64/darknetを指定すればOK。


<data>は、記事によってobj.nameなどとしているものもある。


# 共通 OPTION

# option -dont_show

結果ウィンドウを非表示にする。

  • 学習曲線
  • 認識結果(画像、映像)...

# option -ext_output

バウンディングボックス〔BB〕(レクトボックス)の座標を出力する。

# option -save_labels

BBの座標をプロンプトに出力。

  • 出力先は、画像のあるディレクトリ。

# TRAIN

darknet detector train <data> <cfg> <weights> [OPTION]

Example

  • 初めて学習する(darknet53.conv.74を使う)
darknet detector train ln.data ln.cfg darknet53.conv.74
  • 再学習(途中から)
darknet detector train ln.data ln.cfg ln.weights

# TEST

darknet detector test <data> <cfg> <weights> [image] [OPTION]

[image]を指定すれば、指定した画像1枚の認識を行い、指定しなければ、データ入力が促される。

Example

darknet detector test ln.data ln.cfg ln.weights image1.jpg

# 複数枚

パスは、darknet.exeの相対パス or 絶対パスを指定。

input.txtファイルに画像のパスを列挙しておく。

darkent detector test <data> <cfg> <weights> [OPTION] < input.txt

Example

darknet detector test ln.data ln.cfg ln.weights -dont_show < test-list.txt

# 結果出力

  • TXT出力
darknet detector test <data> <cfg> <weights> [OPTION] [image] > output.txt

Example

darknet detector test ln.data ln.cfg ln.weights -dont_show -ext_output image1.jpg > result.txt

  • JSON出力
option -out を使用する。
darknet detector test <data> <cfg> <weights> [OPTION] -out output.json [image]

Example

darknet detector test ln.data ln.cfg ln.weights -dont_show -ext_output -out result.json image1.jpg

  • 複数枚の結果出力
# TXT出力
darknet detector test <data> <cfg> <weights> [OPTION] < input.txt > output.txt
# JSON出力
darknet detector test <data> <cfg> <weights> [OPTION] -out output.json < input.txt

Example

-ext_outputは任意。

# TXT
darknet detector test ln.data ln.cfg ln.weights -dont_show -ext_output < test-list.txt > result.txt
# JSON
darknet detector test ln.data ln.cfg ln.weights -dont_show -ext_output -out result.json < test-list.txt

# DEMO

darknet detector demo <data> <cfg> <weights> [video] [OPTION]

[video]を指定すれば、指定した動画の認識を行い、指定しなければ、ウェブカメラ(デバイス番号0番)が実行される。

Example

darknet detecotr demo ln.data ln.cfg ln.weights video1.mp4

# option -c

PCに接続している(ウェブ)カメラの映像に対して認識を行う場合に使用する。

darknet detector demo <data> <cfg> <weights> -c N
# N: カメラのデバイス番号(0, 1, 2 ...)

# 結果出力

  • TXT出力
darknet detector demo <data> <cfg> <weights> [OPTION] [video] > output.txt

Example

darknet detector demo ln.data ln.cfg ln.weights -dont_show -ext-output video1.mp4 > result.txt