Spaces:
Running
Running
# from tensorflow.keras.applications.imagenet_utils import preprocess_input | |
# from tensorflow.keras.applications.vgg16 import VGG16 | |
# from keras.models import Model | |
# from keras.preprocessing import image | |
# import numpy as np | |
# from PIL import ImageFile | |
# | |
# ImageFile.LOAD_TRUNCATED_IMAGES = True | |
# | |
# base_model = VGG16(weights='imagenet', include_top=True) | |
# model = Model(input=base_model.input, output=base_model.get_layer('fc2').output) | |
# | |
# | |
# def extract_feature(img_path): | |
# img = image.load_img(img_path, target_size=(224, 224)) # 224×224 | |
# | |
# x = image.img_to_array(img) | |
# x = np.expand_dims(x, axis=0) | |
# x = preprocess_input(x) | |
# features = model.predict(x) # fc2 | |
# | |
# return features | |
import keras | |
from keras.applications.vgg16 import VGG16, preprocess_input | |
from keras.preprocessing import image | |
import numpy as np | |
# 加载预训练的 VGG16 模型,不包括全连接层 | |
base_model = VGG16(weights='imagenet', include_top=False) | |
def extract_features(image_path): | |
img = image.load_img(image_path, target_size=(224, 224)) | |
x = image.img_to_array(img) | |
x = np.expand_dims(x, axis=0) | |
x = preprocess_input(x) | |
features = base_model.predict(x) | |
# print(features.shape) | |
return features | |
# image_path = "downloads/access_1.jpg" | |
# features = extract_features(image_path) | |
# print(features.shape) | |