TF-slim进行快速进行模型分类实验(2.使用自己的数据集做分类)

使用的数据集:

http://www.lmars.whu.edu.cn/prof_web/zhongyanfei/Num/Google.html

 

使用该脚本转换图片格式将tiff转换为png

提前约定(自行创建好)

--dataset_dir="/tmp/remote_sensing"  #数据集存放路径

--checkpoint_path=/tmp/remote_log  #训练文件存放路径

PRETRAINED_CHECKPOINT_DIR=/tmp/checkpoints #预训练文件存放路径

1.需要的文件,以及操作:

 

 

mydata.py和conver_mydata.py放置在../tensorflow/models/research/slim/datasets目录下;删除../tensorflow/models/research/slim/datasets/dataset_factory.py将我们自己的dataset_factory.py替换上去;

download_and_convert_data.py 放置在../tensorflow/models/research/slim/目录下。

 

## mydata.py内定义训练集数量和验证集数量;分类的类别

SPLITS_TO_SIZES = {'train': 2000, 'validation': 400}

_NUM_CLASSES=12

 

## convert_mydata.py内定义分类类别,随机种子,验证集数量

_NUM_SHARDS = 12

_RANDOM_SEED = 0

_NUM_VALIDATION = 258

 

 

2.自己的原图转换TFrecord方法

python download_and_convert_data.py   \

--dataset_name=mydata \

--dataset_dir="/tmp/remote_sensing"

 

说明:--dataset_name=mydata 自定义数据类型

      --dataset_dir         图片文件夹所在的路径

3.开始训练

创建train_dir

python train_image_classifier.py \

--train_dir=/tmp/remote_log \

--dataset_name=mydata \

--dataset_split_name=train \

--dataset_dir="/tmp/remote_sensing" \

--model_name=inception_v4

 

 

查看tensorboard

tensorboard --logdir=/tmp/remote_log

 

 

评估:

python  eval_image_classifier.py  \

--dataset_name=mydata  \

--dataset_dir="/tmp/remote_sensing"  \

--dataset_split_name=validation  \

--model_name=inception_v4  \

--checkpoint_path=/tmp/remote_log  \

--eval_dir=/tmp/remote_evaldir \

--batch_size=32   \

微调

预训练文件下载地址:https://github.com/tensorflow/models/tree/master/research/slim

inception_resnet_v2

 

PRETRAINED_CHECKPOINT_DIR=/tmp/checkpoints

MODEL_NAME=inception_resnet_v2

TRAIN_DIR=/tmp/Fine-tuning/inception_resnet_v2/

DATASET_DIR=/tmp/remote_sensing/

 

python train_image_classifier.py \

  --train_dir=${TRAIN_DIR} \

  --dataset_name=mydata \

  --dataset_split_name=train \

  --dataset_dir=${DATASET_DIR} \

  --model_name=${MODEL_NAME} \

  --checkpoint_path=${PRETRAINED_CHECKPOINT_DIR}/${MODEL_NAME}.ckpt \

  --checkpoint_exclude_scopes=InceptionResnetV2/Logits,InceptionResnetV2/AuxLogits \

  --trainable_scopes=InceptionResnetV2/Logits,InceptionResnetV2/AuxLogits \

  --max_number_of_steps=20000 \

  --batch_size=32 \

  --learning_rate=0.01 \

  --learning_rate_decay_type=fixed \

  --save_interval_secs=60 \

  --save_summaries_secs=60 \

  --log_every_n_steps=10 \

  --optimizer=rmsprop \

  --weight_decay=0.00004 

 

微调后评估

python  eval_image_classifier.py  \

--dataset_name=mydata  \

--dataset_dir=/tmp/remote_sensing/  \

--dataset_split_name=validation  \

--model_name=inception_resnet_v2  \

--checkpoint_path=/tmp/Fine-tuning/inception_resnet_v2 \

--eval_dir=/tmp/remote_evaldir \

--batch_size=32   \

模型图的保存

CUDA_VISIBLE_DEVICES=0 python export_inference_graph.py \

  --alsologtostderr \

  --model_name=inception_resnet_v2 \

  --output_file=/tmp/inception_v3_inf_graph.pb

 

单张图片预测

python predict2.py \

--model_name=inception_v4 \

--predict_file=/tmp/remote_sensing/park/1.png \

--checkpoint_path=/tmp/remote_log

 

 

 

参数根据自己需要改变

 

(代码之后会提供链接提供大家使用)

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值