集群展示项目

一、数据集生成

1.1 环境路径:

caffe的工作空间路径在:/home/zhengyuan/zzyStdFileStructure/03_WorkSpaces/01_CaffeWorkSpace/caffe

opencv的路径在:/opt/ros/kinetic/share/OpenCV-3.3.1-dev

 (含OpenCVConfig.cmake都可用)[https://blog.csdn.net/wphkadn/article/details/83064623]

1.2 依赖库安装编译

1.2.1 先编译keyboard

cd dataprocess
catkin_make -DCATKIN_WHITELIST_PACKAGES=ros-keyboard

1.2.2 编译camera_ws

sudo apt install ros-kinetic-catkin
source /opt/ros/kinetic/setup.bash
source ~/install/setup.bash [这里面是自定义的头文件mavros_msgs]
catkin_make -DCATKIN_WHITELIST_PACKAGES=camera_ws

1.3 将rosbag转成avi


./01_specifyVideoParam.sh  
#打开image_pub.cpp  修改图片大小参数 订阅的话题是否正确
#rostopic echo(打印实时消息内容,确定图片大小) info type(话题类型)
#重新编译image_pub.cpp
./02_refreshCPP.sh
#打开roscore
./roscore.sh
#开始转换
./03_rosbag2avi.sh

rostopic list 显示活动的话题目录
rostopic echo [话题名称] 实时显示指定话题的消息内容
rostopic find [类型名称] 显示使用指定类型的消息的话题
rostopic type [话题名称] 显示指定话题的消息类型
rostopic bw [话题名称] 显示指定话题的消息带宽(bandwidth)
rostopic hz [话题名称] 显示指定话题的消息数据发布周期
rostopic info [话题名称] 显示指定话题的信息
rostopic pub [话题名称] [消息类型] [参数] 用指定的话题名称发布消息

1.4 将avi进行显著性算法处理

cd ~/cifarv4.0
./ftSaliencyDetection2 ×××.avi[生成的目标avi]
#生成的图片在0`9号文件夹里
#识别框架是caffe,使用更好的网络参数

# rosbag info ×××.bag 获取bag参数信息
#ftSaliencyDetection2.cpp中184行为模型架构
#187行到188行,为模型参数
#
#重新编译ftSaliencyDetection2
#先修改cmakecache.txt相关路径
cd build
cmake ..
cd ..
make

#可学习的点在于如何在cmakelists 和 makefile 里边构建编译的链接库

二、训练模型Sample_Base

在samplebase_cifar/tool下
** 图片的80%做训练集,10%做验证集,10%做测试集

2.1 生成训练集

1. 修改generate_image_index_input_train.txt:

  • 直接在图片的文件夹下找txt
  • 指定图片存放位置 trainSrcPic下
  • 描述类别的子类,确定训练图片的数量,修改图片路径
  • 根据训练图片的种类,确定txt的类型的内容

2. 01_generate_image_index.py:

  • python 01_generate_image_index.py generate_image_index_input_train.txt
  • 在同一级目录下生成 ** ‘image_index_’ + datetime.datetime.now().strftime(‘%Y-%m-%d-%H%M’) + ‘.txt’ **的图片txt文件,假设为train.txt

3. 02_addFlag2Index.py:

  • python 02_addFlag2Index.py train.txt
  • 在同一目录下生成带标签的txt, train_label.txt

二、生成测试集

1. 修改generate_image_index_input_test.txt

  • 指定图片存放位置 trainSrcPic下
  • 描述类别的子类,确定测试图片的数量

2.01_generate_image_index.py:

  • python 01_generate_image_index.py generate_image_index_input_test.txt
  • 在同一级目录下生成 ** ‘image_index_’ + datetime.datetime.now().strftime(‘%Y-%m-%d-%H%M’) + ‘.txt’ **的图片txt文件,假设为test.txt

3. 02_addFlag2Index.py:

  • python 02_addFlag2Index.py test.txt
  • 在同一目录下生成带标签的txt, test_label.txt

三、生成caffe所需数据类型lmdb

1. 修改 03_create_lmdb.sh

  • 寻找caffe所在位置CAFFE_ROOT,对路径进行修改
  • 寻找 train_label.txt test_label.txt的路径,修改路径
  • bash 03_create_lmdb.sh 这里面用到的是带标签的txt
  • 这里可能找不到caffe相关安装包,要在caffe下重新编译;
mkdir build 
cd build
cmake ..
make all
make install
  • 在tool同一级的lmdb_meanFile 下生成img_train_lmdbimg_test_lmdb

2. 修改04_compute_mean.sh 获得均值文件

  • TOOLS :caffe的安装路径在哪里,要找到并修改,使用caffe自带的tool/compute_image_mean 放在build/tools下的可执行文件

3. 修改tool/trainFIle_pack的超参数

  • net 找不到了,在tool同级的weightFile中;使用最新的2021caffemodel
  • cifar10_quick_solver.prototxt对应的snapshot前缀以及相应的超参数 也找不到了

四、开始训练

  • bash 05_train.sh 修改路径
  • sudo build/tools/caffe train -solver [cifar10_quick_solver.prototxt的绝对路径]
  • 过程模型参数存在weightFile下

测试模型

  • testSampleBase 的readme.txt 文件

生成测试集

1. /home/zhengyuan/testSampleBase_cifar/tool/00_1_test_result

  • generate_image_index_input.txt,根据要求修改测试的样本种类和数量(核实测试集的路径)
  • Python 01_generate_image_index.py generate_image_index_input.txt 指令会生成一个txt文件,包含所指定的样本图片的文件路径
export LD_LIBRARY_PATH=/home/zhengyuan/zzyStdFileStructure/03_WorkSpaces/01_CaffeWorkSpace/caffe/.build_release/lib:$LD_LIBRARY_PATH
python 02_generate_classify_result.py /home/zhengyuan/sampleBase_cifar/weightFile/ 00_1_test_result/test_v1.txt #直接生成相应的判断准确率到相应的accuray.txt
  • 在训练结果的模型处 生成分类结果
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值