mrB*_*ean 7 tensorflow pre-trained-model
我想使用自己的数据集自定义deeplab进行图像分割吗?通过再培训可以做到吗?
小智 6
在Deeplab官方教程页面上,训练命令如下所示:
python deeplab/train.py \
--logtostderr \
--training_number_of_steps=30000 \
--train_split="train" \
--model_variant="xception_65" \
--atrous_rates=6 \
--atrous_rates=12 \
--atrous_rates=18 \
--output_stride=16 \
--decoder_output_stride=4 \
--train_crop_size=513 \
--train_crop_size=513 \
--train_batch_size=1 \
--dataset="pascal_voc_seg" \
--tf_initial_checkpoint=${PATH_TO_INITIAL_CHECKPOINT} \
--train_logdir=${PATH_TO_TRAIN_DIR} \
--dataset_dir=${PATH_TO_DATASET}
Run Code Online (Sandbox Code Playgroud)
通过更改dataset_dir和中dataset的几行segmentation_dataset.py,您可以训练自己的数据集。
dataset_dir:路径指向您的tfrecord文件夹。
此文件夹中,你应该train-%05d-of-%05d.tfrecord和val-%05d-of-%05d.tfrecord所创造build_voc2012_data.py或其他脚本的数据集。
因此,如果要train.tfrecord用于培训,请设置train_split为train;如果要对评估数据进行评估,请设置train_split为val。
dataset:任何自定义名称,请说“ donkey_monkey”
DatasetDescriptor为自己的数据集创建:
_DONKEY_MONKEY_INFORMATION = DatasetDescriptor(
splits_to_sizes={
'train': 1464, # number of training examples in train data
'trainval': 2913, # number of examples for train+eval
'val': 1449, # number of eval examples
},
num_classes=21, # note: should be number of class + background
ignore_label=255, # label pixels to ignore
)
Run Code Online (Sandbox Code Playgroud)
更改以下代码(第112行)
_DATASETS_INFORMATION = {
'cityscapes': _CITYSCAPES_INFORMATION,
'pascal_voc_seg': _PASCAL_VOC_SEG_INFORMATION,
'ade20k': _ADE20K_INFORMATION,
'donkey_monkey': _DONKEY_MONKEY_INFORMATION, # newly added
}
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
3140 次 |
| 最近记录: |