https://blog.csdn.net/Black__Jacket/article/details/127736938
https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048
https://blog.csdn.net/beautifulback/article/details/125717717
1. Installieren Sie zuerst Jetpack neu
2. Überprüfen Sie, ob /usr/local/cuda-11.4 vorhanden ist
jetson nano CUDA-Version prüfen: nvcc -V Fehler: bash: nvcc: Befehl nicht gefunden
Wechseln Sie zu diesem Zeitpunkt in das ~-Verzeichnis: cd ~;
öffnen Sie dann die .bashrc-Datei: vim .bashrc;
drücken Sie dann die i-Taste, um in den Bearbeitungsstatus zu gelangen;
fügen Sie dann am Ende der Datei die folgenden drei Codezeilen hinzu:
export PATH=/usr/local/cuda-11.4/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH
export CUDA_ROOT=/usr/local/cuda-11.4
Drücken Sie dann die Esc-Taste, geben Sie einen Doppelpunkt ein und drücken Sie dann wq! (was Schreiben erzwingen und beenden bedeutet)!
Der letzte Schritt ist auch ein Schritt, den man leicht vergisst. Stellen Sie sicher, dass Sie diese Datei als Quelle angeben:
source .bashrc
Nachdem alles oben Genannte in Ordnung ist, geben Sie nvcc erneut ein und Sie können die CUDA-Versionsinformationen im System sehen:
3. Installieren Sie die GPU-Version von Torch 1.13.0 und Torchvision
Installieren Sie Pytorch
Jetson oder die Download-Adresse der Pytorch-Version von
https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev libomp-dev
pip3 install Cython
pip3 install numpy torch-1.13.0-cp38-cp38-linux_aarch64.whl
b. Installieren Sie Torchvison
Torchvision-Download-URL:
https://github.com/pytorch/vision
Wählen Sie „Hauptmenü“ -> „Tags 1.14.0“, um es herunterzuladen und zu entpacken.
cd torchvision
export BUILD_VERSION=0.14.0
python3 setup.py install --user
cd ../
pip install 'pillow<7'
Version ansehen
python
import torch
import torchvision
torch.__version__
torchvision.__version__
Mögliche Fehler
RuntimeError: Benutzerdefinierte C++-Operationen konnten nicht geladen werden. Dies kann passieren, wenn Ihre PyTorch- und Torchvision-Versionen nicht kompatibel sind
Die spezifischen Fehlerinformationen lauten wie folgt
jk@jk-desktop:~/Desktop/work/python_project/yolov8_tracking$ python examples/track.py --source /home/jk/Desktop/work/python_project/yolov8_tracking/test_1.mp4 --tracking-method deepocsort --yolo-model /home/jk/Desktop/work/python_project/yolov8_tracking/yolov8/ultralytics/weights/yolov8s.pt
/home/jk/.local/lib/python3.8/site-packages/torchvision/io/image.py:13: UserWarning: Failed to load image Python extension:
warn(f"Failed to load image Python extension: {e}")
track: yolo_model=/home/jk/Desktop/work/python_project/yolov8_tracking/yolov8/ultralytics/weights/yolov8s.pt, reid_model=/home/jk/Desktop/work/python_project/yolov8_tracking/examples/weights/lmbn_n_cuhk03_d.pt, tracking_method=deepocsort, source=/home/jk/Desktop/work/python_project/yolov8_tracking/test_1.mp4, imgsz=[640], conf=0.5, device=, show=False, save=False, classes=None, project=/home/jk/Desktop/work/python_project/yolov8_tracking/runs/track, name=exp, exist_ok=False, half=False, vid_stride=1, hide_label=False, hide_conf=False, save_txt=False
/home/jk/.local/lib/python3.8/site-packages/examples/weights
/home/jk/.local/lib/python3.8/site-packages/examples
add by xxx = osnet_x1_0_imagenet.pth
add by xxxx cached_file= /home/jk/.cache/torch/checkpoints/osnet_x1_0_imagenet.pth
Successfully loaded imagenet pretrained weights from "/home/jk/.cache/torch/checkpoints/osnet_x1_0_imagenet.pth"
Traceback (most recent call last):
File "examples/track.py", line 246, in <module>
main(opt)
File "examples/track.py", line 241, in main
run(vars(opt))
File "/home/jk/.local/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context
return func(*args, **kwargs)
File "examples/track.py", line 114, in run
predictor.results = predictor.postprocess(preds, im, im0s)
File "/home/jk/.local/lib/python3.8/site-packages/ultralytics/yolo/v8/detect/predict.py", line 14, in postprocess
preds = ops.non_max_suppression(preds,
File "/home/jk/.local/lib/python3.8/site-packages/ultralytics/yolo/utils/ops.py", line 246, in non_max_suppression
i = torchvision.ops.nms(boxes, scores, iou_thres) # NMS
File "/home/jk/.local/lib/python3.8/site-packages/torchvision/ops/boxes.py", line 40, in nms
_assert_has_ops()
File "/home/jk/.local/lib/python3.8/site-packages/torchvision/extension.py", line 48, in _assert_has_ops
raise RuntimeError(
RuntimeError: Couldn't load custom C++ ops. This can happen if your PyTorch and torchvision versions are incompatible, or if you had errors while compiling torchvision from source. For further information on the compatible versions, check https://github.com/pytorch/vision#installation for the compatibility matrix. Please check your PyTorch version with torch.__version__ and your torchvision version with torchvision.__version__ and verify if they are compatible, and if not please reinstall torchvision so that it matches your PyTorch install.
Die Versionen von PyTorch und Torchvision stimmen nicht überein,
aber ich habe es ausgedruckt und es gibt kein Problem mit der Version.
Zum Schluss deinstalliert und neu installiert.
pip uninstall torch
pip uninstall torchvision
pip uninstall torchaudio
Mehrmals deinstallieren
pip uninstall torch
pip uninstall torchvision
pip uninstall torchaudio
Tatsächlich habe ich während des Deinstallationsvorgangs festgestellt, dass es mehrere Versionen von Torchvision gibt, was wahrscheinlich auf diesen Grund zurückzuführen ist.
Befolgen Sie dann Schritt 3 und versuchen Sie es erneut (eine Neuinstallation geht schnell)
Erfolgreich ausgeführt.