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

現(xiàn)在的植物愛好者,遇到不認得的植物。怎么辦呢?
前幾天去逛商場,一進商城一一一一門口的花店吸引了我的注意:擺放在店門口的各色鮮花植物花卉真的特別好看!
忍不住進門逛了一圈,發(fā)現(xiàn)我真的不認識,種類太多,對花卉的品種了解頗少。
回來之后找到了2款簡單好用的植物識別APP一一一伴侶跟形色蠻好用的!
閑著也是閑著:默默用Python編寫了一款簡單的植物識別系統(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
#導入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("選擇圖片")
#為按鈕添加一個事件處理函數(shù)
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("植物識別小系統(tǒng)")
self.show()
def openfile(self):
#打開圖片彈窗,選擇圖片
self.select_path=QFileDialog.getOpenFileName(self,"選擇要識別的圖片","/","Imgae Files(*.jpg *.png)")
#如果沒選擇圖片,空過
if not self.select_path[0].strip():
pass
else:
#選擇圖片后執(zhí)行下面的內(nèi)容
# 設置圖片的路徑
self.imgUrl.setText(self.select_path[0])
#在圖片標簽框中顯示圖片
#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平臺完成植物識別工作
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)效果展示
第一組玫瑰花:


?第二組百合花:

?
到此這篇關于基于Python實現(xiàn)簡易的植物識別小系統(tǒng)的文章就介紹到這了,更多相關Python植物識別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python實現(xiàn)把二維列表變?yōu)橐痪S列表的方法分析
這篇文章主要介紹了python實現(xiàn)把二維列表變?yōu)橐痪S列表的方法,結合實例形式總結分析了Python列表推導式、嵌套、循環(huán)等相關操作技巧,需要的朋友可以參考下2019-10-10
Python中json.load()與json.loads()方法有什么區(qū)別詳解
在讀取文件時解碼python的json格式,常用到json.loads()與json.load(),下面這篇文章主要給大家介紹了關于Python中json.load()與json.loads()方法有什么區(qū)別的相關資料,需要的朋友可以參考下2022-08-08
python爬蟲爬取淘寶商品信息(selenum+phontomjs)
這篇文章主要為大家詳細介紹了python爬蟲爬取淘寶商品信息,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-02-02

