赞
踩
YOLOv8是Ultralytics公司开发的一个尖端的、最先进的(SOTA)模型,它建立在以前YOLO版本的成功基础上,并引入了新的功能和改进,进一步提升了性能和灵活性。YOLOv8被设计为快速、准确和易于使用,使其成为广泛的物体检测、图像分割和图像分类任务的绝佳选择。
在我们自创数据集训练后,可以通过训练生成的“best.pt”权重进行视频追踪。但是在首次运行track模式时会报些许错误。如 ERROR: subprocess-exited-with-error与 ERROR: Failed building wheel for lap。本贴即为记录解决上述问题。
ps:篇幅过长,解法直接点击下述内容。
我按照解决导包思路依次解决,分为以下步骤:
一、pip install -r requirements.txt 失败
三、conda install -c conda-forge lap 成功
(yolov8) E:\z\code\ultralytics-main\ultralytics-main>yolo cfg = ultralytics/yolo/cfg/default.yaml
Overriding D:\Anaconda3\envs\yolov8\Lib\site-packages\ultralytics\yolo\cfg\default.yaml with ultralytics/yolo/cfg/default.yaml
requirements: YOLOv8 requirement "lap>=0.4" not found, attempting AutoUpdate...
error: subprocess-exited-with-error× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [28 lines of output]
Partial import of lap during the build process.
Generating cython files
running bdist_wheel
running build
running config_cc
unifing config_cc, config, build_clib, build_ext, build commands --compiler options
running config_fc
unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options
running build_src
build_src
building extension "lap._lapjv" sources
building data_files sources
build_src: building npy-pkg config files
D:\Anaconda3\envs\yolov8\lib\site-packages\setuptools\command\install.py:37: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-b
ased tools.
setuptools.SetuptoolsDeprecationWarning,
running build_py
creating build
creating build\lib.win-amd64-3.7
creating build\lib.win-amd64-3.7\lap
copying lap\lapmod.py -> build\lib.win-amd64-3.7\lap
copying lap\__init__.py -> build\lib.win-amd64-3.7\lap
running build_ext
No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
customize MSVCCompiler
customize MSVCCompiler using build_ext
CCompilerOpt.cc_test_flags[1013] : testing flags (/O2)
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
CCompilerOpt.cache_flush[809] : write cache to path -> C:\Users\Admin\AppData\Local\Temp\pip-install-f83ct1c9\lap_4334ef16f3b74b75a9eec341ab7bd4c8\build\temp.win-amd64-3.7\Releas
e\ccompiler_opt_cache_ext.py
[end of output]note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for lap
error: subprocess-exited-with-error× Running setup.py install for lap did not run successfully.
│ exit code: 1
╰─> [28 lines of output]
Partial import of lap during the build process.
Generating cython files
running install
D:\Anaconda3\envs\yolov8\lib\site-packages\setuptools\command\install.py:37: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-b
ased tools.
setuptools.SetuptoolsDeprecationWarning,
running build
running config_cc
unifing config_cc, config, build_clib, build_ext, build commands --compiler options
running config_fc
unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options
running build_src
build_src
building extension "lap._lapjv" sources
building data_files sources
build_src: building npy-pkg config files
running build_py
creating build
creating build\lib.win-amd64-3.7
creating build\lib.win-amd64-3.7\lap
copying lap\lapmod.py -> build\lib.win-amd64-3.7\lap
copying lap\__init__.py -> build\lib.win-amd64-3.7\lap
running build_ext
No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
customize MSVCCompiler
customize MSVCCompiler using build_ext
CCompilerOpt.cc_test_flags[1013] : testing flags (/O2)
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
CCompilerOpt.cache_flush[809] : write cache to path -> C:\Users\Admin\AppData\Local\Temp\pip-install-f83ct1c9\lap_4334ef16f3b74b75a9eec341ab7bd4c8\build\temp.win-amd64-3.7\Releas
e\ccompiler_opt_cache_ext.py
[end of output]note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure× Encountered error while trying to install package.
╰─> lapnote: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
requirements: Command 'pip install "lap>=0.4" ' returned non-zero exit status 1.
Traceback (most recent call last):
File "D:\Anaconda3\envs\yolov8\lib\site-packages\ultralytics\tracker\utils\matching.py", line 10, in <module>
import lap # for linear_assignment
ModuleNotFoundError: No module named 'lap'During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Anaconda3\envs\yolov8\Scripts\yolo-script.py", line 33, in <module>
sys.exit(load_entry_point('ultralytics==8.0.61', 'console_scripts', 'yolo')())
File "D:\Anaconda3\envs\yolov8\lib\site-packages\ultralytics\yolo\cfg\__init__.py", line 374, in entrypoint
getattr(model, mode)(**overrides) # default args from model
File "D:\Anaconda3\envs\yolov8\lib\site-packages\ultralytics\yolo\engine\model.py", line 242, in track
from ultralytics.tracker import register_tracker
File "D:\Anaconda3\envs\yolov8\lib\site-packages\ultralytics\tracker\__init__.py", line 3, in <module>
from .track import register_tracker
File "D:\Anaconda3\envs\yolov8\lib\site-packages\ultralytics\tracker\track.py", line 8, in <module>
from .trackers import BOTSORT, BYTETracker
File "D:\Anaconda3\envs\yolov8\lib\site-packages\ultralytics\tracker\trackers\__init__.py", line 3, in <module>
from .bot_sort import BOTSORT
File "D:\Anaconda3\envs\yolov8\lib\site-packages\ultralytics\tracker\trackers\bot_sort.py", line 7, in <module>
from ..utils import matching
File "D:\Anaconda3\envs\yolov8\lib\site-packages\ultralytics\tracker\utils\matching.py", line 16, in <module>
import lap
ModuleNotFoundError: No module named 'lap'
Sentry is attempting to send 2 pending error messages
Waiting up to 2 seconds
Press Ctrl-Break to quit
一开始,我以为是没有lap这个包,于是直接在requirements.txt文件中添加“lap>=0.4”,然后在使用“pip install -r requirements.txt”发现还是报错。然后我把添加的“lap>=0.4”删掉。
于是又想着直接pip安装(我还使用了阿里云镜像),结果还是没用。
pip install lap==0.4 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
后面使用如下命令便安装成功。
conda install -c conda-forge lap
接着运行我的yolov8,在终端直接输入
yolo cfg = ultralytics/yolo/cfg/default.yaml
当运行完毕后,会生成一个存放视频追踪结果的文件夹,打开视频。由于在我所用视频为眼科白内障手术,为了不影响观感,截取部分画面。从中可以看到识别视频中的手术器材和人眼组织的准确率都达到了0.9以上。从中可以看出YOLOv8图像识别的功能着实强大!
以上便是此次YOLOv8运行track模式解决报错全过程,希望对正在使用YOLOv8的你有用!
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。