一、PyTorch安裝中出現OSError: [WinError 126] 找不到指定的模組
1.1、問題描述
安裝PyTorch後,import torch出現:
OSError: [WinError 126] 找不到指定的模組。 Error loading “D:\Anaconda\envs\torch2\lib\site-packages\torch\lib\nvfuser_codegen.dll” or one of its dependencies. 或者出現
OSError: [WinError 126] 找不到指定的模組。 Error loading "D:\Program Files\Python\Python311\Lib\site-packages\torch\lib\fbgemm.dll" or one of its dependencies.
1.2、解決方案
這個多半還是安裝的時候出的問題,建議重新安裝PyTorch,這裏給出CUDA 11.8、PyTorch2.1.2的安裝指令:
conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=11.8 -c pytorch -c nvidia
二、torchvision安裝中出現 cannot import name ‘packaging’ from ‘pkg_resources’
2.1、問題描述
安裝PyTorch後,import torchvision出現:
ImportError: cannot import name ‘packaging’ from ‘pkg_resources’ (D:\Anaconda\envs\torch2\lib\site-packages\pkg_resources_init_.py)
2.2、解決方案
setuptools是 Python Enterprise Application Kit(PEAK)的一個副專案,它 是一組Python的 distutilsde工具的增強工具(適用於 Python 2.3.5 以上的版本,64 位平臺則適用於 Python 2.4 以上的版本),可以讓程式設計師更方便的建立和釋出 Python 包,特別是那些對其它包具有依賴性的狀況。
這種問題,一般是說明setuptools是的版本不對,首先需要先檢查setuptools是否為70.0.0及以上的版本,比如使用conda list檢查:
如果是70.0.0及以上的版本,需要降低版本
python -m pip install setuptools==69.5.1
三、 matplotlib安裝中出現Could not fetch URL pypi.python.org/simple/matp…
3.1、問題描述
Collecting matplotlib>=3.3 (from -r requirements.txt (line 5))
Could not fetch URL pypi.python.org/simple/matp…: There was a problem confirming the ssl certificate: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:748) - skipping
Could not find a version that satisfies the requirement matplotlib>=3.3 (from -r requirements.txt (line 5)) (from versions: )
No matching distribution found for matplotlib>=3.3 (from -r requirements.txt (line 5))
3.2、解決方案
這是pip源的問題,選擇可用的源即可解決:
pip install matplotlib -i http://pypi.douban.com/simple/
四、ImportError: libGL.so.1: cannot open shared object file: No such file or directory
4.1、問題描述
File “/opt/conda/lib/python3.10/site-packages/cv2/init.py”, line 181, in
bootstrap()
File “/opt/conda/lib/python3.10/site-packages/cv2/init.py”, line 153, in bootstrap
native_module = importlib.import_module(“cv2”)
File “/opt/conda/lib/python3.10/importlib/init.py”, line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
這個錯誤表明Python程式試圖匯入一個模組或庫,而這個庫依賴於名為libGL.so.1的共享物件檔案,但是系統無法找到這個檔案。libGL.so.1是OpenGL的GPU渲染庫,通常由圖形驅動程式提供。
4.2、解決方案
安裝依賴項 libgl1 就可以了,指令如下:
apt-get update && apt-get install libgl1
五、找不到Arial.ttf或者Arial.Unicode.ttf導致的報錯
5.1、問題描述
File “/root/workspace/YOLO/utils/general.py”, line 581, in check_dataset
check_font(“Arial.ttf” if is_ascii(data[“names”]) else “Arial.Unicode.ttf”, progress=True) # download fonts
File “/root/workspace/YOLO/utils/general.py”, line 516, in check_font
torch.hub.download_url_to_file(url, str(file), progress=progress)
File “/opt/conda/lib/python3.10/site-packages/torch/hub.py”, line 597, in download_url_to_file
u = urlopen(req)
5.2、解決方案
可以在github上找到Arial.Unicode.ttf 字型,進行下載:https://github.com/ultralytics/assets/releases/download/v0.0.0/Arial.Unicode.ttf
下載好後,使用mv指令存到linux系統的字型位置中,如:
mv Arial.Unicode.ttf /root/.config/Ultralytics/