0

我需要一个函数来改变给定数量的照片的大小,使用所有可用的计算能力。我发现我可以parallel为此使用函数,但我不知道如何正确使用它。

这是我的代码:

from random import randint
from fastai.core import parallel

import cv2

def image_conversion(list, size, directory, conversion):
    if conversion == '--resize':
        for img in list:
            imageAsNumpy = cv2.imread(img)
            dim = (size[1], size[0])
            resized = cv2.resize(imageAsNumpy, dim, interpolation = cv2.INTER_AREA)
            writeStatus = cv2.imwrite(directory + img, resized)
            if writeStatus is True:
                print('Imagine written successfully!')
            else:
                print('Something went wrong!')
    elif conversion == '--random crop':
        for img in list:
            image = cv2.imread(img)
            height, width = image.shape[:2]
            h = randint(0, height)
            w = randint(0, width)
            cropped = image[h:h+width, w:w+height]
            status = cv2.imwrite(directory + img, cropped)
            if status is True:
                print('Imagine cropped')
            else:
                print('Problem')

但是当我尝试调用parallel函数时,它每次都会失败,例如进度条变为 100%,但没有完成任何工作。有人可以帮我理解我做错了什么吗?

4

0 回答 0