赞
踩
这个包,是动态加载的一个包。在打包命令中,加上–hidden-import hubconf。(没有验证过去掉它是否可行),并且在打包好的dist\your_project_name\xxx.exe的所在目录,把hubconf.py复制到这个exe所在的目录下
1 复制权重文件到exe所在目录。
2 根据报错提示的配置文件路径,把default.yaml复制放到相应的路径下。(缺少相应父级文件夹的,手工创建)。
例子:这里提示 dist\your_project_name\ultralytics\cfg\default.yaml找不到,那么在dist\your_project_name\目录下,依次创建ultralytics目录,并在ultralytics目录下创建cfg目录,并在cfg目录下,复制default.yaml到cfg目录下。这个default.yaml即https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/default.yaml 文件。也是yolov5_p38\Lib\site-packages\ultralytics\cfg\default.yaml
一般这个文件yolov5项目目录是有的。copy放到该位置或者命令行添加上也可以
把yolov5下utils文件夹复制到你打包的文件夹里面,即dist/detect/下,然后把general.py复杂一份,改名为general.pyc就行。我也不知道这是为什么,但他就是能跑了
解决办法也简单,在服务器管理 --> 添加角色和权限 -->桌面体验即可勾选上即可,这里会重启几分钟。需要在空闲时操作
pyinstaller --onedir --collect-all ultralytics file.py
I encountered a similar issue to what @YuccaBrev described. In my case, I faced the error while utilizing --onefile with pyinstaller.
To tackle this problem:
Use the --onedir command alongside pyinstaller.
After generating the .exe, check if it’s working properly. If the error persists, indicating the absence of ‘data.yaml’:
Verify if the ‘ultralytics’ folder is created by pyinstaller; if not, proceed to the next step.
Manually create the ‘ultralytics\cfg’ directory under the same directory as the generated .exe.
Add the ‘data.yaml’ file within the ‘ultralytics\cfg’ directory.
This adjustment enabled the .exe file to run successfully without encountering the missing ‘data.yaml’ error.
conda uninstall pathlib
以下是我的打包命令
#注意这里我用的是anaconda 虚拟环境
#先安装 pyinstaller 模块
pip install pyinstaller
#提示缺少ultralytics / 也可以 --collect-all ultralytics 进行绑定
pip install ultralytics
pyinstaller --onedir --noconsole --add-data="data:data" --add-data="models:models" --add-data="utils:utils" --collect-all ultralytics --name "yolov5_detect" .\predict.py
到这里大功告成~
JAVA、Python、VUE可交流学习,可开发
微信号: mkingxiaohao
公众号不定时发布可用资源
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。