创建虚拟环境
conda create -n mm python=3.7 -y
安装torch
# cpu
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cpuonly -c pytorch
# gpu
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=10.2 -c pytorch
# torchvision自带的版本太低,打包报错,需要升级
# 使用版本9.3.0没问题,其他版本未尝试
pip uninstall pillow
pip install pillow
安装mmdet及所需其他包
pip install opencv-python==4.6.0.66
pip install mmcv-full==1.7.0 -f https://download.openmmlab.com/mmcv/dist/cpu/torch1.8/index.html
pip install -U openmim
# mmdet安装的版本是2.25.3,其他版本未尝试
mim install mmdet
# 版本5.6.2
pip install pyinstaller
打包
# 【env path】指的是conda创建的 mm 虚拟环境路径,如E:\Tools\Anaconda3\envs\mm
pyinstaller -D main.py --paths="【env path】\Lib\site-packages\torch\lib;【env path】;【env path】\Lib;【env path】\Lib\site-packages;【env path】\Scripts;【env path】\Scripts\DLLs;【env path】\Library\bin"
# 使用上述命令生成main.spec文件
# 修改main.spec文件,将hiddenimports=[] 修改为 hiddenimports=['mmcv', 'mmcv._ext','mmdet']
# 使用 pyinstaller main.spec 重新打包
# 如果想使用upx.exe压缩,需要将upx.exe拷贝到pyinstaller.exe同级目录中,main.spec中将upx=False 修改为 upx=True