Я новичок ie для CNN с LSTM. У меня есть набор последовательностей изображений (с различными размерами). Набор данных содержит изображения из 70 видеороликов с (50-70 кадров каждое). Кроме того, в качестве выходных данных к этим кадрам у меня есть массив местоположения объекта на нем и другой массив его скорости (так 2 выхода, 2 плотных слоя).
вот мой текущий код:
import keras
from keras.layers import *
from keras.models import load_model, Model, Sequential
from keras.preprocessing.image import ImageDataGenerator, array_to_img, img_to_array, load_img
import pandas as pd
import numpy as np
model = Sequential()
num_frames = ??
width = 256
height = 256
channels = 3
Input_1 = Input(shape=(num_frames, width, height, 3))
x = TimeDistributed(Conv2D(64, (3, 3), activation='relu'))(Input_1)
x = TimeDistributed(MaxPooling2D((2, 2), strides=(1, 1)))(x)
x = TimeDistributed(Conv2D(128, (4,4), activation='relu'))(x)
x = TimeDistributed(MaxPooling2D((2, 2), strides=(2, 2)))(x)
x = TimeDistributed(Conv2D(256, (4,4), activation='relu'))(x)
x = TimeDistributed(MaxPooling2D((2, 2), strides=(2, 2)))(x)
x = TimeDistributed(Flatten())(x)
x = Dropout(0.5)(x)
x = LSTM(256, return_sequences=False, dropout=0.5)(x)
out1 = Dense(3, activation='linear')(x) #position
out2 = Dense(7, activation='linear')(x) #speed
model = Model(inputs=Input_1, outputs=[out1,out2])
model.compile(optimizer = "adam", loss = 'mse')
model.summary()
Вот мои вопросы: 1. Мои данные хранятся в pandas кадр данных, в котором представлена каждая строка (frame_time, frame_img_file_name, position, speed). Как я могу прочитать его таким образом, чтобы он вводил последовательность? Кроме того, как я могу загрузить его в модель Keras? 2. Просто чтобы проверить мое понимание, мы вводим здесь каждый видеокадр независимо. из других видео?
Буду очень признателен, если кто-нибудь поможет мне с этим!