tensorflow 训练模型之目标检测入门知识与案例解析.doc

上传人:白大夫 文档编号:3274072 上传时间:2019-08-07 格式:DOC 页数:3 大小:17KB
返回 下载 相关 举报
tensorflow 训练模型之目标检测入门知识与案例解析.doc_第1页
第1页 / 共3页
亲,该文档总共3页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《tensorflow 训练模型之目标检测入门知识与案例解析.doc》由会员分享,可在线阅读,更多相关《tensorflow 训练模型之目标检测入门知识与案例解析.doc(3页珍藏版)》请在三一文库上搜索。

1、tensorflow 训练模型之目标检测入门知识与案例解析Tensorflow在更新1.0版本之后多了很多新功能,其中放出了很多用tf框架写的深度网络结构,大大降低了开发难度,利用现成的网络结构,无论fine-tuning还是重新训练方便了不少。而且TensorFlow内包含了一个强大的物体检测API,我们可以利用这API来训练自己的数据集实现特殊的目标检测。最近笔者终于跑通TensorFlow Object DetecTIon API的ssd_mobilenet_v1模型,这里记录下如何完整跑通数据准备到模型使用的整个过程,相信对大家能有所帮助。Object DetecTIon API提供了

2、5种网络结构的预训练的权重,全部是用数据集进行训练,这五种模型分别是SSD+mobilenet、SSD+incepTIon_v2、R-FCN+resnet101、faster RCNN+resnet101、faster RCNN+incepTIon+resnet101。各个模型的精度和计算所需时间如下。下面及介绍下如何使用Object Detection去训练自己的模型。这里TensorFlow的安装就不再说明了,网上的教程一大把,大家可以找到很详尽的安装TensorFlow的文档。tensorflow 训练模型训练前准备工作使用protobuf来配置模型和训练参数,所以API正常使用必须先编

3、译protobuf库,这里可以下载直接编译好的pb库( https:/github/google/protobuf/releases ),解压压缩包后,把protoc加入到环境变量中:$ cd tensorflow/models$ protoc object_detection/protos/*.proto -python_out=.(我是把protoc加到环境变量中,遇到找不到*.proto文件的报错,后来把protoc.exe放到models/object_detection目录下,重新执行才可以)然后将models和slim(tf高级框架)加入python环境变量:PYTHONPATH=

4、$PYTHONPATH:/your/path/to/tensorflow/models:/your/path/to/tensorflow/models/slimtensorflow 训练模型数据准备数据集需要转化成PASCAL VOC结构,API提供了create_pascal_tf_record.py,把VOC结构数据集转换成.record格式。不过我们发现更简单的方式,Datitran提供一种更简单生产.record格式的方法。首先需要先要标注图像相应标签,这里可以使用labelImg工具。每标注一张样本,即生成一个xml的标注文件。然后,把这些标注的xml文件,按训练集与验证集分别放置到

5、两个目录下,在Datitran提供了xml_to_csv.py脚本。这里只要指定标注的目录名即可。接下来,然后需要我们把对应的csv格式转换成.record格式。def main():# image_path = os.path.join(os.getcwd(), annotations)image_path = rD:training-setsobject-detectionsunglasseslabeltestxml_df = xml_to_csv(image_path)xml_df.to_csv(sunglasses_test_labels.csv, index=None)print(S

6、uccessfully converted xml to csv.)调用generate_tfrecord.py,注意要指定-csv_input与-output_path这两个参数。执行下面命令:python generate_tfrecord.py -csv_input=sunglasses_test_labels.csv -output_path=sunglass_test.record这样就生成了训练及验证用的train.record与test.record。接下来指定标签名称,仿照models/ object_detection/data/ pet_label_map.pbtxt,重新

7、创建一个文件,指定标签名。item id: 1name: sunglassestensorflow 训练模型训练教程根据自己的需要,选择一款用coco数据集预训练的模型,把前缀model.ckpt放置在待训练的目录,这里meta文件保存了graph和metadata,ckpt保存了网络的weights,这几个文件表示预训练模型的初始状态。打开ssd_mobilenet_v1_pets.config文件,并做如下修改:num_classes:修改为自己的classes num将所有PATH_TO_BE_CONFIGURED的地方修改为自己之前设置的路径(共5处)其他参数均保持默认参数。准备好上述

8、文件后就可以直接调用train文件进行训练。python object_detection/train.py -logtostderr -pipeline_config_path= D:/training-sets /data-translate/training/ssd_mobilenet_v1_pets.config -train_dir=D:/training-sets/data-translate/trainingTensorBoard监控:通过tensorboard工具,可以监控训练过程,输入西面指令后,在浏览器输入localhost:6006(默认)即可。tensorboard -logdir= D:/training-sets/data-translate/training

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1