jetson orin nano 配置lerobot环境(内含重装torch/torchvision步骤)

1.安装miniforge/ Miniconda

bash 复制代码
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh
chmod +x Miniconda3-latest-Linux-aarch64.sh
./Miniconda3-latest-Linux-aarch64.sh
source ~/.bashrc

或者安装miniforge(二选一即可)这个更支持jetson的arm64架构

bash 复制代码
wget "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh"
bash Miniforge3-$(uname)-$(uname -m).sh

2. 创建并激活一个新的 conda 环境用于 lerobot

由于jetson的torch只能支持到python=3.10;所以这里不安装官网推荐的3.12以上

bash 复制代码
conda create -y -n lerobot python=3.10 
conda activate lerobot

3. 安装ffmpeg

注意官方文档写得暂时不支持8.x及以上

bash 复制代码
conda install ffmpeg=7.1.1 -c conda-forge
ffmpeg -version  # ffmpeg 8.X is not yet supported !

4. 克隆 Lerobot 仓库

bash 复制代码
git clone https://github.com/huggingface/lerobot.git
cd lerobot

5. 安装带有 feetech 电机依赖的 LeRobot:

包含 feetech 额外依赖

bash 复制代码
pip install -e ".[feetech]"

6. 执行此步前,确认已经安装了jetpack

由于Jetson对于opencv,numpy等有自己的版本要求,所以重新

bash 复制代码
# 重新安装opencv
conda install -y -c conda-forge "opencv>=4.10.0.84"  # 通过 conda 安装 OpenCV 和其他依赖,仅适用于 Jetson Jetpack 6.0+
conda remove opencv   # 卸载 OpenCV,这里主要是为了留依赖项
pip3 install opencv-python==4.10.0.84  # 使用 pip3 安装指定版本 OpenCV
# 重新安装numpy
pip uninstall numpy
pip3 install numpy==1.26.0  # 该版本需与 torchvision 兼容

7. 重新安装Pytorch 和 Torchvision

7.0 删除原来的torch和torchvision

bash 复制代码
pip uninstall torch torchvision

7.1 查看JetPack版本

bash 复制代码
cat /etc/nv_tegra_release

这里的R36 在后面选择torch和torchvision版本会用到

7.2 确保系统包是最新的

bash 复制代码
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y

7.3 (可跳过)安装(必要)依赖

具体到底哪些有用哪些没用我也不知道,也可以先不装,等有问题了再回过头来装

bash 复制代码
# 1. 安装 mamba(更快的包管理器,可选但推荐)
conda install mamba -y

# 2. 使用 mamba 安装 Pinocchio 及其 Python 绑定
#    Pinocchio 是用于机器人动力学计算的高效库,常用于仿真与控制
mamba install -c conda-forge pinocchio pinocchio-python -y

# 3. 安装 PyTorch 所需的系统级依赖(用于 GPU 加速和并行计算)
#    - libopenblas-base: 高性能线性代数库
#    - libopenmpi-dev / libomp-dev: 并行计算支持(MPI 和 OpenMP)
sudo apt-get update  # 先更新包列表,确保能获取最新版本
sudo apt-get install -y python3-pip python3-dev libopenblas-base \
    libopenmpi-dev libomp-dev

# 4. 安装 TorchVision 及其他图像/视频处理所需的底层库
#    这些库用于处理摄像头数据、视频编码解码等任务
sudo apt-get install -y libjpeg-dev zlib1g-dev libpython3-dev \
    libavcodec-dev libavformat-dev libswscale-dev

7.4 安装torch和torchvison

官网下载链接,这里建议开梯子,不然非常慢:https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048

选择对应版本,下载whl后pip install即可,torch和torchvision都是

bash 复制代码
cd [到你下载的包的文件夹下]
pip install torch-2.3.0-cp310-cp310-linux_aarch64.whl
pip install torchvision-0.18.0a0+6043bc2-cp310-cp310-linux_aarch64.whl

7.5 验证CUDA和torch和torchvision

复制代码
python -c "import torch; print(torch.cuda.is_available())"
python -c "import torchvision; print(torchvision.__version__)"

现在环境就配置好了!

常见问题解决方案

Jetson设备内存有限,编译时可能出现内存不足的问题; 增加交换空间相当于在硬盘上划出一块区域(这里是4G)当临时内存用,能有效避免这个问题。如果你的板子还没设置过,可以这么操作:

bash 复制代码
# 创建交换空间
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

# 永久添加交换空间(可选)
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
相关推荐
u1521096484913 天前
S.S.Audio PRO A2音频隔离器
嵌入式硬件·音视频·实时音视频·视频编解码·视频
zd84510150013 天前
RS485 总线详解
单片机·嵌入式硬件
半条-咸鱼13 天前
【STM32】I2C协议原理、HAL读写与OLED显示操作
嵌入式硬件·c·信息与通信
wohoo_wangzi13 天前
苏州晟雅泰电子:关于W25Q128JVSIQ这个芯片物料的参数,规格及应用领域
嵌入式硬件
科芯创展14 天前
1A,1MHz,30VIN,XZ4115,降压恒流LED驱动芯片
单片机·嵌入式硬件
集芯微电科技有限公司14 天前
四通道2A输出集成功率电感降压模块专为紧凑型方案设计
人工智能·单片机·嵌入式硬件·生成对抗网络·计算机外设
踏着七彩祥云的小丑14 天前
嵌入式测试学习第 37 天:异常场景测试:断电、拔插、干扰、非法指令
单片机·嵌入式硬件·学习
望眼欲穿的程序猿14 天前
读取芯片内部温度传感器
嵌入式硬件·rust
望眼欲穿的程序猿14 天前
ADC 模拟电压采集
嵌入式硬件·rust
IT方大同14 天前
(嵌入式操作系统)信号量
嵌入式硬件·c#