电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

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

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

瀏覽:8日期: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 編程
相關文章:
主站蜘蛛池模板: 重庆LED显示屏_显示屏安装公司_重庆LED显示屏批发-彩光科技公司 重庆钣金加工厂家首页-专业定做监控电视墙_操作台 | 撕碎机,撕破机,双轴破碎机-大件垃圾破碎机厂家 | 澳洁干洗店加盟-洗衣店干洗连锁「澳洁干洗免费一对一贴心服务」 干洗加盟网-洗衣店品牌排行-干洗设备价格-干洗连锁加盟指南 | 浙江建筑资质代办_二级房建_市政_电力_安许_劳务资质办理公司 | 顶呱呱交易平台-行业领先的公司资产交易服务平台| 上海橡胶接头_弹簧减震器_金属软接头厂家-上海淞江集团 | 低温柔性试验仪-土工布淤堵-沥青车辙试验仪-莱博特(天津)试验机有限公司 | 骨密度检测仪_骨密度分析仪_骨密度仪_动脉硬化检测仪专业生产厂家【品源医疗】 | 定做大型恒温循环水浴槽-工业用不锈钢恒温水箱-大容量低温恒温水槽-常州精达仪器 | 手机存放柜,超市储物柜,电子储物柜,自动寄存柜,行李寄存柜,自动存包柜,条码存包柜-上海天琪实业有限公司 | 三轴曲线机-端子插拔力试验机|华杰仪器| 安徽华耐泵阀有限公司-官方网站 安德建奇火花机-阿奇夏米尔慢走丝|高维|发那科-北京杰森柏汇 | 上海皓越真空设备有限公司官网-真空炉-真空热压烧结炉-sps放电等离子烧结炉 | 丹佛斯变频器-丹佛斯压力开关-变送器-广州市风华机电设备有限公司 | 游泳池设备安装工程_恒温泳池设备_儿童游泳池设备厂家_游泳池水处理设备-东莞市君达泳池设备有限公司 | 减速机三参数组合探头|TSM803|壁挂式氧化锆分析仪探头-安徽鹏宸电气有限公司 | 蜘蛛车-高空作业平台-升降机-高空作业车租赁-臂式伸缩臂叉装车-登高车出租厂家 - 普雷斯特机械设备(北京)有限公司 | 阻垢剂,反渗透阻垢剂,缓蚀阻垢剂-山东普尼奥水处理科技有限公司 真空粉体取样阀,电动楔式闸阀,电动针型阀-耐苛尔(上海)自动化仪表有限公司 | Q361F全焊接球阀,200X减压稳压阀,ZJHP气动单座调节阀-上海戎钛 | 仪器仪表网 - 永久免费的b2b电子商务平台| 校服厂家,英伦校服定做工厂,园服生产定制厂商-东莞市艾咪天使校服 | 选矿设备,选矿生产线,选矿工艺,选矿技术-昆明昆重矿山机械 | 石英砂矿石色选机_履带辣椒色选机_X光异物检测机-合肥幼狮光电科技 | 深圳标识制作公司-标识标牌厂家-深圳广告标识制作-玟璟广告-深圳市玟璟广告有限公司 | 骨密度检测仪_骨密度分析仪_骨密度仪_动脉硬化检测仪专业生产厂家【品源医疗】 | 青岛球场围网,青岛车间隔离网,青岛机器人围栏,青岛水源地围网,青岛围网,青岛隔离栅-青岛晟腾金属制品有限公司 | 高空重型升降平台_高空液压举升平台_高空作业平台_移动式升降机-河南华鹰机械设备有限公司 | 高硼硅玻璃|水位计玻璃板|光学三棱镜-邯郸奥维玻璃科技有限公司 高温高压釜(氢化反应釜)百科 | 泰国专线_泰国物流专线_广州到泰国物流公司-泰廊曼国际 | 液压压力机,液压折弯机,液压剪板机,模锻液压机-鲁南新力机床有限公司 | 网带通过式抛丸机,,网带式打砂机,吊钩式,抛丸机,中山抛丸机生产厂家,江门抛丸机,佛山吊钩式,东莞抛丸机,中山市泰达自动化设备有限公司 | 旋转/数显粘度计-运动粘度测定仪-上海平轩科学仪器 | 电渗析,废酸回收,双极膜-山东天维膜技术有限公司 | 金属软管_不锈钢金属软管_巩义市润达管道设备制造有限公司 | 高精度电阻回路测试仪-回路直流电阻测试仪-武汉特高压电力科技有限公司 | 影像测量仪_三坐标测量机_一键式二次元_全自动影像测量仪-广东妙机精密科技股份有限公司 | 烘箱-工业烘箱-工业电炉-实验室干燥箱 - 苏州华洁烘箱制造有限公司 | 不干胶标签,不干胶标签纸_厂家-山东同力胶粘制品 | 北京宣传片拍摄_产品宣传片拍摄_宣传片制作公司-现像传媒 | 深圳希玛林顺潮眼科医院(官网)│深圳眼科医院│医保定点│香港希玛林顺潮眼科中心连锁品牌 | 德国EA可编程直流电源_电子负载,中国台湾固纬直流电源_交流电源-苏州展文电子科技有限公司 |