FlyingQianMM před 4 roky
rodič
revize
daff6160cb

+ 5 - 5
dygraph/examples/meter_reader/README.md

@@ -108,12 +108,12 @@ PaddleX提供了丰富的视觉模型,在目标检测中提供了RCNN和YOLO
 
 ## <h2 id="4">4 表计检测模型训练</h2>
 
-本项目中采用精度和预测性能的PPYOLOV2进行表计检测。具体代码请参考[train_detection.py](./code/train_detection.py)。
+本项目中采用精度和预测性能的PPYOLOV2进行表计检测。具体代码请参考[train_detection.py](./train_detection.py)。
 
 运行如下代码开始训练模型:
 
 ```shell
-python code/train_detection.py
+python train_detection.py
 ```
 
 训练过程说明:
@@ -188,12 +188,12 @@ model.train(
 
 ## <h2 id="5">5 指针和刻度分割模型训练</h2>
 
-本项目中采用精度更优的DeepLabV3P进行指针和刻度的分割。具体代码请参考[train_segmentation.py](./code/train_segmentation.py)。
+本项目中采用精度更优的DeepLabV3P进行指针和刻度的分割。具体代码请参考[train_segmentation.py](./train_segmentation.py)。
 
 运行如下代码开始训练模型:
 
 ```shell
-python code/train_segmentation.py
+python train_segmentation.py
 ```
 
 训练过程说明:
@@ -267,7 +267,7 @@ model.train(
 运行如下代码:
 
 ```shell
-python code/reader_infer.py --det_model_dir output/ppyolov2_r50vd_dcn/best_model --seg_model_dir output/deeplabv3p_r50vd/best_model/ --image meter_det/test/20190822_105.jpg
+python reader_infer.py --det_model_dir output/ppyolov2_r50vd_dcn/best_model --seg_model_dir output/deeplabv3p_r50vd/best_model/ --image meter_det/test/20190822_105.jpg
 ```
 
 则会在终端上输出信息:

+ 0 - 0
dygraph/examples/meter_reader/code/reader_infer.py → dygraph/examples/meter_reader/reader_infer.py


+ 5 - 2
dygraph/examples/meter_reader/code/train_detection.py → dygraph/examples/meter_reader/train_detection.py

@@ -18,6 +18,10 @@ eval_transforms = T.Compose([
             mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
 ])
 
+# 下载和解压表计检测数据集,如果已经预先下载,可注释掉下面两行
+meter_det_dataset = 'https://bj.bcebos.com/paddlex/examples/meter_reader/datasets/meter_det.tar.gz'
+pdx.utils.download_and_decompress(meter_det_dataset, path='./')
+
 # 定义训练和验证所用的数据集
 # API说明:https://github.com/PaddlePaddle/PaddleX/blob/develop/dygraph/paddlex/cv/datasets/coco.py#L26
 train_dataset = pdx.datasets.CocoDetection(
@@ -33,8 +37,7 @@ eval_dataset = pdx.datasets.CocoDetection(
 # 初始化模型,并进行训练
 # 可使用VisualDL查看训练指标,参考https://github.com/PaddlePaddle/PaddleX/tree/release/2.0-rc/tutorials/train#visualdl可视化训练指标
 num_classes = len(train_dataset.labels)
-model = pdx.models.PPYOLOv2(
-    num_classes=num_classes, backbone='ResNet50_vd_dcn')
+model = pdx.det.PPYOLOv2(num_classes=num_classes, backbone='ResNet50_vd_dcn')
 
 # API说明:https://github.com/PaddlePaddle/PaddleX/blob/release/2.0-rc/paddlex/cv/models/detector.py#L155
 # 各参数介绍与调整说明:https://paddlex.readthedocs.io/zh_CN/develop/appendix/parameters.html

+ 1 - 1
dygraph/examples/meter_reader/code/train_segmentation.py → dygraph/examples/meter_reader/train_segmentation.py

@@ -39,7 +39,7 @@ eval_dataset = pdx.datasets.SegDataset(
 # 初始化模型,并进行训练
 # 可使用VisualDL查看训练指标,参考https://github.com/PaddlePaddle/PaddleX/tree/release/2.0-rc/tutorials/train#visualdl可视化训练指标
 num_classes = len(train_dataset.labels)
-model = pdx.models.DeepLabV3P(
+model = pdx.seg.DeepLabV3P(
     num_classes=num_classes, backbone='ResNet50_vd', use_mixed_loss=True)
 
 # API说明:https://github.com/PaddlePaddle/PaddleX/blob/release/2.0-rc/paddlex/cv/models/segmenter.py#L150