花卉大识别之崭露头角
之所以写这个文章,主要还是由于有2段经历,一次是有个去**实习的机会,就是要做一个对花卉分类的桌面应用。另一个耿是在一次GPU的培训会上,旁边一个童鞋的公司就是做手机端的花卉识别。当然现在市场上也有好多这方面比较成熟的应用。
进入正题,论文为,Automated flowerclassification over a large number of classes,核心思想主要就是用AlexNet和VGG进行了分类的训练,也算是属于fine-grained classification的范畴。
git clone https://github.com/greatnorman1102/Flower-fine-grained-classification.git
下载图片数据集(Oxford 102category flower dataset)和预训练模型,执行,
python bootstrap.py
执行完毕后,将会在当前目录下生成data文件夹,里面存放图片数据。
制作LMDB数据
../../build/tools/convert_imageset --resize_height=256 --resize_width=256 /home/caffe/examples/Flower-fine-grained-classification/data/jpg/ train_.txt ./img_train_lmdb../../build/tools/convert_imageset --resize_height=256 --resize_width=256 /home/caffe/examples/Flower-fine-grained-classification/data/jpg/ valid_.txt ./img_valid_lmdb
修改AlexNet 用于训练的prototxt
![](/assets/blank.gif)
finetune AlexNet
../../build/tools/caffe train -solver solver.prototxt -weights pretrained-weights.caffemodel -gpu 0
修改VGG_S用于训练的prototxt
![](/assets/blank.gif)
finetune VGG_S
../../build/tools/caffe train -solver solver.prototxt -weights pretrained-weights.caffemodel -gpu 1
修改GOOGLENET用于训练的prototxt
![](/assets/blank.gif)
finetune GOOGLENET
../../build/tools/caffe train -solver solver.prototxt -weights pretrained-weights.caffemodel -gpu 2
训练完毕后曲线如下所示,按理说,googlenet的层数最多,应该性能最好,实际却不是,可能的原因应该就是googlenet训练需要一些trick,不是那么好finetune,这也许也是好多检测框架使用VGG的原因吧。
![](/assets/blank.gif)
制作synset_words.txt
43_alpine sea holly
105_anthurium
78_artichoke
96_azalea
46_ball moss
49_balloon flower
127_barbeton daisy
54_bearded iris
66_bee balm
85_bird of paradise
109_bishop of llandaff
54_black-eyed susan
48_blackberry lily
49_blanket flower
40_bolero deep blue
128_bougainvillea
63_bromelia
49_king protea
67_lenten rose
137_lotus
46_love in the mist
63_magnolia
66_mallow
67_marigold
40_mexican aster
82_mexican petunia
46_monkshood
40_moon orchid
107_morning glory
67_orange dahlia
61_osteospermum
49_oxeye daisy
251_passion flower
71_pelargonium
71_buttercup
102_californian poppy
91_camellia
82_canna lily
40_canterbury bells
108_cape flower
52_carnation
50_cautleya spicata
112_clematis
87_colt's foot
86_columbine
92_common dandelion
41_corn poppy
154_cyclamen
59_daffodil
63_desert-rose
65_english marigold
82_peruvian lily
258_petunia
59_pincushion flower
40_pink primrose
109_pink-yellow dahlia
93_poinsettia
93_primula
40_prince of wales feathers
85_purple coneflower
42_red ginger
171_rose
75_ruby-lipped cattleya
41_siam tulip
52_silverbush
87_snapdragon
48_spear thistle
42_spring crocus
40_fire lily
162_foxglove
166_frangipani
91_fritillary
45_garden phlox
67_gaura
78_gazania
114_geranium
56_giant white arum lily
45_globe thistle
41_globe-flower
41_grape hyacinth
56_great masterwort
60_hard-leaved pocket orchid
131_hibiscus
76_hippeastrum
55_japanese anemone
66_stemless gentian
61_sunflower
56_sweet pea
85_sweet william
130_sword lily
120_thorn apple
45_tiger lily
41_toad lily
58_tree mallow
62_tree poppy
58_trumpet creeper
196_wallflower
194_water lily
184_watercress
85_wild pansy
54_windflower
49_yellow iris
制作一个测试的sh脚本
#!/bin/bash
#AlexNet
../../build/examples/cpp_classification/classification.bin\AlexNet/deploy.prototxt\AlexNet/caffe_alexnet_train_iter_50000.caffemodel\imagenet_mean.binaryproto\synset_words.txt\data/jpg/image_00256.jpg
#VGG-S
../../build/examples/cpp_classification/classification.bin\VGG-S/VGG_CNN_S_deploy.prototxt\VGG-S/caffe_vgg_train_iter_20000.caffemodel\VGG-S/VGG_mean.binaryproto\synset_words.txt\data/jpg/image_00256.jpg
#GoogleNet
../../build/examples/cpp_classification/classification.bin\googlenet/deploy.prototxt\googlenet/caffe_googlenet_train_iter_50000.caffemodel\imagenet_mean.binaryproto\synset_words.txt\data/jpg/image_00256.jpg
运行上述脚本,输出结果,
![](/assets/blank.gif)
references:
https://github.com/greatnorman1102/Flower-fine-grained-classification
http://www.robots.ox.ac.uk/~vgg/data/flowers/102/index.html
花卉大识别之崭露头角相关推荐
- 30倍加速,3毫秒极速识别,人、车、OCR等9大识别任务一网打尽
本文已在飞桨公众号发布,查看请戳链接: 30倍加速,3毫秒极速识别,人.车.OCR等9大识别任务一网打尽 人脸.车辆.人体属性.卡证.交通标识等经典图像识别能力,在我们当前数字化工作及生活中发挥着极其 ...
- 基于深度学习的花卉检测与识别系统(YOLOv5清新界面版,Python代码)
摘要:基于深度学习的花卉检测与识别系统用于常见花卉识别计数,智能检测花卉种类并记录和保存结果,对各种花卉检测结果可视化,更加方便准确辨认花卉.本文详细介绍花卉检测与识别系统,在介绍算法原理的同时,给出 ...
- 毕设 深度学习卷积神经网络的花卉识别
文章目录 0 前言 1 项目背景 2 花卉识别的基本原理 3 算法实现 3.1 预处理 3.2 特征提取和选择 3.3 分类器设计和决策 3.4 卷积神经网络基本原理 4 算法实现 4.1 花卉图像数 ...
- 花卉识别python_基于深度学习的花卉识别系统设计与实现
杨美艳 任富顺 顾志东 摘 要:深度学习是机器学习的一种前沿发展,设计主要利用谷歌的tensorflow框架,实现了对十种花卉的分类和识别.通过已有的大量的花卉图片素材,编写卷积神经网络对花卉图片 ...
- 毕业设计 - 题目:基于深度学习卷积神经网络的花卉识别 - 深度学习 机器视觉
文章目录 0 前言 1 项目背景 2 花卉识别的基本原理 3 算法实现 3.1 预处理 3.2 特征提取和选择 3.3 分类器设计和决策 3.4 卷积神经网络基本原理 4 算法实现 4.1 花卉图像数 ...
- 基于MATLAB花卉识别系统,基于深度学习的花卉识别系统设计与实现
杨美艳 任富顺 顾志东 摘 要:深度学习是机器学习的一种前沿发展,设计主要利用谷歌的tensorflow框架,实现了对十种花卉的分类和识别.通过已有的大量的花卉图片素材,编写卷积神经网络对花卉图片 ...
- 【毕业设计】基于卷积神经网络的植物花卉识别系统
系统演示视频: [毕业设计]基于卷积神经网络的植物花卉分类系统 本项目使用到的技术包括:卷积神经网络(CNN)算法,Django框架搭建网站,CNN模型调优. 项目包括四部分: 1.数据集 2.模型训 ...
- 基于TensorFlow的花卉识别
概要设计 数据分析 本次设计的主题是花卉识别,数据为TensorFlow的官方数据集flower_photos,包括5种花卉(雏菊.蒲公英.玫瑰.向日葵和郁金香)的图片,并有对应类别的标识(daisy ...
- 毕业设计-基于深度学习的花卉识别分类
目录 前言 课题背景和意义 实现技术思路 一.花卉识别相关理论基础 二.基于 ResNeXt 和迁移学习的花卉种类识别 三.基于 EfficientNet 和迁移学习的花卉种类识别 实现效果图样例 最 ...
最新文章
- 养成一个习惯需要多久?
- python filename 以txt截尾_What?PPT里也能运行Python?
- Cesium原理篇:6 Render模块(6: Instance实例化)
- ROS:ubuntuKylin17.04-Ros使用OrbSLAM2
- 总有人黑 JavaScript?那是不知道它有多好用吧!
- MySql基础笔记(三)其他重要的事情
- 贝叶斯小数据分析—— 23 条数据决定宇航员生死(使用 PyMC3)
- 幼儿的健脑菜谱:椰子鸡汤
- 阿里P9专家右军:以终为始的架构设计
- Yocto系列讲解[理论篇]27 - BitBake全过程(5)
- 真实评测 rtx3080ti对比rx6800xt选哪个好
- 2022年9月青少年C/C++软件编程(四级)等级考试试卷及答案解析
- 逻辑回归基本流程及鸢尾花项目实战
- 海思Hi3559AV100将caffemodel转为wk文件
- can‘t convert from BSON type long to Date
- RestHighLevelClient
- vue utils.js公共方法中axios请求返回数据
- C语言 进制转换(1-16进制)
- 2021年熔化焊接与热切割找解析及熔化焊接与热切割操作证考试
- MySQL索引的作用
热门文章
- Unity 防沉迷逻辑
- 数据库备份的三种方式
- 观 王强(读书毁了我 北大演讲)note_201_12_22
- 未来十年,有哪些职业会消失...Python人工智能也会被替代吗
- ARM-Linux内核基础知识
- latex怎么给图片命名_如何用LaTeX打出各种不等号?
- 装XP系统时蓝屏,出现“The BIOS in this system is not fully ACPI compliant..
- 尝试用jdk1.6强行装jdk1.8的逼-Filter
- Flash音乐播放器可多曲连放
- Lenovo ThinkVantage Toolbox 常见问题解答