Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel

main.py 3.8 KB

You have to be logged in to leave a comment. Sign In
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
  1. import argparse
  2. import os
  3. import platform
  4. from pathlib import Path
  5. from xlib import appargs as lib_appargs
  6. from xlib import os as lib_os
  7. # onnxruntime==1.8.0 requires CUDA_PATH_V11_2, but 1.8.1 don't
  8. # keep the code if they return that behaviour
  9. # if __name__ == '__main__':
  10. # if platform.system() == 'Windows':
  11. # if 'CUDA_PATH' not in os.environ:
  12. # raise Exception('CUDA_PATH should be set to environ')
  13. # # set environ for onnxruntime
  14. # # os.environ['CUDA_PATH_V11_2'] = os.environ['CUDA_PATH']
  15. # from modelhub.onnx import InsightFaceSwap
  16. # x = InsightFaceSwap(InsightFaceSwap.get_available_devices()[0])
  17. # import code
  18. # code.interact(local=dict(globals(), **locals()))
  19. def main():
  20. parser = argparse.ArgumentParser()
  21. subparsers = parser.add_subparsers()
  22. run_parser = subparsers.add_parser( "run", help="Run the application.")
  23. run_subparsers = run_parser.add_subparsers()
  24. def run_DeepFaceLive(args):
  25. userdata_path = Path(args.userdata_dir)
  26. lib_appargs.set_arg_bool('NO_CUDA', args.no_cuda)
  27. print('Running DeepFaceLive.')
  28. from apps.DeepFaceLive.DeepFaceLiveApp import DeepFaceLiveApp
  29. DeepFaceLiveApp(userdata_path=userdata_path).run()
  30. p = run_subparsers.add_parser('DeepFaceLive')
  31. p.add_argument('--userdata-dir', default=None, action=fixPathAction, help="Workspace directory.")
  32. p.add_argument('--no-cuda', action="store_true", default=False, help="Disable CUDA.")
  33. p.set_defaults(func=run_DeepFaceLive)
  34. dev_parser = subparsers.add_parser("dev")
  35. dev_subparsers = dev_parser.add_subparsers()
  36. def run_split_large_files(args):
  37. from scripts import dev
  38. dev.split_large_files()
  39. p = dev_subparsers.add_parser('split_large_files')
  40. p.set_defaults(func=run_split_large_files)
  41. def run_merge_large_files(args):
  42. from scripts import dev
  43. dev.merge_large_files(delete_parts=args.delete_parts)
  44. p = dev_subparsers.add_parser('merge_large_files')
  45. p.add_argument('--delete-parts', action="store_true", default=False)
  46. p.set_defaults(func=run_merge_large_files)
  47. def run_extract_FaceSynthetics(args):
  48. from scripts import dev
  49. inputdir_path = Path(args.input_dir)
  50. faceset_path = Path(args.faceset_path)
  51. dev.extract_FaceSynthetics(inputdir_path, faceset_path)
  52. p = dev_subparsers.add_parser('extract_FaceSynthetics')
  53. p.add_argument('--input-dir', default=None, action=fixPathAction, help="FaceSynthetics directory.")
  54. p.add_argument('--faceset-path', default=None, action=fixPathAction, help="output .dfs path")
  55. p.set_defaults(func=run_extract_FaceSynthetics)
  56. train_parser = subparsers.add_parser( "train", help="Train neural network.")
  57. train_parsers = train_parser.add_subparsers()
  58. def train_FaceAligner(args):
  59. lib_os.set_process_priority(lib_os.ProcessPriority.IDLE)
  60. from apps.trainers.FaceAligner.FaceAlignerTrainerApp import FaceAlignerTrainerApp
  61. FaceAlignerTrainerApp(workspace_path=Path(args.workspace_dir), faceset_path=Path(args.faceset_path))
  62. p = train_parsers.add_parser('FaceAligner')
  63. p.add_argument('--workspace-dir', default=None, action=fixPathAction, help="Workspace directory.")
  64. p.add_argument('--faceset-path', default=None, action=fixPathAction, help=".dfs path")
  65. p.set_defaults(func=train_FaceAligner)
  66. def bad_args(arguments):
  67. parser.print_help()
  68. exit(0)
  69. parser.set_defaults(func=bad_args)
  70. args = parser.parse_args()
  71. args.func(args)
  72. class fixPathAction(argparse.Action):
  73. def __call__(self, parser, namespace, values, option_string=None):
  74. setattr(namespace, self.dest, os.path.abspath(os.path.expanduser(values)))
  75. if __name__ == '__main__':
  76. main()
  77. # import code
  78. # code.interact(local=dict(globals(), **locals()))
Tip!

Press p or to see the previous file or, n or to see the next file

Comments

Loading...