truepositive/hotdog_nothotdog
收藏数据集概述
数据集名称
Hotdog or Not Hotdog
数据集描述
该数据集受电视剧《硅谷》中Jian-Yang的应用启发,包含热狗和其他食物的图片,适用于机器学习项目。
数据集内容
数据集分为两个主要文件夹:
- hotdog/:包含热狗的图片。
- not_hotdog/:包含其他食物(如汉堡、披萨、寿司等)的图片。
数据集结构
train/ ├── hotdog/ │ ├── hotdog1.jpg │ ├── hotdog2.jpg │ └── ... └── not_hotdog/ ├── not_hotdog1.jpg ├── not_hotdog2.jpg └── ...
使用方法
-
克隆仓库: bash git clone https://github.com/truepositive/hotdog_nothotdog
-
训练模型:使用TensorFlow/Keras进行模型训练的示例代码如下: python from tensorflow.keras.preprocessing.image import ImageDataGenerator from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
准备数据生成器
datagen = ImageDataGenerator(rescale=1./255, validation_split=0.2) train_generator = datagen.flow_from_directory(data/, target_size=(150, 150), batch_size=32, class_mode=binary, subset=training) validation_generator = datagen.flow_from_directory(data/, target_size=(150, 150), batch_size=32, class_mode=binary, subset=validation)
构建模型
model = Sequential([ Conv2D(32, (3, 3), activation=relu, input_shape=(150, 150, 3)), MaxPooling2D((2, 2)), Conv2D(64, (3, 3), activation=relu), MaxPooling2D((2, 2)), Flatten(), Dense(128, activation=relu), Dense(1, activation=sigmoid) ])
model.compile(optimizer=adam, loss=binary_crossentropy, metrics=[accuracy]) model.fit(train_generator, epochs=10, validation_data=validation_generator)
-
预测热狗与否: python from tensorflow.keras.preprocessing import image import numpy as np
def is_hotdog(img_path): img = image.load_img(img_path, target_size=(150, 150)) img_array = image.img_to_array(img) / 255.0 img_array = np.expand_dims(img_array, axis=0) prediction = model.predict(img_array) return "Hotdog!" if prediction[0][0] > 0.5 else "Not Hotdog!"
print(is_hotdog(path/to/your/test/image.jpg))




