Skip to content

Turingg/git-plantdemo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 

Repository files navigation

git-plantdemo

一、定义

1、目的

1.促进人们对旅游及生态环境区的了解

2.作为高中生认识大学的一个平台(留一个接口出来做排名)校园宣传

3.帮助本校相关植物专业的老师和学生提供便利

(1)面向用户:社会各阶层人员

二、项目功能需求分析

1)主要功能

6675D307F9C9A0FD0817AFA15FDD6AC2

基础功能(需求):

1.用户拍照上传地图图片(对应后台地图API)

2.用户拍照上传植物图片

3.识别返回植物信息(及病害返回植物养护知识)

4.将植物信息上传至地图(若无此植物则上传)

5.用户可查看地图直接寻找植物(对应地理信息)

结果:形成对应的植物地理地图

附属功能:

1.各个地方的绿化排名:留一个接口出来做排名

2.前期

2.待定……

三、软件设计

1)环境安装

2)API准备

本项目需要用到百度智能云的植物图像识别API服务

3)技术流程

mmexport1697741085155

4)特征提取

由于计算资源有限,可用到Resnet50等CNN模型进行特征提取

1.加载模型

2.封装提取代码

5)向量数据库

Milvus 是一款全球领先的开源向量数据库,赋能 AI 应用和向量相似度搜索,加速非结构化数据检索。用户在任何部署环境中均可获得始终如一的用户体验。Milvus 2.0 采用存储与计算分离的架构设计。该重构版本的所有组件均为无状态组件,极大地增强了系统弹性和灵活性。

1.启动并创建数据库

from milvus import default_server
default_server.start()

检验数据库是否启动成功

from pymilvus import connections, utility, db
connections.connect(host='127.0.0.1', port=default_server.listen_port)

print("Milvus version:", utility.get_server_version())
Milvus version: v2.3.1-lite

创建一个命名为 plant 的数据库。

database = db.create_database("plant")
db.using_database("plant")

2.创建数据集合(数据表)

1.定义集合名

2.定义数据列

3.创建schema

4.创建数据集合

5.检查集合创建是否成功

3.创建索引

我们需要对embeddings 字段建立索引,才可进行后续的向量搜索、向量比对等操作。可以用到IVF_FLAT索引类型orIVF_SQ8 等压缩算法以节省内存消耗。

6)图像识别

​ 植物图像识别直接调用百度智能云提供的植物图像识别接口AipImageClassify.plantDetect

​ 将百度智能云的识别接口封装到一个命名为plantRec 的函数中,其中baike_num参数能够在返回植物种类的同时返回该植物对应的百度百科词条,可直接当成知识库内容使用。

​ 串联植物图像识别的流程,往数据库里插入了一张的图片。此时如果用户上图片,根据向量比对结果,用户上传的图像特征与数据库里面已有的图像特征之间具有较高的相似度,因此它们的距离应该非常相近。 如果距离<20(阈值可根据经验确定),即代表用户图像特征和数据库图像特征具有可靠的匹配度,直接返回植物名和植物介绍结果。 ​ 反之,即认为数据库里面没有相似图像匹配,此时就调用植物图像识别接口,获取植物名和植物介绍。

7)前端

8)后端django

BK%~(M{K7$)KUEZ7QN2DJ

1.创建Django项目

2.数据库配置

配置数据库,用于存储用户上传的图像和模型的相关数据。

3.定义模型和视图

编写 Django 模型和视图用于处理用户上传的图像和返回识别结果。

4.集成模型

将前面1-6的模型集成到Django项目中。

5.开发 API

创建 Django API,定义相应的 POST 和 GET 请求用于上传图像和获取植物识别结果。

6.测试和调试

测试和调试:使用合适的测试工具对后端 API 进行测试,确保接口的正确性和稳定性。同时,根据需要进行调试和优化。

7.部署和发布

将 Django 项目部署到服务器上,并配置好相应的环境变量和依赖关系。确保后端服务可以正常运行。

四、人员分工

1.美术及其前端

2.后端与数据库

3.相关文档编写

五、测试

Cache_-7f7ee9ca237760cc

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published