20行Python代码开发植物识别 app「建议收藏」
大家好,又见面了,我是你们的朋友全栈君。
这篇文章介绍如何用Python快速实现一个植物识别的app,家里养了几盆多肉还叫不上名字,正好拿来识别一下。实现这样一个app只需要20行左右的代码
另外,我也开发了微信小程序版本,大家可以体验一下。
实现该app主要包含两步,前端界面开发和后端植物识别服务,下面来分别介绍一下。
前端的实现方式有很多种,刚刚说的小程序是一种,但对于习惯用Python的开发者来说,我们还是希望能通过Python语言来开发界面。果然真有这样的工具,叫streamlit
,它是专门为数据科学家、机器学习工程师而开发的,使用它的时候不需要关心布局、样式、服务部署等web相关的知识,而就像开发普通Python程序一样,快速构建优美的app。streamlit
的安装也很简单,执行pip install streamlit
命令即可。想入门streamlit
的朋友可以看次条的文章。
接下来,我们把前端界面开发出来,从上面动图可以看到,最核心逻辑为接收用户输入的图片,并将其显示出来。
import streamlit as st
# 设置网站标题 st.title('植物识别') # 图片选择框 uploaded_file = st.file_uploader('选择一张图片', type=['jpg', 'png']) if uploaded_file is not None: # 显示已选的文件 st.image(uploaded_file, caption='已选文件', use_column_width=True)
界面完成后,我们再来考虑植物图片的识别服务,这里我用的是百度AI的服务
执行pip install baidu-aip
命令即可安装百度AI的Python SDK。然后,再去百度AI开放平台注册一个账号获得相应的APP_KEY和SCRET_KEY。编写代码调用植物识别服务
from aip import AipImageClassify
APP_ID = 'xxx' # 换成自己的 APP_ID API_KEY = 'xxx' # 换成自己的 API_KEY SECRET_KEY = 'xxx' # 换成自己的 SECRET_KEY client = AipImageClassify(APP_ID, API_KEY, SECRET_KEY) """ 植物识别结果 """ res = client.plantDetect(image) # 调用百度api识别植物
最后将返回的结果在app上展示即可,完整代码如下
import streamlit as st
from aip import AipImageClassify APP_ID = 'xxx' API_KEY = 'xxx' SECRET_KEY = 'xxx' client = AipImageClassify(APP_ID, API_KEY, SECRET_KEY) # 设置网站标题 st.title('植物识别') # 图片选择框 uploaded_file = st.file_uploader('选择一张图片', type=['jpg', 'png']) if uploaded_file is not None: # 显示已选的文件 st.image(uploaded_file, caption='已选文件', use_column_width=True) bs = uploaded_file.read() """ 植物识别结果 """ res = client.plantDetect(bs) # 调用百度api识别植物 res['result'] # 显示输出结果 """ 该植物最有可能是 """, res['result'][0]['name'] # 取预测概率最大的结果
执行streamlit run plant_detect.py
命令启动app,看到有如下输出
You can now view your Streamlit app in your browser.
Local URL: http://localhost:8501 Network URL: http://192.168.1.3:8501
在浏览器访问指定的地址即可。
希望这篇文章的内容能对你有用,接下来我会定期分享这种AI小应用希望大家能够喜欢。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/156142.html原文链接:https://javaforall.cn
相关文章
- Python「面向对象基本语法2」引用概念、方法中的self参数、代码示例
- 21张让你Python代码能力突飞猛进的速查表
- 520专属Python代码来了
- 程序员python表白代码[通俗易懂]
- 手眼标定算法Tsai-Lenz代码实现(Python、C++、Matlab)
- Python 分形算法__代码里开出来的数学之花
- python转置矩阵代码_python 矩阵转置[通俗易懂]
- Python代码实现Excel转JSON
- python注释多行代码快捷键_python粘贴快捷键
- 一个 15 年未修补 Python 漏洞让攻击者可以执行代码:35 万个开源代码存储库岌岌可危
- python自动补全设置_python代码补全
- 分享一个简单的 Python 脚本库:将 requests 代码转换成 curl 命令
- Jupyter Notebook又一利器Visual Python,拯救不想写代码!
- Python 使用 Tornado Web 框架写HTTP接口实例代码(异步+线程池)
- 【开源分享】教你如何在HTML中执行Python脚本代码!超级简单赶紧收藏。
- Python绘制时间演变图工具汇总(附代码)
- 手写算法-python代码实现Lasso回归
- python表白代码-python告白代码,只属于程序员的浪漫
- Windows上写 Python 代码的王炸组合!
- Google 内部的 Python 代码风格指南