Closed doublegssc closed 4 years ago
Hi,doublegssc, 请把你运行代码的执行命令发上来。
你的这个darknet2caffe.py代码是我这个工程里面的么,还是我给你的链接工程里面的?
是你这个工程里面的。。
我的命令是: python3 darknet2caffe.py yolov3-tiny.cfg yolov3-tiny.weights yolov3-tiny.prototxt yolov3-tiny.caffemodel
我需要看你的整个darknet2caffe.py的代码以及你运行错误的整个日志。
darknet2caffe.py的代码为: -----------------------------
caffe_root='/home/user/caffe/'
import sys sys.path.insert(0,caffe_root+'python') import caffe import numpy as np from collections import OrderedDict from cfg import from prototxt import
def darknet2caffe(cfgfile, weightfile, protofile, caffemodel): net_info = cfg2prototxt(cfgfile) save_prototxt(net_info , protofile, region=False)
net = caffe.Net(protofile, caffe.TEST)
params = net.params
blocks = parse_cfg(cfgfile)
#Open the weights file
fp = open(weightfile, "rb")
#The first 4 values are header information
# 1. Major version number
# 2. Minor Version Number
# 3. Subversion number
# 4. IMages seen
header = np.fromfile(fp, dtype = np.int32, count = 5)
#fp = open(weightfile, 'rb')
#header = np.fromfile(fp, count=5, dtype=np.int32)
#header = np.ndarray(shape=(5,),dtype='int32',buffer=fp.read(20))
#print(header)
buf = np.fromfile(fp, dtype = np.float32)
#print(buf)
fp.close()
layers = []
layer_id = 1
start = 0
for block in blocks:
if start >= buf.size:
break
if block['type'] == 'net':
continue
elif block['type'] == 'convolutional':
batch_normalize = int(block['batch_normalize'])
if 'name' in block:
conv_layer_name = block['name']
bn_layer_name = '%s-bn' % block['name']
scale_layer_name = '%s-scale' % block['name']
else:
conv_layer_name = 'layer%d-conv' % layer_id
bn_layer_name = 'layer%d-bn' % layer_id
scale_layer_name = 'layer%d-scale' % layer_id
if batch_normalize:
start = load_conv_bn2caffe(buf, start, params[conv_layer_name], params[bn_layer_name], params[scale_layer_name])
else:
start = load_conv2caffe(buf, start, params[conv_layer_name])
layer_id = layer_id+1
elif block['type'] == 'depthwise_convolutional':
batch_normalize = int(block['batch_normalize'])
if 'name' in block:
conv_layer_name = block['name']
bn_layer_name = '%s-bn' % block['name']
scale_layer_name = '%s-scale' % block['name']
else:
conv_layer_name = 'layer%d-dwconv' % layer_id
bn_layer_name = 'layer%d-bn' % layer_id
scale_layer_name = 'layer%d-scale' % layer_id
if batch_normalize:
start = load_conv_bn2caffe(buf, start, params[conv_layer_name], params[bn_layer_name], params[scale_layer_name])
else:
start = load_conv2caffe(buf, start, params[conv_layer_name])
layer_id = layer_id+1
elif block['type'] == 'connected':
if 'name' in block:
fc_layer_name = block['name']
else:
fc_layer_name = 'layer%d-fc' % layer_id
start = load_fc2caffe(buf, start, params[fc_layer_name])
layer_id = layer_id+1
elif block['type'] == 'maxpool':
layer_id = layer_id+1
elif block['type'] == 'avgpool':
layer_id = layer_id+1
elif block['type'] == 'region':
layer_id = layer_id + 1
elif block['type'] == 'route':
layer_id = layer_id + 1
elif block['type'] == 'shortcut':
layer_id = layer_id + 1
elif block['type'] == 'softmax':
layer_id = layer_id + 1
elif block['type'] == 'cost':
layer_id = layer_id + 1
elif block['type'] == 'upsample':
layer_id = layer_id + 1
else:
print('unknow layer type %s ' % block['type'])
layer_id = layer_id + 1
print('save prototxt to %s' % protofile)
save_prototxt(net_info , protofile, region=True)
print('save caffemodel to %s' % caffemodel)
net.save(caffemodel)
def load_conv2caffe(buf, start, conv_param): weight = conv_param[0].data bias = conv_param[1].data conv_param[1].data[...] = np.reshape(buf[start:start+bias.size], bias.shape); start = start + bias.size conv_param[0].data[...] = np.reshape(buf[start:start+weight.size], weight.shape); start = start + weight.size return start
def load_fc2caffe(buf, start, fc_param): weight = fc_param[0].data bias = fc_param[1].data fc_param[1].data[...] = np.reshape(buf[start:start+bias.size], bias.shape); start = start + bias.size fc_param[0].data[...] = np.reshape(buf[start:start+weight.size], weight.shape); start = start + weight.size return start
def load_conv_bn2caffe(buf, start, conv_param, bn_param, scale_param): conv_weight = conv_param[0].data running_mean = bn_param[0].data running_var = bn_param[1].data scale_weight = scale_param[0].data scale_bias = scale_param[1].data
scale_param[1].data[...] = np.reshape(buf[start:start+scale_bias.size], scale_bias.shape); start = start + scale_bias.size
#print scale_bias.size
#print scale_bias
scale_param[0].data[...] = np.reshape(buf[start:start+scale_weight.size], scale_weight.shape); start = start + scale_weight.size
#print scale_weight.size
bn_param[0].data[...] = np.reshape(buf[start:start+running_mean.size], running_mean.shape); start = start + running_mean.size
#print running_mean.size
bn_param[1].data[...] = np.reshape(buf[start:start+running_var.size], running_var.shape); start = start + running_var.size
#print running_var.size
bn_param[2].data[...] = np.array([1.0])
conv_param[0].data[...] = np.reshape(buf[start:start+conv_weight.size], conv_weight.shape); start = start + conv_weight.size
#print conv_weight.size
return start
def cfg2prototxt(cfgfile): blocks = parse_cfg(cfgfile)
prev_filters = 3
layers = []
props = OrderedDict()
bottom = 'data'
layer_id = 1
topnames = dict()
for block in blocks:
if block['type'] == 'net':
props['name'] = 'Darkent2Caffe'
props['input'] = 'data'
props['input_dim'] = ['1']
props['input_dim'].append(block['channels'])
props['input_dim'].append(block['height'])
props['input_dim'].append(block['width'])
continue
elif block['type'] == 'convolutional':
conv_layer = OrderedDict()
conv_layer['bottom'] = bottom
if 'name' in block:
conv_layer['top'] = block['name']
conv_layer['name'] = block['name']
else:
conv_layer['top'] = 'layer%d-conv' % layer_id
conv_layer['name'] = 'layer%d-conv' % layer_id
conv_layer['type'] = 'Convolution'
convolution_param = OrderedDict()
convolution_param['num_output'] = block['filters']
prev_filters = block['filters']
convolution_param['kernel_size'] = block['size']
if block['pad'] == '1':
convolution_param['pad'] = str(int(convolution_param['kernel_size'])/2)
convolution_param['stride'] = block['stride']
if block['batch_normalize'] == '1':
convolution_param['bias_term'] = 'false'
else:
convolution_param['bias_term'] = 'true'
conv_layer['convolution_param'] = convolution_param
layers.append(conv_layer)
bottom = conv_layer['top']
if block['batch_normalize'] == '1':
bn_layer = OrderedDict()
bn_layer['bottom'] = bottom
bn_layer['top'] = bottom
if 'name' in block:
bn_layer['name'] = '%s-bn' % block['name']
else:
bn_layer['name'] = 'layer%d-bn' % layer_id
bn_layer['type'] = 'BatchNorm'
batch_norm_param = OrderedDict()
batch_norm_param['use_global_stats'] = 'true'
bn_layer['batch_norm_param'] = batch_norm_param
layers.append(bn_layer)
scale_layer = OrderedDict()
scale_layer['bottom'] = bottom
scale_layer['top'] = bottom
if 'name' in block:
scale_layer['name'] = '%s-scale' % block['name']
else:
scale_layer['name'] = 'layer%d-scale' % layer_id
scale_layer['type'] = 'Scale'
scale_param = OrderedDict()
scale_param['bias_term'] = 'true'
scale_layer['scale_param'] = scale_param
layers.append(scale_layer)
if block['activation'] != 'linear':
relu_layer = OrderedDict()
relu_layer['bottom'] = bottom
relu_layer['top'] = bottom
if 'name' in block:
relu_layer['name'] = '%s-act' % block['name']
else:
relu_layer['name'] = 'layer%d-act' % layer_id
relu_layer['type'] = 'ReLU'
if block['activation'] == 'leaky':
relu_param = OrderedDict()
relu_param['negative_slope'] = '0.1'
relu_layer['relu_param'] = relu_param
layers.append(relu_layer)
topnames[layer_id] = bottom
layer_id = layer_id+1
elif block['type'] == 'depthwise_convolutional':
conv_layer = OrderedDict()
conv_layer['bottom'] = bottom
if 'name' in block:
conv_layer['top'] = block['name']
conv_layer['name'] = block['name']
else:
conv_layer['top'] = 'layer%d-dwconv' % layer_id
conv_layer['name'] = 'layer%d-dwconv' % layer_id
conv_layer['type'] = 'ConvolutionDepthwise'
convolution_param = OrderedDict()
convolution_param['num_output'] = prev_filters
convolution_param['kernel_size'] = block['size']
if block['pad'] == '1':
convolution_param['pad'] = str(int(convolution_param['kernel_size'])/2)
convolution_param['stride'] = block['stride']
if block['batch_normalize'] == '1':
convolution_param['bias_term'] = 'false'
else:
convolution_param['bias_term'] = 'true'
conv_layer['convolution_param'] = convolution_param
layers.append(conv_layer)
bottom = conv_layer['top']
if block['batch_normalize'] == '1':
bn_layer = OrderedDict()
bn_layer['bottom'] = bottom
bn_layer['top'] = bottom
if 'name' in block:
bn_layer['name'] = '%s-bn' % block['name']
else:
bn_layer['name'] = 'layer%d-bn' % layer_id
bn_layer['type'] = 'BatchNorm'
batch_norm_param = OrderedDict()
batch_norm_param['use_global_stats'] = 'true'
bn_layer['batch_norm_param'] = batch_norm_param
layers.append(bn_layer)
scale_layer = OrderedDict()
scale_layer['bottom'] = bottom
scale_layer['top'] = bottom
if 'name' in block:
scale_layer['name'] = '%s-scale' % block['name']
else:
scale_layer['name'] = 'layer%d-scale' % layer_id
scale_layer['type'] = 'Scale'
scale_param = OrderedDict()
scale_param['bias_term'] = 'true'
scale_layer['scale_param'] = scale_param
layers.append(scale_layer)
if block['activation'] != 'linear':
relu_layer = OrderedDict()
relu_layer['bottom'] = bottom
relu_layer['top'] = bottom
if 'name' in block:
relu_layer['name'] = '%s-act' % block['name']
else:
relu_layer['name'] = 'layer%d-act' % layer_id
relu_layer['type'] = 'ReLU'
if block['activation'] == 'leaky':
relu_param = OrderedDict()
relu_param['negative_slope'] = '0.1'
relu_layer['relu_param'] = relu_param
layers.append(relu_layer)
topnames[layer_id] = bottom
layer_id = layer_id+1
elif block['type'] == 'maxpool':
max_layer = OrderedDict()
max_layer['bottom'] = bottom
if 'name' in block:
max_layer['top'] = block['name']
max_layer['name'] = block['name']
else:
max_layer['top'] = 'layer%d-maxpool' % layer_id
max_layer['name'] = 'layer%d-maxpool' % layer_id
max_layer['type'] = 'Pooling'
pooling_param = OrderedDict()
pooling_param['stride'] = block['stride']
pooling_param['pool'] = 'MAX'
if (int(block['size']) - int(block['stride'])) % 2 == 0:
pooling_param['kernel_size'] = block['size']
pooling_param['pad'] = str((int(block['size'])-1)/2)
if (int(block['size']) - int(block['stride'])) % 2 == 1:
pooling_param['kernel_size'] = str(int(block['size']) + 1)
pooling_param['pad'] = str((int(block['size']) + 1)/2)
max_layer['pooling_param'] = pooling_param
layers.append(max_layer)
bottom = max_layer['top']
topnames[layer_id] = bottom
layer_id = layer_id+1
elif block['type'] == 'avgpool':
avg_layer = OrderedDict()
avg_layer['bottom'] = bottom
if 'name' in block:
avg_layer['top'] = block['name']
avg_layer['name'] = block['name']
else:
avg_layer['top'] = 'layer%d-avgpool' % layer_id
avg_layer['name'] = 'layer%d-avgpool' % layer_id
avg_layer['type'] = 'Pooling'
pooling_param = OrderedDict()
pooling_param['kernel_size'] = 7
pooling_param['stride'] = 1
pooling_param['pool'] = 'AVE'
avg_layer['pooling_param'] = pooling_param
layers.append(avg_layer)
bottom = avg_layer['top']
topnames[layer_id] = bottom
layer_id = layer_id+1
elif block['type'] == 'region':
if True:
region_layer = OrderedDict()
region_layer['bottom'] = bottom
if 'name' in block:
region_layer['top'] = block['name']
region_layer['name'] = block['name']
else:
region_layer['top'] = 'layer%d-region' % layer_id
region_layer['name'] = 'layer%d-region' % layer_id
region_layer['type'] = 'Region'
region_param = OrderedDict()
region_param['anchors'] = block['anchors'].strip()
region_param['classes'] = block['classes']
region_param['num'] = block['num']
region_layer['region_param'] = region_param
layers.append(region_layer)
bottom = region_layer['top']
topnames[layer_id] = bottom
layer_id = layer_id + 1
elif block['type'] == 'route':
route_layer = OrderedDict()
layer_name = str(block['layers']).split(',')
#print(layer_name[0])
bottom_layer_size = len(str(block['layers']).split(','))
#print(bottom_layer_size)
if(1 == bottom_layer_size):
prev_layer_id = layer_id + int(block['layers'])
bottom = topnames[prev_layer_id]
#topnames[layer_id] = bottom
route_layer['bottom'] = bottom
if(2 == bottom_layer_size):
prev_layer_id1 = layer_id + int(layer_name[0])
#print(prev_layer_id1)
prev_layer_id2 = int(layer_name[1]) + 1
print(topnames)
bottom1 = topnames[prev_layer_id1]
bottom2 = topnames[prev_layer_id2]
route_layer['bottom'] = [bottom1, bottom2]
if(4 == bottom_layer_size):
prev_layer_id1 = layer_id + int(layer_name[0])
prev_layer_id2 = layer_id + int(layer_name[1])
prev_layer_id3 = layer_id + int(layer_name[2])
prev_layer_id4 = layer_id + int(layer_name[3])
bottom1 = topnames[prev_layer_id1]
bottom2 = topnames[prev_layer_id2]
bottom3 = topnames[prev_layer_id3]
bottom4 = topnames[prev_layer_id4]
route_layer['bottom'] = [bottom1, bottom2,bottom3,bottom4]
if 'name' in block:
route_layer['top'] = block['name']
route_layer['name'] = block['name']
else:
route_layer['top'] = 'layer%d-route' % layer_id
route_layer['name'] = 'layer%d-route' % layer_id
route_layer['type'] = 'Concat'
print(route_layer)
layers.append(route_layer)
bottom = route_layer['top']
print(layer_id)
topnames[layer_id] = bottom
layer_id = layer_id + 1
elif block['type'] == 'upsample':
upsample_layer = OrderedDict()
print(block['stride'])
upsample_layer['bottom'] = bottom
if 'name' in block:
upsample_layer['top'] = block['name']
upsample_layer['name'] = block['name']
else:
upsample_layer['top'] = 'layer%d-upsample' % layer_id
upsample_layer['name'] = 'layer%d-upsample' % layer_id
upsample_layer['type'] = 'Upsample'
upsample_param = OrderedDict()
upsample_param['scale'] = block['stride']
upsample_layer['upsample_param'] = upsample_param
print(upsample_layer)
layers.append(upsample_layer)
bottom = upsample_layer['top']
print('upsample:',layer_id)
topnames[layer_id] = bottom
layer_id = layer_id + 1
elif block['type'] == 'shortcut':
prev_layer_id1 = layer_id + int(block['from'])
prev_layer_id2 = layer_id - 1
bottom1 = topnames[prev_layer_id1]
bottom2= topnames[prev_layer_id2]
shortcut_layer = OrderedDict()
shortcut_layer['bottom'] = [bottom1, bottom2]
if 'name' in block:
shortcut_layer['top'] = block['name']
shortcut_layer['name'] = block['name']
else:
shortcut_layer['top'] = 'layer%d-shortcut' % layer_id
shortcut_layer['name'] = 'layer%d-shortcut' % layer_id
shortcut_layer['type'] = 'Eltwise'
eltwise_param = OrderedDict()
eltwise_param['operation'] = 'SUM'
shortcut_layer['eltwise_param'] = eltwise_param
layers.append(shortcut_layer)
bottom = shortcut_layer['top']
if block['activation'] != 'linear':
relu_layer = OrderedDict()
relu_layer['bottom'] = bottom
relu_layer['top'] = bottom
if 'name' in block:
relu_layer['name'] = '%s-act' % block['name']
else:
relu_layer['name'] = 'layer%d-act' % layer_id
relu_layer['type'] = 'ReLU'
if block['activation'] == 'leaky':
relu_param = OrderedDict()
relu_param['negative_slope'] = '0.1'
relu_layer['relu_param'] = relu_param
layers.append(relu_layer)
topnames[layer_id] = bottom
layer_id = layer_id + 1
elif block['type'] == 'connected':
fc_layer = OrderedDict()
fc_layer['bottom'] = bottom
if 'name' in block:
fc_layer['top'] = block['name']
fc_layer['name'] = block['name']
else:
fc_layer['top'] = 'layer%d-fc' % layer_id
fc_layer['name'] = 'layer%d-fc' % layer_id
fc_layer['type'] = 'InnerProduct'
fc_param = OrderedDict()
fc_param['num_output'] = int(block['output'])
fc_layer['inner_product_param'] = fc_param
layers.append(fc_layer)
bottom = fc_layer['top']
if block['activation'] != 'linear':
relu_layer = OrderedDict()
relu_layer['bottom'] = bottom
relu_layer['top'] = bottom
if 'name' in block:
relu_layer['name'] = '%s-act' % block['name']
else:
relu_layer['name'] = 'layer%d-act' % layer_id
relu_layer['type'] = 'ReLU'
if block['activation'] == 'leaky':
relu_param = OrderedDict()
relu_param['negative_slope'] = '0.1'
relu_layer['relu_param'] = relu_param
layers.append(relu_layer)
topnames[layer_id] = bottom
layer_id = layer_id+1
else:
print('unknow layer type %s ' % block['type'])
topnames[layer_id] = bottom
layer_id = layer_id + 1
net_info = OrderedDict()
net_info['props'] = props
net_info['layers'] = layers
return net_info
if name == 'main': import sys if len(sys.argv) != 5: print('try:') print('python darknet2caffe.py tiny-yolo-voc.cfg tiny-yolo-voc.weights tiny-yolo-voc.prototxt tiny-yolo-voc.caffemodel') print('') print('please add name field for each block to avoid generated name') exit()
cfgfile = sys.argv[1]
#net_info = cfg2prototxt(cfgfile)
#print_prototxt(net_info)
#save_prototxt(net_info, 'tmp.prototxt')
weightfile = sys.argv[2]
protofile = sys.argv[3]
caffemodel = sys.argv[4]
darknet2caffe(cfgfile, weightfile, protofile, caffemodel)
------------------------------------
运行错误的整个日志为:
------------------------------------ unknow layer type yolo OrderedDict([('bottom', 'layer16-conv'), ('top', 'layer20-route'), ('name', 'layer20-route'), ('type', 'Concat')]) 20 2 OrderedDict([('bottom', 'layer21-conv'), ('top', 'layer22-upsample'), ('name', 'layer22-upsample'), ('type', 'Upsample'), ('upsample_param', OrderedDict([('scale', '2')]))]) upsample: 22 {1: 'layer1-conv', 2: 'layer2-maxpool', 3: 'layer3-conv', 4: 'layer4-maxpool', 5: 'layer5-conv', 6: 'layer6-maxpool', 7: 'layer7-conv', 8: 'layer8-maxpool', 9: 'layer9-conv', 10: 'layer10-conv', 11: 'layer11-conv', 12: 'layer12-maxpool', 13: 'layer13-conv', 14: 'layer14-maxpool', 15: 'layer15-conv', 16: 'layer16-conv', 17: 'layer17-conv', 18: 'layer18-conv', 19: 'layer18-conv', 20: 'layer20-route', 21: 'layer21-conv', 22: 'layer22-upsample'} OrderedDict([('bottom', ['layer22-upsample', 'layer9-conv']), ('top', 'layer23-route'), ('name', 'layer23-route'), ('type', 'Concat')]) 23 unknow layer type yolo
<_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "Darkent2Caffe" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> input: "data" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> input_dim: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> input_dim: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> input_dim: 416 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> input_dim: 416 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "data" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 16 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer1-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer1-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer1-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer1-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer2-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer2-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Pooling" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pooling_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pool: MAX <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer2-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 32 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer3-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer3-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer3-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer3-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer4-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer4-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Pooling" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pooling_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pool: MAX <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer4-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 64 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer5-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer5-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer5-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer5-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer6-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer6-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Pooling" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pooling_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pool: MAX <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer6-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 128 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer7-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer7-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer7-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer7-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer8-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer8-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Pooling" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pooling_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pool: MAX <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer8-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 256 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer9-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer9-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer9-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 128 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer10-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer10-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer10-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer10-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 256 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer11-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer11-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer11-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer11-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer12-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer12-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Pooling" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pooling_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pool: MAX <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer12-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 512 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer13-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer13-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer13-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer13-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer14-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer14-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Pooling" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pooling_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pool: MAX <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer14-maxpool" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 1024 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer15-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer15-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer15-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer15-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 256 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer16-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer16-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer16-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 512 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer17-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer17-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer17-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer17-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer18-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer18-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 36 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer16-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer20-route" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer20-route" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Concat" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer20-route" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 128 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer21-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer21-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer21-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer21-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer22-upsample" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer22-upsample" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Upsample" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> upsample_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale: 2 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer22-upsample" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer9-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer23-route" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer23-route" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Concat" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer23-route" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 256 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 3 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 1.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: false <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer24-bn" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "BatchNorm" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> batch_norm_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> use_global_stats: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer24-scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Scale" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> scale_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer24-act" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "ReLU" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> relu_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> negative_slope: 0.1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> layer { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bottom: "layer24-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> top: "layer25-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> name: "layer25-conv" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> type: "Convolution" <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> convolution_param { <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> num_output: 36 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> kernel_size: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> pad: 0.5 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> stride: 1 <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> bias_term: true <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } <_io.TextIOWrapper name='yolov3-tiny.prototxt' mode='w' encoding='UTF-8'> } WARNING: Logging before InitGoogleLogging() is written to STDERR E0226 10:36:33.943483 7464 common.cpp:114] Cannot create Cublas handle. Cublas won't be available. I0226 10:36:33.947749 7464 net.cpp:51] Initializing net from parameters: state { phase: TEST level: 0 } I0226 10:36:33.947772 7464 net.cpp:255] Network initialization done. Traceback (most recent call last): File "yolov3_darknet2caffe.py", line 534, in看上去是你的文件格式有问题,转换上是没问题的,你检查一下你的python。看一下为什么你生成prototxt里面pad的值还有0.5这种参数,在我的理解是这个参数都是int的。多多baidu和google一下吧!
好的。。我用的python3.5,Ubuntu16.04。。python只能使用python2吗?还是python3也可以?
应该是可以的,我没用python3。我这个代码用的是python2.7 + caffe + pytorch0.4的环境。
好的。。谢谢您,我再看一下。。
在python3环境下,需要修改convolution_param['pad'] = str(int(convolution_param['kernel_size'])/2) 为 convolution_param['pad'] = str(int(int(convolution_param['kernel_size'])/2)),否则产生的PAD可能为浮点。我也觉得很奇怪,难道python2.7没有个问题吗?
lz应该用了python3 我Python3也是这样 雪坑
Get the same error ! With python3..
Solved by setup my config with Ubuntu 16.04, cuda 8.0, Python 2.7 and pytorch 0.4.
请问解决了吗
the same issue in python 3. "需要修改convolution_param['pad'] = str(int(convolution_param['kernel_size'])/2) 为 convolution_param['pad'] = str(int(int(convolution_param['kernel_size'])/2)),否则产生的PAD可能为浮点" can not fixed the issue
the same issue in python 3. "需要修改convolution_param['pad'] = str(int(convolution_param['kernel_size'])/2) 为 convolution_param['pad'] = str(int(int(convolution_param['kernel_size'])/2)),否则产生的PAD可能为浮点" can not fixed the issue
you can change the prototxt.py:
# print >> fp, 'name: \"%s\"' % props['name']
print('name: \"%s\"' % props['name'],file = fp)
change every "print" like this.
hi fanhongyuan "you can change the prototxt.py: print >> fp, 'name: \"%s\"' % props['name'] print('name: \"%s\"' % props['name'],file = fp) change every "print" like this."
I have no idea.
hi fanhongyuan "you can change the prototxt.py: print >> fp, 'name: "%s"' % props['name'] print('name: "%s"' % props['name'],file = fp) change every "print" like this."
=========>it works, thanks.
but i meet another issue :
"[libprotobuf ERROR google/protobuf/text_format.cc:298] Error parsing text-format caffe.NetParameter: 3:12: Expected integer, got: "1" WARNING: Logging before InitGoogleLogging() is written to STDERR F0807 09:11:34.854478 17666 upgrade_proto.cpp:88] Check failed: ReadProtoFromTextFile(param_file, param) Failed to parse NetParameter file: yolov3_hand.prototxt Check failure stack trace: "
yolov3_hand.prototxt==>
name: "Darkent2Caffe"
input: "data" input_dim: "1" input_dim: "3" input_dim: "416" input_dim: "416" I have no idea.
there is something wrong with your prototxt, you should check it.
楼主我也是这样的问题问下您该如何解决呢
<_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bias_term: true <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer158-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer158-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer158-act" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "ReLU" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> relu_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> negative_slope: 0.1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer158-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "Convolution" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> convolution_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> num_output: 512 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> kernel_size: 1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> pad: 0 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> stride: 1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bias_term: false <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer159-bn" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "BatchNorm" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> batch_norm_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> use_global_stats: true <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer159-scale" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "Scale" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> scale_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bias_term: true <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer159-act" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "ReLU" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> relu_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> negative_slope: 0.1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer159-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "Convolution" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> convolution_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> num_output: 1024 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> kernel_size: 3 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> pad: 1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> stride: 1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bias_term: false <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer160-bn" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "BatchNorm" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> batch_norm_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> use_global_stats: true <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer160-scale" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "Scale" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> scale_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bias_term: true <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer160-act" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "ReLU" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> relu_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> negative_slope: 0.1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> layer { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bottom: "layer160-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> top: "layer161-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> name: "layer161-conv" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> type: "Convolution" <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> convolution_param { <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> num_output: 255 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> kernel_size: 1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> pad: 0 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> stride: 1 <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> bias_term: true <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } <_io.TextIOWrapper name='prototxt/yolov4.prototxt' mode='w' encoding='ANSI_X3.4-1968'> } WARNING: Logging before InitGoogleLogging() is written to STDERR I0817 20:51:46.393153 20524 net.cpp:53] Initializing net from parameters: state { phase: TEST level: 0 } I0817 20:51:46.393208 20524 net.cpp:257] Network initialization done. Traceback (most recent call last): File "darknet2caffe.py", line 519, in
hi, ChenYingPeng 我运行了你的darknet2caffe代码,然后遇到了这个错误: ------------
Traceback (most recent call last): File "darknet2caffe.py", line 429, in
darknet2caffe(cfgfile, weightfile, protofile, caffemodel)
File "darknet2caffe.py", line 57, in darknet2caffe
start = load_conv_bn2caffe(buf, start, params[conv_layer_name], params[bn_layer_name], params[scale_layer_name])
KeyError: 'layer1-conv'
------------ 我加载的是yolov3-tiny版模型。
请问是哪里出现问题了吗?