Kanazawanaoaki / cook_eyes

Implement the eyes of the cook
1 stars 2 forks source link

データセットが変で学習出来ない #2

Closed Kanazawanaoaki closed 4 years ago

Kanazawanaoaki commented 4 years ago

作成したデータセットを使って学習のスクリプトを実行すると、

Traceback (most recent call last):
  File "create_tf_record.py", line 155, in <module>
    tf.app.run()
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 125, in run
    _sys.exit(main(argv))
  File "create_tf_record.py", line 151, in main
    create_tf_record(root_dir, output_path)
  File "create_tf_record.py", line 140, in create_tf_record
    img_path, class_label_path, instance_label_path, class_names)
  File "create_tf_record.py", line 72, in get_tf_example
    cls_lbl = np.argmax(np.bincount(class_label[inst_mask]))
  File "/usr/local/lib/python2.7/dist-packages/numpy/core/fromnumeric.py", line 1037, in argmax
    return _wrapfunc(a, 'argmax', axis=axis, out=out)
  File "/usr/local/lib/python2.7/dist-packages/numpy/core/fromnumeric.py", line 51, in _wrapfunc
    return getattr(obj, method)(*args, **kwds)
ValueError: attempt to get argmax of an empty sequence

のようなエラーが出てしまう。

./run.sh 20200515-145232-dataset --port 6000 bash
+ cd /tensorflow/models/research/scripts
+ python create_tf_record.py --data_dir=/tensorflow/models/research/20200515-145232-dataset --output_dir=/tensorflow/models/research/20200515-145232-dataset

のようにして確認してみる。
https://gist.github.com/Kanazawanaoaki/53050022fc1a7cfaba87a9c5bb862889
のようにプリント文を入れてlogを見ると、class_label[inst_mask]が空になってしまっているデータが一定数ありそれがエラーを起こしているみたい。

Kanazawanaoaki commented 4 years ago

エラーがでてしまったデータを確認する。
https://github.com/Kanazawanaoaki/cook_eyes/tree/master/food_detector/curry_one_more_try/un_used Screenshot from 2020-05-17 00-03-03 Screenshot from 2020-05-17 00-03-54 Screenshot from 2020-05-17 00-04-43 Screenshot from 2020-05-17 00-05-07 Screenshot from 2020-05-17 00-05-17 見ると、アノテーションが重なっているのと、密集してるのがいけないみたい。

Kanazawanaoaki commented 4 years ago

重なっているアノテーションなどをしなくしたらエラーが出なくなったので、closeする。