当前位置:   article > 正文

python中在一个脚本调用另一个脚本类中函数变量值_python 一个类获取另一个类的self变量

python 一个类获取另一个类的self变量

1 申明一个类变量 如 value

2 赋值 self.value = 需要的函数值

3 在另一个脚本中通过类的实例对象调用

 

  1. class Visualizer:
  2. # To obtain the Position and Rotation Michael 20210511
  3. posrot = []
  4. def __init__(self):
  5. args = DatasetCatalog.get(cfg.test.dataset)
  6. self.ann_file = args['ann_file']
  7. self.coco = coco.COCO(self.ann_file)
  8. # def visualize(self, output, batch):
  9. def visualize(self, output, batch):
  10. inp = img_utils.unnormalize_img(batch['inp'][0], mean, std).permute(1, 2, 0)
  11. kpt_2d = output['kpt_2d'][0].detach().cpu().numpy()
  12. img_id = int(batch['img_id'][0])
  13. anno = self.coco.loadAnns(self.coco.getAnnIds(imgIds=img_id))[0]
  14. kpt_3d = np.concatenate([anno['fps_3d'], [anno['center_3d']]], axis=0)
  15. K = np.array(anno['K'])
  16. pose_gt = np.array(anno['pose'])
  17. pose_pred = pvnet_pose_utils.pnp(kpt_3d, kpt_2d, K) # Position and Rotation here Michael
  18. # To have the value by self.* Michael 20210511
  19. self.posrot = pose_pred
  20. # print("fun")
  21. # print(pose_pred)

调用pose_pred值

 

  1. def run_visualize():
  2. from lib.networks import make_network
  3. from lib.datasets import make_data_loader
  4. from lib.utils.net_utils import load_network
  5. import tqdm
  6. import torch
  7. from lib.visualizers import make_visualizer
  8. network = make_network(cfg).cuda()
  9. load_network(network, cfg.model_dir, resume=cfg.resume, epoch=cfg.test.epoch)
  10. network.eval()
  11. data_loader = make_data_loader(cfg, is_train=False) # here Michael
  12. visualizer = make_visualizer(cfg)
  13. for batch in tqdm.tqdm(data_loader):
  14. for k in batch:
  15. if k != 'meta':
  16. batch[k] = batch[k].cuda() #
  17. with torch.no_grad():
  18. output = network(batch['inp'], batch)
  19. visualizer.visualize(output, batch)
  20. # get position and rotation Michael 20210511
  21. # print("poem")
  22. print(visualizer.posrot)

调用打印这个值

 

 

 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/423516
推荐阅读
相关标签
  

闽ICP备14008679号