请帮我编写一个瓜果缺陷检测的卷积神经网络
时间: 2024-04-29 07:22:41 浏览: 114
基于卷积神经网络的缺陷检测
以下是一个简单的瓜果缺陷检测的卷积神经网络模型:
```python
import keras
from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense, Dropout
# 初始化模型
model = Sequential()
# 添加卷积层和池化层
model.add(Conv2D(32, (3, 3), input_shape=(64, 64, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
# 添加全连接层和Dropout层
model.add(Flatten())
model.add(Dense(units=64, activation='relu'))
model.add(Dropout(0.5))
# 输出层
model.add(Dense(units=1, activation='sigmoid'))
# 编译模型
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
# 打印模型结构
model.summary()
```
该网络由三个卷积层和池化层组成,每一层都使用ReLU激活函数。之后添加一个全连接层和一个Dropout层用于防止过拟合。最后是一个输出层,使用sigmoid激活函数,用于二元分类问题。模型使用Adam优化器和二元交叉熵损失函数进行训练,同时监控准确率作为评估指标。
阅读全文