MCPcopy
hub / github.com/qqwweee/keras-yolo3 / tiny_yolo_body

Function tiny_yolo_body

yolo3/model.py:89–119  ·  view source on GitHub ↗

Create Tiny YOLO_v3 model CNN body in keras.

(inputs, num_anchors, num_classes)

Source from the content-addressed store, hash-verified

87 return Model(inputs, [y1,y2,y3])
88
89def tiny_yolo_body(inputs, num_anchors, num_classes):
90 '''Create Tiny YOLO_v3 model CNN body in keras.'''
91 x1 = compose(
92 DarknetConv2D_BN_Leaky(16, (3,3)),
93 MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='same'),
94 DarknetConv2D_BN_Leaky(32, (3,3)),
95 MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='same'),
96 DarknetConv2D_BN_Leaky(64, (3,3)),
97 MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='same'),
98 DarknetConv2D_BN_Leaky(128, (3,3)),
99 MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='same'),
100 DarknetConv2D_BN_Leaky(256, (3,3)))(inputs)
101 x2 = compose(
102 MaxPooling2D(pool_size=(2,2), strides=(2,2), padding='same'),
103 DarknetConv2D_BN_Leaky(512, (3,3)),
104 MaxPooling2D(pool_size=(2,2), strides=(1,1), padding='same'),
105 DarknetConv2D_BN_Leaky(1024, (3,3)),
106 DarknetConv2D_BN_Leaky(256, (1,1)))(x1)
107 y1 = compose(
108 DarknetConv2D_BN_Leaky(512, (3,3)),
109 DarknetConv2D(num_anchors*(num_classes+5), (1,1)))(x2)
110
111 x2 = compose(
112 DarknetConv2D_BN_Leaky(128, (1,1)),
113 UpSampling2D(2))(x2)
114 y2 = compose(
115 Concatenate(),
116 DarknetConv2D_BN_Leaky(256, (3,3)),
117 DarknetConv2D(num_anchors*(num_classes+5), (1,1)))([x2,x1])
118
119 return Model(inputs, [y1,y2])
120
121
122def yolo_head(feats, anchors, num_classes, input_shape, calc_loss=False):

Callers 2

create_tiny_modelFunction · 0.90
generateMethod · 0.90

Calls 3

composeFunction · 0.90
DarknetConv2D_BN_LeakyFunction · 0.85
DarknetConv2DFunction · 0.85

Tested by

no test coverage detected