Darkflow: データセットとZeroDivisionErrorが検出されない:ゼロ除算

作成日 2018年08月17日  ·  4コメント  ·  ソース: thtrieu/darkflow

このコマンドを使用して、注釈を使用して独自のデータセットをトレーニングしようとしています。
python flow --model cfg/tiny-yolo-voc-4c.cfg --load bin/tiny-yolo-voc.weights --train --annotation custom/annotations --dataset custom/all --gpu 0.8 --epoch 500

私の注釈フォルダ(すべてのxml)
私のデータセットフォルダ(すべてjpg)

エラー :

Statistics:
Dataset size: 0
Dataset of 0 instance(s)
Traceback (most recent call last):
  File "flow", line 6, in <module>
    cliHandler(sys.argv)
  File "C:\Users\msi\Desktop\VSCode Folder\AI Stuff\YOLO Darkflow\darkflow-gpu\darkflow\cli.py", line 33, in cliHandler
    print('Enter training ...'); tfnet.train()
  File "C:\Users\msi\Desktop\VSCode Folder\AI Stuff\YOLO Darkflow\darkflow-gpu\darkflow\net\flow.py", line 39, in train
    for i, (x_batch, datum) in enumerate(batches):
  File "C:\Users\msi\Desktop\VSCode Folder\AI Stuff\YOLO Darkflow\darkflow-gpu\darkflow\net\yolo\data.py", line 102, in shuffle
    batch_per_epoch = int(size / batch)
ZeroDivisionError: division by zero

最も参考になるコメント

@ naren142ええ、トレーニング中に処理された画像を印刷してこの問題を作成したのと同じ日に問題を修正しました。
また、darkflow / utils /pascal_voc_clean_xml.pyでこのコード行を変更しました。 (22行目)から:
annotations = glob.glob('*.xml')

データのない注釈が原因で発生したエラー。 (画像に注釈がありますが、画像が消えています)そのannotation.xmlを削除すると、機能しました! ありがとう!

全てのコメント4件

同じエラーが発生します。 VOCデータセットを使用して再トレーニングを試みました。 なんとか解決できましたか?

Statistics:
Dataset size: 0
Dataset of 0 instance(s)
Traceback (most recent call last):
  File "/usr/local/bin/flow", line 6, in <module>
    cliHandler(sys.argv)
  File "/videoEval/darkflow/darkflow/cli.py", line 29, in cliHandler
    print('Enter training ...'); tfnet.train()
  File "/videoEval/darkflow/darkflow/net/flow.py", line 39, in train
    for i, (x_batch, datum) in enumerate(batches):
  File "/videoEval/darkflow/darkflow/net/yolo/data.py", line 102, in shuffle
    batch_per_epoch = int(size / batch)
ZeroDivisionError: division by zero

「darkflow / darkflow /ネット/ yolov2 / data.py」画像のパスを印刷してみてください、あなたは間違いが...そこにあるものを知るようになるだろうで@humanova! 次のコードを参照してください。

jpg = chunk[0]; w, h, allobj_ = chunk[1]
allobj = deepcopy(allobj_)
path = os.path.join(self.FLAGS.dataset, jpg)
**print("Processed : {}".format(path))**
img = self.preprocess(path, allobj)

@ naren142ええ、トレーニング中に処理された画像を印刷してこの問題を作成したのと同じ日に問題を修正しました。
また、darkflow / utils /pascal_voc_clean_xml.pyでこのコード行を変更しました。 (22行目)から:
annotations = glob.glob('*.xml')

データのない注釈が原因で発生したエラー。 (画像に注釈がありますが、画像が消えています)そのannotation.xmlを削除すると、機能しました! ありがとう!

同じ問題がありました。 darkflowにはtxtアノテーションではなくxmlファイルが必要であることがわかりました。

このページは役に立ちましたか?
0 / 5 - 0 評価