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

@humanova在“darkflow / darkflow / NET / yolov2 / data.py”尝试打印图像的路径,那么你会得到知道什么是错误有.. !! 请参阅以下代码。

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 需要xml 文件而不是txt 注释。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

bareblackfoot picture bareblackfoot  ·  4评论

Kowasaki picture Kowasaki  ·  4评论

1NNcoder picture 1NNcoder  ·  3评论

eugtanchik picture eugtanchik  ·  4评论

jubjamie picture jubjamie  ·  4评论