如何将文件夹中的图像加载到名称为 class 的 pandas

How to load images from a folder into pandas with class name

我有一个文件夹,其中包含 dell_01.png、hp_01.png、toshiba_01.png 等不同的图像,我想从中创建一个如下所示的数据框:

如果文件是hp开头的,应该赋值给class1.如果是toshiba开头的,应该赋值给class1.如果是dell开头的,应该赋值给被分配给 class 2,如下面预期的数据帧输出所示。

filename     class
hp_01.png        0
toshiba_01.png   1
dell_01.png      2

分解问题:

I have a folder... different images

因此您需要从文件夹中获取文件名。用户 pathlib.Path.glob

from pathlib import Path
for fn in Path("/path/to/folder/").glob("*.png"):
   ...

if the file starts with hp... class 1, toshiba... class 2 so you have a condition.

if fn.stem.startswith("hp"):
    class = 1
elif ...

现在您可以分别解决这两个部分了。

in a dataframe

使用上面的两个构造为每个文件制作一个字典。然后从该字典制作一个数据框。您的代码将如下所示:

files = []
for fn in Path("/path/to/pngs").glob("*.png"):
    if fn.stem.startwith("hp"):
        class = 0
    ...
    files.append({"filename": fn.name, "class": class})

(是的,有更直接的途径可以将其放入数据框,但我试图让事情变得更清楚。)

有帮助吗?我有意避免只为您写下答案,而是试图让 只是 足够接近您可以填写其余部分。