Я пытаюсь разделить изображение на 4, а затем обработать его, а затем соединить их параллельно (я смог сделать это последовательно).
Я использую библиотеку Image_slicer для функций срезов и соединений.
Кроме того, пытаясь параллельно работать с этими фрагментами фрагментов, во время которых создаются и запускаются 4 процесса. Обработанная плитка заменяется на исходные нарезанные дорожки. Но когда я пытаюсь присоединиться к ним, это не работает, потому что вся обработка выполняется во внешней функции, и их локальные параметры больше не сохраняют их.
Есть ли способ, которым я мог бы сделать это?
Пожалуйста, найдите мой код ниже:
from image_slicer import slice,join
from multiprocessing import Process
import cv2
tiles=slice('test.jpeg',4)
def getting_image(image_path):
img_todraw_defects = cv2.imread(image_path)
blur= cv2.pyrMeanShiftFiltering(img_todraw_defects,21,49)
gray_image= cv2.cvtColor(blur, cv2.COLOR_BGR2GRAY)
cv2.imwrite(image_path,gray_image)
if __name__ == '__main__':
processes = []
for i in tiles:
p = Process(target=getting_image, args=(i.filename,))
processes.append(p)
p.start()
for process in processes:
process.join()
Final=join(tiles)
Final.save('final.png')