如何在python中将图像及其对应的值(.csv)输入到回归模型?

我有一个图像数据集和一个.csv文件,其中包含这些图像的名称以及与每个图像相关联的一些值(范围为1-5)。 例如图像数据集,该值给出的降雨量范围为1(最低)-5(最高)。该值甚至可以是小数,例如2.5。

我已经开发了一个用于图像分类的模型,在该模型中,我对图像值进行了四舍五入并将整个数据集分为5类,并将5个文件夹输入到模型中。

|data folder1 (training)

 |train_data_dir

  |class1
   |image1.jpg
   |..
   | image100.jpg

  |class2
   |image1.jpg
   |..
   | image100.jpg

  |class5
   |image1.jpg
   |..
   | image100.jpg

|data folder2 (test) similar as above


*model description*
 x = Dense(1024,activation="relu")(x)<br>
 x = Dropout(0.5)(x) <br>
 ... 

 *train_generator = train_datagen.flow_from_directory(train_data_dir,target_size=(img_height,img_width),batch_size=batch_size,class_mode="categorical")*

现在,我想为同一问题设计一个回归模型。 我想知道如何输入图像(例如image.jpeg)及其对应值(保存在data.csv中)并将其作为输入发送到神经网络吗?

|data folder1 (training)

 |images folder
   |image1.jpg
   |..
   | image500.jpg

 |data.csv
   |image name
   |rainfall amount (1-5) including fractions

|data folder2 (test) similar as above
XUQIAN28 回答:如何在python中将图像及其对应的值(.csv)输入到回归模型?

您似乎正在尝试通过生成器从训练集中加载图像以训练TensorFlow模型。您几乎掌握了方法论,但您可能不太了解implementation。当使用flow_from_directory时,TensorFlow需要以下目录结构:

|-data
  |-train
    |-class_1
      |-img1.png
      |-img2.png
    |-class_2
      |-img1.png
      |-img2.png
  |-test
    |-img1.png
    |-img2.png

如您所见,此特定实现需要一个类。据我所知,它不适合执行回归任务。但是,您可以使用相当类似的flow_from_dataframe方法来完成此操作。您将需要构造一个pandas DataFrame,其中一列引用文件路径,另一列引用您的回归目标。您的生成器约为:

train_data_gen = image_generator.flow_from_dataframe(dataframe=train_df,x_col='filename',y_col='regression_val',batch_size=BATCH_SIZE,shuffle=True,target_size=(IMG_HEIGHT,IMG_WIDTH))
本文链接:https://www.f2er.com/3104035.html

大家都在问