日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

用Python給圖像算法做個簡單應用界面

瀏覽:41日期:2022-06-20 15:26:12

以前在Windows上做界面用MFC,現在做算法都是基于Python,所以轉用Python的Tkinter庫來做。主要是能使用Opencv和Torch處理數據,然后在界面上顯示。

效果如下:

主要包括3個板塊,其余還有一些小功能:

1、顯示固定的圖片。或從電腦加載一張圖片并顯示(涉及到按鈕的響應函數編寫和彈窗)

2、下拉框和文本框的使用

3、進度條的使用(涉及到多線程)

用Python給圖像算法做個簡單應用界面

用Python給圖像算法做個簡單應用界面

Tkinter支持控件自動調整布局,但是時間比較趕就不研究了,使用固定位置布局,界面也不給調整。

控件名稱

Buttom 按鈕,軟件交互功能實現 Label (叫什么不重要),用來顯示圖片或文字 ComboBox 下拉框,做選擇 Entry 文本框,做文本輸入 Progressbar 進度條,算法跑起來之后顯示進度 LabelFrame (...),灰色的框框,模塊化布局控件

代碼如下:

import tkinter as tkimport tkinter.ttk as ttkimport tkinter.messageboximport tkinter.filedialogimport cv2 as cvfrom PIL import Image, ImageTkimport timeimport threading RELIEF=[’flat’, ’raised’, ’sunken’, ’solid’, ’ridge’, ’groove’]CURSOR=[’arrow’,’circle’,’clock’,’cross’,’dotbox’,’exchange’,’fleur’,’heart’,’man’,’mouse’,’pirate’,’plus’,’shuttle’,’sizing’,’spider’,’spraycan’,’star’,’target’,’tcross’,’trek’,’watch’] def PIL2CV(im): im = im[:, :, ::-1] return ImageTk.PhotoImage(Image.fromarray(im)) def Buttom1_CallBack(): filename = tk.filedialog.askopenfilename() #彈出文件選擇對話框 if filename==’’: #用戶沒有選擇任何文件return new_img = cv.imread(filename) if new_img is None:tk.messagebox.showerror(’抱歉’, ’圖片加載失敗!’)return new_img = cv.resize(new_img, (130, 120)) new_img = PIL2CV(new_img) #后面兩句實現圖片切換顯示 Label2.configure(image=new_img, width=130, height=120) Label2.image = new_img tk.messagebox.showinfo(’提示’,’加載圖片完成!’) def Buttom2_CallBack(): info = Combobox1.get() param = Entry1.get() tk.messagebox.showwarning(’警告’, ’你選擇了:’+info+’ ’+param) def process_code(delay): for i in range(100):Progressbar1[’value’] = i+1root.update()time.sleep(delay) Buttom3.configure(text=’開始處理’, state=’normal’) tk.messagebox.showinfo(’提示’, ’處理完成!’) Progressbar1.configure(value=0) def Buttom3_CallBack(): yn = tk.messagebox.askyesno(’警告’,’是否需要開始處理?’) if not yn:return Buttom3.configure(text=’處理中...’, state=’disabled’) #控件失效 delay = 0.01 # 單獨開一個線程,綁定線程函數process_code,參數后面的’,’很關鍵 # 不開線程界面會進入處理函數死循環,用戶體驗不太好 t = threading.Thread(target=process_code, args=(delay,)) t.start() def Buttom4_CallBack(): global page_count if page_count<=0:page_count = 0return else:page_count -= 1Label4.configure(text=’第’+str(page_count)+’頁’) return def Buttom5_CallBack(): global page_count if page_count>=100:page_count = 100return else:page_count += 1Label4.configure(text=’第’ + str(page_count) + ’頁’) return #上面是控件的響應函數#################################################################################下面是界面控件的布局 #主界面root = tk.Tk()root.title(’python界面測試’) #修改界面標題root.iconbitmap(’img/tm.ico’) #修改界面icoroot.geometry(’800x500’) #設定界面尺寸 HxWroot.resizable(width=False, height=False) #不允許調整窗口大小,不固定刪除此行 #添加兩個板塊邊界框Frame1 = tk.LabelFrame(root, height=200, width=145)Frame1.place(x=15, y=100)Frame2 = tk.LabelFrame(root, text='結果顯示', height=400, width=620)Frame2.place(x=170, y=5) #添加圖片顯示框、加載圖片框、加載圖片按鈕img = cv.imread(’img/title.jpg’) #opencv加載圖片img = cv.resize(img, (140,70)) #圖片縮放img = PIL2CV(img) #opencv格式轉pillowLabel1 = tk.Label(root, image=img) #初始化默認圖片Label1.place(x=15, y=20) #圖片顯示框在界面上的位置 Label2 = tk.Label(root, width=18,height=7, #控件大小(注意單位不是像素) bg='white') #默認白色背景Label2.place(x=20,y=110) #圖片顯示框在界面上的位置 Buttom1 = tk.Button(root, width=15,height=1, #按鈕大小 text=’加載檢索圖片’, #按鈕文本 relief=RELIEF[3], #按鈕的風格 command=Buttom1_CallBack) #綁定響應函數Buttom1.place(x=25, y=250) #按鈕在界面上的位置 #添加參數文本框、下拉框、下拉框內容輸出按鈕Combobox1 = ttk.Combobox(root, width=17, height=1)Combobox1[’value’] = (’窗前明月光’,’疑是地上霜’,’舉頭望明月’,’明月照我影’)Combobox1.current(0)Combobox1.place(x=15, y=320) Label3 = tk.Label(root, text=’參數’)Label3.place(x=15, y=350) Entry1 = ttk.Entry(root, width=9) #文本框為啥沒有HEntry1.place(x=50, y=350)Entry1.insert(0,’0.5’) Buttom2 = tk.Button(root, width=15,height=1, text=’你選擇了什么?’, relief=RELIEF[3], command=Buttom2_CallBack)Buttom2.place(x=25, y=380) #添加進度條、開始處理按鈕Progressbar1 = ttk.Progressbar(root, length=600, value=0, cursor=CURSOR[1])Progressbar1.place(x=15, y=460) Buttom3 = tk.Button(root, width=15,height=1, text=’開始處理’, relief=RELIEF[3], command=Buttom3_CallBack)Buttom3.place(x=630, y=455) #添加兩個滾動按鈕Buttom4 = tk.Button(root, width=3,height=1, text=’<’, relief=RELIEF[1], command=Buttom4_CallBack)Buttom4.place(x=380, y=410) global page_count #全局變量,用來控制頁碼page_count=0Label4 = tk.Label(root, text=’第0頁’)Label4.place(x=420, y=410) Buttom5 = tk.Button(root, width=3,height=1, text=’>’, relief=RELIEF[1], command=Buttom5_CallBack)Buttom5.place(x=470, y=410) root.mainloop()#這句話后面不能有代碼

以上就是用Python給圖像算法做個簡單應用界面的詳細內容,更多關于python 應用界面的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久国产免费看| 久久99伊人| 蜜臀精品一区二区三区在线观看| 欧美一区免费| 日韩高清三区| 日韩中文一区二区| 亚洲精品国模| 亚洲精品日韩久久| 日韩毛片一区| 国产精品一区二区三区av| 欧美亚洲自偷自偷| 久久国产欧美日韩精品| 国产精品mm| 黄色在线网站噜噜噜| 久久精品免视看国产成人| 日产精品一区二区| 精品久久电影| 欧美中文一区二区| 日韩一区精品视频| 国产欧美一区二区三区国产幕精品 | 日韩专区在线视频| 日韩精品第一| 日韩啪啪电影网| 男女性色大片免费观看一区二区| 日韩精品一区二区三区中文 | 日韩福利视频网| 欧美成a人免费观看久久| 四虎精品永久免费| 最近高清中文在线字幕在线观看1| 免播放器亚洲| 精品亚洲美女网站| 国产欧美激情| 亚洲欧美视频| 韩国精品主播一区二区在线观看| 亚洲午夜免费| 欧美sss在线视频| 综合亚洲视频| 久久久人人人| 亚洲三级观看| 久久尤物视频| 欧美日韩精品一区二区视频| 老色鬼久久亚洲一区二区| 久久爱www.| 丝袜a∨在线一区二区三区不卡| 97久久亚洲| 激情五月综合网| 国产免费播放一区二区| 日本久久黄色| 日韩一区二区三区精品视频第3页 日韩一区二区三区免费视频 | 国产毛片久久| 欧美激情日韩| 日韩午夜黄色| 神马久久午夜| 亚洲精选91| 久久精品主播| 欧美黄页在线免费观看| 久久中文视频| 91精品国产经典在线观看| 久久亚洲国产精品一区二区| 欧美国产极品| 日本免费在线视频不卡一不卡二| 久久久国产亚洲精品| 国产精品亚洲二区| 欧美在线影院| xxxxx性欧美特大| 久久精品理论片| 国产欧美日韩一区二区三区四区| 9国产精品视频| av在线最新| 精品欧美视频| 久久超级碰碰| 国产情侣一区| 国产伦理久久久久久妇女| 国产精品欧美一区二区三区不卡| 日韩在线卡一卡二| 久久国产88| 午夜在线精品偷拍| 久久都是精品| 亚洲欧洲美洲国产香蕉| 久久蜜桃av| 国产真实久久| 日韩午夜在线| 久久最新视频| 欧美日韩网址| 麻豆国产91在线播放| 国产精品亚洲产品| 国产成人免费精品| 精品成人免费一区二区在线播放| 欧美日韩国产观看视频| 黄色aa久久| 美女少妇全过程你懂的久久| 免费精品国产| 亚洲免费在线| 91九色综合| 91精品福利观看| 成人国产精品久久| 视频福利一区| 在线视频观看日韩| 久久亚洲国产精品一区二区| 久久99伊人| 国产精品久久久一区二区| 精品国产精品国产偷麻豆| 精品三级久久久| 99久久亚洲精品蜜臀| 亚洲人成亚洲精品| 精品视频一二| 99在线观看免费视频精品观看| 青青草国产精品亚洲专区无| 在线天堂中文资源最新版| 日韩国产在线| 涩涩涩久久久成人精品| 久久a爱视频| 国产美女一区| а√天堂8资源在线| 亚洲欧美网站| 免费黄色成人| 国产精品99一区二区三区| 色综合视频一区二区三区日韩 | 日本午夜精品一区二区三区电影 | 国产精品玖玖玖在线资源| 亚洲电影在线一区二区三区| 欧美极品中文字幕| 在线一区二区三区视频| 伊人久久av| 欧美1区2区3| 亚洲精品乱码日韩| 欧美日韩国产免费观看视频| 91福利精品在线观看| 国产99精品一区| 久久麻豆视频| 日本不卡高清视频| 红桃视频国产精品| 成人羞羞在线观看网站| 激情综合五月| 天堂av一区| 男女性色大片免费观看一区二区 | 日韩亚洲国产欧美| 精品一区免费| 韩日一区二区三区| 国内精品99| 激情五月综合网| 91偷拍一区二区三区精品| 日韩在线网址| 欧美久久一区二区三区| 亚洲精品一二| 另类激情亚洲| 蜜桃一区二区三区在线| 蜜臀久久久99精品久久久久久| 午夜精品影院| 欧美久久久网站| 欧美天堂一区| 麻豆精品视频在线| 麻豆精品视频在线观看| 精品国产不卡一区二区| 黄色在线观看www| 99久久久久国产精品| 国产精品日韩欧美一区| 不卡av一区二区| 久久国产日韩欧美精品| 久久伊人久久| 婷婷综合在线| 日韩欧美高清一区二区三区| 麻豆视频久久| 99精品综合| 亚洲精品伦理| 日韩国产专区| 精品在线网站观看| 免费久久精品| 日韩福利视频一区| 一区二区三区四区日本视频| 亚州av乱码久久精品蜜桃| 亚洲欧美日本国产| 国产区精品区| 久久婷婷一区| 欧美激情三区| 视频一区中文字幕精品| 正在播放日韩精品| 亚洲影视一区| 欧美男人天堂| 国产+成+人+亚洲欧洲在线| 亚洲激情社区| 激情中国色综合| 亚洲深深色噜噜狠狠爱网站| 国产精品欧美三级在线观看 | 成人欧美一区二区三区的电影| 亚洲欧美日韩在线观看a三区| 国产精品久久久久久模特| 国产国产精品| 久久精品欧洲| 欧美另类中文字幕| 国产亚洲精品美女久久| 亚洲欧美日韩高清在线| 精品一区二区三区亚洲| 亚洲综合婷婷| 亚洲精品午夜av福利久久蜜桃| 国产精品精品| 国产私拍福利精品视频二区| 99久久99视频只有精品| 视频精品一区二区| 日韩精品免费视频人成|