HiKapok / SSD.TensorFlow

State-of-the-art Single Shot MultiBox Detector in Pure TensorFlow, QQ Group: 758790869
Apache License 2.0
323 stars 153 forks source link

我在自己的样本上测试时,使用了没有groundtruth的XML文件,所以在执行eval_ssd.py时报错了 #118

Closed fanfan00 closed 5 years ago

fanfan00 commented 5 years ago
File "D:/fan_space/2019_7/SSD.TensorFlow-master/eval_ssd.py", line 458, in <module>
    tf.app.run()
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\platform\app.py", line 126, in run
    _sys.exit(main(argv))
  File "D:/fan_space/2019_7/SSD.TensorFlow-master/eval_ssd.py", line 429, in main
    det_results = list(pred_results)
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\estimator\estimator.py", line 500, in predict
    for key, value in six.iteritems(preds_evaluated)
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\training\monitored_session.py", line 658, in __exit__
    self._close_internal(exception_type)
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\training\monitored_session.py", line 695, in _close_internal
    self._sess.close()
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\training\monitored_session.py", line 943, in close
    self._sess.close()
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\training\monitored_session.py", line 1087, in close
    ignore_live_threads=True)
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\training\coordinator.py", line 389, in join
    six.reraise(*self._exc_info_to_raise)
  File "D:\Anaconda\Lib\site-packages\six.py", line 692, in reraise
    raise value.with_traceback(tb)
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\training\queue_runner_impl.py", line 252, in _run
    enqueue_callable()
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\client\session.py", line 1259, in _single_operation_run
    None)
  File "D:\Anaconda\envs\tensorflow\lib\site-packages\tensorflow\python\framework\errors_impl.py", line 516, in __exit__
    c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.InvalidArgumentError: Reduction axis 0 is empty in shape [0,8732]

因为我的样本只有1类车辆,所以我测试时给了算法2种图片,一种是有汽车的图+对应的xml(对应的意思就是有groundtruth的坐标),一种是没有汽车的公路图+对应的xml(对应的意思就是没有groundtruth的坐标,仅仅只包含了图片大小,没有bbox标签)。 我看这个报错的意思是没找到xml,并且我确定是因为没有groundtruth的XML文件导致的,请问该怎么修改呢?

fanfan00 commented 5 years ago

抱歉,为了描述问题比较清楚,而且看以看出您是中国人,所以直接用了中文.多谢解答

jamiechoi1995 commented 5 years ago

那就生成一个背景类的坐标到xml里面

HiKapok commented 5 years ago

@fanfan00 所有图片必须包含至少一个目标