def get_default_config(cls, dataset_cfgs, **args): config = cat_config() config.set_list("batch_sizes", args["batch_sizes"]) config.set_list("sizes", args["sizes"]) config.set("required_cnt", 6) iconf = cat_config() iconf.set("shuffle_flag", args.get("shuffle_flag", True)) config.add_child("iterator_config", iconf) gconf = cls.GIVER_FN.get_default_config(**args) config.add_child("giver_cfg", gconf) config.add_child("data_sources", dataset_cfgs) return config
def __init__(this): this.weight_tree = {} this.config_tree = cat_config() #Comming in V3 this.submodules = [] pass
def model_testing(this,inputs,network): cfg=cat_config(); cfg.set("network",network); cfg.set("weight_decay",1e-5); cfg.set("scope",this.PRFX); score,geometry=this.MODEL_FN(cfg).model(inputs,False); return score,geometry;
def pretrain_data_config(): config = cat_config(); config.add_child("onlineicdar", datasource_cfg( os.path.join(pathcfg.training_dataset_root,"icdar15-a-13-idx/a.index"),"icdar",5) ); config.add_child("onlinecoco", datasource_cfg( os.path.join(pathcfg.training_dataset_root, "all_tr_data/EAST_data/coco.index"), "icdar", 3) ); config.add_child("onlinericdar", datasource_cfg( os.path.join(pathcfg.training_dataset_root, "all_tr_data/EAST_data/icdar_15_13_0-90.index"), "icdar", 2) ); config.add_child("onlinesynth", datasource_cfg( os.path.join(pathcfg.training_dataset_root, "all_tr_data/EAST_data/synth_cat.index"), "icdar", 1) ); config.add_child("onlineustid", datasource_cfg( os.path.join(pathcfg.training_dataset_root, "all_tr_data/EAST_data/ustid-mk1.index"), "icdar", 1) ); # config.add_child("onlinemlt", datasource_cfg( # os.path.join(pathcfg.training_dataset_root,/mlt/a.index","mlt",5) # ); return config;
def datasource_cfg(path, type, importance,has_gt=1): config = cat_config(); config.set("index", path); config.set("type", type); config.set("importance", importance); config.set("has_gt",has_gt); return config;
def get_default_config(cls, dataset_cfgs, **args): config = cat_config() # A "Dummy" value. config.set_list("sizes", [9]) config.set_list("batch_sizes", [3]) config.set("required_cnt", 4 + 5 + 4) iconf = cat_config() iconf.set_item_wdef(args, "shuffle_flag", True) dp = dataset_cfgs.get(str, "dict_path") iconf.set("dict_path", dp) config.add_child("iterator_config", iconf) gconf = cls.GIVER_FN.get_default_config(dict_path=dp, **args) config.add_child("giver_cfg", gconf) config.add_child("data_sources", dataset_cfgs) return config
def tencent_rects_data_config(): config = cat_config(); config.add_child("online", datasource_cfg( os.path.join(pathcfg.training_dataset_root,"rects/a.index"),"icdar",5) ); return config;
def data_config(): config = cat_config() config.add_child( "rects", datasource_cfg( os.path.join(pathcfg.training_dataset_root, "rects/a.index"), "rects", 1)) return config
def get_default_config(_, **args): config = cat_config() config.set("with_ohem", args.get("with_ohem", 1)) config.set("with_instance_balance", args.get("with_instance_balance", 1)) config.set("rand_neg_samples", args.get("rand_neg_samples", 1. / 32)) config.set("hard_neg_samples", args.get("hard_neg_samples", 1. / 32)) config.set("rand_reg_samples", args.get("rand_reg_samples", 1. / 128)) config.set("hard_reg_samples", args.get("hard_reg_samples", 1. / 128)) return config
def mlt_data_config(): config = cat_config(); config.add_child("onlinemlt", datasource_cfg( os.path.join(pathcfg.training_dataset_root,"mlt/a.index"),"mlt",5) ); # config.add_child("onlinemlt", datasource_cfg( # os.path.join(pathcfg.training_dataset_root,/mlt/a.index","mlt",5) # ); return config;
def get_default_config(cls, **args): config = cat_config() anno_config = cat_config() anno_config.set("margin_dc", args.get("margin_dc", 0)) anno_config.set("min_text_size", args.get("min_text_size", 5)) config.add_child("anno_config", anno_config) config.set_list("random_scale", args.get("random_scale", [0.5, 0.8, 1, 1.5, 2])) config.set("background_ratio", args.get("background_ratio", 0)) config.set("geometry", args.get("geometry", "RBOX")) config.set("vis", args.get("vis", False)) config.set_list("mean", args.get("mean", [127, 127, 127])) config.set_list("var", args.get("var", [127, 127, 127])) config.set("featuremap_stride", args.get("featuremap_stride", 4)) config.set_list("rotate_ranges_max", args.get("rotate_ranges_max", [])) config.set_list("rotate_ranges_min", args.get("rotate_ranges_min", [])) config.set_list("rotate_ranges_freq", args.get("rotate_ranges_freq", [])) return config
def data_config(): config = cat_config() config.add_child( "onlinerctw", datasource_cfg( os.path.join(pathcfg.training_dataset_root, "rctw/a.index"), "rctw", 1)) config.add_child( "onlinemlt", datasource_cfg( os.path.join(pathcfg.training_dataset_root, "mlt/a.index"), "mlt", 1)) return config
def model_training(this,inputs,DEV): ecfg = cat_config(); ecfg.set("network", "densenet169"); ecfg.set("weight_decay", 1e-5); ecfg.set("scope", this.PRFX); with tf.device(DEV): score,geometry=this.MODEL_FN(ecfg).model([inputs[0]],True); cfg=this.LOSS_FN().get_default_config(with_instance_balance=1); dwd={}; dwd["0xca39_scope"]=this.PRFX; loss_fn=this.LOSS_FN().init_ret(cfg,dwd); [loss_cls,loss_box,loss_ang]=loss_fn.call([inputs[1],score,inputs[2],geometry,inputs[3],inputs[4]],True); return [loss_cls,loss_box,loss_ang];
def ln_data_config(): config = cat_config(); config.add_child("online", datasource_cfg( os.path.join(pathcfg.training_dataset_root,"all_line_tr_data/td500_train.index"),"icdar",5) ); config.add_child("online", datasource_cfg( os.path.join(pathcfg.training_dataset_root,"all_line_tr_data/rctw.index"),"icdar",3) ); config.add_child("online", datasource_cfg( os.path.join(pathcfg.training_dataset_root,"all_line_tr_data/sv1k_training.index"),"icdar",2) ); # config.add_child("onlinemlt", datasource_cfg( # os.path.join(pathcfg.training_dataset_root,/mlt/a.index","mlt",5) # ); return config;
def datasource_cfg(path, type, importance): config = cat_config() config.set("index", path) config.set("type", type) config.set("importance", importance) return config