Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tensorflow Lite Python绑定在Raspberry Pi 3B上+;_Python_Tensorflow_Raspberry Pi3_Tensorflow Lite - Fatal编程技术网

Tensorflow Lite Python绑定在Raspberry Pi 3B上+;

Tensorflow Lite Python绑定在Raspberry Pi 3B上+;,python,tensorflow,raspberry-pi3,tensorflow-lite,Python,Tensorflow,Raspberry Pi3,Tensorflow Lite,我试图在raspberry pi 3B+中使用Tensorflow LitePython解释器进行对象检测,如下所示 从tensorflow.contrib.lite.python导入解释器作为解释器\u包装器 但是当我运行这行代码时,解释器=解释器包装器解释器(model\u path=“mobilenet.tflite”) 我得到这个错误: Traceback (most recent call last): File "<pyshell#5>", line 1, in &l

我试图在raspberry pi 3B+中使用Tensorflow LitePython解释器进行对象检测,如下所示

从tensorflow.contrib.lite.python导入解释器作为解释器\u包装器

但是当我运行这行代码时,解释器=解释器包装器解释器(model\u path=“mobilenet.tflite”)

我得到这个错误:

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
interpreter = interpreter_wrapper.Interpreter(model_path="mobilenet.tflite")
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/contrib/lite/python/interpreter.py", line 50, in __init__ 
_interpreter_wrapper.InterpreterWrapper_CreateWrapperCPPFromFile(
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/util/lazy_loader.py", line 53, in __getattr__
module = self._load()
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/util/lazy_loader.py", line 42, in _load
module = importlib.import_module(self.__name__)
  File "/usr/lib/python3.5/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 673, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 673, in exec_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/contrib/lite/python/interpreter_wrapper/tensorflow_wrap_interpreter_wrapper.py", line 28, in <module>
_tensorflow_wrap_interpreter_wrapper = swig_import_helper()
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/contrib/lite/python/interpreter_wrapper/tensorflow_wrap_interpreter_wrapper.py", line 24, in swig_import_helper
_mod = imp.load_module('_tensorflow_wrap_interpreter_wrapper', fp, pathname, description)
  File "/usr/lib/python3.5/imp.py", line 242, in load_module
return load_dynamic(name, filename, file)
  File "/usr/lib/python3.5/imp.py", line 342, in load_dynamic
return _load(spec)
  File "<frozen importlib._bootstrap>", line 693, in _load
  File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 577, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 914, in create_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: /usr/local/lib/python3.5/dist-packages/tensorflow/contrib/lite/python/interpreter_wrapper/_tensorflow_wrap_interpreter_wrapper.so: undefined symbol: _ZN6tflite12tensor_utils39NeonMatrixBatchVectorMultiplyAccumulateEPKfiiS2_iPfi
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
解释器=解释器\u wrapper.解释器(model\u path=“mobilenet.tflite”)
文件“/usr/local/lib/python3.5/dist-packages/tensorflow/contrib/lite/python/explorer.py”,第50行,在
_解释器\u wrapper.解释器说话者\u CreateWrapperCPPFromFile(
文件“/usr/local/lib/python3.5/dist packages/tensorflow/python/util/lazy\u loader.py”,第53行,在__
模块=自身。_加载()
文件“/usr/local/lib/python3.5/dist-packages/tensorflow/python/util/lazy_-loader.py”,第42行,在加载中
module=importlib.import\u模块(自身名称)
文件“/usr/lib/python3.5/importlib/_init__.py”,第126行,在导入模块中
return _bootstrap._gcd_import(名称[级别:],包,级别)
文件“”,第986行,在_gcd_import中
文件“”,第969行,在“查找”和“加载”中
文件“”,第958行,在“查找”和“加载”中解锁
文件“”,第673行,在“加载”中
exec_模块中第673行的文件“”
文件“”,第222行,在已删除帧的调用中
文件“/usr/local/lib/python3.5/dist-packages/tensorflow/contrib/lite/python/explorer\u-wrapper/tensorflow\u-wrapper\u-wrapper.py”,第28行,in
_tensorflow_wrap_解释器_wrapper=swig_import_helper()
swig\u import\u helper中的文件“/usr/local/lib/python3.5/dist packages/tensorflow/contrib/lite/python/explorer\u wrapper/tensorflow\u wrapper\u wrapper.py”,第24行
_mod=imp.load_模块(“tensorflow_wrap_解释器_wrapper”,fp,路径名,描述)
加载模块中的文件“/usr/lib/python3.5/imp.py”,第242行
返回加载动态(名称、文件名、文件)
文件“/usr/lib/python3.5/imp.py”,第342行,动态加载
返回负载(规格)
文件“”,第693行,正在加载
文件“”,第666行,在“加载”中
文件“”,第577行,位于\u规范的模块\u中
文件“”,第914行,在创建_模块中
文件“”,第222行,在已删除帧的调用中
ImportError:/usr/local/lib/python3.5/dist-packages/tensorflow/contrib/lite/python/解释器\u wrapper//u tensorflow\u wrapper\u解释器\u wrapper.so:未定义符号:\u zn6tfile12tensor\u utils39neonmatrixbatchvectomultiplyAccumulatepkfiis2\u iPfi
如果有人尝试此操作,请帮助我修复此错误

谢谢

我找到了答案页。 我认为,您最好从源代码构建Python包(Docker在卸载或centos上交叉编译,等等)。
->从源代码交叉编译这是使用TensorFlow v1.14或更低版本运行TensorFlow Lite时出现的错误。要解决此错误,我们可以卸载常规TensorFlow,然后改用Google提供的tflite_运行时软件包

首先,我描述了我的环境:

  • 树莓皮3B+型
  • 拉斯比奥斯
  • 我在一个名为“项目”的文件夹中工作
  • 在这个文件夹中,我使用virtualenv在一个名为“projectenv”的文件夹中创建了一个隔离环境
  • 我在raspberry pi中的python项目有一个组件“import tensorflow as tf”,这导致了错误
当我使用tensorflow在GoogleColab中构建模型时,这里不需要使用它,至少在我的程序中是这样

  • 因此,首先转到您的工作文件夹:“cd项目”在我的情况下
  • 然后激活您的环境:在我的例子中是“sourceprojectenv/bin/activate”
  • 卸载tensorflow:“pip3卸载tensorflow”
  • 获得这个轮子:“wget这适用于覆盆子Pi型号3B+
  • 现在安装控制盘:“pip3安装tflite_运行时-1.14.0-cp35-cp35m-linux_armv7l.whl”
  • 最后,在python程序中,删除这一行“import tensorflow as tf”,并将其替换为“from tflite_runtime.explorer import explorer”
因此,不要使用“解释器=tf.lite.解释器(modelpath)”,而是使用“解释器=解释器(modelpath)”

就这些。EdjeeElectronics帮我解决了这个问题。这里是YouTube频道: