|
- from mindspore import dtype, Tensor, context, export, load_checkpoint
- from mindspore import dtype as mstype
- from mindspore.train.serialization import load_checkpoint, load_param_into_net
- import src.models as models
- import src.model_utils.tools as tools
- from src.model_utils.config import config
- from src.model_utils.moxing_adapter import moxing_wrapper
- import numpy as np
- import argparse
- import os
- import moxing as mox
-
- @moxing_wrapper()
- def export_model(ckpt_path):
- print("查看文件"+ ckpt_path+"下有哪些东西122" )
- print('aaa ********'+ os.path.abspath(ckpt_path))
- size = os.stat(ckpt_path).st_size
- print(f'The size of {ckpt_path} is {size} bytes.')
- print("查看文件"+ ckpt_path+"下有哪些东西 结束111" )
-
- print(" exp.main() 中 ckpt_path=",ckpt_path )
- print(" exp.main() 中 mindir_file_name=",config.mindir_file_name )
- print(" exp.main() 中 file_format=",config.file_format )
- print(" exp.main() 中 batch_size=",config.batch_size )
- config.model_class = tools.module_to_dict(models)[config.model]
- network = config.model_class(config.rgb_max, config.batchNorm)
- network.set_train(False)
- param_dict = load_checkpoint(ckpt_path)
- load_param_into_net(network, param_dict)
- flow_shape = [3, 3, config.crop_size[0], config.crop_size[1]]
- window_image = Tensor(np.zeros(flow_shape), mstype.float32)
- export(network, window_image, file_name=config.mindir_file_name, file_format=config.file_format)
-
-
- print("查看文件/home/work/user-job-dir/mindir/flownet2_20.mindir 下有哪些东西122" )
- print('aaa ********'+ os.path.abspath('/home/work/user-job-dir/mindir/flownet2_20.mindir'))
- size = os.stat('/home/work/user-job-dir/mindir/flownet2_20.mindir').st_size
- ckpt_pathhhh='/home/work/user-job-dir/mindir/flownet2_20.mindir'
- print(f'The size of {ckpt_pathhhh} is {size} bytes.')
-
- def main():
- context.set_context(device_id=0, mode=context.GRAPH_MODE, device_target="GPU")
- # export_model(ckpt_path=config.pre_trained_ckpt_path)
- export_model(ckpt_path=config.obs_data_url)
-
- if __name__ == '__main__':
- parser = argparse.ArgumentParser(description='MindSpore Lenet Example')
-
- # define 2 parameters for running on modelArts
- # data_url,train_url是固定用于在modelarts上训练的参数,表示数据集的路径和输出模型的路径
- parser.add_argument('--data_url',
- help='path to training/inference dataset folder' )
-
- parser.add_argument('--train_url',
- help='model folder to save/load' )
-
- parser.add_argument('--ckpt_url',
- help='model folder to save/load' )
-
- parser.add_argument('--ASCEND_DEVICE_ID',
- help='model folder to save/load' )
-
- parser.add_argument('--device_target',
- help='model folder to save/load' )
-
- args = parser.parse_args()
- obs_ckpt_url = '/home/work/user-job-dir/ckpt/flownet2_20.ckpt'
- try:
- mox.file.copy(args.ckpt_url, obs_ckpt_url)
- print("Successfully Download {} to {}".format(args.ckpt_url,
- obs_ckpt_url))
- except Exception as e:
- print('moxing download {} to {} failed: '.format(
- args.data_url, obs_ckpt_url) + str(e))
- main()
-
-
- obs_mindir_url ="/home/work/user-job-dir/mindir/"
- try:
- mox.file.copy_parallel(obs_mindir_url, args.train_url)
- print("Successfully Upload {} to {}".format(obs_mindir_url,
- args.train_url))
- except Exception as e:
- print('moxing upload {} to {} failed: '.format(obs_mindir_url,
- args.train_url) + str(e))
|