ITKeyword,专注技术干货聚合推荐

注册 | 登录

Jetson TX1开发笔记(四):使用Caffe对摄像机视频流中的目标进行识别

c406495762 分享于 2017-05-03

2019阿里云双11返场狂欢继续,
地址https://www.aliyun.com/1111/2019/home

转载请注明作者和出处:http://blog.csdn.net/c406495762
嵌入式平台(Target): Jeston TX1

一、前言

    安装好Jetpack3.0中所有的组件之后,TX1的/home目录中出现一个tegra_multimedia_api文件夹,这个文件夹包含了许多多媒体API实例。在~/tegra_multimedia_api/samples/11_camera_object_identification目录中,我们可以找到REAME文件,这个文件就是教我们如何运行这个摄像机目标识别实例的。

** 二、搭建Caffe环境** **1.使用如下指令安装依赖包**
sudo apt-get install libboost-all-dev libprotobuf-dev libleveldb-dev libsnappy-dev
sudo apt-get install libhdf5-serial-dev protobuf-compiler libgflags-dev libgoogle-glog-dev
sudo apt-get install liblmdb-dev libblas-dev libatlas-base-dev python-numpy python-skimage python-pip python-opencv
sudo pip install protobuf

2.使用如下指令下载Caffe源码

mkdir ~/caffe
wget https://github.com/BVLC/caffe
unzip caffe-master.zip

3.编译caffe源码

a)拷贝Makefile.config文件

cd ~/caffe
cp Makefile.config.example Makefile.config

b)修改Makefile.config文件

    取消USE_CUDNN := 1的注释;(去掉前面的”#”符号)

    修改以下两行内容,保存并退出(wq):

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/aarch64-linux-gnu/hdf5/serial

c)编译

make all -j4
make runtest -j4
make pycaffe -j4

    在make runtest的时候,时间有些久,需要耐心等待:

三、编译本例程需要使用的OpenCV

1.使用如下指令进入编译文件夹

cd ~/tegra_multimedia_api/samples/11_camera_object_identification/opencv_consumer_lib

2.检查Makefile,确保以下两行的内容正确

CUDA_DIR:=/usr/local/cuda
CAFFE_DIR:=$HOME/caffe/caffe-master

3.编译

make -j4

四、下载训练好的Caffe模型

1.使用如下指令下载模型

sudo pip install pyyaml
cd ~/caffe/caffe-master
./scripts/download_model_binary.py  models/bvlc_reference_caffenet/

2.使用如下指令获取ImageNet标签文件

./data/ilsvrc12/get_ilsvrc_aux.sh

五、编译并运行实例

1.编译Caffe目标识别实例

cd ~/tegra_multimedia_api/samples/11_camera_object_identification
make -j4

2.使用如下指令添加环境变量

sudo vim ~/.bashrc

    在~/.bashrc最后一行如下内容,保存并退出(wq):

export TEGRA_ARMABI=aarch64-linux-gnu
export DISPLAY=:0
export LD_LIBRARY_PATH=$HOME/caffe/caffe-master/build/lib:/usr/local/cuda/lib64

3.使用如下指令运行实例

cd ~/tegra_multimedia_api/samples/11_camera_object_identification && ./camera_caffe -width 1920 -height 1080 \
     -lib opencv_consumer_lib/libopencv_consumer.so \
     -model $HOME/caffe/caffe-master/models/bvlc_reference_caffenet/deploy.prototxt \
     -trained $HOME/caffe/caffe-master/models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel \
     -mean $HOME/caffe/caffe-master/data/ilsvrc12/imagenet_mean.binaryproto \
     -label $HOME/caffe/caffe-master/data/ilsvrc12/synset_words.txt

六、运行结果

    TX1运行结果如下图所示,可以看到:帧率为20,识别结果在FPS下方显示:概率 - 类别(PS:原谅我倒置的摄像头)

转载请注明作者和出处:http://blog.csdn.net/c406495762 嵌入式平台(Target): Jeston TX1 一、前言     安装好Jetpack3.0中所有的组件之后,TX1的/home目录中出现一个tegra_multimedia_api文

相关阅读排行


用户评论

游客

相关内容推荐

最新文章

×

×

请激活账号

为了能正常使用评论、编辑功能及以后陆续为用户提供的其他产品,请激活账号。

您的注册邮箱: 修改

重新发送激活邮件 进入我的邮箱

如果您没有收到激活邮件,请注意检查垃圾箱。