deal_cutout.py 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. import time
  2. from concurrent.futures import as_completed, ThreadPoolExecutor, wait
  3. import threading
  4. from .remove_bg_pixian import RemoveBgPiXian
  5. from .other.module_online_data import GetOnlineData
  6. from .deal_one_image import DealOneImage, DealOneImageBeforehand
  7. from .other.log import MyLogger
  8. class DealCutout:
  9. def __init__(self, token):
  10. super().__init__()
  11. self.lock = threading.Lock()
  12. self.need_cutout_images = {}
  13. self.token = token
  14. self.state = 2 # 1进行中 2停止
  15. self.get_online_data = GetOnlineData(self.token)
  16. self.is_upload_pic_num = 0
  17. self.is_deal_num = 0
  18. self.output_type = 0
  19. # 图片列表
  20. self.upload_pic_dict = {}
  21. self.logger = MyLogger().logger
  22. def startDispose(self):
  23. self.get_online_data.refresh_headers()
  24. num = 0
  25. result_array = []
  26. for image_data in self.need_cutout_images:
  27. num += 1
  28. upload_pic_dict = {}
  29. upload_pic_dict = DealOneImageBeforehand(
  30. image_data=image_data,
  31. lock=self.lock,
  32. windows=self,
  33. num=num,
  34. token=self.token,
  35. ).run(upload_pic_dict)
  36. result = DealOneImage(
  37. image_data=image_data,
  38. lock=self.lock,
  39. windows=self,
  40. num=num,
  41. token=self.token,
  42. ).run(image_data, upload_pic_dict)
  43. result_array.append(result)
  44. return result_array
  45. def normalMode(self):
  46. """普通模式"""
  47. self.get_online_data.refresh_headers()
  48. num = 0
  49. result_array = []
  50. print("self.need_cutout_images", self.need_cutout_images)
  51. for image_data in self.need_cutout_images:
  52. num += 1
  53. result = DealOneImageBeforehand(
  54. image_data=image_data,
  55. lock=self.lock,
  56. windows=self,
  57. num=num,
  58. token=self.token,
  59. ).get_image_cut_noraml(image_data)
  60. result_array.append(result)
  61. return result_array
  62. class DealCloths:
  63. def __init__(self, token):
  64. super().__init__()
  65. self.lock = threading.Lock()
  66. self.need_cutout_images = {}
  67. self.token = token
  68. self.output_type = 0
  69. self.state = 2 # 1进行中 2停止
  70. self.get_online_data = GetOnlineData(self.token)
  71. self.is_upload_pic_num = 0
  72. self.is_deal_num = 0
  73. # 图片列表
  74. self.upload_pic_dict = {}
  75. self.logger = MyLogger().logger
  76. def startDispose(self):
  77. self.get_online_data.refresh_headers()
  78. num = 0
  79. result_array = []
  80. for image_data in self.need_cutout_images:
  81. num += 1
  82. upload_pic_dict = {}
  83. hand = DealOneImageBeforehand(
  84. image_data=image_data,
  85. lock=self.lock,
  86. windows=self,
  87. num=num,
  88. token=self.token,
  89. )
  90. upload_pic_dict = hand.get_image_cut_cloths(image_data)
  91. result_array.append(upload_pic_dict)
  92. return result_array