错误:
import sys
sys.path.append('/home/pi/ssd-detect')
import ssd_detect
ssd_detect.detect('/home/pi/ssd-detect/test.jpg')
报错如下:
Traceback (most recent call last):
File "test.py", line 6, in <module
ssd_detect.detect('/home/pi/ssd-detect/test.jpg')
File "/home/pi/ssd-detect/ssd_detect.py", line 31, in detect
output_dict = run_inference_for_single_image(image_np, detection_graph)
File "/home/pi/ssd-detect/ssd_detect.py", line 15, in run_inference_for_single_image
with tf.Session() as sess:
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py", line 1551, in enter
return self._default_session().enter()
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py", line 536, in _default_session
self._session_impl_fn)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py", line 633, in _create_session
return self._session_factory.create_session()
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.py", line 662, in create_session
raise RuntimeError('create_session() called before init().')
RuntimeError: create_session() called before init().
解决办法:
链接:https://www.jianshu.com/p/6c8e611d73b7
原因分析:
根据错误的描述,也就是说调用了 sess.run() 这个函数之前没有初始化 sess ,这样就会报错。
这个错误是因为 sess.run() 这个函数是在 sess 被初始化之后才能被调用。
顺便介绍一下我的另一篇专栏, 《100天精通Python - 快速入门到黑科技》专栏,是由 CSDN 内容合伙人丨全站排名 Top 4 的硬核博主 不吃西红柿 倾力打造。 基础知识篇以理论知识为主,旨在帮助没有语言基础的小伙伴,学习我整理成体系的精华知识,快速入门构建起知识框架;黑科技应用篇以实战为主,包括办公效率小工具、爬虫、数据分析、机器学习、计算机视觉、自然语言处理、数据可视化等等,让你会用一段简单的Python程序,自动化解决工作和生活中的问题,甚至成为红客。
🍅 订阅福利:原价299,限时1折订阅专栏进入千人全栈VIP答疑群,作者优先解答机会(代码指导/学习方法指引),群里大佬可以抱团取暖(大厂/外企内推机会)
🍅 订阅福利:简历指导、招聘内推、80G全栈学习视频、300本IT电子书:Python、Java、前端、大数据、数据库、算法、爬虫、数据分析、机器学习、面试题库等等
🍅 专栏地址: 点击《100天精通Python - 快速入门到黑科技》