NVIDIA Jetson AGX Orin (三)jetson-inference初尝试--使用imagenet对图像进行分类
一、首先构建jetson-inference环境
步骤1:下载必要的依赖库,确保安装了git和cmake
sudo apt-get update
sudo apt-get install git cmake
步骤2:下载项目包
git clone https://github.com/dusty-nv/jetson-inference
cd jetson-inference
git submodule update --init
步骤3:下载python依赖包
sudo apt-get install libpython3-dev python3-numpy
步骤4:使用cmake进行配置
mkdir build
cd build
cmake ../
编译项目时跳出一个界面让我们安装pytorch,选择跳过,后面再安装
步骤5:编译项目
cd jetson-inference/build
make
sudo make install
sudo ldconfig
二、使用imagenet对图像进行分类
首先确保终端位于aarch64/bin内
cd jetson-inference/build/aarch64/bin
然后执行python代码
./imagenet.py images/orange_0.jpg images/test/output_0.jpg
初次运行可能需要时间较长,但是我这边运行了将近半小时还是一直未成功
。。。。。。。。。一直在这块折磨了三四天。。。。。
本来准备放弃了,后来在网上查询了各类资料,尝试了以下方法:
1、使用docker镜像运行------失败
2、重装jetson-inference环境再次运行------失败
3、手动在windows电脑通过上网的方式下载模型通过ssh传到imagenet.py运行时所需模型的目录下-------失败
后来回到报错也就是卡在downloading model googlenet.tar.gz这一步骤,想了一下自己已经把文件下载到所需目录了,但tensorRT还是显示下载,终究还是imagenet.py中程序驱动的,最终大胆想法:修改程序:使其跳过下载步骤直接解压利用所需文件包。
打开imagenet.py 通过vim编辑代码,修改内容如下(已被注释)
原代码为49行,最终在chatgpt帮助下获得54-57行代码,成功跑通程序(程序跑通,但还存在小问题,目标检测成功后不能直接显示标签,代码还需完善)。
虽然能通过手动下载模型传输到目标目录下通过修改代码也能跑成功,但还是过于麻烦。于是继续寻找TRT自动下载模型的方法,归到底就算次配置ubuntu不能直接“上网”,于是在网上疯狂寻找ubuntu系统“上网”的方法,试了好多个都没法成功。
在ubuntu系统可以“上网”后,再次运行./imagenet.py images/strawberry_0.jpg images/test/output_1.jpg
最终终于完成图像识别分类
注意需要在data/image/test/里查看。
至此,困惑了六七天的难题最终解决,能力有限实在浪费太多时间,同时get新技能、solve麻烦题的感觉也很舒服~
- 点赞
- 收藏
- 关注作者
评论(0)