在python中导入图像后如何标记图像

我有一组照片,在文件夹中标有狗、猫、卡车、飞机和汽车。一旦我将它们导入 python,我想为它们分配二进制标签。以下代码显示了如何从文件夹中提取图片并为 1 个班级执行此操作,但如何为多个班级执行此操作?例如,1 代表“狗”,2 代表“猫”,3 代表“卡车”,4 代表“飞机”,5 代表“汽车”。


Test_dir = "C:/Users/Instructor/Dropbox/Data Science/2.Temp_WORDFILES/test"

image_width = 32

image_height = 32


def read_images(directory, resize_to=(128, 128)):


"""This function extracts images from given

directory"""


    files = glob.glob(directory + "/*.jpg")

    images = []

    labels = []

    for f in tqdm.tqdm_notebook(files):

        im = Image.open(f)

        im = im.resize(resize_to)

        im = np.array(im) / 255.0

        im = im.astype("float32")

        images.append(im)


        label = 1 if "dog" in f.lower() else 0

        labels.append(label)


    return np.array(images), np.array(labels)


 X, y = read_images(directory=Test_dir, resize_to=(IM_WIDTH, IM_HEIGHT))


DIEA
浏览 197回答 2
2回答

白板的微信

Test_dir = "C:/Users/Instructor/Dropbox/Data Science/2.Temp_WORD     FILES/test"image_width = 32image_height = 32def read_images(directory, resize_to=(128, 128)):    """This function extracts images from given    directory"""    files = glob.glob(directory + "/*.jpg")    images = []    labels = []    switch_values = {'dog':1,'cat':2, 'truck':3, 'airplane':4 ,'car':5}    for f in tqdm.tqdm_notebook(files):        im = Image.open(f)        im = im.resize(resize_to)        im = np.array(im) / 255.0        im = im.astype("float32")        images.append(im)        label = switch_values.get(f.lower())        labels.append(label)    return np.array(images), np.array(labels) X, y = read_images(directory=Test_dir, resize_to=(IM_WIDTH, IM_HEIGHT))

繁星点点滴滴

定义字典以将动物名称映射到标签animal_to_label = {'dog': 1,'cat': 2,'truck': 3,'airplane': 4,'car': 5 }Test_dir = "C:/Users/Instructor/Dropbox/Data Science/2.Temp_WORDFILES/test"image_width = 32image_height = 32def read_images(directory, resize_to=(128, 128)):"""This function extracts images from givendirectory"""    files = glob.glob(directory + "/*.jpg")    images = []    labels = []    switch_values = {'dog':1,'cat':2, 'truck':3, 'airplane':4 ,'car':5}    for f in tqdm.tqdm_notebook(files):        im = Image.open(f)        im = im.resize(resize_to)        im = np.array(im) / 255.0        im = im.astype("float32")        images.append(im)        name = f.split("/")[-1].split(".")[0]        label = animal_to_label[name.lower()]        labels.append(label)    return np.array(images), np.array(labels) X, y = read_images(directory=Test_dir, resize_to=(IM_WIDTH, IM_HEIGHT))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python