材料
- Pyinstaller
- YOLOv8
venvを作る
Pyinstallerで余計なものが入らないよう、venv内の作業にする
python -m venv venv
# tabで候補を探して アクティベート(activate)する
venv/Scripts/activate
必要なものをインストール
pip install pyinstaller
pip install ultralytics
エラーが出る要素を変更
# ここにあるファイル → \venv\Lib\site-packages\ultralytics\utils\__init__.py
この行を探す。230行目ぐらい
def set_logging(name=LOGGING_NAME, verbose=True):
# こうする
def set_logging(name=LOGGING_NAME, verbose=True):
sys.stdout = open('output.txt','w',encoding='utf-8') # New add
issueに挙がっていた。 https://github.com/ultralytics/ultralytics/issues/7393#issuecomment-1918484724
pyinstallerでパッケージ化
yamlを配置してあげないとエラー
pyinstaller --onefile --noconsole --exclude-module=pyinstaller --add-data="./venv/Lib/site-packages/ultralytics/cfg/default.yaml;./ultralytics/cfg" main.py