1.项目简介
动物分类教程+分类释义+界面展示
动物分类是生物学中的一个基础知识,它是对动物进行分类、命名和描述的科学方法。本教程将向您介绍动物分类的基本原则和方法,并提供一些常见的动物分类释义。
1.动物分类的基本原则
动物分类根据动物的形态、结构、生活习性、遗传等特征进行分类。动物分类的基本原则包括以下几点:
(1)分类的基础:分类应该以形态学为基础,主要从外部形态、内部结构、发育过程和生理生化特征等方面进行分类。
(2)系统的体系分类:采用分层次、阶梯式的分类方法,把各个分类单元按一定顺序排列成一个大的分类系统。
(3)分类的稳定性:分类的稳定性是指在一定的时间和空间范围内,由于物种的进化和分化关系而形成的分类不会轻易发生变动。
2.常见动物分类释义
(1)哺乳动物:是一类具有乳腺并能哺育幼崽的动物,如猫、狗、猪、牛等。
(2)鸟类:是一类具有翅膀和羽毛的脊椎动物,如鹰、鸽子、鸡等。
(3)爬行动物:是一类冷血动物,具有鳞片、角质板、甲壳等外壳,如蛇、龟、鳄鱼等。
(4)两栖动物:是一类既能在水中生活,也能在陆地上生活的动物,如青蛙、蝾螈等。
3.界面展示
本教程提供了一个简单易用的动物分类界面,用户可以上传自己拍摄的动物图片,系统会自动识别出动物的种类,并显示相应的分类释义。同时,用户还可以通过界面查看其他用户上传的动物图片及其分类结果,以便更好地了解动物分类知识。
总之,本教程旨在向广大用户介绍动物分类的基本原则和方法,帮助用户更好地了解动物世界,同时提供一个方便快捷的界面,让用户可以轻松地进行动物分类。
主要功能:利用tinker封装InceptionV3[论文]MOD进行图像分类的一个小Demo
环境:anaconda+Python3+tensorflow
IDE:pycharm + jupyter notebook
2.代码框架
需要的库模块:
os tarfile requests tensorflow numpy translate PIL
一共四个代码文件:
- get_Inception_model.py
方法模块,下载模型将模型保存到本地
def download_inception_model(): #下载模型将模型保存到本地 '......'
- nodelookup.py
类文件,主要功能将官方标签解码成可读文本
class NodeLookup(object): def __init__(self): self.node_lookup # 字典,id to string '......' @staticmethod def _load(labels_path, uids_path): # 输入:node_id, 输出:id to string字典 '......' return dict def id_to_string(self, node_id): # 输入:node_id, 输出:可读字符串 '......' return str
- tensorflow_predictor.py
类文件,主要功能实现图像预测
class TensorflowPredictor(): def __init__(self): # 加载模型,新建session, '......' def predict_image(self, image_path): # '......' return str
- gui.py
界面代码,面向用户
btn_sel # 选择图片按钮 img_label # 这是是显示预测图片的全局变量 res_label # 这是是显示预测文字的全局变量 def translator_prediction_result(pre_res):# 翻译模块 输入:英文字符串,输出:格式化中文字符串 '......' return res def selector_image(): # 选择图片按钮点击发生的事件 '......' root.mainloop() # 进入消息循环
3.实现细节
3.1.下载模型
3.1.1.实现功能
下载模型将模型保存到本地
3.1.2.Inception文件简介
Inception为Google开源的CNN模型,至今已经公开四个版本,每一个版本都是基于大型图像数据库ImageNet中的数据训练而成。因此我们可以直接利用Google的Inception模型来实现图像分类。本项目主要以Inception_v3模型为基础。分类一张图像可以在几秒内完成。
3.1.3.流程图
3.1.4.代码
# get_Inception_model.py import tarfile import requests def download_inception_model(): # inception_v3模型下载 inception_pre_mod_url = 'http://download.tensorflow.org/models/image/imagenet/inception-2015-12-05.tgz' # 模型存放地址 inception_pre_mod_dir = "inception_model" if not os.path.exists(inception_pre_mod_dir): os.makedirs(inception_pre_mod_dir) # 获取文件名,以及文件路径 filename = inception_pre_mod_url.split('/')[-1] filepath = os.path.join(inception_pre_mod_dir, filename) # 下载模型 if not os.path.exists(filepath): print('Downloading: ', filename) r = requests.get(inception_pre_mod_url, stream=True) with open(filepath, 'wb') as f: for chunk in r.iter_content(chunk_size=1024): if chunk: f.write(chunk) print("Done: ", filename) # 解压文件 tarfile.open(filepath, 'r:gz').extractall(inception_pre_mod_dir)
动物分类识别教程+分类释义+界面展示-2
https://developer.aliyun.com/article/1446459?spm=a2c6h.13148508.setting.22.68a34f0egwu157