From 363dd612e3ce52f6cfbb15d188363c8278dff1fa Mon Sep 17 00:00:00 2001 From: zlx Date: Fri, 1 Dec 2017 18:50:56 +0800 Subject: [PATCH 1/2] add mobilenet ssd pascal model --- models/mobilenet_ssd_pascal/README.md | 16 + .../mobilenet_ssd_pascal/config/__init__.py | 0 models/mobilenet_ssd_pascal/config/label_list | 21 + .../config/pascal_voc_conf.py | 94 ++++ .../mobilenet_ssd_pascal/images/example.jpg | Bin 0 -> 136606 bytes models/mobilenet_ssd_pascal/infer.py | 88 ++++ .../mobilenet_ssd_pascal.py | 425 ++++++++++++++++++ 7 files changed, 644 insertions(+) create mode 100644 models/mobilenet_ssd_pascal/README.md create mode 100644 models/mobilenet_ssd_pascal/config/__init__.py create mode 100644 models/mobilenet_ssd_pascal/config/label_list create mode 100644 models/mobilenet_ssd_pascal/config/pascal_voc_conf.py create mode 100644 models/mobilenet_ssd_pascal/images/example.jpg create mode 100644 models/mobilenet_ssd_pascal/infer.py create mode 100644 models/mobilenet_ssd_pascal/mobilenet_ssd_pascal.py diff --git a/models/mobilenet_ssd_pascal/README.md b/models/mobilenet_ssd_pascal/README.md new file mode 100644 index 0000000..bc56ca7 --- /dev/null +++ b/models/mobilenet_ssd_pascal/README.md @@ -0,0 +1,16 @@ +#Mobilenet SSD + +We offer the mobilenet(1.0) ssd model trained on PASCAL VOC0712 dataset. This model can be deployed on embedded system +and you can modify the network to adapt to your own application. + +## run the demo +1. Install PaddlePaddle(see: [PaddlePaddle installation instructions](http://paddlepaddle.org/docs/develop/documentation/en/getstarted/build_and_install/index_en.html)) + +2. Download the [parameters](https://pan.baidu.com/s/1o7S8yWq) trained on PASCAL VOC0712. + +3. `python infer.py` + + +## train on your own dataset +You can modify the network to adapt to your own application. PaddlePaddle provides a detailed document to show how to train your model with SSD, refer the document [here](https://github.com/PaddlePaddle/models/tree/develop/ssd). + diff --git a/models/mobilenet_ssd_pascal/config/__init__.py b/models/mobilenet_ssd_pascal/config/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/models/mobilenet_ssd_pascal/config/label_list b/models/mobilenet_ssd_pascal/config/label_list new file mode 100644 index 0000000..87df23c --- /dev/null +++ b/models/mobilenet_ssd_pascal/config/label_list @@ -0,0 +1,21 @@ +background +aeroplane +bicycle +bird +boat +bottle +bus +car +cat +chair +cow +diningtable +dog +horse +motorbike +person +pottedplant +sheep +sofa +train +tvmonitor diff --git a/models/mobilenet_ssd_pascal/config/pascal_voc_conf.py b/models/mobilenet_ssd_pascal/config/pascal_voc_conf.py new file mode 100644 index 0000000..0bf5af4 --- /dev/null +++ b/models/mobilenet_ssd_pascal/config/pascal_voc_conf.py @@ -0,0 +1,94 @@ +from easydict import EasyDict as edict +import numpy as np + +__C = edict() +cfg = __C + +__C.TRAIN = edict() + +__C.IMG_WIDTH = 300 +__C.IMG_HEIGHT = 300 +__C.IMG_CHANNEL = 3 +__C.CLASS_NUM = 21 +__C.BACKGROUND_ID = 0 + +# training settings +__C.TRAIN.MOMENTUM = 0.9 +__C.TRAIN.BATCH_SIZE = 32 +__C.TRAIN.LEARNING_RATE = 0.0005 / 4 +#__C.TRAIN.LEARNING_RATE = 0.001 / __C.TRAIN.BATCH_SIZE +__C.TRAIN.NUM_PASS = 50000 +__C.TRAIN.L2REGULARIZATION = 0.0005 * 4 +#__C.TRAIN.L2REGULARIZATION = 0.0005 * __C.TRAIN.BATCH_SIZE +__C.TRAIN.LEARNING_RATE_DECAY_A = 0.1 +__C.TRAIN.LEARNING_RATE_DECAY_B = 16551 * 80 +__C.TRAIN.LEARNING_RATE_SCHEDULE = 'discexp' +#__C.TRAIN.LEARNING_RATE_SCHEDULE = 'constant' + +__C.NET = edict() + +# configuration for multibox_loss_layer +__C.NET.MBLOSS = edict() +__C.NET.MBLOSS.OVERLAP_THRESHOLD = 0.5 +__C.NET.MBLOSS.NEG_POS_RATIO = 3.0 +__C.NET.MBLOSS.NEG_OVERLAP = 0.5 + +# configuration for detection_map +__C.NET.DETMAP = edict() +__C.NET.DETMAP.OVERLAP_THRESHOLD = 0.5 +__C.NET.DETMAP.EVAL_DIFFICULT = False +__C.NET.DETMAP.AP_TYPE = "11point" + +# configuration for detection_output_layer +__C.NET.DETOUT = edict() +__C.NET.DETOUT.CONFIDENCE_THRESHOLD = 0.01 +__C.NET.DETOUT.NMS_THRESHOLD = 0.45 +__C.NET.DETOUT.NMS_TOP_K = 400 +__C.NET.DETOUT.KEEP_TOP_K = 200 + +################################################ +__C.NET.CONV11 = edict() +__C.NET.CONV11.PB = edict() +__C.NET.CONV11.PB.MIN_SIZE = [60] +__C.NET.CONV11.PB.ASPECT_RATIO = [2.] +#__C.NET.CONV11.PB.ASPECT_RATIO = [2.] +__C.NET.CONV11.PB.VARIANCE = [0.1, 0.1, 0.2, 0.2] + + +__C.NET.CONV13 = edict() +__C.NET.CONV13.PB = edict() +__C.NET.CONV13.PB.MIN_SIZE = [105] +__C.NET.CONV13.PB.MAX_SIZE = [150] +__C.NET.CONV13.PB.ASPECT_RATIO = [2., 3.] +__C.NET.CONV13.PB.VARIANCE = [0.1, 0.1, 0.2, 0.2] + + +__C.NET.CONV14_2 = edict() +__C.NET.CONV14_2.PB = edict() +__C.NET.CONV14_2.PB.MIN_SIZE = [150] +__C.NET.CONV14_2.PB.MAX_SIZE = [195] +__C.NET.CONV14_2.PB.ASPECT_RATIO = [2., 3.] +__C.NET.CONV14_2.PB.VARIANCE = [0.1, 0.1, 0.2, 0.2] + + +__C.NET.CONV15_2 = edict() +__C.NET.CONV15_2.PB = edict() +__C.NET.CONV15_2.PB.MIN_SIZE = [195] +__C.NET.CONV15_2.PB.MAX_SIZE = [240] +__C.NET.CONV15_2.PB.ASPECT_RATIO = [2., 3.] +__C.NET.CONV15_2.PB.VARIANCE = [0.1, 0.1, 0.2, 0.2] + +__C.NET.CONV16_2 = edict() +__C.NET.CONV16_2.PB = edict() +__C.NET.CONV16_2.PB.MIN_SIZE = [240] +__C.NET.CONV16_2.PB.MAX_SIZE = [285] +__C.NET.CONV16_2.PB.ASPECT_RATIO = [2., 3.] +__C.NET.CONV16_2.PB.VARIANCE = [0.1, 0.1, 0.2, 0.2] + +__C.NET.CONV17_2 = edict() +__C.NET.CONV17_2.PB = edict() +__C.NET.CONV17_2.PB.MIN_SIZE = [285] +__C.NET.CONV17_2.PB.MAX_SIZE = [300] +__C.NET.CONV17_2.PB.ASPECT_RATIO = [2., 3.] +__C.NET.CONV17_2.PB.VARIANCE = [0.1, 0.1, 0.2, 0.2] + diff --git a/models/mobilenet_ssd_pascal/images/example.jpg b/models/mobilenet_ssd_pascal/images/example.jpg new file mode 100644 index 0000000000000000000000000000000000000000..45f3023924399dd31cbdab689c0ddf61822942a6 GIT binary patch literal 136606 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

CLcfkF06Q8U^A_J} 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 oJr&KzoMn&= threshold)[0] + for idx in keep_inds: + ret.append([ + infer_res[idx][0], infer_res[idx][1] - 1, infer_res[idx][2], + infer_res[idx][3], infer_res[idx][4], infer_res[idx][5], + infer_res[idx][6] + ]) + return ret + +def draw_result(frame, ret_res, h, w): + print ret_res + for det_res in ret_res: + img_idx = int(det_res[0]) + label = int(det_res[1]) + conf_score = det_res[2] + xmin = int(round(det_res[3] * w)) + ymin = int(round(det_res[4] * h)) + xmax = int(round(det_res[5] * w)) + ymax = int(round(det_res[6] * h)) + cv2.rectangle(frame, (xmin, ymin), (xmax, ymax), + (0, (1 - xmin) * 255, xmin * 255), 2) + font=cv2.FONT_HERSHEY_SIMPLEX + cv2.putText(frame, label_lists[label + 1].strip(), (xmin + 10, ymin + 10), font, 1.0, (255, 0, 0), 2) + + +def pre_process(img): + img = cv2.resize(img, (cfg.IMG_HEIGHT, cfg.IMG_WIDTH), interpolation=cv2.INTER_AREA) + # image should be RGB format + img = img[:, :, ::-1] + # image shoud be in CHW format + img = np.swapaxes(img, 1, 2) + img = np.swapaxes(img, 1, 0) + img = img.astype('float32') + + img_mean = np.array([104, 117, 124])[:, np.newaxis, np.newaxis].astype( + 'float32') + img -= img_mean + img = img.flatten() + return img + +def infer(model_path,threshold): + + net = net_conf(mode='infer') + + assert os.path.isfile(model_path), 'Invalid model.' + parameters = paddle.parameters.Parameters.from_tar(gzip.open(model_path)) + + #build the inference network + inferer = paddle.inference.Inference( + output_layer=net, parameters=parameters) + + test_data = [] + + frame = cv2.imread('./images/example.jpg') + + h, w, _ = frame.shape + img = copy.deepcopy(frame) + + # preprocess the image + img = pre_process(img) + test_data.append([img]) + + #the forward process + ret_res = _infer(inferer, test_data, threshold) + + draw_result(frame, ret_res, h, w) + cv2.imwrite('./images/result.jpg', frame) + +if __name__ == "__main__": + # init paddle environment + paddle.init(use_gpu=False, trainer_count=1, gpu_id= 3) + + infer(model_path='./mobilenet_ssd_pascal.tar.gz', + threshold=0.3) diff --git a/models/mobilenet_ssd_pascal/mobilenet_ssd_pascal.py b/models/mobilenet_ssd_pascal/mobilenet_ssd_pascal.py new file mode 100644 index 0000000..9d218f3 --- /dev/null +++ b/models/mobilenet_ssd_pascal/mobilenet_ssd_pascal.py @@ -0,0 +1,425 @@ +# edit-mode: -*- python -*- +import paddle.v2 as paddle +#from config.test_conf import cfg +from config.pascal_voc_conf import cfg + + +def net_conf(mode, scale = 1.0): + """Network configuration. Total three modes included 'train' 'eval' + and 'infer'. Loss and mAP evaluation layer will return if using 'train' + and 'eval'. In 'infer' mode, only detection output layer will be returned. + """ + default_l2regularization = cfg.TRAIN.L2REGULARIZATION + + default_bias_attr = paddle.attr.ParamAttr(l2_rate=0.0, learning_rate=2.0) + default_static_bias_attr = paddle.attr.ParamAttr(is_static=True) + + def get_param_attr(local_lr, regularization): + is_static = False + if local_lr == 0.0: + is_static = True + return paddle.attr.ParamAttr( + learning_rate=local_lr, l2_rate=regularization, is_static=is_static) + + def mbox_block(layer_name, input, num_channels, filter_size, loc_filters, + conf_filters): + #mbox_loc_name = layer_idx + "_mbox_loc" + mbox_loc = paddle.layer.img_conv( + #name = layer_name + '_' + 'loc', + input=input, + filter_size=filter_size, + num_channels=num_channels, + num_filters=loc_filters, + stride=1, + padding=0, + layer_type='exconv', + bias_attr=default_bias_attr, + param_attr=get_param_attr(1, default_l2regularization), + act=paddle.activation.Identity()) + + #mbox_conf_name = layer_idx + "_mbox_conf" + mbox_conf = paddle.layer.img_conv( + #name = layer_name + '_' + 'conf', + input=input, + filter_size=filter_size, + num_channels=num_channels, + num_filters=conf_filters, + stride=1, + padding=0, + layer_type='exconv', + bias_attr=default_bias_attr, + param_attr=get_param_attr(1, default_l2regularization), + act=paddle.activation.Identity()) + + return mbox_loc, mbox_conf + + def conv_bn_layer(input, filter_size, num_filters, + stride, padding, channels=None, num_groups=1, + active_type=paddle.activation.Relu(), name = None): + """ + A wrapper for conv layer with batch normalization layers. + Note: + conv layer has no activation. + """ + tmp = paddle.layer.img_conv( + #name = name, + input=input, + filter_size=filter_size, + num_channels=channels, + num_filters=num_filters, + stride=stride, + padding=padding, + groups=num_groups, + layer_type='exconv', + # !!! the act in the network with batch norm + # is paddle.activation.Linear() + act=active_type, + # !!! the bias_attr in origin network is False + bias_attr=True) + #print tmp.name + + # !!! we have deleted the batch_norm layer here. + return tmp + + def depthwise_separable(input, num_filters1, num_filters2, num_groups, stride): + """ + """ + tmp = conv_bn_layer(input=input, + filter_size=3, + num_filters=num_filters1, + stride=stride, + padding=1, + num_groups=num_groups) + + tmp = conv_bn_layer(input=tmp, + filter_size=1, + num_filters=num_filters2, + stride=1, + padding=0) + return tmp + + img = paddle.layer.data( + name='image', + type=paddle.data_type.dense_vector(cfg.IMG_CHANNEL * cfg.IMG_HEIGHT * + cfg.IMG_WIDTH), + height=cfg.IMG_HEIGHT, + width=cfg.IMG_WIDTH) + + # conv1: 112x112 + #"conv0" "conv0/relu" + conv0 = conv_bn_layer(img, + filter_size=3, + channels=3, + num_filters=int(32 * scale), + stride=2, + padding=1) + + # 56x56 + # "conv1/dw" "conv1/dw/relu" "conv1" "conv1/relu" + conv1 = depthwise_separable(conv0, + num_filters1=int(32 * scale), + num_filters2=int(64 * scale), + num_groups=int(32 * scale), + stride=1) + + #"conv2/dw" "conv2/dw/relu" "conv2" "conv2/relu" + conv2 = depthwise_separable(conv1, + num_filters1=int(64 * scale), + num_filters2=int(128 * scale), + num_groups=int(64 * scale), + stride=2) + # 28x28 + #"conv3/dw" "conv3/dw/relu" "conv3" "conv3/relu" + conv3 = depthwise_separable(conv2, + num_filters1=int(128*scale), + num_filters2=int(128*scale), + num_groups=int(128*scale), + stride=1) + + #"conv4/dw" "conv4/dw/relu" "conv4" "conv4/relu" + conv4 = depthwise_separable(conv3, + num_filters1=int(128*scale), + num_filters2=int(256*scale), + num_groups=int(128*scale), + stride=2) + + # 14x14 + #"conv5/dw" "conv5/dw/relu" "conv5" "conv5/relu" + conv5 = depthwise_separable(conv4, + num_filters1=int(256*scale), + num_filters2=int(256*scale), + num_groups=int(256*scale), + stride=1) + + #"conv6/dw" "conv6/dw/relu" "conv6" "conv6/relu" + conv6 = depthwise_separable(conv5, + num_filters1=int(256*scale), + num_filters2=int(512*scale), + num_groups=int(256*scale), + stride=2) + + tmp = conv6 + + # 14x14 + #"conv7/dw" "conv7/dw/relu" "conv7" "conv7/relu" + #conv7~11 + for i in range(5): + tmp = depthwise_separable(tmp, + num_filters1=int(512*scale), + num_filters2=int(512*scale), + num_groups=int(512*scale), + stride=1) + conv11 = tmp + + # 7x7 + #"conv12/dw" "conv12/dw/relu" "conv12" "conv12/relu" + conv12 = depthwise_separable(conv11, + num_filters1=int(512*scale), + num_filters2=int(1024*scale), + num_groups=int(512*scale), + stride=2) + + #"conv13/dw" "conv13/dw/relu" "conv13" "conv13/relu" + conv13 = depthwise_separable(conv12, + num_filters1=int(1024*scale), + num_filters2=int(1024*scale), + num_groups=int(1024*scale), + stride=1) + + # add begin + # conv14_1 "conv14_1/relu" + conv14_1 = conv_bn_layer( + #name = 'module3_1', + input=conv13, + filter_size=1, + num_filters=int(256*scale), + stride=1, + padding=0) + + #conv14_2 "conv14_2/relu" + conv14_2 = conv_bn_layer( + #name = 'module3_2', + input=conv14_1, + filter_size=3, + num_filters=int(512*scale), + stride=2, + padding=1) + + #conv15_1 "conv15_1/relu" + conv15_1 = conv_bn_layer( + # name = 'module4_1', + input=conv14_2, + filter_size=1, + num_filters=int(128*scale), + stride=1, + padding=0) + + #"conv15_2" "conv15_2/relu" + conv15_2 = conv_bn_layer( + #name = 'module4_2', + input=conv15_1, + filter_size=3, + num_filters=int(256*scale), + stride=2, + padding=1) + + #conv16_1 "conv16_1/relu" + conv16_1 = conv_bn_layer( + #name = 'module5_1', + input=conv15_2, + filter_size=1, + num_filters=int(128*scale), + stride=1, + padding=0) + + #"conv16_2" "conv16_2/relu" + conv16_2 = conv_bn_layer( + #name = 'module5_2', + input=conv16_1, + filter_size=3, + num_filters=int(256*scale), + stride=2, + padding=1) + + #conv17_1 conv17_1/relu + conv17_1 = conv_bn_layer( + #name = 'module6_1', + input=conv16_2, + filter_size=1, + num_filters=int(64*scale), + stride=1, + padding=0) + + #conv17_2 conv17_2/relu + conv17_2 = conv_bn_layer( + #name = 'module6_2', + input=conv17_1, + filter_size=3, + num_filters=int(128*scale), + stride=2, + padding=1) + + conv11_mbox_priorbox = paddle.layer.priorbox( + input=conv11, + image=img, + min_size=cfg.NET.CONV11.PB.MIN_SIZE, + aspect_ratio=cfg.NET.CONV11.PB.ASPECT_RATIO, + variance=cfg.NET.CONV11.PB.VARIANCE) + + conv11_norm = paddle.layer.cross_channel_norm( + name="conv11_norm", + input=conv11, + param_attr=paddle.attr.ParamAttr( + initial_mean=20, initial_std=0, is_static=False, learning_rate=1)) + + conv11_mbox_loc, conv11_mbox_conf= \ + mbox_block("module1", conv11_norm, int(512*scale), 1, 12, 63) # kernel_size=1 + + + conv13_mbox_priorbox = paddle.layer.priorbox( + input=conv13, + image=img, + min_size=cfg.NET.CONV13.PB.MIN_SIZE, + max_size=cfg.NET.CONV13.PB.MAX_SIZE, + aspect_ratio=cfg.NET.CONV13.PB.ASPECT_RATIO, + variance=cfg.NET.CONV13.PB.VARIANCE) + conv13_norm = paddle.layer.cross_channel_norm( + name="conv13_norm", + input=conv13, + param_attr=paddle.attr.ParamAttr( + initial_mean=20, initial_std=0, is_static=False, learning_rate=1)) + conv13_mbox_loc, conv13_mbox_conf= \ + mbox_block("module2", conv13_norm, int(1024*scale), 1, 24, 126) + + conv14_2_mbox_priorbox = paddle.layer.priorbox( + input=conv14_2, + image=img, + min_size=cfg.NET.CONV14_2.PB.MIN_SIZE, + max_size=cfg.NET.CONV14_2.PB.MAX_SIZE, + aspect_ratio=cfg.NET.CONV14_2.PB.ASPECT_RATIO, + variance=cfg.NET.CONV14_2.PB.VARIANCE) + conv14_2_norm = paddle.layer.cross_channel_norm( + name="conv14_2", + input=conv14_2, + param_attr=paddle.attr.ParamAttr( + initial_mean=20, initial_std=0, is_static=False, learning_rate=1)) + conv14_2_mbox_loc, conv14_2_mbox_conf= \ + mbox_block("module3", conv14_2_norm, int(512*scale), 1, 24, 126) + + conv15_2_mbox_priorbox = paddle.layer.priorbox( + input=conv15_2, + image=img, + min_size=cfg.NET.CONV15_2.PB.MIN_SIZE, + max_size=cfg.NET.CONV15_2.PB.MAX_SIZE, + aspect_ratio=cfg.NET.CONV15_2.PB.ASPECT_RATIO, + variance=cfg.NET.CONV15_2.PB.VARIANCE) + conv15_2_norm = paddle.layer.cross_channel_norm( + name="conv15_2_norm", + input=conv15_2, + param_attr=paddle.attr.ParamAttr( + initial_mean=20, initial_std=0, is_static=False, learning_rate=1)) + + conv15_2_mbox_loc, conv15_2_mbox_conf= \ + mbox_block("module4", conv15_2_norm, int(256*scale), 1, 24, 126) + + conv16_2_mbox_priorbox = paddle.layer.priorbox( + input=conv16_2, + image=img, + min_size=cfg.NET.CONV16_2.PB.MIN_SIZE, + max_size=cfg.NET.CONV16_2.PB.MAX_SIZE, + aspect_ratio=cfg.NET.CONV16_2.PB.ASPECT_RATIO, + variance=cfg.NET.CONV16_2.PB.VARIANCE) + conv16_2_norm = paddle.layer.cross_channel_norm( + name="conv16_2_norm", + input=conv16_2, + param_attr=paddle.attr.ParamAttr( + initial_mean=20, initial_std=0, is_static=False, learning_rate=1)) + conv16_2_mbox_loc, conv16_2_mbox_conf= \ + mbox_block("module5", conv16_2_norm, int(256*scale), 1, 24, 126) + + conv17_2_mbox_priorbox = paddle.layer.priorbox( + input=conv17_2, + image=img, + min_size=cfg.NET.CONV17_2.PB.MIN_SIZE, + max_size=cfg.NET.CONV17_2.PB.MAX_SIZE, + aspect_ratio=cfg.NET.CONV17_2.PB.ASPECT_RATIO, + variance=cfg.NET.CONV17_2.PB.VARIANCE) + conv17_2_norm = paddle.layer.cross_channel_norm( + name="conv17_2_norm", + input=conv17_2, + param_attr=paddle.attr.ParamAttr( + initial_mean=20, initial_std=0, is_static=False, learning_rate=1)) + conv17_2_mbox_loc, conv17_2_mbox_conf= \ + mbox_block("module6", conv17_2_norm, int(128*scale), 1, 24, 126) + + mbox_priorbox = paddle.layer.concat( + name="mbox_priorbox", + input=[ + conv11_mbox_priorbox + , conv13_mbox_priorbox + , conv14_2_mbox_priorbox + , conv15_2_mbox_priorbox + , conv16_2_mbox_priorbox + , conv17_2_mbox_priorbox + ]) + + + loc_loss_input = [ + conv11_mbox_loc + , conv13_mbox_loc + , conv14_2_mbox_loc + , conv15_2_mbox_loc + , conv16_2_mbox_loc + , conv17_2_mbox_loc + ] + + conf_loss_input = [ + conv11_mbox_conf + , conv13_mbox_conf + , conv14_2_mbox_conf + , conv15_2_mbox_conf + , conv16_2_mbox_conf + , conv17_2_mbox_conf + ] + + + detection_out = paddle.layer.detection_output( + input_loc=loc_loss_input, + input_conf=conf_loss_input, + priorbox=mbox_priorbox, + confidence_threshold=cfg.NET.DETOUT.CONFIDENCE_THRESHOLD, + nms_threshold=cfg.NET.DETOUT.NMS_THRESHOLD, + num_classes=cfg.CLASS_NUM, + nms_top_k=cfg.NET.DETOUT.NMS_TOP_K, + keep_top_k=cfg.NET.DETOUT.KEEP_TOP_K, + background_id=cfg.BACKGROUND_ID, + name="detection_output") + + if mode == 'train' or mode == 'eval': + bbox = paddle.layer.data( + name='bbox', type=paddle.data_type.dense_vector_sequence(6)) + loss = paddle.layer.multibox_loss( + input_loc=loc_loss_input, + input_conf=conf_loss_input, + priorbox=mbox_priorbox, + label=bbox, + num_classes=cfg.CLASS_NUM, + overlap_threshold=cfg.NET.MBLOSS.OVERLAP_THRESHOLD, + neg_pos_ratio=cfg.NET.MBLOSS.NEG_POS_RATIO, + neg_overlap=cfg.NET.MBLOSS.NEG_OVERLAP, + background_id=cfg.BACKGROUND_ID, + name="multibox_loss") + paddle.evaluator.detection_map( + input=detection_out, + label=bbox, + overlap_threshold=cfg.NET.DETMAP.OVERLAP_THRESHOLD, + background_id=cfg.BACKGROUND_ID, + evaluate_difficult=cfg.NET.DETMAP.EVAL_DIFFICULT, + ap_type=cfg.NET.DETMAP.AP_TYPE, + name="detection_evaluator") + return loss, detection_out + elif mode == 'infer': + return detection_out + +if __name__ == '__main__': + out = net_conf('infer', scale = 1.0) From 6bb6ee9920f759be60651487082f7a94e57d0a56 Mon Sep 17 00:00:00 2001 From: zlx Date: Fri, 1 Dec 2017 18:54:17 +0800 Subject: [PATCH 2/2] modify format --- models/mobilenet_ssd_pascal/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/models/mobilenet_ssd_pascal/README.md b/models/mobilenet_ssd_pascal/README.md index bc56ca7..80972b7 100644 --- a/models/mobilenet_ssd_pascal/README.md +++ b/models/mobilenet_ssd_pascal/README.md @@ -1,4 +1,4 @@ -#Mobilenet SSD +# Mobilenet SSD We offer the mobilenet(1.0) ssd model trained on PASCAL VOC0712 dataset. This model can be deployed on embedded system and you can modify the network to adapt to your own application.