999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

為人工智能應(yīng)用程序設(shè)計(jì)圖形用戶界面

2023-09-12 08:50:24謝作如浙江省溫州科技高級(jí)中學(xué)
中國(guó)信息技術(shù)教育 2023年17期
關(guān)鍵詞:界面程序模型

謝作如 浙江省溫州科技高級(jí)中學(xué)

人工智能是一種內(nèi)斂的技術(shù),需要借助多模態(tài)交互技術(shù),才能“具象化”。在XEdu的幫助下,學(xué)生不需要編寫代碼也能快速訓(xùn)練出計(jì)算機(jī)視覺方向的模型,如圖像分類和目標(biāo)檢測(cè)。那么,下一步的需求就是如何呈現(xiàn)這一學(xué)習(xí)成果,如結(jié)合攝像頭,編寫出支持實(shí)時(shí)畫面推理的應(yīng)用程序。筆者曾經(jīng)用PyWebIO、Gradio等庫(kù)介紹過(guò)AI模型部署方面的案例,但更多的教師希望能編寫一個(gè)類似Windows應(yīng)用程序,有一個(gè)中規(guī)中矩的圖形用戶界面,方便學(xué)生體驗(yàn)。于是,筆者認(rèn)真研究了Python的GUI工具選擇,畢竟給中小學(xué)生使用的工具既要代碼簡(jiǎn)潔,又要功能強(qiáng)大。

●常見的Python圖形界面設(shè)計(jì)工具

圖形用戶界面(Graphical User Interface,簡(jiǎn)稱GUI,又稱圖形用戶接口)是指采用圖形方式顯示的計(jì)算機(jī)操作用戶界面。圖形用戶界面是一種人與計(jì)算機(jī)通信的界面顯示格式,允許用戶使用鼠標(biāo)等輸入設(shè)備操縱屏幕上的圖標(biāo)或菜單選項(xiàng),以選擇命令、調(diào)用文件、啟動(dòng)程序或執(zhí)行其他一些日常任務(wù)。用戶界面通常包括許多視覺元素,如圖標(biāo)、按鈕、圖形、顯示文本,以及多種輸入控件,如復(fù)選框、文本輸入框等。

Python是一種容易上手、簡(jiǎn)單方便的開源編程語(yǔ)言,其第三方的開發(fā)工具數(shù)不勝數(shù),在GUI這個(gè)方向同樣有很多的工具可以選擇。比較常用的GUI開發(fā)工具有Tkinter、PyQt、wxPython、Gtk+、Kivy、FLTK和OpenGL等,其中最常用的是Tkinter。Tkinter的優(yōu)點(diǎn)在于是Python內(nèi)置標(biāo)準(zhǔn)庫(kù),無(wú)需額外安裝,兼容性好,但缺點(diǎn)在于實(shí)現(xiàn)效果較為普通,開發(fā)體驗(yàn)不好。比較受程序員推崇的是PyQt和wxPython,其功能強(qiáng)大,界面優(yōu)美,相關(guān)教程也很多,可惜學(xué)習(xí)曲線有些陡峭。在比較了多款GUI開發(fā)工具之后,筆者最終選擇了PySimpleGUI。

●PySimpleGUI的安裝和典型代碼

顧名思義,PySimpleGUI是一個(gè)簡(jiǎn)單的GUI設(shè)計(jì)工具。PySimpleGUI的安裝和其他庫(kù)一樣,使用pip命令即可。整個(gè)庫(kù)很小,很快就能完成。參考命令如下:

pip install PySimpleGUI

一個(gè)典型的PySimpleGUI代碼,大致包含導(dǎo)入庫(kù)、設(shè)計(jì)窗體布局、創(chuàng)建窗體、窗體事件控制和關(guān)閉窗體等五個(gè)部分。以一個(gè)簡(jiǎn)單的輸入文本并輸出結(jié)果的程序?yàn)槔瑢?duì)核心代碼的作用分析如表1所示。

表1 PySimpleGUI代碼分析

在這段代碼中,最核心的部分是窗體設(shè)計(jì)和窗體事件控制部分。其中在“window.read()”返回的信息中,event為按鈕的名稱,values則為一個(gè)字典,鍵名是控件的名稱,如“{'in': 'XEdu'}”。仔細(xì)觀察PySimpleGUI代碼,會(huì)發(fā)現(xiàn)它和Arduino、掌控板之類開源硬件程序的運(yùn)行邏輯非常類似——用一個(gè)無(wú)限循環(huán)來(lái)處理輸入和輸出窗體事件。該代碼的運(yùn)行效果如圖1所示,界面樣式規(guī)中矩,看起來(lái)并不丑。

圖1

●用PySimpleGUI編寫模型推理程序

借助這樣的簡(jiǎn)單范例,就能寫出帶輸入和輸出功能的程序了。考慮到需要編寫的程序需要結(jié)合攝像頭,界面中得顯示實(shí)時(shí)畫面,那就要借助Image類型的對(duì)象,然后在窗體事件控制部分實(shí)時(shí)更新畫面即可。

核心代碼介紹:在定義窗口布局中增加Image類型對(duì)象,用size來(lái)定義畫面的大小(如圖2)。

圖2

核心代碼介紹:實(shí)時(shí)讀取攝像頭的畫面內(nèi)容,然后用OpenCV的tobytes功能將圖片轉(zhuǎn)化為字節(jié)流,并更新Image對(duì)象(如下頁(yè)圖3)。

圖3

核心代碼介紹:在事件處理代碼中,調(diào)用了模型推理的函數(shù)“my_inf”,這個(gè)函數(shù)使用了BaseDeploy庫(kù)。BaseDeploy庫(kù)是XEdu的一個(gè)組件,支持通用的ONNX模型(如下頁(yè)圖4)。

圖4

最終的程序非常簡(jiǎn)潔,50行左右,程序運(yùn)行結(jié)果如下頁(yè)圖5所示。

圖5

●用PySimpleGUI編寫Web應(yīng)用程序

筆者選擇PySimpleGUI的最大原因在于其內(nèi)置了多個(gè)GUI框架。目前它已經(jīng)集成了tkinter、PyQt、wxPython和Remi四種。2021年,筆者曾在《用Python寫一個(gè)基于Web的物聯(lián)網(wǎng)應(yīng)用程序》一文中介紹過(guò)Remi庫(kù)。其支持Web界面開發(fā),也就說(shuō)用PySimpleGUI也能開發(fā)出Web應(yīng)用。

如果想要將上面的代碼效果以Web界面呈現(xiàn),只要將前面的導(dǎo)入庫(kù)“import PySimpleGUI as sg”一句改為“import PySimpleGUIWeb as sg”,其他代碼都不需要改變,體現(xiàn)了“一次編寫、處處運(yùn)行”的理念。當(dāng)運(yùn)行程序后,瀏覽器就會(huì)自動(dòng)打開一個(gè)頁(yè)面,顯示效果如圖6所示。

圖6

●結(jié)語(yǔ)

也許是有VB和Arduino的編程基礎(chǔ),筆者在用PySimpleGUI編寫GUI的過(guò)程中,感覺非常順手。可見,PySimpleGUI很適合有創(chuàng)客教育或者開源硬件編程基礎(chǔ)的師生使用,畢竟在幾分鐘內(nèi)用幾行代碼就可以構(gòu)建自定義GUI布局,是很愉快的編程體驗(yàn),再加上PySimpleGUI還內(nèi)置了100多種顏色主題,適合“懶人”拿來(lái)就用。一旦能用簡(jiǎn)潔的代碼設(shè)計(jì)出GUI,相信就會(huì)有更多精彩的人工智能應(yīng)用程序涌現(xiàn)出來(lái),讓我們拭目以待吧。

猜你喜歡
界面程序模型
一半模型
重要模型『一線三等角』
國(guó)企黨委前置研究的“四個(gè)界面”
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
試論我國(guó)未決羈押程序的立法完善
基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開發(fā)方法研究
“程序猿”的生活什么樣
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
人機(jī)交互界面發(fā)展趨勢(shì)研究
3D打印中的模型分割與打包
主站蜘蛛池模板: 国产极品粉嫩小泬免费看| 少妇露出福利视频| 极品av一区二区| 色哟哟国产精品| 亚洲资源在线视频| 亚洲成a人片在线观看88| 久久国产亚洲偷自| 国内熟女少妇一线天| 国产你懂得| P尤物久久99国产综合精品| 免费久久一级欧美特大黄| 最新国产午夜精品视频成人| 国产乱肥老妇精品视频| 日韩国产无码一区| 国产成人1024精品| 国产无码精品在线播放 | 国产91高清视频| 亚洲国产在一区二区三区| 中文纯内无码H| 91网红精品在线观看| 日韩AV无码一区| 中文国产成人精品久久| 国产丝袜丝视频在线观看| 日韩在线视频网站| 综合人妻久久一区二区精品 | 久久精品国产精品国产一区| 久久无码高潮喷水| 国产jizz| 国产精品无码AⅤ在线观看播放| 国产精品久久久久久久久kt| 色婷婷视频在线| 免费播放毛片| 国产亚洲欧美另类一区二区| 天天综合色网| 99手机在线视频| A级全黄试看30分钟小视频| 国内精品久久久久久久久久影视| 日韩精品无码免费一区二区三区 | 毛片免费在线视频| 福利在线不卡| 黄色在线不卡| 一本大道香蕉中文日本不卡高清二区| 少妇精品久久久一区二区三区| 国产精品开放后亚洲| 白浆视频在线观看| 亚洲第一极品精品无码| 手机精品福利在线观看| 国产青榴视频在线观看网站| 国产在线精品99一区不卡| 国产精品成人不卡在线观看| 久久青草视频| 成人午夜视频网站| 亚洲精品免费网站| 国产成人精品日本亚洲77美色| 国产成人精品一区二区不卡| 亚洲成人网在线观看| 中文字幕在线播放不卡| 伊人精品视频免费在线| 四虎永久在线精品影院| 91久久偷偷做嫩草影院免费看| 午夜毛片免费观看视频 | 国产欧美日韩视频怡春院| 午夜欧美在线| 亚洲性影院| 国产成人精品一区二区| 亚洲精品777| 国产日韩av在线播放| 国产成人一区在线播放| 国产精品护士| 国产亚洲精品在天天在线麻豆| 99热这里只有精品免费| 男女男免费视频网站国产| 日本91视频| 国产麻豆精品久久一二三| 亚洲第一中文字幕| 欧美国产成人在线| 国产亚洲男人的天堂在线观看| 91在线视频福利| 免费无遮挡AV| 久久免费视频播放| 国产免费好大好硬视频| 国产精品第一区在线观看|