首页 > 解决方案 > TF Object Detection API Segmentation Fault

问题描述

我正在尝试以与过去在其他机器上多次运行的方式相同的方式运行 TF 对象检测 API(相同的 Dockerfile 设置)。这一次,当尝试调用 时model_main.py,返回的只是Segmentation fault (core dumped)

我一步一步model_main.py发现,这个段错误发生得很早,在 line 中from object_detection import model_lib。我怎样才能弄清楚为什么会发生这种情况?我有这个核心转储文件,但我不确定如何使用它来更多地了解导致此段错误的原因。我正在使用的 GPU/版本是:
Ubuntu 16.04
NVIDIA K80
CUDA 9.0
cuDNN 7.3.1
Python 3.6.7
Tensorflow 1.10

我还能够毫无问题地导入 TensorFlow 并运行我成功找到的这个基本测试:

import tensorflow as tf
with tf.device('/gpu:0'):
    a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
    b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
    c = tf.matmul(a, b)

with tf.Session() as sess:
    print (sess.run(c))

任何意见是极大的赞赏!

编辑:有点解决了。在model_lib.py中,导致错误的行是from object_detection import eval_util。如果我修改这个文件,使这一行是最后一个导入而不是第一个,这个段错误就会消失。不知道为什么,所以如果有人知道我真的很想听听。

标签: pythontensorflowsegmentation-faultobject-detection-api

解决方案


推荐阅读