# API
**Repository Path**: wang-huiling/api
## Basic Information
- **Project Name**: API
- **Description**: api课堂学习仓库,用于课堂学习和作业存档
- **Primary Language**: Unknown
- **License**: WTFPL
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2022-03-12
- **Last Updated**: 2022-07-14
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
1. # 产品需求文档
## 版本需求
## 文档说明
## 目录
## 项目名称:“这是什么花”
| 文档名称: | “这是什么花”APP——产品需求文档 |
| ------------ | :----------------------------------------------------------: |
| 产品名称: | 这是什么花 |
| 产品描述: | 一款专门为植物爱好者打造的识别类APP,利用精准的“植物识别”API技术,帮助用户识别图片中的植物名称,对各个植物有更深的了解。 |
| 发布日期: | 2022-7-06 |
| 产品版本: | 0.0.1
0.0.2
0.0.3 |
| 文件拥有者: | 王荟玲 2010130008 |
# 一、价值主张宣言
### 1. 价值宣言
植物与生态系统和人类有着天然的联系,因此对于植物的研究就显得尤为重要。通过对植物花朵的识别,可以很好的对植物进行分类,更有效地保护、利用好各种植物。但传统的花朵识别方法依靠人工方式进行分类,难度大,效率低;利用电脑和智能手机终端设计和实现了一个植物花朵识别系统,系统能够识别不同花朵的品种,能够方便各类人群对花朵的识别、分类和鉴赏。
### 2. 核心价值
### 痛点:
1. 在自己独自一人时,看着美丽的风景和花朵,心情舒畅的同时有个疑问:看到一朵美丽的花,却不知道叫什么名字,身边也没有人可以为自己解答。
2. 在和朋友或者家人旅游时,路上偶遇美丽的植物,一众亲朋好友都不知道是什么花,也说不出与其相关的背景、由来等信息。
### 解决方案
基于图片识别的功能,游客拍照或上传植物照片,便可快速了解植物名称、由来和生存环境等,准确率高达98%。文字、图片相结合的讲解模式,感官体验更丰富,体验更极致。
### 3. 价值主张画布

# 二、需求概述
## A.用户分析
1. 目标用户群:
* 核心用户:各年龄层的植物爱好者
2. 用户画像及使用场景
* 李华是一名在校大学生,平时在课余时间很喜欢去郊游,爱好植物,对花花草草感到好奇,自己上网搜索了解很难辨别植物究竟是什么。于是发现了“这是什么花”APP,通过拍照上传,即可查看丰对应植物的介绍。
| 优先级 | 智能加值 | 用户场景(具体如何加值) | API类型 |
| ------ | -------- | ------------------------------------------------------------ | -------- |
| 最高 | 是 | 识别照片中出现的各种植物,得出详细信息,了解相关植物学知识。 | 免费开放 |
# 三、界面流程
## 1. 产品背景
* 在和朋友或者家人旅游时,路上偶遇美丽的花朵,想知道是什么花却无从查起,更不能说出与其相关的背景、由来等信息。
## 2.产品市场
营造良好的生态环境,重对植物的保护和种植。人们开始意识到植物的重要性,却甚少知道这些植物的功能与价值。
## 4. 产品优势
拍照识景功能基于人工智能技术,用户拍照或上传照片,便可快速了解植物名称、相关知识等,准确率高。文字和图片两种讲解模式。
## 5. 产品数据结构展示

# 四、产品设计原型


界面流程方式说明:
①点击立即识别进入拍照页。
②拍照页界面,当用户同意使用相机后,可以选择直接拍照识别图片或者选择在图库里已经储存好的照片。
③选择照片后点击确认扫描,返回植物介绍详细页。
# 五、API产品使用及输出展示
## 1. API展示说明及输出
#### 地标识别API(百度AI平台)
* 接口描述:该请求用于植物,即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中的植物识别结果。
* 平台接入网址:[图像识别—植物识别]([植物识别_拍照识别植物-百度AI开放平台 (baidu.com)](https://ai.baidu.com/tech/imagerecognition/plant))
* HTTP 方法:`POST`
* 请求URL: `https://aip.baidubce.com/rest/2.0/image-classify/v1/plant`
##### A. 获取官网AK和SK,请求token
```python
import requests
# client_id 为官网获取的AK, client_secret 为官网获取的SK
SK='hfdfx6XvzEuQZuYRHlroIbcx2Wbscqcj'
AK='sHCSvNGIrdb3arV7YubXoOig'
host = 'https://aip.baidubce.com/oauth/2.0/token?'
payload = {
'grant_type':'client_credentials',
'client_id':AK,
'client_secret':SK
}
response = requests.get(host,params=payload)
if response:
print(response.json())
```
#### B. 调用API输入:

```python
import base64
'''
植物识别
'''
request_url = "https://aip.baidubce.com/rest/2.0/image-classify/v1/plant"
# 二进制方式打开图片文件
f = open('mudanhua.png', 'rb')
img = base64.b64encode(f.read())
payload={
'access_token':plant_AI,
'image':img,
'baike_num':5,
"top_num":5
}
headers = {'content-type': 'application/x-www-form-urlencoded'}
response = requests.post(request_url, data=payload, headers=headers)
if response:
print (response.json())
```
#### C.输出结果

# 六、该产品未来的发展路线构思
### 1.与影视剧公司合作
* **提升影视剧真实性**
### 2.与企业合作
* **提供植物研究新方向**
### 3. 与植物保护组织合作
* **提供植物保护新思路**
# 七、学习心得总结
背景:没有真正迭代需求文档的经历,而只是编写几个不同格式的需求文档出来给到开发和UI。并且在后期的需求变更中增加到文档中,本身文档并没有起到期望中的指导作用。
首先,要搞清楚需求文档是干嘛的?
在我看来有两个作用,一个产品经理通过文字和流程图的手段,从头到尾撸一遍产品功能和流程,这个过程是要用文字表述出来,而且要依照一定的格式,所以对自纠自查非常有帮助。二个作用就是通过语言的精准性,将需求表达出来,作为最终确认的一个规范,交付确定性。
经过这次练习,让我明白了PRD文档在产品开发中的地位。