【剁手系列】Jetson Nano(三)安装caffe

安装caffe这个东西是真的感人,下载容易,安装难,各种报错。下面开始正文部分,然后在提醒一句,Jetson Nano跑跑一般的就行了,你要是跑个稍微大那么一点点的,跑着跑着就黑了,直接关机。安装caffe其实也只是学习一些,实际上在Jetson Nano这里没啥用。

(一) 准备工作

  1. 设置交换空间
    先分配一些交换空间,但是我在Jetson Nano上真心看不出效果,我设置了以后最多也就用了500M左右,跑凶点还是要跳电的。

    # 先禁用以前的
    sudo swapoff /swapfile
    # 修改swap 空间的大小为4G
    sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
    # 设置文件为“swap file”类型
    sudo mkswap /swapfile
    # 启用swapfile
    sudo swapon /swapfile
    # 在/etc/fstab中添加下面代码,将swap空间永久保留,不执行这句重新启动后swap空间被释放
    /swapfile            swap                   swap    defaults        0 0
    
  2. 安装依赖包

    sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
    sudo apt-get install --no-install-recommends libboost-all-dev
    sudo apt-get install libopenblas-dev liblapack-dev libatlas
<think>好的,用户想要在Jetson Nano安装YOLOv8和OpenPose。首先,我需要确认这两个框架在Jetson Nano上的兼容性。Jetson Nano是ARM架构,所以需要对应的库和依赖。 YOLOv8是Ultralytics的版本,通常用PyTorch实现。而OpenPose可能需要编译源代码,因为预编译的版本可能不支持Jetson。首先,用户需要安装PyTorch,但Jetson的PyTorch版本需要特别下载,比如从NVIDIA的官方渠道获取适配的版本。 接下来是环境准备。系统更新和依赖安装是基础步骤,比如安装CMake、Python开发包等。然后安装PyTorch和TorchVision,这里可能需要指定版本,比如PyTorch 1.8.0,对应JetPack版本。安装Ultralytics的YOLOv8应该可以直接用pip,但要注意版本兼容性。 然后是OpenPose的安装。这部分比较复杂,可能需要从源码编译。用户需要下载OpenPose的代码,配置CMake参数,确保使用正确的CUDA架构(比如Jetson Nano是sm_53)。编译过程中可能会遇到依赖问题,比如需要安装OpenCV、Caffe等,可能需要单独处理。 接下来是测试部分。YOLOv8的测试相对简单,加载预训练模型进行检测。而OpenPose可能需要下载预训练的模型文件,并确保路径正确。用户可能会遇到模型文件下载失败的问题,可能需要动下载或更换源。 可能的问题包括CUDA版本不匹配、内存不足(Jetson Nano内存较小)、编译OpenPose时的错误。需要提醒用户可能增加交换空间,或者使用轻量级模型。 最后,整合两个模型需要考虑资源分配,同时运行可能占用大量内存和计算资源,需要优化或分步骤处理。用户可能需要简化模型或使用多线程来管理资源。</think>以下是 Jetson Nano 安装 YOLOv8 + OpenPose 的完整指南: --- ### 一、环境准备 1. **系统更新** ```bash sudo apt update && sudo apt upgrade -y sudo apt install build-essential cmake git libopencv-dev python3-dev python3-pip -y ``` 2. **安装 PyTorch** ```bash wget https://nvidia.box.com/shared/static/p57jwntv436lfrd78inwl7iml6p13fzh.whl -O torch-1.8.0-cp36-cp36m-linux_aarch64.whl pip3 install numpy torch-1.8.0-cp36-cp36m-linux_aarch64.whl ``` 3. **安装 TorchVision** ```bash sudo apt install libjpeg-dev zlib1g-dev -y git clone --branch v0.9.0 https://github.com/pytorch/vision torchvision cd torchvision export BUILD_VERSION=0.9.0 python3 setup.py install --user ``` --- ### 二、安装 YOLOv8 ```bash pip3 install ultralytics ``` --- ### 安装 OpenPose 1. **下载源码** ```bash git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.git cd openpose git submodule update --init --recursive ``` 2. **编译安装** ```bash mkdir build && cd build cmake -D CMAKE_INSTALL_PREFIX=/usr/local \ -D CUDA_ARCH_BIN=53 \ # Jetson Nano 的 CUDA 架构 -D BUILD_PYTHON=ON .. make -j4 && sudo make install ``` --- ### 四、测试安装 1. **YOLOv8 测试** ```python from ultralytics import YOLO model = YOLO('yolov8n.pt') results = model.predict('test.jpg', save=True) ``` 2. **OpenPose 测试** ```python import cv2 from openpose import pyopenpose as op params = { "model_folder": "/path/to/openpose/models/", "hand": True } opWrapper = op.WrapperPython() opWrapper.configure(params) opWrapper.start() datum = op.Datum() imageToProcess = cv2.imread("test.jpg") datum.cvInputData = imageToProcess opWrapper.emplaceAndPop(op.VectorDatum([datum])) ``` --- ### 五、常见问题 1. **CUDA 内存不足** ```bash sudo fallocate -l 4G /swapfile # 创建交换空间 sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile ``` 2. **OpenPose 模型下载** ```bash cd models ./getModels.sh # 需动下载时需修改脚本中的下载地址 ``` --- ### 六、整合建议 1. **资源分配策略** - 使用 YOLOv8n(nano 版本)进行目标检测 - 在检测到人体后调用 OpenPose 进行姿态估计 - 使用多线程分别处理不同任务 2. **性能优化** - 将输入分辨率调整为 640x480 - 使用 TensorRT 加速模型(需转换 ONNX 格式) - 关闭不需要的 OpenPose 模块(如部/面部检测) --- 通过上述步骤可实现 Jetson Nano 上的基础部署,实际性能可达 2-5 FPS(取决于分辨率设置)。建议使用主动散热装置并设置性能模式为最大: ```bash sudo nvpmodel -m 0 # 最大性能模式 sudo jetson_clocks # 强制最大时钟频率 ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值