def initializeOrRestore(self): self.ckptDir = os.path.join(self.checkpoint_dir, self.dataset.name) self.ckptPrefix = os.path.join(self.ckptDir, self.name, self.name) vgg_ckpt_file = os.path.join(self.ckptDir, 'vgg_16', 'vgg_16.ckpt') mt_ckpt_file = layers.latest_checkpoint(os.path.join(self.ckptDir, 'mt')) # ckpt_file = layers.latest_checkpoint(os.path.join(self.ckptDir, 'vgg_16', 'vgg_16.ckpt')) globalVars = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES) if vgg_ckpt_file is not None and tf.train.checkpoint_exists(vgg_ckpt_file): varsInCkpt, varsNotInCkpt = layers.scan_checkpoint_for_vars(vgg_ckpt_file, globalVars) if len(varsInCkpt) != 0: restorationSaver = tf.train.Saver(varsInCkpt) self.sess.run(tf.report_uninitialized_variables(var_list=varsInCkpt)) restorationSaver.restore(self.sess, vgg_ckpt_file) else: varsNotInCkpt = globalVars if mt_ckpt_file is not None and tf.train.checkpoint_exists(mt_ckpt_file): varsInCkpt, varsNotInCkpt = layers.scan_checkpoint_for_vars(mt_ckpt_file, varsNotInCkpt) varsInCkpt, varsNotInCkpt = layers.replaceVarInListsByName(varsInCkpt, varsNotInCkpt, 'fc6') if len(varsInCkpt) != 0: restorationSaver = tf.train.Saver(varsInCkpt) self.sess.run(tf.report_uninitialized_variables(var_list=varsInCkpt)) restorationSaver.restore(self.sess, mt_ckpt_file) else: varsNotInCkpt = globalVars self.saver = tf.train.Saver() self.sess.run(tf.group(tf.variables_initializer(varsNotInCkpt), tf.local_variables_initializer()))
def initializeOrRestore(self): self.ckptDir = os.path.join(self.checkpoint_dir, self.dataset.name, self.name) self.ckptPrefix = os.path.join(self.ckptDir, self.name) globalVars = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES) ckpt_file = layers.latest_checkpoint(self.ckptDir, "checkpoint") if ckpt_file is not None and tf.train.checkpoint_exists(ckpt_file): varsInCkpt, varsNotInCkpt = layers.scan_checkpoint_for_vars(ckpt_file, globalVars) if len(varsInCkpt) != 0: restorationSaver = tf.train.Saver(varsInCkpt) self.sess.run(tf.report_uninitialized_variables(var_list=varsInCkpt)) restorationSaver.restore(self.sess, ckpt_file) else: varsNotInCkpt = globalVars self.saver = tf.train.Saver() self.sess.run(tf.group(tf.variables_initializer(varsNotInCkpt), tf.local_variables_initializer()))
def initializeOrRestore(self): self.ckptDir = os.path.join(self.checkpoint_dir, self.dataset.name, self.name) self.ckptPrefix = os.path.join(self.ckptDir, self.name) globalVars = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES) ckpt_file = layers.latest_checkpoint(self.ckptDir, "checkpoint") if ckpt_file is not None and tf.train.checkpoint_exists(ckpt_file): varsInCkpt, varsNotInCkpt = layers.scan_checkpoint_for_vars( ckpt_file, globalVars) if len(varsInCkpt) != 0: restorationSaver = tf.train.Saver(varsInCkpt) self.sess.run( tf.report_uninitialized_variables(var_list=varsInCkpt)) restorationSaver.restore(self.sess, ckpt_file) else: varsNotInCkpt = globalVars self.saver = tf.train.Saver() self.sess.run( tf.group(tf.variables_initializer(varsNotInCkpt), tf.local_variables_initializer()))