pointnet的logging模块
一、logging模块操作
1、日志内容导入logger
import logging
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)
logger.info("Start print log")
logger.debug("Do something")
logger.warning("Something maybe fail.")
logger.info("Finish")
2、日志内容导入logger,另外logger内容导入新创建的文本文档log.txt
import logging
logger = logging.getLogger(__name__) #命名日志内容
logger.setLevel(level = logging.INFO)
handler = logging.FileHandler('log.txt') #创建句柄,并命名句柄
handler.setLevel(logging.INFO)
handler.setFormatter(logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'))
logger.addHandler(handler) # 将logger日志内容加入句柄handler
logger.info("Start print log")
logger.debug("Do something")
logger.warning("Something maybe fail.")
logger.info("Finish")
3、对比图
二、Pointnet中logging模块的操作
1、创建目录
'''LOG'''
def log_string(str):
logger.info(str)
print(str)
import parser1
args = parser1.parse_args() #原文代码为args = parse_args()
logger = logging.getLogger("Model")
logger.setLevel(logging.INFO)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
file_handler = logging.FileHandler('%s/%s.txt' % (log_dir, args.model))
file_handler.setLevel(logging.INFO)
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
log_string('PARAMETER ...')
log_string(args)
2、为便于理解,自建parser1模块内容参考
import argparse
def parse_args():
parser = argparse.ArgumentParser('PointNet')
parser.add_argument('--batch_size',type=int,default=24,help='batch size in training [default:24]')
parser.add_argument('--model', default='pointnet_cls', help='model name [default: pointnet_cls]')
parser.add_argument('--epoch', default=200, type=int, help='number of epoch in training [default: 200]')
parser.add_argument('--learning_rate', default=0.001, type=float, help='learning rate in training [default: 0.001]')
parser.add_argument('--gpu', type=str, default='0', help='specify gpu device [default: 0]')
parser.add_argument('--num_point', type=int, default=1024, help='Point Number [default: 1024]')
parser.add_argument('--optimizer', type=str, default='Adam', help='optimizer for training [default: Adam]')
parser.add_argument('--log_dir', type=str, default=None, help='experiment root')
parser.add_argument('--decay_rate', type=float, default=1e-4, help='decay rate [default: 1e-4]')
parser.add_argument('--normal', action='store_true', default=False,
help='Whether to use normal information [default: False]')
# 采用parser对象的parse_args函数获取解析的参数
return parser.parse_args()
args = parse_args()
print(args)