# iBird-Model
这是中国海洋大学 2020 年软件工程课程设计 iBird 项目的模型代码仓库。
用于实现一个 200 种类鸟类的分类,采用了 BCNN 模型。
更新增加了 EfficientNet 模型
## 仓库构成
```
.
├── BCNN # BCNN模型相关文件和代码
│ ├── __init__.py
│ ├── ibird.ipynb
│ ├── imagenet_class_index.json
│ ├── main.py
│ ├── model.py
│ ├── predict.py
│ ├── predict_server.py
│ ├── test_cuda.py
│ └── trainer.py
├── EfficientNet # EfficientNet 相关文件和代码
│ ├── __init__.py
│ ├── attention.py
│ ├── main.py
│ ├── model.py
│ └── trainer.py
├── README.md
├── bird_classes.csv
├── classes.txt
├── maque.jpg
├── maque2.jpg
├── requirements.txt
├── test.jpg
└── trick_test.py
```
## 使用说明
### AI 研习社测评
1. 读取依赖: `pip install -r requirements.txt`
2. 200种鸟类分类:AI研习社_鸟类识别比赛数据集.rar
3. 执行 main.py
4. 执行 predict.py 对 AI 研习社数据进行预测
模型训练的数据将会被放在 result 目录的 checkpoint.pt 里,可以使用 model 的方法进行读取
### 后端程序执行
1. 将 model.py, predict_server.py, bird_classes.csv 和计算好保存好的模型文件 model.pth 拷贝到服务器上
2. 在后端代码中添加初始化代码
```python
# 初始化单例
from BCNN.predict_server import NeuralNetwork
model_path = "xxx/xxx/xxx"
classes_path = "xxx/xxx/xxx"
NeuralNetwork.get_instance(model_path, classes_path) # 只有第一次会初始化
# 执行预测
net = NeuralNetwork.get_instance() # 不再进行初始化, 可以不加参数了
result = net.predicted("xx/xx/xx")
# your code here
```
## 使用 tricks
### 数据增强
说着听上去挺高级的,实现其来就是对图片的预处理,包含下面的一些方法:
- 平移:一定尺度内平移
- 旋转:一定角度内旋转
- 翻转:水平或者上下翻转
- 裁剪:在原有图像上裁剪一部分
- 颜色变化:rgb颜色空间进行一些变换(亮度对比度等)
- 噪声扰动:给图像加入一些人工生产的噪声
```python
from torchvision import transforms as transforms
# 随机比例缩放
transforms.Resize((100, 200))
# 随机位置裁剪
transforms.RandomCrop(100)
# 中心裁剪
transforms.CenterCrop(100)
# 随机垂直水平翻转
transforms.RandomVerticalFlip(p=1)
transforms.RandomHorizontalFlip(p=1) # p表示概率
# 随机角度旋转
transforms.RandomRotation(45)
# 色度,亮度,饱和度,对比度
transforms.ColorJitter(brightness=1) # 亮度
transforms.ColorJitter(contrast=1) # 对比度
transforms.ColorJitter(saturation=0.5) # 饱和度
transforms.ColorJitter(hue=0.5) # 色度
```
没有合适的资源?快使用搜索试试~ 我知道了~
基于python+BCNN 模型实现一个200 种类鸟类的分类的 iBird 项目
共24个文件
py:14个
jpg:3个
ipynb:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
2星 1 下载量 114 浏览量
2024-07-09
21:10:39
上传
评论
收藏 305.32MB ZIP 举报
温馨提示
【作品名称】:基于python+BCNN 模型实现一个200 种类鸟类的分类的 iBird 项目 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【项目介绍】:使用说明 AI 研习社测评 读取依赖: pip install -r requirements.txt 200种鸟类分类:AI研习社_鸟类识别比赛数据集.rar 执行 main.py 执行 predict.py 对 AI 研习社数据进行预测 模型训练的数据将会被放在 result 目录的 checkpoint.pt 里,可以使用 model 的方法进行读取 后端程序执行 将 model.py, predict_server.py, bird_classes.csv 和计算好保存好的模型文件 model.pth 拷贝到服务器上 在后端代码中添加初始化代码
资源推荐
资源详情
资源评论
收起资源包目录
iBird_model-main.zip (24个子文件)
iBird_model-main
EfficientNet
__init__.py 0B
EffcientNetAttn.py 4KB
attention.py 4KB
test.jpg 14KB
Utils
__init__.py 0B
loader.py 2KB
test_cuda.py 136B
trainer.py 4KB
trick_test.py 328B
Densenet
__init__.py 0B
DensnetBiliner.py 5KB
AI研习社_鸟类识别比赛数据集.rar 306.03MB
BCNN
__init__.py 0B
VGGBiliner.py 6KB
predict.py 2KB
predict_server.py 4KB
classes.txt 5KB
maque2.jpg 21KB
maque.jpg 14KB
Colab
efficientnet_attention.ipynb 39KB
vgg_bcnn.ipynb 21KB
.gitignore 49B
bird_classes.csv 3KB
README.md 3KB
共 24 条
- 1
资源评论
- 林青盐2024-11-08没有requirements.txt #内容缺失
MarcoPage
- 粉丝: 4298
- 资源: 8839
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- CocosCreator源码资源SrcPackage2(6款源码合集)
- (源码)基于Spring Boot和Spring Cloud的权限管理系统.zip
- CocosCreator源码资源SrcPackage1(11款源码合集)
- (源码)基于Python和Kafka的微博热搜情感分析系统.zip
- 毕业设计《HTML5-Bootstrap-SSM校园导游咨询网(可升级SpringBoot)》+Java项目源码+文档说明
- (源码)基于Arduino的智能导盲犬系统.zip
- sentinel-dashboard的1.8.6版本集成nacos,对接gateway的限流
- CocosCreator源码资源Snaker(贪吃蛇 精品)
- (源码)基于C语言的智能仓库管理系统(IWMS).zip
- (源码)基于Unity的通用升级系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功