• NVIDIA Jetson AGX Xavier 从刷机之后到配置环境


    特殊的配置环境需求:

    cuda-10.2、python 3.6.9、torch 1.7.0、torchversion 0.8.1,剩下的顺其自然即可(逃。

    顺便说一句,里面的指令请一行一行仔细复制粘贴 orz

    一、前置

    关于如何刷机请参考 https://blog.csdn.net/qq_38679413/article/details/109398853https://www.weixiuzhan.cn/news/show-29589.html (第一个 blog 是原版设置了只有关注才能看,第二个是盗版文章233,它俩内容一样)

    从 github.com 中下载 yolov5-master 汉化版。网址:https://github.com/wudashuo/yolov5

    假设刷机完成了。

    安装pip3

    sudo apt-get install python3-pip
    

    安装 jtop,这个可以查看设备状态并且可以打开风扇

    sudo -H pip3 install -U jetson-stats
    

    运行 jtop

    sudo jtop
    

    更新已安装的软件(这条也许可以用也许可以不用)

    sudo apt-get upgrade
    

    二、安装 requirements.txt

    yolov5-master汉化:https://github.com/wudashuo/yolov5

    yolov5-master 要求 Python (ge 3.8),但是这里我们直接使用刷机后自带的 Python 3.6.9,原因是只能使用刷机后的 cuda 10.2,别的版本装了三天装不上,而 torch 只有较低版本如 1.7.0 才能与 cuda 10.2 匹配,Python 3.8 里找不到 torch 1.7.0,所以这里用 Python 3.6.9 完成。

    更新 pip 并换源

    pip3 install pip -U
    pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple/
    

    国内的其他源

    豆瓣 https://pypi.doubanio.com/simple/
    网易 https://mirrors.163.com/pypi/simple/
    阿里云 https://mirrors.aliyun.com/pypi/simple/
    腾讯云 https://mirrors.cloud.tencent.com/pypi/simple
    清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
    

    在四周目的时候(刷了三次机),我使用了下面的指令,我不知道这条指令对于这个实验有没有影响,我觉得用不用随意吧。

    sudo apt-get upgrade
    

    安装 matplotlib,这里用 apt-get 安装一个低版本的,后面可以用别的指令更新成高版本,否则如果用 pip 直接安装会安装不上,不知道为啥。

    sudo apt-get install python3-matplotlib
    

    先把 torch 1.7.0 下载好了(例如从邮箱),安装 torch

    下载地址:https://pan.baidu.com/s/1uunl1lLmR8mYSZYjL24QpA 提取码:1234

    这个晚上重新下载的时候简直是飞一般的感觉,白天都被别人分走了网速,可恶!下载了两个小时!

    cd 切到该文件夹下然后执行

    pip3 install torch-1.7.0-cp36-cp36m-linux_aarch64.whl
    

    如果失败请换源,我安装的时候阿里源、清华源都炸了233,最后切的豆瓣源才好使。

    安装 torchvision:这里使用源码安装

    git clone -b v0.8.1 https://github.com/pytorch/vision.git vision-0.8.1
    sudo apt-get install libopenblas-dev 
    cd vision-0.8.1
    sudo python3 setup.py install
    

    剩下的可以直接

    pip3 install -r requirements.txt
    

    如果出现了重复下载多个 matplotlib 压缩包的情况,请停止,否则会非常之慢,三周目的时候它让我享受到从 3.3.2 下载到 2.0.0 的快感!并一个一个手动安装 requirements.txt 中的包,如果 pip3 无法安装,那么用 sudo apt-get python3-<package>,比如我在四周目的 seaborn 包就无法用 pip3 安装,那么就输入了 sudo apt-get python3-seaborn 然后最后再调用一次上面的指令,把之前安装的低版本的包都更新一遍。根据本人经验之谈,只要可以把低版本的安装上,那么更新非常容易。

    附安装的 requirements.txt (其实就是把上面三个拉出来手动安装的 matplotlib、torch、torchvision 注释掉了而已),这里其实就是更新 matplotlib 的地方,虽然注释掉了,但是由于它似乎是 seaborn 的前置,所以可以更新。(反正我用注释掉的这个 txt 配上了环境)

    # pip install -r requirements.txt
    
    # base ----------------------------------------
    # matplotlib>=3.2.2
    numpy>=1.18.5
    opencv-python>=4.1.2
    Pillow
    PyYAML>=5.3.1
    scipy>=1.4.1
    # torch>=1.7.0
    # torchvision>=0.8.1
    tqdm>=4.41.0
    
    # logging -------------------------------------
    tensorboard>=2.4.1
    # wandb
    
    # plotting ------------------------------------
    seaborn>=0.11.0
    pandas
    
    # export --------------------------------------
    # coremltools>=4.1
    # onnx>=1.9.0
    # scikit-learn==0.19.2  # for coreml quantization
    
    # extras --------------------------------------
    # Cython  # for pycocotools https://github.com/cocodataset/cocoapi/issues/172
    # pycocotools>=2.0  # COCO mAP
    thop  # FLOPs computation
    

    然后可能 PyYAML 包可能会出问题无法更新,那么使用

    pip3 install --ignore-installed PyYAML
    

    接着测试一下 Python 的 torch 包是否能够在 cuda 下工作。

    python3
    >>> import torch
    >>> print(torch.cuda.is_available())
    

    若为 True ,则可以工作。如果调用 import torch 返回了 illegal instruction (core dumped) 请退出 Python3 环境并在 bash 里输入

    export OPENBLAS_CORETYPE=ARMV8
    

    如果在上述的安装过程中出现了 permission denied 那么

    sudo chmod 777 -R /usr/local #最后一个是文件夹,给他把读写执行的权限去掉
    

    请谨慎使用!最后一个文件夹请一定不要写的很大,如憨憨的我写成了 sudo chmod 777 -R /,然后出现 sudo 都不能用的情况,只能重新刷机开启四周目。

    三、使用 ip 摄像头连接并测试 detect.py

    我这里使用华为的安卓手机,在浏览器上下载了 ip 摄像头(注:我是从小米应用商店里找到的)。最好连接 wifi,使用流量不知为何连不上。然后点击下方的 打开IP摄像头服务器 。然后把 RTSP 服务器 前面的勾打上。然后记住这一行的 rtsp 流地址,假如这一行是 RTSP:rtsp://10.5.99.99:8554/live ... ,那么在 yolov5-master 文件夹下运行(第一个 admin 是账户,第二个 admin 是密码)

    python3 detect.py --source rtsp://admin:admin@10.5.99.99:8554/live
    

    即可连接。详细的指令请去 github 上看 readme。

    如果识别一张图片的速度 $ ge 0.5 s$ ,那么很可能是使用 CPU 识别的。

    如果识别一张图片的速度 $ le 0.09 s$ ,那么是使用 GPU 识别的。

    从刷机完成到测试 detect.py,在没有人跟我们抢网速的情况下,大约使用了 1 个小时多一点的时间就可以调好环境。加油!

  • 相关阅读:
    VS注释提示英文变中文的方法
    Windows 10安裝.net Framework 3.5出現0X800F0954錯誤
    NodeJS+NPM+Bower+Android环境安装配置
    复合索引
    高并发的核心技术-幂等的实现方案
    Redis初使用
    数据库SQL查找包含某列的所有table
    多线程中的wait与sleep到底谁释放了锁
    https配置
    iOS下的实际网络连接状态检测(转)
  • 原文地址:https://www.cnblogs.com/bringlu/p/14964333.html
Copyright © 2020-2023  润新知