-
Notifications
You must be signed in to change notification settings - Fork 87
Description
Hi, In 2D-Motion-Retargeting, inappropriate dependency versioning constraints can cause risks.
Below are the dependencies and version constraints that the project is using
numpy==1.16.2
scipy==1.1.0==1.1.0
tensorboardX==1.2
torch==0.4.1
tqdm==4.15.0
imageio==2.3.0
opencv-python==3.4.4.19
sklearn==0.0
scikit-learn==0.21.3
matplotlib==3.1.1
The version constraint == will introduce the risk of dependency conflicts because the scope of dependencies is too strict.
The version constraint No Upper Bound and * will introduce the risk of the missing API Error because the latest version of the dependencies may remove some APIs.
After further analysis, in this project,
The version constraint of dependency numpy can be changed to >=1.8.0,<=1.23.0rc3.
The version constraint of dependency scipy can be changed to >=0.12.0,<=1.7.3.
The version constraint of dependency tqdm can be changed to >=4.36.0,<=4.64.0.
The version constraint of dependency imageio can be changed to >=1.1-linux32,<=2.19.3.
The version constraint of dependency scikit-learn can be changed to >=0.15.0b1,<=0.21.3.
The above modification suggestions can reduce the dependency conflicts as much as possible,
and introduce the latest version as much as possible without calling Error in the projects.
The invocation of the current project includes all the following methods.
The calling methods from the numpy
numpy.linalg.norm
The calling methods from the scipy
scipy.ndimage.gaussian_filter1d
The calling methods from the tqdm
tqdm.tqdm tqdm.tqdm.set_postfix tqdm.tqdm.set_description
The calling methods from the imageio
imageio.get_writer
The calling methods from the scikit-learn
sklearn.manifold.TSNE sklearn.decomposition.PCA.fit_transform sklearn.decomposition.PCA sklearn.manifold.TSNE.fit_transform
The calling methods from the all methods
numpy.zeros_like net.to.to self.net.cross Encoder functional.visualization.interpolate_color matplotlib.pyplot.legend torch.nn.Upsample cv2.resize cv2.addWeighted.astype format functional.visualization.joints2image self.net.eval csv.DictReader handle2x self.augmentation torch.nn.LeakyReLU torch.nn.Dropout v2.args.path2.dataloder.dataset.preprocessing.unsqueeze interpolate_as_form tensorboardX.SummaryWriter.add_scalar torch.cat input2.detach.clone numpy.zeros_like.reshape sys.stdout.flush functional.motion.normalize_motion os.path.abspath json.load self.net.parameters loss_dcit.values input122.detach.clone sys.path.append clock.tick sklearn.decomposition.PCA numpy.save test torch.nn.MSELoss common.config.initialize input211.detach.clone motion.detach.cpu self.gen_aug_param jointDict.np.array.reshape np.stack torch.nn.Sequential numpy.linalg.norm info.np.array.reshape self.MixamoDatasetForFull.super.__init__ model.get_autoencoder.load_state_dict outputs.items math.degrees list numpy.rad2deg os.close torch.optim.Adam trans_motion2d img_iterps.append argparse.ArgumentParser.add_argument numpy.random.seed print csv.DictWriter motion_trans.reshape.reshape x1.self.body_encoder.repeat.reshape functional.visualization.visulize_motion_in_training.items copy.copy char_data.append sklearn.manifold.TSNE self.update_network model.get_autoencoder.mot_encoder time.time model.get_autoencoder.transfer model.get_autoencoder.to self.optimizer.step agent.agents.Agent2x param.keys x2.self.view_encoder.repeat csv.DictWriter.writerow min batch_motion.repeat os.listdir self.MixamoDatasetForView.super.__init__ mathutils.Vector torch.stack.append int self.preprocessing logfile.open.close numpy.max Decoder model.get_autoencoder vec_interpolate input1.detach.clone numpy.array.tolist torch.stack model.get_autoencoder.static_encoder self.AutoEncoder3x.super.__init__ self.logger.info functional.motion.postprocess_motion2d.to self.Agent2x.super.__init__ self.body_encoder.reshape motion_trans.torch.Tensor.unsqueeze nr_cv.labels.np.tile.reshape os.path.exists self.net.cross_with_triplet torch.device self.tripletloss v.item bounding_box np.array x1.self.view_encoder.repeat dataset.get_dataloader tqdm.tqdm.set_postfix bpy.ops.wm.read_homefile self.reset numpy.matmul math.cos x.split self.AutoEncoder2x.super.__init__ numpy.mean out.detach convpool self.net.cpu functional.motion.openpose2motion tensorboardX.SummaryWriter torch.utils.data.DataLoader self.Encoder.super.__init__ PIL.Image.fromarray torch.Tensor self.static_encoder sklearn.manifold.TSNE.fit_transform model.get_autoencoder.decoder super hasattr csv.DictWriter.writerows x1.self.view_encoder.repeat.repeat rgb.append functional.utils.TrainClock math.radians centers.centers.np.zeros.np.c_.reshape numpy.load enumerate x.self.body_encoder.repeat.repeat self.mot_encoder.reshape handle3x set_homefile h.lstrip.lstrip imageio.get_writer.close x2.self.body_encoder.repeat os.dup vec_interpolate.repeat x1.self.body_encoder.repeat motion.detach.cpu.numpy heatmaps.np.stack.transpose.append json.dump next isinstance self.net.cpu.state_dict c1.repeat.repeat os.makedirs self.global_pool normalize_motion argparse.ArgumentParser.parse_args x.reshape.reshape x2.self.body_encoder.repeat.repeat scipy.ndimage.gaussian_filter1d.reshape cluster_motion numpy.zeros heatmaps.np.stack.transpose rotate_coordinates numpy.cross cv2.addWeighted.copy logging.basicConfig clock.tock self.net.train self.model functional.motion.normalize_motion_inv.reshape tqdm.tqdm numpy.tile torch.nn.ReflectionPad1d numpy.where os.path.split math.atan2 functional.motion.postprocess_motion2d out.detach.cpu.numpy self.net.to numpy.concatenate.append nr_sample.torch.linspace.to canvas_cropped.astype self.MixamoDatasetForSkeleton.super.__init__ numpy.savez matplotlib.pyplot.switch_backend math.sin input221.detach.clone dataset.datasets.MixamoDatasetForSkeleton cv2.ellipse2Poly cv2.addWeighted.fill argparse.ArgumentParser model.get_autoencoder.body_encoder data.reshape.reshape functional.motion.normalize_motion_inv normalize_motion_inv model.networks.AutoEncoder3x numpy.linspace pose2im_all self.merge_headers data.contiguous.view functional.motion.preprocess_motion2d torch.save bpy.ops.wm.save_as_mainfile self.conv1x1 get_joint3d_positions bpy.data.objects.remove nr_view.np.arange.reshape out.detach.cpu numpy.arange self.mot_encoder features.detach.cpu.numpy functional.utils.ensure_dirs numpy.eye ordered_dict.keys dataloder.dataset.preprocessing input21.detach.clone x2.self.view_encoder.repeat.reshape tensorboardX.SummaryWriter.add_image matplotlib.pyplot.figure v2.alpha.v1.alpha.repeat nr_anims.np.arange.reshape imageio.get_writer.append_data dataset.MixamoDatasetForFull x3.self.view_encoder.repeat matplotlib.cm.rainbow sum.backward join model.append Config scipy.ndimage.gaussian_filter1d len motion.detach.cpu.numpy.reshape sorted name.data.to glob.glob features.detach.cpu.numpy.reshape.detach numpy.cos input12.detach.clone functional.visualization.visulize_motion_in_training x.self.body_encoder.repeat functional.utils.ensure_dir open dataset.MixamoDatasetForFull.get_cluster_data main numpy.ones scipy.ndimage.gaussian_filter1d.append numpy.std features.detach.cpu np.stack.append agent.get_training_agent torch.load data.shape.data.shape.data.contiguous.view.to agent.get_training_agent.train_func functional.visualization.motion2video tqdm.tqdm.set_description bpy.context.scene.frame_set pad_to_16x functional.motion.get_local3d nr_char.np.arange.reshape self.decoder self.view_encoder.reshape x.self.view_encoder.repeat matplotlib.pyplot.scatter numpy.stack tsne_on_pca functional.utils.cycle model.get_autoencoder.view_encoder cv2.circle range self.preprocessing.detach name.split imageio.get_writer json2npy numpy.random.uniform logging.getLogger x1.self.view_encoder.repeat.reshape numpy.load.copy ValueError get_joint3d_positions.extend clear_scene_and_import_fbx numpy.random.randint losses.items str agent.get_training_agent.update_learning_rate numpy.min dataset.datasets.MixamoDatasetForFull numpy.sin ensure_dir view_data.append torch.optim.lr_scheduler.ExponentialLR interpolate functional.visualization.hex2rgb agent.get_training_agent.save_network self.body_encoder os.open input121.detach.clone functional.motion.trans_motion3d torch.nn.Conv1d functional.motion.trans_motion_inv self.mse cv2.fillConvexPoly alphas.alpha.v2.alpha.v1.alpha.torch.cat.repeat bpy.ops.import_scene.fbx model.get_autoencoder.transfer_three self._MixamoDatasetBase.super.__init__ self.Agent3x.super.__init__ v.item.items functional.motion.get_foot_vel self.forward os.path.join numpy.tile.reshape sum net.body_encoder.repeat agent.get_training_agent.val_func data.reshape.contiguous nr_mv.labels.np.tile.reshape matplotlib.pyplot.tight_layout gen_meanpose numpy.array trans_motion_inv np.save int.nr_anims.data.shape.np.linspace.tolist self.net.load_state_dict net.view_encoder.repeat torch.cuda.is_available self.static_encoder.reshape v.item.values cluster_body self.optimizer.zero_grad agent.agents.Agent3x dataset.datasets.MixamoDatasetForView model.networks.AutoEncoder2x cluster_view input112.detach.clone features.detach.cpu.numpy.reshape cv2.addWeighted save_image rgb2rgba numpy.random.choice shutil.rmtree x2.self.view_encoder.repeat.repeat self.build_item self.scheduler.step get_meanpose PIL.Image.fromarray.save x2.self.body_encoder.repeat.reshape dataset.get_meanpose functional.motion.trans_motion3d.reshape x1.self.body_encoder.repeat.repeat x2.self.static_encoder.repeat csv.DictWriter.writeheader torch.no_grad joints2image torch.from_numpy sklearn.decomposition.PCA.fit_transform v1.args.path1.dataloder.dataset.preprocessing.unsqueeze torch.nn.TripletMarginLoss functional.utils.pad_to_height input212.detach.clone collections.OrderedDict model.get_autoencoder.eval pose2im self.view_encoder nr_mc.labels.np.tile.reshape matplotlib.pyplot.savefig numpy.concatenate scipy.ndimage.gaussian_filter1d.detach self.Decoder.super.__init__ scipy.ndimage.gaussian_filter1d.copy torch.linspace
@developer
Could please help me check this issue?
May I pull a request to fix it?
Thank you very much.