-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCMAM
More file actions
65 lines (54 loc) · 2.54 KB
/
CMAM
File metadata and controls
65 lines (54 loc) · 2.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
lgraph = layerGraph();
tempLayers = [
imageInputLayer([227 227 3],"Name","imageinput")
convolution2dLayer([7 7],64,"Name","conv1","BiasLearnRateFactor",0,"Padding",[3 3 3 3],"Stride",[2 2])
batchNormalizationLayer("Name","bn_conv1")
maxPooling2dLayer([3 3],"Name","pool1","Padding",[1 1 1 1],"Stride",[2 2])];
lgraph = addLayers(lgraph,tempLayers);
tempLayers = [
convolution2dLayer([3 3],32,"Name","conv_1","Padding","same")
averagePooling2dLayer([5 5],"Name","avgpool2d_1","Padding","same")
maxPooling2dLayer([5 5],"Name","maxpool_1","Padding","same")
leakyReluLayer(0.01,"Name","leakyrelu_1")
sigmoidLayer("Name","sigmoid_1")];
lgraph = addLayers(lgraph,tempLayers);
tempLayers = multiplicationLayer(2,"Name","multiplication_2");
lgraph = addLayers(lgraph,tempLayers);
tempLayers = [
convolution2dLayer([3 3],32,"Name","conv_2","Padding","same")
leakyReluLayer(0.01,"Name","leakyrelu_4")
convolution2dLayer([3 3],32,"Name","conv_3","Padding","same")];
lgraph = addLayers(lgraph,tempLayers);
tempLayers = [
fullyConnectedLayer(10,"Name","fc")
leakyReluLayer(0.01,"Name","leakyrelu_2")];
lgraph = addLayers(lgraph,tempLayers);
tempLayers = maxPooling2dLayer([5 5],"Name","maxpool_2","Padding","same");
lgraph = addLayers(lgraph,tempLayers);
tempLayers = averagePooling2dLayer([5 5],"Name","avgpool2d_2","Padding","same");
lgraph = addLayers(lgraph,tempLayers);
% 连接分支
lgraph = connectLayers(lgraph,"pool1","conv_1");
lgraph = connectLayers(lgraph,"pool1","multiplication_2/in2");
lgraph = connectLayers(lgraph,"sigmoid_1","multiplication_2/in1");
lgraph = connectLayers(lgraph,"multiplication_2","conv_2");
lgraph = connectLayers(lgraph,"multiplication_2","fc");
lgraph = connectLayers(lgraph,"conv_3","multiplication_3/in2");
lgraph = connectLayers(lgraph,"leakyrelu_2","maxpool_2");
lgraph = connectLayers(lgraph,"leakyrelu_2","avgpool2d_2");
lgraph = connectLayers(lgraph,"maxpool_2","multiplication_1/in2");
lgraph = connectLayers(lgraph,"avgpool2d_2","multiplication_1/in1");
lgraph = connectLayers(lgraph,"sigmoid_2","multiplication_3/in1");
tempLayers = [
multiplicationLayer(2,"Name","multiplication_1")
leakyReluLayer(0.01,"Name","leakyrelu_3")
sigmoidLayer("Name","sigmoid_2")];
lgraph = addLayers(lgraph,tempLayers);
tempLayers = [
multiplicationLayer(2,"Name","multiplication_3")
batchNormalizationLayer("Name","batchnorm")
sigmoidLayer("Name","sigmoid_3")
yolov2OutputLayer([16 16;32 32],"Name","yolov2-out")];
lgraph = addLayers(lgraph,tempLayers);
% 清理辅助变量
clear tempLayers;