遇到问题:No module named onnxsim 解决

课题需要,使用 Yolo-FastestV2 的代码
然后配置里面的 nxnn 时,在使用命令
python3 -m onnxsim yolo-fastestv2-palm2.onnx yolo-fastestv2-palm2-opt.onnx
时,出现报错:
/home/be/anaconda3/envs/fastv2/bin/python3: No module named onnxsim

如何解决

首先是没有这个模块,那么需要在对应的虚拟环境里面下载该模块。
但是不是使用命令: pip3 install onnxsim
而是命令:

	pip3 install onnx-simplifier

然后就有可能遇到报错:

  /usr/bin/ld: /usr/lib/x86_64-linux-gnu/libprotobuf.a(arena.o): relocation R_X86_64_TPOFF32 against hidden symbol `_ZN6google8protobuf8internal9ArenaImpl13thread_cache_E' can not be used when making a shared object
  /usr/bin/ld: /usr/lib/x86_64-linux-gnu/libprotobuf.a(common.o): relocation R_X86_64_PC32 against symbol `stderr@@GLIBC_2.2.5' can not be used when making a shared object; recompile with -fPIC
  /usr/bin/ld: final link failed: bad value
  collect2: error: ld returned 1 exit status
  make[2]: *** [CMakeFiles/onnx_cpp2py_export.dir/build.make:88: onnx_cpp2py_export.cpython-36m-x86_64-linux-gnu.so] Error 1
  make[1]: *** [CMakeFiles/Makefile2:104: CMakeFiles/onnx_cpp2py_export.dir/all] Error 2
  make: *** [Makefile:130: all] Error 2
  Traceback (most recent call last):
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 349, in <module>
      main()
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 331, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 249, in build_wheel
      metadata_directory)
    File "/tmp/pip-build-env-wst535fl/overlay/lib/python3.6/site-packages/setuptools/build_meta.py", line 231, in build_wheel
      wheel_directory, config_settings)
    File "/tmp/pip-build-env-wst535fl/overlay/lib/python3.6/site-packages/setuptools/build_meta.py", line 215, in _build_with_temp_dir
      self.run_setup()
    File "/tmp/pip-build-env-wst535fl/overlay/lib/python3.6/site-packages/setuptools/build_meta.py", line 268, in run_setup
      self).run_setup(setup_script=setup_script)
    File "/tmp/pip-build-env-wst535fl/overlay/lib/python3.6/site-packages/setuptools/build_meta.py", line 158, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 365, in <module>
      "backend-test-tools = onnx.backend.test.cmd_tools:main",
    File "/tmp/pip-build-env-wst535fl/overlay/lib/python3.6/site-packages/setuptools/__init__.py", line 153, in setup
      return distutils.core.setup(**attrs)
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-wst535fl/overlay/lib/python3.6/site-packages/wheel/bdist_wheel.py", line 299, in run
      self.run_command('build')
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "setup.py", line 236, in run
      self.run_command("cmake_build")
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "setup.py", line 230, in run
      subprocess.check_call(build_args)
    File "/home/be/anaconda3/envs/fastv2/lib/python3.6/subprocess.py", line 311, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['/usr/bin/cmake', '--build', '.', '--', '-j', '16']' returned non-zero exit status 2.
  ----------------------------------------
  ERROR: Failed building wheel for onnx
Failed to build onnx
ERROR: Could not build wheels for onnx which use PEP 517 and cannot be installed directly

这个说明环境里面要么没有安装 onnx 要么安装的 onnx 版本不对。安装

	pip install onnx==1.11.0

然后再运行上面安装 onnx-simplifiter 的命令即可成功。
之后再运行

	python3 -m onnxsim yolo-fastestv2-palm2.onnx yolo-fastestv2-palm2-opt.onnx

就可以实现对 YOLO-Fastestv2ONNX 模型进行简化和优化

猜你喜欢

转载自blog.csdn.net/weixin_52303102/article/details/134547471
今日推荐