tensorflow人工智能项目-鸟类识别系统

介绍

Python作业
机器学习,人工智能,模式识别课程,鸟类识别检测系统。

  • 这是一个鸟类识别项目,基于tensorflow,使用卷积神经网络实现对200种鸟类进行识别。

  • 在数据集中收集了200中鸟类图片,每种鸟类都有着40~60张图片,通过对这些数据集进行训练,从而实现对这200中鸟类进行识别。

  • 通过模型算法构建,在服务器上通过30次迭代,目前已将鸟类预测由0.005准确率(1/200)提升至0.5左右,准确率提升了100倍,符合预期效果。

  • 提供后台管理系统,将识别数据保存进数据库中,并在管理系统中查看。

使用

完整代码和训练模型下载地址

链接:https://pan.baidu.com/s/1ErS8iB_na1-PXxK4Q1tWCg

  • 语言python3.8
  • tensorflow==2.8
  • django

界面

tensorflow人工智能项目-鸟类识别系统_第1张图片

提示框中显示的Yellow haded blackbird 即为鸟类名称,当然如果需要翻译中中文也可以。

tensorflow人工智能项目-鸟类识别系统_第2张图片

tensorflow人工智能项目-鸟类识别系统_第3张图片

模型迭代次数

主要代码

model = tf.keras.Sequential([
             tf.keras.layers.Conv2D(64, (3, 3), input_shape=(256, 256, 3), 
                                    activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.Conv2D(64, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.MaxPooling2D(),
             tf.keras.layers.Conv2D(128, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.Conv2D(128, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.MaxPooling2D(),
             tf.keras.layers.Conv2D(256, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.Conv2D(256, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.MaxPooling2D(),
             tf.keras.layers.Conv2D(512, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.Conv2D(512, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.MaxPooling2D(),
             tf.keras.layers.Conv2D(512, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.Conv2D(512, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.Conv2D(512, (3, 3), activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.GlobalAveragePooling2D(),
             tf.keras.layers.Dense(1024, activation='relu'),
             tf.keras.layers.BatchNormalization(),
             tf.keras.layers.Dense(200)    
]) 

你可能感兴趣的:(Python项目,tensorflow,人工智能,python)