如何用Python做植物识别的功能
Admin 2022-05-21 群英技术资讯 1353 次浏览
这篇文章主要介绍了如何用Python做植物识别的功能相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何用Python做植物识别的功能文章都会有所收获,下面我们一起来看看吧。" 花草树木 皆有呈名
热爱自然,从认识自然开始 "

现在的植物爱好者,遇到不认得的植物。怎么办呢?
前几天去逛商场,一进商城一一一一门口的花店吸引了我的注意:摆放在店门口的各色鲜花植物花卉真的特别好看!
忍不住进门逛了一圈,发现我真的不认识,种类太多,对花卉的品种了解颇少。
回来之后找到了2款简单好用的植物识别APP一一一伴侣跟形色蛮好用的!
闲着也是闲着:默默用Python编写了一款简单的植物识别系统给大家正好la~

本文用到的环境:Python3.7 Pycharm社区版 模块:PyQt5。
import sys
from PyQt5.QtWidgets import(QWidget,QApplication,QGridLayout,QLabel,
QLineEdit,QTextEdit,QPushButton,QFrame,QFileDialog)
from PyQt5.QtGui import QPixmap
#导入baiduAPI调用模块
import request
class AIGUI(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
#关于表格类的相关初始化代码
#setSpacing 就是设置每个控件的外边框
grid=QGridLayout()
grid.setSpacing(10)
#各个控件
#1号控件
explain=QLabel('请选择您要识别的图片')
#2号 单号文本框
self.imgUrl=QLineEdit()
#3号,按钮
self.select=QPushButton("选择图片")
#为按钮添加一个事件处理函数
self.select.clicked.connect(self.openfile)
#4号,图片框
self.imgLab=QLabel("11.png")
self.imgLab.setFrameShape(QFrame.Box)
#imgLab.setFrameShadow(QFrame.Raised)
self.imgLab.setLineWidth(1)
#imgLab.setPixmap(QPixmap(""))
#5号,多行
self.info=QTextEdit()
#将控件进行合理布局
grid.addWidget(explain,1,0)
grid.addWidget(self.imgUrl,1,1)
grid.addWidget(self.select,1,2)
grid.addWidget(self.imgLab,2,0,5,3)
grid.addWidget(self.info,1,3,6,1)
#窗口最后的设置
self.setLayout(grid)
self.setGeometry(300,300,350,300)
self.setWindowTitle("植物识别小系统")
self.show()
def openfile(self):
#打开图片弹窗,选择图片
self.select_path=QFileDialog.getOpenFileName(self,"选择要识别的图片","/","Imgae Files(*.jpg *.png)")
#如果没选择图片,空过
if not self.select_path[0].strip():
pass
else:
#选择图片后执行下面的内容
# 设置图片的路径
self.imgUrl.setText(self.select_path[0])
#在图片标签框中显示图片
#1)根据路径pixmap解析图片
pixmap=QPixmap(self.select_path[0])
#2)缩放图片
scalePixmap=pixmap.scaledToWidth(300)
#scaledPixmap=pixmap.scaled(QSize(311,301))
#3)显示
self.imgLab.setPixmap(scalePixmap)
result=self.identify()
self.info.setText(result)
#借助百度AI平台完成植物识别工作
def identify(self):
result=Request.BaiduAPI(self.select_path[0])
return result
def main():
app=QApplication(sys.argv)
ai=AIGUI()
sys.exit(app.exec_())
if __name__=='__main__':
main()
第一组玫瑰花:


第二组百合花:

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
property是一个类,可以把一个方法当做属性进行使用,这样做可以简化代码使用。实际上就是装饰类中属性的gettersetter方法,使得属性可以通过对象.属性的方式获取或设置 使用property的两种方式装饰器方式类属性方式2.装饰器方式@property修饰获取的方法getter,方法名必须和属性名一样@age.setter修饰设置值的方法sett
这篇文章主要介绍了python倒序for循环实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
需求:将utf-8格式的文件转换成gbk格式的文件实现代码如下:defReadFile(filePath,encoding="utf-8"):withcodecs open(filePath,"r",encodi
我们可以利用Django框架中select_related和prefetch_related函数对数据库查询优化,这篇文章主要给大家介绍了关于Django中prefetch_related()函数优化的相关资料,需要的朋友可以参考下
有的时候我们写的东西不想让别人看到,会设置密码来加密。在Python中,我们写的字符字符不想被别人看到,保护自己的隐私,会选择加密。本文介绍Python字符串加密的五种方法:url编码、base64、ascii、md5 Unicode转中文。具体代码如下:
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008