# Create train net.
net = caffe.NetSpec()

params_str['train'] = True
params_str['label_txt'] = train_txt
net.data, net.label = L.Python(name="data", ntop=2, python_param={
  'module': "pythonLayer",
  'layer':  "DataLayer",
  'param_str': str(params_str)
})
body_layer = WarpctcNetBody(net, data_layer=net.data)
ctc_kwargs = {
  'loss_weight': [1.0]
}
net.ctc_loss = L.CtcLoss(body_layer, net.label, blank_label=10, alphabet_size=11, time_step=80, **ctc_kwargs)
with open(train_net_file, 'w') as f:
  print('name: "{}_train"'.format(model_name), file=f)
  print(net.to_proto(), file=f)
shutil.copy(train_net_file, job_dir)




# Create test net
net = caffe.NetSpec()

params_str['train'] = False
params_str['label_txt'] = test_txt
net.data, net.label = L.Python(name="data", ntop=2, python_param={
  'module': "pythonLayer",
Beispiel #2
0
net = caffe.NetSpec()

params_str['train'] = True
params_str['label_txt'] = train_txt
net.data, net.label = L.Python(name="data",
                               ntop=2,
                               python_param={
                                   'module': "pythonLayer",
                                   'layer': "WarpctcDataLayer",
                                   'param_str': str(params_str)
                               })
body_layer = WarpctcNetBody(net, net.data, resize_width, num_classes)
ctc_kwargs = {'loss_weight': [1.0]}
net.ctc_loss = L.CtcLoss(body_layer.fc1,
                         net.label,
                         blank_label=blank_label,
                         alphabet_size=11,
                         time_step=resize_width,
                         **ctc_kwargs)
with open(train_net_file, 'w') as f:
    print('name: "{}_train"'.format(model_name), file=f)
    print(net.to_proto(), file=f)
shutil.copy(train_net_file, job_dir)

# Create test net
net = caffe.NetSpec()

params_str['train'] = False
params_str['label_txt'] = test_txt
net.data, net.label = L.Python(name="data",
                               ntop=2,
                               python_param={