基于Python實(shí)現(xiàn)簡(jiǎn)易的植物識(shí)別小系統(tǒng)
導(dǎo)語
"? 花草樹木 皆有呈名
熱愛自然,從認(rèn)識(shí)自然開始 "

現(xiàn)在的植物愛好者,遇到不認(rèn)得的植物。怎么辦呢?
前幾天去逛商場(chǎng),一進(jìn)商城一一一一門口的花店吸引了我的注意:擺放在店門口的各色鮮花植物花卉真的特別好看!
忍不住進(jìn)門逛了一圈,發(fā)現(xiàn)我真的不認(rèn)識(shí),種類太多,對(duì)花卉的品種了解頗少。
回來之后找到了2款簡(jiǎn)單好用的植物識(shí)別APP一一一伴侶跟形色蠻好用的!
閑著也是閑著:默默用Python編寫了一款簡(jiǎn)單的植物識(shí)別系統(tǒng)給大家正好la~

正文
1)環(huán)境安裝
本文用到的環(huán)境:Python3.7? Pycharm社區(qū)版? ?模塊:PyQt5。
2)主程序
import sys
from PyQt5.QtWidgets import(QWidget,QApplication,QGridLayout,QLabel,
QLineEdit,QTextEdit,QPushButton,QFrame,QFileDialog)
from PyQt5.QtGui import QPixmap
#導(dǎo)入baiduAPI調(diào)用模塊
import request
class AIGUI(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
#關(guān)于表格類的相關(guān)初始化代碼
#setSpacing 就是設(shè)置每個(gè)控件的外邊框
grid=QGridLayout()
grid.setSpacing(10)
#各個(gè)控件
#1號(hào)控件
explain=QLabel('請(qǐng)選擇您要識(shí)別的圖片')
#2號(hào) 單號(hào)文本框
self.imgUrl=QLineEdit()
#3號(hào),按鈕
self.select=QPushButton("選擇圖片")
#為按鈕添加一個(gè)事件處理函數(shù)
self.select.clicked.connect(self.openfile)
#4號(hào),圖片框
self.imgLab=QLabel("11.png")
self.imgLab.setFrameShape(QFrame.Box)
#imgLab.setFrameShadow(QFrame.Raised)
self.imgLab.setLineWidth(1)
#imgLab.setPixmap(QPixmap(""))
#5號(hào),多行
self.info=QTextEdit()
#將控件進(jìn)行合理布局
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)
#窗口最后的設(shè)置
self.setLayout(grid)
self.setGeometry(300,300,350,300)
self.setWindowTitle("植物識(shí)別小系統(tǒng)")
self.show()
def openfile(self):
#打開圖片彈窗,選擇圖片
self.select_path=QFileDialog.getOpenFileName(self,"選擇要識(shí)別的圖片","/","Imgae Files(*.jpg *.png)")
#如果沒選擇圖片,空過
if not self.select_path[0].strip():
pass
else:
#選擇圖片后執(zhí)行下面的內(nèi)容
# 設(shè)置圖片的路徑
self.imgUrl.setText(self.select_path[0])
#在圖片標(biāo)簽框中顯示圖片
#1)根據(jù)路徑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平臺(tái)完成植物識(shí)別工作
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()
3)效果展示
第一組玫瑰花:


?第二組百合花:

?
到此這篇關(guān)于基于Python實(shí)現(xiàn)簡(jiǎn)易的植物識(shí)別小系統(tǒng)的文章就介紹到這了,更多相關(guān)Python植物識(shí)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python實(shí)現(xiàn)把二維列表變?yōu)橐痪S列表的方法分析
這篇文章主要介紹了python實(shí)現(xiàn)把二維列表變?yōu)橐痪S列表的方法,結(jié)合實(shí)例形式總結(jié)分析了Python列表推導(dǎo)式、嵌套、循環(huán)等相關(guān)操作技巧,需要的朋友可以參考下2019-10-10
Python中json.load()與json.loads()方法有什么區(qū)別詳解
在讀取文件時(shí)解碼python的json格式,常用到j(luò)son.loads()與json.load(),下面這篇文章主要給大家介紹了關(guān)于Python中json.load()與json.loads()方法有什么區(qū)別的相關(guān)資料,需要的朋友可以參考下2022-08-08
python 殺死自身進(jìn)程的實(shí)現(xiàn)方法
今天小編就為大家分享一篇python 殺死自身進(jìn)程的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python通過len函數(shù)返回對(duì)象長(zhǎng)度
這篇文章主要介紹了Python通過len函數(shù)返回對(duì)象長(zhǎng)度,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
python爬蟲爬取淘寶商品信息(selenum+phontomjs)
這篇文章主要為大家詳細(xì)介紹了python爬蟲爬取淘寶商品信息,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02

