VGG16
Modell in sich selbst ist nur eine Reihe von Gewichten der festen Reihenfolge der Schichten und feste Faltung Kerngrößen usw. Das bedeutet nicht, dass diese Faltung Kernel nicht auf Bilder anderer Größen angewendet werden können.
Zum Beispiel in Ihrem Fall:
from keras.models import Model
from keras.layers import Dense,Flatten
from keras.applications import vgg16
from keras import backend as K
model = vgg16.VGG16(weights='imagenet', include_top=False, input_shape=(160,320,3))
model.summary(line_length=150)
flatten = Flatten()
new_layer2 = Dense(10, activation='softmax', name='my_dense_2')
inp2 = model.input
out2 = new_layer2(flatten(model.output))
model2 = Model(inp2, out2)
model2.summary(line_length=150)
Nach here die minimale Bildgröße kann 48x48x3
etwas über sein als das ist in Ordnung.
Nun ist es wahr, die ursprünglichen Gewichte wurden auf 224,224,3
geformte Bilder gelernt, aber die Filtergewichte fungieren als sehr guter Ausgangspunkt für neue Aufgaben mit neuen Bildern. Sie müssen das Netzwerk neu trainieren, aber das Netzwerk würde sehr schnell konvergieren. Dies ist die Grundlage des Transferlernens.